introduced new cgi handling
[privoxy.git] / project.h
index 467bb9e..6832968 100644 (file)
--- a/project.h
+++ b/project.h
@@ -1,6 +1,6 @@
 #ifndef _PROJECT_H
 #define _PROJECT_H
-#define PROJECT_H_VERSION "$Id: project.h,v 1.9 2001/05/31 17:32:31 oes Exp $"
+#define PROJECT_H_VERSION "$Id: project.h,v 1.12 2001/06/01 18:49:17 jongfoster Exp $"
 /*********************************************************************
  *
  * File        :  $Source: /cvsroot/ijbswa/current/project.h,v $
  *
  * Revisions   :
  *    $Log: project.h,v $
+ *    Revision 1.12  2001/06/01 18:49:17  jongfoster
+ *    Replaced "list_share" with "list" - the tiny memory gain was not
+ *    worth the extra complexity.
+ *
+ *    Revision 1.11  2001/06/01 10:32:47  oes
+ *    Added constants for anchoring selection bitmap
+ *
+ *    Revision 1.10  2001/05/31 21:33:53  jongfoster
+ *    Changes for new actions file, replacing permissionsfile
+ *    and parts of the config file.  Also added support for
+ *    list_shared.
+ *
  *    Revision 1.9  2001/05/31 17:32:31  oes
  *
  *     - Enhanced domain part globbing with infix and prefix asterisk
@@ -254,24 +266,15 @@ struct list /* FIXME: Why not separate entries and header? */
 };
 
 
-/* Generic linked list of strings */
-struct list_share /* FIXME: Why not separate entries and header? */
-{
-   const char *       str;  /* valid in an entry */
-   struct list_share *last; /* valid in header */
-   struct list_share *next;
-};
-
-
 /* A URL pattern */
 struct url_spec
 {
    char  *spec;
-   char  *domain;
+   char  *domain;        /* fqdn */
    char  *dbuf;
-   char **dvec;
-   int    dcnt;
-   int    unanchored;
+   char **dvec;          /* Domain ptr vector */
+   int    dcnt;          /* How many domains in fqdn? */
+   int    unanchored;    /* bitmap 0: left, 1: right */
 
    char *path;
    int   pathlen;
@@ -281,6 +284,9 @@ struct url_spec
 #endif
 };
 
+#define ANCHOR_LEFT  1
+#define ANCHOR_RIGHT 2
+
 
 /* An I/O buffer */
 struct iob
@@ -308,19 +314,21 @@ struct iob
 #define ACTION_HIDE_REFERER    0x0020U /* sic - follow HTTP, not English */
 #define ACTION_HIDE_USER_AGENT 0x0040U
 #define ACTION_IMAGE           0x0080U
-#define ACTION_NO_COOKIE_READ  0x0100U
-#define ACTION_NO_COOKIE_SET   0x0200U
-#define ACTION_NO_POPUPS       0x0400U
-#define ACTION_VANILLA_WAFER   0x0800U
+#define ACTION_IMAGE_BLOCKER   0x0100U
+#define ACTION_NO_COOKIE_READ  0x0200U
+#define ACTION_NO_COOKIE_SET   0x0400U
+#define ACTION_NO_POPUPS       0x0800U
+#define ACTION_VANILLA_WAFER   0x1000U
 
-#define ACTION_STRING_FROM       0
-#define ACTION_STRING_REFERER    1
-#define ACTION_STRING_USER_AGENT 2
-#define ACTION_STRING_COUNT      3
+#define ACTION_STRING_FROM          0
+#define ACTION_STRING_IMAGE_BLOCKER 1
+#define ACTION_STRING_REFERER       2
+#define ACTION_STRING_USER_AGENT    3
+#define ACTION_STRING_COUNT         4
 
-#define ACTION_MULTI_ADD_HEADER  0
-#define ACTION_MULTI_WAFER       1
-#define ACTION_MULTI_COUNT       2
+#define ACTION_MULTI_ADD_HEADER     0
+#define ACTION_MULTI_WAFER          1
+#define ACTION_MULTI_COUNT          2
 
 
 struct current_action_spec
@@ -333,7 +341,7 @@ struct current_action_spec
    char * string[ACTION_STRING_COUNT];
 
    /* Strings to add */
-   struct list_share multi[ACTION_MULTI_COUNT][1];
+   struct list multi[ACTION_MULTI_COUNT][1];
 };
 
 struct action_spec
@@ -609,11 +617,6 @@ struct configuration_spec
    int debug;
    int multi_threaded;
 
-#ifdef IMAGE_BLOCKING
-   int tinygif;              /* FIXME Should be an action */
-   const char *tinygifurl;   /* FIXME Should be an action */
-#endif /* def IMAGE_BLOCKING */
-
    const char *logfile;
 
    const char *actions_file;