]> git.ipfire.org Git - thirdparty/tor.git/log
thirdparty/tor.git
7 years agoCompute OPE cipher structure only when needed.
George Kadianakis [Tue, 17 Jul 2018 16:03:18 +0000 (12:03 -0400)] 
Compute OPE cipher structure only when needed.

The OPE cipher is tied to the current blinded key which is tied to the current
time period. Hence create the OPE cipher structure when we create a new
descriptor (and build its blinded key).

7 years agoAdd changes file.
George Kadianakis [Thu, 14 Jun 2018 12:53:31 +0000 (15:53 +0300)] 
Add changes file.

7 years agoRemove now useless rev counter state file code.
George Kadianakis [Thu, 14 Jun 2018 12:51:00 +0000 (15:51 +0300)] 
Remove now useless rev counter state file code.

We are not using the state file for rev counters anymore, we just generate them
on the fly!

7 years agoFix up some unittests by being more careful with the local time.
George Kadianakis [Thu, 14 Jun 2018 12:38:46 +0000 (15:38 +0300)] 
Fix up some unittests by being more careful with the local time.

Now that the rev counter depends on the local time, we need to be more careful
in the unittests. Some unittests were breaking because they were using
consensus values from 1985, but they were not updating the local time
appropriately. That was causing the OPE module to complain that it was trying
to encrypt insanely large values.

7 years agoUse approx_time() instead of time(NULL) in some HS functions.
George Kadianakis [Thu, 14 Jun 2018 12:38:14 +0000 (15:38 +0300)] 
Use approx_time() instead of time(NULL) in some HS functions.

These were breaking our unittests.

7 years agoCompute the description revision counter using the OPE scheme.
George Kadianakis [Thu, 14 Jun 2018 12:35:59 +0000 (15:35 +0300)] 
Compute the description revision counter using the OPE scheme.

To do so for a given descriptor, we use the "seconds since the SR protocol run"
started, for the SRV that is relevant to this descriptor. This is guaranteed to
be a positive value (since we need an SRV to be able to build a descriptor),
and it's also guaranteed to be a small value (since SRVs stop being listed on a
consensus after 48 hours).

We cannot use the "seconds since the time period started", because for the next
descriptor we use the next time period, so the timestamp would end up negative.
See [SERVICEUPLOAD] from rend-spec-v3.txt for more details.

To do so, we have to introduce a new `is_current` argument to a bunch of
functions, because to use "seconds since the SR protocol run" we need to know
if we are building the current or the next descriptor, since we use a different
SRV for each descriptor.

7 years agoIntroduce useful SRV funcs (start time of prev protocol run)
George Kadianakis [Thu, 14 Jun 2018 12:25:43 +0000 (15:25 +0300)] 
Introduce useful SRV funcs (start time of prev protocol run)

7 years agoIncrease OPE_INPUT_MAX.
George Kadianakis [Thu, 14 Jun 2018 12:23:09 +0000 (15:23 +0300)] 
Increase OPE_INPUT_MAX.

7 years agoImplementation for a simple order-preserving encryption scheme.
Nick Mathewson [Thu, 10 May 2018 12:46:36 +0000 (08:46 -0400)] 
Implementation for a simple order-preserving encryption scheme.

This is meant for use when encrypting the current time within the
period in order to get a monotonically increasing revision counter
without actually revealing our view of the time.

This scheme is far from the most state-of-the-art: don't use it for
anything else without careful analysis by somebody much smarter than
I am.

See ticket #25552 for some rationale for this logic.

7 years agoRemove some accidentally committed code in checkIncludes.py
Nick Mathewson [Tue, 26 Jun 2018 16:04:24 +0000 (12:04 -0400)] 
Remove some accidentally committed code in checkIncludes.py

