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
3dfeaaaf
Commit
3dfeaaaf
authored
Jan 11, 2007
by
Nick Mathewson
🐻
Browse files
r11931@Kushana: nickm | 2007-01-11 09:12:49 -0500
Fix a crash bug in the presence of DNS hijacking. svn:r9333
parent
0c77ae2f
Changes
2
Hide whitespace changes
Inline
Side-by-side
ChangeLog
View file @
3dfeaaaf
Changes in version 0.1.2.7-alpha - 2007-??-??
o Major bugfixes:
- Fix a crash bug in the presence of DNS hijacking (reported by Andrew
Del Vecchio).
o Minor bugfixes:
- When computing clock skew from directory HTTP headers, consider what
time it was when we finished asking for the directory, not what time it
...
...
src/or/dns.c
View file @
3dfeaaaf
...
...
@@ -1625,12 +1625,10 @@ evdns_callback(int result, char type, int count, int ttl, void *addresses,
status
=
DNS_RESOLVE_FAILED_TRANSIENT
;
}
if
(
was_wildcarded
)
{
int
is_test_addr
=
is_test_address
(
hostname
);
if
(
is_test_addr
)
{
if
(
is_test_address
(
string_address
))
{
/* Ick. We're getting redirected on known-good addresses. Our DNS
* server must really hate us. */
add_wildcarded_test_address
(
hostname
);
add_wildcarded_test_address
(
string_address
);
}
}
if
(
result
!=
DNS_ERR_SHUTDOWN
)
...
...
@@ -1744,16 +1742,19 @@ wildcard_increment_answer(const char *id)
static
void
add_wildcarded_test_address
(
const
char
*
address
)
{
int
n
;
int
n
,
n_test_addrs
;
if
(
!
dns_wildcarded_test_address_list
)
dns_wildcarded_test_address_list
=
smartlist_create
();
if
(
smartlist_string_isin_case
(
dns_wildcarded_test_address_list
,
address
))
return
;
n_test_addrs
=
get_options
()
->
ServerDNSTestAddresses
?
smartlist_len
(
get_options
()
->
ServerDNSTestAddresses
)
:
0
;
smartlist_add
(
dns_wildcarded_test_address_list
,
tor_strdup
(
address
));
n
=
smartlist_len
(
dns_wildcarded_test_address_list
);
if
(
n
>
smartlist_len
(
get_options
()
->
ServerDNST
est
A
ddr
esses
)
/
2
)
{
if
(
n
>
n_t
est
_a
ddr
s
/
2
)
{
log
(
dns_wildcarded_test_address_notice_given
?
LOG_INFO
:
LOG_NOTICE
,
LD_EXIT
,
"Your DNS provider tried to redirect
\"
%s
\"
to a junk "
"address. It has done this with %d test addresses so far. I'm "
...
...
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