Nick Mathewson
53a3b39da1
Add -Wmissing-variable-declarations, with attendant fixes
...
This is a big-ish patch, but it's very straightforward. Under this
clang warning, we're not actually allowed to have a global variable
without a previous extern declaration for it. The cases where we
violated this rule fall into three roughly equal groups:
* Stuff that should have been static.
* Stuff that was global but where the extern was local to some
other C file.
* Stuff that was only global when built for the unit tests, that
needed a conditional extern in the headers.
The first two were IMO genuine problems; the last is a wart of how
we build tests.
2016-06-11 10:11:54 -04:00
Nick Mathewson
57699de005
Update the copyright year.
2016-02-27 18:48:19 +01:00
Yawning Angel
16cf1679e7
Fix scheduler compilation on targets where char is unsigned.
...
Per discussion with nickm, the `dir` argument should be a int rather
than a signed char.
Fixes bug #14764 .
2015-02-06 16:26:28 +00:00
Nick Mathewson
f54e54b0b4
Bump copyright dates to 2015, in case someday this matters.
2015-01-02 14:27:39 -05:00
Andrea Shepard
12b6c7df4a
Make queue thresholds and flush size for global scheduler into config options
2014-10-07 09:53:57 -07:00
Andrea Shepard
dc3af04ba8
Make scheduler_compare_channels() mockable
2014-09-30 23:14:58 -07:00
Andrea Shepard
f8ceb0f028
Make scheduler_run() mockable
2014-09-30 23:14:58 -07:00
Andrea Shepard
b7125961de
Expose scheduler_compare_channels() to test suite
2014-09-30 23:14:58 -07:00
Andrea Shepard
71a9ed6feb
Make some scheduler.c static functions visible to the test suite
2014-09-30 23:14:57 -07:00
Andrea Shepard
ade60890d0
Make scheduler_channel_doesnt_want_writes() mockable
2014-09-30 23:09:14 -07:00
Andrea Shepard
fd57840a77
Make scheduler_channel_doesnt_want_writes() mockable
2014-09-30 22:54:10 -07:00
Andrea Shepard
85ee070852
Make scheduler_release_channel() mockable
2014-09-30 22:49:58 -07:00
Andrea Shepard
ac1b627e85
Implement scheduler_touch_channel()
2014-09-30 22:49:58 -07:00
Andrea Shepard
1275002a46
Schedule according to a queue size heuristic
2014-09-30 22:49:35 -07:00
Andrea Shepard
d438cf1ec9
Implement scheduler mechanism to track lists of channels wanting cells or writes; doesn't actually drive the cell flow from it yet
2014-09-30 22:48:24 -07:00