&rtadv->ra_timer);
break;
case RTADV_STOP:
- if (rtadv->ra_timer) {
- thread_cancel(rtadv->ra_timer);
- rtadv->ra_timer = NULL;
- }
- if (rtadv->ra_read) {
- thread_cancel(rtadv->ra_read);
- rtadv->ra_read = NULL;
- }
+ THREAD_OFF(rtadv->ra_timer);
+ THREAD_OFF(rtadv->ra_read);
break;
case RTADV_TIMER:
thread_add_timer(zrouter.master, rtadv_timer, zvrf, val,
if (vrf_is_backend_netns()) {
zvrf->rtadv.sock = rtadv_make_socket(zvrf->zns->ns_id);
zrouter.rtadv_sock = -1;
- } else if (!zrouter.rtadv_sock) {
+ } else {
zvrf->rtadv.sock = -1;
- if (!zrouter.rtadv_sock)
- zrouter.rtadv_sock = rtadv_make_socket(zvrf->zns->ns_id);
+ if (zrouter.rtadv_sock < 0)
+ zrouter.rtadv_sock =
+ rtadv_make_socket(zvrf->zns->ns_id);
}
}