summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-05-03Fix a bug in savedata loading when malloc fails.iphydf
Also added a bunch of asserts to tests where they don't check allocs.
2020-05-03Enable cimple tests by default but allow disabling them.iphydf
Use `bazel test //c-toxcore/... --build_tag_filters=-haskell` to run all tests except the ones that depend on Haskell (i.e. cimple tests).
2020-05-02Add a check that we don't have any unused functions.iphydf
This check puts all of our code in a C++ anonymous namespace, which is effectively making all functions `static`. This allows the compiler to determine that a function is unused, so we can delete it.
2020-05-02Fix errors on error paths found by oomer.iphydf
* 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.
2020-05-02Include `<string.h>` for `explicit_bzero`.iphydf
We need this for vanilla nacl builds on Linux.
2020-05-01Release 0.2.12Robin Linden
2020-04-29Bound the number of friends you can have to ~4 billion.iphydf
If you have UINT32_MAX friends, then adding one more friend will cause an overflow of the friend list (wrap to 0) and result in all friends being deleted. This subsequently results in a null pointer dereference when we're trying to add one friend to the deleted friend list.
2020-04-29Disable non-hermetic tests by default.iphydf
See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=955319.
2020-04-27Add execution trace option for debugging.iphydf
Use `cmake -DEXECUTION_TRACE=ON` to use it.
2020-04-26Rework the toxchat/bootstrap-node Docker image.iphydf
* Use fully static build for the bootstrap daemon. * Store a sha256sum of the binary in the repo. * Updated documentation for it. * Add support for fully static build in cmake. * Enable the docker build on every PR, so we catch changes to the checksum. I realise this is adding toil, but having the checksum is valuable for security of released binaries.
2020-04-26Allow test coverage to fluctuate 2% up and down, but not below 80%.iphydf
2020-04-26Skip invalid TCP relays and DHT nodes when loading save datazugz (tox)
2020-04-25Set up release-drafter.iphydf
See https://github.com/release-drafter/release-drafter
2020-04-25Add CODEOWNERS and settings.yml files.iphydf
2020-04-24[ImgBot] Optimize imagesImgBotApp
*Total -- 23.11kb -> 12.21kb (47.19%) /other/tox.png -- 17.50kb -> 6.99kb (60.05%) /other/tox-warning.png -- 5.61kb -> 5.21kb (7.04%) Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>
2020-04-24Fix continuous integration builds.iphydf
2020-04-20Enable TCP relay test in Bazel and autotools build.iphydf
This test was fixed by @robinlinden, but not enabled in all builds.
2020-04-19Invert `not_valid` functions and name them `is_valid`.iphydf
Also changed their return type to bool instead of 1/0 ints.
2020-04-19fix saving of combination of loaded and connected TCP relayszugz (tox)
2020-04-16Add new semi-private API functions to set per-packet-id custom handlers.zoff99
This is to prepare for ToxAV becoming independent of toxcore internal calls.
2020-04-16Remove tokstyle exemptions from build files.iphydf
We put some tokstyle exemptions into the source files themselves, instead. This way we can check some of the code in those files, and more in the future when tokstyle supports more constructs (like apidsl). Also: hacked ping_array.api.h to not emit `_array` as parameter names. We'll need to fix apidsl to do this better. This works for now.
2020-04-13Fix things not being initialized if creating a TCP-only networkRobin Linden
2020-04-09Stop using the "inline namespace" feature of apidsl.iphydf
This adds complexity for very little value.
2020-04-09Use public API for sending in RTP.zoff99
2020-04-08Give CI workflow a better name: clang-sanitizersiphydf
2020-04-08Install ci-tools and get tokstyle via the script it provides.iphydf
2020-04-08Use public API for sending in BWC.zoff99
2020-04-07Remove newlines from the end of LOGGER format strings.iphydf
See https://github.com/TokTok/hs-tokstyle/pull/49 for the corresponding tokstyle analysis.
2020-04-07Change ToxAVCall struct mutex to a more distinct name.zoff99
2020-04-07Create own instance of MonoTime for ToxAV.zoff99
2020-04-05Stop using Messenger's mono_time in bandwidth controller.zoff99
We're actually still using it, but we got a private pointer now, preparing us for having a private mono_time in toxav.
2020-04-05Fix 2 memory leaks in ToxAV.zoff99
2020-04-05Make afl_toxsave.c a bit more portable; fix memleak.iphydf
malloc.h doesn't exist on most platforms, and certainly not in stdc. No functions from malloc.h are actually used here, and stdlib.h is enough.
2020-04-04Show function names in asan/tsan stack traces on CircleCI.zoff99
2020-04-04Migrate format-source script to new apidsl web app.iphydf
This one is unfortunately a little more complicated to use. I may add a simpler API later, but for now, it's JSON-based (because I couldn't get binary data to work without it getting mangled somewhere along the way - JSON is at least text-transport-safe).
2020-04-04Add minimal save generatorMaxim Biro
2020-03-29Fixes towards building on MSVC.iphydf
2020-03-27Mark conference test as small.iphydf
This used to take a long time, but is now very fast.
2020-03-24Add basic test adapter for AFLsudden6
2020-03-22Smarter setup of bazel remote cache on Cirrus CI.iphydf
We now check whether the cache application is reachable and running via cURL. If it's running, we add the `--config=remote` line.
2020-03-22Release 0.2.11Robin Linden
2020-03-22Install libsodium from apt instead of from source.iphydf
2020-03-22Minor cleanups in network code.iphydf
Remove useless parameter, replace with assert (just to be sure). Also replaced some memsets with 0-initialiser and memcpy with assignment.
2020-03-22Minor cleanup: use `assoc_timeout` function where possible.iphydf
This function exists and simplifies some code a little bit. There are lots of places in DHT.c where we have the exact same code, so there is a lot of opportunity to factor out common bits. For now, we just make a minor improvement that's easy to review.
2020-03-22fix typo: now we periodically try to send direct packets when connected by tcpzugz (tox)
2020-03-22Remove bazel build from Travis.iphydf
We already have one on Cirrus, and it works fine.
2020-03-21Disable bazel remote cache on CI.iphydf
code.tox.chat is down.
2020-03-18clear out old conference connectionszugz (tox)
This may fix problems with very large conferences. Sadly, it seems infeasible to test large conferences on one machine, so this is entirely theoretical.
2020-03-18Add "member" invite responsezugz (tox)
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.
2020-03-18Make function defns match their decls regarding storage class.iphydf
We want functions declared as `static` to also be defined as `static`.