]> git.sur5r.net Git - openldap/blobdiff - include/ldap_log.h
Format %d -> %ld.
[openldap] / include / ldap_log.h
index caa4ee2d2cb311786b17801fe4f2ebca11b29ebd..bd8255299eb8a219e24b3fac045b48d71f40e7a8 100644 (file)
@@ -1,16 +1,18 @@
 /* $OpenLDAP$ */
-/*
- * Copyright 1998-2001 The OpenLDAP Foundation, Redwood City, California, USA
+/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
+ * 
+ * Copyright 1998-2003 The OpenLDAP Foundation.
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted only as authorized by the OpenLDAP
- * Public License.  A copy of this license is available at
- * http://www.OpenLDAP.org/license.html or in file LICENSE in the
- * top-level directory of the distribution.
+ * Public License.
+ *
+ * A copy of this license is available in file LICENSE in the
+ * top-level directory of the distribution or, alternatively, at
+ * <http://www.OpenLDAP.org/license.html>.
  */
-/* Portions
- * Copyright (c) 1990 Regents of the University of Michigan.
+/* Portions Copyright (c) 1990 Regents of the University of Michigan.
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms are permitted
@@ -35,21 +37,29 @@ LDAP_BEGIN_DECL
  * reflect the number of subsystems and LDAP_SUBSYS_MAX reflect
  * the largest subsystem number.
  */
-#define LDAP_SUBSYS_NUM 12
-#define LDAP_SUBSYS_MAX 11
+#define LDAP_SUBSYS_NUM 20
+#define LDAP_SUBSYS_MAX 19
 
 #define LDAP_SUBSYS_GLOBAL      0
 #define LDAP_SUBSYS_OPERATION   1
 #define LDAP_SUBSYS_TRANSPORT   2
 #define LDAP_SUBSYS_CONNECTION  3
 #define LDAP_SUBSYS_FILTER      4
-#define LDAP_SUBSYS_BACKEND     5
-#define LDAP_SUBSYS_BER         6
-#define LDAP_SUBSYS_CONFIG      7
-#define LDAP_SUBSYS_ACL         8
-#define LDAP_SUBSYS_CACHE       9
-#define LDAP_SUBSYS_INDEX      10
-#define LDAP_SUBSYS_LDIF       11
+#define LDAP_SUBSYS_BER         5
+#define LDAP_SUBSYS_CONFIG      6
+#define LDAP_SUBSYS_ACL         7
+#define LDAP_SUBSYS_CACHE       8
+#define LDAP_SUBSYS_INDEX              9
+#define LDAP_SUBSYS_LDIF               10
+#define LDAP_SUBSYS_TOOLS              11
+#define LDAP_SUBSYS_SLAPD              12
+#define LDAP_SUBSYS_SLURPD             13
+#define LDAP_SUBSYS_BACKEND     14
+#define LDAP_SUBSYS_BACK_BDB   15
+#define LDAP_SUBSYS_BACK_LDBM  16
+#define LDAP_SUBSYS_BACK_LDAP  17
+#define LDAP_SUBSYS_BACK_META  18
+#define LDAP_SUBSYS_BACK_MON   19
 
 /*
  * debug reporting levels.
@@ -87,7 +97,6 @@ LDAP_BEGIN_DECL
 #define LDAP_DEBUG_CACHE    0x1000
 #define LDAP_DEBUG_INDEX    0x2000
 
-#define LDAP_DEBUG_DEPRECATED  0x1000
 #define LDAP_DEBUG_NONE                0x8000
 #define LDAP_DEBUG_ANY         -1
 
@@ -111,37 +120,57 @@ LDAP_BEGIN_DECL
 #   ifdef LDAP_SYSLOG
 #   define Debug( level, fmt, arg1, arg2, arg3 )       \
        do { \
-               lutil_debug( ldap_debug, (level), (fmt), (arg1), (arg2), (arg3) ); \
+               if ( ldap_debug & (level) ) \
+                       lutil_debug( ldap_debug, (level), (fmt), (arg1), (arg2), (arg3) ); \
                if ( ldap_syslog & (level) ) \
                        syslog( ldap_syslog_level, (fmt), (arg1), (arg2), (arg3) ); \
        } while ( 0 )
 
 #   else
 #       define Debug( level, fmt, arg1, arg2, arg3 ) \
-           lutil_debug( ldap_debug, (level), (fmt), (arg1), (arg2), (arg3) )
+       do { \
+               if ( ldap_debug & (level) ) \
+                       lutil_debug( ldap_debug, (level), (fmt), (arg1), (arg2), (arg3) ); \
+       } while ( 0 )
 #   endif
 
-#ifndef LDAP_LOG
-#   define LDAP_LOG(a) lutil_log a
-#endif
-
 #else /* LDAP_DEBUG */
 #   define Debug( level, fmt, arg1, arg2, arg3 )
 
-#ifndef LDAP_LOG
-#   define LDAP_LOG(a)
-#endif
+#endif /* LDAP_DEBUG */
+
+#ifdef NEW_LOGGING
+extern int ldap_loglevels[LDAP_SUBSYS_NUM];
+
+#ifdef LDAP_DEBUG
+
+#define LDAP_LOG(a, b, fmt, arg1, arg2, arg3) do {\
+       if (ldap_loglevels[LDAP_SUBSYS_##a] >= LDAP_LEVEL_##b || \
+               ldap_loglevels[LDAP_SUBSYS_GLOBAL] >= LDAP_LEVEL_##b)\
+                  lutil_log (LDAP_SUBSYS_##a, LDAP_LEVEL_##b, fmt, arg1, arg2, arg3); \
+       } while (0)
+
+
+#define LDAP_LOGS_TEST(a, b) \
+       (ldap_loglevels[LDAP_SUBSYS_##a] >= LDAP_LEVEL_##b || \
+        ldap_loglevels[LDAP_SUBSYS_GLOBAL] >= LDAP_LEVEL_##b)
 
 #endif /* LDAP_DEBUG */
 
+#endif /* NEW_LOGGING */
+
+#ifndef LDAP_LOG
+#define LDAP_LOG(a, b, fmt, arg1, arg2, arg3)
+#define LDAP_LOGS_TEST(a, b) 0
+#endif
 
 LDAP_LUTIL_F(int) lutil_mnem2level LDAP_P(( const char *level ));
 LDAP_LUTIL_F(void) lutil_log_initialize LDAP_P((
        int argc, char **argv ));
-LDAP_LUTIL_F(void) lutil_set_debug_level LDAP_P((
+LDAP_LUTIL_F(int) lutil_set_debug_level LDAP_P((
        const char *subsys, int level ));
 LDAP_LUTIL_F(void) lutil_log LDAP_P((
-       const char *subsys, int level, const char *fmt, ... ));
+       const int subsys, int level, const char *fmt, ... ));
 
 LDAP_LUTIL_F(int) lutil_debug_file LDAP_P(( FILE *file ));