summaryrefslogtreecommitdiffstats
path: root/Modules/socketmodule.c
Commit message (Collapse)AuthorAgeFilesLines
...
* Do simple error checking before doing any SSL calls.Jeremy Hylton2001-10-101-5/+5
|
* USe PyObject_SetString() instead of PyObject_SetObject() in newSSLObject().Jeremy Hylton2001-10-101-14/+9
|
* In newSSLObject(), initialize the various members of an SSLObject to NULL.Jeremy Hylton2001-10-101-2/+8
| | | | | | | In SSL_dealloc(), free/dealloc them only if they're non-NULL. Fixes some obvious core dumps, but not sure yet if there are more semantics to the SSL calls that would affect the dealloc.
* A bit of reformatting to match the standard styleJeremy Hylton2001-10-101-7/+7
|
* Fix two memory leaks in socket.ssl().Jeremy Hylton2001-10-101-39/+29
| | | | | | | | | | | | | | | | | | | | | | | | XXX [1] These changes aren't tested very thoroughly, because regrtest doesn't do any SSL tests. I've done some trivial tests on my own, but don't really know how to use the key and cert files. In one case, an SSL-level error causes Python to dump core. I'll get the fixed in the next round of changes. XXX [2] The checkin removes the x_attr member of the SSLObject struct. I'm not sure if this is kosher for backwards compatibility at the binary level. Perhaps its safer to keep the member but keep it assigned to NULL. And the leaks? newSSLObject() called PyDict_New(), stored the result in x_attr without checking it, and later stored NULL in x_attr without doing anything to the dict. So the dict always leaks. There is no further reference to x_attr, so I just removed it completely. The error cases in newSSLObject() passed the return value of PyString_FromString() directly to PyErr_SetObject(). PyErr_SetObject() expects a borrowed reference, so the string leaked.
* SF bug [#456252] Python should never stomp on [u]intptr_t.Tim Peters2001-08-291-1/+1
| | | | | | | | | | | pyport.h: typedef a new Py_intptr_t type. DELICATE ASSUMPTION: That HAVE_UINTPTR_T implies intptr_t is available as well as uintptr_t. If that turns out not to be true, things must get uglier (C99 wants both, so I think it's an assumption we're *likely* to get away with). thread_nt.h, PyThread_start_new_thread: MS _beginthread is documented as returning unsigned long; no idea why uintptr_t was being used. Others: Always use Py_[u]intptr_t, never [u]intptr_t directly.
* SSL_dealloc(): Apply the change suggested in SF bug #425370 whichBarry Warsaw2001-08-201-1/+1
| | | | | changes the order of the free calls to be the reverse of the alloc calls. Closes that bug.
* It will always be a string, because it is created just before this call.Jeremy Hylton2001-08-201-1/+1
|
* Fix portability problems with glibc 2.0, as reported in #449157.Martin v. Löwis2001-08-151-0/+4
|
* Bump size of sprintf buffer. Suggested by Alex Coventry.Martin v. Löwis2001-08-121-1/+1
|
* Autotest for netpacket/packet.h, as it is not available on all Linux versions.Martin v. Löwis2001-08-101-6/+6
| | | | Depend AF_PACKET on HAVE_NETPACKET_PACKET_H. Fixes #449157
* Add more constants. Contributed by itojun.Martin v. Löwis2001-08-041-1/+73
|
* Auto-detect hstrerror. Raise socket.herror in PyH_Error. Register the threeMartin v. Löwis2001-08-041-2/+4
| | | | exception classes in the module dictionary.
* Do not use the system getaddrinfo on Mac OS X. Fixes bug #445928.Martin v. Löwis2001-08-031-6/+16
| | | | Since getnameinfo is not implemented, remove __APPLE__ check here.
* Enable PyOS_snprintf() et al. during alpha phase of 2.2.0 andMarc-André Lemburg2001-07-311-10/+2
| | | | add another use case to the socketmodule.
* Temporarily work around bug #445928: Force usage of getaddrinfo emulationMartin v. Löwis2001-07-301-2/+6
| | | | code on Darwin, since the C library version of that seems to be broken.
* Use HAVE_SNPRINTF, not HAVE_SPRINTF, for checking the availability ofThomas Wouters2001-07-241-1/+1
| | | | snprintf.
* Autocheck for snprintf, and use sprintf if it is not available.Martin v. Löwis2001-07-241-3/+8
| | | | | Remove declaration of h_errno, since it is supposedly declared in netdb.h. Changes proposed by itojun.
* Before declaring h_errno, do not check for Win32 only. Instead, do checkMartin v. Löwis2001-07-231-1/+1
| | | | whether h_errno is a macro.
* Instead of accessing ss_family, cast sockaddr_storage to sockaddr and access ↵Martin v. Löwis2001-07-231-1/+5
| | | | sa_family.
* Patch #401196: IPv6 extensions to the socket module.Martin v. Löwis2001-07-211-103/+546
| | | | | | | | New functions getnameinfo, getaddrinfo. New exceptions socket.gaierror, socket.herror. Various new constants, in particular AF_INET6 and error codes and parameters for getaddrinfo. AF_INET6 support in setipaddr, makesockaddr, getsockaddr, getsockaddrlen, gethost_common, PySocket_gethostbyaddr.
* Silence warnings in MSVC++: hide unused variables, add constness back toMartin v. Löwis2001-07-211-5/+5
| | | | inet_pton/ntop, convert htons argument to u_short.
* Clean up some warnings from the SGI compiler.Fred Drake2001-07-191-3/+3
| | | | This is part of SF patch #434992.
* Port getaddrinfo to MSVC++.Martin v. Löwis2001-07-191-12/+0
|
* Remove const-ness in inet_pton declaration.Martin v. Löwis2001-06-251-1/+1
|
* Fix typos in inet_pton/inet_ntop.Martin v. Löwis2001-06-241-2/+3
|
* Provide a definition for offsetof.Martin v. Löwis2001-06-241-0/+8
|
* Emulate inet_{pton,ntop} on systems that don't provide it.Martin v. Löwis2001-06-241-0/+41
|
* Pure brute-force hackery to allow Python to build on Windows again,Tim Peters2001-06-241-0/+12
| | | | | because I need to make progress and don't have time now to think about whatever it is the new code is trying to accomplish.
* Patch #401196: Configuration machinery for IPv6.Martin v. Löwis2001-06-231-0/+10
| | | | | Contributed by Jun-ichiro "itojun" Hagino. get{addr,name}info emulation code taken from WIDE.
* Fix a minor style consistency issue.Fred Drake2001-05-111-3/+3
| | | | | | When getting a string buffer for a string we just created, use PyString_AS_STRING() instead of PyString_AsString() to avoid the call overhead and extra type check.
* Three uses of makesockaddr() used sockaddr buffers that had not be cleared;Fred Drake2001-05-091-1/+4
| | | | | | | | | | | | | this could cause invalid paths to be returned for AF_UNIX sockets on some platforms (including FreeBSD 4.2-RELEASE), appearantly because there is no assurance that the address will be nul-terminated when filled in by the kernel. PySocketSock_recvfrom(): Use PyString_AS_STRING() to get the data pointer of a string we create ourselves; there is no need for the extra type check from PyString_AsString(). This closes SF bug #416573.
* Reverting Moshe's EGD patch *and* Martin's patch to make it work withGuido van Rossum2001-04-161-34/+0
| | | | | | | | | | OpenSSL versions beore 0.9.5. This just is too experimental to be worth it, especially since the user would have to do some severe hacking of the Modules/Setup file to even enable the EGD code, and without the EGD code it would always spit out a warning on some systems -- even when socket.ssl() is not used. Fixing that properly is not my job; the EGD patch is clearly not so important that it should hold up the 2.1 release.
* I am TENTATIVELY checking in Martin von Loewis's patch for the SSLGuido van Rossum2001-04-131-0/+7
| | | | | | | | | | | | problem reported by Neil Schemenauer on python-dev on 4/12/01, wth subject "Problem with SSL and socketmodule on Debian Potato?". It's tentative because Moshe objected, but Martin rebutted, and Moshe seems unavailable for comments. (Note that with OpenSSL 0.9.6a, I get a lot of compilation warnings for socketmodule.c -- I'm assuming I can safely ignore these until 2.1 is released.)
* Committing patch 405101Moshe Zadka2001-03-181-0/+27
|
* RISCOS changes by dschwertberger.Guido van Rossum2001-03-021-106/+177
|
* Remove the optional integer argument to SSL_write; now it will always sendAndrew M. Kuchling2001-02-071-5/+2
| | | | the entire string passed to it
* Patch #103636: Allow writing strings containing null bytes to an SSL socketAndrew M. Kuchling2001-02-061-1/+1
|
* fix a couple last-minute bugs in the raw socket supportJeremy Hylton2001-02-021-24/+24
|
* SF patch 101137 from Grant EdwardsJeremy Hylton2001-02-021-3/+93
| | | | | | | | Adds support for raw packets (AF_PACKET) under Linux. I haven't tested this code thoroughly; it compiles and the basic calls all work without crashing. Not sure what to actually do with raw sockets though. Not sure what other platforms this might be useful for.
* An ssl-wrapped socket now returns '' on EOF, just like a regularJeremy Hylton2001-02-011-7/+4
| | | | | | socket -- as suggested by Clarence Gardner. Fix httplib to comply with the new ssl-socket interface.
* SF Patch #103185, by jlt63: Some more standard modules cleanup for CygwinGuido van Rossum2001-01-221-1/+4
|
* Use openssl/*.h to include the OpenSSL header filesAndrew M. Kuchling2001-01-181-6/+6
|
* Adapted from a patch by Barry Scott, SF patch #102875 and SF bugGuido van Rossum2000-12-181-3/+4
| | | | #125981: closing sockets was not thread-safe.
* Patch by Michael Hudson to clarify the error message fromGuido van Rossum2000-12-011-1/+7
| | | | getsockaddrarg when the address is not a tuple.
* Norman Vine <nhv@users.sourceforge.net>:Fred Drake2000-10-061-1/+1
| | | | | | tcp.h is not available on CygWin, so do not try to include it there. This closes SourceForge patch #101802.
* Remove a lot of the confusing conditional compilation from the beginningFred Drake2000-08-161-47/+4
| | | | of the init_socket() function. This module is now *always* _socket.
* Remobe beopen/cnri/cwi copyrights, according to CNRI instructions.Guido van Rossum2000-08-031-10/+0
| | | | | | This doesn't change the copyright status for these files -- just the markings! Doing it on the main branch for these three files for which the HEAD revision was pushed back into 1.6.
* Use METH_VARARGS instead of numeric constant 1 in method def. tablesAndrew M. Kuchling2000-08-031-35/+50
|
* merge Include/my*.h into Include/pyport.hPeter Schneider-Kamp2000-07-311-1/+0
| | | | marked my*.h as obsolete