From 9d85aba9e245c1a0f6d1879f8bc6c260cb4eb721 Mon Sep 17 00:00:00 2001 From: David CARLIER Date: Mon, 9 May 2022 00:19:41 +0100 Subject: gh-91968: Add socket constants SO_USER_COOKIE/SO_RTABLE from BSD (#91967) Those are somewhat equivalent to Linux' SO_MARK. Co-authored-by: Jelle Zijlstra --- Doc/library/socket.rst | 5 +++++ .../next/Library/2022-04-26-18-37-24.gh-issue-91968.fuuH1_.rst | 1 + Modules/socketmodule.c | 6 ++++++ 3 files changed, 12 insertions(+) create mode 100644 Misc/NEWS.d/next/Library/2022-04-26-18-37-24.gh-issue-91968.fuuH1_.rst diff --git a/Doc/library/socket.rst b/Doc/library/socket.rst index ee1aee5..4c193b8 100755 --- a/Doc/library/socket.rst +++ b/Doc/library/socket.rst @@ -392,6 +392,11 @@ Constants Added ``TCP_CONNECTION_INFO``. On MacOS this constant can be used in the same way that ``TCP_INFO`` is used on Linux and BSD. + .. versionchanged:: 3.12 + Added ``SO_RTABLE`` and ``SO_USER_COOKIE``. On OpenBSD + and FreeBSD respectively those constants can be used in the same way that + ``SO_MARK`` is used on Linux. + .. data:: AF_CAN PF_CAN SOL_CAN_* diff --git a/Misc/NEWS.d/next/Library/2022-04-26-18-37-24.gh-issue-91968.fuuH1_.rst b/Misc/NEWS.d/next/Library/2022-04-26-18-37-24.gh-issue-91968.fuuH1_.rst new file mode 100644 index 0000000..f16f5d3 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2022-04-26-18-37-24.gh-issue-91968.fuuH1_.rst @@ -0,0 +1 @@ +Add ``SO_RTABLE`` and ``SO_USER_COOKIE`` constants to :mod:`socket`. diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c index 9aefa44..f376513 100644 --- a/Modules/socketmodule.c +++ b/Modules/socketmodule.c @@ -7595,6 +7595,12 @@ PyInit__socket(void) #ifdef SO_MARK PyModule_AddIntMacro(m, SO_MARK); #endif +#ifdef SO_USER_COOKIE + PyModule_AddIntMacro(m, SO_USER_COOKIE); +#endif +#ifdef SO_RTABLE + PyModule_AddIntMacro(m, SO_RTABLE); +#endif #ifdef SO_DOMAIN PyModule_AddIntMacro(m, SO_DOMAIN); #endif -- cgit v0.12