Victor Stinner
beea26b57e
bpo-39353: Deprecate the binhex module (GH-18025)
...
Deprecate binhex4 and hexbin4 standards. Deprecate the binhex module
and the following binascii functions:
* b2a_hqx(), a2b_hqx()
* rlecode_hqx(), rledecode_hqx()
* crc_hqx()
2020-01-22 20:44:22 +01:00
Sergey Fedoseev
1c5e68e714
bpo-34749: Improved performance of binascii.a2b_base64(). (GH-9444)
...
https://bugs.python.org/issue34749
2019-07-14 05:15:32 -07:00
Gregory P. Smith
0c2f930564
bpo-22385: Support output separators in hex methods. ( #13578 )
...
* bpo-22385: Support output separators in hex methods.
Also in binascii.hexlify aka b2a_hex.
The underlying implementation behind all hex generation in CPython uses the
same pystrhex.c implementation. This adds support to bytes, bytearray,
and memoryview objects.
The binascii module functions exist rather than being slated for deprecation
because they return bytes rather than requiring an intermediate step through a
str object.
This change was inspired by MicroPython which supports sep in its binascii
implementation (and does not yet support the .hex methods).
https://bugs.python.org/issue22385
2019-05-29 11:46:58 -07:00
Marcel Plch
33e71e01e9
bpo-31862: Port binascii to PEP 489 multiphase initialization (GH-4108)
2019-05-22 13:51:25 +02:00
Serhiy Storchaka
d53fe5f407
bpo-36254: Fix invalid uses of %d in format strings in C. (GH-12264)
2019-03-13 22:59:55 +02:00
Tal Einat
1fba2ffc37
bpo-34736: improve error message for invalid length b64decode inputs (GH-9563)
...
Improvements:
1. Include the number of valid data characters in the error message.
2. Mention "number of data characters" rather than "length".
https://bugs.python.org/issue34736
2018-09-27 22:57:22 -07:00
Tal Einat
1b85c71a21
bpo-33770: improve base64 exception message for encoded inputs of invalid length ( #7416 )
2018-06-10 10:01:50 +03:00
Sergey Fedoseev
6b5df906af
bpo-32147: Improved perfomance of binascii.unhexlify(). (GH-4586)
2018-02-26 22:35:41 +02:00
Segev Finer
679b566622
bpo-9566: Fix some Windows x64 compiler warnings ( #2492 )
...
* bpo-9566: Silence liblzma warnings
* bpo-9566: Silence tcl warnings
* bpo-9566: Silence tk warnings
* bpo-9566: Silence tix warnings
* bpo-9566: Fix some library warnings
* bpo-9566: Fix msvcrtmodule.c warnings
* bpo-9566: Silence _bz2 warnings
* bpo-9566: Fixed some _ssl warnings
* bpo-9566: Fix _msi warnings
* bpo-9566: Silence _ctypes warnings
* Revert "bpo-9566: Fixed some _ssl warnings"
This reverts commit a639001c94
.
* bpo-9566: Also consider NULL as a possible error in HANDLE_return_converter
* bpo-9566: whitespace fixes
2017-07-26 15:17:57 -07:00
Xiang Zhang
13f1f423fa
bpo-30103: Allow Uuencode in Python using backtick as zero instead of space ( #1326 )
2017-05-03 11:16:21 +08:00
Xiang Zhang
1374dbb694
restore *data* parameter of binascii.b2a_base64 to positional-only ( #1352 )
2017-05-01 13:12:07 +08:00
Serhiy Storchaka
202fda55c2
bpo-24037: Add Argument Clinic converter `bool(accept={int})`. ( #485 )
2017-03-12 10:10:47 +02:00
Martin Panter
520569e9bd
Issue #29004 : Merge crc_hqx() doc from 3.5
2016-12-24 07:44:03 +00:00
Martin Panter
3310e146cc
Issue #29004 : Document binascii.crc_hqx() implements CRC-CCITT
2016-12-24 07:36:44 +00:00
Serhiy Storchaka
62a1f024b4
Issue #27599 : Fixed buffer overrun in binascii.b2a_qp() and binascii.a2b_qp().
2016-09-14 16:37:34 +03:00
Serhiy Storchaka
e6265e92bf
Issue #27599 : Fixed buffer overrun in binascii.b2a_qp() and binascii.a2b_qp().
2016-09-14 16:34:37 +03:00
Raymond Hettinger
15f44ab043
Issue #27895 : Spelling fixes (Contributed by Ville Skyttä).
2016-08-30 10:47:49 -07:00
Benjamin Peterson
b6f78c2755
merge 3.5 ( closes #27760 )
2016-08-13 18:37:20 -07:00
Benjamin Peterson
91060f26f9
merge 3.4 ( closes #27760 )
2016-08-13 18:37:12 -07:00
Benjamin Peterson
5295532adb
merge 3.3 ( closes #27760 )
2016-08-13 18:36:55 -07:00
Benjamin Peterson
4f976513ef
fix possible integer overflow in binascii.b2a_qp ( closes #27760 )
...
Reported by Thomas E. Hybel
2016-08-13 18:33:33 -07:00
Serhiy Storchaka
2954f83999
- Issue #27332 : Fixed the type of the first argument of module-level functions
...
generated by Argument Clinic. Patch by Petr Viktorin.
2016-07-07 18:20:03 +03:00
Serhiy Storchaka
1a2b24f02d
Issue #27332 : Fixed the type of the first argument of module-level functions
...
generated by Argument Clinic. Patch by Petr Viktorin.
2016-07-07 17:35:15 +03:00
Serhiy Storchaka
ef1585eb9a
Issue #25923 : Added more const qualifiers to signatures of static and private functions.
2015-12-25 20:01:53 +02:00
Serhiy Storchaka
2d06e84455
Issue #25923 : Added the const qualifier to static constant arrays.
2015-12-25 19:53:18 +02:00
Victor Stinner
f9c9a3fedf
Refactor binascii.rledecode_hqx()
...
Rewrite the code to handle the output buffer.
2015-10-14 15:20:07 +02:00
Victor Stinner
1bfe930585
Issue #25384 : Fix binascii.rledecode_hqx()
...
Fix usage of _PyBytesWriter API. Use the new _PyBytesWriter_Resize() function
instead of _PyBytesWriter_Prepare().
2015-10-14 15:02:35 +02:00
Victor Stinner
eaaaf136d2
Issue #25384 : Use _PyBytesWriter API in binascii
...
This API avoids a final call to _PyBytes_Resize() for output smaller than 512
bytes.
Small optimization: disable overallocation in binascii.rledecode_hqx() for the
last write.
2015-10-13 10:51:47 +02:00
Victor Stinner
e84c976568
Issue #25357 : Add an optional newline paramer to binascii.b2a_base64().
...
base64.b64encode() uses it to avoid a memory copy.
2015-10-11 11:01:02 +02:00
Gregory P. Smith
9c6b916662
Switch binascii over to using the common _Py_strhex implementation for its hex
...
and hexlify functions. issue9951.
2015-04-26 00:42:13 +00:00
Serhiy Storchaka
e3037e1145
Issue #23728 : binascii.crc_hqx() could return an integer outside of the range
...
0-0xffff for empty data.
2015-04-20 09:31:51 +03:00
Serhiy Storchaka
2ef7c47844
Issue #23728 : binascii.crc_hqx() could return an integer outside of the range
...
0-0xffff for empty data.
2015-04-20 09:26:49 +03:00
Larry Hastings
89964c48d1
Issue #23944 : Argument Clinic now wraps long impl prototypes at column 78.
2015-04-14 18:07:59 -04:00
Serhiy Storchaka
1009bf18b3
Issue #23501 : Argumen Clinic now generates code into separate files by default.
2015-04-03 23:53:51 +03:00
Berker Peksag
3cd30c2cee
Issue #13637 : Improve exception message of a2b_* functions.
...
Patch by Vajrasky Kok.
2015-02-15 00:31:00 +02:00
Zachary Ware
b176d40398
Issue #23280 : Fix docstrings for binascii.(un)hexlify
2015-01-20 13:59:46 -06:00
Larry Hastings
581ee3618c
Issue #20326 : Argument Clinic now uses a simple, unique signature to
...
annotate text signatures in docstrings, resulting in fewer false
positives. "self" parameters are also explicitly marked, allowing
inspect.Signature() to authoritatively detect (and skip) said parameters.
Issue #20326 : Argument Clinic now generates separate checksums for the
input and output sections of the block, allowing external tools to verify
that the input has not changed (and thus the output is not out-of-date).
2014-01-28 05:00:08 -08:00
Benjamin Peterson
b62deac9a3
cleanup after custom buffer converter
2014-01-26 10:41:58 -05:00
Larry Hastings
f256c22f34
Fix for catestrophic errors in previous checkin (Argument Clinic rollup patch).
2014-01-25 21:30:37 -08:00
Serhiy Storchaka
12785617c8
Fixed converting errors in the binascii module (issue20151).
...
a2b_qp() now accepts keyword arguments.
All "ascii" parameters is renamed to "data" for consistancy with a2b_qp().
2014-01-25 11:49:49 +02:00
Serhiy Storchaka
3ffd913d66
Issue #20151 : The binascii module now uses Argument Clinic.
2014-01-25 11:21:23 +02:00
R David Murray
c3f57e4a35
Merge #19411 : Clarify that b2a_hex/hexlify returns a bytes object.
2013-11-03 13:22:17 -05:00
R David Murray
5fdb64b5a0
#19411 : Clarify that b2a_hex/hexlify returns a bytes object.
...
Initial patch by Vajrasky Kok.
2013-11-03 13:21:38 -05:00
Victor Stinner
7979926616
Issue #18408 : Fix usage of _PyBytes_Resize()
...
_PyBytes_Resize(&v, new_size) sets v to NULL on error, so v cannot be used
anymore. Replace "Py_DECREF(v); v = NULL;" with "Py_CLEAR(v);".
2013-07-09 00:35:22 +02:00
Antoine Pitrou
c73c561181
Issue #17173 : Remove uses of locale-dependent C functions (isalpha() etc.) in the interpreter.
...
I've left a couple of them in: zlib (third-party lib), getaddrinfo.c
(doesn't include Python.h, and probably obsolete), _sre.c (legitimate
use for the re.LOCALE flag), mpdecimal (needs to build without Python.h).
2013-02-09 23:14:42 +01:00
Antoine Pitrou
4de7457009
Issue #17173 : Remove uses of locale-dependent C functions (isalpha() etc.) in the interpreter.
...
I've left a couple of them in: zlib (third-party lib), getaddrinfo.c
(doesn't include Python.h, and probably obsolete), _sre.c (legitimate
use for the re.LOCALE flag).
2013-02-09 23:11:27 +01:00
Antoine Pitrou
0831676962
Issue #13637 : "a2b" functions in the binascii module now accept ASCII-only unicode strings.
2011-12-20 13:58:41 +01:00
Victor Stinner
f5cff56a1b
Issue #13088 : Add shared Py_hexdigits constant to format a number into base 16
2011-10-14 02:13:11 +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
Senthil Kumaran
922e904cca
Fix issue10324 - Modules/binascii.c: simplify expressions
2010-11-09 09:59:13 +00:00