50 Commits

Author SHA1 Message Date
Pablo Galindo
27ac19cca2 bpo-41976: Fix the fallback to gcc of ctypes.util.find_library when using gcc>9 (GH-22598) 2020-10-08 19:31:19 +01:00
Pablo Galindo
293dd23477 Remove binding of captured exceptions when not used to reduce the chances of creating cycles (GH-17246)
Capturing exceptions into names can lead to reference cycles though the __traceback__ attribute of the exceptions in some obscure cases that have been reported previously and fixed individually. As these variables are not used anyway, we can remove the binding to reduce the chances of creating reference cycles.

See for example GH-13135
2019-11-19 21:34:03 +00:00
Ray Donnelly
d06d345f04 bpo-33281: Fix ctypes.util.find_library regression on macOS (GH-6625) 2018-05-01 22:31:36 -04:00
Mariatta
c0919c27c6 bpo-26439: Convert %s in Lib/ctypes/_aix.py to f-strings. (GH-4986) 2017-12-22 23:39:03 -08:00
Michael Felt
c5ae169e1b bpo-26439 Fix ctypes.util.find_library failure on AIX (#4507)
Implement find_library() support in ctypes/util for AIX.

Add some AIX specific tests.
2017-12-19 13:58:49 +01:00
Martin Panter
a76f014278 Remove disabled test code
Loading Unix libraries via getattr() was disabled before ctypes was added to
Python.
2016-11-05 02:49:20 +00:00
Larry Hastings
10108a7b9a Issue #27355: Removed support for Windows CE. It was never finished,
and Windows CE is no longer a relevant platform for Python.
2016-09-05 15:11:23 -07:00
Vinay Sajip
82df3b3071 Closes #9998: Allowed find_library to search additional locations for libraries. 2016-08-17 16:20:07 +01:00
Martin Panter
bd305e497f Issue #22636: Merge ctypes.util from 3.5 2016-06-14 04:31:14 +00:00
Martin Panter
e1b3431cef Issue #22636: Handle OSError from subprocess, e.g. if command not found 2016-06-14 04:08:30 +00:00
Martin Panter
1db314bd5c Issue #22636: Merge ctypes.util shell injection fixes from 3.5 2016-06-14 02:59:21 +00:00
Martin Panter
bfb15ab711 Issue #22636: avoid using a shell in the ctypes.util module
Replace os.popen() with subprocess.Popen. Based on patch by Victor Stinner.

If the "gcc", "cc" or "objdump" command is not available, the code was
supposed to raise an OSError exception. But there was a bug in the code. The
shell code returns the exit code 10 if the required command is missing, and the
code tries to check for the status 10. The problem is that os.popen() doesn't
return the exit code directly, but a status which should be processed by
os.WIFEXITED() and os.WEXITSTATUS(). In practice, the exception was never
raised. The OSError exception was not documented and ctypes.util.find_library()
is expected to return None if the library is not found.
2016-06-14 01:27:11 +00:00
Meador Inge
f1e2671fdf Issue #24114: Fix an uninitialized variable in ctypes.util.
The bug only occurs on SunOS when the ctypes implementation searches
for the `crle` program.  Patch by Xiang Zhang.  Tested on SunOS by
Kees Bos.
2016-04-30 22:17:22 -05:00
Meador Inge
8988ebf2a7 Issue #24114: Fix an uninitialized variable in ctypes.util.
The bug only occurs on SunOS when the ctypes implementation searches
for the `crle` program.  Patch by Xiang Zhang.  Tested on SunOS by
Kees Bos.
2016-04-30 21:56:59 -05:00
Martin Panter
32f2eb4941 Issue #21042: Revert Linux find_library() to return just filename
This reverts most of revision 3092cf163eb4. The change worked on x86
architectures, but did not work on ARM, probably due to extra ABI flags in
the ldconfig output.
2016-03-17 07:50:22 +00:00
Martin Panter
b9f3114d42 Issue #21042: Return full path in ctypes.util.find_library() on Linux
Patch by Tamás Bence Gedai.
2016-03-10 01:06:23 +00:00
Steve Dower
959ee7c200 Issue #23606: Disable ctypes.util.find_library("c") on Windows so tests are skipped while we figure out how best to approach the CRT change 2015-03-10 09:56:38 -07:00
Steve Dower
65e4cb10d9 Issue #22919: Windows build updated to support VC 14.0 (Visual Studio 2015), which will be used for the official 3.5 release. 2014-11-22 12:54:57 -08:00
Victor Stinner
7fa767e517 Issue #20976: pyflakes: Remove unused imports 2014-03-20 09:16:38 +01:00
Nick Coghlan
1889623e1a Issue #19734: ctypes resource management fixes 2013-11-24 12:53:50 +10:00
doko@ubuntu.com
bcaddf6382 - Issue #17754: Make ctypes.util.find_library() independent of the locale. 2013-05-15 18:04:50 +02:00
doko@ubuntu.com
ef535584a9 - Issue #17754: Make ctypes.util.find_library() independent of the locale. 2013-05-15 18:02:13 +02:00
Giampaolo Rodola'
0166a283f6 modernize some modules' code by replacing OSError->ENOENT/ENOTDIR/EPERM/EEXIST occurrences with the corresponding pep-3151 exceptions (FileNotFoundError, NotADirectoryError, etc.) 2013-02-12 15:14:17 +01:00
Benjamin Peterson
cfe34744e3 fix find_library on Solaris (closes #5289) 2013-02-03 19:25:11 -05:00
Larry Hastings
605a62ddb1 Issue #15118: Change return value of os.uname() and os.times() from
plain tuples to immutable iterable objects with named attributes
(structseq objects).
2012-06-24 04:33:36 -07:00