tor/src/or
Nick Mathewson 77a1935339 Fix (Open?)BSD fast-connect bug with optimistic data.
There's an assertion failure that can occur if a connection has
optimistic data waiting, and then the connect() call returns 0 on the
first attempt (rather than -1 and EINPROGRESS).  That latter behavior
from connect() appears to be an (Open?)BSDism when dealing with remote
addresses in some cases. (At least, I've only seen it reported with
the BSDs under libevent, even when the address was 127.0.0.1.  And
we've only seen this problem in Tor with OpenBSD.)

Fixes bug 9017; bugfix on 0.2.3.1-alpha, which first introduced
optimistic data. (Although you could also argue that the commented-out
connection_start_writing in 155c9b80 back in 2002 is the real source
of the issue.)
2013-06-10 12:14:49 -04:00
..
buffers.c Don't run off the end of the array-of-freelists 2013-05-09 13:10:48 -04:00
buffers.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
circuitbuild.c Don't call fmt_addr() twice in a parameter list. 2012-10-09 23:46:04 -04:00
circuitbuild.h Merge remote-tracking branch 'asn-mytor/bug5589_take2' 2012-06-14 13:05:16 -04:00
circuitlist.c Add and use and unlikely-to-be-eliminated memwipe() 2012-11-08 16:44:50 -05:00
circuitlist.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
circuituse.c Make begindir_cutoff the same as general_cutoff 2012-09-01 01:25:17 -04:00
circuituse.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
command.c Reject create/begin/etc cells with {circ,stream}ID 0. 2013-01-14 14:02:13 -05:00
command.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
config_codedigest.c Resolve about 24 DOCDOCs 2012-06-05 00:17:54 -04:00
config.c add faravahar as our ninth v3 dir auth 2012-09-22 09:10:37 -04:00
config.h whitespace fix 2012-08-17 17:10:03 -04:00
connection_edge.c Fix (Open?)BSD fast-connect bug with optimistic data. 2013-06-10 12:14:49 -04:00
connection_edge.h Merge remote-tracking branch 'public/bug3940_redux' 2012-06-13 11:40:38 -04:00
connection_or.c Add and use and unlikely-to-be-eliminated memwipe() 2012-11-08 16:44:50 -05:00
connection_or.h Discard extraneous renegotiation attempts in the v3 link protocol 2012-10-17 19:18:16 -04:00
connection.c Avoid busy-looping on WANTREAD within connection_handle_write 2013-04-12 01:11:31 -04:00
connection.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
control.c Fix wildcarded address mappings from the control port 2012-08-15 17:59:30 -04:00
control.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
cpuworker.c Change all SMARTLIST_FOREACH loops of >=10 lines to use BEGIN/END 2012-07-17 10:34:08 -04:00
cpuworker.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
directory.c Don't serve or accept v2 HS descs over a DirPort 2012-10-19 02:56:25 -04:00
directory.h Don't infer we have a FooPort from the presence of a FooPort line 2012-08-09 15:48:43 -04:00
dirserv.c Don't infer we have a FooPort from the presence of a FooPort line 2012-08-09 15:48:43 -04:00
dirserv.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
dirvote.c Merge remote-tracking branch 'origin/maint-0.2.2' into maint-0.2.3 2012-09-11 13:20:15 -04:00
dirvote.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
dns.c When iterating over connections pending DNS, skip marked ones 2012-08-17 16:46:11 -04:00
dns.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
dnsserv.c Triage the XXX023 and XXX022 comments: postpone many. 2012-06-15 15:07:52 -04:00
dnsserv.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
eventdns_tor.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
eventdns.c Be more careful calling wcstombs 2012-06-07 11:09:38 -04:00
eventdns.h Use the standard _WIN32, not the Torism MS_WINDOWS or deprecated WIN32 2012-01-31 15:48:47 -05:00
geoip.c Change all SMARTLIST_FOREACH loops of >=10 lines to use BEGIN/END 2012-07-17 10:34:08 -04:00
geoip.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
hibernate.c Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
hibernate.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
main.c use a more logical operator 2012-11-12 23:47:21 -05:00
main.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
Makefile.am Merge remote-tracking branch 'origin/maint-0.2.2' 2012-02-12 23:27:31 -05:00
Makefile.nmake Be a good git person: store nmakefiles in correct text fmt 2012-05-14 13:01:05 -04:00
microdesc.c fix whitespace and trivial typo 2012-09-03 02:09:39 -04:00
microdesc.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
networkstatus.c Add and use and unlikely-to-be-eliminated memwipe() 2012-11-08 16:44:50 -05:00
networkstatus.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
nodelist.c Catch a few more K&R violations with make check-spaces 2012-06-23 15:54:01 -04:00
nodelist.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
ntmain.c Be more careful calling wcstombs 2012-06-07 11:09:38 -04:00
ntmain.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
onion.c Add and use and unlikely-to-be-eliminated memwipe() 2012-11-08 16:44:50 -05:00
onion.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
or.h Avoid busy-looping on WANTREAD within connection_handle_write 2013-04-12 01:11:31 -04:00
policies.c Let 0.2.3 clients exit to internal addresses if they want 2012-10-23 17:18:01 -04:00
policies.h Fix parse_short_policy (bug 7192.) 2012-10-23 13:49:48 -04:00
reasons.c Merge remote-tracking branch 'public/bug4710' 2012-06-05 10:16:28 -04:00
reasons.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
relay.c Reject create/begin/etc cells with {circ,stream}ID 0. 2013-01-14 14:02:13 -05:00
relay.h Move tor_gettimeofday_cached() into compat_libevent 2012-06-15 15:07:53 -04:00
rendclient.c Add and use and unlikely-to-be-eliminated memwipe() 2012-11-08 16:44:50 -05:00
rendclient.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
rendcommon.c Resolve about 24 DOCDOCs 2012-06-05 00:17:54 -04:00
rendcommon.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
rendmid.c Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
rendmid.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
rendservice.c Add and use and unlikely-to-be-eliminated memwipe() 2012-11-08 16:44:50 -05:00
rendservice.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
rephist.c Avoid segfault when reading state file from ancient tor 2012-09-10 10:35:18 -04:00
rephist.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
router.c oops; add a missing semicolon 2013-02-12 10:51:20 -05:00
router.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
routerlist.c Consider IPv6 OR ports when deciding whether a routerinfo change is cosmetic. 2012-08-17 15:59:13 -04:00
routerlist.h Resolve about 24 DOCDOCs 2012-06-05 00:17:54 -04:00
routerparse.c Add and use and unlikely-to-be-eliminated memwipe() 2012-11-08 16:44:50 -05:00
routerparse.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
status.c Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
status.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
tor_main.c Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00
transports.c Don't do DNS lookups when parsing corrupted managed proxy messages. 2012-06-25 13:19:22 -04:00
transports.h Update copyright dates to 2012; add a few missing copyright statements 2012-06-04 20:58:17 -04:00