diff options
author | Antoine Pitrou <solipsis@pitrou.net> | 2010-05-09 14:46:46 (GMT) |
---|---|---|
committer | Antoine Pitrou <solipsis@pitrou.net> | 2010-05-09 14:46:46 (GMT) |
commit | c83ea137d7e717f764e2f31fc2544f522de7d857 (patch) | |
tree | ccfdacfdcdc4ed68e56324a07b6f25ab5327bdcd /Modules/socketmodule.h | |
parent | 368ede83d9c96004dc5c489511936a588537f410 (diff) | |
download | cpython-c83ea137d7e717f764e2f31fc2544f522de7d857.zip cpython-c83ea137d7e717f764e2f31fc2544f522de7d857.tar.gz cpython-c83ea137d7e717f764e2f31fc2544f522de7d857.tar.bz2 |
Untabify C files. Will watch buildbots.
Diffstat (limited to 'Modules/socketmodule.h')
-rw-r--r-- | Modules/socketmodule.h | 104 |
1 files changed, 52 insertions, 52 deletions
diff --git a/Modules/socketmodule.h b/Modules/socketmodule.h index 48f230e..8515499 100644 --- a/Modules/socketmodule.h +++ b/Modules/socketmodule.h @@ -17,7 +17,7 @@ # include <ws2tcpip.h> /* VC6 is shipped with old platform headers, and does not have MSTcpIP.h * Separate SDKs have all the functions we want, but older ones don't have - * any version information. + * any version information. * I use SIO_GET_MULTICAST_FILTER to detect a decent SDK. */ # ifdef SIO_GET_MULTICAST_FILTER @@ -76,44 +76,44 @@ extern "C" { #endif /* Python module and C API name */ -#define PySocket_MODULE_NAME "_socket" -#define PySocket_CAPI_NAME "CAPI" +#define PySocket_MODULE_NAME "_socket" +#define PySocket_CAPI_NAME "CAPI" #define PySocket_CAPSULE_NAME (PySocket_MODULE_NAME "." PySocket_CAPI_NAME) /* Abstract the socket file descriptor type */ #ifdef MS_WINDOWS typedef SOCKET SOCKET_T; -# ifdef MS_WIN64 -# define SIZEOF_SOCKET_T 8 -# else -# define SIZEOF_SOCKET_T 4 -# endif +# ifdef MS_WIN64 +# define SIZEOF_SOCKET_T 8 +# else +# define SIZEOF_SOCKET_T 4 +# endif #else typedef int SOCKET_T; -# define SIZEOF_SOCKET_T SIZEOF_INT +# define SIZEOF_SOCKET_T SIZEOF_INT #endif /* Socket address */ typedef union sock_addr { - struct sockaddr_in in; + struct sockaddr_in in; #ifdef AF_UNIX - struct sockaddr_un un; + struct sockaddr_un un; #endif #ifdef AF_NETLINK - struct sockaddr_nl nl; + struct sockaddr_nl nl; #endif #ifdef ENABLE_IPV6 - struct sockaddr_in6 in6; - struct sockaddr_storage storage; + struct sockaddr_in6 in6; + struct sockaddr_storage storage; #endif #ifdef HAVE_BLUETOOTH_BLUETOOTH_H - struct sockaddr_l2 bt_l2; - struct sockaddr_rc bt_rc; - struct sockaddr_sco bt_sco; - struct sockaddr_hci bt_hci; + struct sockaddr_l2 bt_l2; + struct sockaddr_rc bt_rc; + struct sockaddr_sco bt_sco; + struct sockaddr_hci bt_hci; #endif #ifdef HAVE_NETPACKET_PACKET_H - struct sockaddr_ll ll; + struct sockaddr_ll ll; #endif } sock_addr_t; @@ -122,16 +122,16 @@ typedef union sock_addr { arguments properly. */ typedef struct { - PyObject_HEAD - SOCKET_T sock_fd; /* Socket file descriptor */ - int sock_family; /* Address family, e.g., AF_INET */ - int sock_type; /* Socket type, e.g., SOCK_STREAM */ - int sock_proto; /* Protocol type, usually 0 */ - PyObject *(*errorhandler)(void); /* Error handler; checks - errno, returns NULL and - sets a Python exception */ - double sock_timeout; /* Operation timeout in seconds; - 0.0 means non-blocking */ + PyObject_HEAD + SOCKET_T sock_fd; /* Socket file descriptor */ + int sock_family; /* Address family, e.g., AF_INET */ + int sock_type; /* Socket type, e.g., SOCK_STREAM */ + int sock_proto; /* Protocol type, usually 0 */ + PyObject *(*errorhandler)(void); /* Error handler; checks + errno, returns NULL and + sets a Python exception */ + double sock_timeout; /* Operation timeout in seconds; + 0.0 means non-blocking */ } PySocketSockObject; /* --- C API ----------------------------------------------------*/ @@ -139,7 +139,7 @@ typedef struct { /* Short explanation of what this C API export mechanism does and how it works: - The _ssl module needs access to the type object defined in + The _ssl module needs access to the type object defined in the _socket module. Since cross-DLL linking introduces a lot of problems on many platforms, the "trick" is to wrap the C API of a module in a struct which then gets exported to @@ -161,24 +161,24 @@ typedef struct { Load _socket module and its C API; this sets up the global PySocketModule: - - if (PySocketModule_ImportModuleAndAPI()) - return; + + if (PySocketModule_ImportModuleAndAPI()) + return; Now use the C API as if it were defined in the using module: - if (!PyArg_ParseTuple(args, "O!|zz:ssl", + if (!PyArg_ParseTuple(args, "O!|zz:ssl", - PySocketModule.Sock_Type, + PySocketModule.Sock_Type, - (PyObject*)&Sock, - &key_file, &cert_file)) - return NULL; + (PyObject*)&Sock, + &key_file, &cert_file)) + return NULL; Support could easily be extended to export more C APIs/symbols - this way. Currently, only the type object is exported, + this way. Currently, only the type object is exported, other candidates would be socket constructors and socket access functions. @@ -186,13 +186,13 @@ typedef struct { /* C API for usage by other Python modules */ typedef struct { - PyTypeObject *Sock_Type; - PyObject *error; + PyTypeObject *Sock_Type; + PyObject *error; } PySocketModule_APIObject; /* XXX The net effect of the following appears to be to define a function XXX named PySocketModule_APIObject in _ssl.c. It's unclear why it isn't - XXX defined there directly. + XXX defined there directly. >>> It's defined here because other modules might also want to use >>> the C API. @@ -208,8 +208,8 @@ typedef struct { if (!PyArg_ParseTuple(args, "O!|zz:ssl", &PySocketModule.Sock_Type, (PyObject*)&Sock, - &key_file, &cert_file)) - return NULL; + &key_file, &cert_file)) + return NULL; ... */ @@ -227,19 +227,19 @@ PySocketModule_APIObject PySocketModule; static int PySocketModule_ImportModuleAndAPI(void) { - void *api; + void *api; DPRINTF(" Loading capsule %s\n", PySocket_CAPSULE_NAME); api = PyCapsule_Import(PySocket_CAPSULE_NAME, 1); - if (api == NULL) - goto onError; - memcpy(&PySocketModule, api, sizeof(PySocketModule)); - DPRINTF(" API object loaded and initialized.\n"); - return 0; + if (api == NULL) + goto onError; + memcpy(&PySocketModule, api, sizeof(PySocketModule)); + DPRINTF(" API object loaded and initialized.\n"); + return 0; onError: - DPRINTF(" not found.\n"); - return -1; + DPRINTF(" not found.\n"); + return -1; } #endif /* !PySocket_BUILDING_SOCKET */ |