]> arthur.barton.de Git - netatalk.git/commitdiff
doh, the code was looking up the loglevel against a table, then using the position...
authorsibaz <sibaz>
Sat, 24 Aug 2002 03:47:37 +0000 (03:47 +0000)
committersibaz <sibaz>
Sat, 24 Aug 2002 03:47:37 +0000 (03:47 +0000)
config/afpd.conf.tmpl
include/atalk/logger.h
libatalk/util/logger.c

index 041dd7d1965ca22d7af75ff47a2df0eee84f8161..c1c093831a084dddfae3acc5e7c6991f5902007a 100644 (file)
 #                         the same logtype (file or syslog).
 #                         logtypes:  Default, Core, Logger, CNID, AFPDaemon
 #                         loglevels: LOG_SEVERE, LOG_ERROR, LOG_WARN, LOG_NOTE,
-#                                    LOG_INFO, LOG_DEBUG, LOG_EXTRADEBUG
+#                                    LOG_INFO, LOG_DEBUG, LOG_DEBUG6, LOG_DEBUG7, 
+#                                    LOG_DEBUG8, LOG_DEBUG9, LOG_MAXDEBUG
 #              
 # Some examples:
 #
index 61f5125ba93eabcf8ecc08c81eec80932e26f0cb..dbcc78679dcf5a84ebef9bf6a060da3e290179d3 100644 (file)
@@ -17,7 +17,11 @@ enum loglevels {
   log_note     = 30,
   log_info     = 40,
   log_debug    = 50,
-  log_extradebug= 60
+  log_debug6   = 60,
+  log_debug7   = 70,
+  log_debug8   = 80,
+  log_debug9   = 90,
+  log_maxdebug = 100
 };
 #define LOGLEVEL_STRING_IDENTIFIERS { \
   "LOG_SEVERE",                       \
@@ -26,7 +30,11 @@ enum loglevels {
   "LOG_NOTE",                         \
   "LOG_INFO",                         \
   "LOG_DEBUG",                        \
-  "LOG_EXTRADEBUG"}                        
+  "LOG_DEBUG6",                       \
+  "LOG_DEBUG7",                       \
+  "LOG_DEBUG8",                       \
+  "LOG_DEBUG9",                       \
+  "LOG_MAXDEBUG"}                        
 
 /* this is the enum specifying all availiable logtypes */
 enum logtypes {
index a79e4cf64b9a2e80e6d76d98300829153f44cbd3..b3a1f14621314a6877199cfc4584c9dede41662a 100644 (file)
@@ -230,7 +230,11 @@ bool log_setup(char *filename, enum loglevels loglevel, enum logtypes logtype,
   log_init();
 
   logs = log_file_arr[logtype];
+  
+  LOG(log_debug6, logtype_logger, "doing log_setup, type %d, level %d, filename \"%s\"", logtype, loglevel, filename);
 
+  /* LOG(log_extradebug+10, logtype_logger, "checking array for logtype is malloc'd"); */
+  /* has the given logtype already been assigned memory? */
   if (logs==NULL)
   {
     logs = (log_file_data_pair *)malloc(sizeof(log_file_data_pair));
@@ -248,12 +252,14 @@ bool log_setup(char *filename, enum loglevels loglevel, enum logtypes logtype,
     }
   }
 
+  /* I think this checks if we're logging to stdout or not.  Probably unused */
   if ( ((*logs)[1].log_file == stdout) && ((*logs)[1].log_file != NULL) )
   {
     fclose((*logs)[1].log_file);
     (*logs)[1].log_file = NULL;
   }
 
+  /* check if we need to append the given filename to a directory */
   if (strlen(global_log_data.log_file_directory)>0)
   {
     lastchar[0] = global_log_data.
@@ -363,6 +369,9 @@ bool log_setup(char *filename, enum loglevels loglevel, enum logtypes logtype,
   }
 #endif
 
+  LOG(log_debug7, logtype_logger, "log_file_arr[%d] now contains: "
+                                 "{log_filename:%s, log_file:%p, log_level: %d}", logtype,
+                                  (*logs)[1].log_filename, (*logs)[1].log_file, (*logs)[1].log_level);
   LOG(log_info, logtype_logger, "Log setup complete");
 
 #endif /* DISABLE_LOGGER */
@@ -875,8 +884,7 @@ int get_syslog_equivalent(enum loglevels loglevel)
 void setuplog(char *logtype, char *loglevel, char *filename)
 {
 #ifndef DISABLE_LOGGER 
-  /* -setuplogtype <syslog|filelog> <logtype> <loglevel>*/
-  /* -setuplogtype <logtype> <loglevel> [<filename>]*/
+  /* -[un]setuplog <logtype> <loglevel> [<filename>]*/
   /*
     This should be rewritten so that somehow logsource is assumed and everything
     can be taken from default if needs be.  
@@ -890,48 +898,9 @@ void setuplog(char *logtype, char *loglevel, char *filename)
   LOG(log_extradebug, logtype_logger, "Attempting setuplog: %s %s %s %s", 
       logsource, logtype, loglevel, filename);
   */
-  LOG(log_extradebug, logtype_logger, "Attempting setuplog: %s %s %s", 
+  LOG(log_debug6, logtype_logger, "Attempting setuplog: %s %s %s", 
       logtype, loglevel, filename);
 
-  /*
-   Do I need these?
-  
-  if (logsource==NULL)
-    logsource=null;
-  if (logtype==NULL)
-    logtype=null;
-  if (loglevel==NULL)
-    loglevel=null;
-  if (filename==NULL)
-    filename=null;
-  */
-
-  /*
-   * We'll just use filename, if its NULL we know its a syslog thing
-   * 
-  if (logsource==NULL)
-  {
-    LOG(log_note, logtype_logger, "no logsource given");
-  }
-  else
-  {
-    for(sourcenum=0;sourcenum<NUMOF(sources);sourcenum++)
-    {
-      if (strcasecmp(logsource, sources[sourcenum])==0)
-        break;
-    }
-    if (sourcenum>=NUMOF(sources))
-    {
-      LOG(log_warning, logtype_logger, "%s is not a valid log source", logsource);
-    }
-    if ((sourcenum>0) && (filename==NULL))
-    {
-      LOG(log_warning, logtype_logger, 
-          "when specifying a filelog, you must specify a valid filename");
-    }
-  }
-  */
-
   if (logtype==NULL)
   {
     LOG(log_note, logtype_logger, "no logsource given");
@@ -976,6 +945,9 @@ void setuplog(char *logtype, char *loglevel, char *filename)
     return;
   }
 
+  /* now match the order of the text string with the actual enum value (10 times) */
+  levelnum*=10;
+  
   /* is this a syslog setup or a filelog setup */
   if (filename==NULL) /* must be syslog */
   {