On 08/06/22(Wed) 16:13, Claudio Jeker wrote:
> Notice while hacking in OpenBGPD. Unlike routing socket messages the
> messages from the sysctl interface have RTF_DONE not set.
> I think it would make sense to set RTF_DONE also in this case since it
> makes reusing code easier.
> 
> All messages sent out via sysctl_dumpentry() have been processed by the
> kernel so setting RTF_DONE kind of makes sense.

I agree, ok mpi@

> -- 
> :wq Claudio
> 
> Index: rtsock.c
> ===================================================================
> RCS file: /cvs/src/sys/net/rtsock.c,v
> retrieving revision 1.328
> diff -u -p -r1.328 rtsock.c
> --- rtsock.c  6 Jun 2022 14:45:41 -0000       1.328
> +++ rtsock.c  8 Jun 2022 14:10:20 -0000
> @@ -1987,7 +1987,7 @@ sysctl_dumpentry(struct rtentry *rt, voi
>               struct rt_msghdr *rtm = (struct rt_msghdr *)w->w_tmem;
>  
>               rtm->rtm_pid = curproc->p_p->ps_pid;
> -             rtm->rtm_flags = rt->rt_flags;
> +             rtm->rtm_flags = RTF_DONE | rt->rt_flags;
>               rtm->rtm_priority = rt->rt_priority & RTP_MASK;
>               rtm_getmetrics(&rt->rt_rmx, &rtm->rtm_rmx);
>               /* Do not account the routing table's reference. */
> 

Reply via email to