Commit Graph

4222 Commits

Author SHA1 Message Date
iphydf 8f1bbcf83e Use <stdlib.h> for alloca on FreeBSD.
https://www.freebsd.org/cgi/man.cgi?alloca

If stdlib.h does not define alloca, and we're using GCC (or Clang), we
define the macro ourselves in terms of a GCC builtin.
2018-01-22 21:05:30 +00:00
iphydf e6c04ef028 Use self-built portaudio instead of system-provided. 2018-01-22 00:44:19 +00:00
iphydf 033965b8cc Make the monolith test a C++ binary.
This way, developers compile toxcore, toxav, and toxencryptsave as C++ at
least once at home, reducing the likelyhood of running into travis
failures where we compile as C++ in the windows build.
2018-01-21 20:56:30 +00:00
iphydf 52778aed93 Make BUILD files more finely-grained.
This allows us to precisely see which libraries depend on which and lets
us split them up more, if necessary.
2018-01-21 19:44:09 +00:00
iphydf 6c98791563 Add comment from #629 in ring_buffer.c. 2018-01-21 17:42:19 +00:00
iphydf 1cecb6c87a Add BUILD files for all the little tools in the repo.
Also, fix av_test.c, since I broke it last time.
2018-01-21 01:31:11 +00:00
iphydf 822dd2fac2 Don't allocate or dereference Tox_Options in tests.
This struct will soon become opaque.
2018-01-21 00:14:43 +00:00
iphydf 98febe0589 Add testing/*.c (except av_test) to bazel build. 2018-01-20 19:32:12 +00:00
iphydf d7583a719a Remove nTox from the repo.
It's a maintenance burden nobody uses. Let's make toxic the official
console client, instead.
2018-01-20 19:05:53 +00:00
Diadlo c5976e37ea Add correction support for conference
Fix #704
2018-01-20 14:10:48 +00:00
iphydf b030b4d8c0 Fix log message in simple_conference_test: invite -> message. 2018-01-20 13:25:58 +00:00
iphydf 7c2e4dd403 Add a simple conference test with 3 friends.
This tests that a message from tox1 is relayed via tox2 to tox3 when tox1
and tox3 are not friends.
2018-01-20 12:22:52 +00:00
zoff99 32a5d25ccb update to astyle 2.04 on circleCI to get the correct result 2018-01-20 00:31:28 +01:00
iphydf da4ba1731a Add astyle to Circle CI build. 2018-01-19 22:39:42 +00:00
iphydf 656040027d Add some explanatory comments to the toxav audio code.
By @zoff99.
2018-01-19 22:27:04 +00:00
iphydf 1a4e56397b Use more descriptive names in bwcontroller. 2018-01-19 21:03:48 +00:00
iphydf f1d726a3a8 Extract named constants from magic numbers in toxav/audio.c.
By @zoff99.
2018-01-19 20:20:36 +00:00
iphydf 25d3001556 Use larger arrays in crypto timing tests.
Increasing from 256K to 1M and increasing the number of iterations from
1000 to 2000. This makes the test more accurate and less flaky.
2018-01-19 18:15:17 +00:00
iphydf 0a5be3cbc5 Use C99 standard in bazel builds. 2018-01-18 21:52:31 +00:00
iphydf 18a33169b8 Add bazel build scripts for c-toxcore.
This allows us and users to reproducibly build verified versions of the
library with checksums. It will power the toktok-stack continuous build
with checked-in checksums at specific git revisions.
2018-01-18 16:11:52 +00:00
iphydf 643eea60bb Make DHT a module-private type. 2018-01-16 20:06:07 +00:00
iphydf 22db2b9fe5 Make Net_Crypto a module-private type. 2018-01-16 15:46:13 +00:00
iphydf bc58c6ea2f Make libcheck optional for windows builds. 2018-01-16 14:41:52 +00:00
iphydf 0b13936ce8 Use apidsl to generate LAN_discovery.h. 2018-01-16 14:17:05 +00:00
iphydf b3ec05543a Make pack/unpack_ip_port public DHT functions.
These will be needed for new group chats.
2018-01-16 10:43:18 +00:00
romik-g 6fc0be5142 Add Alpine Linux Dockerfile 2018-01-16 10:17:16 +00:00
iphydf ae6250c7af Sort monolith.h according to ls(1): uppercase first. 2018-01-16 09:50:01 +00:00
Maxim Biro daf4dc0571 Don't install packages needlessly on Travis 2018-01-15 19:10:16 -05:00
iphydf 7110f138e9 Run fewer Travis jobs during Pull Requests.
Still run all the jobs during cron and regular push to branch. We
disabled build for push to branch, so cron is the only place where all
builds are run. This also means we need to worry less about spending time
in nightly builds, because they occur only once a day.

See https://github.com/travis-ci/travis-ci/issues/9071
2018-01-15 23:07:54 +00:00
iphydf cec5fea71b Remove hstox test for now.
This isn't adding value. We're going to redo the whole rpc test framework
in the future, after a lot of refactoring that the hstox test currently
just stands in the way of.
2018-01-15 11:29:51 +00:00
Smoked Cheese 402664f58d update rpm spec and use variables in cmake instead of hardcoded paths (#624) 2018-01-15 14:23:33 +03:00
Diadlo e16d3894c5 Add correction message type 2018-01-15 08:48:22 +00:00
iphydf da739a9438 Add random_u16 function and rename the others to match. 2018-01-14 21:08:02 +00:00
iphydf d79b15c52d Use apidsl to generate ping.h.
The ping.api.h file looks rather ugly, but it works. This is an exercise
in finding the complete set of use cases needed from apidsl for toxcore.
We'll try to make things work as much as possible, and then make apidsl
better and make the .api.h files pretty.
2018-01-14 19:30:05 +00:00
iphydf 1eea3f0ab6 Fix some memory or file descriptor leaks in test code.
Also some missing return value checks for `fopen`.
2018-01-14 19:15:28 +00:00
iphydf bacd74c4dd Make TCP_Client_Connection a module-private type. 2018-01-14 19:13:32 +00:00
iphydf 7aca413e32 Move TCP_Secure_Connection from .h to .c file. 2018-01-14 19:12:55 +00:00
iphydf eda6470f0e Make Friend_Connections a module-private type. 2018-01-14 19:12:28 +00:00
iphydf c28d362dd2 Make Onion_Client a module-private type. 2018-01-14 16:20:43 +00:00
iphydf d8fcac5b4f Make Friend_Requests a module-private type. 2018-01-14 16:16:30 +00:00
iphydf 4b54d14d9c Make Onion_Announce a module-private type. 2018-01-14 14:20:20 +00:00
SkyzohKey 1e258a1915 Add projects link to Readme. 2018-01-14 11:14:57 +00:00
iphydf c38d3de604 Filter out annoying log statements in unit tests.
These may be useful when debugging toxcore locally, but are not useful in
unit tests.
2018-01-14 10:52:13 +00:00
iphydf e775b5533b Make Ping_Array a module-private type. 2018-01-13 23:55:08 +00:00
Yuri 1e1efec34a pkg-config .pc files: added .private versions of Libs and Required
To prevent top-level linking of all libraries.

Problem: ```pkg-config --libs toxcore``` returns all libraries that are
required by all libtox*.so libraries. This is wrong because for a
dynamically linked executable only top-level libraries need to be
supplied. ```pkg-config --libs --static toxcore``` should return all
libraries for the statically linked executable.

For example, the ToxBot https://github.com/JFreegman/ToxBot executable
uses pkg-config and is linked with the opus library, which is wrong.

Based on #533.
2018-01-13 23:04:23 +00:00
endoffile78 f4ba43c81b Remove useless if statement 2018-01-13 16:01:43 +00:00
yangfl 449c3f12cc Fix some typos in code and cmake comments 2018-01-12 21:22:44 +08:00
iphydf 2fbed5b4c5 Move Networking_Core struct into the .c file.
To make it an abstract type everywhere except in network.c.
2018-01-11 11:59:14 +00:00
iphydf c84daff541 Increase test retries to 10 (basically infinite).
This basically means: try until you run out of time (50 minutes on
Travis). On Linux, we really want the tests to pass, so there is no point
in limiting the number of retries. On windows, we don't retry, on FreeBSD
it's limited to 1.
2018-01-10 18:57:42 +00:00
iphydf 54ec162558 Fix formatting in some C files.
Also replace &(x) with &x for consistency.
2018-01-10 18:57:37 +00:00