Benjamin Peterson
e249dcab7a
merge 3.2
2012-02-21 11:09:13 -05:00
Benjamin Peterson
69e9727657
ensure no one tries to hash things before the random seed is found
2012-02-21 11:08:50 -05:00
Petri Lehtinen
4fe85abab9
sqlite3: Fix 64-bit integer handling in user functions on 32-bit architectures
...
Closes #8033 .
2012-02-21 13:49:50 +02:00
Georg Brandl
09a7c72cad
Merge from 3.1: Issue #13703 : add a way to randomize the hash values of basic types (str, bytes, datetime)
...
in order to make algorithmic complexity attacks on (e.g.) web apps much more complicated.
The environment variable PYTHONHASHSEED and the new command line flag -R control this
behavior.
2012-02-20 21:31:46 +01:00
Georg Brandl
2daf6ae249
Issue #13703 : add a way to randomize the hash values of basic types (str, bytes, datetime)
...
in order to make algorithmic complexity attacks on (e.g.) web apps much more complicated.
The environment variable PYTHONHASHSEED and the new command line flag -R control this
behavior.
2012-02-20 19:54:16 +01:00
Antoine Pitrou
2f5a163dfc
Issue #13014 : Fix a possible reference leak in SSLSocket.getpeercert().
2012-02-15 22:25:27 +01:00
Antoine Pitrou
f5f1fe0cb5
Issue #13015 : Fix a possible reference leak in defaultdict.__repr__.
...
Patch by Suman Saha.
2012-02-15 02:42:46 +01:00
Petri Lehtinen
4a84f58143
Issue #10811 : Fix recursive usage of cursors. Instead of crashing, raise a ProgrammingError now.
2012-02-06 22:04:18 +02:00
Charles-François Natali
6d0d24e359
Issue #13817 : After fork(), reinit the ad-hoc TLS implementation earlier to fix
...
a random deadlock when fork() is called in a multithreaded process in debug
mode, and make PyOS_AfterFork() more robust.
2012-02-02 20:31:42 +01:00
Petri Lehtinen
023fe334bb
sqlite3: Handle strings with embedded zeros correctly
...
Closes #13676 .
2012-02-01 22:18:35 +02:00
Gregory P. Smith
ab32066e65
Fix zip_import.c's read_directory() to use appropriate types for the values
...
being read from the header vs the values being used by fseek and ftell
(Py_ssize_t for those) and how they are computed. Py_ssize_t is used for
actual file offsets so that files greater than 2gigs could be supported.
Updates the Py_BuildValue format string to match (including several existing
wrong 'i's that should have been 'l's).
2012-01-30 15:17:33 -08:00
Antoine Pitrou
1334884ff2
Issue #13848 : open() and the FileIO constructor now check for NUL characters in the file name.
...
Patch by Hynek Schlawack.
2012-01-29 18:36:34 +01:00
Antoine Pitrou
75ff65ef96
Issue #13806 : The size check in audioop decompression functions was too strict and could reject valid compressed data.
...
Patch by Oleg Plakhotnyuk.
2012-01-28 22:01:59 +01:00
Antoine Pitrou
3f366314e8
Issue #13885 : CVE-2011-3389: the _ssl module would always disable the CBC IV attack countermeasure.
2012-01-27 09:50:45 +01:00
Antoine Pitrou
f2bf8a6ac5
Issue #13885 : CVE-2011-3389: the _ssl module would always disable the CBC IV attack countermeasure.
2012-01-27 09:48:47 +01:00
Meador Inge
65992c1c01
- Issue #13840 : Fix ctypes.create_string_buffer exception message and docs.
2012-01-26 08:44:00 -06:00
Benjamin Peterson
7fa5a99b06
merge heads
2012-01-24 09:07:06 -05:00
Antoine Pitrou
5311c1d7ab
Issue #13772 : In os.symlink() under Windows, do not try to guess the link
...
target's type (file or directory). The detection was buggy and made the
call non-atomic (therefore prone to race conditions).
2012-01-24 08:59:28 +01:00
Benjamin Peterson
91eef984fd
fix declaration style
2012-01-22 20:04:46 -05:00
Gregory P. Smith
4842efcf97
Fix FreeBSD, NetBSD and OpenBSD behavior of the issue #8052 fix.
2012-01-21 21:01:24 -08:00
Gregory P. Smith
e9b7cab1da
Another issue #8052 bugfix (related to previous commit).
...
"oops" while rearranging the #defines.
2012-01-21 15:19:11 -08:00
Gregory P. Smith
e3f7848bc5
Bugfix for issue #8052 fix on *BSD variants.
...
Many lack readdir64, use readdir. Only use readdir64 on solaris where
it is required to work around a solaris bug.
2012-01-21 15:16:17 -08:00
Gregory P. Smith
8facece99a
Fixes issue #8052 : The posix subprocess module's close_fds behavior was
...
suboptimal by closing all possible file descriptors rather than just
the open ones in the child process before exec().
It now closes only the open fds when it is possible to safely determine what
those are.
2012-01-21 14:01:08 -08:00
Gregory P. Smith
12fdca59bb
Avoid the compiler warning about the unused return value.
2012-01-21 12:31:25 -08:00
Antoine Pitrou
fc1b6f0078
Fix the _io module leaking references when a sub-interpreter is created.
2012-01-18 16:13:56 +01:00
Ezio Melotti
acd5f7bceb
#13665 : s/string/bytes/ in error message.
2012-01-18 05:42:39 +02:00
Antoine Pitrou
2f828f2c88
Test running of code in a sub-interpreter
...
(prelude to issue #6531 ).
2012-01-18 00:21:11 +01:00
Charles-François Natali
366999a011
Issue #9975 : socket: Fix incorrect use of flowinfo and scope_id. Patch by
...
Vilmos Nebehaj.
2012-01-02 15:47:29 +01:00
Ross Lagerwall
667d75d059
Don't redefine _GNU_SOURCE if it's already defined.
2011-12-22 09:45:53 +02:00
Ross Lagerwall
031bf95d32
Issue #11006 : Don't issue low level warning in subprocess when pipe2() fails.
2011-12-22 09:07:30 +02:00
Victor Stinner
bd206e27a4
Handle correctly _Py_fopen() error: don't replace the exception
2011-12-18 21:04:17 +01:00
Victor Stinner
e83f899364
Issue #13530 : Document os.lseek() result
...
Patch written by Jérémy Anger.
2011-12-17 23:15:09 +01:00
Victor Stinner
136ea49b39
Issue #10951 : Fix a compiler warning in timemodule.c
2011-12-17 22:37:18 +01:00
Victor Stinner
94ba691ed3
main() now displays an error message before exiting if a command line argument
...
cannot be decoded
2011-12-16 23:48:31 +01:00
Antoine Pitrou
c345ce1a69
Issue #10350 : Read and save errno before calling a function which might overwrite it.
...
Original patch by Hallvard B Furuseth.
2011-12-16 12:28:32 +01:00
Charles-François Natali
10db4dec61
Issue #4028 : Make multiprocessing build on SunOS.
2011-12-14 18:39:09 +01:00
Alexandre Vassalotti
3bfc65a25b
Issue #13505 : Make pickling of bytes object compatible with Python 2.
...
Initial patch by sbt.
2011-12-13 13:08:09 -05:00
Florent Xicluna
0e686cbb7d
Fix docstring typo.
2011-12-09 23:41:19 +01:00
Victor Stinner
720f34a3e8
Issue #5905 : time.strftime() is now using the locale encoding, instead of
...
UTF-8, if the wcsftime() function is not available.
2011-12-09 20:19:24 +01:00
Charles-François Natali
6613c18ea2
Issue #13415 : Test in configure if unsetenv() has a return value or not.
2011-11-27 12:41:06 +01:00
Benjamin Peterson
06403cff16
decref correct object
2011-11-22 23:57:23 -06:00
Benjamin Peterson
4bb867d3ec
plug refleak
2011-11-22 23:12:49 -06:00
Antoine Pitrou
116d6b98bf
Issue #13458 : Fix a memory leak in the ssl module when decoding a certificate with a subjectAltName.
...
Patch by Robert Xiao.
2011-11-23 01:39:19 +01:00
Victor Stinner
60b385e813
Issue #13415 : os.unsetenv() doesn't ignore errors anymore.
2011-11-22 22:01:28 +01:00
Victor Stinner
ab1d16b456
Issue #13093 : Fix error handling on PyUnicode_EncodeDecimal()
...
* Add tests for PyUnicode_EncodeDecimal() and PyUnicode_TransformDecimalToASCII()
* Remove the unused "e" variable in replace()
2011-11-22 01:45:37 +01:00
Antoine Pitrou
58fcf9f801
Issue #13322 : Fix BufferedWriter.write() to ensure that BlockingIOError is
...
raised when the wrapped raw file is non-blocking and the write would block.
Previous code assumed that the raw write() would raise BlockingIOError, but
RawIOBase.write() is defined to returned None when the call would block.
Patch by sbt.
2011-11-21 20:16:44 +01:00
Florent Xicluna
992d9e081f
Fix few typos.
2011-11-11 19:35:42 +01:00
Ezio Melotti
98d2c0aba3
#13379 : update Unicode version in unicodedata docstrings and comments.
2011-11-10 09:36:34 +02:00
Ross Lagerwall
dcfde5aac9
Issue #13339 : Fix compile error in posixmodule.c due to missing semicolon.
...
Thanks to Robert Xiao.
2011-11-04 07:09:14 +02:00
Victor Stinner
7ab4192e82
Issue #12342 : Improve _tkinter error message on unencodable character
2011-11-04 00:36:46 +01:00
Victor Stinner
b3bc7e764d
Issue #10570 : curses.putp() is now expecting a byte string, instead of a
...
Unicode string.
This is an incompatible change, but putp() is used to emit terminfo commands,
which are bytes strings, not Unicode strings.
2011-11-03 20:35:40 +01:00
Victor Stinner
2662133a05
Issue #10570 : curses.tigetstr() is now expecting a byte string, instead of a
...
Unicode string.
This is an incompatible change, but the previous behaviour was completly wrong.
2011-11-02 23:45:29 +01:00
Florent Xicluna
91d5193b3a
Closes #2892 : preserve iterparse events in case of SyntaxError.
2011-11-01 23:31:09 +01:00
Florent Xicluna
c45fb25fba
Issue #13255 : wrong docstrings in array module.
2011-10-24 13:14:55 +02:00
Senthil Kumaran
202a3c422b
3.2 - Fix Issue 12604 - Use a proper no-op macro expansion for VTRACE macro in _sre.c
2011-10-20 02:15:36 +08:00
Victor Stinner
8d91d454d5
Issue #10653 : Fix time.strftime() on Windows, check for invalid format strings
2011-10-16 23:45:39 +02:00
Victor Stinner
c1f32ca0ad
Issue #10653 : On Windows, use strftime() instead of wcsftime() because
...
wcsftime() doesn't format time zone correctly.
2011-10-14 02:36:13 +02:00
Nadeem Vawda
d41a98bdd9
Issue #13159 : Replace FileIO's quadratic-time buffer growth algorithm with a linear-time one.
...
Also fix the bz2 module, whose classes used the same algorithm.
2011-10-13 13:34:16 +02:00
Charles-François Natali
42c28cdd1d
Issue #13070 : Fix a crash when a TextIOWrapper caught in a reference cycle
...
would be finalized after the reference to its underlying BufferedRWPair's
writer got cleared by the GC.
2011-10-05 19:53:43 +02:00
Antoine Pitrou
ed8ba14441
Remove all other uses of the C tolower()/toupper() which could break with a Turkish locale.
2011-10-04 13:50:21 +02:00
Antoine Pitrou
1665d2c75f
Issue #13099 : Fix sqlite3.Cursor.lastrowid under a Turkish locale.
...
Reported and diagnosed by Thomas Kluyver.
2011-10-04 13:35:28 +02:00
Antoine Pitrou
1e44fecc52
Issue #13087 : BufferedReader.seek() now always raises UnsupportedOperation
...
if the underlying raw stream is unseekable, even if the seek could be
satisfied using the internal buffer. Patch by John O'Connor.
2011-10-04 12:26:20 +02:00
Antoine Pitrou
ffd41d9f10
Issue #7689 : Allow pickling of dynamically created classes when their
...
metaclass is registered with copyreg. Patch by Nicolas M. Thiéry and
Craig Citro.
2011-10-04 09:23:04 +02:00
Meador Inge
1efb33a682
Issue #12881 : ctypes: Fix segfault with large structure field names.
2011-10-03 21:44:22 -05:00
Antoine Pitrou
d8c347a8de
Issue #13034 : When decoding some SSL certificates, the subjectAltName extension could be unreported.
2011-10-01 19:20:25 +02:00
Charles-François Natali
5a4a109694
Issue #13058 : ossaudiodev: fix a file descriptor leak on error. Patch by Thomas
...
Jarosch.
2011-09-29 19:46:37 +02:00
Meador Inge
b86ecf4bd1
Issue #13013 : ctypes: Fix a reference leak in PyCArrayType_from_ctype.
...
Thanks to Suman Saha for finding the bug and providing a patch.
2011-09-27 20:45:30 -05:00
Mark Dickinson
b2f6bc72a2
Issue #12973 : Fix itertools bug caused by signed integer overflow. Thanks Stefan Krah.
2011-09-24 08:56:09 +01:00
Benjamin Peterson
adde86d0e3
fix compiler compliant about \0 not being an opcode
2011-09-23 13:41:41 -04:00
Jesus Cea
4507e6456e
Close #13022 : _multiprocessing.recvfd() doesn't check that file descriptor was actually received
2011-09-21 03:53:25 +02:00
Amaury Forgeot d'Arc
bbe46d63ee
Issue #12483 : ctypes: Fix a crash when the destruction of a callback
...
object triggers the garbage collector.
2011-09-12 21:03:36 +02:00
Jesus Cea
ab7060e502
Close #12950 : multiprocessing "test_fd_transfer" fails under OpenIndiana
2011-09-10 04:04:09 +02:00
Benjamin Peterson
f22913b8c3
cast to getter
2011-09-06 07:55:34 -04:00
Benjamin Peterson
f6f3a35447
add a __dict__ descr for IOBase ( closes #12878 )
2011-09-03 09:26:20 -04:00
Amaury Forgeot d'Arc
02dd539dbb
Issue #12764 : Fix a crash in ctypes when the name of a Structure field is not
...
a string.
2011-09-02 20:39:40 +02:00
Amaury Forgeot d'Arc
faecc38809
Issue #11241 : subclasses of ctypes.Array can now be subclassed.
2011-08-30 22:02:51 +02:00
Amaury Forgeot d'Arc
326e189410
Issue #9651 : Fix a crash when ctypes.create_string_buffer(0) was passed to
...
some functions like file.write().
2011-08-30 21:40:20 +02:00
Antoine Pitrou
55549ec476
Issue #12847 : Fix a crash with negative PUT and LONG_BINPUT arguments in
...
the C pickle implementation.
2011-08-30 00:27:10 +02:00
Antoine Pitrou
82be19f889
Issue #11564 : Avoid crashes when trying to pickle huge objects or containers
...
(more than 2**31 items). Instead, in most cases, an OverflowError is raised.
2011-08-29 23:09:33 +02:00
Charles-François Natali
aa26b27503
Issue #12287 : Fix a stack corruption in ossaudiodev module when the FD is
...
greater than FD_SETSIZE.
2011-08-28 17:51:43 +02:00
Nadeem Vawda
524148ad7a
Issue #12839 : Fix crash in zlib module due to version mismatch.
...
If the version of zlib used to compile the zlib module is incompatible
with the one that is actually linked in, then calls into zlib will fail.
This can leave attributes of the z_stream uninitialized, so we must take
care to avoid segfaulting by trying to use an invalid pointer.
Fix by Richard M. Tew.
2011-08-28 11:26:46 +02:00
Antoine Pitrou
bcb39d4846
Issue #11657 : Fix sending file descriptors over 255 over a multiprocessing Pipe.
...
Also added some tests.
2011-08-23 19:46:22 +02:00
Antoine Pitrou
e05565ec5a
Issue #12213 : Fix a buffering bug with interleaved reads and writes that
...
could appear on BufferedRandom streams.
2011-08-20 14:39:23 +02:00
Ezio Melotti
388c945e97
#12725 : fix working. Patch by Ben Hayden.
2011-08-14 08:28:57 +03:00
Antoine Pitrou
f6c7a8595e
Issue #12687 : Fix a possible buffering bug when unpickling text mode (protocol 0, mostly) pickles.
2011-08-11 21:04:02 +02:00
Benjamin Peterson
fc9bbd1692
dosmodule is, thankfully, no more
2011-08-04 11:07:42 -05:00
Ross Lagerwall
d98646e430
Issue #12607 : In subprocess, fix issue where if stdin, stdout or stderr is
...
given as a low fd, it gets overwritten.
2011-07-27 07:16:31 +02:00
Antoine Pitrou
e96ec68101
Issue #12591 : Allow io.TextIOWrapper to work with raw IO objects (without
...
a read1() method), and add an undocumented *write_through* parameter to
mandate unbuffered writes.
2011-07-23 21:46:35 +02:00
Barry Warsaw
d460a76e9e
- Issue #10309 : Define _GNU_SOURCE so that mremap() gets the proper
...
signature. Without this, architectures where sizeof void* != sizeof int are
broken. Patch given by Hallvard B Furuseth.
2011-07-19 18:28:30 -04:00
Antoine Pitrou
8391cf4e1d
Issue #11321 : Fix a crash with multiple imports of the _pickle module when
...
embedding Python. Patch by Andreas Stührk.
2011-07-15 21:01:21 +02:00
Antoine Pitrou
cb4ae815b5
Raise ValueError when attempting to set the _CHUNK_SIZE attribute of a TextIOWrapper to a huge value, not TypeError.
2011-07-13 21:07:49 +02:00
Antoine Pitrou
b9ac25d1c3
Issue #12440 : When testing whether some bits in SSLContext.options can be
...
reset, check the version of the OpenSSL headers Python was compiled against,
rather than the runtime version of the OpenSSL library.
2011-07-08 18:47:06 +02:00
Victor Stinner
c655a726db
Issue #9611 , #9015 : FileIO.read() clamps the length to INT_MAX on Windows.
2011-07-05 11:31:49 +02:00
Senthil Kumaran
7d80bd1909
Fix closes issue 11568 - update select.epoll.register docstring with mention of correct behavior.
2011-06-26 23:48:23 -07:00
Ross Lagerwall
dbfb9b89db
Issue 12404: Remove C89 incompatible code from mmap module.
...
Patch by Akira Kitada.
2011-06-25 10:02:37 +02:00
Victor Stinner
26de69dff8
posixmodule.c: fix function name in argument parsing
...
Fix os.fchown() and os.open()
Remove also trailing spaces and replace tabs by spaces.
2011-06-17 15:15:38 +02:00
Brian Curtin
c8be84077b
Correct completely broken os.stat behavior on Windows XP.
...
After 1a3e8db28d49, Windows XP could not os.stat at all due to raising
immediately when GetFinalPathNameByHandle wasn't available (pre-Vista).
The proper behavior in that situation is to just not attempt a traversal
rather than outright rejecting.
This change additionally handles a failed malloc by setting the error code
and returning false.
Patch by Hirokazu Yamamoto.
2011-06-14 09:52:50 -05:00
Brian Curtin
a87d586fd6
branch merge?
2011-06-13 16:10:32 -05:00
Brian Curtin
d25aef55c8
Fix #12084 . os.stat on Windows wasn't working properly with relative symlinks.
...
Use of DeviceIoControl to obtain the symlink path via the reparse tag was
removed. The code now uses GetFinalPathNameByHandle in the case of a
symbolic link and works properly given the added test which creates a symbolic
link and calls os.stat on it from multiple locations.
Victor Stinner also noticed an issue with os.lstat following the os.stat
code path when being passed bytes. The posix_lstat function was adjusted to
properly hook up win32_lstat instead of the previous STAT macro (win32_stat).
2011-06-13 15:16:04 -05:00
Brian Curtin
95d028fd18
Correction to 88e318166eaf - Issue #11583
...
Rather than wrapping the C _isdir function in a Python function,
just import the C _isdir function directly. Additionally, add in the
docstring which was left out.
2011-06-09 09:10:38 -05:00