Commit Graph

2600 Commits

Author SHA1 Message Date
irungentoo
f9bf7b074a
Major protocol changes, this commit breaks all network compatibility.
Removed a bunch of useless space from various structs.

pack_nodes() and unpack_nodes() are now used to transmit lists of
nodes for the DHT and onion parts. They provide a way to transmit
both ipv6 and ipv4 nodes in the same packet in a portable way that
takes as little space as possible without compression.

Using pack_nodes, merged the send nodes and send nodes ipv6 packets
into one packet greatly reducing the risk of amplification attacks.
2014-04-15 18:09:07 -04:00
irungentoo
229b2b2dcd
Added function to TCP client and some tests. 2014-04-14 16:59:48 -04:00
Steven Noonan
20336c0076 media.h: include 'opus.h' instead of 'opus/opus.h'
The current 'opus/opus.h' works if your opus.h is in /usr/include/opus, as
/usr/include is already in the header search path. If your opus header search
path is found via pkg-config, however, you will get something like this:

  $ pkg-config --cflags opus
  -I/usr/local/Cellar/opus/1.1/include/opus

Since this is pointing directly to include/opus, the 'opus/' prefix on the
header include directive will break.

Since 'opus.h' should work in both cases (as in both cases it will be
discovered via pkg-config), just use the simpler 'opus.h'.

Signed-off-by: Steven Noonan <steven@uplinklabs.net>
2014-04-13 20:56:29 -07:00
Steven Noonan
1808c88c79 toxav/Makefile.inc: add LIBSODIUM_* variables to flags
These are needed if libsodium paths are discovered by 'configure'. Most systems
don't need this just because libsodium is already on the header/library search
paths, but on e.g. Mac OS X this is required.

Signed-off-by: Steven Noonan <steven@uplinklabs.net>
2014-04-13 20:56:29 -07:00
irungentoo
b16af69d92
TCP_client pretty much done?
Now next step is integrating it in tox.

Added TCP server functionality to bootstrap server (define TCP_RELAY_ENABLED to enable it.)
2014-04-13 20:40:48 -04:00
Steven Noonan
ecf0ff3e7f sockets: support Mac OS X way of disabling SIGPIPE on a socket
Mac OS X doesn't have MSG_NOSIGNAL, so we need to use SO_NOSIGPIPE.

Signed-off-by: Steven Noonan <steven@uplinklabs.net>
2014-04-13 04:01:38 -07:00
irungentoo
268172ec41
Pings and onion packets implemented in TCP_Client.c
Astyled one test and added a couple lines to another.
2014-04-12 22:00:46 -04:00
irungentoo
881e95671a
Some code written for the TCP part. 2014-04-11 22:09:04 -04:00
irungentoo
736f5f8034
Added TCP test to build system. 2014-04-10 20:46:24 -04:00
irungentoo
05025482e3
Merge branch 'avfix' of https://github.com/aitjcize/ProjectTox-Core into aitjcize-avfix 2014-04-09 19:54:34 -04:00
Carlos E. Garcia
49e160450c whitespace fix & proper use of "i.e.," 2014-04-09 18:49:15 -04:00
AZ Huang
416a079134 Fix memory leak. 2014-04-10 06:15:40 +08:00
AZ Huang
e4a5c0ca09 Fix phone.c 2014-04-09 21:43:19 +08:00
irungentoo
626a81bf28
Merge branch 'openbsd' of https://github.com/czarkoff/ProjectTox-Core into czarkoff-openbsd 2014-04-08 17:31:24 -04:00
Dmitrij D. Czarkoff
33eede5a06 Add /usr/local/{include,lib} to search paths on OpenBSD 2014-04-08 20:04:59 +02:00
Dmitrij D. Czarkoff
6c47b4773a Drop typedef redeclarations
C99 doesn't permit redeclaring typedefs in the same scope.
2014-04-08 11:32:23 +02:00
Dmitrij D. Czarkoff
98624064d1 Include 'netinet/in_systm.h' on OpenBSD
Otherwise 'n_time' is undefined.
2014-04-08 11:29:45 +02:00
irungentoo
faded12a71
Merge branch 'master' of https://github.com/mannol1/ProjectTox-Core into mannol1-master 2014-04-07 20:08:10 -04:00
mannol
6e1a3b5af7 Bug fix 2014-04-07 21:52:32 +02:00
irungentoo
bd0d24fc9c
Added TCP_client.
Some work done on the TCP part.
2014-04-06 20:51:03 -04:00
irungentoo
ef744ebbc2
Merge branch 'master' of https://github.com/mannol1/ProjectTox-Core into mannol1-master 2014-04-06 20:00:05 -04:00
mannol
3f0d6b5778 Codec settings 2014-04-06 23:59:18 +02:00
irungentoo
813198a6e7
Astyled test. 2014-04-05 14:47:58 -04:00
mannol
1efb1d341f Rename suite 2014-04-05 17:36:54 +02:00
mannol
9b476ad94f Added test 2014-04-05 17:09:44 +02:00
irungentoo
23f57d862d
Added functions to get/set the nospam value to the public api. 2014-04-04 15:11:54 -04:00
irungentoo
413933a846
Maximum name lengths should now be the real maximum and not one byte less. 2014-04-03 20:21:24 -04:00
irungentoo
c8ab29632b
Some code cleanups. 2014-04-02 18:02:53 -04:00
irungentoo
ce412b2c36
Fixed bug where TOX_FAERR_SETNEWNOSPAM would be returned instead of
TOX_FAERR_ALREADYSENT when re adding a confirmed friend.
2014-04-01 16:36:33 -04:00
irungentoo
4f1e02bafa
tox_group_get_names now returns a list of name lengths along with the list of names.
TCP test now also tests pings.
2014-03-31 20:37:03 -04:00
irungentoo
27a7bf5b1e
TCP server now sends/handles ping packets. 2014-03-30 20:56:59 -04:00
irungentoo
98cba889a7
TCP server now has onion functionality.
All the IP/Port related structs now have __attribute__ ((__packed__))
2014-03-29 22:19:03 -04:00
irungentoo
8aaa5fe996
TCP server almost ready. 2014-03-28 22:37:42 -04:00
irungentoo
a116673554 Merge pull request #818 from maksqwe/rtp_header_fix
fix RTPHeader filling by zeros underflow
2014-03-27 19:38:12 -04:00
Maks Naumov
5c49f7d2b9 fix RTPHeader filling by zeros underflow
regression from 6a78e2e71c
2014-03-28 00:29:18 +02:00
irungentoo
249d2d9eb7
TCP server testing in progress. 2014-03-26 20:55:14 -04:00
irungentoo
441198f212
Basic TCP server stuff should be all done, started testing it. 2014-03-25 21:03:50 -04:00
irungentoo
90d7eb4ff3
A bit more work on TCP server.
I'm going to start working more diligently on this tommorow, the last
week hasn't really been productive.
2014-03-24 20:54:04 -04:00
irungentoo
07078f731f Merge pull request #817 from mannol1/master
Fixed cancel and added handling of the glare case
2014-03-23 18:09:05 -04:00
mannol
05ddf40f99 Remove header 2014-03-23 22:49:53 +01:00
mannol
6c76aacbbb Why do it even care 2014-03-23 22:48:12 +01:00
irungentoo
3b841b0860 Merge pull request #815 from jin-eld/nacl-fix-3
More NaCl related fixes
2014-03-23 10:30:41 -04:00
Jin^eLD
70475d281d Fix NaCl builds for *BSD
From what I see there is a difference between *BSD and Linux when
linking vs. toxcore which has been bulit vs. the NaCl library:

on Linux it only links if NaCl's object files (i.e. randombytes.o) is
present in the linker options, however on *BSD systems this will cause a
linking error, see:
https://github.com/Tox/toxic/issues/31#issuecomment-38224441

This commit makes sure that we do not add the NaCl object files to our
pkg-config settings on *BSD, but do add them on Linux.
2014-03-23 02:05:57 +01:00
Jin^eLD
ba4681ef1e Fix shared/static settings when building vs. NaCl library
Make sure the shared lib build is really disabled when compiling vs.
NaCl:

moved settings before libtool initialization
fixed parameter name
2014-03-23 02:05:34 +01:00
irungentoo
cb1c1d25ec
Some work on TCP server done. 2014-03-22 18:29:09 -04:00
mannol
88f286e607 Clare case fix
Wot fix
2014-03-22 19:42:05 +01:00
mannol
6b6dbc15e2 Well this seems to be working 2014-03-22 19:33:56 +01:00
irungentoo
04001b2ec3 Friends client id is now removed from the request received list when he is deleted. 2014-03-21 19:27:17 -04:00
irungentoo
d2d8965470 Fixed other api inconsistency. 2014-03-20 20:48:46 -04:00
irungentoo
2e48b31e47 Fixed an api inconsistency. 2014-03-20 20:32:37 -04:00