Diff for /embedaddon/quagga/lib/vty.h between versions 1.1.1.1 and 1.1.1.3

version 1.1.1.1, 2012/02/21 17:26:12 version 1.1.1.3, 2013/07/21 23:54:39
Line 23  Software Foundation, Inc., 59 Temple Place - Suite 330 Line 23  Software Foundation, Inc., 59 Temple Place - Suite 330
   
 #include "thread.h"  #include "thread.h"
 #include "log.h"  #include "log.h"
   #include "sockunion.h"
   
 #define VTY_BUFSIZ 512  #define VTY_BUFSIZ 512
 #define VTY_MAXHIST 20  #define VTY_MAXHIST 20
Line 39  struct vty  Line 40  struct vty 
   /* Node status of this vty */    /* Node status of this vty */
   int node;    int node;
   
   /* What address is this vty comming from. */  
   char *address;  
   
   /* Failure count */    /* Failure count */
   int fail;    int fail;
   
Line 118  struct vty  Line 116  struct vty 
   /* Timeout seconds and thread. */    /* Timeout seconds and thread. */
   unsigned long v_timeout;    unsigned long v_timeout;
   struct thread *t_timeout;    struct thread *t_timeout;
   
     /* What address is this vty comming from. */
     char address[SU_ADDRSTRLEN];
 };  };
   
 /* Integrated configuration file. */  /* Integrated configuration file. */
Line 148  struct vty  Line 149  struct vty 
 #define PRINTF_ATTRIBUTE(a,b)  #define PRINTF_ATTRIBUTE(a,b)
 #endif /* __GNUC__ */  #endif /* __GNUC__ */
   
/* Utility macros to convert VTY argument to unsigned long or integer. *//* Utility macros to convert VTY argument to unsigned long */
#define VTY_GET_LONG(NAME,V,STR) \#define VTY_GET_ULONG(NAME,V,STR) \
 do { \  do { \
   char *endptr = NULL; \    char *endptr = NULL; \
     errno = 0; \
   (V) = strtoul ((STR), &endptr, 10); \    (V) = strtoul ((STR), &endptr, 10); \
  if (*endptr != '\0' || (V) == ULONG_MAX) \  if (*(STR) == '-' || *endptr != '\0' || errno) \
     { \      { \
       vty_out (vty, "%% Invalid %s value%s", NAME, VTY_NEWLINE); \        vty_out (vty, "%% Invalid %s value%s", NAME, VTY_NEWLINE); \
       return CMD_WARNING; \        return CMD_WARNING; \
     } \      } \
 } while (0)  } while (0)
   
#define VTY_GET_INTEGER_RANGE(NAME,V,STR,MIN,MAX) \/*
do { \ * The logic below ((TMPL) <= ((MIN) && (TMPL) != (MIN)) is
  unsigned long tmpl; \ * done to circumvent the compiler complaining about
  VTY_GET_LONG(NAME, tmpl, STR); \ * comparing unsigned numbers against zero, if MIN is zero.
  if ( (tmpl < (MIN)) || (tmpl > (MAX))) \ * NB: The compiler isn't smart enough to supress the warning
    { \ * if you write (MIN) != 0 && tmpl < (MIN).
      vty_out (vty, "%% Invalid %s value%s", NAME, VTY_NEWLINE); \ */
      return CMD_WARNING; \#define VTY_GET_INTEGER_RANGE_HEART(NAME,TMPL,STR,MIN,MAX)      \
    } \do {                                                            \
  (V) = tmpl; \  VTY_GET_ULONG(NAME, (TMPL), STR);                             \
   if ( ((TMPL) <= (MIN) && (TMPL) != (MIN)) || (TMPL) > (MAX) ) \
     {                                                           \
       vty_out (vty, "%% Invalid %s value%s", NAME, VTY_NEWLINE);\
       return CMD_WARNING;                                       \
     }                                                           \
 } while (0)  } while (0)
   
#define VTY_GET_INTEGER(NAME,V,STR) \#define VTY_GET_INTEGER_RANGE(NAME,V,STR,MIN,MAX)               \
  VTY_GET_INTEGER_RANGE(NAME,V,STR,0U,UINT32_MAX)do {                                                            \
   unsigned long tmpl;                                           \
   VTY_GET_INTEGER_RANGE_HEART(NAME,tmpl,STR,MIN,MAX);           \
   (V) = tmpl;                                                   \
 } while (0)
 
 #define VTY_CHECK_INTEGER_RANGE(NAME,STR,MIN,MAX)               \
 do {                                                            \
   unsigned long tmpl;                                           \
   VTY_GET_INTEGER_RANGE_HEART(NAME,tmpl,STR,MIN,MAX);           \
 } while (0)
 
 #define VTY_GET_INTEGER(NAME,V,STR)                             \
     VTY_GET_INTEGER_RANGE(NAME,V,STR,0U,UINT32_MAX)
   
 #define VTY_GET_IPV4_ADDRESS(NAME,V,STR)                                      \  #define VTY_GET_IPV4_ADDRESS(NAME,V,STR)                                      \
 do {                                                                             \  do {                                                                             \

Removed from v.1.1.1.1  
changed lines
  Added in v.1.1.1.3


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