Commit Graph

55 Commits

Author SHA1 Message Date
frekky
a5a936f4e4 Implemented TCP forward function (can be used with SSH proxycommand) 2016-02-07 21:59:00 +08:00
frekky
d6b48fe4e1 Updated client-side TCP forwarding command line options 2016-02-04 20:44:34 +08:00
frekky
ffcd9da980 Added client support for negotiating TCP forward options 2016-01-29 22:12:05 +08:00
frekky
5233c2ab1e Cleaned up client send_packet functions, protocol changes 2016-01-22 21:57:33 +08:00
frekky
ea062a0525 Fixed stats format warnings 2016-01-10 22:07:50 +08:00
frekky
07181e6a6a Fixed format string warnings when compiling for 32 bit systems 2016-01-10 22:00:52 +08:00
frekky
122e42a5f7 Always print window sizes on startup 2016-01-09 22:13:13 +08:00
frekky
7068bcc08d Added command line option presets (--preset or -Y)
Fixed some refactoring issues and passing this.* as arguments
2016-01-09 19:29:17 +08:00
frekky
147119afee Refactor client code to use client_instance 2016-01-09 15:04:39 +08:00
frekky
68a53c4565 Fixed clang warnings + debug build 2015-11-21 19:27:28 +08:00
frekky
4a565fd664 Improve data flow, better debugging, fixed ping CMC and frag timeout 2015-11-10 20:54:01 +08:00
frekky
3bcfe91769 Fixed raw UDP mode + improved debugging 2015-10-27 18:33:44 +08:00
frekky
87edca99b4 Added downstream window fragment timeout option (-j) 2015-10-27 17:25:56 +08:00
frekky
235d3be538 Improved timings + fixed immediate mode send interval.
Still switches to immediate mode too eagerly and reduces timeout very
quickly (especially with lots of SERVFAILs)
2015-10-17 22:28:10 +08:00
frekky
ceaac64814 Refactored client/server to use debug macro 2015-10-04 22:39:40 +08:00
frekky
41ec2ae79c Added statistics printout and command line option 2015-10-04 22:13:47 +08:00
frekky
1b85d23087 Fixed option handshake and query tracking (now works) 2015-10-03 22:09:34 +08:00
frekky
e454a7edb5 Modified options packet to change more than 1 option at a time 2015-09-28 20:06:23 +08:00
frekky
c7cff96055 More connection stats, timeout control + compression flags, client-side
query tracking; lazy mode is now possible with windowing protocol.
2015-09-28 13:07:00 +08:00
frekky
0449c465e7 Re-implemented working DNS tunnelling (with windows!) 2015-08-29 20:11:46 +08:00
frekky
8e08c007c5 Window buffer max_fragsize adjusted according to MAX_HOSTNAME and
current upstream codec
2015-08-23 22:14:27 +08:00
frekky
96f9270b7f Removed unhelpful coding errors. 2015-08-21 23:24:53 +08:00
frekky
844abefcf8 A little bit of refactoring - separated iodined.c into separate files
Fixed up client side compile issues
Removed old packet handling code - TODO: use sliding window buffer
instead
2015-08-21 16:57:54 +08:00
frekky
83f70608fc Client side sliding window implementation (requires further testing) 2015-08-21 11:08:47 +08:00
frekky
3e7cf55fe4 Added option for multiple nameservers, used in round-robin 2015-08-14 22:07:48 +08:00
Erik Ekman
c269a00344 Add support for Android L
Build position-indepent executables, required for Android L (5.0+)
They also work with kitkat.

Add new maketarget "cross-android-old" that builds without PIE
for older versions.

Include both new and old versions in latest-android.zip. Add arm64.

Hopefully solves github PR #14.
2015-08-05 19:36:28 +02:00
Erik Ekman
b4e9148df8 Support raw mode for both IPv4 and IPv6
Read destination address of IP request packet and return it.
Check length in client and use it as IPv4 or v6 depending on length.
2015-06-28 22:41:54 +02:00
Erik Ekman
9a45c4aa66 Change license wording to follow ISC license exactly
"Permission to use, copy, modify, and distribute this software" is now
"Permission to use, copy, modify, and/or distribute this software".

Add license header to source files missing one.
2014-08-07 21:18:33 +02:00
Barak A. Pearlmutter
46532539c2 Rename VERSION define
prep for autotools: autoconf defines VERSION so s/VERSION/PROTOCOL_VERSION/
2014-08-07 12:55:59 +02:00
Erik Ekman
eec0a868d9 Set correct sockaddr length when sending
Fix EINVAL error on NetBSD
2014-06-16 22:28:04 +02:00
Erik Ekman
3ebcd29b13 Add support for using an unspecified RR type
Add PRIVATE query type with id 65399 (private use range).
According to RFC3597 the reply data in a query with unspecified RR type must be handled
as unstructured binary data, which means it can contain raw packet data just like the NULL type.
Since the reply format is optimal it is ordered just after NULL in the priority order.
2014-06-09 20:06:36 +02:00
Erik Ekman
1f4b9250cf Check that supplied query type is valid 2014-06-09 18:56:32 +02:00
Erik Ekman
4d7678dc5b Prefix exported functions from client.c 2014-06-09 18:11:16 +02: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
d6c3426b84 Set C standard to C99
Also include strings.h where strcasecmp() is used
2014-05-29 18:38:43 +02: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
97b5e688ef Fix warning, unused variable 'accepted_fragsize' 2014-01-29 19:33:54 +01:00
Erik Ekman
45a5d80c49 Adjust indentation 2012-02-06 20:28:42 +01:00
Marcel Bokhorst
a569030bb7 Android support (#105) patch from Marcel Bokhorst 2012-02-04 20:34:05 +01:00
Erik Ekman
b22e3da5a0 #89, use remote ip as second ip in ifconfig on FreeBSD 2012-02-04 20:34:05 +01:00
J. A. Bezemer
b177901d38 Applied patch from #88, thanks a lot! 2012-02-04 20:34:04 +01:00
Erik Ekman
1a26a91db3 #82, switch to gethostbyname() for win32 support 2012-02-04 20:34:04 +01:00
Erik Ekman
c5bdf07070 #82 update docs 2012-02-04 20:34:04 +01:00
Erik Ekman
365aab1d29 #82, fix resolving given nameserver on everything but win32 2012-02-04 20:34:04 +01:00
Erik Ekman
269499ba43 Print DNS errors only when requested packet has an error 2012-02-04 20:34:04 +01:00
Erik Ekman
326da432c9 Fix buggy set lazy mode function 2012-02-04 20:34:04 +01:00
J. A. Bezemer
3c48602747 merge client code #76 2012-02-04 20:34:04 +01:00
Erik Ekman
92b160a416 Fix mtu fragment size probing 2012-02-04 20:34:04 +01:00
J. A. Bezemer
2c2dd6f06e update client code #75 2012-02-04 20:34:03 +01:00