features/travis
Commits on Dec 22, 2018
Commits on Mar 21, 2018
-
Exit immediately after SIGTERM even if no handlers are running.
The loop logic assumed that there was at least one handler running when a signal was received; if there were none, it would wait forever for a handler event to happen. Cf. https://bugs.torproject.org/24875
David Fifield committedMar 21, 2018 -
Add TOR_PT_EXIT_ON_STDIN_CLOSE to dummy example programs.
David Fifield committedMar 21, 2018
Commits on Jun 26, 2017
-
David Fifield committed
Jun 26, 2017 -
David Fifield committed
Jun 26, 2017 -
Add a test for TestKeywordIsSafe with unsafe in first position.
David Fifield committedJun 26, 2017
Commits on Jun 20, 2017
-
Bring spec quotations up to date.
pt-spec.txt 0ef45b97b1a935489335fc31d625c463b076c1e3 196-transport-control-ports.txt f59e8f5b2819842fe6cb5b162a9226a4f1891b4d
David Fifield committedJun 20, 2017 -
David Fifield committed
Jun 20, 2017 -
Use bugs.torproject.org permalinks for tickets.
David Fifield committedJun 20, 2017 -
Remove trailing dots from URLs.
David Fifield committedJun 20, 2017 -
Add tests for multiple and trailing '=' in client/server args.
David Fifield committedJun 20, 2017
Commits on Mar 31, 2017
-
Fix a ProxyError usage example.
David Fifield committedMar 31, 2017 -
It would always panic with a the message keyword "PROXY-ERROR %s\n" contains forbidden bytes
David Fifield committedMar 31, 2017 -
Add tests for error functions.
The ProxyError test currently panics because of a bug in ProxyError. --- FAIL: TestErrors (0.00s) panic: keyword "PROXY-ERROR %s\n" contains forbidden bytes [recovered] panic: keyword "PROXY-ERROR %s\n" contains forbidden bytesDavid Fifield committedMar 31, 2017
Commits on Jan 19, 2017
-
Bug 21261: forbid duplicate method names in TOR_PT_SERVER_BINDADDR.
David Fifield committedJan 19, 2017
Commits on Sep 26, 2016
-
pt-spec no longer mentions SIGINT.
David Fifield committedSep 26, 2016
Commits on May 2, 2016
-
Merge remote-tracking branch 'yawning/bug12535_v2'
David Fifield committedMay 2, 2016
Commits on Mar 14, 2016
-
Link prop. 232 in README (was already linked in pt.go).
David Fifield committedMar 14, 2016 -
Use spec.torproject.org permalinks where possible.
David Fifield committedMar 14, 2016
Commits on Dec 14, 2015
-
Give a more specific error when TOR_PT_AUTH_COOKIE_FILE is missing.
Before, if you set TOR_PT_EXTENDED_SERVER_PORT but not TOR_PT_AUTH_COOKIE_FILE, you would get the misleading error message: ENV-ERROR need TOR_PT_ORPORT or TOR_PT_EXTENDED_SERVER_PORT environment variable Now you get: ENV-ERROR need TOR_PT_AUTH_COOKIE_FILE environment variable with TOR_PT_EXTENDED_SERVER_PORT
David Fifield committedDec 14, 2015
Commits on Aug 5, 2015
-
Add a test for non-interpretation of escapes in transport lists.
David Fifield committedAug 5, 2015
Commits on Jun 28, 2015
-
Remove everything having to do with the "*" transport specification.
It was never implemented and is no longer part of the specification: https://trac.torproject.org/projects/tor/ticket/15612 The arguments to ClientSetup and ServerSetup that were solely to handle "*" are now documented as unused.
David Fifield committedJun 28, 2015 -
David Fifield committed
Jun 28, 2015 -
Don't report errors that are not caused by Accept in AcceptSocks.
This means that anything that is not a net.Error, or is a net.Error but is not Temporary, should be considered to be a permanent error by the caller. Sample code now shows the new error-checking convention. Previously, we used the convention that a non-net.Error should be considered temporary, because it could have been caused by a failed SOCKS negotiation, for example. Now those errors are simply not returned to the caller. See https://trac.torproject.org/projects/tor/ticket/14135. In summary, previous behavior is this: net.Error, Temporary: caller should try again net.Error, non-Temporary: caller should quit other errors: caller should try again It is now this: net.Error, Temporary: caller should try again net.Error, non-Temporary: caller should quit other errors: caller should quit But now the "other errors" such as those caused by a bad SOCKS negotiation will not be reported by AcceptSocks. The practical effect of this change is almost nil; even if callers don't update their error-checking code, the only change is in the "other errors" that don't arise in normal use.
David Fifield committedJun 28, 2015
Commits on Jun 24, 2015
-
https://trac.torproject.org/projects/tor/ticket/12125 Adds two new functions: ProxyError ProxyDone and one new member to ClientInfo: ProxyURL *url.URL
David Fifield committedJun 24, 2015 -
Actually relays need DirPort if you treat them as a bridge.
At least until #12538 is done.
David Fifield committedJun 24, 2015 -
Don't need to export this variable.
David Fifield committedJun 24, 2015 -
Add tests for net.Error temporary error handling in AcceptSocks.
See https://trac.torproject.org/projects/tor/ticket/14135. We're going to make the recommended way to check for an error from AcceptSocks match the way in the golang standard library: if e, ok := err.(net.Error); ok && e.Temporary() { continue } else { break } The new tests check that 1) AcceptSocks faithfully represents an underlying Accept error with respect to its net.Error-ness and its Temporary-ness, and 2) errors that happen post-Accept in AcceptSocks are either silently swallowed or else reported as a Temporary net.Error. The test fails at the moment: "socks_test.go:267: AcceptSocks returned non-net.Error: unexpected EOF".
David Fifield committedJun 24, 2015 -
Close the Conn in case of error in AcceptSocks.
David Fifield committedJun 24, 2015
Commits on Apr 3, 2015
-
Replace the SOCKS4a listener with a SOCKS5 listener.
The change is designed to be transparent to calling code and implements enough of RFC1928/RFC1929 such that pluggable transports can be written. Notable incompatibilities/limitations: * GSSAPI authentication is not supported. * BND.ADDR/BND.PORT in responses is always "0.0.0.0:0" instead of the bound address/port of the outgoing socket. * RFC1929 Username/Password authentication is setup exclusively for pluggable transport arguments. * The BIND and UDP ASSOCIATE commands are not supported.
Commits on Mar 12, 2015
-
Read the ExtORPort cookie on every call to DialOr.
This works around tor bug #15240, where the ExtORPort cookie is generated after the pluggable transports are launched, leading to a race condition and DialOr failures. 'ServerInfo.AuthCookie' is deprecated by this change, replaced by 'ServerInfo.AuthCookiePath', however nothing external to goptlib should be using either value in most situations.
Commits on Mar 11, 2015
-
David Fifield committed
Mar 11, 2015
Commits on Feb 25, 2015
-
David Fifield committed
Feb 25, 2015