519 ++uuid[table_info->indexes->val_len - 1];
520
521 DEBUGMSGTL((MODNAME_STR, "nextpr: received index:\n"));
522 DEBUGMSGVAR((MODNAME_STR, table_info->indexes));
523 DEBUGMSG((MODNAME_STR, "\n"));
524 }
525
526 if ((data = problem_lookup_uuid_next(uuid)) == NULL) {
527 DEBUGMSGTL((MODNAME_STR, "nextpr: next match not found for "
528 "%s; trying next column\n", uuid));
529 if (table_info->colnum >=
530 netsnmp_find_table_registration_info(reginfo)->max_column) {
531 snmp_free_varbind(table_info->indexes);
532 table_info->indexes = NULL;
533 table_info->number_indexes = 0;
534 DEBUGMSGTL((MODNAME_STR, "nextpr: out of columns\n"));
535 return (NULL);
536 }
537 table_info->colnum++;
538 DEBUGMSGTL((MODNAME_STR, "nextpr: search for col %u empty "
539 "uuid\n", table_info->colnum, uuid));
540
541 if ((data = problem_lookup_uuid_next("")) == NULL) {
542 DEBUGMSGTL((MODNAME_STR, "nextpr: next match not found "
543 "for empty uuid; stopping\n"));
544 snmp_free_varbind(table_info->indexes);
545 table_info->indexes = NULL;
546 table_info->number_indexes = 0;
547 return (NULL);
548 }
549 }
550
551 (void) snmp_set_var_typed_value(table_info->indexes, ASN_OCTET_STR,
552 (uchar_t *)data->d_aci_uuid, strlen(data->d_aci_uuid));
553 table_info->number_indexes = 1;
554
555 DEBUGMSGTL((MODNAME_STR, "matching data is %s@%p\n", data->d_aci_uuid,
556 data));
557
558 return (data);
559 }
|
519 ++uuid[table_info->indexes->val_len - 1];
520
521 DEBUGMSGTL((MODNAME_STR, "nextpr: received index:\n"));
522 DEBUGMSGVAR((MODNAME_STR, table_info->indexes));
523 DEBUGMSG((MODNAME_STR, "\n"));
524 }
525
526 if ((data = problem_lookup_uuid_next(uuid)) == NULL) {
527 DEBUGMSGTL((MODNAME_STR, "nextpr: next match not found for "
528 "%s; trying next column\n", uuid));
529 if (table_info->colnum >=
530 netsnmp_find_table_registration_info(reginfo)->max_column) {
531 snmp_free_varbind(table_info->indexes);
532 table_info->indexes = NULL;
533 table_info->number_indexes = 0;
534 DEBUGMSGTL((MODNAME_STR, "nextpr: out of columns\n"));
535 return (NULL);
536 }
537 table_info->colnum++;
538 DEBUGMSGTL((MODNAME_STR, "nextpr: search for col %u empty "
539 "uuid\n", table_info->colnum));
540
541 if ((data = problem_lookup_uuid_next("")) == NULL) {
542 DEBUGMSGTL((MODNAME_STR, "nextpr: next match not found "
543 "for empty uuid; stopping\n"));
544 snmp_free_varbind(table_info->indexes);
545 table_info->indexes = NULL;
546 table_info->number_indexes = 0;
547 return (NULL);
548 }
549 }
550
551 (void) snmp_set_var_typed_value(table_info->indexes, ASN_OCTET_STR,
552 (uchar_t *)data->d_aci_uuid, strlen(data->d_aci_uuid));
553 table_info->number_indexes = 1;
554
555 DEBUGMSGTL((MODNAME_STR, "matching data is %s@%p\n", data->d_aci_uuid,
556 data));
557
558 return (data);
559 }
|