Isis Lovecruft
809f6fae84
refactor: Remove unnecessary #include "crypto.h"
throughout codebase.
...
* FIXES part of #24658 : https://bugs.torproject.org/24658
2018-04-06 22:49:18 +00:00
Isis Lovecruft
88190026b3
crypto: Alphabetise some #includes in /src/common/crypto*.
...
* FIXES part of #24658 : https://bugs.torproject.org/24658
2018-04-06 22:49:15 +00:00
Isis Lovecruft
64e6551b8b
crypto: Remove unnecessary includes from src/common/crypto.[ch]
...
* FIXES part of #24658 : https://bugs.torproject.org/24658
2018-04-06 22:49:13 +00:00
Isis Lovecruft
fe3aca1491
crypto: Refactor (P)RNG functionality into new crypto_rand module.
...
* ADD new /src/common/crypto_rand.[ch] module.
* ADD new /src/common/crypto_util.[ch] module (contains the memwipe()
function, since all crypto_* modules need this).
* FIXES part of #24658 : https://bugs.torproject.org/24658
2018-04-06 21:45:28 +00:00
Nick Mathewson
2f872f9762
Merge remote-tracking branch 'hello71/bug25398'
2018-03-28 14:47:05 -04:00
Nick Mathewson
6317aa2cc0
Merge branch 'maint-0.3.3'
2018-03-28 07:50:47 -04:00
Nick Mathewson
d4bf1f6c8e
Add a paranoia check in string_is_valid_nonrfc_hostname()
...
The earlier checks in this function should ensure that components is
always nonempty. But in case somebody messes with them in the
future, let's add an extra check to make sure we aren't crashing.
2018-03-28 07:48:18 -04:00
Nick Mathewson
b504c854d3
Rename string_is_valid_hostname -> string_is_valid_nonrfc_hostname
...
Per discussion on 25055.
2018-03-28 07:42:27 -04:00
rl1987
09351c34e9
Don't strlen before checking for NULL
2018-03-28 07:39:03 -04:00
rl1987
a28e350cff
Tweak loop condition
2018-03-28 07:39:03 -04:00
rl1987
6b6d003f43
Don't explode on NULL or empty string
2018-03-28 07:39:03 -04:00
rl1987
ee1fca727c
Simplify hostname validation code
2018-03-28 07:39:03 -04:00
rl1987
dbb7c8e6fd
Validate hostnames with punycode TLDs correctly
2018-03-28 07:39:03 -04:00
rl1987
4413e52f9e
Improve handling of trailing dot
2018-03-28 07:39:03 -04:00
rl1987
6335db9fce
Refrain from including <ctype.h>
2018-03-28 07:39:03 -04:00
rl1987
5986589b48
Call strlen() once
2018-03-28 07:39:03 -04:00
rl1987
b0ba4aa7e9
Fix bracketed IPv6 string validation
2018-03-28 07:39:03 -04:00
rl1987
1af016e96e
Do not consider IP strings valid DNS names. Fixes #25055
2018-03-28 07:39:03 -04:00
rl1987
0e453929d2
Allow IPv6 address strings to be used as hostnames in SOCKS5 requests
2018-03-28 07:39:03 -04:00
Nick Mathewson
0eed0899cd
Merge branch 'bug24658-rm-curve25519-header' into bug24658-merge
2018-03-26 20:12:59 -04:00
Nick Mathewson
c68bfc556c
Merge branch 'maint-0.3.3'
2018-03-26 10:29:29 -04:00
Nick Mathewson
33606405e3
Merge branch 'maint-0.3.2' into maint-0.3.3
2018-03-26 10:29:29 -04:00
Nick Mathewson
b5a6c03998
Merge branch 'maint-0.3.1' into maint-0.3.2
2018-03-26 10:29:29 -04:00
Nick Mathewson
068d092749
Merge branch 'maint-0.2.9' into maint-0.3.1
2018-03-26 10:29:29 -04:00
Nick Mathewson
24abcf9771
Merge branch 'bug25399_squashed'
2018-03-22 08:49:43 -04:00
Alex Xu (Hello71)
946ed24ca5
Do not page-align mmap length. #25399
2018-03-22 08:47:37 -04:00
Nick Mathewson
9f93bcd16d
Remove sb_poll check: all poll() calls are ok.
2018-03-20 08:30:21 -04:00
Nick Mathewson
070eda5a21
Add the poll() syscall as permitted by the sandbox
...
Apparently, sometimes getpwnam will call this.
Fixes bug 25513.
2018-03-20 08:23:44 -04:00
Nick Mathewson
228b655935
Move rust-specific declarations outside of #else block
...
These declarations need to exist unconditionally, but they were
trapped inside an "#else /* !(defined(HAVE_SYSLOG_H)) */" block.
Fixes a travis regression caused by 23881; bug not in any released tor.
2018-03-19 19:18:23 -04:00
Nick Mathewson
d8893bc93c
Merge remote-tracking branch 'isis/bug23881_r1'
2018-03-19 17:20:37 -04:00
Nick Mathewson
338dbdab93
Merge branch 'maint-0.3.3'
2018-03-03 11:59:27 -05:00
Alexander Færøy
59a7b00384
Update tor.1.txt with the currently available log domains.
...
See: https://bugs.torproject.org/25378
2018-03-03 11:58:14 -05:00
Alex Xu (Hello71)
45d3b5fa4c
Remove uncompilable tor_mmap_file fallback. #25398
2018-03-02 09:51:53 -05:00
Isis Lovecruft
7759ac8df2
crypto: Remove crypto_rsa.h from crypto_digest.c.
...
* ADD include for "crypto_openssl_mgt.h" so that we have OpenSSL
defined SHA* types and functions.
* FIXES part of #24658 : https://bugs.torproject.org/24658#comment:30
2018-02-20 20:29:54 +00:00
Isis Lovecruft
3e9140e79a
crypto: Remove unnecessary curve25519 header from crypto_digest.h.
...
* ADD includes for "torint.h" and "container.h" to crypto_digest.h.
* ADD includes for "crypto_digest.h" to a couple places in which
crypto_digest_t was then missing.
* FIXES part of #24658 : https://bugs.torproject.org/24658#comment:30
2018-02-20 20:29:54 +00:00
Nick Mathewson
4438ef3288
Remove a bunch of other redundant #includes
...
Folks have found two in the past week or so; we may as well fix the
others.
Found with:
\#!/usr/bin/python3
import re
def findMulti(fname):
includes = set()
with open(fname) as f:
for line in f:
m = re.match(r'^\s*#\s*include\s+["<](\S+)[>"]', line)
if m:
inc = m.group(1)
if inc in includes:
print("{}: {}".format(fname, inc))
includes.add(m.group(1))
import sys
for fname in sys.argv[1:]:
findMulti(fname)
2018-02-20 10:14:15 -05:00
Nick Mathewson
5199b9b337
Use autoconf to check for optional zstd functionality.
...
Fixes a bug in our zstd-static code. Bug not in any released
version of Tor.
2018-02-18 16:19:43 -05:00
Fernando Fernandez Mancera
0fad49e1c4
Move crypto_pk_obsolete_* functions into RSA module.
...
We moved the crypto_pk_obselete_* functions into crypto_rsa.[ch] because they fit
better with the RSA module.
Follows #24658 .
Signed-off-by: Fernando Fernandez Mancera <ffmancera@riseup.net>
2018-02-16 18:23:21 +01:00
Fernando Fernandez Mancera
541b6b2433
Remove useless included files in crypto_rsa.[ch].
...
Follows #24658 .
Signed-off-by: Fernando Fernandez Mancera <ffmancera@riseup.net>
2018-02-16 17:49:58 +01:00
Nick Mathewson
bd71e0a0c8
Merge branch 'maint-0.3.1' into maint-0.3.2
2018-02-16 09:54:13 -05:00
Nick Mathewson
2bcd264a28
Merge branch 'maint-0.2.9' into maint-0.3.1
2018-02-16 09:48:11 -05:00
Nick Mathewson
cb92d47dec
Merge remote-tracking branch 'dgoulet/ticket24902_029_05' into maint-0.2.9
2018-02-16 09:41:06 -05:00
Nick Mathewson
bbc73c5d1c
Whoops. 256 was not big enough.
2018-02-16 09:40:29 -05:00
Nick Mathewson
a34fc1dad2
Allow checkpointing of non-sha1 digests.
...
This is necessary because apparently v3 rendezvous cpath hops use
sha3, which I had forgotten.
Bugfix on master; bug not in any released Tor.
2018-02-16 09:25:50 -05:00
Nick Mathewson
5a9ada342f
tor_zstd_format_version shouldn't be built when !HAVE_ZSTD
...
Fixes bug 25276; bugfix not in any released Tor.
2018-02-16 08:06:01 -05:00
Fernando Fernandez Mancera
f9f0dd5b9a
Move the pk-digest functions into crypto_rsa.[ch].
...
We moved the crypto_pk_* digest functions into crypto_rsa.[ch] because they fit
better with the RSA module.
Follows #24658 .
Signed-off-by: Fernando Fernandez Mancera <ffmancera@riseup.net>
2018-02-16 12:04:22 +01:00
Nick Mathewson
8da6bfa5de
Merge branch 'bug24914'
2018-02-15 20:53:50 -05:00
Nick Mathewson
a1dd8afc16
Merge branch '25162_zstd_static'
2018-02-15 20:28:07 -05:00
Nick Mathewson
3c8a481599
Merge branch 'bug18105'
2018-02-15 20:17:31 -05:00
Nick Mathewson
3e2b48f8b4
Merge branch 'bug24484_squashed'
2018-02-15 20:13:53 -05:00