Commit Graph

140 Commits

Author SHA1 Message Date
hidnplayr
2d1db4c224 Experimental blocking sockets
git-svn-id: svn://kolibrios.org@2996 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-11-01 19:21:46 +00:00
hidnplayr
151ae82c14 Port numbers for TCP and UDP must be given in Big endian order now.
git-svn-id: svn://kolibrios.org@2995 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-11-01 12:33:15 +00:00
hidnplayr
8e79162d05 Getting ready for blocking sockets
git-svn-id: svn://kolibrios.org@2994 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-10-30 19:46:04 +00:00
hidnplayr
d55a5ca34c Bugfix in SOCKET_ring_read
git-svn-id: svn://kolibrios.org@2993 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-10-30 18:04:04 +00:00
hidnplayr
c287a04d42 UDP output now only updates stats if send didnt fail.
git-svn-id: svn://kolibrios.org@2980 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-10-07 13:23:30 +00:00
hidnplayr
5d0e172b95 Send all PPPoE control packets to PPPoE app.
git-svn-id: svn://kolibrios.org@2964 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-09-01 20:44:13 +00:00
hidnplayr
4f4c895724 Moved Link Control Protocol handler from kernel to application.
git-svn-id: svn://kolibrios.org@2962 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-31 10:28:24 +00:00
hidnplayr
05d2a70ed6 Basic LCP implementation, starting with echo request->reply
git-svn-id: svn://kolibrios.org@2961 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-30 20:32:29 +00:00
hidnplayr
7c750c97d3 Fixed some bugs in PPPoE implementation. Discovery works, now we need PPP-LCP.
git-svn-id: svn://kolibrios.org@2960 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-30 20:01:42 +00:00
hidnplayr
85a661d4e9 TCP_input: window is now stored as dword, data is now also received when header prediction failed.
git-svn-id: svn://kolibrios.org@2957 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-30 07:02:10 +00:00
hidnplayr
d3c3f6e418 implemented TCP_rangeset and TCP_set_persist
git-svn-id: svn://kolibrios.org@2955 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-28 20:48:45 +00:00
hidnplayr
c10e7c783c rewrote TCP option parser, added SACK, moved connection accepter to run before option parser.
git-svn-id: svn://kolibrios.org@2954 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-28 19:56:28 +00:00
hidnplayr
eaebc59a11 Enabled Requesting scale and timestamp by default.
git-svn-id: svn://kolibrios.org@2953 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-28 19:44:27 +00:00
hidnplayr
790b435709 Fixed scaling option in TCP_output
git-svn-id: svn://kolibrios.org@2952 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-28 19:30:47 +00:00
hidnplayr
dd4fcc8d94 Fixed timestamp option in TCP_output
git-svn-id: svn://kolibrios.org@2951 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-28 19:02:56 +00:00
hidnplayr
12409b31b0 Fixed bugs in PPPoE discovery
git-svn-id: svn://kolibrios.org@2950 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-28 18:37:10 +00:00
hidnplayr
57c5115037 Fixed bug in RTT measurement
git-svn-id: svn://kolibrios.org@2948 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-28 10:01:56 +00:00
hidnplayr
a033334ecb Added missing file
git-svn-id: svn://kolibrios.org@2947 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-28 09:33:50 +00:00
hidnplayr
688b249960 Added Protection Against Wrapped Sequence numbers (PAWS)
git-svn-id: svn://kolibrios.org@2946 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-28 09:29:57 +00:00
hidnplayr
51263819d7 Bugfixes for #2937 (receive window calculation).
Disabled interrupts while in TCP_input or TCP_output to prevent deadlock.

git-svn-id: svn://kolibrios.org@2942 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-27 22:47:10 +00:00
hidnplayr
b0b5a26dd8 Fixed some cases of terrible deadlock in TCP.
git-svn-id: svn://kolibrios.org@2940 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-27 19:19:53 +00:00
hidnplayr
cd0f28c5ce Fixed bug in socket_connect for TCP
git-svn-id: svn://kolibrios.org@2939 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-27 18:59:34 +00:00
hidnplayr
737f5cdfee Fixed a bug in the last commit
git-svn-id: svn://kolibrios.org@2938 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-27 18:49:49 +00:00
hidnplayr
ead0b600bf Beginning implementation of timestamps and Round Trip Time in TCP.
git-svn-id: svn://kolibrios.org@2937 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-27 13:55:15 +00:00
hidnplayr
7957e16d02 Fixed kernel crash when keepalive timer expires.
git-svn-id: svn://kolibrios.org@2936 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-26 10:13:59 +00:00
hidnplayr
26eb4cbcc9 Removed useless cli before calling mutex
git-svn-id: svn://kolibrios.org@2932 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-20 16:04:05 +00:00
hidnplayr
de28332c4d Rewrote PPPoE from scratch.
TODO: link IPv4_output to PPPoE_session_output

