5 #include <nsdp/protocol.h>
11 static const struct timespec default_timeout = {.tv_sec = 4, .tv_nsec = 0};
14 struct ngadmin* ngadmin_init (const char *iface)
19 /* allocate main structure */
20 nga = malloc(sizeof(struct ngadmin));
21 memset(nga, 0, sizeof(struct ngadmin));
22 nga->globalbroad = true;
24 strncpy(nga->iface, iface, IFNAMSIZ - 1);
26 if (startNetwork(nga) < 0) {
31 nga->timeout = default_timeout;
38 int ngadmin_close (struct ngadmin *nga)
51 int ngadmin_forceInterface (struct ngadmin *nga)
56 return forceInterface(nga) == 0 ? ERR_OK : ERR_NET;
60 int ngadmin_setKeepBroadcasting (struct ngadmin *nga, bool value)
65 nga->keepbroad = value;
71 int ngadmin_useGlobalBroadcast (struct ngadmin *nga, bool value)
76 if (setBroadcastType(nga, value) == 0)
83 int ngadmin_setPassword (struct ngadmin *nga, const char *pass)
88 strncpy(nga->password, pass, PASSWORD_MAX);
94 int ngadmin_setTimeout (struct ngadmin *nga, const struct timeval *tv)
99 if (nga == NULL || tv == NULL)
102 nga->timeout.tv_sec = tv->tv_sec;
103 nga->timeout.tv_nsec = tv->tv_usec * 1000;