/*							-- DO NOT EDIT --
 * This file has been generated by smidump
 * version 0.3.1 for the scli package.
 *
 * Derived from RFC1213-MIB:
 *
 * $Id: rfc1213-mib.h,v 1.7 2002/03/26 16:26:26 schoenw Exp $
 */

#ifndef _RFC1213_MIB_H_
#define _RFC1213_MIB_H_

#include "g_snmp.h"

/*
 * Tables to map enumerations to strings and vice versa.
 */

#define RFC1213_MIB_IPROUTETYPE_OTHER    1
#define RFC1213_MIB_IPROUTETYPE_INVALID  2
#define RFC1213_MIB_IPROUTETYPE_DIRECT   3
#define RFC1213_MIB_IPROUTETYPE_INDIRECT 4

extern GSnmpEnum const rfc1213_mib_enums_ipRouteType[];

#define RFC1213_MIB_IPROUTEPROTO_OTHER     1
#define RFC1213_MIB_IPROUTEPROTO_LOCAL     2
#define RFC1213_MIB_IPROUTEPROTO_NETMGMT   3
#define RFC1213_MIB_IPROUTEPROTO_ICMP      4
#define RFC1213_MIB_IPROUTEPROTO_EGP       5
#define RFC1213_MIB_IPROUTEPROTO_GGP       6
#define RFC1213_MIB_IPROUTEPROTO_HELLO     7
#define RFC1213_MIB_IPROUTEPROTO_RIP       8
#define RFC1213_MIB_IPROUTEPROTO_IS_IS     9
#define RFC1213_MIB_IPROUTEPROTO_ES_IS     10
#define RFC1213_MIB_IPROUTEPROTO_CISCOIGRP 11
#define RFC1213_MIB_IPROUTEPROTO_BBNSPFIGP 12
#define RFC1213_MIB_IPROUTEPROTO_OSPF      13
#define RFC1213_MIB_IPROUTEPROTO_BGP       14

extern GSnmpEnum const rfc1213_mib_enums_ipRouteProto[];


/*
 * C type definitions for RFC1213-MIB::ipRouteEntry.
 */

#define RFC1213_MIB_IPROUTEDEST    (1 << 0) 
#define RFC1213_MIB_IPROUTEIFINDEX (1 << 1) 
#define RFC1213_MIB_IPROUTEMETRIC1 (1 << 2) 
#define RFC1213_MIB_IPROUTEMETRIC2 (1 << 3) 
#define RFC1213_MIB_IPROUTEMETRIC3 (1 << 4) 
#define RFC1213_MIB_IPROUTEMETRIC4 (1 << 5) 
#define RFC1213_MIB_IPROUTENEXTHOP (1 << 6) 
#define RFC1213_MIB_IPROUTETYPE    (1 << 7) 
#define RFC1213_MIB_IPROUTEPROTO   (1 << 8) 
#define RFC1213_MIB_IPROUTEAGE     (1 << 9) 
#define RFC1213_MIB_IPROUTEMASK    (1 << 10) 
#define RFC1213_MIB_IPROUTEMETRIC5 (1 << 11) 
#define RFC1213_MIB_IPROUTEINFO    (1 << 12) 

typedef struct {
    guchar   ipRouteDest[4];
#define RFC1213_MIB_IPROUTEDESTLENGTH 4
    gint32   *ipRouteIfIndex;
    gint32   *ipRouteMetric1;
    gint32   *ipRouteMetric2;
    gint32   *ipRouteMetric3;
    gint32   *ipRouteMetric4;
    guchar   *ipRouteNextHop;
#define RFC1213_MIB_IPROUTENEXTHOPLENGTH 4
    gint32   *ipRouteType;
    gint32   *ipRouteProto;
    gint32   *ipRouteAge;
    guchar   *ipRouteMask;
#define RFC1213_MIB_IPROUTEMASKLENGTH 4
    gint32   *ipRouteMetric5;
    guint32  *ipRouteInfo;
#define RFC1213_MIB_IPROUTEINFOMINLENGTH 0
#define RFC1213_MIB_IPROUTEINFOMAXLENGTH 128
    guint16  _ipRouteInfoLength;
} rfc1213_mib_ipRouteEntry_t;

extern void
rfc1213_mib_get_ipRouteTable(GSnmpSession *s, rfc1213_mib_ipRouteEntry_t ***ipRouteEntry, gint mask);

extern void
rfc1213_mib_free_ipRouteTable(rfc1213_mib_ipRouteEntry_t **ipRouteEntry);

extern rfc1213_mib_ipRouteEntry_t *
rfc1213_mib_new_ipRouteEntry(void);

extern void
rfc1213_mib_get_ipRouteEntry(GSnmpSession *s, rfc1213_mib_ipRouteEntry_t **ipRouteEntry, guchar *ipRouteDest, gint mask);

extern void
rfc1213_mib_set_ipRouteEntry(GSnmpSession *s, rfc1213_mib_ipRouteEntry_t *ipRouteEntry, gint mask);

extern void
rfc1213_mib_free_ipRouteEntry(rfc1213_mib_ipRouteEntry_t *ipRouteEntry);


#endif /* _RFC1213_MIB_H_ */
