Age | Commit message (Collapse) | Author |
|
* Use-after-free because we free network before dht in one case.
* Various unchecked allocs in tests (not so important).
* We used to not check whether ping arrays were actually allocated in DHT.
* `ping_kill` and `ping_array_kill` used to crash when passing NULL.
Also:
* Added an assert in all public API functions to ensure tox isn't NULL.
The error message you get from that is a bit nicer than "Segmentation
fault" when clients (or our tests) do things wrong.
* Decreased the sleep time in iterate_all_wait from 20ms to 5ms.
Everything seems to still work with 5ms, and this greatly decreases
the amount of time spent per test run, making oomer run much faster.
|
|
|
|
This test was fixed by @robinlinden, but not enabled in all builds.
|
|
|
|
|
|
This used to take a long time, but is now very fast.
|
|
This allows invitations to work in the case that the invitee is already
in the group, which can happen if the group becomes split. Such an
invitation is automatically accepted, leading to the peers becoming
connected in the group and sharing peer lists.
|
|
Hopefully not both will be down at the same time.
|
|
|
|
Using ~0 involves a bitwise operation on int, so depends on
the internal representation of signed integers.
|
|
|
|
Removed av_test, because it depends on an ancient opencv that starts to
really not exist on modern systems anymore.
|
|
|
|
|
|
|
|
|
|
This fixes an redefinition error when creating amalgamation.cc during
static analysis
|
|
The test's intermittent failure may well be exposing a real bug in the
TCP relay and/or onion systems, but we can't find the bug, and keeping
the test is disrupting our CI.
|
|
|
|
A group loaded from a savefile starts with AV disabled.
|
|
Also added and used the new crypto_malloc and crypto_free.
The latter also zeroes out the memory safely. The former only exists for
symmetry (static analysis can detect asymmetric usages).
|
|
* add global friend_connection status callback, used for group rejoining
* stop leaving groups on killing tox
|
|
(without this, gcc-8.2.0 issues a warning)
|
|
|
|
|
|
Including in tests and implementation files.
|
|
|
|
A lot of bootstrap nodes are down :(.
|
|
We were mistakenly not making a rejoin attempt on freezing connections
due to all closest connections going down. This fixes that, and tweaks
the test. I've still only done tens rather than hundreds of tests, but
I'm fairly confident that the conference test now consistently passes.
|
|
|
|
Using the full path including the repo name.
|
|
|
|
Because `()` means "some unknown number of parameters".
|
|
* add freezing and unfreezing of peers
* add rejoin packet
* revise handling of temporary invited connections
* rename "peer kill" packet to "peer leave" packet
* test rejoining in conference test
* use custom clock in conference test
|
|
This uses a trick to get read-write access to `this` from a `const`
member function, similar to C++ `mutable`, but uglier.
|
|
|
|
Also adds a test (auto_reconnect_test) which fails without this change.
|
|
|
|
This raises a signal, so we can more easily catch it with gdb.
|
|
|
|
`tox_new_log` has a much larger range of ports it can select from.
|
|
This forces all the loop bodies to be executed at least once, which is
harmless since it just means one more tox event loop iteration. This
reduces the jitter we see in coverage measurements, which is partially
caused by loops sometimes being entered and sometimes not (because their
condition happens to randomly already be true).
|
|
Turned a huge macro into a function. Macros are a pain to debug.
|
|
* specify correct source files
* add save_compatibility_test (commented out for now)
* reformat TESTS to one line per test, and set check_PROGRAMS := TESTS
* add run_auto_test.h to EXTRA_DIST
* Fix `AUTO_TEST_CFLAGS` -> `AUTOTEST_CFLAGS`.
|
|
|
|
|
|
|
|
|
|
|
|
Reduced by, e.g.:
* `file_transfer_test`: 33% of the `clock_gettime` calls.
* `tox_many_test`: 53% of the `clock_gettime` calls.
Other tests will see similar improvements. Real world applications will
be closer to 40-50% improvement, since tox_many_test has 100 nodes, while
file_transfer_test has 2 nodes.
|