From: Ondrej Zajicek Date: Wed, 22 Apr 2015 08:53:15 +0000 (+0200) Subject: KRT: Support for RTM_CHANGE on BSD X-Git-Tag: v1.6.0~59 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=90097f4fb924922b416247abf291fb21f39dc8e1;p=thirdparty%2Fbird.git KRT: Support for RTM_CHANGE on BSD --- diff --git a/sysdep/bsd/krt-sock.c b/sysdep/bsd/krt-sock.c index 73f69df5e..aaf3b23ce 100644 --- a/sysdep/bsd/krt-sock.c +++ b/sysdep/bsd/krt-sock.c @@ -336,7 +336,7 @@ krt_read_route(struct ks_msg *msg, struct krt_proto *p, int scan) sockaddr dst, gate, mask; ip_addr idst, igate, imask; void *body = (char *)msg->buf; - int new = (msg->rtm.rtm_type == RTM_ADD); + int new = (msg->rtm.rtm_type != RTM_DELETE); char *errmsg = "KRT: Invalid route received"; int flags = msg->rtm.rtm_flags; int addrs = msg->rtm.rtm_addrs; @@ -732,6 +732,7 @@ krt_read_msg(struct proto *p, struct ks_msg *msg, int scan) if(!scan) return; case RTM_ADD: case RTM_DELETE: + case RTM_CHANGE: krt_read_route(msg, (struct krt_proto *)p, scan); break; case RTM_IFANNOUNCE: