--- sys/netinet/in_mcast.c.orig 2009-09-30 16:43:35.000000000 +0000 +++ sys/netinet/in_mcast.c 2009-09-30 17:04:59.000000000 +0000 @@ -2010,5 +2010,5 @@ * is atomic with allocation of a membership. */ - error = EINVAL; + error = EADDRINUSE; goto out_inp_locked; } --- sys/netinet/in.c.orig 2009-09-15 19:18:34.000000000 +0000 +++ sys/netinet/in.c 2009-09-29 19:16:22.000000000 +0000 @@ -1012,5 +1012,5 @@ rt_newaddrmsg(RTM_ADD, (struct ifaddr *)target, - 0, &msg_rt); + 0, &msg_rt, -1); RTFREE(pfx_ro.ro_rt); } @@ -1073,5 +1073,5 @@ rt_newaddrmsg(RTM_DELETE, (struct ifaddr *)target, - 0, &rt); + 0, &rt, -1); return (0); }