1 #ifndef ACTIONS_H_INCLUDED
2 #define ACTIONS_H_INCLUDED
3 #define ACTIONS_H_VERSION "$Id: actions.h,v 1.22 2013/11/24 14:23:28 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);
64 extern int update_action_bits_for_all_tags(struct client_state *csp);
66 extern int update_action_bits_for_tag(struct client_state *csp, const char *tag);
67 extern jb_err check_negative_tag_patterns(struct client_state *csp, unsigned int flag);
68 extern jb_err copy_action (struct action_spec *dest,
69 const struct action_spec *src);
70 extern char * actions_to_text (const struct action_spec *action);
71 extern char * actions_to_html (const struct client_state *csp,
72 const struct action_spec *action);
73 extern void init_current_action (struct current_action_spec *dest);
74 extern void free_current_action (struct current_action_spec *src);
75 extern jb_err merge_current_action (struct current_action_spec *dest,
76 const struct action_spec *src);
77 extern char * current_action_to_html(const struct client_state *csp,
78 const struct current_action_spec *action);
79 extern char * actions_to_line_of_text(const struct current_action_spec *action);
81 extern jb_err get_action_token(char **line, char **name, char **value);
82 extern void unload_actions_file(void *file_data);
83 extern int load_action_files(struct client_state *csp);
85 #ifdef FEATURE_GRACEFUL_TERMINATION
86 void unload_current_actions_file(void);
90 /* Revision control strings from this header and associated .c file */
91 extern const char actions_rcs[];
92 extern const char actions_h_rcs[];
94 #endif /* ndef ACTIONS_H_INCLUDED */