Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
(cherry picked from commit 7e19e417b5)
Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@protonmail.com>
- the insert statement should have five placeholders, not four
- missing ... in the multiline row list
(cherry picked from commit 2fbee85931)
Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@protonmail.com>
This allows opening stub files by double clicking on them in the Finder.
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
(cherry picked from commit 06fc249135)
Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@protonmail.com>
When keyword argument name is an instance of a str subclass with
overloaded methods __eq__ and __hash__, the former code could not find
the name of an extraneous keyword argument to report an error, and
_PyArg_UnpackKeywords() returned success without setting the
corresponding cell in the linearized arguments array. But since the number
of expected initialized cells is determined as the total number of passed
arguments, this lead to reading NULL as a keyword parameter value, that
caused SystemError or crash or other undesired behavior..
(cherry picked from commit ebad53a4dc)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Now the tests are correctly reported as skipped if sqlite3 is not available.
(cherry picked from commit 152eb90311)
Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@protonmail.com>
* syslog_get_argv() swallows exceptions, but not in all cases.
* if ident is non UTF-8 encodable, syslog.openlog() fails after setting the
global reference to ident. Now the C string saved internally in the previous
call to openlog() points to the freed memory.
* PySys_Audit() can crash if ident is NULL.
* There may be a race condition with syslog.syslog(), because the global
reference to ident is decrefed before setting the new value.
* Possible use of freed memory if syslog.openlog() is called while
the GIL is released in syslog.syslog().
(cherry picked from commit 68c555a50a)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
For the continuation lines, "..." should present as secondary prompt
(cherry picked from commit de28ee8f75)
Co-authored-by: Chenwei Xiao <chanvinxiao@163.com>
Co-authored-by: Chenwei Xiao <chanvinxiao@163.com>
Some are missing, a few placed after the ')'.
One ') was missing.
(cherry picked from commit c944649ffc)
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
The wrapper macros are more readable and match the form recommended in
the OpenSSL documentation. They also slightly less error-prone, as the
mapping of arguments to SSL_CTX_ctrl is not always clear. (Though in
this case it's straightforward.)
https://www.openssl.org/docs/man1.1.1/man3/SSL_CTX_get_max_proto_version.html
(cherry picked from commit 936f71e5d4)
Co-authored-by: David Benjamin <davidben@davidben.net>
Added in 339fd46cb7 - but as noted in a comment, the test only tests ThreadPoolExecutor.
(cherry picked from commit 3f2dd0a7c0)
Co-authored-by: Florian Bruhin <me@the-compiler.org>
The included asdl file was moved from 'below' to 'above' in 3.9.
(cherry picked from commit 7b617be4ab)
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
When binding a unix socket to an empty address on Linux, the socket is
automatically bound to an available address in the abstract namespace.
>>> s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
>>> s.bind("")
>>> s.getsockname()
b'\x0075499'
Since python 3.9, the socket is bound to the one address:
>>> s.getsockname()
b'\x00'
And trying to bind multiple sockets will fail with:
Traceback (most recent call last):
File "/home/nsoffer/src/cpython/Lib/test/test_socket.py", line 5553, in testAutobind
s2.bind("")
OSError: [Errno 98] Address already in use
Added 2 tests:
- Auto binding empty address on Linux
- Failing to bind an empty address on other platforms
Fixes f6b3a07b7d (bpo-44493: Add missing terminated NUL in sockaddr_un's length (GH-26866)
(cherry picked from commit c22f134211)
Co-authored-by: Nir Soffer <nsoffer@redhat.com>