www.usr.com/support/gpl/USR9113_release1.0.tar.gz
[bcm963xx.git] / userapps / opensource / net-snmp / snmplib / callback.c
diff --git a/userapps/opensource/net-snmp/snmplib/callback.c b/userapps/opensource/net-snmp/snmplib/callback.c
deleted file mode 100644 (file)
index 3940cae..0000000
+++ /dev/null
@@ -1,185 +0,0 @@
-/*
- * callback.c: A generic callback mechanism 
- */
-
-#include <net-snmp/net-snmp-config.h>
-#include <sys/types.h>
-#include <stdio.h>
-#if HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-#if HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#if HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#if HAVE_STRING_H
-#include <string.h>
-#else
-#include <strings.h>
-#endif
-
-#if HAVE_DMALLOC_H
-#include <dmalloc.h>
-#endif
-
-#include <net-snmp/types.h>
-#include <net-snmp/output_api.h>
-#include <net-snmp/utilities.h>
-
-#include <net-snmp/library/callback.h>
-#include <net-snmp/library/snmp_api.h>
-
-static struct snmp_gen_callback
-               *thecallbacks[MAX_CALLBACK_IDS][MAX_CALLBACK_SUBIDS];
-
-/*
- * the chicken. or the egg.  You pick. 
- */
-void
-init_callbacks(void)
-{
-    /*
-     * probably not needed? Should be full of 0's anyway? 
-     */
-    /*
-     * (poses a problem if you put init_callbacks() inside of
-     * init_snmp() and then want the app to register a callback before
-     * init_snmp() is called in the first place.  -- Wes 
-     */
-    /*
-     * memset(thecallbacks, 0, sizeof(thecallbacks)); 
-     */
-    DEBUGMSGTL(("callback", "initialized\n"));
-}
-
-int
-snmp_register_callback(int major, int minor, SNMPCallback * new_callback,
-                       void *arg)
-{
-    struct snmp_gen_callback *newscp = NULL, *scp = NULL;
-    struct snmp_gen_callback **prevNext = &(thecallbacks[major][minor]);
-
-    if (major >= MAX_CALLBACK_IDS || minor >= MAX_CALLBACK_SUBIDS) {
-        return SNMPERR_GENERR;
-    }
-
-    if ((newscp = SNMP_MALLOC_STRUCT(snmp_gen_callback)) == NULL) {
-        return SNMPERR_GENERR;
-    } else {
-        newscp->sc_client_arg = arg;
-        newscp->sc_callback = new_callback;
-        newscp->next = NULL;
-
-        for (scp = thecallbacks[major][minor]; scp != NULL;
-             scp = scp->next) {
-            prevNext = &(scp->next);
-        }
-
-        *prevNext = newscp;
-
-        DEBUGMSGTL(("callback", "registered (%d,%d) at %p\n", major, minor,
-                    newscp));
-        return SNMPERR_SUCCESS;
-    }
-}
-
-int
-snmp_call_callbacks(int major, int minor, void *caller_arg)
-{
-    struct snmp_gen_callback *scp;
-    unsigned int    count = 0;
-
-    if (major >= MAX_CALLBACK_IDS || minor >= MAX_CALLBACK_SUBIDS) {
-        return SNMPERR_GENERR;
-    }
-
-    DEBUGMSGTL(("callback", "START calling callbacks for maj=%d min=%d\n",
-                major, minor));
-
-    /*
-     * for each registered callback of type major and minor 
-     */
-    for (scp = thecallbacks[major][minor]; scp != NULL; scp = scp->next) {
-
-        DEBUGMSGTL(("callback", "calling a callback for maj=%d min=%d\n",
-                    major, minor));
-
-        /*
-         * call them 
-         */
-        (*(scp->sc_callback)) (major, minor, caller_arg,
-                               scp->sc_client_arg);
-        count++;
-    }
-
-    DEBUGMSGTL(("callback",
-                "END calling callbacks for maj=%d min=%d (%d called)\n",
-                major, minor, count));
-
-    return SNMPERR_SUCCESS;
-}
-
-int
-snmp_count_callbacks(int major, int minor)
-{
-    int             count = 0;
-    struct snmp_gen_callback *scp;
-
-    if (major >= MAX_CALLBACK_IDS || minor >= MAX_CALLBACK_SUBIDS) {
-        return SNMPERR_GENERR;
-    }
-
-    for (scp = thecallbacks[major][minor]; scp != NULL; scp = scp->next) {
-        count++;
-    }
-
-    return count;
-}
-
-int
-snmp_callback_available(int major, int minor)
-{
-    if (major >= MAX_CALLBACK_IDS || minor >= MAX_CALLBACK_SUBIDS) {
-        return SNMPERR_GENERR;
-    }
-
-    if (thecallbacks[major][minor] != NULL) {
-        return SNMPERR_SUCCESS;
-    }
-
-    return SNMPERR_GENERR;
-}
-
-int
-snmp_unregister_callback(int major, int minor, SNMPCallback * target,
-                         void *arg, int matchargs)
-{
-    struct snmp_gen_callback *scp = thecallbacks[major][minor];
-    struct snmp_gen_callback **prevNext = &(thecallbacks[major][minor]);
-    int             count = 0;
-
-    while (scp != NULL) {
-        if ((scp->sc_callback == target) &&
-            (!matchargs || (scp->sc_client_arg == arg))) {
-            DEBUGMSGTL(("callback", "unregistering (%d,%d) at %p\n", major,
-                        minor, scp));
-            *prevNext = scp->next;
-            SNMP_FREE(scp);
-            scp = *prevNext;
-            count++;
-        } else {
-            prevNext = &(scp->next);
-            scp = scp->next;
-        }
-    }
-
-    return count;
-}
-
-struct snmp_gen_callback *
-snmp_callback_list(int major, int minor)
-{
-    return (thecallbacks[major][minor]);
-}