mirror of
https://gitee.com/bianbu-linux/linux-6.6
synced 2025-07-01 23:53:16 -04:00
sctp: Add peeloff-flags socket option
Based on a request raised on the sctp devel list, there is a need to augment the sctp_peeloff operation while specifying the O_CLOEXEC and O_NONBLOCK flags (simmilar to the socket syscall). Since modifying the SCTP_SOCKOPT_PEELOFF socket option would break user space ABI for existing programs, this patch creates a new socket option SCTP_SOCKOPT_PEELOFF_FLAGS, which accepts a third flags parameter to allow atomic assignment of the socket descriptor flags. Tested successfully by myself and the requestor Signed-off-by: Neil Horman <nhorman@tuxdriver.com> CC: Vlad Yasevich <vyasevich@gmail.com> CC: "David S. Miller" <davem@davemloft.net> CC: Andreas Steinmetz <ast@domdv.de> CC: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com> Acked-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
15324b25d5
commit
2cb5c8e378
2 changed files with 84 additions and 21 deletions
|
@ -121,6 +121,7 @@ typedef __s32 sctp_assoc_t;
|
|||
#define SCTP_RESET_STREAMS 119
|
||||
#define SCTP_RESET_ASSOC 120
|
||||
#define SCTP_ADD_STREAMS 121
|
||||
#define SCTP_SOCKOPT_PEELOFF_FLAGS 122
|
||||
|
||||
/* PR-SCTP policies */
|
||||
#define SCTP_PR_SCTP_NONE 0x0000
|
||||
|
@ -978,6 +979,11 @@ typedef struct {
|
|||
int sd;
|
||||
} sctp_peeloff_arg_t;
|
||||
|
||||
typedef struct {
|
||||
sctp_peeloff_arg_t p_arg;
|
||||
unsigned flags;
|
||||
} sctp_peeloff_flags_arg_t;
|
||||
|
||||
/*
|
||||
* Peer Address Thresholds socket option
|
||||
*/
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue