Etienne Dechamps
ed1d0878af
Make device close cleaner.
2014-06-22 14:01:30 +02:00
Guus Sliepen
41583d5dcf
Don't print device statistics when exiting tinc.
...
Much more detailed statistics are now kept per node, which can be queried at
any time, which makes the device statistics obsolete.
2013-12-08 20:23:44 +01:00
Etienne Dechamps
633b7cbb45
Fix combination of Mode = router and DeviceType = tap on Linux.
...
I believe I have found a bug in tinc on Linux when it is used with
Mode = router and DeviceType = tap. This combination is useful because
it allows global broadcast packets to be used in router mode. However,
when tinc receives a packet in this situation, it needs to make sure its
destination MAC address matches the address of the TAP adapter, which is
typically not the case since the sending node doesn't know the MAC
address of the recipient. Unfortunately, this is not the case on Linux,
which breaks connectivity.
2013-07-15 00:28:35 +02:00
Guus Sliepen
e70b5b5bd7
Use conditional compilation for device.c.
...
This requires the automake option "subdir-objects" to be enabled, and it
becomes more critical to specify the exact path to local header files.
2013-05-01 12:20:06 +02:00
Guus Sliepen
cc3c69c892
Releasing 1.1pre5.
2013-01-20 21:03:22 +01:00
Guus Sliepen
f5bb64b36a
Move make_names() and related variables to its own source file.
2013-01-17 16:39:02 +01:00
Guus Sliepen
d917c8cb6b
Fix whitespace.
2012-10-10 17:17:49 +02:00
Guus Sliepen
72642b40b3
Clear Ethernet header when reading packets from a tun device.
...
This fixes a warning from valgrind about uninitialized bytes, which were being
sent to other nodes.
2012-10-09 15:52:58 +02:00
Guus Sliepen
1e5deec973
Remove remnants of Ethertap and old TUNSETIFF ioctl().
2012-09-25 22:28:08 +02:00
Guus Sliepen
8ac096b5bf
Allow log messages to be captured by tincctl.
...
This allows tincctl to receive log messages from a running tincd,
independent of what is logged to syslog or to file. Tincctl can receive
debug messages with an arbitrary level.
2012-02-26 18:37:36 +01:00
Guus Sliepen
3fba80174d
Merge branch 'master' of git://tinc-vpn.org/tinc into 1.1
...
Conflicts:
NEWS
README
configure.in
doc/tincd.8.in
src/Makefile.am
src/bsd/device.c
src/connection.c
src/connection.h
src/cygwin/device.c
src/device.h
src/dropin.h
src/linux/device.c
src/mingw/device.c
src/net.c
src/net_packet.c
src/net_setup.c
src/net_socket.c
src/process.c
src/protocol.c
src/protocol_key.c
src/raw_socket_device.c
src/route.c
src/solaris/device.c
src/tincd.c
src/uml_device.c
2012-02-22 14:23:59 +01:00
Guus Sliepen
d1dcdf8eb6
Merge branch 'master' of black:tinc
2012-02-18 14:31:08 +01:00
Guus Sliepen
3b1fad04de
Allow setting DeviceType to tun or tap on Linux.
2012-02-18 14:37:52 +01:00
Guus Sliepen
708314df2f
Set FD_CLOEXEC flag on all sockets.
...
Scripts called by tinc would inherit its open filedescriptors. This could
be a problem if other long-running daemons are started from those scripts,
if those daemons would not close all filedescriptors before going into the
background.
Problem found and solution suggested by Nick Hibma.
2012-02-17 16:13:38 +01:00
Guus Sliepen
178e52f76e
Allow linking with multiple device drivers.
...
Apart from the platform specific tun/tap driver, link with the dummy and
raw_socket devices, and optionally with support for UML and VDE devices.
At runtime, the DeviceType option can be used to select which driver to
use.
2011-12-04 01:20:59 +01:00
Guus Sliepen
33f241d978
Merge branch 'master' of git://tinc-vpn.org/tinc into 1.1
...
Conflicts:
NEWS
configure.in
doc/tincd.8.in
lib/pidfile.c
lib/pidfile.h
lib/xalloc.h
lib/xmalloc.c
src/conf.c
src/conf.h
src/connection.c
src/connection.h
src/event.c
src/graph.c
src/graph.h
src/net.c
src/net.h
src/node.h
src/openssl/crypto.c
src/process.c
src/protocol.c
src/protocol_key.c
src/route.c
2011-06-06 20:42:15 +02:00
Guus Sliepen
809dfd2f5b
Remove support for the Ethertap device.
2011-06-02 18:07:50 +02:00
Guus Sliepen
6d08eb1614
Fix sparse warnings and add an extra sprinkling of const.
...
This is more or less the equivalent of Sven-Haegar Koch's fixes in the 1.1
branch.
2011-05-28 23:36:52 +02:00
Sven-Haegar Koch
d772289f6d
sparse fixup: warning: symbol '...' was not declared. Should it be static?
2011-05-28 15:24:39 +02:00
Guus Sliepen
f5843e7d64
Add per-node traffic counters.
2011-05-15 00:42:29 +02:00
Guus Sliepen
886a6f61a1
Merge branch 'master' into 1.1
...
Conflicts:
src/net_packet.c
src/openssl/rsagen.h
src/protocol_auth.c
src/protocol_key.c
2010-11-19 12:22:48 +00:00
Brandon L Black
3f410e2f8f
Experimental IFF_ONE_QUEUE support for Linux
2010-11-13 21:25:41 +01:00
Guus Sliepen
a22041922f
Merge branch 'master' into 1.1
...
Conflicts:
doc/tincd.8.in
lib/pidfile.c
src/graph.c
src/net.c
src/net.h
src/net_packet.c
src/net_setup.c
src/net_socket.c
src/netutl.c
src/node.c
src/node.h
src/protocol_auth.c
src/protocol_key.c
src/tincd.c
2010-11-12 16:15:29 +01:00
Guus Sliepen
798fa2f04c
Use 64 bit counters to keep track of bytes sent/received from the virtual network interface.
2010-06-04 15:04:08 +02:00
Guus Sliepen
dbf3d168b7
Use strrchr() insteaad of rindex().
...
The latter function is deprecated, some build environments do not support.
2010-05-07 12:24:49 +02:00
Guus Sliepen
7ea85043ac
Merge branch 'master' into 1.1
...
Conflicts:
NEWS
configure.in
lib/Makefile.am
lib/pidfile.c
lib/pidfile.h
lib/utils.c
po/POTFILES.in
po/nl.po
src/Makefile.am
src/bsd/device.c
src/conf.c
src/connection.c
src/cygwin/device.c
src/edge.c
src/event.c
src/graph.c
src/linux/device.c
src/meta.c
src/mingw/device.c
src/net.c
src/net_packet.c
src/net_setup.c
src/net_socket.c
src/netutl.c
src/node.c
src/process.c
src/protocol.c
src/protocol_auth.c
src/protocol_edge.c
src/protocol_key.c
src/protocol_misc.c
src/protocol_subnet.c
src/raw_socket/device.c
src/route.c
src/solaris/device.c
src/subnet.c
src/tincd.c
src/uml_socket/device.c
2009-09-29 14:55:29 +02:00
Guus Sliepen
4c85542894
Drop support for localisation.
...
Localised messages don't make much sense for a daemon, and there is only the
Dutch translation which costs time to maintain.
2009-09-25 00:54:07 +02:00
Guus Sliepen
a227843b73
Remove checkpoint tracing.
...
This feature is not necessary anymore since we have tools like valgrind today
that can catch stack overflow errors before they make a backtrace in gdb
impossible.
2009-09-25 00:33:04 +02:00
Guus Sliepen
5dde6461a3
K&R style braces.
...
This is essentially commit f02d3ed3e1
from the
1.1 branch, making it easier to merge between master and 1.1.
2009-09-25 00:14:03 +02:00
Guus Sliepen
ab7c61b06f
Update the address of the Free Software Foundation in all copyright headers.
2009-09-25 00:01:00 +02:00
Guus Sliepen
c217d214f4
Remove all occurences of $Id$.
2009-09-24 23:39:16 +02:00
Guus Sliepen
5a132550de
Merge branch 'master' into 1.1
...
Conflicts:
doc/tincd.8.in
lib/pidfile.c
src/graph.c
src/net.c
src/net.h
src/net_packet.c
src/net_setup.c
src/net_socket.c
src/netutl.c
src/node.c
src/node.h
src/protocol_auth.c
src/protocol_key.c
src/tincd.c
2009-06-05 23:14:13 +02:00
Florian Forster
6b415a1a7f
src/linux/device.c: Fix segfault when running without `--net'.
...
If running without `--net', the (global) variable `netname' is NULL. This
creates a segmentation fault because this NULL-pointer is passed to strdup:
Program terminated with signal 11, Segmentation fault.
#0 0xb7d30463 in strlen () from /lib/tls/i686/cmov/libc.so.6
(gdb) bt
#0 0xb7d30463 in strlen () from /lib/tls/i686/cmov/libc.so.6
#1 0xb7d30175 in strdup () from /lib/tls/i686/cmov/libc.so.6
#2 0x0805bf47 in xstrdup (s=0x0) at xmalloc.c:118 <---
#3 0x0805be33 in setup_device () at device.c:66
#4 0x0805072e in setup_myself () at net_setup.c:432
#5 0x08050db2 in setup_network () at net_setup.c:536
#6 0x0805b27f in main (argc=Cannot access memory at address 0x0) at tincd.c:580
This patch fixes this by checking `netname' in `setup_device'. An alternative
would be to check for NULL-pointers in `xstrdup' and return NULL in this case.
Signed-off-by: Florian Forster <octo@verplant.org>
2009-05-27 10:55:09 +02:00
Guus Sliepen
08aabbf931
Merge branch 'master' into 1.1
...
Conflicts:
NEWS
README
doc/tinc.conf.5.in
doc/tinc.texi
po/nl.po
src/conf.c
src/connection.c
src/event.c
src/graph.c
src/net.c
src/net_packet.c
src/net_socket.c
src/node.c
src/node.h
src/openssl/rsagen.h
src/protocol_auth.c
src/protocol_key.c
src/protocol_misc.c
src/subnet.c
src/subnet.h
src/tincd.c
2009-03-09 19:02:24 +01:00
Guus Sliepen
78fc59e994
Update THANKS and copyright information.
2009-03-05 14:12:36 +01:00
Guus Sliepen
a39a9506cd
Move free()s at the end om main() to the proper destructor functions.
2009-01-09 12:36:06 +01:00
Guus Sliepen
b069da90d6
Consistently allocate device and iface variables on the heap.
...
This fixes a segfault when no Device has been specified and tinc exits, and it
would try to free() a static string. Thanks to Borg for spottin.
2009-01-03 22:06:10 +01:00
Guus Sliepen
636200d1a2
Remove unnecessary parentheses from sizeof, apply sizeof to variables instead of types whereever possible.
2008-12-11 15:56:18 +00:00
Guus Sliepen
e37ef57a95
More consistent variable naming.
2007-05-18 11:19:31 +00:00
Guus Sliepen
f02d3ed3e1
K&R style braces
2007-05-18 10:00:00 +00:00
Guus Sliepen
855806b2f7
Do a simple test for linux/if_tun.h instead of no test at all.
2006-12-16 16:53:58 +00:00
Guus Sliepen
0322c0883b
Remove the test for linux/if_tun.h.
...
It has been available for years on any decent Linux distribution.
Although linux/if_tun.h is now required to compile tinc,
you can still run it on systems which only support Ethertap.
2006-12-16 16:40:09 +00:00
Guus Sliepen
de78d79db8
Update copyright notices, remove Ivo's email address.
2006-04-26 13:52:58 +00:00
Guus Sliepen
df3220a154
Update copyright notices.
2005-05-04 18:09:30 +00:00
Guus Sliepen
1f00810da3
static
2004-11-01 17:02:19 +00:00
Guus Sliepen
7926a156e5
Update copyrights, links, email addresses and let Subversion update $Id$ keywords.
2004-03-21 14:21:22 +00:00
Guus Sliepen
6c5f3d8b74
We don't have to tell GCC how to cast.
2003-08-28 21:05:11 +00:00
Guus Sliepen
eefa28059a
Use bools and enums where appropriate.
2003-07-22 20:55:21 +00:00
Guus Sliepen
00ddbf5723
Update all device.c files.
2003-07-18 13:41:37 +00:00
Guus Sliepen
e449d94cae
Big header file cleanup: everything that has to do with standard system
...
libraries is moved to system.h.
2003-07-17 15:06:27 +00:00