1#include "ipf.h"
2
3#include <fcntl.h>
4#include <sys/ioctl.h>
5
6char *kvatoname(func, iocfunc)
7ipfunc_t func;
8ioctlfunc_t iocfunc;
9{
10	static char funcname[40];
11	ipfunc_resolve_t res;
12	int fd;
13
14	res.ipfu_addr = func;
15	res.ipfu_name[0] = '\0';
16	fd = -1;
17
18	if ((opts & OPT_DONOTHING) == 0) {
19		fd = open(IPL_NAME, O_RDONLY);
20		if (fd == -1)
21			return NULL;
22	}
23	(void) (*iocfunc)(fd, SIOCFUNCL, &res);
24	if (fd >= 0)
25		close(fd);
26	strncpy(funcname, res.ipfu_name, sizeof(funcname));
27	funcname[sizeof(funcname) - 1] = '\0';
28	return funcname;
29}
30