All of lore.kernel.org
 help / color / mirror / Atom feed
* draft-stewart-tsvwg-sctp-ipv4 enforcement
@ 2021-06-17 19:01 Sérgio
  2021-06-18 16:35 ` Xin Long
  0 siblings, 1 reply; 4+ messages in thread
From: Sérgio @ 2021-06-17 19:01 UTC (permalink / raw)
  To: linux-sctp

Hello,

I am troubleshooting a deployment with SCTP and eventually found that
the client has configured the equipment using addresses within the
RFC2544 annex C.2.2 test network (198.18.0.0/15).

Although I think the deployment network may be changed to use another
address space in order to "solve" the issue, the restriction
enforcement on the SCTP kernel driver (implemented by function
sctp_v4_addr_valid -- net/sctp/protocol.c -- in expansion of
IS_IPV4_UNUSABLE_ADDRESS -- include/net/sctp/consntans.h) seems odd to
me, because the address is a valid unicast IPv4 address and should be
acceptable as per RFC4960 clause 8.4:

   The receiver of an OOTB packet MUST do the following:

   1)  If the OOTB packet is to or from a non-unicast address, a
       receiver SHOULD silently discard the packet.  Otherwise,

The source code states that this restriction came from
draft-stewart-tsvwg-sctp-ipv4, which is true, and the sysctl
net.sctp.addr_scope_policy is documented in ip-sysctl.txt as a switch
for the desired draft behavior, but changing the sysctl value has no
effect because IS_IPV4_UNUSABLE_ADDRESS macro expansion has no
verification of any sysctl configuration nor the sctp_v4_addr_valid.

The draft-stewart-tsvwg-sctp-ipv4 enforcement seems like a bug or I am
missing something?

Best Regards,
Sérgio Surkamp

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-06-18 20:54 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-17 19:01 draft-stewart-tsvwg-sctp-ipv4 enforcement Sérgio
2021-06-18 16:35 ` Xin Long
2021-06-18 20:35   ` Michael Tuexen
2021-06-18 20:54     ` Xin Long

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.