[PATCH] ioctl(2) fixes for 64-bit platforms

Jung-uk Kim jkim at FreeBSD.org
Thu Jun 24 18:39:20 UTC 2010


Python handles ioctl(2) strangely and causes warnings on 64-bit 
platforms.  The analysis was originally posted here:

http://docs.freebsd.org/cgi/mid.cgi?201006231708.40032.jkim

Now I made more complete patch for all Python ports and it is 
available from here:

http://people.freebsd.org/~jkim/python-fcntlmodule.diff

Note I also fixed a Linuxism of fcntl(2) for python31.  They use 
'long' for the optional third argument of fcntl() unlike POSIX and 
*BSD.  It's okay for little-endian or 32-bit platforms but I guess it 
is bad for big-endian LP64 machines.

While I was here, I updated test cases of ioctl() for all Python 
ports.  I also added FreeBSD -CURRENT for python31 but I didn't 
bother test cases of older releases. :-)

Please review the patch.

Thanks,

Jung-uk Kim


More information about the freebsd-python mailing list