# HG changeset patch # User Tero Marttila # Date 1250439655 -10800 # Node ID b3880dafbab13ad17b19f0deb70a0eb1dd9cd1c7 # Parent 74fde84264b137eebe60891cddaea5dacc2eeb8c phew, things are working diff -r 74fde84264b1 -r b3880dafbab1 qmsk/net/sctp/sock.pyx --- a/qmsk/net/sctp/sock.pyx Sun Aug 16 19:01:21 2009 +0300 +++ b/qmsk/net/sctp/sock.pyx Sun Aug 16 19:20:55 2009 +0300 @@ -1,26 +1,26 @@ """ This C(ython) extension module provides an interface to the libsctp library and associated socket API. - >>> import socket - >>> from sock.addr import sockaddr_in - >>> s = socket.socket(socket.AF_INET, socket.SOCK_SEQPACKET, 132) + >>> from __future__ import absolute_import; import socket as _socket + >>> from qmsk.net.socket.addr import sockaddr_in + >>> s = _socket.socket(_socket.AF_INET, _socket.SOCK_SEQPACKET, 132) >>> sctp_bindx(s.fileno(), [sockaddr_in('127.0.0.1', 1337), sockaddr_in('127.0.0.2')], 0x01) >>> """ -from sctp.sock cimport * -from py cimport raise_errno +from qmsk.net.sctp.sock cimport * +from qmsk.net.socket.addr cimport sockaddr cimport libc -cimport socket.addr +from py cimport raise_errno cdef size_t addrsoup_len (object addrs) except -1 : """ Calculate the length of the addr_buf required to store the given addrsoup """ - cdef socket.addr.sockaddr addr + cdef sockaddr addr cdef size_t addr_size = 0 # whoever decided that sctp_bindx takes an array of mixed sockaddr_in/sockaddr_in6's should be shot @@ -34,7 +34,7 @@ Store the sockaddr_*'s for the given addresses into the given buffer, which should be addrsoup_len() bytes long """ - cdef socket.addr.sockaddr addr + cdef sockaddr addr cdef char *addr_ptr = addr_buf # fill it diff -r 74fde84264b1 -r b3880dafbab1 qmsk/net/socket/addr.pxd --- a/qmsk/net/socket/addr.pxd Sun Aug 16 19:01:21 2009 +0300 +++ b/qmsk/net/socket/addr.pxd Sun Aug 16 19:20:55 2009 +0300 @@ -68,11 +68,11 @@ Hence, endpoints are stored as human-readable hostname/service strings, which are then translated to sockaddrs using getaddrinfo. - >>> import socket + >>> from __future__ import absolute_import; import socket as _socket >>> e = endpoint('127.0.0.1', 80) >>> str(e) 'hostname=127.0.0.1, service=80' - >>> res = e.getaddrinfo(socket.AF_UNSPEC, socket.SOCK_STREAM) + >>> res = e.getaddrinfo(_socket.AF_UNSPEC, _socket.SOCK_STREAM) >>> len(res) 1 >>> str(res[0]) @@ -80,7 +80,7 @@ >>> e = endpoint('2001::5', 80) >>> str(e) 'hostname=2001::5, service=80' - >>> res = e.getaddrinfo(socket.AF_UNSPEC, socket.SOCK_STREAM) + >>> res = e.getaddrinfo(_socket.AF_UNSPEC, _socket.SOCK_STREAM) >>> len(res) 1 >>> str(res[0]) diff -r 74fde84264b1 -r b3880dafbab1 qmsk/net/socket/socket.pxd --- a/qmsk/net/socket/socket.pxd Sun Aug 16 19:01:21 2009 +0300 +++ b/qmsk/net/socket/socket.pxd Sun Aug 16 19:20:55 2009 +0300 @@ -4,12 +4,12 @@ ctypedef int socket_t -cdef class sock : +cdef class socket : """ Represents a single OS-level socket - >>> from socket import addr - >>> s = sock() + >>> from qmsk.net.socket import addr + >>> s = socket() >>> s.send('foo') Traceback (most recent call last): ... @@ -18,8 +18,12 @@ >>> s.bind(addr.sockaddr_in('127.0.0.1', 1337)) >>> s.listen(1) >>> s.listen(0) - >>> s.connect(addr.sockaddr_in('127.0.01.', 1338)) - x + >>> s = socket(); s.socket() + >>> s.connect(addr.sockaddr_in('127.0.0.1', 1338)) + Traceback (most recent call last): + ... + OSError: [Errno 111] Connection refused + """ cdef readonly socket_t fd diff -r 74fde84264b1 -r b3880dafbab1 qmsk/net/socket/socket.pyx --- a/qmsk/net/socket/socket.pyx Sun Aug 16 19:01:21 2009 +0300 +++ b/qmsk/net/socket/socket.pyx Sun Aug 16 19:20:55 2009 +0300 @@ -7,7 +7,7 @@ # XXX: do some GIL-releasin' -cdef class sock : +cdef class socket : def __init__ (self, int fd = -1) : """ @@ -115,7 +115,7 @@ raise_errno('accept') # prep the new socket - sock_obj = sock(sock_fd) + sock_obj = socket(sock_fd) # prep the new addr sock_addr = build_sockaddr( &ss, ss_len) diff -r 74fde84264b1 -r b3880dafbab1 setup.py --- a/setup.py Sun Aug 16 19:01:21 2009 +0300 +++ b/setup.py Sun Aug 16 19:20:55 2009 +0300 @@ -23,14 +23,14 @@ cmdclass = {'build_ext': build_ext}, # describe Cython modules - ext_package = 'qmsk.net', +# ext_package = 'qmsk.net', ext_modules = [ - cython_ext("libc", ["qmsk/net/libc.pyx"]), - cython_ext("py", ["qmsk/net/py.pyx"]), - cython_ext("socket.addr", ["qmsk/net/socket/addr.pyx"]), - cython_ext("socket.socket", ["qmsk/net/socket/socket.pyx"]), - cython_ext("sctp.sock", ["qmsk/net/sctp/sock.pyx"], libraries=['sctp']), - cython_ext("sctp.constants", ["qmsk/net/sctp/constants.pyx"]), + cython_ext("qmsk.net.libc", ["qmsk/net/libc.pyx"]), + cython_ext("qmsk.net.py", ["qmsk/net/py.pyx"]), + cython_ext("qmsk.net.socket.addr", ["qmsk/net/socket/addr.pyx"]), + cython_ext("qmsk.net.socket.socket", ["qmsk/net/socket/socket.pyx"]), + cython_ext("qmsk.net.sctp.sock", ["qmsk/net/sctp/sock.pyx"], libraries=['sctp']), + cython_ext("qmsk.net.sctp.constants", ["qmsk/net/sctp/constants.pyx"]), ] ) diff -r 74fde84264b1 -r b3880dafbab1 test.py --- a/test.py Sun Aug 16 19:01:21 2009 +0300 +++ b/test.py Sun Aug 16 19:20:55 2009 +0300 @@ -1,12 +1,12 @@ import doctest -import socket.addr -import socket.sock -import sctp.sock +import qmsk.net.socket.addr +import qmsk.net.socket.socket +import qmsk.net.sctp.sock for mod in ( - socket.addr, - socket.sock, - sctp.sock, + qmsk.net.socket.addr, + qmsk.net.socket.socket, + qmsk.net.sctp.sock, ) : doctest.testmod(mod)