[Python-Dev] Make socket support TIPC

Alberto Bertogli albertito at gmail.com
Tue Dec 18 15:57:19 CET 2007


I wrote a patch adding TIPC support to the socket module, you can find
it in http://bugs.python.org/issue1646.

TIPC (http://tipc.sf.net) is an open protocol designed for use in
clustered computer environments. It currently has an open source
implementation for Linux (>= 2.6.16), and VxWorks.

On #python-dev, a very friendly person (whose name/nick I can't recall,
I had a power cut and lost my IRC session) helped me with the submission
explained that the patch will probably get rejected in order to keep the
core slim, and suggested I should send an email to this mailing list so
it can be discussed.

I already wrote an external module to support TIPC
(http://auriga.wearlab.de/~alb/pytipc/), but given that the socket
module already supports Linux-specific protocols (AF_PACKET and
AF_NETLINK), and the code impact was (IMHO) small, I wrote a patch to
add TIPC support.

The patch consists of adding the TIPC constants, and modifying
makesockaddr(), getsockaddrarg() and getsockaddrlen() to handle the
TIPC addresses. No generic code is changed.

Compilation is completely conditional on having the TIPC headers, and
has no runtime dependencies.

The diff adds 156 new lines and changes 2, and on x86 increases code
size by about 2k:

   text    data     bss     dec     hex filename
  37158   11980      20   49158    c006 /tmp/so/wo-tipc.so
  39162   11980      20   51162    c7da /tmp/so/w-tipc.so

Thanks a lot,

More information about the Python-Dev mailing list