1 #ifndef ACTIONS_H_INCLUDED
2 #define ACTIONS_H_INCLUDED
3 #define ACTIONS_H_VERSION "$Id: actions.h,v 1.23 2013/11/24 14:24:17 fabiankeil Exp $"
4 /*********************************************************************
6 * File : $Source: /cvsroot/ijbswa/current/actions.h,v $
8 * Purpose : Declares functions to work with actions files
9 * Functions declared include: FIXME
11 * Copyright : Written by and Copyright (C) 2001-2007 the SourceForge
12 * Privoxy team. http://www.privoxy.org/
14 * Based on the Internet Junkbuster originally written
15 * by and Copyright (C) 1997 Anonymous Coders and
16 * Junkbusters Corporation. http://www.junkbusters.com
18 * This program is free software; you can redistribute it
19 * and/or modify it under the terms of the GNU General
20 * Public License as published by the Free Software
21 * Foundation; either version 2 of the License, or (at
22 * your option) any later version.
24 * This program is distributed in the hope that it will
25 * be useful, but WITHOUT ANY WARRANTY; without even the
26 * implied warranty of MERCHANTABILITY or FITNESS FOR A
27 * PARTICULAR PURPOSE. See the GNU General Public
28 * License for more details.
30 * The GNU General Public License should be included with
31 * this file. If not, you can view it at
32 * http://www.gnu.org/copyleft/gpl.html
33 * or write to the Free Software Foundation, Inc., 59
34 * Temple Place - Suite 330, Boston, MA 02111-1307, USA.
36 *********************************************************************/
40 struct current_action_spec;
45 /* This structure is used to hold user-defined aliases */
49 struct action_spec action[1];
50 struct action_alias * next;
54 extern jb_err get_actions (char *line,
55 struct action_alias * alias_list,
56 struct action_spec *cur_action);
57 extern void free_alias_list(struct action_alias *alias_list);
59 extern void init_action(struct action_spec *dest);
60 extern void free_action(struct action_spec *src);
61 extern jb_err merge_actions (struct action_spec *dest,
62 const struct action_spec *src);
63 extern int update_action_bits_for_tag(struct client_state *csp, const char *tag);
64 extern jb_err check_negative_tag_patterns(struct client_state *csp, unsigned int flag);
65 extern jb_err copy_action (struct action_spec *dest,
66 const struct action_spec *src);
67 extern char * actions_to_text (const struct action_spec *action);
68 extern char * actions_to_html (const struct client_state *csp,
69 const struct action_spec *action);
70 extern void init_current_action (struct current_action_spec *dest);
71 extern void free_current_action (struct current_action_spec *src);
72 extern jb_err merge_current_action (struct current_action_spec *dest,
73 const struct action_spec *src);
74 extern char * current_action_to_html(const struct client_state *csp,
75 const struct current_action_spec *action);
76 extern char * actions_to_line_of_text(const struct current_action_spec *action);
78 extern jb_err get_action_token(char **line, char **name, char **value);
79 extern void unload_actions_file(void *file_data);
80 extern int load_action_files(struct client_state *csp);
82 #ifdef FEATURE_GRACEFUL_TERMINATION
83 void unload_current_actions_file(void);
87 /* Revision control strings from this header and associated .c file */
88 extern const char actions_rcs[];
89 extern const char actions_h_rcs[];
91 #endif /* ndef ACTIONS_H_INCLUDED */