⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ipcidrroutetable.c

📁 snmp的源代码,已经在我的ubuntu下编译通过
💻 C
📖 第 1 页 / 共 4 页
字号:
               set, start dealing with it here, else continue */        }        /** extracts the information about the table from the request */        table_info = netsnmp_extract_table_info(request);        /** table_info->colnum contains the column number requested */        /** table_info->indexes contains a linked list of snmp variable           bindings for the indexes of the table.  Values in the list           have been set corresponding to the indexes of the           request */        if (table_info == NULL) {            continue;        }        switch (reqinfo->mode) {        case MODE_GET:            switch (table_info->colnum) {            case COLUMN_IPCIDRROUTEDEST:                {                    u_long         *retval;                    size_t          retval_len = 0;                    retval =                        get_ipCidrRouteDest(data_context, &retval_len);                    snmp_set_var_typed_value(var, ASN_IPADDRESS,                                             (const u_char *) retval,                                             retval_len);                }                break;            case COLUMN_IPCIDRROUTEMASK:                {                    u_long         *retval;                    size_t          retval_len = 0;                    retval =                        get_ipCidrRouteMask(data_context, &retval_len);                    snmp_set_var_typed_value(var, ASN_IPADDRESS,                                             (const u_char *) retval,                                             retval_len);                }                break;            case COLUMN_IPCIDRROUTETOS:                {                    long           *retval;                    size_t          retval_len = 0;                    retval = get_ipCidrRouteTos(data_context, &retval_len);                    snmp_set_var_typed_value(var, ASN_INTEGER,                                             (const u_char *) retval,                                             retval_len);                }                break;            case COLUMN_IPCIDRROUTENEXTHOP:                {                    u_long         *retval;                    size_t          retval_len = 0;                    retval =                        get_ipCidrRouteNextHop(data_context, &retval_len);                    snmp_set_var_typed_value(var, ASN_IPADDRESS,                                             (const u_char *) retval,                                             retval_len);                }                break;            case COLUMN_IPCIDRROUTEIFINDEX:                {                    long           *retval;                    size_t          retval_len = 0;                    retval =                        get_ipCidrRouteIfIndex(data_context, &retval_len);                    snmp_set_var_typed_value(var, ASN_INTEGER,                                             (const u_char *) retval,                                             retval_len);                }                break;            case COLUMN_IPCIDRROUTETYPE:                {                    long           *retval;                    size_t          retval_len = 0;                    retval =                        get_ipCidrRouteType(data_context, &retval_len);                    snmp_set_var_typed_value(var, ASN_INTEGER,                                             (const u_char *) retval,                                             retval_len);                }                break;            case COLUMN_IPCIDRROUTEPROTO:                {                    long           *retval;                    size_t          retval_len = 0;                    retval =                        get_ipCidrRouteProto(data_context, &retval_len);                    snmp_set_var_typed_value(var, ASN_INTEGER,                                             (const u_char *) retval,                                             retval_len);                }                break;            case COLUMN_IPCIDRROUTEAGE:                {                    long           *retval;                    size_t          retval_len = 0;                    retval = get_ipCidrRouteAge(data_context, &retval_len);                    snmp_set_var_typed_value(var, ASN_INTEGER,                                             (const u_char *) retval,                                             retval_len);                }                break;            case COLUMN_IPCIDRROUTEINFO:                {                    oid            *retval;                    size_t          retval_len = 0;                    retval =                        get_ipCidrRouteInfo(data_context, &retval_len);                    snmp_set_var_typed_value(var, ASN_OBJECT_ID,                                             (const u_char *) retval,                                             retval_len);                }                break;            case COLUMN_IPCIDRROUTENEXTHOPAS:                {                    long           *retval;                    size_t          retval_len = 0;                    retval =                        get_ipCidrRouteNextHopAS(data_context,                                                 &retval_len);                    snmp_set_var_typed_value(var, ASN_INTEGER,                                             (const u_char *) retval,                                             retval_len);                }                break;            case COLUMN_IPCIDRROUTEMETRIC1:                {                    long           *retval;                    size_t          retval_len = 0;                    retval =                        get_ipCidrRouteMetric1(data_context, &retval_len);                    snmp_set_var_typed_value(var, ASN_INTEGER,                                             (const u_char *) retval,                                             retval_len);                }                break;            case COLUMN_IPCIDRROUTEMETRIC2:                {                    long           *retval;                    size_t          retval_len = 0;                    retval =                        get_ipCidrRouteMetric2(data_context, &retval_len);                    snmp_set_var_typed_value(var, ASN_INTEGER,                                             (const u_char *) retval,                                             retval_len);                }                break;            case COLUMN_IPCIDRROUTEMETRIC3:                {                    long           *retval;                    size_t          retval_len = 0;                    retval =                        get_ipCidrRouteMetric3(data_context, &retval_len);                    snmp_set_var_typed_value(var, ASN_INTEGER,                                             (const u_char *) retval,                                             retval_len);                }                break;            case COLUMN_IPCIDRROUTEMETRIC4:                {                    long           *retval;                    size_t          retval_len = 0;                    retval =                        get_ipCidrRouteMetric4(data_context, &retval_len);                    snmp_set_var_typed_value(var, ASN_INTEGER,                                             (const u_char *) retval,                                             retval_len);                }                break;            case COLUMN_IPCIDRROUTEMETRIC5:                {                    long           *retval;                    size_t          retval_len = 0;                    retval =                        get_ipCidrRouteMetric5(data_context, &retval_len);                    snmp_set_var_typed_value(var, ASN_INTEGER,                                             (const u_char *) retval,                                             retval_len);                }                break;            case COLUMN_IPCIDRROUTESTATUS:                {                    long           *retval;                    size_t          retval_len = 0;                    retval =                        get_ipCidrRouteStatus(data_context, &retval_len);                    snmp_set_var_typed_value(var, ASN_INTEGER,                                             (const u_char *) retval,                                             retval_len);                }                break;            default:                        /** We shouldn't get here */                snmp_log(LOG_ERR,                         "problem encountered in ipCidrRouteTable_handler: unknown column\n");            }            break;        case MODE_SET_RESERVE1:                /** mib2cXXX: clear out old undo info if we have any.  Remove if                   table_iterator becomes un-serialized */            netsnmp_oid_stash_free(&undoStorage, free_undoInfo);            switch (table_info->colnum) {            case COLUMN_IPCIDRROUTEIFINDEX:                {                    int             ret =                        check_ipCidrRouteIfIndex(request->requestvb->type,                                                 (long *) request->                                                 requestvb->val.string,                                                 request->requestvb->                                                 val_len);                    if (ret != 0) {                        netsnmp_set_request_error(reqinfo, requests, ret);                    }                }                break;            case COLUMN_IPCIDRROUTETYPE:                {                    int             ret =                        check_ipCidrRouteType(request->requestvb->type,                                              (long *) request->requestvb->                                              val.string,                                              request->requestvb->val_len);                    if (ret != 0) {                        netsnmp_set_request_error(reqinfo, requests, ret);                    }                }                break;            case COLUMN_IPCIDRROUTEINFO:                {                    int             ret =                        check_ipCidrRouteInfo(request->requestvb->type,                                              (oid *) request->requestvb->                                              val.string,                                              request->requestvb->val_len);                    if (ret != 0) {                        netsnmp_set_request_error(reqinfo, requests, ret);                    }                }                break;            case COLUMN_IPCIDRROUTENEXTHOPAS:                {                    int             ret =                        check_ipCidrRouteNextHopAS(request->requestvb->                                                   type,                                                   (long *) request->                                                   requestvb->val.string,                                                   request->requestvb->                                                   val_len);                    if (ret != 0) {                        netsnmp_set_request_error(reqinfo, requests, ret);                    }                }                break;            case COLUMN_IPCIDRROUTEMETRIC1:                {                    int             ret =                        check_ipCidrRouteMetric1(request->requestvb->type,                                                 (long *) request->                                                 requestvb->val.string,                                                 request->requestvb->                                                 val_len);                    if (ret != 0) {                        netsnmp_set_request_error(reqinfo, requests, ret);                    }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -