Commit Graph

1227 Commits

Author SHA1 Message Date
Roger Dingledine
e34c201bb3 and other debugs
svn:r1722
2004-04-26 22:22:18 +00:00
Roger Dingledine
719bb5c0f3 log debug so nick can see it too
svn:r1721
2004-04-26 22:22:11 +00:00
Peter Palfrader
750211259b The dots are there so you see test doing something. Therefore we should flush them after printing
svn:r1720
2004-04-26 22:12:13 +00:00
Roger Dingledine
80d0b634a4 add a debugging entry, to find the wants-to-read-but-can't bug
svn:r1719
2004-04-26 21:15:06 +00:00
Nick Mathewson
337f7a981f Include strerror(errno) with tls syscall errors
svn:r1718
2004-04-26 18:11:58 +00:00
Nick Mathewson
f6dbe5a0d4 Refactor crypto error handling to be more like TLS error handling:
crypto_perror is a no-no, since an operation can set more than one
error.

Also, fix a bug in the unix crypto_seed_rng: mixing stdio with
/dev/urandom is a bad idea, since fopen can make all kinds of weird
extraneous syscalls (mmap, fcntl, stat64, etc.) and since fread tends
to buffer data in big chunks, thus depleting the entropy pool.


svn:r1717
2004-04-26 18:09:50 +00:00
Nick Mathewson
b410dff6c0 Log pending TLS errors in a couple more places, in case they are possible.
svn:r1716
2004-04-26 16:52:47 +00:00
Roger Dingledine
fff89216a9 tell us when we're rotating things
svn:r1712
2004-04-26 09:32:51 +00:00
Roger Dingledine
fb2279b90b since we don't support truncateds much, don't bother sending them;
just close the circ.

(this wasn't relevant before, because we were mis-handling destroys.)


svn:r1711
2004-04-26 04:32:01 +00:00
Roger Dingledine
bd38df8472 fix a bug that's been lurking since 27 may 03 (!)
when passing back a destroy cell, we would use the wrong circ id.
how the heck did this work?


svn:r1710
2004-04-26 03:42:41 +00:00
Nick Mathewson
0355d29e12 Call tls_log_errors at a more appropriate location; we can remove the other calls in tor_tls_verify once we are sure they never happen.
svn:r1709
2004-04-26 03:09:17 +00:00
Nick Mathewson
75dc76eb3e Better error msg on unknown circuit id.
svn:r1708
2004-04-26 03:00:33 +00:00
Nick Mathewson
cb465160da Very blunt debugging code: log pending errors at start and end of tor_tls_verify
svn:r1707
2004-04-26 02:33:12 +00:00
Roger Dingledine
10f3b74cb9 tell us the nickname of the OR that hung up on us
svn:r1706
2004-04-26 01:50:08 +00:00
Nick Mathewson
568a4d187a Check for machine/limits.h in addition to sys/limits.h
svn:r1705
2004-04-25 23:47:26 +00:00
Roger Dingledine
9e5d2ad91c don't crash, if a conn that sent a begin has suddenly lost its circuit
svn:r1704
2004-04-25 22:48:47 +00:00
Roger Dingledine
482d7e7cd3 resolve a double-mark-for-close when things die inside connection_handle_write
svn:r1702
2004-04-25 22:23:54 +00:00
Roger Dingledine
dccbbaa88a give us a new dirservers file
svn:r1700
2004-04-25 21:56:52 +00:00
Roger Dingledine
28f034e10a now assume all routers support rendezvous cells
svn:r1699
2004-04-25 21:32:04 +00:00
Roger Dingledine
25d54257fb use tor_assert
remove obsolete BUF_OK macro


svn:r1697
2004-04-25 20:37:37 +00:00
Roger Dingledine
37192bd25e use tor_assert and PUBLIC_KEY_OK
but don't use tor_assert inside log.c, to avoid loops


svn:r1696
2004-04-25 19:59:38 +00:00
Nick Mathewson
e062ca046b Add a tor_assert macro that logs failed assertions.
svn:r1695
2004-04-25 19:37:39 +00:00
Nick Mathewson
70bbd0cafa Add assert on crypto_pk_write_private_key,and macros to make sure we have real keys
svn:r1694
2004-04-25 19:21:44 +00:00
Nick Mathewson
0fca143ea1 Remove onion_pkey from connection, since onion keys can change more often than connections. Also add more log messages
svn:r1693
2004-04-25 19:04:11 +00:00
Nick Mathewson
cb3897e5ab remove spurious router_rebuild_descriptor
svn:r1692
2004-04-25 19:01:49 +00:00
Roger Dingledine
7fbc35c136 don't build and upload a new desc twice in a row
svn:r1691
2004-04-25 05:19:03 +00:00
Roger Dingledine
e355ed0e15 log correctly if decoding onion failed
svn:r1690
2004-04-25 04:49:11 +00:00
Roger Dingledine
6a45028ccb don't warn when private_decrypt_hybrid fails
svn:r1689
2004-04-25 04:32:59 +00:00
Roger Dingledine
7e2a2a7f81 bugfix: when rotating onion key, do it (more) correctly
svn:r1688
2004-04-25 03:38:19 +00:00
Roger Dingledine
0b31d0d4e8 more touch-ups
svn:r1687
2004-04-24 23:32:24 +00:00
Nick Mathewson
3ace033c0c Spurious link-key should not be an error
svn:r1686
2004-04-24 22:50:09 +00:00
Nick Mathewson
220e859912 Note router addr:port in log messages
svn:r1685
2004-04-24 22:40:32 +00:00
Nick Mathewson
2e47a0f009 Compare nicknames casei.
svn:r1684
2004-04-24 22:34:31 +00:00
Nick Mathewson
c44016e86e Merge flagday into main branch.
svn:r1683
2004-04-24 22:17:50 +00:00
Roger Dingledine
3c250a2fed only expire wedged dir conns that haven't already been expired
svn:r1676
2004-04-20 17:27:54 +00:00
Roger Dingledine
06a60c4fbb use the real socketpair if we've got it
now it's just windows that has to use the kludged one


svn:r1675
2004-04-19 21:31:32 +00:00
Roger Dingledine
a3200f79cd the socketpair bug is no longer a bug
now it is a documented behavior


svn:r1674
2004-04-19 21:25:48 +00:00
Roger Dingledine
5cfec379ae expire wedged dir conns after 5min without write, not simply after 5min
svn:r1673
2004-04-19 20:08:42 +00:00
Roger Dingledine
d40e9f453f give wedged dir conns a last chance to flush
svn:r1671
2004-04-19 01:59:20 +00:00
Roger Dingledine
c4b72a254f tmp patch to also expire old clean rend_ready circs for now
will have to be fixed once we build-and-open rend circs preemptively


svn:r1668
2004-04-18 09:27:05 +00:00
Roger Dingledine
e9ebefc8bf bugfix: you mean we're supposed to reuse fresh descriptors and
refetch stale ones, not reuse stale ones and refetch fresh ones?


svn:r1667
2004-04-18 09:04:37 +00:00
Roger Dingledine
bce1fc43a2 when you get an intro ack, don't also count it as an intro nack
svn:r1666
2004-04-18 08:38:40 +00:00
Roger Dingledine
3fa2925a6a if an intro circ waiting for an ack dies before getting one, then
count it as a nack


svn:r1665
2004-04-18 07:37:16 +00:00
Roger Dingledine
8d86f8abf5 reverse the logic, captain
svn:r1664
2004-04-18 06:42:13 +00:00
Roger Dingledine
7a7baf0552 expire dir connections that live for more than 5 minutes
svn:r1663
2004-04-18 06:35:31 +00:00
Roger Dingledine
14c30fe9fa bugfix: give dir_conn a state before building the bridge, so it has
a state if things fail


svn:r1660
2004-04-17 20:19:43 +00:00
Roger Dingledine
65d507b980 log n_circ_ids when attaching rend streams
svn:r1657
2004-04-17 10:25:38 +00:00
Roger Dingledine
26dd5c68b0 a ! goes a long way toward more helpful debug messages
svn:r1656
2004-04-17 10:04:00 +00:00
Roger Dingledine
bd4a776576 include sys/limits.h if it's found
svn:r1654
2004-04-17 06:35:18 +00:00
Roger Dingledine
a54ded2879 util.c uses LONG_MAX, needs another include on fbsd 5.x
svn:r1653
2004-04-17 06:35:03 +00:00
Roger Dingledine
01e594e512 clean up some warnings
svn:r1651
2004-04-17 06:34:20 +00:00
Roger Dingledine
0e94b9ff77 more useful logs to track weasel's bug
svn:r1649
2004-04-17 05:17:40 +00:00
Roger Dingledine
f5427463f5 more debugging to hunt for a bug
svn:r1647
2004-04-17 01:33:04 +00:00
Roger Dingledine
8d62a36256 bugfix: when you sleep your hidden-service laptop, as soon
as it wakes up it tries to upload a service descriptor, but
socketpair fails for some reason (localhost not up yet?)

now we simply give up on that upload, and we'll try again later.


svn:r1646
2004-04-17 00:46:05 +00:00
Roger Dingledine
f36d7b8fea fix another rare bug: when we had tried all the intro
points for a hidden service, we fetched the descriptor
again, but we left our introcirc thinking it had already
sent an intro, so it kept waiting for a response...


svn:r1644
2004-04-16 14:35:28 +00:00
Roger Dingledine
ed24a4f807 fix a pair of duplicate mark-for-closes
svn:r1643
2004-04-16 14:26:23 +00:00
Roger Dingledine
f84fa39d87 when alice uses a port that the hidden service doesn't accept,
it now sends back an end cell (denied by exit policy). otherwise
alice would just have to wait to time out.


svn:r1642
2004-04-16 13:49:14 +00:00
Roger Dingledine
a0a6ed85d1 more useful logging for rend services and clients
svn:r1641
2004-04-16 11:48:03 +00:00
Roger Dingledine
359c1fb9aa wait a minute, weasel said there was a memory-stomping bug here
let's see if we find it


svn:r1639
2004-04-16 08:49:14 +00:00
Roger Dingledine
9c1470840f i was wrong about one of my invariants
now it's commented
this should fix asserts when you try an intro point, get a nack,
and try a second one and it works.


svn:r1637
2004-04-16 08:21:35 +00:00
Roger Dingledine
598d8b8f79 put in an extra assert, might find a bug these way
svn:r1636
2004-04-16 04:41:07 +00:00
Roger Dingledine
4c2de3a2b6 compress end-of-second summary into one line
svn:r1635
2004-04-15 22:09:14 +00:00
Roger Dingledine
4d380ea902 quiet a -l info that should be -l debug
svn:r1634
2004-04-15 22:08:37 +00:00
Nick Mathewson
880ffd8f64 Must detach before attaching, or else we infinite-loop
svn:r1632
2004-04-15 03:48:26 +00:00
Nick Mathewson
f6dd710aff Strings need room for a NUL.
svn:r1630
2004-04-15 02:02:46 +00:00
Nick Mathewson
3f352719f3 Add a missing return -1
svn:r1629
2004-04-15 01:23:43 +00:00
Roger Dingledine
26c1c8f173 make unattached rend streams expire after a while (60s)
(they were darned persistent)

also make intro circs that are waiting for acks expire after a while (20s)


svn:r1628
2004-04-15 01:08:59 +00:00
Roger Dingledine
ac38746b3b narrow in closer
svn:r1627
2004-04-15 00:03:48 +00:00
Roger Dingledine
b51561f7fb prune abandoned circs better
add debugging info for the bug weasel found


svn:r1626
2004-04-14 23:52:29 +00:00
Nick Mathewson
37255d24bc Retry non-final-hop rendezvous failures
svn:r1625
2004-04-14 21:40:50 +00:00
Nick Mathewson
94f126bca3 Never ever leave ri.platform unset.
svn:r1624
2004-04-14 19:51:57 +00:00
Roger Dingledine
cda782bac0 make rendezvous points work again
(yay. now time to mess them up again.)


svn:r1619
2004-04-14 05:18:21 +00:00
Roger Dingledine
49f5e5b4ae handle more purposes in new_route_len
svn:r1618
2004-04-14 05:06:08 +00:00
Roger Dingledine
465f0e528a call circuit_build_failed() even when the failure is immediate
svn:r1617
2004-04-14 04:32:49 +00:00
Nick Mathewson
ddd45a7c0a Do not segfault on missing intro points.
svn:r1616
2004-04-14 04:19:12 +00:00
Roger Dingledine
f07d880f38 remove unused variable
svn:r1615
2004-04-13 23:01:10 +00:00
Roger Dingledine
1d7979b460 let introcircs receive acks. rend streams now deal correctly again.
(i think)


svn:r1614
2004-04-13 22:56:24 +00:00
Nick Mathewson
5514ad715b Scan list of servers in directory after reloading fingerprint list; remove any servers that are no longer recognized.
svn:r1613
2004-04-13 20:06:08 +00:00
Nick Mathewson
baaf58fe1d only consider uploading descriptors every 5 sec
svn:r1612
2004-04-13 19:53:25 +00:00
Nick Mathewson
867832cd07 or, not and
svn:r1610
2004-04-13 18:44:42 +00:00
Nick Mathewson
d19abb2402 Handle END_STREAM_REASON_{EXITPOLICY|RESOLVEFAILED}
svn:r1609
2004-04-13 17:49:41 +00:00
Nick Mathewson
11ca973d26 Mark service descriptors as dirty when we have lost an intro point
svn:r1608
2004-04-13 17:20:41 +00:00
Nick Mathewson
a2ece0fc08 Separate "start-establishing-introduction" from "upload descriptors"; only upload descriptors containing fully established intro points.
svn:r1607
2004-04-13 17:16:47 +00:00
Roger Dingledine
e0ce205a76 clean up circuit rebuilding some; fix some bugs we hadn't hit yet
svn:r1606
2004-04-13 05:20:52 +00:00
Nick Mathewson
c9b5ca39de Handle the rendezvous-circ elements of retrying introductions.
svn:r1604
2004-04-13 03:19:58 +00:00
Nick Mathewson
a4d25bdbd9 <arma> you should make r and i and use r for r and i for i
svn:r1603
2004-04-13 02:36:37 +00:00
Nick Mathewson
e53ba59250 Handle introduce naks. Arma: Is this right?
svn:r1602
2004-04-13 02:31:52 +00:00
Nick Mathewson
8483bace65 Get the rest of intro-ack/nak handling in ... except for the tricky "pick a new intro and re-extend and re-try" part.
svn:r1601
2004-04-13 01:41:39 +00:00
Nick Mathewson
9cd163f6ff Have find_intro_circuit return non-open circs
svn:r1600
2004-04-13 01:15:06 +00:00
Nick Mathewson
5af7e27c62 Re-number the new relay command so as to maintain backward compatibility. Doh!
svn:r1598
2004-04-13 00:38:16 +00:00
Nick Mathewson
a5bfe84509 ACK/NAK INTRODUCE1 requests. (We do no useful processing on them yet)
svn:r1597
2004-04-12 23:33:47 +00:00
Roger Dingledine
f4ff5a75c1 break circuit_build_needed_circs into its own func
svn:r1596
2004-04-12 22:47:12 +00:00
Roger Dingledine
c5052bec95 normal circs are 3 hops, but rend/intro circs are 4, because
the initiator doesn't get to choose the last hop


svn:r1595
2004-04-12 18:40:14 +00:00
Nick Mathewson
fc5a766298 Use service IDs in rendmid. (rendclient and common require no changes, it seems)
svn:r1594
2004-04-12 18:10:28 +00:00
Roger Dingledine
2321d21b3b bump allowed rend desc skew from 60 mins to 90 mins
svn:r1593
2004-04-12 09:44:38 +00:00
Nick Mathewson
306adfc8bd Fix two dumb leaks in crypto.c
svn:r1592
2004-04-12 05:27:38 +00:00
Nick Mathewson
1dbf61e7e6 Use service id instead of hex id in rendservice.c log messages. Rendcommon and rendclient will follow tomorrow.
svn:r1591
2004-04-12 05:12:50 +00:00
Nick Mathewson
c024745bd4 Cosmetic patch for arma's fix for The Bug: Don't set the state to
RESOLVEFAILED if the resolve didn't fail; set it to CONNECTING
instead.


svn:r1590
2004-04-11 17:07:45 +00:00
Roger Dingledine
d8c954e156 continue beating at pieces of The Bug
svn:r1588
2004-04-09 21:31:09 +00:00
Roger Dingledine
23c193c065 if dns resolve is valid, but our exit policy rejects it or
the connect attempt fails immediately, we were trying to
double-remove it from the dns pending list.

i think this might have been The Bug.
(thanks weasel!)


svn:r1587
2004-04-09 21:06:14 +00:00