cpython/Modules
Devin Jeanpierre c5bace2bf7 bpo-29505: Add fuzz tests for float(str), int(str), unicode(str) (#2878)
Add basic fuzz tests for a few common builtin functions.

This is an easy place to start, and these functions are probably safe.
We'll want to add more fuzz tests later.  Lets bootstrap using these.

While the fuzz tests are included in CPython and compiled / tested on a
very basic level inside CPython itself, the actual fuzzing happens as
part of oss-fuzz (https://github.com/google/oss-fuzz). The reason to
include the tests in CPython is to make sure that they're maintained
as part of the CPython project, especially when (as some eventually
will) they use internal implementation details in the test.

(This will be necessary sometimes because e.g. the fuzz test should
never enter Python's interpreter loop, whereas some APIs only expose
themselves publicly as Python functions.)

This particular set of changes is part of testing Python's builtins,
tracked internally at Google by b/37562550.

The _xxtestfuzz module that this change adds need not be shipped with binary distributions of Python.
2017-09-06 11:15:35 -07:00
..
_blake2 Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
_ctypes bpo-10746: Fix ctypes PEP 3118 type codes for c_long, c_bool, c_int (#31) 2017-08-28 14:08:49 +02:00
_decimal bpo-30923: Disable warning that has been part of -Wextra since gcc-7.0. (#3142) 2017-08-18 21:39:32 +02:00
_io Revert "bpo-30860: Consolidate stateful runtime globals." (#3379) 2017-09-05 21:43:08 -07:00
_multiprocessing bpo-30022: Get rid of using EnvironmentError and IOError (except test… (#1051) 2017-04-16 10:46:38 +03:00
_sha3 bpo-29464: Rename METH_FASTCALL to METH_FASTCALL|METH_KEYWORDS and make (#1955) 2017-07-03 21:20:15 +03:00
_sqlite bpo-30592: Fixed error messages for some builtins. (#1996) 2017-06-08 14:41:19 +03:00
_xxtestfuzz bpo-29505: Add fuzz tests for float(str), int(str), unicode(str) (#2878) 2017-09-06 11:15:35 -07:00
cjkcodecs bpo-31275: Small refactoring to silence a fall-through warning. (#3206) 2017-08-25 18:31:22 +02:00
clinic Regen Moduls/clinic/_ssl.c.h (GH-3320) 2017-09-04 15:45:18 -07:00
expat bpo-31170: Update libexpat from 2.2.3 to 2.2.4 (#3315) 2017-09-05 01:58:08 +02:00
zlib - Issue #29169: Update zlib to 1.2.10. 2017-01-31 13:49:48 +01:00
README
Setup.config.in
Setup.dist remove IRIX support (closes bpo-31341) (#3310) 2017-09-04 16:36:05 -07:00
_asynciomodule.c bpo-31185: Fixed miscellaneous errors in asyncio speedup module. (#3076) 2017-09-03 08:10:14 +03:00
_bisectmodule.c Issue #28792: Remove aliases from _bisect 2016-11-24 23:31:59 +01:00
_bz2module.c bpo-30022: Get rid of using EnvironmentError and IOError (except test… (#1051) 2017-04-16 10:46:38 +03:00
_codecsmodule.c bpo-24037: Add Argument Clinic converter `bool(accept={int})`. (#485) 2017-03-12 10:10:47 +02:00
_collectionsmodule.c Code clean-up. Remove unnecessary pre-increment before the loop starts. (#3312) 2017-09-04 16:07:06 -07:00
_cryptmodule.c
_csv.c Use NULL rather than 0. (#778) 2017-03-23 17:53:47 +02:00
_curses_panel.c Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
_cursesmodule.c [security] bpo-13617: Reject embedded null characters in wchar* strings. (#2302) 2017-06-28 08:30:06 +03:00
_datetimemodule.c Closes issue bpo-5288: Allow tzinfo objects with sub-minute offsets. (#2896) 2017-07-31 10:26:50 -04:00
_dbmmodule.c bpo-30022: Get rid of using EnvironmentError and IOError (except test… (#1051) 2017-04-16 10:46:38 +03:00
_elementtree.c bpo-31095: fix potential crash during GC (GH-2974) 2017-08-24 14:55:17 +09:00
_functoolsmodule.c bpo-31095: fix potential crash during GC (GH-2974) 2017-08-24 14:55:17 +09:00
_gdbmmodule.c bpo-30022: Get rid of using EnvironmentError and IOError (except test… (#1051) 2017-04-16 10:46:38 +03:00
_hashopenssl.c bpo-30102: Call OPENSSL_add_all_algorithms_noconf (#3112) 2017-09-05 15:47:11 +02:00
_heapqmodule.c
_json.c bpo-31095: fix potential crash during GC (GH-2974) 2017-08-24 14:55:17 +09:00
_localemodule.c [security] bpo-13617: Reject embedded null characters in wchar* strings. (#2302) 2017-06-28 08:30:06 +03:00
_lsprof.c Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
_lzmamodule.c Spelling fixes (#2902) 2017-08-03 09:00:59 +03:00
_math.c
_math.h
_opcode.c
_operator.c bpo-30592: Fixed error messages for some builtins. (#1996) 2017-06-08 14:41:19 +03:00
_pickle.c _pickle: Fix whichmodule() (#3358) 2017-09-05 14:30:16 -07:00
_posixsubprocess.c bpo-16500: Don't use string constants for os.register_at_fork() behavior (#1834) 2017-05-29 10:03:41 -07:00
_randommodule.c bpo-30592: Fixed error messages for some builtins. (#1996) 2017-06-08 14:41:19 +03:00
_scproxy.c Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
_sre.c bpo-30285: Optimize case-insensitive matching and searching (#1482) 2017-05-09 23:37:14 +03:00
_ssl.c bpo-29781: Fix SSLObject.version before handshake (#3364) 2017-09-05 21:55:40 -07:00
_ssl_data.h
_stat.c
_struct.c bpo-31095: fix potential crash during GC (GH-2974) 2017-08-24 14:55:17 +09:00
_testbuffer.c Expand the PySlice_GetIndicesEx macro. (#1023) 2017-04-08 09:53:51 +03:00
_testcapimodule.c bpo-31243: Fixed PyArg_ParseTuple failure checks. (#3171) 2017-08-29 11:58:27 +03:00
_testimportmultiple.c
_testmultiphase.c Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
_threadmodule.c Revert "bpo-30860: Consolidate stateful runtime globals." (#3379) 2017-09-05 21:43:08 -07:00
_tkinter.c Use NULL rather than 0. (#778) 2017-03-23 17:53:47 +02:00
_tracemalloc.c bpo-31018: Switch to #pragma pack from __declspec(align) (#2848) 2017-07-25 10:47:43 +02:00
_weakref.c Issue #28427: old keys should not remove new values from 2016-12-27 14:19:20 +01:00
_winapi.c Revert "bpo-30860: Consolidate stateful runtime globals." (#3379) 2017-09-05 21:43:08 -07:00
addrinfo.h
arraymodule.c bpo-24700: Add a fast path for comparing array.array of equal type (#3009) 2017-08-17 14:46:06 +02:00
atexitmodule.c bpo-28994: Fixed errors handling in atexit._run_exitfuncs(). (#2034) 2017-06-12 08:25:04 +03:00
audioop.c bpo-28261: Fixed err msgs where PyArg_ParseTuple is used to parse normal tuples. (#3119) 2017-08-20 18:35:36 +03:00
binascii.c bpo-9566: Fix some Windows x64 compiler warnings (#2492) 2017-07-26 15:17:57 -07:00
cmathmodule.c
config.c.in
errnomodule.c
faulthandler.c bpo-30557: faulthandler now correctly filters and displays exception codes on Windows (#1924) 2017-06-05 15:54:15 -07:00
fcntlmodule.c bpo-30022: Get rid of using EnvironmentError and IOError (except test… (#1051) 2017-04-16 10:46:38 +03:00
fpectlmodule.c remove IRIX support (closes bpo-31341) (#3310) 2017-09-04 16:36:05 -07:00
fpetestmodule.c Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
gc_weakref.txt
gcmodule.c Revert "bpo-30860: Consolidate stateful runtime globals." (#3379) 2017-09-05 21:43:08 -07:00
getaddrinfo.c
getbuildinfo.c bpo-27593: Get SCM build info from git instead of hg. (#446) 2017-03-04 00:19:55 -05:00
getnameinfo.c
getpath.c Issue #19398: Extra slash no longer added to sys.path components in case of 2016-11-11 12:06:38 +02:00
grpmodule.c [security] bpo-13617: Reject embedded null characters in wchar* strings. (#2302) 2017-06-28 08:30:06 +03:00
hashlib.h
hashtable.c
hashtable.h
itertoolsmodule.c bpo-30592: Fixed error messages for some builtins. (#1996) 2017-06-08 14:41:19 +03:00
ld_so_aix.in Issue #10656: Fix out-of-tree building on AIX 2016-11-20 07:56:37 +00:00
main.c Revert "bpo-30860: Consolidate stateful runtime globals." (#3379) 2017-09-05 21:43:08 -07:00
makesetup bpo-20210: Support the *disabled* marker in Setup files (GH-132) 2017-05-27 18:25:03 +02:00
makexp_aix
mathmodule.c bpo-29962: add math.remainder (#950) 2017-04-05 18:34:27 +01:00
md5module.c Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
mmapmodule.c Expand the PySlice_GetIndicesEx macro. (#1023) 2017-04-08 09:53:51 +03:00
nismodule.c [security] bpo-13617: Reject embedded null characters in wchar* strings. (#2302) 2017-06-28 08:30:06 +03:00
ossaudiodev.c bpo-30022: Get rid of using EnvironmentError and IOError (except test… (#1051) 2017-04-16 10:46:38 +03:00
overlapped.c bpo-28261: Fixed err msgs where PyArg_ParseTuple is used to parse normal tuples. (#3119) 2017-08-20 18:35:36 +03:00
parsermodule.c bpo-30070: Fixed leaks and crashes in errors handling in the parser module. (#1131) 2017-04-19 21:09:21 +03:00
posixmodule.c bpo-31343: Include sys/sysmacros.h (#3318) 2017-09-05 15:53:09 +02:00
posixmodule.h
pwdmodule.c [security] bpo-13617: Reject embedded null characters in wchar* strings. (#2302) 2017-06-28 08:30:06 +03:00
pyexpat.c bpo-28411: Remove "modules" field from Py_InterpreterState. (#1638) 2017-09-04 17:54:09 -06:00
readline.c bpo-30946: Remove obsolete fallback code in readline module (#2738) 2017-07-18 17:05:03 +02:00
resource.c bpo-20185: Convert the resource moduel to Argument Clinic. (#545) 2017-03-12 13:08:30 +02:00
rotatingtree.c
rotatingtree.h
selectmodule.c bpo-30061: Check if PyObject_Size()/PySequence_Size()/PyMapping_Size() (#1096) 2017-04-19 20:03:52 +03:00
sha1module.c Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
sha256module.c Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
sha512module.c Removed redundant Argument Clinic directives. 2017-02-04 11:53:22 +02:00
signalmodule.c bpo-30808: Use _Py_atomic API for concurrency-sensitive signal state (#2417) 2017-07-17 12:25:19 +02:00
socketmodule.c remove IRIX support (closes bpo-31341) (#3310) 2017-09-04 16:36:05 -07:00
socketmodule.h Add sockaddr_alg to sock_addr_t (#234) 2017-02-22 12:12:00 +01:00
spwdmodule.c [security] bpo-13617: Reject embedded null characters in wchar* strings. (#2302) 2017-06-28 08:30:06 +03:00
sre.h Issue #28765: _sre.compile() now checks the type of groupindex and indexgroup 2016-11-22 23:04:39 +01:00
sre_constants.h bpo-30215: Make re.compile() locale agnostic. (#1361) 2017-05-05 08:53:40 +03:00
sre_lib.h bpo-30215: Make re.compile() locale agnostic. (#1361) 2017-05-05 08:53:40 +03:00
symtablemodule.c Issue #20186: Converted the symtable module to Argument Clinic. 2017-02-04 12:13:20 +02:00
syslogmodule.c Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
termios.c Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
testcapi_long.h
timemodule.c bpo-28261: Fixed err msgs where PyArg_ParseTuple is used to parse normal tuples. (#3119) 2017-08-20 18:35:36 +03:00
tkappinit.c
tkinter.h
unicodedata.c bpo-30736: upgrade to Unicode 10.0 (#2344) 2017-06-22 22:31:08 -07:00
unicodedata_db.h bpo-30736: upgrade to Unicode 10.0 (#2344) 2017-06-22 22:31:08 -07:00
unicodename_db.h bpo-30736: upgrade to Unicode 10.0 (#2344) 2017-06-22 22:31:08 -07:00
winreparse.h
xxlimited.c merge 3.5 (#29398) 2017-01-31 23:31:10 -08:00
xxmodule.c
xxsubtype.c
zipimport.c bpo-31291: Fixed an assertion failure in zipimport.zipimporter.get_data() (#3226) 2017-08-29 20:40:15 +03:00
zlibmodule.c bpo-9566: Fix some Windows x64 compiler warnings (#2492) 2017-07-26 15:17:57 -07:00

README

Source files for standard library extension modules,
and former extension modules that are now builtin modules.