12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- /* if_nameindex.c: test the if_nameindex() function
- *
- * Copyright (C) 2006 Erik Andersen <andersen@uclibc.org>
- *
- * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
- */
- #include <stdio.h>
- #include <stdlib.h>
- #include <net/if.h>
- static char ifname[IF_NAMESIZE];
- static void test_if_nameindex(void)
- {
- size_t i;
- struct if_nameindex *ret;
- ret = if_nameindex();
- if (ret == NULL) {
- perror("if_nameindex()");
- exit(1);
- }
- printf("--- if_nameindex()\n");
- for (i=0; ret[i].if_name; ++i)
- printf("%i: %s\n", ret[i].if_index, ret[i].if_name);
- if_freenameindex(ret);
- }
- static void test_if_indextoname(void)
- {
- if (if_indextoname(1, ifname) == NULL) {
- perror("if_nameindex()");
- exit(1);
- }
- printf("if_indextoname(1) = %s\n", ifname);
- }
- static void test_if_nametoindex(void)
- {
- int ifindex = if_nametoindex(ifname);
- if (ifindex == 0) {
- perror("if_nametoindex()");
- exit(1);
- }
- printf("if_nametoindex(%s) = %i\n", ifname, ifindex);
- }
- int main(void)
- {
- test_if_nameindex();
- test_if_indextoname();
- test_if_nametoindex();
- return 0;
- }
|