Lines Matching defs:kr_state
51 } kr_state;
117 if ((kr_state.fd = socket(AF_ROUTE,
124 if (setsockopt(kr_state.fd, SOL_SOCKET, SO_USELOOPBACK,
130 if (getsockopt(kr_state.fd, SOL_SOCKET, SO_RCVBUF,
136 setsockopt(kr_state.fd, SOL_SOCKET, SO_RCVBUF,
141 kr_state.pid = getpid();
142 kr_state.rtseq = 1;
143 kr_state.fib_prio = fib_prio;
153 kr_state.fib_sync = fs; /* now set correct sync mode */
154 kr_state.rdomain = rdomain;
156 event_set(&kr_state.ev, kr_state.fd, EV_READ | EV_PERSIST,
158 event_add(&kr_state.ev, NULL);
171 if (send_rtmsg(kr_state.fd, action, kroute) == -1)
182 kr->r.priority = kr_state.fib_prio;
201 kr_state.fib_prio);
214 kr_state.fib_prio);
218 if (kr->r.priority != kr_state.fib_prio)
223 if (send_rtmsg(kr_state.fd, RTM_DELETE, kroute) == -1)
246 if (kr_state.fib_sync == 1) /* already coupled */
249 kr_state.fib_sync = 1;
252 if (kr->r.priority == kr_state.fib_prio)
253 send_rtmsg(kr_state.fd, RTM_ADD, &kr->r);
263 if (kr_state.fib_sync == 0) /* already decoupled */
267 if (kr->r.priority == kr_state.fib_prio)
268 send_rtmsg(kr_state.fd, RTM_DELETE, &kr->r);
270 kr_state.fib_sync = 0;
730 if (kr_state.fib_sync == 0)
737 hdr.rtm_priority = kr_state.fib_prio;
738 hdr.rtm_tableid = kr_state.rdomain;
741 hdr.rtm_seq = kr_state.rtseq++; /* overflow doesn't matter */
825 mib[6] = kr_state.rdomain; /* rtableid */
928 if (rtm->rtm_priority == kr_state.fib_prio) {
929 send_rtmsg(kr_state.fd, RTM_DELETE, &kr->r);
1037 if ((n = read(kr_state.fd, &buf, sizeof(buf))) == -1) {
1069 if (rtm->rtm_tableid != kr_state.rdomain)
1072 if (rtm->rtm_pid == kr_state.pid) /* cause by us */