summaryrefslogtreecommitdiff
path: root/agent/helpers/all_helpers.c
diff options
context:
space:
mode:
Diffstat (limited to 'agent/helpers/all_helpers.c')
-rw-r--r--agent/helpers/all_helpers.c58
1 files changed, 58 insertions, 0 deletions
diff --git a/agent/helpers/all_helpers.c b/agent/helpers/all_helpers.c
new file mode 100644
index 0000000..e1e1b78
--- /dev/null
+++ b/agent/helpers/all_helpers.c
@@ -0,0 +1,58 @@
+/** @name handler
+ * @{ */
+
+#include <net-snmp/net-snmp-config.h>
+#include <net-snmp/net-snmp-features.h>
+#include <net-snmp/net-snmp-includes.h>
+#include <net-snmp/agent/net-snmp-agent-includes.h>
+
+#include <net-snmp/agent/debug_handler.h>
+#include <net-snmp/agent/serialize.h>
+#include <net-snmp/agent/read_only.h>
+#include <net-snmp/agent/bulk_to_next.h>
+#include <net-snmp/agent/table_dataset.h>
+#include <net-snmp/agent/stash_cache.h>
+
+netsnmp_feature_child_of(mib_helpers, libnetsnmpagent)
+
+
+/** call the initialization sequence for all handlers with init_ routines. */
+void
+netsnmp_init_helpers(void)
+{
+ netsnmp_init_debug_helper();
+ netsnmp_init_serialize();
+ netsnmp_init_read_only_helper();
+ netsnmp_init_bulk_to_next_helper();
+#ifndef NETSNMP_FEATURE_REMOVE_TABLE_DATASET
+ netsnmp_init_table_dataset();
+#endif /* NETSNMP_FEATURE_REMOVE_TABLE_DATASET */
+
+#ifndef NETSNMP_FEATURE_REMOVE_ROW_MERGE
+ netsnmp_init_row_merge();
+#endif /* NETSNMP_FEATURE_REMOVE_ROW_MERGE */
+#ifndef NETSNMP_FEATURE_REMOVE_STASH_CACHE
+ netsnmp_init_stash_cache_helper();
+#endif /* NETSNMP_FEATURE_REMOVE_STASH_CACHE */
+}
+
+/** @defgroup utilities utility_handlers
+ * Simplify request processing
+ * A group of handlers intended to simplify certain aspects of processing
+ * a request for a MIB object. These helpers do not implement any MIB
+ * objects themselves. Rather they handle specific generic situations,
+ * either returning an error, or passing a (possibly simpler) request
+ * down to lower level handlers.
+ * @ingroup handler
+ */
+
+/** @defgroup leaf leaf_handlers
+ * Process individual leaf objects
+ * A group of handlers to implement individual leaf objects and instances
+ * (both scalar objects, and individual objects and instances within a table).
+ * These handlers will typically allow control to be passed down to a lower
+ * level, user-provided handler, but this is (usually) optional.
+ * @ingroup handler
+ */
+
+/** @} */