1 /*	$OpenBSD: ifnitest.c,v 1.3 2017/02/25 07:28:32 jsg Exp $ */
2 
3 /* Public domain. 2015, Claudio Jeker */
4 
5 #include <sys/types.h>
6 #include <sys/socket.h>
7 #include <net/if.h>
8 #include <err.h>
9 #include <stdio.h>
10 #include <string.h>
11 
12 int
13 main(int argc, char *argv[])
14 {
15 	char name[IF_NAMESIZE], *ifname;
16 	unsigned int lo0index;
17 
18 	lo0index = if_nametoindex("lo0");
19 	if (lo0index == 0)
20 		err(1, "if_nametoindex(lo0)");
21 	ifname = if_indextoname(lo0index, name);
22 	if (ifname == NULL || strcmp("lo0", ifname) != 0)
23 		err(1, "if_indextoname(%u)", lo0index);
24 
25 	/* test failures */
26 	if (if_nametoindex("4kingbula") != 0)
27 		err(1, "if_nametoindex(4kingbula)");
28 	if (if_indextoname(65536, name) != NULL)
29 		err(1, "if_indextoname(%u)", 65536);
30 
31 	return 0;
32 }
33