示例#1
0
int
main()
{
    struct ifaddrs *a = NULL, *b;
    getifaddrs2(&a, AF_INET, SIOCGIFCONF, SIOCGIFFLAGS, sizeof(struct ifreq));
    print_ifaddrs(a);
    printf("---\n");
    getifaddrs(&b);
    print_ifaddrs(b);
    return 0;
}
示例#2
0
int
main(int argc, char **argv)
{
    struct ifaddrs *addrs = NULL;
    int ret, optidx = 0;

    setprogname (argv[0]);

    if (getarg (args, sizeof(args) / sizeof(args[0]), argc, argv,
		&optidx))
	usage (1);

    if (help_flag)
	usage (0);

    if (version_flag) {
	fprintf (stderr, "%s from %s-%s\n", getprogname(), PACKAGE, VERSION);
	return 0;
    }

    if (rk_SOCK_INIT())
	errx(1, "Couldn't initialize sockets. Err=%d\n", rk_SOCK_ERRNO);

    ret = getifaddrs(&addrs);
    if (ret != 0)
	err(1, "getifaddrs");

    if (addrs == NULL)
	errx(1, "address == NULL");

    print_ifaddrs(addrs);

    /* Check that freeifaddrs doesn't crash */
    freeifaddrs(addrs);

    rk_SOCK_EXIT();

    return 0;
}