Commit graph

733 commits

Author SHA1 Message Date
Erik Ekman 3fadbfb580 Do not let sockets be inherited by sub-processes
Set FD_CLOEXEC flag on tunnel and UDP file descriptors.
Fixes ticket #99, "should not allow UDP socket to be inherited by ifconfig"
2014-06-04 17:48:43 +09:00
Erik Ekman a23899513d Remove trailing whitespace 2014-06-01 08:46:54 +02:00
Erik Ekman 388afe3845 Update copyright 2014-06-01 08:46:54 +02:00
Erik Ekman b7e05e0b9a Revert submake -C call
Not supported by OpenBSD make.
2014-05-31 22:58:51 +02:00
Erik Ekman ac931e65e7 Use -C in submake calls instead of cd
Reorder more common install/uninstall/clean before specialized targets.
2014-05-31 22:57:15 +02:00
Erik Ekman 95dedf51db Simplify opening UDP socket in win32 tun reader 2014-05-31 21:22:03 +02:00
Erik Ekman d0fb85e8cf Do not use 53 as source port for DNS/raw traffic.
For some reason this makes raw traffic get dropped.
2014-05-31 21:20:04 +02:00
Erik Ekman 5b71224def Fix segfault in windows tun reader thread
The arguments to open_dns() needs to be updated after API change.
Called with 0, INADDR_ANY used to mean port, IP address but now means
pointer to sockadddr and its length. Thanks to C for not giving any
warnings or errors..
2014-05-31 19:33:25 +02:00
Erik Ekman c52ba7f606 Refactor targets to build crosscompiled zipfiles
Move common things into new target
Add 32/64 bit windows version with MinGW-w64
Serve textfiles with CRLF and .txt suffix
Strip windows binaries
2014-05-31 12:05:17 +02:00
Erik Ekman 00268bc160 Fix two unused variables for windows build 2014-05-31 10:19:46 +02:00
Erik Ekman 3914d37c99 Move error message generation into topdomain check method
Change isalpha() to a-z check to avoid locale issues
2014-05-31 10:07:36 +02:00
Erik Ekman 9bb2323f84 Improve check of topdomain to use
Add more checks and unit tests
2014-05-30 00:18:45 +02:00
Erik Ekman bacb69e4f0 Mark usage() method as noreturn to avoid warning on BSD
Warning from OpenBSD/NetBSD:
  CC iodine.c
  iodine.c: In function 'main':
  iodine.c:141:6: warning: 'nameservaddr_len' may be used uninitialized in this function
