Patch to simplify looking for snmp, and to make it work on
authoraland <aland>
Fri, 16 Aug 2002 20:15:21 +0000 (20:15 +0000)
committeraland <aland>
Fri, 16 Aug 2002 20:15:21 +0000 (20:15 +0000)
FreeBSD.

Hmm... maybe we should just include ucd-snmp, like Gnu-radius does...

Patch from Harrie Hazewinkel

acconfig.h
aclocal.m4
configure
src/include/autoconf.h.in
src/include/radius_snmp.h

index c72d159..706130e 100644 (file)
@@ -70,14 +70,11 @@ config.h - created by autoconf; contains defines generated by autoconf
 /* Include user collision code*/
 #undef WITH_USERCOLLIDE
 
-/* Define if you have the <snmp.h> header file.  */
-#undef HAVE_SNMP_H
+/* Define if you have the <ucd-snmp/asn1.h>, <ucd-snmp/snmp_impl.h> and <ucd-snmp/snmp.h> header file.  */
+#undef HAVE_UCD_SNMP_ASN1_SNMP_SNMPIMPL_H
 
-/* Define if you have the <snmp_impl.h> header file.  */
-#undef HAVE_SNMP_IMPL_H
-
-/* Define if you have the <asn1.h> header file.  */
-#undef HAVE_ASN1_H
+/* Define if you have the <asn1.h>, <snmp_impl.h> and <snmp.h> header file.  */
+#undef HAVE_ASN1_SNMP_SNMPIMPL_H
 
 /* Define if you have the snmp library (-lsnmp).  */
 #undef HAVE_LIBSNMP
