int main (int argc, char **argv) { GMainLoop *loop; NMRDisc *rdisc; int ifindex = 1; const char *ifname; NMUtilsIPv6IfaceId iid = { }; GError *error = NULL; nmtst_init_with_logging (&argc, &argv, NULL, "DEFAULT"); if (getuid () != 0) { g_print ("Missing permission: must run as root\n"); return EXIT_FAILURE; } loop = g_main_loop_new (NULL, FALSE); nm_linux_platform_setup (); if (argv[1]) { ifname = argv[1]; ifindex = nm_platform_link_get_ifindex (NM_PLATFORM_GET, ifname); } else { g_print ("Missing command line argument \"interface-name\"\n"); return EXIT_FAILURE; } rdisc = nm_lndp_rdisc_new (NM_PLATFORM_GET, ifindex, ifname, "8ce666e8-d34d-4fb1-b858-f15a7al28086", NM_SETTING_IP6_CONFIG_ADDR_GEN_MODE_EUI64, &error); if (!rdisc) { g_print ("Failed to create NMRDisc instance: %s\n", error->message); g_error_free (error); return EXIT_FAILURE; } iid.id_u8[7] = 1; nm_rdisc_set_iid (rdisc, iid); nm_rdisc_start (rdisc); g_main_loop_run (loop); g_clear_object (&rdisc); return EXIT_SUCCESS; }
int main (int argc, char **argv) { GMainLoop *loop; NMRDisc *rdisc; int ifindex = 1; const char *ifname; nmtst_init_with_logging (&argc, &argv, NULL, "DEFAULT"); if (getuid () != 0) { g_print ("Missing permission: must run as root\n"); return EXIT_FAILURE; } loop = g_main_loop_new (NULL, FALSE); nm_linux_platform_setup (); if (argv[1]) { ifname = argv[1]; ifindex = nm_platform_link_get_ifindex (NM_PLATFORM_GET, ifname); } else { g_print ("Missing command line argument \"interface-name\"\n"); return EXIT_FAILURE; } rdisc = nm_lndp_rdisc_new (ifindex, ifname); if (!rdisc) { g_print ("Failed to create NMRDisc instance\n"); return EXIT_FAILURE; } nm_rdisc_start (rdisc); g_main_loop_run (loop); g_clear_object (&rdisc); return EXIT_SUCCESS; }