Taylor Yu
86477f4e3f
Use baseXX length macros in baseXX_encode()
...
Use the new baseXX length macros to clean up the length checks in the
baseXX_encode() functions.
2017-04-06 17:43:16 -04:00
Nick Mathewson
7505f452c8
Run the copyright update script.
2017-03-15 16:13:17 -04:00
Hans Jerry Illikainen
a23fd15786
Fix unreachable heap corruption in base64_decode()
...
Give size_mul_check() external linkage and use it in base64_decode() to
avoid a potential integer wrap.
Closes #19222
2016-12-23 09:47:09 -05:00
Nick Mathewson
251b348d7b
It is not a bug to attempt to base32_decode a non-base32 string
...
(Rationale: it isn't a bug to try this for a base16 or base64
string. It's just a bad input that we're detecting.)
2016-08-31 14:31:00 -04:00
David Goulet
49e8f47505
util: zero target buffer of base*_encode/decode
...
Make sure to memset(0) the destination buffer so we don't leave any
uninitialized data.
Fixes #19462
Signed-off-by: David Goulet <dgoulet@torproject.org>
2016-06-20 13:47:19 -04:00
Nick Mathewson
6cedd49323
Merge branch 'bug14013_029_01_squashed'
2016-06-20 08:48:09 -04:00
nikkolasg
568dc27a19
Make base16_decodes return number of decoded bytes
...
base16_decodes() now returns the number of decoded bytes. It's interface
changes from returning a "int" to a "ssize_t". Every callsite now checks the
returned value.
Fixes #14013
Signed-off-by: David Goulet <dgoulet@torproject.org>
2016-06-20 08:44:58 -04:00
Andrea Shepard
033cf30b3c
Keep make check-spaces happy
2016-06-18 16:07:44 +00:00
Nick Mathewson
48b25e6811
Merge branch 'bug18280_029_03_nm_squashed'
2016-06-17 13:53:57 -04:00
David Goulet
4e4a7d2b0c
Fix base32 API to take any source length in bytes
...
Fixes #18280
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2016-06-17 13:53:47 -04:00
Nick Mathewson
7b54d7ebbd
Mark src/common tor_assert(0)/tor_fragile_assert() unreached for coverage
...
I audited this to make sure I was only marking ones that really
should be unreachable.
2016-06-15 17:28:26 -04:00
Nick Mathewson
57699de005
Update the copyright year.
2016-02-27 18:48:19 +01:00
Nick Mathewson
23f8c9b32f
Add a brief file-level description for everything in src/common
2016-02-27 18:19:57 +01:00
cypherpunks
824a6a2a90
Replace usage of INLINE with inline
...
This patch was generated using;
sed -i -e "s/\bINLINE\b/inline/" src/*/*.[ch] src/*/*/*.[ch]
2015-12-15 11:34:00 -05:00
Nick Mathewson
347fe449fe
Move formatting functions around.
...
The base64 and base32 functions used to be in crypto.c;
crypto_format.h had no header; some general-purpose functions were in
crypto_curve25519.c.
This patch makes a {crypto,util}_format.[ch], and puts more functions
there. Small modules are beautiful!
2015-07-31 11:21:34 -04:00