Added support for the following actions:
[privoxy.git] / project.h
index 472222d..8ad474e 100644 (file)
--- a/project.h
+++ b/project.h
@@ -1,6 +1,6 @@
 #ifndef PROJECT_H_INCLUDED
 #define PROJECT_H_INCLUDED
-#define PROJECT_H_VERSION "$Id: project.h,v 1.38 2001/10/23 21:19:04 jongfoster Exp $"
+#define PROJECT_H_VERSION "$Id: project.h,v 1.41 2001/10/28 19:12:06 jongfoster Exp $"
 /*********************************************************************
  *
  * File        :  $Source: /cvsroot/ijbswa/current/project.h,v $
  *
  * Revisions   :
  *    $Log: project.h,v $
+ *    Revision 1.41  2001/10/28 19:12:06  jongfoster
+ *    Adding ijb_toupper()
+ *
+ *    Revision 1.40  2001/10/26 17:40:47  oes
+ *    Moved ijb_isspace and ijb_tolower to project.h
+ *    Removed http->user_agent, csp->referrer and csp->accept_types
+ *
+ *    Revision 1.39  2001/10/25 03:45:02  david__schmidt
+ *    Adding a (void*) cast to freez() because Visual Age C++ won't expand the
+ *    macro when called with a cast; so moving the cast to the macro def'n
+ *    seems to both eliminate compiler warnings (on darwin and OS/2, anyway) and
+ *    doesn't make macro expansion complain.  Hope this works for everyone else
+ *    too...
+ *
  *    Revision 1.38  2001/10/23 21:19:04  jongfoster
  *    New error-handling support: jb_err type and JB_ERR_xxx constants
  *    CGI functions now return a jb_err, and their parameters map is const.
 extern "C" {
 #endif
 
+#ifdef _DEBUG
+extern int ldebug;
+#define DBG(a,b)        { if ( ldebug >= a ) { printf b ; }}
+#else
+#define DBG(a,b)
+#endif /* _DEBUG */
+
+
 
 /*
  * Error codes.  Functions returning these should return a jb_err
@@ -364,6 +386,20 @@ typedef int jb_err;
  */
 #define freez(X)  { if(X) { free((void*)X); X = NULL ; } }
 
+
+/* Fix a problem with Solaris.  There should be no effect on other
+ * platforms.
+ * Solaris's isspace() is a macro which uses it's argument directly
+ * as an array index.  Therefore we need to make sure that high-bit
+ * characters generate +ve values, and ideally we also want to make
+ * the argument match the declared parameter type of "int".
+ *
+ * Note: Remember to #include <ctype.h> if you use these macros.
+ */
+#define ijb_toupper(__X) toupper((int)(unsigned char)(__X))
+#define ijb_tolower(__X) tolower((int)(unsigned char)(__X))
+#define ijb_isspace(__X) isspace((int)(unsigned char)(__X))  
+
 /*
  * Use for statically allocated buffers if you have no other choice.
  * Remember to check the length of what you write into the buffer
@@ -434,7 +470,6 @@ struct http_request
 
    char *host_ip_addr_str; /* String with dotted decimal representation
                             * of host's IP. NULL before connect_to() */
-   char *user_agent;       /* Client's User-Agent: header value */
 };
 
 /* Response generated by CGI, blocker, or error handler */
@@ -598,28 +633,6 @@ struct url_actions
 };
 
 
-/* Constants defining bitmask for csp->accept_types */
-
-#ifdef FEATURE_IMAGE_DETECT_MSIE
-
-/* MSIE detected by user-agent string */
-#define ACCEPT_TYPE_IS_MSIE     0x0001
-
-/*
- * *If* this is MSIE, it wants an image.  (Or this is a shift-reload, or
- * it's got an image from this URL before...  yuck!)
- * Only meaningful if ACCEPT_TYPE_IS_MSIE set
- */
-#define ACCEPT_TYPE_MSIE_IMAGE  0x0002
-
-/*
- * *If* this is MSIE, it wants a HTML document.
- * Only meaningful if ACCEPT_TYPE_IS_MSIE set
- */
-#define ACCEPT_TYPE_MSIE_HTML   0x0004
-
-#endif /* def FEATURE_IMAGE_DETECT_MSIE */
-
 /*
  * Flags for use in csp->flags
  */
@@ -669,18 +682,6 @@ struct client_state
    char *my_ip_addr_str;
    char *my_hostname;
 
-#ifdef FEATURE_TRUST
-   /* The referer in this request, if one was specified. */
-   char *referrer;
-#endif /* def FEATURE_TRUST */
-
-#if defined(FEATURE_IMAGE_DETECT_MSIE)
-   /* Types the client will accept.
-    * Bitmask - see ACCEPT_TYPE_XXX constants.
-    */
-   int accept_types;
-#endif /* defined(FEATURE_IMAGE_DETECT_MSIE) */
-
    /* The URL that was requested */
    struct http_request http[1];