Diff for /embedaddon/sudo/include/sudo_debug.h between versions 1.1 and 1.1.1.5

version 1.1, 2012/05/29 12:26:49 version 1.1.1.5, 2014/06/15 16:12:54
Line 1 Line 1
 /*  /*
 * Copyright (c) 2011 Todd C. Miller <Todd.Miller@courtesan.com> * Copyright (c) 2011-2012 Todd C. Miller <Todd.Miller@courtesan.com>
  *   *
  * Permission to use, copy, modify, and distribute this software for any   * Permission to use, copy, modify, and distribute this software for any
  * purpose with or without fee is hereby granted, provided that the above   * purpose with or without fee is hereby granted, provided that the above
Line 71 Line 71
 #define SUDO_DEBUG_PERMS        (23<<6) /* uid/gid swapping functions */  #define SUDO_DEBUG_PERMS        (23<<6) /* uid/gid swapping functions */
 #define SUDO_DEBUG_PLUGIN       (24<<6) /* main plugin functions */  #define SUDO_DEBUG_PLUGIN       (24<<6) /* main plugin functions */
 #define SUDO_DEBUG_HOOKS        (25<<6) /* hook functions */  #define SUDO_DEBUG_HOOKS        (25<<6) /* hook functions */
   #define SUDO_DEBUG_SSSD         (26<<6) /* sudoers SSSD */
   #define SUDO_DEBUG_EVENT        (27<<6) /* event handling */
 #define SUDO_DEBUG_ALL          0xfff0  /* all subsystems */  #define SUDO_DEBUG_ALL          0xfff0  /* all subsystems */
   
 /* Flag to include string version of errno in debug info. */  /* Flag to include string version of errno in debug info. */
Line 143 Line 145
   
 #define debug_return_str(rval)                                                 \  #define debug_return_str(rval)                                                 \
     do {                                                                       \      do {                                                                       \
        const char *sudo_debug_rval = (rval);                                       \        char *sudo_debug_rval = (rval);                                        \
         sudo_debug_exit_str(__func__, __FILE__, __LINE__, sudo_debug_subsys,   \          sudo_debug_exit_str(__func__, __FILE__, __LINE__, sudo_debug_subsys,   \
             sudo_debug_rval);                                                  \              sudo_debug_rval);                                                  \
        return (char *)sudo_debug_rval;                                               \        return sudo_debug_rval;                                                       \
     } while (0)      } while (0)
   
#define debug_return_str_masked(rval)                                                 \#define debug_return_const_str(rval)                                         \
     do {                                                                       \      do {                                                                       \
         const char *sudo_debug_rval = (rval);                                  \          const char *sudo_debug_rval = (rval);                                  \
           sudo_debug_exit_str(__func__, __FILE__, __LINE__, sudo_debug_subsys,   \
               sudo_debug_rval);                                                  \
           return sudo_debug_rval;                                                \
       } while (0)
   
   #define debug_return_str_masked(rval)                                          \
       do {                                                                       \
           char *sudo_debug_rval = (rval);                                        \
         sudo_debug_exit_str_masked(__func__, __FILE__, __LINE__,               \          sudo_debug_exit_str_masked(__func__, __FILE__, __LINE__,               \
             sudo_debug_subsys, sudo_debug_rval);                               \              sudo_debug_subsys, sudo_debug_rval);                               \
        return (char *)sudo_debug_rval;                                               \        return sudo_debug_rval;                                                       \
     } while (0)      } while (0)
   
 #define debug_return_ptr(rval)                                                 \  #define debug_return_ptr(rval)                                                 \
     do {                                                                       \      do {                                                                       \
           void *sudo_debug_rval = (rval);                                        \
           sudo_debug_exit_ptr(__func__, __FILE__, __LINE__, sudo_debug_subsys,   \
               sudo_debug_rval);                                                  \
           return sudo_debug_rval;                                                \
       } while (0)
   
   #define debug_return_const_ptr(rval)                                           \
       do {                                                                       \
         const void *sudo_debug_rval = (rval);                                  \          const void *sudo_debug_rval = (rval);                                  \
         sudo_debug_exit_ptr(__func__, __FILE__, __LINE__, sudo_debug_subsys,   \          sudo_debug_exit_ptr(__func__, __FILE__, __LINE__, sudo_debug_subsys,   \
             sudo_debug_rval);                                                  \              sudo_debug_rval);                                                  \
        return (void *)sudo_debug_rval;                                               \        return sudo_debug_rval;                                                       \
     } while (0)      } while (0)
   
 /*  /*
  * Variadic macros are a C99 feature but GNU cpp has supported   * Variadic macros are a C99 feature but GNU cpp has supported
  * a (different) version of them for a long time.   * a (different) version of them for a long time.
  */   */
#if defined(__GNUC__) && __GNUC__ == 2#if defined(NO_VARIADIC_MACROS)
 # define sudo_debug_printf sudo_debug_printf_nvm
 #elif defined(__GNUC__) && __GNUC__ == 2
 # define sudo_debug_printf(pri, fmt...) \  # define sudo_debug_printf(pri, fmt...) \
     sudo_debug_printf2(__func__, __FILE__, __LINE__, (pri)|sudo_debug_subsys, \      sudo_debug_printf2(__func__, __FILE__, __LINE__, (pri)|sudo_debug_subsys, \
    (fmt))    fmt)
 #else  #else
 # define sudo_debug_printf(pri, ...) \  # define sudo_debug_printf(pri, ...) \
     sudo_debug_printf2(__func__, __FILE__, __LINE__, (pri)|sudo_debug_subsys, \      sudo_debug_printf2(__func__, __FILE__, __LINE__, (pri)|sudo_debug_subsys, \
Line 198  void sudo_debug_exit_bool(const char *func, const char Line 218  void sudo_debug_exit_bool(const char *func, const char
 void sudo_debug_exit_str(const char *func, const char *file, int line, int subsys, const char *rval);  void sudo_debug_exit_str(const char *func, const char *file, int line, int subsys, const char *rval);
 void sudo_debug_exit_str_masked(const char *func, const char *file, int line, int subsys, const char *rval);  void sudo_debug_exit_str_masked(const char *func, const char *file, int line, int subsys, const char *rval);
 void sudo_debug_exit_ptr(const char *func, const char *file, int line, int subsys, const void *rval);  void sudo_debug_exit_ptr(const char *func, const char *file, int line, int subsys, const void *rval);
   int sudo_debug_fd_get(void);
 int sudo_debug_fd_set(int fd);  int sudo_debug_fd_set(int fd);
 int sudo_debug_init(const char *debugfile, const char *settings);  int sudo_debug_init(const char *debugfile, const char *settings);
void sudo_debug_printf2(const char *func, const char *file, int line, int level, const char *format, ...) __printflike(5, 6);void sudo_debug_printf_nvm(int pri, const char *fmt, ...) __printf0like(2, 3);
 void sudo_debug_printf2(const char *func, const char *file, int line, int level, const char *fmt, ...) __printf0like(5, 6);
 void sudo_debug_vprintf2(const char *func, const char *file, int line, int level, const char *fmt, va_list ap) __printf0like(5, 0);
 void sudo_debug_write(const char *str, int len, int errno_val);  void sudo_debug_write(const char *str, int len, int errno_val);
 void sudo_debug_write2(const char *func, const char *file, int line, const char *str, int len, int errno_val);  void sudo_debug_write2(const char *func, const char *file, int line, const char *str, int len, int errno_val);
 pid_t sudo_debug_fork(void);  pid_t sudo_debug_fork(void);

Removed from v.1.1  
changed lines
  Added in v.1.1.1.5


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>