teor
5ec4fb7558
crypt_ops: Fix some weird macro spacing
2019-11-26 11:03:22 +10:00
Nick Mathewson
da15448eb8
Merge branch 'ticket32209'
2019-11-21 08:26:20 -05:00
Nick Mathewson
55fac8dafc
config.md: suggestions from teor
2019-11-21 08:26:12 -05:00
David Goulet
709d7fba11
hs-v3: Return bad address SOCKS5 extended error
...
If ExtendedErrors is set for the SocksPort, an invalid .onion address now
returns the 0xF6 error code per prop304.
Closes #30022
Signed-off-by: David Goulet <dgoulet@torproject.org >
2019-11-21 13:02:29 +02:00
George Kadianakis
d28b6792cb
Merge branch 'tor-github/pr/1423'
2019-11-18 19:06:53 +02:00
teor
c34fb3413d
Merge remote-tracking branch 'tor-github/pr/1517'
2019-11-18 11:21:37 +10:00
Nick Mathewson
cc271afeda
map.h: replace maptype with mapname_t
...
This change makes our macro bodies consistent with our naming
expectations for structs and types outside macro bodies.
2019-11-16 15:20:47 -05:00
Nick Mathewson
0c80c2e45f
handles.h: replace structname with structname_t
...
This change makes our macro bodies consistent with our naming
expectations for structs and types outside macro bodies.
2019-11-16 15:20:32 -05:00
Nick Mathewson
5a1a60e65e
Revise struct names in examples in comments to end with _t
2019-11-16 15:12:35 -05:00
Nick Mathewson
0e4e96b9bf
High-level documentation of configuration in Tor.
...
Closes ticket 32209.
2019-11-15 16:25:00 -05:00
Nick Mathewson
8b91680d5c
Doxygen: rename all .dox files to end with .md
...
Using a standard ending here will let other tools that expect
markdown understand our output here.
This commit was automatically generated with:
for fn in $(find src -name '*.dox'); do \
git mv "$fn" "${fn%.dox}.md"; \
done
2019-11-15 09:28:12 -05:00
Nick Mathewson
3a7369d0cf
Doxygen: remove /** and **/ from all .dox files
...
This is an automatically generated commit, made with:
find src -name '*.dox' | \
xargs perl -i -ne 'print unless (m#^\s*/?\*\*/?\s*$#);'
2019-11-15 09:23:51 -05:00
Nick Mathewson
97b5ff2b1d
Merge branch 'ticket32211'
2019-11-15 09:10:11 -05:00
Nick Mathewson
8746fedce4
Initialization documents: incorporate feedback from review.
...
(Thanks, Taylor!)
2019-11-15 09:00:54 -05:00
teor
d19f370aa2
Run "make autostyle"
2019-11-14 16:28:39 +10:00
Nick Mathewson
6744f6b6bb
HACKING/design: move 01c-time.md into doxygen.
2019-11-12 12:14:14 -05:00
Nick Mathewson
b0f9ecdbb1
Move 01g-strings.md into doxygen.
2019-11-12 12:09:53 -05:00
Nick Mathewson
d1a1631a05
01f-threads.md becomes threading.dox.
2019-11-12 12:05:05 -05:00
Nick Mathewson
91f377deec
HACKING/design: turn the remaining parts of crypto into a certs doc
2019-11-12 12:01:33 -05:00
Nick Mathewson
3d1a7d7dd7
Light grammar edits
2019-11-11 12:26:09 -05:00
Nick Mathewson
7c3378fb8d
Merge remote-tracking branch 'tor-github/pr/1338'
2019-11-11 12:20:14 -05:00
Nick Mathewson
4462766d32
Merge branch 'ticket32404'
2019-11-11 11:54:14 -05:00
Nick Mathewson
9d562bba40
clarify OBSOLETE vs IGNORE.
2019-11-11 11:54:02 -05:00
Nick Mathewson
ee33bf5ee0
Doxygen: close an unterminated <b>.
2019-11-11 10:23:41 -05:00
Nick Mathewson
ff930c3305
doxygen: use <tt> and # to avoid interpreting # as a link.
2019-11-11 10:23:13 -05:00
Nick Mathewson
2d508f8fa5
Not const.
2019-11-10 16:14:38 -05:00
Nick Mathewson
a6d22d7fc2
Improve subsys documentation; add initialization documentation.
2019-11-10 16:13:23 -05:00
Nick Mathewson
a08969e460
Refactor "OBSOLETE" type
...
It no longer warns, and is now defined in terms of an "IGNORE" type.
(The "IGNORE" type is the same as "OBSOLETE", except that it is not
reported as obsolete. It should be useful for disabled modules.)
Closes ticket 32404.
2019-11-07 11:01:25 -05:00
Nick Mathewson
36af84ba50
New configuration flag to warn that a variable is obsolete.
...
Part of 32404.
2019-11-07 09:14:44 -05:00
Nick Mathewson
31a6a6512f
Rename probability distribution names to end with "_t".
...
I needed to do this by hand, since we also use these for function
names, variable names, macro expansion, and a little token pasting.
2019-11-07 08:56:07 -05:00
Nick Mathewson
4845ab53f0
Make all our struct names end with "_t".
...
This is an automated commit, generated by this command:
./scripts/maint/rename_c_identifier.py \
address_ttl_s address_ttl_t \
aes_cnt_cipher aes_cnt_cipher_t \
authchallenge_data_s authchallenge_data_t \
authenticate_data_s authenticate_data_t \
cached_bw_event_s cached_bw_event_t \
cbuf cbuf_t \
cell_ewma_s cell_ewma_t \
certs_data_s certs_data_t \
channel_idmap_entry_s channel_idmap_entry_t \
channel_listener_s channel_listener_t \
channel_s channel_t \
channel_tls_s channel_tls_t \
circuit_build_times_s circuit_build_times_t \
circuit_muxinfo_s circuit_muxinfo_t \
circuitmux_policy_circ_data_s circuitmux_policy_circ_data_t \
circuitmux_policy_data_s circuitmux_policy_data_t \
circuitmux_policy_s circuitmux_policy_t \
circuitmux_s circuitmux_t \
coord coord_t \
cpuworker_job_u cpuworker_job_u_t \
cv_testinfo_s cv_testinfo_t \
ddmap_entry_s ddmap_entry_t \
dircollator_s dircollator_t \
dist_ops dist_ops_t \
ecdh_work_s ecdh_work_t \
ewma_policy_circ_data_s ewma_policy_circ_data_t \
ewma_policy_data_s ewma_policy_data_t \
fp_pair_map_entry_s fp_pair_map_entry_t \
fp_pair_map_s fp_pair_map_t \
guard_selection_s guard_selection_t \
mbw_cache_entry_s mbw_cache_entry_t \
outbuf_table_ent_s outbuf_table_ent_t \
queued_event_s queued_event_t \
replyqueue_s replyqueue_t \
rsa_work_s rsa_work_t \
sandbox_cfg_elem sandbox_cfg_elem_t \
scheduler_s scheduler_t \
smp_param smp_param_t \
socket_table_ent_s socket_table_ent_t \
state_s state_t \
threadpool_s threadpool_t \
timeout_cb timeout_cb_t \
tor_libevent_cfg tor_libevent_cfg_t \
tor_threadlocal_s tor_threadlocal_t \
url_table_ent_s url_table_ent_t \
worker_state_s worker_state_t \
workerthread_s workerthread_t \
workqueue_entry_s workqueue_entry_t
2019-11-07 08:41:22 -05:00
Nick Mathewson
de7053b896
Adjustments to 32406 per review
...
When we are failing because of a lack of a _required_ engine, note
that the engine was "required".
When engines are disabled, any required engine should cause a
failure.
2019-11-07 07:42:58 -05:00
Nick Mathewson
32a2f96f82
Add the ability to fail when a hardware accelerator is missing.
...
Closes ticket 32406.
2019-11-07 07:28:43 -05:00
Nick Mathewson
0f0a9bdf33
Stop using "config_suite_offset=-1" to indicate "no config suite."
...
Instead, create a separate "has_config_suite" boolean, so that only
top-level formats with config_suites need to declare an offset at
all.
2019-11-07 07:28:43 -05:00
Nick Mathewson
0d8504e70b
crypto config: do not change the user's value of HardwareAccel.
...
We still interpret "AccelName" as turning on the "HardwareAccel"
feature, but we no longer modify the user's options here.
Fixes bug 32382; bugfix on 0.2.2.1-alpha when we added openssl
engine support.
2019-11-07 07:28:43 -05:00
Nick Mathewson
8cd3e66d93
Use new configuration architecture for crypto options
...
This is a comparatively simple change.
2019-11-07 07:28:43 -05:00
Nick Mathewson
52c0ab4af3
Add subsys functions for receiving/flushing states and options.
...
These functions are in the subsystem, not in the config_format_t,
since they are about how the format is _used_, not about _what it
is_.
2019-11-07 07:28:43 -05:00
Nick Mathewson
7ac4f9d5ec
Give subsystems optional config formats and state formats.
...
The formats, when provided, are now added to the global config_mgr_t
objects.
2019-11-07 07:28:43 -05:00
Nick Mathewson
8638989308
Expose get_obj() functions from confmgt.c.
...
The subsysmgr code wants to use them.
2019-11-07 07:28:43 -05:00
Nick Mathewson
1d108894e7
Define a low-level version of the confdecl table macros
...
This version uses the enum rather than the type definitions, to
avoid layering violations and linking problems.
2019-11-07 07:28:43 -05:00
Nick Mathewson
683d4c2bc8
Add FOO_type_defn globals so that confdecl.h can refer to them.
2019-11-07 07:28:43 -05:00
Nick Mathewson
19cac400d9
Macros for declaring configuration structs and variable-tables
...
In our old design, we had to declare configuration structures (like
or_options_t) and variable tables (like option_vars_) separately,
and we used some magic to enforce their consistency (see
conftesting.h).
With this design, we write a single definition for the configuration
object and its fields, and use C macros to expand it either into a
structure, or a variable table. Since they are both made from the
same source, they can't become inconsistent.
The two designs can coexist happily, and we can migrate from one to
the other at our convenience.
2019-11-07 07:28:43 -05:00
Nick Mathewson
4541a59019
lib/cc: Define the standard C macro pasting trick in one place.
...
This file is a workaround for the issue that if you say `a ## b` to
create a token that is the name of a macro, the C preprocessor won't
expand that macro. So you can't say this:
#define FOO__SQUARE(x) ((x)*(x))
#define FOO__CUBE(x) ((x)*(x)*(x))
#define FOO(func, x) FOO__##func(x)
Instead, the standard C trick is to add a layer of indirection:
#define PASTE(a,b) PASTE__(a,b)
#define PASTE__(a,b) a ## b
#define FOO__SQUARE(x) ((x)*(x))
#define FOO__CUBE(x) ((x)*(x)*(x))
#define FOO(func, x) PASTE(FOO__, func)(x)
We should use this kind of trick sparingly, since it gets confusing.
2019-11-07 07:28:43 -05:00
teor
e466c84ed3
Merge branch 'maint-0.4.2'
2019-11-07 10:51:48 +10:00
teor
1f3bf10d3f
Merge remote-tracking branch 'tor-github/pr/1513' into maint-0.4.2
2019-11-07 10:51:22 +10:00
Nick Mathewson
9687efb386
Add a bunch of doxygen for things in src/lib.
2019-11-06 14:40:20 -05:00
Nick Mathewson
9663ac0027
int_type_params_t: add documentation.
2019-11-06 13:07:13 -05:00
Nick Mathewson
88796637e5
dispatch_cfg_st.h: make comments into doxygen.
2019-11-06 13:05:36 -05:00
Nick Mathewson
4d70e725d1
Do not try to shut down the event loop when it is not initialized.
...
Doing so caused us to crash in some unusual circumstances, such as
using --verify-config to verify a configuration that failed during
the options_act() stage.
Fixes bug 32407; bugfix on 0.3.3.1-alpha.
2019-11-06 11:33:23 -05:00
Nick Mathewson
8933789fef
Merge branch 'doxygen_libs'
2019-11-05 08:05:49 -05:00