This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: Missing new setsockopts in Linux (eg: IP_TRANSPARENT)
Type: enhancement Stage: resolved
Components: Library (Lib) Versions: Python 3.3
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: giampaolo.rodola, micolous, neologix, python-dev
Priority: normal Keywords: patch

Created on 2011-08-22 03:26 by micolous, last changed 2022-04-11 14:57 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
extra_linux_sockopts.diff micolous, 2011-08-22 03:26 Hack of a patch in order to regenerate in.h with Linux-specific stuff and Linux-specific sockopts review
Messages (3)
msg142663 - (view) Author: Michael Farrell (micolous) Date: 2011-08-22 03:26
Recently, iptables has added support for transparent proxies using a new TPROXY target on Linux2.  This requires a new option in setsockopts, IP_TRANSPARENT.  There's some background on the feature here:

http://www.mjmwired.net/kernel/Documentation/networking/tproxy.txt

I've created a patch to the header regen scripts on Linux2 that should expose this functionality to Python.  They'll need to be run to generate the headers again.

I notice that `_socket` doesn't include the names of socket options from this location, instead using a local database.  I had trouble trying to get `linux/in.h` included in that file, so I included a work-around which defines it statically for now.

It needs some work but it causes a lot of breakage when I try to do this -- and I don't know enough about the Linux sockets API to fix this properly.
msg149667 - (view) Author: Roundup Robot (python-dev) (Python triager) Date: 2011-12-17 14:01
New changeset 59ea1d1a4137 by Charles-François Natali in branch 'default':
Issue #12809: Expose IP_TRANSPARENT in the socket module. Patch by Michael
http://hg.python.org/cpython/rev/59ea1d1a4137
msg149668 - (view) Author: Charles-François Natali (neologix) * (Python committer) Date: 2011-12-17 14:04
Thanks Michael.
I committed a simpler version of your patch.
History
Date User Action Args
2022-04-11 14:57:20adminsetgithub: 57018
2011-12-17 14:04:09neologixsetstatus: open -> closed
resolution: fixed
messages: + msg149668

stage: resolved
2011-12-17 14:01:35python-devsetnosy: + python-dev
messages: + msg149667
2011-12-16 12:20:15giampaolo.rodolasetnosy: + giampaolo.rodola
2011-12-16 10:15:00pitrousetnosy: + neologix
2011-08-22 03:26:51micolouscreate