1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-11-30 08:19:09 +00:00

ip_forward: Restore RFC reference

Add RFC reference lost in 3d846e4822

PR:		255388
Reviewed By:	rgrimes, donner, karels, marcus, emaste
MFC after:	27 days
Differential Revision: https://reviews.freebsd.org/D30374
This commit is contained in:
Zhenlei Huang 2021-05-22 23:53:52 +02:00 committed by Lutz Donnerhacke
parent 3f7e14ad93
commit 03b0505b8f

View File

@ -740,7 +740,10 @@ ip_input(struct mbuf *m)
}
if (IN_MULTICAST(ntohl(ip->ip_dst.s_addr))) {
MROUTER_RLOCK();
/* Do not forward packets from IN_LINKLOCAL. */
/*
* RFC 3927 2.7: Do not forward multicast packets from
* IN_LINKLOCAL.
*/
if (V_ip_mrouter && !IN_LINKLOCAL(ntohl(ip->ip_src.s_addr))) {
/*
* If we are acting as a multicast router, all
@ -780,7 +783,7 @@ ip_input(struct mbuf *m)
goto ours;
if (ip->ip_dst.s_addr == INADDR_ANY)
goto ours;
/* Do not forward packets to or from IN_LINKLOCAL. */
/* RFC 3927 2.7: Do not forward packets to or from IN_LINKLOCAL. */
if (IN_LINKLOCAL(ntohl(ip->ip_dst.s_addr)) ||
IN_LINKLOCAL(ntohl(ip->ip_src.s_addr))) {
IPSTAT_INC(ips_cantforward);