2014-05-29 23:21:55 +02:00
Erik Ekman c1b24abf3a Update changelog 2014-05-29 19:08:20 +02:00
Erik Ekman d6c3426b84 Set C standard to C99
Also include strings.h where strcasecmp() is used
2014-05-29 18:38:43 +02:00
Erik Ekman b3f8e7118a Do not set CC in tests 2014-05-29 17:41:43 +02:00
Erik Ekman b079b0eda5 Fix build error and a warning on OpenBSD 2014-05-29 16:18:59 +02:00
Erik Ekman 031953e295 Fix testcase compile error on OS X 10.6+, take 2
Add includes for Darwin in another test file
2014-04-22 22:43:25 +02:00
Erik Ekman 4aa078ddd9 Fix testcase compile error on OS X 10.6+
Apply old fix from ticket #79 also to test code.
2014-04-22 22:24:11 +02:00
Erik Ekman 50d7865967 Configure Travis for OS X build
It cannot build multi-platform right now.
2014-04-22 22:06:01 +02:00
Erik Ekman 17de589e7d Add travis ci settings file 2014-04-22 20:46:48 +02:00
Erik Ekman 27f2504cda Add section about how to compile 2014-04-08 21:59:09 +02:00
Erik Ekman 97b7c604d1 Add clarification about ipv4/ipv6 setup 2014-04-08 21:27:55 +02:00
Erik Ekman 5079d8bf5e Fix up changelog 2014-04-08 21:04:17 +02:00
gregor herrmann 9f2e06c525 manpage 2014-04-06 13:41:46 +02:00
gregor herrmann 38216474b0 spelling 2014-04-06 13:41:41 +02:00
Barak A. Pearlmutter 88590bcaaf Mixing signed and unsigned quantities in MIN() upset GCC's tender soul. 2014-04-06 13:41:31 +02:00
Barak A. Pearlmutter f73fb9f8d0 rewrite comparison to avoid negative unsigned numbers
Note that GCC -O2 is happy to optimize away (x<0) when x is an
unsigned quantity.  This was actually occurring in CHECKLEN(0),
causing the compiler to issue a warning.
2014-04-06 13:41:17 +02:00
Barak A. Pearlmutter ee1c49a383 make .gitignore more specific 2014-04-06 13:40:37 +02:00
Barak A. Pearlmutter 06d45682b7 whitespace 2014-04-06 13:40:28 +02:00
Erik Ekman acd6c37ac1 Fix build after rtable patch 2014-04-06 13:35:09 +02:00
Erik Ekman eca80f769b Merge branch 'master' of https://github.com/jedisct1/iodine 2014-04-06 13:31:34 +02:00
Erik Ekman 619ede5da8 Add options to force IP version for client DNS traffic 2014-02-10 22:52:31 +01:00
Erik Ekman b827a632ad Add more formatting tests
Check for IPv6 support before adding tests
2014-02-10 22:34:24 +01:00
Erik Ekman f249ee3b5d Run osflags for compile/link of tests as well
src/common.c is linked into test binary, might require some libs
2014-02-07 23:12:51 +01:00
Erik Ekman d57aebacdc Add some tests for get_addr/format_addr
IPv4 only for now for compatibility with old machines
2014-02-07 23:08:29 +01:00
Erik Ekman 540d3795a9 Switch from inet_pton() to getnameinfo() for portability
Windows XP is supported again
2014-02-06 22:50:23 +01:00
Erik Ekman 7fd8f9854b Restore mingw compiler 2014-02-06 19:47:26 +01:00
Erik Ekman f02339b3b2 IPv6: Create single way to format IP addresses 2014-02-06 19:44:26 +01:00
Erik Ekman a737d6ea7f Update documentation 2014-02-05 23:18:42 +01:00
Erik Ekman 400f45c793 Do not use AI_ADDRCONFIG on Windows
It was not available on my MinGW crosscompiler,
and it may be harmful:
https://code.google.com/p/chromium/issues/detail?id=5234

Also, remove old conflicting WINVER in osflags.
It is set in src/windows.h now.
2014-02-05 22:55:35 +01:00
Erik Ekman a1d88c4f0a IPv6 support for client (#107)
The iodine client now supports both IPv4 and IPv6 nameservers for
sending DNS queries to an IPv4 iodined. The nameserver will
transparently handle translation between IP protocols.

Windows port needs Vista or later to support IPv6.
2014-02-05 22:36:53 +01:00
Erik Ekman 8baad91156 Make sure buffer is zero-terminated when getting external ip
Also switch to HTTP 1.0 to avoid chunked transfer coding.
2014-01-29 23:12:22 +01:00
Erik Ekman f11328306d Fix unused variable warnings in test cases 2014-01-29 22:41:24 +01:00
Erik Ekman b0e41e82e4 Fix gcc warning -Wsizeof-pointer-memaccess in test 2014-01-29 22:38:35 +01:00
Erik Ekman 46a3d82639 Use pkg-config to find needed libs for check.
Also add -lpthread explicitly
2014-01-29 22:12:16 +01:00
Erik Ekman 9ee78b6f4d Fix some warnings in read tests 2014-01-29 21:22:58 +01:00
Erik Ekman c352286deb Update gitignore 2014-01-29 21:22:45 +01:00
Erik Ekman 967276f3ba Fix git revision for android 2014-01-29 20:34:00 +01:00
Erik Ekman fb9e930fee Print git revision as version 2014-01-29 20:25:45 +01:00