Adding support for LOG_LEVEL_CGI
[privoxy.git] / miscutil.c
index ac9d491..78132a6 100644 (file)
@@ -1,4 +1,4 @@
-const char miscutil_rcs[] = "$Id: miscutil.c,v 1.8 2001/06/05 22:32:01 jongfoster Exp $";
+const char miscutil_rcs[] = "$Id: miscutil.c,v 1.15 2001/07/13 14:02:24 oes Exp $";
 /*********************************************************************
  *
  * File        :  $Source: /cvsroot/ijbswa/current/miscutil.c,v $
@@ -36,66 +36,33 @@ const char miscutil_rcs[] = "$Id: miscutil.c,v 1.8 2001/06/05 22:32:01 jongfoste
  *
  * Revisions   :
  *    $Log: miscutil.c,v $
- *    Revision 1.8  2001/06/05 22:32:01  jongfoster
- *    New function make_path() to splice directory and file names together.
- *
- *    Revision 1.7  2001/06/03 19:12:30  oes
- *    introduced bindup()
- *
- *    Revision 1.7  2001/06/03 11:03:48  oes
- *    Makefile/in
- *
- *    introduced cgi.c
- *
- *    actions.c:
- *
- *    adapted to new enlist_unique arg format
+ *    Revision 1.15  2001/07/13 14:02:24  oes
+ *    Removed vim-settings
  *
- *    conf loadcfg.c
+ *    Revision 1.14  2001/06/29 21:45:41  oes
+ *    Indentation, CRLF->LF, Tab-> Space
  *
- *    introduced confdir option
+ *    Revision 1.13  2001/06/29 13:32:14  oes
+ *    Removed logentry from cancelled commit
  *
- *    filters.c filtrers.h
+ *    Revision 1.12  2001/06/09 10:55:28  jongfoster
+ *    Changing BUFSIZ ==> BUFFER_SIZE
  *
- *     extracted-CGI relevant stuff
+ *    Revision 1.11  2001/06/07 23:09:19  jongfoster
+ *    Cosmetic indentation changes.
  *
- *    jbsockets.c
+ *    Revision 1.10  2001/06/07 14:51:38  joergs
+ *    make_path() no longer adds '/' if the dir already ends in '/'.
  *
- *     filled comment
+ *    Revision 1.9  2001/06/07 14:43:17  swa
+ *    slight mistake in make_path, unix path style is /.
  *
- *    jcc.c
- *
- *     support for new cgi mechansim
- *
- *    list.c list.h
- *
- *    functions for new list type: "map"
- *    extended enlist_unique
+ *    Revision 1.8  2001/06/05 22:32:01  jongfoster
+ *    New function make_path() to splice directory and file names together.
  *
- *    miscutil.c .h
+ *    Revision 1.7  2001/06/03 19:12:30  oes
  *    introduced bindup()
  *
- *    parsers.c parsers.h
- *
- *    deleted const struct interceptors
- *
- *    pcrs.c
- *    added FIXME
- *
- *    project.h
- *
- *    added struct map
- *    added struct http_response
- *    changes struct interceptors to struct cgi_dispatcher
- *    moved HTML stuff to cgi.h
- *
- *    re_filterfile:
- *
- *    changed
- *
- *    showargs.c
- *    NO TIME LEFT
- *
  *    Revision 1.6  2001/06/01 18:14:49  jongfoster
  *    Changing the calls to strerr() to check HAVE_STRERR (which is defined
  *    in config.h if appropriate) rather than the NO_STRERR macro.
@@ -152,6 +119,11 @@ const char miscutil_rcs[] = "$Id: miscutil.c,v 1.8 2001/06/05 22:32:01 jongfoste
 #include <malloc.h>
 #include <ctype.h>
 
+/*
+ * FIXME: Only need project.h for BUFFER_SIZE.  It would be nice
+ * to remove this dependency.
+ */
+#include "project.h"
 #include "miscutil.h"
 #include "errlog.h"
 
@@ -272,7 +244,7 @@ char *strdup( const char *s )
 char *safe_strerror(int err)
 {
    char *s = NULL;
-   char buf[BUFSIZ];
+   char buf[BUFFER_SIZE];
 
 
 #ifdef HAVE_STRERROR
@@ -482,14 +454,14 @@ char *strsav(char *old, const char *text_to_append)
  *********************************************************************/
 int simplematch(char *pattern, char *text)
 {
-  char *fallback
-  char *pat = pattern;
-  char *txt = text;
-  int wildcard = 0;
+   char *fallback = pattern
+   char *pat = pattern;
+   char *txt = text;
+   int wildcard = 0;
   
-  char lastchar = 'a';
-  unsigned i;
-  unsigned char charmap[32];
+   char lastchar = 'a';
+   unsigned i;
+   unsigned char charmap[32];
   
   
    while (*txt)
@@ -600,12 +572,12 @@ char *bindup(const char *string, int n)
 
    if (NULL == (dup = (char *)malloc(n)))
    {
-          return NULL;
-       }
+      return NULL;
+   }
    else
-       {
-         memcpy(dup, string, n);
-       }
+   {
+     memcpy(dup, string, n);
+   }
 
    return dup;
 
@@ -634,6 +606,24 @@ char *bindup(const char *string, int n)
  *********************************************************************/
 char * make_path(const char * dir, const char * file)
 {
+#ifdef AMIGA
+   char path[512];
+
+   if(dir)
+   {
+      strncpy(path,dir,512);
+      path[511]=0;
+   } else {
+      path[0]=0;
+   }
+   if(AddPart(path,file,512))
+   {
+      return strdup(path);
+   } else {
+      return NULL;
+   }
+#else /* ndef AMIGA */
+
    if ((file == NULL) || (*file == '\0'))
    {
       return NULL; /* Error */
@@ -656,12 +646,13 @@ char * make_path(const char * dir, const char * file)
 #ifdef _WIN32
       strcat(path, "\\");
 #else /* ifndef _WIN32 */
-      strcat(path, "/");
+      if(path[strlen(path)-1] != '/') strcat(path, "/");
 #endif /* ifndef _WIN32 */
       strcat(path, file);
 
       return path;
    }
+#endif /* ndef AMIGA */
 }