Age | Commit message (Collapse) | Author |
|
This commit won't build yet -- it just puts everything in a slightly
more logical place.
The reasoning here is that "src/core" will hold the stuff that every (or
nearly every) tor instance will need in order to do onion routing.
Other features (including some necessary ones) will live in
"src/feature". The "src/app" directory will hold the stuff needed
to have Tor be an application you can actually run.
This commit DOES NOT refactor the former contents of src/or into a
logical set of acyclic libraries, or change any code at all. That
will have to come in the future.
We will continue to move things around and split them in the future,
but I hope this lays a reasonable groundwork for doing so.
|
|
This is a very gentle commit that just lays the groundwork in the
build system: it puts the include files to build libtor-app.a into
src/core, and to build the tor executable into src/app. The
executable is now "src/app/tor".
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(Note that this is not believed to work, but we may as well have it
in the right place till we remove it)
|
|
Inline its contents (which were all includes) into or.h, and some of
its contents into other places that didn't include or.h at all.
|
|
This is temporary, until src/or is split.
Putting this in containers would be another logical alternative,
except that addresses depend on containers, and we don't like
cycles.
|
|
There might be a better place for it in the long run, but this is
the best I can think of for now.
|
|
There might be a better place for it in the long run, but this is
the best we can think of for now.
|
|
We need this for strcasecmp on (some) Windows build environments.
Fix from Gisle Vanem.
|
|
Per recommendation by Gisle Vanem
|
|
|
|
|
|
|
|
|
|
|
|
|
|
These were mostly cases where our previous macros had been casting,
and the values that we were trying to printf were not in fact
uint64_t.
|
|
These were necessary long ago to work around a bug in VC6.
|
|
The standard is printf("%"PRIu64, x);
|
|
|
|
|
|
|
|
Casting before printf was necessary; now it's not so smart.
We don't have SIZEOF_UINT8_T any more.
|
|
We've been silently requiring stdint.h for a while now, and nobody
has complained. Closes ticket 26626.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This reverts part of commit 6ed384b827dce21ea3a44b587, in order to
fix bug 26568. Bugfix on 0.3.4.1-alpha.
|
|
Recent Python3 versions seem to require this on Windows.
Fixes bug 26535; bug copied from ntor_ref.py on 0.3.1.1-alpha.
|
|
Recent Python3 versions seem to require this on Windows.
Fixes bug 26535; bug introduced in f4be34f70d6f277a0f3f73e, which
was apparently intended itself as a Python3 workaround.
|
|
|
|
When we do redefine them, use inline functions instead of #define.
This fixes a latent code problem in our redefinition of these
functions, which was exposed by our refactoring: Previously, we
would #define strcasecmp after string.h was included, so nothing bad
would happen. But when we refactored, we would sometimes #define it
first, which was a problem on mingw, whose headers contain
(approximately):
inline int strcasecmp (const char *a, const char *b)
{ return _stricmp(a,b); }
Our define turned this into:
inline int _stricmp(const char *a, const char *b)
{ return _stricmp(a,b); }
And GCC would correctly infer that this function would loop forever,
rather than actually comparing anything. This caused bug 26594.
Fixes bug 26594; bug not in any released version of Tor.
|
|
|
|
|
|
|
|
|
|
|
|
I decided to have this file included from config.h, though, since it
is used nearly everywhere.
|
|
Fewer modules needed this than I had expected.
|
|
|
|
|
|
|