7 years agoFix comments in lib/container/*.c
Nick Mathewson [Tue, 26 Jun 2018 15:33:53 +0000 (11:33 -0400)] 
Fix comments in lib/container/*.c

7 years agoMerge branch 'log_dependencies'
Nick Mathewson [Tue, 26 Jun 2018 15:27:33 +0000 (11:27 -0400)] 
Merge branch 'log_dependencies'

7 years agoMerge branch 'maint-0.3.4'
Nick Mathewson [Tue, 26 Jun 2018 13:21:59 +0000 (09:21 -0400)] 
Merge branch 'maint-0.3.4'

7 years agoMerge branch 'maint-0.3.3' into maint-0.3.4
Nick Mathewson [Tue, 26 Jun 2018 13:21:59 +0000 (09:21 -0400)] 
Merge branch 'maint-0.3.3' into maint-0.3.4

7 years agoMerge branch 'maint-0.3.2' into maint-0.3.3
Nick Mathewson [Tue, 26 Jun 2018 13:21:59 +0000 (09:21 -0400)] 
Merge branch 'maint-0.3.2' into maint-0.3.3

7 years agoMerge branch 'maint-0.3.1' into maint-0.3.2
Nick Mathewson [Tue, 26 Jun 2018 13:21:59 +0000 (09:21 -0400)] 
Merge branch 'maint-0.3.1' into maint-0.3.2

7 years agoMerge branch 'maint-0.2.9' into maint-0.3.1
Nick Mathewson [Tue, 26 Jun 2018 13:21:59 +0000 (09:21 -0400)] 
Merge branch 'maint-0.2.9' into maint-0.3.1

7 years agoMerge branch 'feature26372_029' into maint-0.2.9
Nick Mathewson [Tue, 26 Jun 2018 13:21:55 +0000 (09:21 -0400)] 
Merge branch 'feature26372_029' into maint-0.2.9

7 years agoMerge branch 'maint-0.3.4'
Nick Mathewson [Tue, 26 Jun 2018 13:12:28 +0000 (09:12 -0400)] 
Merge branch 'maint-0.3.4'

"ours" to avoid version bump.

7 years agoBump version to 0.3.4.3-alpha-dev
Nick Mathewson [Tue, 26 Jun 2018 13:12:23 +0000 (09:12 -0400)] 
Bump version to 0.3.4.3-alpha-dev

7 years agoForward-port the 0.3.4.3-alpha ChangeLog
Nick Mathewson [Tue, 26 Jun 2018 12:49:06 +0000 (08:49 -0400)] 
Forward-port the 0.3.4.3-alpha ChangeLog

7 years agoInclude stdio.h in torerr.c.
Nick Mathewson [Mon, 25 Jun 2018 20:52:14 +0000 (16:52 -0400)] 
Include stdio.h in torerr.c.

7 years agoMerge branch 'maint-0.3.4'
Nick Mathewson [Mon, 25 Jun 2018 18:08:03 +0000 (14:08 -0400)] 
Merge branch 'maint-0.3.4'

"ours" merge to avoid version bump.

7 years agoBump to 0.3.4.3-alpha.
Nick Mathewson [Mon, 25 Jun 2018 18:07:23 +0000 (14:07 -0400)] 
Bump to 0.3.4.3-alpha.

7 years agoMerge branch 'maint-0.3.4'
Nick Mathewson [Mon, 25 Jun 2018 17:50:37 +0000 (13:50 -0400)] 
Merge branch 'maint-0.3.4'

7 years agobetter log line for debugging #26485
Roger Dingledine [Sun, 24 Jun 2018 22:14:24 +0000 (18:14 -0400)] 
better log line for debugging #26485

7 years agowe've never been good at using "directory" well as a noun
Roger Dingledine [Sun, 24 Jun 2018 22:08:24 +0000 (18:08 -0400)] 
we've never been good at using "directory" well as a noun

7 years agoAdd some casts to get test_dir.c compiling on windows.
Nick Mathewson [Fri, 22 Jun 2018 22:22:20 +0000 (18:22 -0400)] 
Add some casts to get test_dir.c compiling on windows.

Fixed bug 26479.  Bug introduced by 0a6f4627a4292e4; bug not in any
released version.

7 years agoFix test_geoip failures on windows by writing file in binary mode.
Nick Mathewson [Fri, 22 Jun 2018 18:47:48 +0000 (14:47 -0400)] 
Fix test_geoip failures on windows by writing file in binary mode.

Fixes bug 26480; bug appeared when we re-enabled the geoip tests on
windows.  Bug originally introduced by our fix to 25787; bug not in
any released Tor.

7 years agoMake an inline static so we can build with coverage enabled.
Nick Mathewson [Fri, 22 Jun 2018 18:11:37 +0000 (14:11 -0400)] 
Make an inline static so we can build with coverage enabled.

7 years agoAnother windows include
Nick Mathewson [Fri, 22 Jun 2018 17:52:30 +0000 (13:52 -0400)] 
Another windows include

7 years agoWe also need torerr in tm_cvt.
Nick Mathewson [Fri, 22 Jun 2018 17:34:35 +0000 (13:34 -0400)] 
We also need torerr in tm_cvt.

7 years agoAdd another include for windows, and change a log to a raw_assert
Nick Mathewson [Fri, 22 Jun 2018 17:33:08 +0000 (13:33 -0400)] 
Add another include for windows, and change a log to a raw_assert

7 years agoRemove an "m" that did not belong.
Nick Mathewson [Fri, 22 Jun 2018 17:32:47 +0000 (13:32 -0400)] 
Remove an "m" that did not belong.

7 years agoUpdate the micro-revision.i dependencies, and add a stdlib.h
Nick Mathewson [Fri, 22 Jun 2018 17:25:52 +0000 (13:25 -0400)] 
Update the micro-revision.i dependencies, and add a stdlib.h

7 years agoTwo more small changes for CI.
Nick Mathewson [Fri, 22 Jun 2018 17:10:52 +0000 (13:10 -0400)] 
Two more small changes for CI.

7 years agoA pair of missing includes.
Nick Mathewson [Fri, 22 Jun 2018 16:53:57 +0000 (12:53 -0400)] 
A pair of missing includes.

7 years agoFix up the rust build script library list.
Nick Mathewson [Fri, 22 Jun 2018 16:04:11 +0000 (12:04 -0400)] 
Fix up the rust build script library list.

7 years agoMove util_bug into libtor-log
Nick Mathewson [Fri, 22 Jun 2018 15:54:38 +0000 (11:54 -0400)] 
Move util_bug into libtor-log

7 years agoRemove util_bug dependency on compat.h
Nick Mathewson [Fri, 22 Jun 2018 15:51:58 +0000 (11:51 -0400)] 
Remove util_bug dependency on compat.h

7 years agoUpdate .gitignore and .may_include files
Nick Mathewson [Fri, 22 Jun 2018 15:46:44 +0000 (11:46 -0400)] 
Update .gitignore and .may_include files

7 years agoFinally extract the log library and make it build.
Nick Mathewson [Fri, 22 Jun 2018 15:40:20 +0000 (11:40 -0400)] 
Finally extract the log library and make it build.

This patch:
  - introduces an fdio module for low-level fd functions that don't
    need to log.
  - moves the responsibility for opening files outside of torlog.c,
    so it won't need to call tor_open_cloexec.

7 years agoExtract strlcpy and strlcmp to libtor-string
Nick Mathewson [Fri, 22 Jun 2018 15:18:19 +0000 (11:18 -0400)] 
Extract strlcpy and strlcmp to libtor-string

7 years agoExtract core part of gmtime_r, localtime_r (without logging)
Nick Mathewson [Fri, 22 Jun 2018 15:07:10 +0000 (11:07 -0400)] 
Extract core part of gmtime_r, localtime_r (without logging)

7 years agoRemove the util_bug.h include from smartlist.h.
Nick Mathewson [Fri, 22 Jun 2018 14:50:12 +0000 (10:50 -0400)] 
Remove the util_bug.h include from smartlist.h.

This change makes a whole bunch of things in torlog.c break, since
apparently I did not find all the fd dependencies.

7 years agoAutomated fixup of include paths after torlog.h movement.
Nick Mathewson [Fri, 22 Jun 2018 14:32:10 +0000 (10:32 -0400)] 
Automated fixup of include paths after torlog.h movement.

7 years agoExtract the locking and logging code
Nick Mathewson [Fri, 22 Jun 2018 14:30:45 +0000 (10:30 -0400)] 
Extract the locking and logging code

The locking code gets its own module, since it's more fundamental
than the higher-level locking code.

Extracting the logging code was the whole point here. :)

7 years agoExtract simple integer math into its own module
Nick Mathewson [Fri, 22 Jun 2018 13:48:24 +0000 (09:48 -0400)] 
Extract simple integer math into its own module

7 years agoMove smartlist_add_{v,}asprintf into smartlist.[ch]
Nick Mathewson [Fri, 22 Jun 2018 13:26:19 +0000 (09:26 -0400)] 
Move smartlist_add_{v,}asprintf into smartlist.[ch]

Now that I know that "strings" nests below "container", I know this
is safe.

7 years agoExtract key string manipulation functions into a new library.
Nick Mathewson [Fri, 22 Jun 2018 13:23:30 +0000 (09:23 -0400)] 
Extract key string manipulation functions into a new library.

7 years agoMove ARRAY_LENGTH to compiler_compat.h
Nick Mathewson [Fri, 22 Jun 2018 12:41:57 +0000 (08:41 -0400)] 
Move ARRAY_LENGTH to compiler_compat.h

7 years agoRemove compat.h as unneeded from log.c and torlog.h
Nick Mathewson [Thu, 21 Jun 2018 21:35:56 +0000 (17:35 -0400)] 
Remove compat.h as unneeded from log.c and torlog.h

7 years agoExtract our code for answering "what time is it right now".
Nick Mathewson [Thu, 21 Jun 2018 21:33:49 +0000 (17:33 -0400)] 
Extract our code for answering "what time is it right now".

The other time stuff is higher-level

7 years agoUpdate permissible includes
Nick Mathewson [Thu, 21 Jun 2018 21:06:58 +0000 (17:06 -0400)] 
Update permissible includes

7 years agoExpunge container.h
Nick Mathewson [Thu, 21 Jun 2018 21:03:45 +0000 (17:03 -0400)] 
Expunge container.h

7 years agoExtract smartlist.h from container.h
Nick Mathewson [Thu, 21 Jun 2018 21:00:48 +0000 (17:00 -0400)] 
Extract smartlist.h from container.h

7 years agoRemove map from container.h
Nick Mathewson [Thu, 21 Jun 2018 20:52:58 +0000 (16:52 -0400)] 
Remove map from container.h

7 years agoRemove bloom filters, order statistics, and bitarrays from container.h
Nick Mathewson [Thu, 21 Jun 2018 20:48:54 +0000 (16:48 -0400)] 
Remove bloom filters, order statistics, and bitarrays from container.h

7 years agoRemove container->crypto dependency
Nick Mathewson [Thu, 21 Jun 2018 20:34:00 +0000 (16:34 -0400)] 
Remove container->crypto dependency

Containers were using crypto_digest.h, just to see the value of
DIGEST_LEN.  Moved those constants into a new defs module.

7 years agoMove STRUCT_VAR_P to compat_compiler.
Nick Mathewson [Thu, 21 Jun 2018 20:29:24 +0000 (16:29 -0400)] 
Move STRUCT_VAR_P to compat_compiler.

7 years agoSplit container.c based on container types, and minimize includes
Nick Mathewson [Thu, 21 Jun 2018 20:25:31 +0000 (16:25 -0400)] 
Split container.c based on container types, and minimize includes

Minimizing includes revealed other places includes were necessary.

7 years agoRectify include paths after container split (automatic)
Nick Mathewson [Thu, 21 Jun 2018 19:40:15 +0000 (15:40 -0400)] 
Rectify include paths after container split (automatic)

7 years agoRefactor container into a library.
Nick Mathewson [Thu, 21 Jun 2018 19:39:36 +0000 (15:39 -0400)] 
Refactor container into a library.

7 years agoSimplify include structure of container.[ch]
Nick Mathewson [Thu, 21 Jun 2018 19:33:25 +0000 (15:33 -0400)] 
Simplify include structure of container.[ch]

7 years agoExtract tor_malloc and friends to a new module.
Nick Mathewson [Thu, 21 Jun 2018 19:17:54 +0000 (15:17 -0400)] 
Extract tor_malloc and friends to a new module.

7 years agoadd license statement to checkincludes, and have it return an error code
Nick Mathewson [Thu, 21 Jun 2018 18:29:00 +0000 (14:29 -0400)] 
add license statement to checkincludes, and have it return an error code

7 years agoFix wide lines in dirauth/dirvote.*
Nick Mathewson [Thu, 21 Jun 2018 18:23:32 +0000 (14:23 -0400)] 
Fix wide lines in dirauth/dirvote.*

7 years agoMake sure check-spaces applies in lib and dirauth.
Nick Mathewson [Thu, 21 Jun 2018 18:22:15 +0000 (14:22 -0400)] 
Make sure check-spaces applies in lib and dirauth.

7 years agoRun checkIncludes.py from "make check-includes"
Nick Mathewson [Thu, 21 Jun 2018 18:20:43 +0000 (14:20 -0400)] 
Run checkIncludes.py from "make check-includes"

7 years agoNew script to check includes for modularity violations
Nick Mathewson [Thu, 21 Jun 2018 18:02:11 +0000 (14:02 -0400)] 
New script to check includes for modularity violations

Includes configuration files to enforce these rules on lib and
common.  Of course, "common" *is* a modularity violation right now,
so these rules aren't as strict as I would like them to be.

7 years agoMerge branch 'extract_easy_common_libs'
Nick Mathewson [Thu, 21 Jun 2018 17:57:13 +0000 (13:57 -0400)] 
Merge branch 'extract_easy_common_libs'

7 years agoRectify include paths (automated).
Nick Mathewson [Thu, 21 Jun 2018 17:12:23 +0000 (13:12 -0400)] 
Rectify include paths (automated).

You have no idea how glad I am that this is automated.

7 years agoMove testsupport.h to its own directory
Nick Mathewson [Thu, 21 Jun 2018 17:12:06 +0000 (13:12 -0400)] 
Move testsupport.h to its own directory

7 years agoMove responsibility for libdonna out of src/common
Nick Mathewson [Thu, 21 Jun 2018 17:04:09 +0000 (13:04 -0400)] 
Move responsibility for libdonna out of src/common

7 years agoAdditional non-automated change to trunnel-local.h
Nick Mathewson [Thu, 21 Jun 2018 16:47:48 +0000 (12:47 -0400)] 
Additional non-automated change to trunnel-local.h

7 years agoRectify include paths (automated)
Nick Mathewson [Thu, 21 Jun 2018 16:47:11 +0000 (12:47 -0400)] 
Rectify include paths (automated)

7 years agoSplit crypto and tls libraries into directories
Nick Mathewson [Thu, 21 Jun 2018 16:46:11 +0000 (12:46 -0400)] 
Split crypto and tls libraries into directories

I am calling the crypto library "crypt_ops", since I want
higher-level crypto things to be separated from lower-level ones.
This library will hold only the low-level ones, once we have it
refactored.

7 years agoMove more compiler-compatibility stuff into compat_compiler.h
Nick Mathewson [Thu, 21 Jun 2018 16:29:34 +0000 (12:29 -0400)] 
Move more compiler-compatibility stuff into compat_compiler.h

7 years agodi_ops.c does not actually log anything.
Nick Mathewson [Thu, 21 Jun 2018 16:28:33 +0000 (12:28 -0400)] 
di_ops.c does not actually log anything.

7 years agoRectify include paths (automated)
Nick Mathewson [Thu, 21 Jun 2018 16:20:52 +0000 (12:20 -0400)] 
Rectify include paths (automated)

7 years agoMove compiler-compatibility headers into their own module
Nick Mathewson [Thu, 21 Jun 2018 16:20:26 +0000 (12:20 -0400)] 
Move compiler-compatibility headers into their own module

This one has no generated code.

7 years agoRemove unused pubsub module.
Nick Mathewson [Thu, 21 Jun 2018 16:12:56 +0000 (12:12 -0400)] 
Remove unused pubsub module.

7 years agoRectify include paths (automated)
Nick Mathewson [Thu, 21 Jun 2018 16:03:34 +0000 (12:03 -0400)] 
Rectify include paths (automated)

7 years agoMove trace into its own library in libs.
Nick Mathewson [Thu, 21 Jun 2018 16:02:14 +0000 (12:02 -0400)] 
Move trace into its own library in libs.

Apparently it has no testing variant.

7 years agoMake sure liberr-testing is build with testing flags.
Nick Mathewson [Thu, 21 Jun 2018 15:56:32 +0000 (11:56 -0400)] 
Make sure liberr-testing is build with testing flags.

7 years agoRectify include paths (automated)
Nick Mathewson [Thu, 21 Jun 2018 15:52:01 +0000 (11:52 -0400)] 
Rectify include paths (automated)

7 years agoExtract compression functions into a new library.
Nick Mathewson [Thu, 21 Jun 2018 15:51:49 +0000 (11:51 -0400)] 
Extract compression functions into a new library.

7 years agotiny comment and whitespace fixes
Roger Dingledine [Thu, 21 Jun 2018 17:07:51 +0000 (13:07 -0400)] 
tiny comment and whitespace fixes

7 years agoRename libtor.a to libtor-app.a
Nick Mathewson [Thu, 21 Jun 2018 15:01:10 +0000 (11:01 -0400)] 
Rename libtor.a to libtor-app.a

7 years agoRectify include paths (automated)
Nick Mathewson [Thu, 21 Jun 2018 14:53:36 +0000 (10:53 -0400)] 
Rectify include paths (automated)

7 years agoMove consttime library code into its own directory.
Nick Mathewson [Thu, 21 Jun 2018 14:53:29 +0000 (10:53 -0400)] 
Move consttime library code into its own directory.

7 years agoRectify include paths (automated)
Nick Mathewson [Thu, 21 Jun 2018 13:54:04 +0000 (09:54 -0400)] 
Rectify include paths (automated)

7 years agoExtract error functionality into a new lowest-level library.
Nick Mathewson [Thu, 21 Jun 2018 13:53:08 +0000 (09:53 -0400)] 
Extract error functionality into a new lowest-level library.

7 years agoRefactor makefiles to keep list of internal libraries in one place.
Nick Mathewson [Thu, 21 Jun 2018 14:34:29 +0000 (10:34 -0400)] 
Refactor makefiles to keep list of internal libraries in one place.

This change makes it possible for us to change the list of libraries
more easily, without changing every single linker line.

7 years agoRectify include paths (automated)
Nick Mathewson [Thu, 21 Jun 2018 13:55:16 +0000 (09:55 -0400)] 
Rectify include paths (automated)

7 years agoFix distcheck by naming header properly.
Nick Mathewson [Thu, 21 Jun 2018 13:37:32 +0000 (09:37 -0400)] 
Fix distcheck by naming header properly.

7 years agoPrefer recent Python 3 in autoconf.
Nick Mathewson [Thu, 21 Jun 2018 13:28:50 +0000 (09:28 -0400)] 
Prefer recent Python 3 in autoconf.

Closes ticket 26372.

7 years agoMerge branch 'mikeperry_bug26214-rebased_squashed'
Nick Mathewson [Thu, 21 Jun 2018 13:20:03 +0000 (09:20 -0400)] 
Merge branch 'mikeperry_bug26214-rebased_squashed'

7 years agoBug 26214: Test updates.
Mike Perry [Tue, 19 Jun 2018 19:53:58 +0000 (19:53 +0000)] 
Bug 26214: Test updates.

7 years agoBug 26214: Changes file.
Mike Perry [Sun, 27 May 2018 01:43:19 +0000 (01:43 +0000)] 
Bug 26214: Changes file.