Commit graph

315 commits

Author SHA1 Message Date
Erik Ekman
02c06d742f Formatting 2012-02-04 20:34:02 +01:00
Erik Ekman
293796fcf6 Fix #65, randomize rand_seed on startup 2012-02-04 20:34:02 +01:00
Erik Ekman
938c2458b9 Exit if IP/mtu can not be configured 2012-02-04 20:34:02 +01:00
Erik Ekman
a62ae8e562 Allow bind port and listen port to be the same if listenip doesnt include localhost. Also remove newlines from warnx 2012-02-04 20:34:02 +01:00
Sebastien Raveau
d5acb508bc Add support for applying SELinux context 2012-02-04 20:34:02 +01:00
Erik Ekman
cf78fdca85 print error if tun device is already taken 2012-02-04 20:34:02 +01:00
Erik Ekman
196b37c402 return 1 if opening tun fails and args are correct 2012-02-04 20:34:02 +01:00
Erik Ekman
da50020f5b return 1 if connection failed, #62 2012-02-04 20:34:02 +01:00
Erik Ekman
e84b317e0e Small tweaks 2012-02-04 20:34:02 +01:00
Erik Ekman
8fc8ce587c Any number of TAP32 interfaces supported, use -d to choose. #46 2012-02-04 20:34:02 +01:00
Erik Ekman
e59aaa523e Fixed #47, support any TAP device name 2012-02-04 20:34:02 +01:00
Erik Ekman
f20b3c9511 Remove a global variable and some warnings 2012-02-04 20:34:02 +01:00
Erik Ekman
de976d0558 #36 client now reads raw reply 2012-02-04 20:34:02 +01:00
Erik Ekman
1235cb3e4a #36 server now responds to raw login, quite a hack 2012-02-04 20:34:02 +01:00
Erik Ekman
c92ed9bad8 #36 send raw login packet directly to server 2012-02-04 20:34:02 +01:00
Erik Ekman
950c0870b2 Added CMC to I and S packet types 2012-02-04 20:34:02 +01:00
Erik Ekman
3eef144fce #36 fetch remote ip number after login 2012-02-04 20:34:02 +01:00
Erik Ekman
27fc039700 #36, add way to request ip address from server 2012-02-04 20:34:02 +01:00
Erik Ekman
96ee6f9630 Use recv on windows and read for the others 2012-02-04 20:34:01 +01:00
Luigi Rizzo
8b95bded10 Use read instead of recv, #58. 2012-02-04 20:34:01 +01:00
Erik Ekman
4bbf4ecd14 Check that nameserver was found 2012-02-04 20:34:01 +01:00
Erik Ekman
5dccfbecf6 Use ssize_t for read variable (ticket #57) 2012-02-04 20:34:01 +01:00
Erik Ekman
a3a20a2b09 #53 Support TAP32 version 0901 as well 2012-02-04 20:34:01 +01:00
Erik Ekman
7d140addae print dot while waiting for probe responses 2012-02-04 20:34:01 +01:00
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