| 460 | #endif |
| 461 | |
| 462 | void |
| 463 | nhops_print(int fibnum, int af) |
| 464 | { |
| 465 | size_t intsize; |
| 466 | int numfibs; |
| 467 | |
| 468 | intsize = sizeof(int); |
| 469 | if (fibnum == -1 && |
| 470 | sysctlbyname("net.my_fibnum", &fibnum, &intsize, NULL, 0) == -1) |
| 471 | fibnum = 0; |
| 472 | if (sysctlbyname("net.fibs", &numfibs, &intsize, NULL, 0) == -1) |
| 473 | numfibs = 1; |
| 474 | if (fibnum < 0 || fibnum > numfibs - 1) |
| 475 | errx(EX_USAGE, "%d: invalid fib", fibnum); |
| 476 | |
| 477 | ifmap = prepare_ifmap(&ifmap_size); |
| 478 | |
| 479 | xo_open_container("route-nhop-information"); |
| 480 | xo_emit("{T:Nexthop data}"); |
| 481 | if (fibnum) |
| 482 | xo_emit(" ({L:fib}: {:fib/%d})", fibnum); |
| 483 | xo_emit("\n"); |
| 484 | print_nhops_sysctl(fibnum, af); |
| 485 | xo_close_container("route-nhop-information"); |
| 486 | } |
| 487 |
no test coverage detected