Commit graph

291 commits

Author SHA1 Message Date
Erik Ekman addd798712 Set interface MTU to 1200.
1188 is the uncompressed DNS reply payload size that gets through
unfragmented on Ethernet.
2012-02-04 20:34:01 +01:00
Erik Ekman 3db5cd24b7 Fix (ignore) Dont-Fragment for OpenBSD and OS X 2012-02-04 20:34:01 +01:00
Erik Ekman 1bddcd33aa Set Dont-Fragment for various os 2012-02-04 20:34:01 +01:00
Erik Ekman 789d8f3450 Use winsock2.h, use ws2tcpip.h for socklen_t 2012-02-04 20:34:01 +01:00
Erik Ekman 54195968c7 Use winsock2.h, use ws2tcpip.h for socklen_t 2012-02-04 20:34:01 +01:00
Erik Ekman bc18afcc83 do proper mtu detection, ticket #54 2012-02-04 20:34:01 +01:00
Erik Ekman 7b30a2e504 actually accept mtu=1500 2012-02-04 20:34:01 +01:00
Erik Ekman 84f5965825 Increase default mtu to 1500 2012-02-04 20:34:01 +01:00
Erik Ekman 751f672a27 properly encode >1024 in probe requests (fix #52) 2012-02-04 20:34:01 +01:00
Erik Ekman 3e07afd13b change all printf to fprintf on stderr for #49 2012-02-04 20:34:01 +01:00
Erik Ekman 9c738bbc81 #44 hide password input 2012-02-04 20:34:01 +01:00
Erik Ekman 990a03e93d #45: free the info pointer 2012-02-04 20:34:01 +01:00
Erik Ekman 13a5b7c2db #45: use static buffer 2012-02-04 20:34:01 +01:00
Erik Ekman af1380f29d #45: Use IpHelper to get DNS server on win32 2012-02-04 20:34:01 +01:00
Erik Ekman 4ae304a9b7 Use winsock2.2 2012-02-04 20:34:01 +01:00
Erik Ekman 0b280bec2b clean up codec reverse inits 2012-02-04 20:34:01 +01:00
Erik Ekman 444299b86e #51 handle one block encode/decode for base32 2012-02-04 20:34:00 +01:00
Erik Ekman eed52b783f #51 handle one block encode/decode for base64 2012-02-04 20:34:00 +01:00
Erik Ekman aad34d941a Moved two global vars into main 2012-02-04 20:34:00 +01:00
Erik Ekman 9e6ae4ff1d Split handshake() function into smaller functions 2012-02-04 20:34:00 +01:00
Erik Ekman bf46666fe8 #50 added syslog logging for version and login packets. no-op on windows 2012-02-04 20:34:00 +01:00
Erik Ekman b6fc3fc0ef Made dns_get_id return unsigned short, added test cases 2012-02-04 20:34:00 +01:00
Erik Ekman 0f7ce5d086 Actually check length of probe responses 2012-02-04 20:34:00 +01:00
Erik Ekman 1b7e9bed43 give error when no TAP adapters found, and clean better 2012-02-04 20:34:00 +01:00
Erik Ekman b3e8cf0554 #43: Basic windows support operational 2012-02-04 20:34:00 +01:00
Erik Ekman 10fd388bb7 use socklen_t 2012-02-04 20:34:00 +01:00
Erik Ekman 3ad63f8791 cleanup of tun.c 2012-02-04 20:34:00 +01:00
Erik Ekman b43e97aeb0 added proper warn/warnx/err/errx 2012-02-04 20:34:00 +01:00
Erik Ekman 80ae712a6f Add WSAStartup to iodined 2012-02-04 20:34:00 +01:00
Erik Ekman ead9c5da8a Add WSAStartup 2012-02-04 20:34:00 +01:00
Erik Ekman 4734bd0ee0 Added win32 specific readme 2012-02-04 20:34:00 +01:00
Erik Ekman 94f412a8d8 Dont need plibc 2012-02-04 20:34:00 +01:00
Erik Ekman de617fb026 Make crosscompiling easier 2012-02-04 20:34:00 +01:00
Erik Ekman 937eaa8007 #43 Now works on windows, if you set your ip correctly and use a /30 netmask 2012-02-04 20:34:00 +01:00
Erik Ekman 568c4b18f4 #43: Fixed write function, downstream tunneling works now on win32 2012-02-04 20:34:00 +01:00
Erik Ekman 540f411474 Added setting of ip, does not seem to work though 2012-02-04 20:34:00 +01:00
Erik Ekman e4e38c9593 Opening of device done, and it is set as active 2012-02-04 20:34:00 +01:00
Erik Ekman 155f0c6f37 Merged branch with mingw port. Compiles now, tun work to do 2012-02-04 20:34:00 +01:00
Erik Ekman 0836ad0a5b revert cygwin stuff 2012-02-04 20:34:00 +01:00
Erik Ekman 6de3368f39 turn off root check in cygwin for now 2012-02-04 20:34:00 +01:00
Erik Ekman 97bf71e944 Make it build and fix tests in cygwin 2012-02-04 20:33:59 +01:00
Erik Ekman 352d75131f Move superuser check to common.c 2012-02-04 20:33:59 +01:00
Erik Ekman dc17bc69fe #40, fix dots in hostname when length is 113, 170, 227... Includes test. 2012-02-04 20:33:59 +01:00
Erik Ekman 13497b1df6 #39 stop wild loop in fragsize detection mode 2012-02-04 20:33:59 +01:00
Erik Ekman 8463d2b2fd Rename protocol to version 00000500 2012-02-04 20:33:59 +01:00
Erik Ekman 78d324a6b4 Enhanced checks on incoming queries, check user exists and is active 2012-02-04 20:33:59 +01:00
Erik Ekman bd1a8443d1 #7 finally done\! Added autoprobing of max downstream fragsize. 2012-02-04 20:33:59 +01:00
Erik Ekman df93da00c6 #7, add probe fragsize support for server. documented 2012-02-04 20:33:59 +01:00
Erik Ekman 9383c84479 fix warnings 2012-02-04 20:33:59 +01:00
Erik Ekman 9be3ef639c Fix build on OpenBSD 2012-02-04 20:33:59 +01:00
Erik Ekman 2bccb33214 fix label 2012-02-04 20:33:59 +01:00
Erik Ekman 9ababcaa96 #7, set max fragsize with -m in the client 2012-02-04 20:33:59 +01:00
Erik Ekman d4e077aff4 downstream fragsize is now per user 2012-02-04 20:33:59 +01:00
Erik Ekman d2b019a6df #7, handle special case, remove up to 1 second pause when doing bulk download 2012-02-04 20:33:59 +01:00
Erik Ekman 23fad5b628 Downstream fragmentation now working. Currently fragment size is hardcoded to 1200. More tweaking left, as well as fragsize auto detection. (#7) 2012-02-04 20:33:59 +01:00
Erik Ekman 78ae87ebc8 Discard packets which only has data header 2012-02-04 20:33:59 +01:00
Erik Ekman cc17083222 add downstream data header and basic parsing in client, for #7 2012-02-04 20:33:59 +01:00
Erik Ekman 3ed5f7e674 Create send_chunk() on server 2012-02-04 20:33:59 +01:00
Erik Ekman 43c438971b Allow setting netmask in iodined, fixes #27. The same netmask will be given to clients as well. Updated docs. 2012-02-04 20:33:59 +01:00
Erik Ekman c7fa4ddde2 Assign client IPs within the network (fixes #28), also limit number of users depending on netmask (for #27) 2012-02-04 20:33:59 +01:00
Erik Ekman a5031ee9dd Happy new year 2012-02-04 20:33:59 +01:00
Erik Ekman 62824e92ed Handle trans id >= 0x8000, fix bug #37 2012-02-04 20:33:58 +01:00
Erik Ekman 09c904f0c1 make OUT debug look more like IN debug 2012-02-04 20:33:58 +01:00
Erik Ekman 45d0708306 Fix for compile error on FreeBSD 2012-02-04 20:33:58 +01:00
Erik Ekman 85e75cadea make iodined build on opensolaris 2012-02-04 20:33:58 +01:00
Erik Ekman cc075124fa Detect duplicates in upstream data, start frag at zero 2012-02-04 20:33:58 +01:00
Erik Ekman 8d27febc7d Implemented new protocol for upstream data 2012-02-04 20:33:58 +01:00
Erik Ekman 2c4c5ec1ba Added simple 5bits to 8 and reverse encoder, with test 2012-02-04 20:33:58 +01:00
Erik Ekman 9ff6683119 Removing old code 2012-02-04 20:33:58 +01:00
Erik Ekman 37b7a9fade Added notreached 2012-02-04 20:33:58 +01:00
Erik Ekman 8a093efa59 Reverted new protocol 2012-02-04 20:33:58 +01:00
Erik Ekman 7eb7c02e5f Updated encoding tests 2012-02-04 20:33:58 +01:00
Erik Ekman e5f8b28813 Added blocksize funcs, made funcs static 2012-02-04 20:33:58 +01:00
Erik Ekman ae942ac542 Revert client shutdown code, it seems BADIP can arrive even though everything works 2012-02-04 20:33:58 +01:00
Erik Ekman b36ed27117 Added -n to set NS ip, updated docs, added checks 2012-02-04 20:33:58 +01:00
Erik Ekman e7fdb0a5f5 Reverted [686], [689] and [692]. SSH login now works again. Increased version. 2012-02-04 20:33:58 +01:00
Erik Ekman 3f579d2d39 Rename codecs 2012-02-04 20:33:58 +01:00
Erik Ekman d7f2d60d56 Use base64 is case is preserved and plus sign is allowed 2012-02-04 20:33:58 +01:00
Erik Ekman 33c1efb9ca Base64 codec now uses + as 64th char 2012-02-04 20:33:58 +01:00
Erik Ekman 8769d14cde rewrote strange message 2012-02-04 20:33:58 +01:00
Erik Ekman b5cdb09011 Added debugging 2012-02-04 20:33:58 +01:00
Erik Ekman 9d3f87ddcc Fix issue #33, respond to NS requests 2012-02-04 20:33:57 +01:00
Erik Ekman f4cd876ace shorten some lines 2012-02-04 20:33:57 +01:00
Erik Ekman b38293c11b Stop client if server is restarted 2012-02-04 20:33:57 +01:00
Erik Ekman bd45e6ccb2 formatting 2012-02-04 20:33:57 +01:00
Erik Ekman 49695a4cb4 Updated year 2012-02-04 20:33:57 +01:00
Erik Ekman 26cc53e3fa added include for iovec 2012-02-04 20:33:57 +01:00
Erik Ekman 35a8ffe46d Now fetches destination address from udp packets 2012-02-04 20:33:57 +01:00
Erik Ekman 02d40c1a7b Forward non-tunnel requests to another udp port (fixes #31) 2012-02-04 20:33:57 +01:00
Francois Revol ec2d6657a0 Patch to make it build on BeOS R5-BONE and Haiku 2012-02-04 20:33:57 +01:00
Erik Ekman d24dae882a Implemented filtering based on topdomain 2012-02-04 20:33:57 +01:00
Erik Ekman a07187a629 Eliminate extra 'ping' message when server sends data to client which generates a reply 2012-02-04 20:33:57 +01:00
Erik Ekman c82280c600 Fix #34, send pings only every 5 seconds 2012-02-04 20:33:57 +01:00
Erik Ekman 166fb4b6c7 Fixed segfault when sending version rejects: VNAK/VFUL 2012-02-04 20:33:57 +01:00
Erik Ekman fbaccb2f53 Changed texts 2012-02-04 20:33:57 +01:00
Erik Ekman 3fc9eaeaa3 Improved latency for traffic initiated from server 2012-02-04 20:33:57 +01:00
Erik Ekman 110866d76b fixed osflags script, updated changelog 2012-02-04 20:33:57 +01:00
Erik Ekman c01f42fd0f fix opensolaris warning 2012-02-04 20:33:57 +01:00
Erik Ekman 21ad2ef5ae added -D to usage() and help() 2012-02-04 20:33:57 +01:00
Erik Ekman 025fb1bf1f Added debug capability on server 2012-02-04 20:33:57 +01:00