#
74077e46 |
| 13-Jun-2010 |
Andreas Faerber <andreas.faerber@web.de> |
Add net_stack_cleanup()
Add a cleanup function net_stack_cleanup() that calls a new NetStack::ShutDown() method. Make sure this method works even if the network stack was never initialized.
Signed-
Add net_stack_cleanup()
Add a cleanup function net_stack_cleanup() that calls a new NetStack::ShutDown() method. Make sure this method works even if the network stack was never initialized.
Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>
show more ...
|
#
c302a243 |
| 23-Dec-2015 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
Merge remote-tracking branch 'upstream/master' into intel-extreme
|
#
1f4a2bd9 |
| 31-Aug-2010 |
Andreas Färber <andreas.faerber@web.de> |
boot_net: Disable TCP for all archs but ppc
Unbreaks the build until a better solution is found.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38485 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b7e825d6 |
| 31-Aug-2010 |
Andreas Färber <andreas.faerber@web.de> |
boot_net: Add TCP support
Modelled after UDP, add limited TCP support to the boot net stack. The socket works by queuing received packets as well as sent packets that have not yet been ACK'ed. Some
boot_net: Add TCP support
Modelled after UDP, add limited TCP support to the boot net stack. The socket works by queuing received packets as well as sent packets that have not yet been ACK'ed. Some known issues are documented, especially there's only limited congestion control. I.e., we send immediately and in unlimited quantity, thus its use should be restricted to local networks, and due to a fixed window size there is potential for our socket being overrun with data packets before they are read. Some corner cases like wrapping sequence numbers may cause a timeout.
The TCP implementation is based on Andrew S. Tanenbaum's "Computer Networks", 4th ed., as well as lecture notes from Prof. W. Effelsberg, the relevant RFCs and Wikipedia. The pseudo-random number Galois LFSR used for the sequence number was suggested by Endre Varga.
Since the code is unlikely to get much smaller, better merge it now so that subsequent changes get easier to review. No platform actively uses TCP sockets yet, and the receiving code has been reviewed for endianness issues and should terminate okay after verifying the checksum if no sockets are open. Based on a version tested with custom code (#5240) as well as with iSCSI. Compile-tested boot_loader_openfirmware, pxehaiku-loader with gcc4 and haiku_loader with gcc2. Closes ticket #5240.
Changes from #5240 proposed patch: * Various bug fixes related to queuing, some memory leaks fixed. * Never bump the sequence number when dequeuing a packet. It's done afterwards. * Don't bump the sequence number again when resending the queue or ACK'ing. * Aggressively ACK while waiting for packets. * Don't queue sent ACK-only packets. * More trace output, esp. for queue inspection. * Adapted use of TCP header flags to r38434.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38472 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
84cd8e69 |
| 13-Sep-2008 |
Michael Lotz <mmlr@mlotz.ch> |
CID 1251: If the NetStack::Init() fails, return the corresponding error instead of setting the global net stack to a deleted value.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27479 a95241b
CID 1251: If the NetStack::Init() fails, return the corresponding error instead of setting the global net stack to a deleted value.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27479 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
d561d0ad |
| 27-Dec-2005 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added a mini networking stack to the boot loader. It speaks basic ARP, IP, and UDP, as well as a home brewn UDP based protocol, "remote disk", which provides random access to a single remote file/dev
Added a mini networking stack to the boot loader. It speaks basic ARP, IP, and UDP, as well as a home brewn UDP based protocol, "remote disk", which provides random access to a single remote file/device. The Open Firmware flavored boot loader automatically initializes the net stack, searches for a remote disk, and tries to boot from it, if the boot device is a network device (e.g. when loading the boot loader via TFTP).
This is quite nice for developing with a two-machine setup, since one doesn't even need to install Haiku on the test machine anymore, but can serve it directly from the development machine. When the networking support in the kernel is working, this method could even be used to fully boot, not just for loading kernel and initial modules.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15689 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
95d4ed67 |
| 07-Nov-2015 |
Jonathan Schleifer <js@webkeks.org> |
Add missing "using std::nothrow"
|