Age | Commit message (Collapse) | Author |
|
|
|
This is always true due to the condition function, but if we introduce a
bug that makes the condition not be applied, this causes undefined
behaviour.
|
|
Also remove the use of a VLA in a context where there can be unbounded
memory allocations.
|
|
This uses a single .cc file containing almost all the code in the
repository to perform whole program analysis.
|
|
Also, avoid the need for putting `_XOPEN_SOURCE` in every test file.
|
|
It turns out, `unix_time` is also monotonic, and is used as such, so I've
renamed the new functions to `mono_time_*`.
2018-07-08:
```
00:01 <@irungentoo> the idea used to be that the unix_time() function
could go backward in time but I think I might have started using it like
if it could not after I changed it so that it would never go back in time
```
|
|
Rules:
1. Constants are uppercase names: THE_CONSTANT.
2. SUE[1] types start with an uppercase letter and have at least one
lowercase letter in it: The_Type, THE_Type.
3. Function types end in "_cb": tox_friend_connection_cb.
4. Variable and function names are all lowercase: the_function.
This makes it easier for humans reading the code to determine what an
identifier means. I'm not convinced by the enum type name change, but I
don't know a better rule. Currently, a lot of enum types are spelled like
constants, which is confusing.
[1] struct/union/enum
|
|
|
|
These display some idea, but the tests are not implemented correctly. We
will need to implement the idea correctly later, but for now we can't use
these.
|
|
`clang-format -style='{BasedOnStyle: Google, ColumnLimit: 100}'`
|
|
This one has ASAN enabled, unlike Travis.
|
|
This can be used as a random stress test for toxcore.
Adjust the weights to make certain actions more or less likely.
|
|
Windows doesn't report network errors though errno, it has its own facilities.
|
|
|
|
It's not supported in mingw.
See https://github.com/TokTok/c-toxcore/issues/786.
|
|
|
|
This change does not include the addition of VP9. We do that in a
separate pull request.
Changes:
* fix the video bug (video frames larger than 65KBytes) by sending full
frame length in alternate header field
* improve video frame reconstruction logic with slots
* configure video encoder and decoder to be multihtreaded
* set error resilience flags on video codec
* change encoder and decoder softdeadline
|
|
This is not used by anything in the code, so we shouldn't have it in the
header.
|
|
https://github.com/TokTok/toxins/tree/master/tox_shell
|
|
|
|
|
|
This changes only code, no string literals or comments.
|
|
|
|
follow TokTok#731. This commit
completely removed all things in namespace bit_rate, and deprecated
functions are to be added back in another commit. set_xxx() is treadted
as a property of namespace audio&video, same as bit_rate change event.
toxav_basic_test is fixed, either.
|
|
Also got rid of two VLAs. They are overused a bit in toxcore. In
irc_syncbot, the array was uninitialised and then filled by a recv system
call. This can cause uninitialised reads if recv doesn't fill the entire
array. It could not cause out of bounds read directly, because a
NUL-terminator was in place, but both cases are undefined behaviour.
|
|
|
|
|
|
This allows us to precisely see which libraries depend on which and lets
us split them up more, if necessary.
|
|
Also, fix av_test.c, since I broke it last time.
|
|
This struct will soon become opaque.
|
|
|
|
It's a maintenance burden nobody uses. Let's make toxic the official
console client, instead.
|
|
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.
|
|
|
|
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.
|
|
Also some missing return value checks for `fopen`.
|
|
Also replace &(x) with &x for consistency.
|
|
We return E_WRITE because closing only fails when an I/O error occurs,
which is likely an error from the write() call above. See close(2) for
details.
http://man7.org/linux/man-pages/man2/close.2.html
|
|
These potentially cause uninitialised reads on some platforms or msgpack
library versions.
|
|
Based on #331.
Fixes #42.
|
|
This library contains all the code for the old libtoxcore, libtoxav,
libtoxdns, and libtoxencryptsave. The build for toxav is still optional,
and disabling it causes libtoxcore to simply not contain those symbols
and the pkg-config file to not include opus and vpx as dependencies.
|
|
netinet/in.h
|
|
|
|
Tests are not actually ran on appveyor for now, since they all fault for
some reason. For now, we just build them. Also, some tests are disabled
on msvc entirely, because they don't even compile. We'll need to look
into those, later. They are disabled using `MSVC_DONT_BUILD`.
|
|
Also some minor reformatting and fixes to the hstox sut driver.
|
|
The new encoding is `0` for `Nothing` and `[1, x]` for `Just x`.
|
|
Also fix a mistake with forgotten braces around parameter
|
|
Fix #494
|
|
|
|
socket -> net_socket
htons -> net_htons
htonl -> net_htonl
connect -> net_connect
sendto -> net_sendto_ip4
getaddrinfo -> net_getipport
sa_family_t -> Family
|