Age | Commit message (Collapse) | Author |
|
This is checked elsewhere too, but let's be RFC-conformant.
|
|
In dnsserv_resolved(), we carefully made a nul-terminated copy of the
answer in a PTR RESOLVED cell... then never used that nul-terminated
copy. Ouch.
Surprisingly this one isn't as huge a security problem as it could be.
The only place where the input to dnsserv_resolved wasn't necessarily
nul-terminated was when it was called indirectly from relay.c with the
contents of a relay cell's payload. If the end of the payload was
filled with junk, eventdns.c would take the strdup() of the name [This
part is bad; we might crash there if the cell is in a bad part of the
stack or the heap] and get a name of at least length
495[*]. eventdns.c then rejects any name of length over 255, so the
bogus data would be neither transmitted nor altered.
[*] If the name was less than 495 bytes long, the client wouldn't
actually be reading off the end of the cell.
Nonetheless this is a reasonably annoying bug. Better fix it.
Found while looking at bug 2332, reported by doorss. Bugfix on
0.2.0.1-alpha.
|
|
|
|
|
|
|
|
svn:r18492
|
|
Fixes the bug part of bug 789.
svn:r17983
|
|
The subversion $Id$ fields made every commit force a rebuild of
whatever file got committed. They were not actually useful for
telling the version of Tor files in the wild.
svn:r17867
|
|
comments so that they will get recognized as doxygen.
svn:r17729
|
|
patch.
svn:r17686
|
|
svn:r17198
|
|
make DNSPort replies perserve case.
svn:r17170
|
|
svn:r16785
|
|
Make tor_addr_from_sockaddr also give away the port in a useful format
svn:r16458
|
|
Initial conversion of uint32_t addr to tor_addr_t addr in connection_t and related types. Most of the Tor wire formats using these new types are in, but the code to generate and use it is not. This is a big patch. Let me know what it breaks for you.
svn:r16435
|
|
Make generic address manipulation functions work better. Switch address policy code to use tor_addr_t, so it can handle IPv6. That is a good place to start.
svn:r16178
|
|
More 64-to-32 fixes. Partial backport candidate. still not done.
svn:r13680
|
|
Fix all but 2 DOCDOC items; defer many XXX020s (particularly those where fixing them would fix no bugs at the risk of introducing some bugs).
svn:r13529
|
|
Re-tune mempool parametes based on testing on peacetime: use smaller chuncks, free them a little more aggressively, and try very hard to concentrate allocations on fuller chunks. Also, lots of new documentation.
svn:r13484
|
|
svn:r13412
|
|
Correctly register failures in connection_add() in dnsserv_launch_request()
svn:r13387
|
|
Oops; fix compile
svn:r13131
|
|
add some missing checks for failing return values.
svn:r13130
|
|
svn:r12786
|
|
Better comment in dnsserv.c
svn:r11376
|
|
Patch from Robert Hogan: set conn->dns_server_port correctly so that we can close dns server ports when they change, thus avoiding crashes and dangling references and other sources of unhappiness.
svn:r10933
|
|
Man. I thought I removed that code.
svn:r10785
|
|
Get the RESOLVE controller code working.
svn:r10781
|
|
fix copy-paste error in config message src/or/config.c . Apply
initial (but pared-down) version of launch-resolve-via-controller
patch from Robert Hogan.
svn:r10780
|
|
Fix a type error in the last checkin.
svn:r10738
|
|
Patch from Robert Hogan: Generate STREAM NEW events for dnsport requests and tunneled directory connections. Log when we are testing for hijacking.
svn:r10737
|
|
Report address and por correctly on requests to dnsport. (Patch from Robert Hogan.)
svn:r10641
|
|
Add dnsport connection to the global connection list. (Bug found by mwenge.)
svn:r10592
|
|
Patch from peter palfrader: control interface via unix domain socket
svn:r10504
|
|
Try to fix some mipspro compiler warnings. There will still be some left.
svn:r10444
|
|
Patch from Tup: treat RESOLVED_TYPE_ERROR_TRANSIENT as a SERVERFAILED, and RESOLVED_TYPE_ERROR as NOTEXIST. Generate transient/nontransient errors more sensibly. Set flags better on DNS replies.
svn:r10427
|
|
Resolve all but 3 DOCDOCs.
svn:r10393
|
|
Fix more dnsport bugs: set state correctly, and actually cache the answers.
svn:r10328
|
|
Well, that was easier than I thought it would be. Tor is now a DNS proxy as well as a socks proxy. Probably some bugs remain, but since it A) has managed to resolve one address for me successfully, and B) will not affect anybody who leaves DNSPort unset, it feel like a good time to commit.
svn:r10317
|