tech-net archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: possible bug in in_l2tp_match
Hi,
On 2017/12/09 1:33, Maxime Villard wrote:
> I don't think in_l2tp_match() is really correct [1]. Here the mbuf given
> as argument is pulled up, but the new pointer is not passed back (detected
> as memory leak by Mootja). And it doesn't look like this kind of functions
> is supposed to free the mbuf on error either. Same in in6_l2tp_match().
>
> Please enlighten the code with a comment or two if I'm mistaken.
>
> Maxime
>
> [1] https://nxr.netbsd.org/xref/src/sys/netinet/in_l2tp.c?r=1.4#363
You are right. The in{,6}_l2tp_match() should not call m_pullup() as
the match functions just check the packet. In contrast, in{,6}_l2tp_input()
which are the receive packet processing path must call m_pullup().
I fixed them in in_l2tp.c:r1.5 and in6_l2tp.c:r1.8.
Thank you for your pointing out.
Thanks,
--
//////////////////////////////////////////////////////////////////////
Internet Initiative Japan Inc.
Device Engineering Section,
IoT Platform Development Department,
Network Division,
Technology Unit
Kengo NAKAHARA <k-nakahara%iij.ad.jp@localhost>
Home |
Main Index |
Thread Index |
Old Index