Skip to content

sctp: add subscribe per asoc and sockopt SCTP_EVENT

Xin Long linux-sctp netdev 3 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v3 Latest4 patches 2 repliesIn review
  2. v24 patches 2 repliesSuperseded
  3. v12 of 4 patches 1 replySuperseded

Changes in v3 from the cover letter

- fix an array out of bounds noticed by Neil in patch 1/4.

Patches in v3 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/4sctp: define subscribe in sctp_sock as __u16include/net/sctp/structs.h include/net/sctp/ulpevent.h include/uapi/linux/sctp.h +4 more+68 -370 replies
2/4sctp: add subscribe per asocinclude/net/sctp/structs.h net/sctp/associola.c net/sctp/chunk.c +3 more+17 -100 replies
3/4sctp: rename enum sctp_event to sctp_event_typeinclude/net/sctp/constants.h include/net/sctp/sm.h net/sctp/primitive.c +2 more+11 -110 replies
4/4sctp: add sockopt SCTP_EVENTinclude/uapi/linux/sctp.h net/sctp/socket.c+95 -00 replies

Reviews trailers per patch

None of the 4 patches has a Reviewed-by or Acked-by of their own; the series has one for all of them.

PatchNeil Horman
SeriesA-b
1/4
2/4
3/4
4/4

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v3 thread

Cover letter [PATCHv3 net-next 0/4] sctp: add subscribe per asoc and sockopt SCTP_EVENT

This patchset mainly adds the Event Subscription sockopt described in rfc6525#section-6.2:

"Subscribing to events as described in [RFC6458] uses a setsockopt() call with the SCTP_EVENT socket option. This option takes the following structure, which specifies the association, the event type (using the same value found in the event type field), and an on/off boolean.

  struct sctp_event {
    sctp_assoc_t se_assoc_id;
    uint16_t     se_type;
    uint8_t      se_on;
  };

The user fills in the se_type field with the same value found in the strreset_type field, i.e., SCTP_STREAM_RESET_EVENT. The user will also fill in the se_assoc_id field with either the association to set this event on (this field is ignored for one-to-one style sockets) or one of the reserved constant values defined in [RFC6458]. Finally, the se_on field is set with a 1 to enable the event or a 0 to disable the event."

As for the old SCTP_EVENTS Option with struct sctp_event_subscribe, it's being DEPRECATED.

v1->v2:
- fix some key word in changelog that triggerred the filters at vger.kernel.org.
v2->v3:
- fix an array out of bounds noticed by Neil in patch 1/4.

Xin Long (4):
sctp: define subscribe in sctp_sock as __u16
sctp: add subscribe per asoc
sctp: rename enum sctp_event to sctp_event_type
sctp: add sockopt SCTP_EVENT

 include/net/sctp/constants.h |   2 +-
 include/net/sctp/sm.h        |   4 +-
 include/net/sctp/structs.h   |   4 +-
 include/net/sctp/ulpevent.h  |  39 ++++++++------
 include/uapi/linux/sctp.h    |  13 ++++-
 net/sctp/associola.c         |   2 +
 net/sctp/chunk.c             |   8 ++-
 net/sctp/primitive.c         |   2 +-
 net/sctp/sm_sideeffect.c     |  12 ++---
 net/sctp/sm_statetable.c     |   2 +-
 net/sctp/socket.c            | 125 ++++++++++++++++++++++++++++++++++++++++---
 net/sctp/stream_interleave.c |  12 +++--
 net/sctp/ulpqueue.c          |   8 +--
 13 files changed, 183 insertions(+), 50 deletions(-)
Signature · 1 line
2.1.0