Nick Mathewson
065e7da8e6
Re-enable and fix unit test for nofork mappings
...
This test was previously written to use the contents of the system
headers to decide whether INHERIT_NONE or INHERIT_ZERO was going to
work. But that won't work across different environments, such as
(for example) when the kernel doesn't match the headers. Instead,
we add a testing-only feature to the code to track which of these
options actually worked, and verify that it behaved as we expected.
Closes ticket 29541; bugfix not on any released version of Tor.
2019-02-25 08:55:25 -05:00
Nick Mathewson
c9ff6a7f83
Mark map_anon_nofork test as skipped in 0.4.0
...
This test fails in some environments; since the code isn't used in
0.4.0, let's disable it for now.
Band-aid solution for #29534 ; bug not in any released Tor.
2019-02-19 13:14:26 -05:00
David Goulet
6c173d00f5
Merge branch 'tor-github/pr/702'
2019-02-14 11:43:10 -05:00
Nick Mathewson
8ca808f81d
Code for anonymous mappings via mmap() or CreateFileMapping().
...
Using an anonymous mmap() is a good way to get pages that we can set
kernel-level flags on, like minherit() or madvise() or mlock().
We're going to use that so that we can make uninheritable locked
pages to store PRNG data.
2019-02-06 22:03:30 -05:00
Nick Mathewson
bbe417ae8f
Merge branch 'ticket28668_035' into ticket28668_040
2019-01-23 17:08:36 -05:00
Nick Mathewson
d71ca39682
Another case of possible gmtime angst.
2019-01-23 17:08:23 -05:00
Nick Mathewson
d23704bf26
Merge branch 'ticket28668_035' into ticket28668_040
2019-01-23 14:50:22 -05:00
Nick Mathewson
6144cf99ad
Capture more BUG warnings in util/time test
...
These are ones that happen on windows only.
Fixes bug 29161.
2019-01-23 12:37:12 -05:00
Nick Mathewson
2f683465d4
Bump copyright date to 2019
2019-01-16 12:33:22 -05:00
Nick Mathewson
efe55b8898
Bump copyright date to 2019.
2019-01-16 12:32:32 -05:00
Nick Mathewson
b169c8c14f
Merge remote-tracking branch 'asn-github/adaptive_padding-final'
2019-01-14 14:48:00 -05:00
George Kadianakis
4db9c3d63e
Unittest for tor_isinf().
2019-01-10 13:06:08 +02:00
Nick Mathewson
f9a7701ff1
Merge branch 'ticket28856_v2'
2019-01-09 08:46:40 -05:00
George Kadianakis
926fc93be5
Concentrate all TOR_USEC_PER_SEC definitions in a single header file.
...
Co-authored-by: Mike Perry <mikeperry-git@torproject.org>
2019-01-02 15:25:55 +02:00
Nick Mathewson
e969d9c6b4
Merge branch 'ticket28179_squashed' into ticket28179_squashed_merged
2018-12-17 16:41:01 -05:00
Alexander Færøy
ccc1963890
Move remaining code from subprocess.{h,c} to more appropriate places.
...
This patch moves the remaining code from subprocess.{h,c} to more
appropriate places in the process.c and process_win32.c module.
We also delete the now empty subprocess module files.
See: https://bugs.torproject.org/28179
2018-12-17 16:39:28 -05:00
Alexander Færøy
f7d13425fc
Delete old process_handle_t code.
...
This patch removes the old process_handle_t code. Everything should by
now be using the process_t interface.
See: https://bugs.torproject.org/28179
2018-12-17 16:39:28 -05:00
Nick Mathewson
29254812a3
Remove strcmp_len(): it is now unused
...
(See 28856.)
2018-12-17 09:04:25 -05:00
Nick Mathewson
f6b8c7da66
Move buffers.c out of lib/containers to resolve a circularity.
2018-11-14 16:07:03 -05:00
Nick Mathewson
8020d6fb05
Merge remote-tracking branch 'tor-github/pr/464'
2018-11-06 15:33:25 -05:00
George Kadianakis
da716fdfbb
Add tests for the string_is_utf8_no_bom() function.
2018-11-01 12:55:04 +02:00
Nick Mathewson
084924360a
Merge branch 'ticket23082_squashed'
2018-10-30 09:05:42 -04:00
rl1987
742cd15649
Move a check for trailing colon to tor_inet_pton()
...
That way, string_is_valid_ipv6_address() can benefit from it
2018-10-30 09:05:11 -04:00
Nick Mathewson
8294c40c96
Merge remote-tracking branch 'tor-github/pr/318'
2018-09-12 08:12:19 -04:00
Nick Mathewson
3507fead10
Merge branch 'tor_api_owning_control'
2018-09-04 11:04:21 -04:00
cypherpunks
d32b08af6f
string: add string_is_utf8() helper
...
Ticket #27373 .
2018-09-03 13:54:43 +00:00
Nick Mathewson
bb65b53966
Fix a compilation warning on i386 with clang
2018-08-24 16:13:30 -04:00
Nick Mathewson
fe00a481fc
Add a unit test for tor_log_mallinfo()
2018-08-21 12:14:41 -04:00
Nick Mathewson
f6763a8218
Add tests for the failing case of tor_localtime_r
2018-08-06 16:44:26 -04:00
Nick Mathewson
fc0dc5aa9e
Refactor tor_ersatz_socketpair() not to need socket.
...
This change also makes tor_ersatz_socketpair() follow the same
interface as socketpair() rather than tor_socketpair(), so it now
needs to be wrapped in the same code as socketpair() does.
2018-08-01 11:01:52 -04:00
Nick Mathewson
2884639ad6
Extract tor_ersatz_socketpair into a new c file
...
I'm doing this because I want to make it a lower-level function
again, so that we can use it without linking in the rest of the
universe.
2018-08-01 08:47:27 -04:00
Nick Mathewson
ee12c11dd4
Increase line coverage in libtor-string to 100%
...
(On linux.)
2018-07-17 16:47:32 -04:00
Nick Mathewson
ef486e3c02
Fix every include path changed in the previous commit (automated)
...
I am very glad to have written this script.
2018-07-05 17:15:50 -04:00
Nick Mathewson
df98582851
Merge remote-tracking branch 'github/ticket26626'
2018-07-03 12:52:43 -04:00
Nick Mathewson
02a4442524
Fix up some windows compilation issues.
...
These were mostly cases where our previous macros had been casting,
and the values that we were trying to printf were not in fact
uint64_t.
2018-07-03 11:00:18 -04:00
Nick Mathewson
d5a3bb960d
Retire U64_TO_DBL and DBL_TO_U64
...
These were necessary long ago to work around a bug in VC6.
2018-07-03 10:45:43 -04:00
Nick Mathewson
9568c0ce3d
Return U64_PRINTF_ARG and U64_FORMAT
...
The standard is printf("%"PRIu64, x);
2018-07-03 10:40:59 -04:00
Nick Mathewson
52884f56d4
Replace U64_LITERAL with the standard UINT64_C
2018-07-03 10:33:50 -04:00
Nick Mathewson
c75215c23a
Clean up various things that broke with our stdint.h changes
...
Casting before printf was necessary; now it's not so smart.
We don't have SIZEOF_UINT8_T any more.
2018-07-03 10:26:06 -04:00
Nick Mathewson
6c440da926
Remove system headers from or.h
2018-07-01 15:20:37 -04:00
Nick Mathewson
1743dac078
Minimize headers that include crypto_formats and x25519 stuff
2018-07-01 15:20:37 -04:00
Nick Mathewson
471104eaa5
Remove needless includes from or.h
...
or.h should really include only the minimum of stuff from or/*,
common/*, and lib/*.
2018-07-01 15:20:37 -04:00
Nick Mathewson
71e56c70e9
Remove windows libraries from util.h and compat.h
2018-06-29 12:21:52 -04:00
Nick Mathewson
40199b180e
Remove read_all and write_all
...
These had become wrappers around their fd and socket variants; there
were only a few users of the original functions still remaining.
2018-06-29 12:21:52 -04:00
Nick Mathewson
0362cdc169
Move fd and memory-info functions.
2018-06-29 12:21:52 -04:00
Nick Mathewson
935ba02565
Fix paths for buffers.h; automated.
2018-06-28 16:29:35 -04:00
Nick Mathewson
a742a826f6
Remove all include common/ uses in crypto_ops and tls.
2018-06-28 14:40:25 -04:00
Nick Mathewson
a097ddb4f5
Extract time functionality into lib/wallclock and lib/time
2018-06-28 13:01:54 -04:00
Nick Mathewson
bdea94a665
Move floating-point math functions into a new lib/math
2018-06-28 12:24:45 -04:00
Nick Mathewson
6178a9f758
Move compute_num_cpus to lib/thread
2018-06-28 12:08:18 -04:00