Diff for /libelwix/inc/elwix.h between versions 1.13 and 1.21.4.1

version 1.13, 2015/06/25 17:53:49 version 1.21.4.1, 2024/01/22 14:17:02
Line 12  terms: Line 12  terms:
 All of the documentation and software included in the ELWIX and AITNET  All of the documentation and software included in the ELWIX and AITNET
 Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>  Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>
   
Copyright 2004 - 2015Copyright 2004 - 2024
         by Michael Pounov <misho@elwix.org>.  All rights reserved.          by Michael Pounov <misho@elwix.org>.  All rights reserved.
   
 Redistribution and use in source and binary forms, with or without  Redistribution and use in source and binary forms, with or without
Line 49  SUCH DAMAGE. Line 49  SUCH DAMAGE.
   
 #include <assert.h>  #include <assert.h>
 #include <syslog.h>  #include <syslog.h>
   #include <stdarg.h>
 #include <sys/types.h>  #include <sys/types.h>
 #include <sys/param.h>  #include <sys/param.h>
 #include <sys/limits.h>  
 #include <sys/socket.h>  #include <sys/socket.h>
 #include <sys/endian.h>  
 #include <sys/un.h>  #include <sys/un.h>
   #ifndef __linux__
   #include <sys/limits.h>
   #include <sys/endian.h>
 #include <net/if_dl.h>  #include <net/if_dl.h>
   #else
   #include <linux/if_packet.h>
   #endif
 #include <netinet/in.h>  #include <netinet/in.h>
 #include <arpa/inet.h>  #include <arpa/inet.h>
   
   #include <elwix/aqueue.h>
 #include <elwix/atree.h>  #include <elwix/atree.h>
 #include <elwix/ampool.h>  #include <elwix/ampool.h>
 #include <elwix/acrc.h>  #include <elwix/acrc.h>
Line 72  SUCH DAMAGE. Line 78  SUCH DAMAGE.
 #include <elwix/atime.h>  #include <elwix/atime.h>
 #include <elwix/apack.h>  #include <elwix/apack.h>
 #include <elwix/apio.h>  #include <elwix/apio.h>
   #include <elwix/ajson.h>
   #include <elwix/aiov.h>
   #include <elwix/aindex.h>
   
   
 #ifndef STRSIZ  #ifndef STRSIZ
Line 210  void elwixFini(); Line 219  void elwixFini();
  */   */
 int elwix_byteOrder();  int elwix_byteOrder();
   
   #ifndef strlcpy
   /*
    * Copy src to string dst of size siz.  At most siz-1 characters
    * will be copied.  Always NUL terminates (unless siz == 0).
    * Returns strlen(src); if retval >= siz, truncation occurred.
    */
   size_t strlcpy(char *dst, const char *src, size_t siz);
   #endif
   #ifndef strlcat
   /*
    * Appends src to string dst of size siz (unlike strncat, siz is the
    * full size of dst, not space left).  At most siz-1 characters
    * will be copied.  Always NUL terminates (unless siz <= strlen(dst)).
    * Returns strlen(src) + MIN(siz, strlen(initial dst)).
    * If retval >= siz, truncation occurred.
    */
   size_t strlcat(char *dst, const char *src, size_t siz);
   #endif
   
 /* memory management hooks */  /* memory management hooks */
 extern void *(*e_malloc)(size_t);  extern void *(*e_malloc)(size_t);
 extern void *(*e_calloc)(size_t, size_t);  extern void *(*e_calloc)(size_t, size_t);
Line 222  extern void (*e_free)(void*); Line 250  extern void (*e_free)(void*);
   
 /* Verbose macros */  /* Verbose macros */
 extern int elwix_Verbose;  extern int elwix_Verbose;
   #define e_Verbose               elwix_Verbose
 #define e_initVerbose(x)        (elwix_Verbose = (x))  #define e_initVerbose(x)        (elwix_Verbose = (x))
 #define e_incVerbose            (elwix_Verbose++)  #define e_incVerbose            (elwix_Verbose++)
 #define e_decVerbose            (elwix_Verbose--)  #define e_decVerbose            (elwix_Verbose--)