git-svn-id: svn://kolibrios.org@2931 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-19 19:09:09 +00:00
hidnplayr
615e3cc84c Some updates for TCP
git-svn-id: svn://kolibrios.org@2930 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-19 11:21:20 +00:00
hidnplayr
8140e5df69 Some markup changes in network stack.
git-svn-id: svn://kolibrios.org@2924 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-15 16:15:57 +00:00
hidnplayr
cfa8509ec1 Added crude loopback device.
git-svn-id: svn://kolibrios.org@2914 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-08-08 13:14:32 +00:00
hidnplayr
e838b363d6 Fixed debug output for previous revision
git-svn-id: svn://kolibrios.org@2894 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-07-27 22:24:08 +00:00
hidnplayr
5133c50635 TCP_send now sends correct data under all conditions
git-svn-id: svn://kolibrios.org@2893 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-07-27 22:14:12 +00:00
hidnplayr
83c26b2500 Better debug info for network, lots of improvements in TCP code
git-svn-id: svn://kolibrios.org@2891 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-07-26 23:21:35 +00:00
hidnplayr
0287f5c75b Bugfixes & further development of TCP_output
git-svn-id: svn://kolibrios.org@2890 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-07-26 14:54:57 +00:00
hidnplayr
e19d06cb9f network code cleanup, implemented TCP_sendalot
git-svn-id: svn://kolibrios.org@2888 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-07-24 20:29:46 +00:00
hidnplayr
a105ce8fd8 Fixed bug with TCP_close
git-svn-id: svn://kolibrios.org@2882 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-07-19 13:17:11 +00:00
hidnplayr
ca262f8c90 Disable keepalive timer on listening socket.
git-svn-id: svn://kolibrios.org@2880 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-07-17 22:53:05 +00:00
hidnplayr
3c7b5955e3 Correct TCP socket closing after keepalive expires.
git-svn-id: svn://kolibrios.org@2879 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-07-17 22:20:18 +00:00
hidnplayr
eda11ddd36 Getting ready for better IP routing
git-svn-id: svn://kolibrios.org@2877 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-07-17 21:36:34 +00:00
hidnplayr
645e347dff Implemented proper closing/disconnecting for TCP sockets.
git-svn-id: svn://kolibrios.org@2869 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-07-13 16:24:41 +00:00
hidnplayr
b419831aa5 Bugfix in SOCKET_process_end
git-svn-id: svn://kolibrios.org@2868 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-07-13 14:06:16 +00:00
hidnplayr
5a6b1713d2 Fixed sysfn 18.2
git-svn-id: svn://kolibrios.org@2867 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-07-13 14:02:54 +00:00
hidnplayr
96f1dd834c Added CMOVcc replacements to kernel macros (for eBox)
git-svn-id: svn://kolibrios.org@2866 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-07-13 13:29:28 +00:00
hidnplayr
3760cb5564 IPv4: Pre-calculate broadcast address once.
+ some stubs for IPv6

git-svn-id: svn://kolibrios.org@2731 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-06-03 19:28:01 +00:00
hidnplayr
1e3b48239a ARP_IP_to_MAC no longer blocks. Updated SOCKET_process_end (altough kernel does not call it yet). Updated TCP_output to time a retransmit on ARP error.
git-svn-id: svn://kolibrios.org@2629 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-04-18 16:01:38 +00:00
hidnplayr
9c870d827e Socket_send_tcp now no longer returns an error when sending 0 bytes.
git-svn-id: svn://kolibrios.org@2623 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-04-17 19:08:41 +00:00
hidnplayr
4f5e5cb45b SOCKET_bind now checks if the localport is not already in use.
SOCKET_check_port now works correctly if the computer has multiple IP addresses

git-svn-id: svn://kolibrios.org@2622 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-04-17 19:00:13 +00:00
hidnplayr
a83978c197 -Bugfix for 2614 (had forgotten read_ip subfunction)
-Bugfix in socket_send_tcp
-IPv4 now simply ignores options, but does not drop the packet
-refactored sys_network api code 

git-svn-id: svn://kolibrios.org@2621 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-04-17 18:41:58 +00:00
hidnplayr
ba80d953e5 Cleanup in Net Branch + stub for PPPoE I wrote some months ago
git-svn-id: svn://kolibrios.org@2614 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-04-14 21:15:00 +00:00
hidnplayr
6b6bbac3ce Proper initialization for TCP socket (net branch)
git-svn-id: svn://kolibrios.org@2612 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-04-14 18:20:01 +00:00