Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
David Goulet
Tor
Commits
bb249a22
Commit
bb249a22
authored
Oct 14, 2020
by
David Goulet
🔆
Browse files
Merge branch 'tor-gitlab/mr/170'
parents
f02f8f89
a251cff0
Changes
8
Hide whitespace changes
Inline
Side-by-side
changes/ticket40139
0 → 100644
View file @
bb249a22
o Removed features (network parameters):
- The "optimistic data" feature is now always on; there is no longer an
option to disable it from the torrc file or from the consensus
directory.
Closes part of 40139.
- The "usecreatefast" network parameter is now removed; there is no
longer an option for authorities to turn it off. Closes part of 40139.
doc/man/tor.1.txt
View file @
bb249a22
...
...
@@ -1309,15 +1309,6 @@ The following options are useful only for clients (that is, if
Every NUM seconds consider whether to build a new circuit. (Default: 30
seconds)
[[OptimisticData]] **OptimisticData** **0**|**1**|**auto**::
When this option is set, and Tor is using an exit node that supports
the feature, it will try optimistically to send data to the exit node
without waiting for the exit node to report whether the connection
succeeded. This can save a round-trip time for protocols like HTTP
where the client talks first. If OptimisticData is set to **auto**,
Tor will look at the UseOptimisticData parameter in the networkstatus.
(Default: auto)
// These are out of order because they logically belong together
[[PathBiasCircThreshold]] **PathBiasCircThreshold** __NUM__ +
...
...
src/app/config/config.c
View file @
bb249a22
...
...
@@ -610,7 +610,7 @@ static const config_var_t option_vars_[] = {
V
(
TestingAuthKeySlop
,
INTERVAL
,
"3 hours"
),
V
(
TestingSigningKeySlop
,
INTERVAL
,
"1 day"
),
V
(
OptimisticData
,
AUTOBOOL
,
"auto
"
),
OBSOLETE
(
"
OptimisticData"
),
OBSOLETE
(
"PortForwarding"
),
OBSOLETE
(
"PortForwardingHelper"
),
OBSOLETE
(
"PreferTunneledDirConns"
),
...
...
src/app/config/or_options_st.h
View file @
bb249a22
...
...
@@ -868,10 +868,6 @@ struct or_options_t {
* once. */
int
MaxClientCircuitsPending
;
/** If 1, we always send optimistic data when it's supported. If 0, we
* never use it. If -1, we do what the consensus says. */
int
OptimisticData
;
/** If 1, we accept and launch no external network connections, except on
* control ports. */
int
DisableNetwork
;
...
...
src/core/or/circuitbuild.c
View file @
bb249a22
...
...
@@ -770,27 +770,15 @@ circuit_deliver_create_cell,(circuit_t *circ,
return
-
1
;
}
/** Return true iff we should send a create_fast cell to start building a
given
* circuit */
static
inline
int
/** Return true iff we should send a create_fast cell to start building a
*
given
circuit */
static
inline
bool
should_use_create_fast_for_circuit
(
origin_circuit_t
*
circ
)
{
const
or_options_t
*
options
=
get_options
();
tor_assert
(
circ
->
cpath
);
tor_assert
(
circ
->
cpath
->
extend_info
);
if
(
!
circuit_has_usable_onion_key
(
circ
))
{
/* We don't have ntor, and we don't have or can't use TAP,
* so our hand is forced: only a create_fast will work. */
return
1
;
}
if
(
public_server_mode
(
options
))
{
/* We're a server, and we have a usable onion key. We can choose.
* Prefer to blend our circuit into the other circuits we are
* creating on behalf of others. */
return
0
;
}
return
networkstatus_get_param
(
NULL
,
"usecreatefast"
,
0
,
0
,
1
);
return
!
circuit_has_usable_onion_key
(
circ
);
}
/**
...
...
src/core/or/circuituse.c
View file @
bb249a22
...
...
@@ -2632,22 +2632,6 @@ cpath_is_on_circuit(origin_circuit_t *circ, crypt_path_t *crypt_path)
return
0
;
}
/** Return true iff client-side optimistic data is supported. */
static
int
optimistic_data_enabled
(
void
)
{
const
or_options_t
*
options
=
get_options
();
if
(
options
->
OptimisticData
<
0
)
{
/* Note: this default was 0 before #18815 was merged. We can't take the
* parameter out of the consensus until versions before that are all
* obsolete. */
const
int32_t
enabled
=
networkstatus_get_param
(
NULL
,
"UseOptimisticData"
,
/*default*/
1
,
0
,
1
);
return
(
int
)
enabled
;
}
return
options
->
OptimisticData
;
}
/** Attach the AP stream <b>apconn</b> to circ's linked list of
* p_streams. Also set apconn's cpath_layer to <b>cpath</b>, or to the last
* hop in circ's cpath if <b>cpath</b> is NULL.
...
...
@@ -2700,11 +2684,10 @@ link_apconn_to_circ(entry_connection_t *apconn, origin_circuit_t *circ,
exitnode
=
node_get_by_id
(
cpath
->
extend_info
->
identity_digest
);
/* See if we can use optimistic data on this circuit */
if
(
optimistic_data_enabled
()
&&
(
circ
->
base_
.
purpose
==
CIRCUIT_PURPOSE_C_GENERAL
||
circ
->
base_
.
purpose
==
CIRCUIT_PURPOSE_C_HSDIR_GET
||
circ
->
base_
.
purpose
==
CIRCUIT_PURPOSE_S_HSDIR_POST
||
circ
->
base_
.
purpose
==
CIRCUIT_PURPOSE_C_REND_JOINED
))
if
(
circ
->
base_
.
purpose
==
CIRCUIT_PURPOSE_C_GENERAL
||
circ
->
base_
.
purpose
==
CIRCUIT_PURPOSE_C_HSDIR_GET
||
circ
->
base_
.
purpose
==
CIRCUIT_PURPOSE_S_HSDIR_POST
||
circ
->
base_
.
purpose
==
CIRCUIT_PURPOSE_C_REND_JOINED
)
apconn
->
may_use_optimistic_data
=
1
;
else
apconn
->
may_use_optimistic_data
=
0
;
...
...
src/test/conf_examples/large_1/expected
View file @
bb249a22
...
...
@@ -110,7 +110,6 @@ NumDirectoryGuards 4
NumEntryGuards 5
NumPrimaryGuards 8
OfflineMasterKey 1
OptimisticData 1
ORPort 2222
OutboundBindAddress 10.0.0.7
OutboundBindAddressExit 10.0.0.8
...
...
src/test/conf_examples/large_1/expected_no_dirauth
View file @
bb249a22
...
...
@@ -109,7 +109,6 @@ NumDirectoryGuards 4
NumEntryGuards 5
NumPrimaryGuards 8
OfflineMasterKey 1
OptimisticData 1
ORPort 2222
OutboundBindAddress 10.0.0.7
OutboundBindAddressExit 10.0.0.8
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment