summaryrefslogtreecommitdiffstats
path: root/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_snmp.h
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/bsnmpd/modules/snmp_hostres/hostres_snmp.h')
-rw-r--r--usr.sbin/bsnmpd/modules/snmp_hostres/hostres_snmp.h324
1 files changed, 0 insertions, 324 deletions
diff --git a/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_snmp.h b/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_snmp.h
deleted file mode 100644
index 567368a..0000000
--- a/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_snmp.h
+++ /dev/null
@@ -1,324 +0,0 @@
-/*
- * Copyright (c) 2005-2006 The FreeBSD Project
- * All rights reserved.
- *
- * Author: Victor Cruceru <soc-victor@freebsd.org>
- *
- * Redistribution of this software and documentation and use in source and
- * binary forms, with or without modification, are permitted provided that
- * the following conditions are met:
- *
- * 1. Redistributions of source code or documentation must retain the above
- * copyright notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * Host Resources MIB for SNMPd.
- *
- * $FreeBSD$
- */
-
-#ifndef HOSTRES_SNMP_H_1132245017
-#define HOSTRES_SNMP_H_1132245017
-
-#include <sys/types.h>
-#include <sys/queue.h>
-
-#include <stdio.h>
-#include <fcntl.h>
-#include <kvm.h>
-#include <devinfo.h>
-
-#include <bsnmp/asn1.h>
-#include <bsnmp/snmp.h>
-
-#include <bsnmp/snmpmod.h>
-
-/*
- * Default package directory for hrSWInstalledTable. Can be overridden
- * via SNMP or configuration file.
- */
-#define PATH_PKGDIR "/var/db/pkg"
-
-/*
- * These are the default maximum caching intervals for the various tables
- * in seconds. They can be overridden from the configuration file.
- */
-#define HR_STORAGE_TBL_REFRESH 7
-#define HR_FS_TBL_REFRESH 7
-#define HR_DISK_TBL_REFRESH 7
-#define HR_NETWORK_TBL_REFRESH 7
-#define HR_SWINS_TBL_REFRESH 120
-#define HR_SWRUN_TBL_REFRESH 3
-
-struct tm;
-struct statfs;
-
-/* a debug macro */
-#ifndef NDEBUG
-
-#define HRDBG(...) do { \
- fprintf(stderr, "HRDEBUG: %s: ", __func__); \
- fprintf(stderr, __VA_ARGS__); \
- fprintf(stderr, "\n"); \
- } while (0)
-
-#else
-
-#define HRDBG(...) do { } while (0)
-
-#endif /*NDEBUG*/
-
-/* path to devd(8) output pipe */
-#define PATH_DEVD_PIPE "/var/run/devd.pipe"
-
-#define IS_KERNPROC(kp) (((kp)->ki_flag & P_KTHREAD) == P_KTHREAD)
-
-enum snmpTCTruthValue {
- SNMP_TRUE = 1,
- SNMP_FALSE= 2
-};
-
-/* The number of CPU load samples per one minute, per each CPU */
-#define MAX_CPU_SAMPLES 4
-
-
-/*
- * max len (including '\0'), for device_entry::descr field below,
- * according to MIB
- */
-#define DEV_DESCR_MLEN (64 + 1)
-
-/*
- * max len (including '\0'), for device_entry::name and
- * device_map_entry::name_key fields below, according to MIB
- */
-#define DEV_NAME_MLEN (32 + 1)
-
-/*
- * max len (including '\0'), for device_entry::location and
- * device_map_entry::location_key fields below, according to MIB
- */
-#define DEV_LOC_MLEN (128 + 1)
-
-/*
- * This structure is used to hold a SNMP table entry
- * for HOST-RESOURCES-MIB's hrDeviceTable
- */
-struct device_entry {
- int32_t index;
- const struct asn_oid *type;
- u_char *descr;
- const struct asn_oid *id; /* only oid_zeroDotZero as (*id) value*/
- int32_t status; /* enum DeviceStatus */
- uint32_t errors;
-
-#define HR_DEVICE_FOUND 0x001
- /* not dectected by libdevice, so don't try to refresh it*/
-#define HR_DEVICE_IMMUTABLE 0x002
-
- /* next 3 are not from the SNMP mib table, only to be used internally */
- uint32_t flags;
-
- u_char *name;
- u_char *location;
- TAILQ_ENTRY(device_entry) link;
-};
-
-/*
- * Next structure is used to keep o list of mappings from a specific
- * name (a_name) to an entry in the hrFSTblEntry;
- * We are trying to keep the same index for a specific name at least
- * for the duration of one SNMP agent run.
- */
-struct device_map_entry {
- int32_t hrIndex; /* used for hrDeviceTblEntry::index */
-
- /* map key is the pair (name_key, location_key) */
- u_char *name_key; /* copy of device name */
- u_char *location_key;
-
- /*
- * Next may be NULL if the respective hrDeviceTblEntry
- * is (temporally) gone.
- */
- struct device_entry *entry_p;
- STAILQ_ENTRY(device_map_entry) link;
-};
-STAILQ_HEAD(device_map, device_map_entry);
-
-/* descriptor to access kernel memory */
-extern kvm_t *hr_kd;
-
-/* Table used for consistent device table indexing. */
-extern struct device_map device_map;
-
-/* Maximum number of ticks between two updates for hrStorageTable */
-extern uint32_t storage_tbl_refresh;
-
-/* Maximum number of ticks between updated of FS table */
-extern uint32_t fs_tbl_refresh;
-
-/* maximum number of ticks between updates of SWRun and SWRunPerf table */
-extern uint32_t swrun_tbl_refresh;
-
-/* Maximum number of ticks between device table refreshs. */
-extern uint32_t device_tbl_refresh;
-
-/* maximum number of ticks between refreshs */
-extern uint32_t disk_storage_tbl_refresh;
-
-/* maximum number of ticks between updates of network table */
-extern uint32_t swins_tbl_refresh;
-
-/* maximum number of ticks between updates of network table */
-extern uint32_t network_tbl_refresh;
-
-/* package directory */
-extern u_char *pkg_dir;
-
-/* Initialize and populate storage table */
-void init_storage_tbl(void);
-
-/* Finalization routine for hrStorageTable. */
-void fini_storage_tbl(void);
-
-/* Refresh routine for hrStorageTable. */
-void refresh_storage_tbl(int);
-
-/*
- * Get the type of filesystem referenced in a struct statfs * -
- * used by FSTbl and StorageTbl functions.
- */
-const struct asn_oid *fs_get_type(const struct statfs *);
-
-/*
- * Because hrFSTable depends to hrStorageTable we are
- * refreshing hrFSTable by refreshing hrStorageTable.
- * When one entry "of type" fs from hrStorageTable is refreshed
- * then the corresponding entry from hrFSTable is refreshed
- * FS_tbl_pre_refresh_v() is called before refeshing fs part of hrStorageTable
- */
-void fs_tbl_pre_refresh(void);
-void fs_tbl_process_statfs_entry(const struct statfs *, int32_t);
-
-/* Called after refreshing fs part of hrStorageTable */
-void fs_tbl_post_refresh(void);
-
-/* Refresh the FS table if neccessary. */
-void refresh_fs_tbl(void);
-
-/* Finalization routine for hrFSTable. */
-void fini_fs_tbl(void);
-
-/* Init the things for both of hrSWRunTable and hrSWRunPerfTable */
-void init_swrun_tbl(void);
-
-/* Finalization routine for both of hrSWRunTable and hrSWRunPerfTable */
-void fini_swrun_tbl(void);
-
-/* Init and populate hrDeviceTable */
-void init_device_tbl(void);
-
-/* start devd monitoring */
-void start_device_tbl(struct lmodule *);
-
-/* Finalization routine for hrDeviceTable */
-void fini_device_tbl(void);
-
-/* Refresh routine for hrDeviceTable. */
-void refresh_device_tbl(int);
-
-/* Find an item in hrDeviceTbl by its entry->index. */
-struct device_entry *device_find_by_index(int32_t);
-
-/* Find an item in hrDeviceTbl by name. */
-struct device_entry *device_find_by_name(const char *);
-
-/* Create a new entry out of thin air. */
-struct device_entry *device_entry_create(const char *, const char *,
- const char *);
-
-/* Delete an entry from hrDeviceTbl */
-void device_entry_delete(struct device_entry *entry);
-
-/* Init the things for hrProcessorTable. */
-void init_processor_tbl(void);
-
-/* Finalization routine for hrProcessorTable. */
-void fini_processor_tbl(void);
-
-/* Start the processor table CPU load collector. */
-void start_processor_tbl(struct lmodule *);
-
-/* Init the things for hrDiskStorageTable */
-int init_disk_storage_tbl(void);
-
-/* Finalization routine for hrDiskStorageTable. */
-void fini_disk_storage_tbl(void);
-
-/* Refresh routine for hrDiskStorageTable. */
-void refresh_disk_storage_tbl(int);
-
-/* Finalization routine for hrPartitionTable. */
-void fini_partition_tbl(void);
-
-/* Finalization routine for hrNetworkTable. */
-void fini_network_tbl(void);
-
-/* populate network table */
-void start_network_tbl(void);
-
-/* initialize installed software table */
-void init_swins_tbl(void);
-
-/* finalize installed software table */
-void fini_swins_tbl(void);
-
-/* refresh the hrSWInstalledTable if necessary */
-void refresh_swins_tbl(void);
-
-/* Init the things for hrPrinterTable */
-void init_printer_tbl(void);
-
-/* Finalization routine for hrPrinterTable. */
-void fini_printer_tbl(void);
-
-/* Refresh printer table */
-void refresh_printer_tbl(void);
-
-/* get boot command line */
-int OS_getSystemInitialLoadParameters(u_char **);
-
-/* Start refreshing the partition table */
-void partition_tbl_post_refresh(void);
-
-/* Handle refresh for the given disk */
-void partition_tbl_handle_disk(int32_t, const char *);
-
-/* Finish refreshing the partition table. */
-void partition_tbl_pre_refresh(void);
-
-/* Set the FS index in a partition table entry */
-void handle_partition_fs_index(const char *, int32_t);
-
-/* Make an SNMP DateAndTime from a struct tm. */
-int make_date_time(u_char *, const struct tm *, u_int);
-
-/* Free all static data */
-void fini_scalars(void);
-
-#endif /* HOSTRES_SNMP_H_1132245017 */
OpenPOWER on IntegriCloud