summaryrefslogtreecommitdiff
path: root/include/net-snmp/library/cmu_compat.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/net-snmp/library/cmu_compat.h')
-rw-r--r--include/net-snmp/library/cmu_compat.h292
1 files changed, 292 insertions, 0 deletions
diff --git a/include/net-snmp/library/cmu_compat.h b/include/net-snmp/library/cmu_compat.h
new file mode 100644
index 0000000..5475c6f
--- /dev/null
+++ b/include/net-snmp/library/cmu_compat.h
@@ -0,0 +1,292 @@
+/* Portions of this file are subject to the following copyright(s). See
+ * the Net-SNMP's COPYING file for more details and other copyrights
+ * that may apply:
+ */
+/*
+ * Portions of this file are copyrighted by:
+ * Copyright © 2003 Sun Microsystems, Inc. All rights reserved.
+ * Use is subject to license terms specified in the COPYING file
+ * distributed with the Net-SNMP package.
+ */
+
+/*
+ * CMU compatability definitions and structures.
+ *
+ * (since the UCD package split from the CMU one
+ * about 8 years ago, that's probably enough time
+ * for people to convert any outstanding code!)
+ */
+
+#ifndef NET_SNMP_CMU_COMPAT_H
+#define NET_SNMP_CMU_COMPAT_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * ============================
+ * *
+ * * Enumerations and definitions
+ * *
+ * * ============================
+ */
+#include <net-snmp/definitions.h>
+ /*
+ * From parse.h
+ */
+#define ACCESS_READONLY MIB_ACCESS_READONLY
+#define ACCESS_READWRITE MIB_ACCESS_READWRITE
+#define ACCESS_WRITEONLY MIB_ACCESS_WRITEONLY
+#define ACCESS_NOACCESS MIB_ACCESS_NOACCESS
+#define ACCESS_NOTIFY MIB_ACCESS_NOTIFY
+#define ACCESS_CREATE MIB_ACCESS_CREATE
+#define STATUS_MANDATORY MIB_STATUS_MANDATORY
+#define STATUS_OPTIONAL MIB_STATUS_OPTIONAL
+#define STATUS_OBSOLETE MIB_STATUS_OBSOLETE
+#define STATUS_DEPRECATED MIB_STATUS_DEPRECATED
+#define STATUS_CURRENT MIB_STATUS_CURRENT
+ /*
+ * From smnp_impl.h
+ */
+#define INTEGER ASN_INTEGER
+#define STRING ASN_OCTET_STR
+#define OBJID ASN_OBJECT_ID
+#define NULLOBJ ASN_NULL
+#define BITSTRING ASN_BIT_STR /* HISTORIC - don't use */
+#define IPADDRESS ASN_IPADDRESS
+#define COUNTER ASN_COUNTER
+#define GAUGE ASN_GAUGE
+#define UNSIGNED ASN_UNSIGNED
+#define TIMETICKS ASN_TIMETICKS
+#define ASNT_OPAQUE ASN_OPAQUE
+#define NSAP ASN_NSAP
+#define COUNTER64 ASN_COUNTER64
+#define UINTEGER ASN_UINTEGER
+ /*
+ * From snmp.h
+ */
+#define GET_REQ_MSG SNMP_MSG_GET
+#define GETNEXT_REQ_MSG SNMP_MSG_GETNEXT
+#define GET_RSP_MSG SNMP_MSG_RESPONSE
+#define SET_REQ_MSG SNMP_MSG_SET
+#define TRP_REQ_MSG SNMP_MSG_TRAP
+#define BULK_REQ_MSG SNMP_MSG_GETBULK
+#define INFORM_REQ_MSG SNMP_MSG_INFORM
+#define TRP2_REQ_MSG SNMP_MSG_TRAP2
+#define REPORT_RSP_MSG SNMP_MSG_REPORT
+ /*
+ * since CMU V1.5
+ */
+#define SNMP_PDU_GET SNMP_MSG_GET
+#define SNMP_PDU_GETNEXT SNMP_MSG_GETNEXT
+#define SNMP_PDU_RESPONSE SNMP_MSG_RESPONSE
+#define SNMP_PDU_SET SNMP_MSG_SET
+#define SNMP_PDU_GETBULK SNMP_MSG_GETBULK
+#define SNMP_PDU_INFORM SNMP_MSG_INFORM
+#define SNMP_PDU_V2TRAP SNMP_MSG_TRAP2
+#define SNMP_PDU_REPORT SNMP_MSG_REPORT
+#define SNMP_TRAP_AUTHENTICATIONFAILURE SNMP_TRAP_AUTHFAIL
+#define SMI_INTEGER ASN_INTEGER
+#define SMI_STRING ASN_OCTET_STR
+#define SMI_OBJID ASN_OBJECT_ID
+#define SMI_NULLOBJ ASN_NULL
+#define SMI_IPADDRESS ASN_IPADDRESS
+#define SMI_COUNTER32 ASN_COUNTER
+#define SMI_GAUGE32 ASN_GAUGE
+#define SMI_UNSIGNED32 SMI_GAUGE32
+#define SMI_TIMETICKS ASN_TIMETICKS
+#define SMI_OPAQUE ASN_OPAQUE
+#define SMI_COUNTER64 ASN_COUNTER64
+ /*
+ * ============================
+ * *
+ * * Function declarations
+ * * and global variables
+ * *
+ * * ============================
+ */
+extern int snmp_dump_packet; /* from snmp_api.h */
+extern int quick_print; /* from snmp_api.h */
+
+#include <net-snmp/types.h> /* for snmp_pdu & snmp_session */
+
+int mib_TxtToOid(char *, oid **, size_t *); /* from snmp.h */
+int mib_OidToTxt(oid *, size_t, char *, size_t); /* from snmp.h */
+u_char *cmu_snmp_parse(netsnmp_session * session, netsnmp_pdu *pdu, u_char * data, size_t length); /* from snmp.h */
+
+
+
+
+ /*
+ * ============================
+ * *
+ * * MIB-II data structures
+ * * (from mib.h)
+ * *
+ * * ============================
+ */
+
+
+struct mib_system {
+ char sysDescr[32]; /* textual description */
+ u_char sysObjectID[16]; /* OBJECT IDENTIFIER of system */
+ u_char ObjIDLen; /* length of sysObjectID */
+ u_int sysUpTime; /* Uptime in 100/s of a second */
+};
+
+struct mib_interface {
+ int ifNumber; /* number of interfaces */
+};
+
+struct mib_ifEntry {
+ int ifIndex; /* index of this interface */
+ char ifDescr[32]; /* english description of interface */
+ int ifType; /* network type of device */
+ int ifMtu; /* size of largest packet in bytes */
+ u_int ifSpeed; /* bandwidth in bits/sec */
+ u_char ifPhysAddress[11]; /* interface's address */
+ u_char PhysAddrLen; /* length of physAddr */
+ int ifAdminStatus; /* desired state of interface */
+ int ifOperStatus; /* current operational status */
+ u_int ifLastChange; /* value of sysUpTime when current state entered */
+ u_int ifInOctets; /* number of octets received on interface */
+ u_int ifInUcastPkts; /* number of unicast packets delivered */
+ u_int ifInNUcastPkts; /* number of broadcasts or multicasts */
+ u_int ifInDiscards; /* number of packets discarded with no error */
+ u_int ifInErrors; /* number of packets containing errors */
+ u_int ifInUnknownProtos; /* number of packets with unknown protocol */
+ u_int ifOutOctets; /* number of octets transmitted */
+ u_int ifOutUcastPkts; /* number of unicast packets sent */
+ u_int ifOutNUcastPkts; /* number of broadcast or multicast pkts */
+ u_int ifOutDiscards; /* number of packets discarded with no error */
+ u_int ifOutErrors; /* number of pkts discarded with an error */
+ u_int ifOutQLen; /* number of packets in output queue */
+};
+
+struct mib_atEntry {
+ int atIfIndex; /* interface on which this entry maps */
+ u_char atPhysAddress[11]; /* physical address of destination */
+ u_char PhysAddressLen; /* length of atPhysAddress */
+ u_int atNetAddress; /* IP address of physical address */
+};
+
+struct mib_ip {
+ int ipForwarding; /* 1 if gateway, 2 if host */
+ int ipDefaultTTL; /* default TTL for pkts originating here */
+ u_int ipInReceives; /* no. of IP packets received from interfaces */
+ u_int ipInHdrErrors; /* number of pkts discarded due to header errors */
+ u_int ipInAddrErrors; /* no. of pkts discarded due to bad address */
+ u_int ipForwDatagrams; /* number pf pkts forwarded through this entity */
+ u_int ipInUnknownProtos; /* no. of local-addressed pkts w/unknown proto */
+ u_int ipInDiscards; /* number of error-free packets discarded */
+ u_int ipInDelivers; /* number of datagrams delivered to upper level */
+ u_int ipOutRequests; /* number of IP datagrams originating locally */
+ u_int ipOutDiscards; /* number of error-free output IP pkts discarded */
+ u_int ipOutNoRoutes; /* number of IP pkts discarded due to no route */
+ int ipReasmTimeout; /* seconds fragment is held awaiting reassembly */
+ u_int ipReasmReqds; /* no. of fragments needing reassembly (here) */
+ u_int ipReasmOKs; /* number of fragments reassembled */
+ u_int ipReasmFails; /* number of failures in IP reassembly */
+ u_int ipFragOKs; /* number of datagrams fragmented here */
+ u_int ipFragFails; /* no. pkts unable to be fragmented here */
+ u_int ipFragCreates; /* number of IP fragments created here */
+};
+
+struct mib_ipAddrEntry {
+ u_int ipAdEntAddr; /* IP address of this entry */
+ int ipAdEntIfIndex; /* IF for this entry */
+ u_int ipAdEntNetMask; /* subnet mask of this entry */
+ int ipAdEntBcastAddr; /* read the MIB for this one */
+ int ipAdEntReasmMaxSize;
+ /* max size for dg reassembly {ipAddrEntry 5} */
+};
+
+struct mib_ipRouteEntry {
+ u_int ipRouteDest; /* destination IP addr for this route */
+ int ipRouteIfIndex; /* index of local IF for this route */
+ int ipRouteMetric1; /* Primary routing metric */
+ int ipRouteMetric2; /* Alternate routing metric */
+ int ipRouteMetric3; /* Alternate routing metric */
+ int ipRouteMetric4; /* Alternate routing metric */
+ u_int ipRouteNextHop; /* IP addr of next hop */
+ int ipRouteType; /* Type of this route */
+ int ipRouteProto; /* How this route was learned */
+ int ipRouteAge; /* No. of seconds since updating this route */
+};
+
+struct mib_icmp {
+ u_int icmpInMsgs; /* Total of ICMP msgs received */
+ u_int icmpInErrors; /* Total of ICMP msgs received with errors */
+ u_int icmpInDestUnreachs;
+ u_int icmpInTimeExcds;
+ u_int icmpInParmProbs;
+ u_int icmpInSrcQuenchs;
+ u_int icmpInRedirects;
+ u_int icmpInEchos;
+ u_int icmpInEchoReps;
+ u_int icmpInTimestamps;
+ u_int icmpInTimestampReps;
+ u_int icmpInAddrMasks;
+ u_int icmpInAddrMaskReps;
+ u_int icmpOutMsgs;
+ u_int icmpOutErrors;
+ u_int icmpOutDestUnreachs;
+ u_int icmpOutTimeExcds;
+ u_int icmpOutParmProbs;
+ u_int icmpOutSrcQuenchs;
+ u_int icmpOutRedirects;
+ u_int icmpOutEchos;
+ u_int icmpOutEchoReps;
+ u_int icmpOutTimestamps;
+ u_int icmpOutTimestampReps;
+ u_int icmpOutAddrMasks;
+ u_int icmpOutAddrMaskReps;
+};
+
+struct mib_tcp {
+ int tcpRtoAlgorithm; /* retransmission timeout algorithm */
+ int tcpRtoMin; /* minimum retransmission timeout (mS) */
+ int tcpRtoMax; /* maximum retransmission timeout (mS) */
+ int tcpMaxConn; /* maximum tcp connections possible */
+ u_int tcpActiveOpens; /* number of SYN-SENT -> CLOSED transitions */
+ u_int tcpPassiveOpens; /* number of SYN-RCVD -> LISTEN transitions */
+ u_int tcpAttemptFails; /*(SYN-SENT,SYN-RCVD)->CLOSED or SYN-RCVD->LISTEN */
+ u_int tcpEstabResets; /* (ESTABLISHED,CLOSE-WAIT) -> CLOSED */
+ u_int tcpCurrEstab; /* number in ESTABLISHED or CLOSE-WAIT state */
+ u_int tcpInSegs; /* number of segments received */
+ u_int tcpOutSegs; /* number of segments sent */
+ u_int tcpRetransSegs; /* number of retransmitted segments */
+};
+
+struct mib_tcpConnEntry {
+ int tcpConnState; /* State of this connection */
+ u_int tcpConnLocalAddress; /* local IP address for this connection */
+ int tcpConnLocalPort; /* local port for this connection */
+ u_int tcpConnRemAddress; /* remote IP address for this connection */
+ int tcpConnRemPort; /* remote port for this connection */
+};
+
+struct mib_udp {
+ u_int udpInDatagrams; /* No. of UDP datagrams delivered to users */
+ u_int udpNoPorts; /* No. of UDP datagrams to port with no listener */
+ u_int udpInErrors; /* No. of UDP datagrams unable to be delivered */
+ u_int udpOutDatagrams; /* No. of UDP datagrams sent from this entity */
+};
+
+struct mib_egp {
+ u_int egpInMsgs; /* No. of EGP msgs received without error */
+ u_int egpInErrors; /* No. of EGP msgs received with error */
+ u_int egpOutMsgs; /* No. of EGP msgs sent */
+ u_int egpOutErrors; /* No. of (outgoing) EGP msgs dropped due to error */
+};
+
+struct mib_egpNeighEntry {
+ int egpNeighState; /* local EGP state with this entry's neighbor */
+ u_int egpNeighAddr; /* IP address of this entry's neighbor */
+};
+
+#ifdef __cplusplus
+}
+#endif
+#endif /* NET_SNMP_CMU_COMPAT_H */