- 28 Haz, 2000 40 kayıt (commit)
-
-
Guido van Rossum yazdı
tests.
-
Fred Drake yazdı
-
Fred Drake yazdı
-
Guido van Rossum yazdı
-
Jack Jansen yazdı
-
Jack Jansen yazdı
-
Jack Jansen yazdı
-
Guido van Rossum yazdı
-
Jack Jansen yazdı
-
Fred Drake yazdı
Added an example of using an HTTP POST request.
-
Guido van Rossum yazdı
-
Guido van Rossum yazdı
-
Guido van Rossum yazdı
-
Guido van Rossum yazdı
-
Guido van Rossum yazdı
-
Guido van Rossum yazdı
fromfile(), to hold fread() result.)
-
Guido van Rossum yazdı
to hold strlen() outcome).
-
Guido van Rossum yazdı
This patches fixes a possible overflow of the optional timeout parameter for the select() function (selectmodule.c). This timeout is passed in as a double and then truncated to an int. If the double is sufficiently large you can get unexpected results as it overflows. This patch raises an overflow if the given select timeout overflows. [GvR: To my embarrassment, the original code was assuming an int could always hold a million. Note that the overflow check doesn't test for a very large *negative* timeout passed in -- but who in the world would do such a thing?]
-
Guido van Rossum yazdı
Various small fixes to the builtin module to ensure no buffer overflows. - chunk #1: Proper casting to ensure no truncation, and hence no surprises, in the comparison. - chunk #2: The id() function guarantees a unique return value for different objects. It does this by returning the pointer to the object. By returning a PyInt, on Win64 (sizeof(long) < sizeof(void*)) the pointer is truncated and the guarantee may be proven false. The appropriate return function is PyLong_FromVoidPtr, this returns a PyLong if that is necessary to return the pointer without truncation. [GvR: note that this means that id() can now return a long on Win32 platforms. This *might* break some code...] - chunk #3: Ensure no overflow in raw_input(). Granted the user would have to pass in >2GB of data but it *is* a possible buffer overflow condition.
-
Fred Drake yazdı
tableii & friends markup family.
-
Guido van Rossum yazdı
-
Guido van Rossum yazdı
-
Guido van Rossum yazdı
-
Guido van Rossum yazdı
-
Guido van Rossum yazdı
-
Fred Drake yazdı
are and are not turned into bound methods; some confusion was noted by Andrew Dalke. In particular, it has to be noted that functions located on the class instance are not turned into any sort of method, only those which are found via the underlying class.
-
Fred Drake yazdı
As I really do not have anything better to do at the moment, I have written a patch to Python/marshal.c that prevents Python dumping core when trying to marshal stack bustingly deep (or recursive) data structure. It just throws an exception; even slightly clever handling of recursive data is what pickle is for... [Fred Drake:] Moved magic constant 5000 to a #define. This closes SourceForge patch #100645.
-
Fred Drake yazdı
Testing: test_array.py was also extended to check that one can set the full range of values for each of the integral signed and unsigned array types. This closes SourceForge patch #100506.
-
Fred Drake yazdı
The cause: Relatively recent (last month) patches to getargs.c added overflow checking to the PyArg_Parse*() integral formatters thereby restricting 'b' to unsigned char value and 'h','i', and 'l' to signed integral values (i.e. if the incoming value is outside of the specified bounds you get an OverflowError, previous it silently overflowed). The problem: This broke the array module (as Fredrik pointed out) because *its* formatters relied on the loose allowance of signed and unsigned ranges being able to pass through PyArg_Parse*()'s formatters. The fix: This patch fixes the array module to work with the more strict bounds checking now in PyArg_Parse*(). How: If the type signature of a formatter in the arraymodule exactly matches one in PyArg_Parse*(), then use that directly. If there is no equivalent type signature in PyArg_Parse*() (e.g. there is no unsigned int formatter in PyArg_Parse*()), then use the next one up and do some extra bounds checking in the array module. This partially closes SourceForge patch #100506.
-
Fred Drake yazdı
Documentation updates related to the addition of openpty() and forkpty().
-
Marc-André Lemburg yazdı
Perfect hash table generator. Outputs a Python extension module which provides access to the hash table (which is stored in static C data) using custom code. This module can currently only generates code for the ucnhash module, but can easily be adapted to produce perfect hash tables for other tasks where fast lookup in large tables is needed. By Bill Tutt.
-
Marc-André Lemburg yazdı
Generator for the new ucnhash module (ucnhash.h|c). Uses perfect_hash.py to create the ucnhash module.
-
Marc-André Lemburg yazdı
Utility extension module needed by perfect_hash.py By Bill Tutt.
-
Marc-André Lemburg yazdı
Patch to the standard unicode-escape codec which dynamically loads the Unicode name to ordinal mapping from the module ucnhash. By Bill Tutt.
-
Marc-André Lemburg yazdı
Added new ucnhash module by Bill Tutt.
-
Marc-André Lemburg yazdı
Added new ucnhash module.
-
Marc-André Lemburg yazdı
Updated test output.
-
Marc-André Lemburg yazdı
Added tests for the new Unicode character name support in the standard unicode-escape codec.
-
Fred Drake yazdı
This patch adds the openpty() and forkpty() library calls to posixmodule.c, when they are available on the target system. (glibc-2.1-based Linux systems, FreeBSD and BSDI at least, probably the other BSD-based systems as well.) Lib/pty.py is also rewritten to use openpty when available, but falls back to the old SGI method or the "manual" BSD open-a-pty code. Openpty() is necessary to use the Unix98 ptys under Linux 2.2, or when using non-standard tty names under (at least) BSDI, which is why I needed it, myself ;-) forkpty() is included for symmetry.
-
Marc-André Lemburg yazdı
MSVC project file for the new module ucnhash. This may have to be added to pcbuild.dsw with an dependancy on python16. By Bill Tutt.
-