Line 231  extern int elwix_Verbose; Line 260  extern int elwix_Verbose;
                                         if ((x) <= elwix_Verbose) { \                                          if ((x) <= elwix_Verbose) { \
                                                 char __str[BUFSIZ] = { [0 ... BUFSIZ - 1] = 0 }; \                                                  char __str[BUFSIZ] = { [0 ... BUFSIZ - 1] = 0 }; \
                                                 snprintf(__str, sizeof __str, (fmt), ##__VA_ARGS__); \                                                  snprintf(__str, sizeof __str, (fmt), ##__VA_ARGS__); \
                                                syslog(LOG_DEBUG, "Verbose(%d):%s(%d): %s\n", \                                                syslog(LOG_INFO, "Verbose(%d):%s(%d): %s\n", \
                                                                 (x), __func__, __LINE__, __str); \                                                                  (x), __func__, __LINE__, __str); \
                                         } \                                          } \
                                 } while (0)                                  } while (0)
   #define EVERBOSE2(x, fmt, ...)  do { assert((fmt)); \
                                           if ((x) <= elwix_Verbose) { \
                                                   char __str[0x10000] = { [0 ... 0xffff] = 0 }; \
                                                   snprintf(__str, sizeof __str, (fmt), ##__VA_ARGS__); \
                                                   syslog(LOG_INFO, "Verbose(%d):%s(%d): %s\n", \
                                                                   (x), __func__, __LINE__, __str); \
                                           } \
                                   } while (0)
   
 /* Debug macros */  /* Debug macros */
 extern int elwix_Debug;  extern int elwix_Debug;
   #define e_Debug                 elwix_Debug
   
 #define ELWIX_DEBUG_OFF         0x0  #define ELWIX_DEBUG_OFF         0x0
 #define ELWIX_DEBUG_TRACE       0x1  #define ELWIX_DEBUG_TRACE       0x1
 #define ELWIX_DEBUG_LOG         0x2  #define ELWIX_DEBUG_LOG         0x2
   #define ELWIX_DEBUG_MEM         0x4
   #define ELWIX_DEBUG_MEMORY      ELWIX_DEBUG_MEM
   #define ELWIX_DEBUG_IO          0x8
   #define ELWIX_DEBUG_IPC         0x10
   #define ELWIX_DEBUG_LOCK        0x20
   #define ELWIX_DEBUG_SYS         0x40
   #define ELWIX_DEBUG_NET         0x80
 #define ELWIX_DEBUG_ANY         0xFFFFFFFF  #define ELWIX_DEBUG_ANY         0xFFFFFFFF
   
 #define ETRACE()                if (elwix_Debug & ELWIX_DEBUG_TRACE) \  #define ETRACE()                if (elwix_Debug & ELWIX_DEBUG_TRACE) \
Line 276  extern int elwix_Debug; Line 322  extern int elwix_Debug;
                                                          __func__, __LINE__, (x), __str); \                                                           __func__, __LINE__, (x), __str); \
                                 } while (0)                                  } while (0)
 #define ESYSERR(x)              do { \  #define ESYSERR(x)              do { \
                                        if (x > 0 || errno) \                                        if (x > 0 || errno) { \
                                                 int _ern = errno; \
                                                 syslog(LOG_ERR, "Error(sys):%s(%d): #%d - %s\n", \                                                  syslog(LOG_ERR, "Error(sys):%s(%d): #%d - %s\n", \
                                                                 __func__, __LINE__, x > 0 ? x : errno, \                                                                  __func__, __LINE__, x > 0 ? x : errno, \
                                                                 strerror(x > 0 ? x : errno)); \                                                                  strerror(x > 0 ? x : errno)); \
                                                   errno = _ern; \
                                           } \
                                 } while (0)                                  } while (0)
 #define ELIBERR(ait)            do { \  #define ELIBERR(ait)            do { \
                                         if (ait##_GetErrno()) \                                          if (ait##_GetErrno()) \

Removed from v.1.13  
changed lines
  Added in v.1.21.4.1


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