| Commit message (Expand) | Author | Age |
* | Move Extended ORPort code to its own module.•••Move the code from the connection_or module to ext_orport.
This commit only moves code: it shouldn't modify anything.
| George Kadianakis | 2013-07-18 |
* | Document code and change the Extended ORPort command numbers. | George Kadianakis | 2013-07-18 |
* | Skeleton ExtORPort implementation. Needs testing, documentation.•••Does not implement TransportControlPort yet.
| Nick Mathewson | 2013-07-18 |
* | Completely refactor how FILENAME_PRIVATE works•••We previously used FILENAME_PRIVATE identifiers mostly for
identifiers exposed only to the unit tests... but also for
identifiers exposed to the benchmarker, and sometimes for
identifiers exposed to a similar module, and occasionally for no
really good reason at all.
Now, we use FILENAME_PRIVATE identifiers for identifiers shared by
Tor and the unit tests. They should be defined static when we
aren't building the unit test, and globally visible otherwise. (The
STATIC macro will keep us honest here.)
For identifiers used only by the unit tests and never by Tor at all,
on the other hand, we wrap them in #ifdef TOR_UNIT_TESTS.
This is not the motivating use case for the split test/non-test
build system; it's just a test example to see how it works, and to
take a chance to clean up the code a little.
| Nick Mathewson | 2013-07-10 |
* | Fix socks5 handshake for username/password auth•••The fix for bug 8117 exposed this bug, and it turns out real-world
applications like Pidgin do care. Bugfix on 0.2.3.2-alpha; fixes bug 8879.
| Roger Dingledine | 2013-05-15 |
* | Merge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4 | Nick Mathewson | 2013-05-09 |
|\ |
|
| * | Don't run off the end of the array-of-freelists•••This is a fix for bug 8844, where eugenis correctly notes that there's
a sentinel value at the end of the list-of-freelists that's never
actually checked. It's a bug since the first version of the chunked
buffer code back in 0.2.0.16-alpha.
This would probably be a crash bug if it ever happens, but nobody's
ever reported something like this, so I'm unsure whether it can occur.
It would require write_to_buf, write_to_buf_zlib, read_to_buf, or
read_to_buf_tls to get an input size of more than 32K. Still, it's a
good idea to fix this kind of thing!
| Nick Mathewson | 2013-05-09 |
* | | Merge remote-tracking branch 'public/bug8117_023' into maint-0.2.4•••Conflicts:
doc/tor.1.txt
src/or/config.c
src/or/connection.c
| Nick Mathewson | 2013-04-11 |
|\ \ |
|
| * | | Per-SOCKSPort configuration for bug 8117 fix.•••This might be necessary if the bug8117 fix confuses any applications.
Also add a changes file.
| Nick Mathewson | 2013-03-20 |
| * | | Prefer SOCKS_USER_PASS over SOCKS_NO_AUTH | Nick Mathewson | 2013-03-20 |
| |/ |
|
* | | Fix a bug that roger found in the wide_circ_id code | Nick Mathewson | 2013-02-15 |
* | | Merge remote-tracking branch 'public/wide_circ_ids'•••Conflicts:
src/or/channel.h
src/or/connection_or.c
src/or/cpuworker.c
| Nick Mathewson | 2013-02-15 |
|\ \ |
|
| * | | Replace magic constants for wide_circ_ids with inline function calls | Nick Mathewson | 2013-02-09 |
| * | | Allow a v4 link protocol for 4-byte circuit IDs.•••Implements proposal 214.
Needs testing.
| Nick Mathewson | 2012-11-06 |
* | | | Merge remote-tracking branch 'public/easy_ratelim'•••Conflicts:
src/or/connection.c
| Nick Mathewson | 2013-02-07 |
|\ \ \ |
|
| * | | | Use log_fn_ratelim in a few places. | Nick Mathewson | 2012-12-26 |
* | | | | Rename log() to tor_log() for logging•••This is meant to avoid conflict with the built-in log() function in
math.h. It resolves ticket 7599. First reported by dhill.
This was generated with the following perl script:
#!/usr/bin/perl -w -i -p
s/\blog\(LOG_(ERR|WARN|NOTICE|INFO|DEBUG)\s*,\s*/log_\L$1\(/g;
s/\blog\(/tor_log\(/g;
| Nick Mathewson | 2013-02-01 |
* | | | | Update the copyright date to 201. | Nick Mathewson | 2013-01-16 |
|/ / / |
|
* | | | Move address map into its own file. | Nick Mathewson | 2012-11-14 |
* | | | Merge remote-tracking branch 'origin/maint-0.2.3'•••Conflicts:
src/common/crypto.c
src/or/rendservice.c
| Nick Mathewson | 2012-11-08 |
|\ \ \
| |/ /
|/| /
| |/ |
|
| * | Add and use and unlikely-to-be-eliminated memwipe()•••Apparently some compilers like to eliminate memset() operations on
data that's about to go out-of-scope. I've gone with the safest
possible replacement, which might be a bit slow. I don't think this
is critical path in any way that will affect performance, but if it
is, we can work on that in 0.2.4.
Fixes bug 7352.
| Nick Mathewson | 2012-11-08 |
* | | Remove tor_malloc_roundup().•••This function never actually did us any good, and it added a little
complexity. See the changes file for more info.
| Nick Mathewson | 2012-08-13 |
|/ |
|
* | Triage the XXX023 and XXX022 comments: postpone many. | Nick Mathewson | 2012-06-15 |
* | Update copyright dates to 2012; add a few missing copyright statements | Nick Mathewson | 2012-06-04 |
* | Add about 60 more DOCDOC comments to 0.2.3•••Also, try to resolve some doxygen issues. First, define a magic
"This is doxygen!" macro so that we take the correct branch in
various #if/#else/#endifs in order to get the right documentation.
Second, add in a few grouping @{ and @} entries in order to get some
variables and fields to get grouped together.
| Nick Mathewson | 2012-06-04 |
* | MSVC build issue: we use INLINE as the one that will magically work | Nick Mathewson | 2012-05-14 |
* | Add a check_no_tls_errors() to read_to_buf_tls•••Fixes bug #4528 "read_to_buf_tls(): Inconsistency in code".
This check was added back in 0.1.0.3-rc, but somehow we forgot to
leave it in when we refactored read_to_buf_tls in 0.1.0.5-rc.
(patch by Arturo; commit message and changes file by nickm)
| Arturo Filastò | 2012-04-24 |
* | Use the standard _WIN32, not the Torism MS_WINDOWS or deprecated WIN32•••This commit is completely mechanical; I used this perl script to make it:
#!/usr/bin/perl -w -i.bak -p
if (/^\s*\#/) {
s/MS_WINDOWS/_WIN32/g;
s/\bWIN32\b/_WIN32/g;
}
| Nick Mathewson | 2012-01-31 |
* | Use SOCKET_OK macros in even more places•••Add a TOR_INVALID_SOCKET macro to wrap -1/INVALID_SOCKET.
Partial work for bug4533.
| Nick Mathewson | 2012-01-17 |
* | Merge remote-tracking branch 'origin/maint-0.2.2' | Nick Mathewson | 2011-12-15 |
|\ |
|
| * | Merge remote-tracking branch 'origin/maint-0.2.1' into maint-0.2.2 | Nick Mathewson | 2011-12-15 |
| |\ |
|
| | * | Add a fix for the buf_pullup bug that Vektor reported | Nick Mathewson | 2011-12-15 |
* | | | Fix a bunch of whitespace errors | Nick Mathewson | 2011-10-11 |
* | | | Cell types and states for new OR handshake•••Also, define all commands > 128 as variable-length when using
v3 or later link protocol. Running into a var cell with an
unrecognized type is no longer a bug.
| Nick Mathewson | 2011-10-10 |
* | | | Rephrase the log messages emitted if the TestSocks check is positive•••Previously Tor would always claim to have been given a hostname
by the client, while actually only verifying that the client
is using SOCKS4A or SOCKS5 with hostnames. Both protocol versions
allow IP addresses, too, in which case the log messages were wrong.
Fixes #4094.
| Fabian Keil | 2011-10-03 |
* | | | Remove warning about a loop parsing evbuffer socks•••This behavior is normal when we want more data than the evbuffer
actually has for us. We'll ask for (say) 7 bytes, get only 5
(because that's all there is), try to parse the 5 bytes, and get
told "no, I want 7". One option would be to bail out early whenever
want_length is > buflen, but sometimes we use an over-large
want_length. So instead, let's just remove the warning here: it's
not a bug after all.
| Nick Mathewson | 2011-08-18 |
* | | | Appease "make check-spaces" | Nick Mathewson | 2011-08-18 |
* | | | Use evbuffer_copyout() in inspect_evbuffer(). | Nick Mathewson | 2011-08-17 |
* | | | Clear socks auth fields before free | Nick Mathewson | 2011-08-05 |
* | | | Merge branch 'optimistic-client'•••The conflicts are with the proposal 171 circuit isolation code, and
they're all trivial: they're just a matter of both branches adding
some unrelated code in the same places.
Conflicts:
src/or/circuituse.c
src/or/connection.c
| Nick Mathewson | 2011-07-20 |
|\ \ \ |
|
| * | | | Add a generic_buffer_t to use the best buffer type we have on hand•••Also add a quick function to copy all the data in a buffer. (This
one could be done much better, but let's see if it matters.)
| Nick Mathewson | 2011-07-18 |
* | | | | Fix spurious warning in bufferevent socks parsing•••The problem was that we weren't initializing want_length to 0 before
calling parse_socks() the first time, so it looked like we were
risking an infinite loop when in fact we were safe.
Fixes 3615; bugfix on 0.2.3.2-alpha.
| Nick Mathewson | 2011-07-19 |
|/ / / |
|
* | | | Merge remote-tracking branch 'public/bug1666'•••Conflicts:
doc/spec/socks-extensions.txt
src/or/buffers.c
src/or/config.c
src/or/connection_edge.c
| Nick Mathewson | 2011-07-13 |
|\ \ \ |
|
| * | | | Add more error checks to socks parsing code•••Suggested by Linus to avoid uninitialized reads or infinite loops if
it turns out our code is buggier than we had thought.
| Nick Mathewson | 2011-07-12 |
| * | | | Refactor fetch_from_buf_socks() to be greedy•••Previously, fetch_from_buf_socks() might return 0 if there was still
data on the buffer and a subsequent call to fetch_from_buf_socks()
would return 1. This was making some of the socks5 unit tests
harder to write, and could potentially have caused misbehavior with
some overly verbose SOCKS implementations. Now,
fetch_from_buf_socks() does as much processing as it can, and
returns 0 only if it really needs more data. This brings it into
line with the evbuffer socks implementation.
| Nick Mathewson | 2011-06-29 |
| * | | | Don't drain extra data when parsing socks auth methods•••We added this back in 0649fa14 in 2006, to deal with the case where
the client unconditionally sent us authentication data. Hopefully,
that's not needed any longer, since we now can actually parse
authentication data.
| Nick Mathewson | 2011-06-29 |
| * | | | Record username/password data in socks_request_t•••This change also requires us to add and use a pair of
allocator/deallocator functions for socks_request_t, instead of
using tor_malloc_zero/tor_free directly.
| Nick Mathewson | 2011-06-29 |
| * | | | If we negotiate authentication, require it. | Nick Mathewson | 2011-06-29 |
| * | | | Be more strict about when to accept socks auth message•••In the code as it stood, we would accept any number of socks5
username/password authentication messages, regardless of whether we
had actually negotiated username/password authentication. Instead,
we should only accept one, and only if we have really negotiated
username/password authentication.
This patch also makes some fields of socks_request_t into uint8_t,
for safety.
| Nick Mathewson | 2011-06-29 |
| * | | | Fix 'make check-spaces' | Nick Mathewson | 2011-06-29 |