Commit Graph

62 Commits

Author SHA1 Message Date
hidnplayr
1fc22f7bce Experimental support for MSG_PEEK and MSG_DONTWAIT in SOCKET_receive_stream.
git-svn-id: svn://kolibrios.org@3459 a494cfbc-eb01-0410-851d-a64ba20cac60
2013-04-09 10:47:23 +00:00
hidnplayr
3717c3370d Run TCP input code in a separate thread.
git-svn-id: svn://kolibrios.org@3389 a494cfbc-eb01-0410-851d-a64ba20cac60
2013-03-18 21:04:15 +00:00
hidnplayr
de440713d1 Re-enabled network2 events.
git-svn-id: svn://kolibrios.org@3388 a494cfbc-eb01-0410-851d-a64ba20cac60
2013-03-18 20:37:23 +00:00
hidnplayr
a63322d121 ARP_BLOCK now lets you choose if ARP_IP_to_MAC should block or not.
git-svn-id: svn://kolibrios.org@3360 a494cfbc-eb01-0410-851d-a64ba20cac60
2013-03-11 16:51:29 +00:00
hidnplayr
cc4161de83 Synced net branch with trunk (#3358)
git-svn-id: svn://kolibrios.org@3359 a494cfbc-eb01-0410-851d-a64ba20cac60
2013-03-10 12:28:37 +00:00
hidnplayr
f685c27c07 Introduced new application event for network subsystem changes (link changed, ip changed, ...)
Removed get_mac and set_mac procedures from device structure, kernel does not need them.
Added link state detection capabilities for kernel and some drivers.

git-svn-id: svn://kolibrios.org@3346 a494cfbc-eb01-0410-851d-a64ba20cac60
2013-03-07 09:35:24 +00:00
hidnplayr
8f48436569 Now Zeroconfig waits for driver to be initialised.
git-svn-id: svn://kolibrios.org@3340 a494cfbc-eb01-0410-851d-a64ba20cac60
2013-03-06 11:15:28 +00:00
hidnplayr
89bfe5f5d6 Better blocking sockets, preparing for some API changes.
git-svn-id: svn://kolibrios.org@3257 a494cfbc-eb01-0410-851d-a64ba20cac60
2013-02-19 16:56:54 +00:00
hidnplayr
72f758c218 Changed some debug output messages (and their levels) in new stack.
Implemented a queue for incoming TCP segments.

git-svn-id: svn://kolibrios.org@3251 a494cfbc-eb01-0410-851d-a64ba20cac60
2013-02-17 17:58:53 +00:00
hidnplayr
e68a03adef Removed non-working debug level specific for network stack.
git-svn-id: svn://kolibrios.org@3249 a494cfbc-eb01-0410-851d-a64ba20cac60
2013-02-17 16:37:08 +00:00
hidnplayr
382dde4fed Added some experimental IPv6 code to net branch.
git-svn-id: svn://kolibrios.org@3185 a494cfbc-eb01-0410-851d-a64ba20cac60
2013-01-18 14:32:05 +00:00
hidnplayr
2033224063 Added simple socket debugging tool.
Moved some TCP code to tcp_usreq.inc.

git-svn-id: svn://kolibrios.org@3146 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-12-30 20:31:11 +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
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
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
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
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
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
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
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
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
815cb2a26f Usage of new mutexes in net branch.
git-svn-id: svn://kolibrios.org@2402 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-02-25 12:03:22 +00:00
hidnplayr
e6242dd229 Synced net branch with trunk
git-svn-id: svn://kolibrios.org@2382 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-02-22 16:06:05 +00:00
hidnplayr
dc66507e60 Bugfixes in net branch:
-Disabled UDP remote IP checking because it blocks valid packets in certain situations (DNS resolving)
-Removed device '0' (application level) as default device because it was not correctly implemented and would require a lot of changes. Yet need to find a better solution for this.

git-svn-id: svn://kolibrios.org@2366 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-02-21 14:09:00 +00:00
hidnplayr
255c2b5ab3 NET branch: re-organised all structs to use struct.inc from fasm
git-svn-id: svn://kolibrios.org@2305 a494cfbc-eb01-0410-851d-a64ba20cac60
2011-11-08 23:06:26 +00:00
hidnplayr
b2a283b9fe Removed unnescessary typecasts in net branch
git-svn-id: svn://kolibrios.org@2302 a494cfbc-eb01-0410-851d-a64ba20cac60
2011-11-07 22:08:40 +00:00
hidnplayr
b7875fe3bf Fixed Unsigned jumps in net branch
git-svn-id: svn://kolibrios.org@2300 a494cfbc-eb01-0410-851d-a64ba20cac60
2011-11-07 20:25:47 +00:00
hidnplayr
d17706e476 NET branch:
- cleanup in stack.inc + re-organisation of device pointers
- i8255x driver stub
- fix in sis900 driver (still untested)


git-svn-id: svn://kolibrios.org@2220 a494cfbc-eb01-0410-851d-a64ba20cac60
2011-09-22 04:08:56 +00:00
hidnplayr
d19fc735da Added some stub functions to net_branch
git-svn-id: svn://kolibrios.org@1885 a494cfbc-eb01-0410-851d-a64ba20cac60
2011-02-24 14:16:02 +00:00
hidnplayr
8619f93e83 More TCP and sockets code
git-svn-id: svn://kolibrios.org@1774 a494cfbc-eb01-0410-851d-a64ba20cac60
2011-01-28 23:07:25 +00:00
hidnplayr
2ba52e3e4a More TCP updates + Socket states
git-svn-id: svn://kolibrios.org@1773 a494cfbc-eb01-0410-851d-a64ba20cac60
2011-01-28 16:49:08 +00:00
hidnplayr
db55961834 More updates to TCP code of new stack.
git-svn-id: svn://kolibrios.org@1763 a494cfbc-eb01-0410-851d-a64ba20cac60
2011-01-24 22:01:54 +00:00
hidnplayr
1dd8c78cbd * Updates in TCP code
* Splitted TCP code into multiple files
* cleanup

git-svn-id: svn://kolibrios.org@1733 a494cfbc-eb01-0410-851d-a64ba20cac60
2011-01-08 14:59:21 +00:00
hidnplayr
b70514e695 Update in TCP code for net branch.
git-svn-id: svn://kolibrios.org@1719 a494cfbc-eb01-0410-851d-a64ba20cac60
2010-12-17 23:04:18 +00:00
hidnplayr
d93ba1183b Small update in TCP code, stub for TCP_close
git-svn-id: svn://kolibrios.org@1716 a494cfbc-eb01-0410-851d-a64ba20cac60
2010-12-10 18:37:02 +00:00
hidnplayr
5b0ea56111 Updated SOCKET_listen and SOCKET_accept so they can actually work now.
Changed SOCKET_alloc so that it returns better socket numbers.

git-svn-id: svn://kolibrios.org@1543 a494cfbc-eb01-0410-851d-a64ba20cac60
2010-07-31 19:44:17 +00:00
hidnplayr
fab920c5c8 Deleted double macro in netdrv.inc
Refactoring of ARP code.
Used universal names for protocol handlers.
Moved some pieces of code from procs to macros.
Added IPv4_fragment (currently disabled)
Added ring-buffer functions for sockets 
Updates in TCP code

git-svn-id: svn://kolibrios.org@1529 a494cfbc-eb01-0410-851d-a64ba20cac60
2010-07-27 18:53:38 +00:00
hidnplayr
084d99548d -Refactoring of network drivers.
-Ommitted unnescessary copying of packets in some drivers.
-Some small updates in TCP (perhaps 50% done ?)

git-svn-id: svn://kolibrios.org@1519 a494cfbc-eb01-0410-851d-a64ba20cac60
2010-07-15 18:54:19 +00:00
hidnplayr
6a1d621671 - globalisation of network driver functions
(Replaced EthRegDev with NetRegDev)
- rewrite/cleanup of socket.inc
- started rewrite of tcp.inc 
- port numbers in application are not byte-swapped anymore
- many more fixes and changes

- TCP does not work but UDP/IP/ICMP/ARP (partly) work.. (as before)



git-svn-id: svn://kolibrios.org@1514 a494cfbc-eb01-0410-851d-a64ba20cac60
2010-07-11 23:13:12 +00:00
hidnplayr
e4b0f6f30d net-branch:
Fixed error in udp.inc
Fixed another error in checksum, seems to work bug-free now :)