index 30af650..a5707eb 100644 (file)
@@ -3748,10 +3748,10 @@ AC_DEFUN(SNMP_CHECKS, [
        AC_SUBST(SNMP_LIBS)
        AC_SUBST(SNMP_INCLUDE)
 
-AC_MSG_CHECKING([for asn1.h])
+AC_MSG_CHECKING([for asn1.h,snmp.h,snmp_impl.h])
 
 dnl #
-dnl #  First, see if we can build it WITHOUT using any special includes
+dnl #  First, see if we can build it WITHOUT using any special includes and in ucd-snmp
 dnl #
 AC_TRY_COMPILE([
 #ifdef HAVE_SYS_TYPES_H
@@ -3769,17 +3769,19 @@ AC_TRY_COMPILE([
 #ifdef HAVE_UNISTD_H
 #include <unistd.h>
 #endif
-#include <asn1.h>],
+#include <ucd-snmp/asn1.h>
+#include <ucd-snmp/snmp.h>
+#include <ucd-snmp/snmp_impl.h>],
                [ int a = 1;],
-               SNMP_INCLUDE="",
+               SNMP_INCLUDE="";ucdsnmp=yes,
                SNMP_INCLUDE=)
 
 dnl #
-dnl #  If not, look for it in a number of directories.
+dnl #  If not, look for it in a number of directories and in ucd-snmp.
 dnl #
 if test "x$SNMP_INCLUDE" = "x"; then
   old_CFLAGS="$CFLAGS"
-  for try in /usr/include/ucd-snmp /usr/local/include/ucd-snmp $snmp_include_dir; do
+  for try in /usr/include /usr/local/include $snmp_include_dir; do
     CFLAGS="$old_CFLAGS -I$try"
     AC_TRY_COMPILE([
 #ifdef HAVE_SYS_TYPES_H
@@ -3797,9 +3799,11 @@ if test "x$SNMP_INCLUDE" = "x"; then
 #ifdef HAVE_UNISTD_H
 #include <unistd.h>
 #endif
-#include <asn1.h>],
+#include <ucd-snmp/asn1.h>
+#include <ucd-snmp/snmp.h>
+#include <ucd-snmp/snmp_impl.h>],
                    [ int a = 1;],
-                   SNMP_INCLUDE="-I$try",
+                   SNMP_INCLUDE="-I$try";ucdsnmp=yes,
                    SNMP_INCLUDE=)
     if test "x$SNMP_INCLUDE" != "x"; then
       break;
@@ -3809,19 +3813,13 @@ if test "x$SNMP_INCLUDE" = "x"; then
 fi
 
 if test "x$SNMP_INCLUDE" = "x"; then
-  AC_MSG_RESULT(no)
-else
-  AC_MSG_RESULT(yes)
-  AC_DEFINE(HAVE_ASN1_H)
-  
+  old_CFLAGS="$CFLAGS"
+  for try in /usr/include/ucd-snmp /usr/local/include/ucd-snmp $snmp_include_dir; do
+    CFLAGS="$old_CFLAGS -I$try"
 dnl #
-dnl #  Check for the rest of the SNMP headers.
+dnl #  First, see if we can build it WITHOUT using any special includes and without ucd-snmp
 dnl #
-  old_CFLAGS="$CFLAGS"
-  CFLAGS="$CFLAGS $SNMP_INCLUDE"
-
-  AC_MSG_CHECKING(for snmp.h)
-    AC_TRY_COMPILE([
+AC_TRY_COMPILE([
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>
 #endif
@@ -3837,19 +3835,26 @@ dnl #
 #ifdef HAVE_UNISTD_H
 #include <unistd.h>
 #endif
-#ifdef HAVE_ASN1_H
 #include <asn1.h>
-#endif
-#include <snmp.h>],
-                   [ int a = 1;],
-                   [AC_DEFINE(HAVE_SNMP_H) ac_cv_header_snmp_h=yes])
-    if test "x$ac_cv_header_snmp_h" = "xyes"; then
-      AC_MSG_RESULT(yes)
-    else
-      AC_MSG_RESULT(no)
+#include <snmp.h>
+#include <snmp_impl.h>],
+               [ int a = 1;],
+               SNMP_INCLUDE="",
+               SNMP_INCLUDE=)
+    if test "x$SNMP_INCLUDE" != "x"; then
+      break;
     fi
+  done
+  CFLAGS="$old_CFLAGS"
+fi
 
-    AC_MSG_CHECKING(for snmp_impl.h)
+dnl #
+dnl #  If not, look for it in a number of directories and without ucd-snmp
+dnl #
+if test "x$SNMP_INCLUDE" = "x"; then
+  old_CFLAGS="$CFLAGS"
+  for try in /usr/include/ucd-snmp /usr/local/include/ucd-snmp $snmp_include_dir; do
+    CFLAGS="$old_CFLAGS -I$try"
     AC_TRY_COMPILE([
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>
@@ -3866,21 +3871,29 @@ dnl #
 #ifdef HAVE_UNISTD_H
 #include <unistd.h>
 #endif
-#ifdef HAVE_ASN1_H
 #include <asn1.h>
-#endif
-#ifdef HAVE_SNMP_H
 #include <snmp.h>
-#endif
 #include <snmp_impl.h>],
                    [ int a = 1;],
-                   [AC_DEFINE(HAVE_SNMP_IMPL_H) ac_cv_header_snmp_impl_h=yes])
-    if test "x$ac_cv_header_snmp_h" = "xyes"; then
-      AC_MSG_RESULT(yes)
-    else
-      AC_MSG_RESULT(no)
+                   SNMP_INCLUDE="-I$try",
+                   SNMP_INCLUDE=)
+    if test "x$SNMP_INCLUDE" != "x"; then
+      break;
     fi
+  done
+  CFLAGS="$old_CFLAGS"
+fi
 
+if test "x$SNMP_INCLUDE" = "x"; then
+  AC_MSG_RESULT(no)
+else
+  if test "x$ucdsnmp" = "xyes"; then
+    AC_MSG_RESULT((ucd-snmp)yes)
+    AC_DEFINE(HAVE_UCD_SNMP_ASN1_SNMP_SNMPIMPL_H)
+  else
+    AC_MSG_RESULT(yes)
+    AC_DEFINE(HAVE_ASN1_SNMP_SNMPIMPL_H)
+  fi
 dnl #
 dnl #  Now do the same thing, looking for the SNMP library directory
 dnl #
index 5a0b98f..3938161 100755 (executable)
--- a/configure
+++ b/configure
@@ -727,7 +727,7 @@ fi
 
 
 
-# From configure.in Revision: 1.165 
+# From configure.in Revision: 1.166 
 RADIUSD_MAJOR_VERSION=0
 RADIUSD_MINOR_VERSION=8-pre
 RADIUSD_VERSION="${RADIUSD_MAJOR_VERSION}.${RADIUSD_MINOR_VERSION}"
@@ -7683,8 +7683,8 @@ if test "x$WITH_SNMP" = "xyes"; then
        
        
 
-echo $ac_n "checking for asn1.h""... $ac_c" 1>&6
-echo "configure:7688: checking for asn1.h" >&5
+echo $ac_n "checking for asn1.h,snmp.h,snmp_impl.h""... $ac_c" 1>&6
+echo "configure:7688: checking for asn1.h,snmp.h,snmp_impl.h" >&5
 
 cat > conftest.$ac_ext <<EOF
 #line 7691 "configure"
@@ -7705,14 +7705,16 @@ cat > conftest.$ac_ext <<EOF
 #ifdef HAVE_UNISTD_H
 #include <unistd.h>
 #endif
-#include <asn1.h>
+#include <ucd-snmp/asn1.h>
+#include <ucd-snmp/snmp.h>
+#include <ucd-snmp/snmp_impl.h>
 int main() {
  int a = 1;
 ; return 0; }
 EOF
-if { (eval echo configure:7714: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7716: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
-  SNMP_INCLUDE=""
+  SNMP_INCLUDE="";ucdsnmp=yes
 else
   echo "configure: failed program was:" >&5
   cat conftest.$ac_ext >&5
@@ -7723,10 +7725,10 @@ rm -f conftest*
 
 if test "x$SNMP_INCLUDE" = "x"; then
   old_CFLAGS="$CFLAGS"
-  for try in /usr/include/ucd-snmp /usr/local/include/ucd-snmp $snmp_include_dir; do
+  for try in /usr/include /usr/local/include $snmp_include_dir; do
     CFLAGS="$old_CFLAGS -I$try"
     cat > conftest.$ac_ext <<EOF
-#line 7730 "configure"
+#line 7732 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -7744,14 +7746,16 @@ if test "x$SNMP_INCLUDE" = "x"; then
 #ifdef HAVE_UNISTD_H
 #include <unistd.h>
 #endif
-#include <asn1.h>
+#include <ucd-snmp/asn1.h>
+#include <ucd-snmp/snmp.h>
+#include <ucd-snmp/snmp_impl.h>
 int main() {
  int a = 1;
 ; return 0; }
 EOF
-if { (eval echo configure:7753: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7757: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
-  SNMP_INCLUDE="-I$try"
+  SNMP_INCLUDE="-I$try";ucdsnmp=yes
 else
   echo "configure: failed program was:" >&5
   cat conftest.$ac_ext >&5
@@ -7767,21 +7771,11 @@ rm -f conftest*
 fi
 
 if test "x$SNMP_INCLUDE" = "x"; then
-  echo "$ac_t""no" 1>&6
-else
-  echo "$ac_t""yes" 1>&6
-  cat >> confdefs.h <<\EOF
-#define HAVE_ASN1_H 1
-EOF
-
-  
   old_CFLAGS="$CFLAGS"
-  CFLAGS="$CFLAGS $SNMP_INCLUDE"
-
-  echo $ac_n "checking for snmp.h""... $ac_c" 1>&6
-echo "configure:7783: checking for snmp.h" >&5
-    cat > conftest.$ac_ext <<EOF
-#line 7785 "configure"
+  for try in /usr/include/ucd-snmp /usr/local/include/ucd-snmp $snmp_include_dir; do
+    CFLAGS="$old_CFLAGS -I$try"
+cat > conftest.$ac_ext <<EOF
+#line 7779 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -7799,35 +7793,36 @@ echo "configure:7783: checking for snmp.h" >&5
 #ifdef HAVE_UNISTD_H
 #include <unistd.h>
 #endif
-#ifdef HAVE_ASN1_H
 #include <asn1.h>
-#endif
 #include <snmp.h>
+#include <snmp_impl.h>
 int main() {
  int a = 1;
 ; return 0; }
 EOF
-if { (eval echo configure:7811: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7804: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
-  cat >> confdefs.h <<\EOF
-#define HAVE_SNMP_H 1
-EOF
- ac_cv_header_snmp_h=yes
+  SNMP_INCLUDE=""
 else
   echo "configure: failed program was:" >&5
   cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  SNMP_INCLUDE=
 fi
 rm -f conftest*
-    if test "x$ac_cv_header_snmp_h" = "xyes"; then
-      echo "$ac_t""yes" 1>&6
-    else
-      echo "$ac_t""no" 1>&6
+    if test "x$SNMP_INCLUDE" != "x"; then
+      break;
     fi
+  done
+  CFLAGS="$old_CFLAGS"
+fi
 
-    echo $ac_n "checking for snmp_impl.h""... $ac_c" 1>&6
-echo "configure:7829: checking for snmp_impl.h" >&5
+if test "x$SNMP_INCLUDE" = "x"; then
+  old_CFLAGS="$CFLAGS"
+  for try in /usr/include/ucd-snmp /usr/local/include/ucd-snmp $snmp_include_dir; do
+    CFLAGS="$old_CFLAGS -I$try"
     cat > conftest.$ac_ext <<EOF
-#line 7831 "configure"
+#line 7826 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -7845,48 +7840,60 @@ echo "configure:7829: checking for snmp_impl.h" >&5
 #ifdef HAVE_UNISTD_H
 #include <unistd.h>
 #endif
-#ifdef HAVE_ASN1_H
 #include <asn1.h>
-#endif
-#ifdef HAVE_SNMP_H
 #include <snmp.h>
-#endif
 #include <snmp_impl.h>
 int main() {
  int a = 1;
 ; return 0; }
 EOF
-if { (eval echo configure:7860: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7851: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
-  cat >> confdefs.h <<\EOF
-#define HAVE_SNMP_IMPL_H 1
-EOF
- ac_cv_header_snmp_impl_h=yes
+  SNMP_INCLUDE="-I$try"
 else
   echo "configure: failed program was:" >&5
   cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  SNMP_INCLUDE=
 fi
 rm -f conftest*
-    if test "x$ac_cv_header_snmp_h" = "xyes"; then
-      echo "$ac_t""yes" 1>&6
-    else
-      echo "$ac_t""no" 1>&6
+    if test "x$SNMP_INCLUDE" != "x"; then
+      break;
     fi
+  done
+  CFLAGS="$old_CFLAGS"
+fi
+
+if test "x$SNMP_INCLUDE" = "x"; then
+  echo "$ac_t""no" 1>&6
+else
+  if test "x$ucdsnmp" = "xyes"; then
+    echo "$ac_t""(ucd-snmp)yes" 1>&6
+    cat >> confdefs.h <<\EOF
+#define HAVE_UCD_SNMP_ASN1_SNMP_SNMPIMPL_H 1
+EOF
 
+  else
+    echo "$ac_t""yes" 1>&6
+    cat >> confdefs.h <<\EOF
+#define HAVE_ASN1_SNMP_SNMPIMPL_H 1
+EOF
+
+  fi
   echo $ac_n "checking for snmp_build_var_op in -lsnmp""... $ac_c" 1>&6
-echo "configure:7878: checking for snmp_build_var_op in -lsnmp" >&5
+echo "configure:7885: checking for snmp_build_var_op in -lsnmp" >&5
 
   old_LIBS="$LIBS"
   LIBS="$old_LIBS -lsnmp"
   cat > conftest.$ac_ext <<EOF
-#line 7883 "configure"
+#line 7890 "configure"
 #include "confdefs.h"
 extern char snmp_build_var_op();
 int main() {
  snmp_build_var_op()
 ; return 0; }
 EOF
-if { (eval echo configure:7890: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7897: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   SNMP_LIBS="-lsnmp"
 else
@@ -7901,14 +7908,14 @@ rm -f conftest*
     for try in /usr/lib /usr/local/lib /usr/local/snmp/lib $snmp_lib_dir; do
       LIBS="$old_LIBS -L$try -lsnmp"
       cat > conftest.$ac_ext <<EOF
-#line 7905 "configure"
+#line 7912 "configure"
 #include "confdefs.h"
 extern char snmp_build_var_op();
 int main() {
  snmp_build_var_op()
 ; return 0; }
 EOF
-if { (eval echo configure:7912: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7919: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   SNMP_LIBS="-L$try -lsnmp"
 else
@@ -7923,14 +7930,14 @@ rm -f conftest*
       fi
       LIBS="$old_LIBS -L$try -lsnmp -lcrypto"
       cat > conftest.$ac_ext <<EOF
-#line 7927 "configure"
+#line 7934 "configure"
 #include "confdefs.h"
 extern char snmp_build_var_op();
 int main() {
  snmp_build_var_op()
 ; return 0; }
 EOF
-if { (eval echo configure:7934: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7941: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   SNMP_LIBS="-L$try -lsnmp -lcrypto"
 else
@@ -7968,16 +7975,16 @@ fi
 
 gethostbyaddrrstyle=""
 echo $ac_n "checking gethostbyaddr_r() syntax""... $ac_c" 1>&6
-echo "configure:7972: checking gethostbyaddr_r() syntax" >&5
+echo "configure:7979: checking gethostbyaddr_r() syntax" >&5
 cat > conftest.$ac_ext <<EOF
-#line 7974 "configure"
+#line 7981 "configure"
 #include "confdefs.h"
 #include <netdb.h>
 int main() {
  gethostbyaddr_r(NULL, 0, 0, NULL, NULL, 0, NULL)  
 ; return 0; }
 EOF
-if { (eval echo configure:7981: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7988: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
        cat >> confdefs.h <<\EOF
@@ -7992,14 +7999,14 @@ else
 fi
 rm -f conftest*
 cat > conftest.$ac_ext <<EOF
-#line 7996 "configure"
+#line 8003 "configure"
 #include "confdefs.h"
 #include <netdb.h>
 int main() {
  gethostbyaddr_r(NULL, 0, 0, NULL, NULL, 0, NULL, NULL) 
 ; return 0; }
 EOF
-if { (eval echo configure:8003: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:8010: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
        cat >> confdefs.h <<\EOF
@@ -8015,14 +8022,14 @@ fi
 rm -f conftest*
 
 cat > conftest.$ac_ext <<EOF
-#line 8019 "configure"
+#line 8026 "configure"
 #include "confdefs.h"
 #include <netdb.h>
 int main() {
  gethostbyaddr(NULL, 0, 0)  
 ; return 0; }
 EOF
-if { (eval echo configure:8026: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:8033: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
        cat >> confdefs.h <<\EOF
index 22d8586..edc7426 100644 (file)
@@ -74,14 +74,11 @@ config.h - created by autoconf; contains defines generated by autoconf
 /* Include SNMP subagent */
 #undef WITH_SNMP
 
-/* Define if you have the <snmp.h> header file.  */
-#undef HAVE_SNMP_H
+/* Define if you have the <ucd-snmp/asn1.h>, <ucd-snmp/snmp_impl.h> and <ucd-snmp/snmp.h> header file.  */
+#undef HAVE_UCD_SNMP_ASN1_SNMP_SNMPIMPL_H
 
-/* Define if you have the <snmp_impl.h> header file.  */
-#undef HAVE_SNMP_IMPL_H
-
-/* Define if you have the <asn1.h> header file.  */
-#undef HAVE_ASN1_H
+/* Define if you have the <asn1.h>, <snmp_impl.h> and <snmp.h> header file.  */
+#undef HAVE_ASN1_SNMP_SNMPIMPL_H
 
 /* Define if you have the snmp library (-lsnmp).  */
 #undef HAVE_LIBSNMP
@@ -128,9 +125,6 @@ config.h - created by autoconf; contains defines generated by autoconf
 /* Define if you have the pthread_sigmask function.  */
 #undef HAVE_PTHREAD_SIGMASK
 
-/* Define if you have the sem_init function.  */
-#undef HAVE_SEM_INIT
-
 /* Define if you have the setlinebuf function.  */
 #undef HAVE_SETLINEBUF
 
@@ -269,9 +263,6 @@ config.h - created by autoconf; contains defines generated by autoconf
 /* Define if you have the nsl library (-lnsl).  */
 #undef HAVE_LIBNSL
 
-/* Define if you have the posix4 library (-lposix4).  */
-#undef HAVE_LIBPOSIX4
-
 /* Define if you have the resolv library (-lresolv).  */
 #undef HAVE_LIBRESOLV
 
index 126cc52..76fb55f 100644 (file)
@@ -5,21 +5,13 @@
  * Version:    $Id$
  */
 
-#if HAVE_ASN1_H
+#if HAVE_ASN1_SNMP_SNMPIMPL_H
 #include       <asn1.h>
-#elif HAVE_UCD_SNMP_ASN1_H
-#include       <ucd-snmp/asn1.h>
-#endif
-
-#if HAVE_SNMP_H
 #include       <snmp.h>
-#elif HAVE_UCD_SNMP_SNMP_H
-#include       <ucd-snmp/snmp.h>
-#endif
-
-#if HAVE_SNMP_IMPL_H
 #include       <snmp_impl.h>
-#elif HAVE_UCD_SNMP_SNMP_IMPL_H
+#elif HAVE_UCD_SNMP_ASN1_SNMP_SNMPIMPL_H
+#include       <ucd-snmp/asn1.h>
+#include       <ucd-snmp/snmp.h>
 #include       <ucd-snmp/snmp_impl.h>
 #endif
 
@@ -65,6 +57,32 @@ typedef struct rad_snmp_t {
        int               smux_max_failures;
 } rad_snmp_t;
 
+/*
+ *  Taken from RFC 2619 and RFC 2621
+ */
+typedef struct rad_snmp_client_entry_t {
+       int             index;
+       /* IP address */
+       /* Client ID (string ) */
+       int             access_requests;
+       int             dup_access_requests;
+       int             access_accepts;
+       int             access_rejects;
+       int             access_challenges;
+       int             auth_malformed_requests;
+       int             auth_bad_authenticators;
+       int             auth_packets_dropped;
+       int             auth_unknown_types;
+       int             acct_packets_dropped;
+       int             acct_requests;
+       int             acct_dup_requests;
+       int             acct_responses;
+       int             acct_bad_authenticators;
+       int             acct_malformed_requests;
+       int             acct_no_records;
+       int             acct_unknown_types;
+} rad_snmp_client_entry_t;
+
 extern rad_snmp_t      rad_snmp;
 
 #endif /* _RADIUS_SNMP_H */