git-svn-id: svn://kolibrios.org@1483 a494cfbc-eb01-0410-851d-a64ba20cac60
2010-06-07 12:57:52 +00:00
hidnplayr
34c194bda4 Net-branch:
Fixed Bugs in checksum, introduced in #1473
Checksum for IP/UDP/TCP is now very fast.


git-svn-id: svn://kolibrios.org@1482 a494cfbc-eb01-0410-851d-a64ba20cac60
2010-06-07 09:37:13 +00:00
hidnplayr
c59969f41c Updates in net branch coded 6 months ago.
Mostly concerning checksuming, and cleanups

git-svn-id: svn://kolibrios.org@1473 a494cfbc-eb01-0410-851d-a64ba20cac60
2010-05-28 20:47:32 +00:00
hidnplayr
0e0b5fb665 More TCP code updates for net branch, code is still very unstable
git-svn-id: svn://kolibrios.org@1318 a494cfbc-eb01-0410-851d-a64ba20cac60
2009-12-13 14:55:42 +00:00
hidnplayr
dc1c59db4d Now you can compile the net kernel with or without procedure to QUEUE ethernet packets first, or send them immediately.
git-svn-id: svn://kolibrios.org@1259 a494cfbc-eb01-0410-851d-a64ba20cac60
2009-11-09 17:59:50 +00:00
hidnplayr
adec2ac083 Some code cleanup (cosmethical changes) in net_branch
git-svn-id: svn://kolibrios.org@1257 a494cfbc-eb01-0410-851d-a64ba20cac60
2009-11-09 13:59:46 +00:00
CleverMouse
1f42f20b6f Some changes in TCP for net branch:
* listening sockets have now a queue of incoming connections
* a mechanism which allows an application to know when sent packet is ACKed
* some fixes


git-svn-id: svn://kolibrios.org@1256 a494cfbc-eb01-0410-851d-a64ba20cac60
2009-11-09 11:34:51 +00:00