From f8e15da04472f5ed6a26e588de4a23cb3e1ba20b Mon Sep 17 00:00:00 2001 From: Anton Kling <anton@kling.gg> Date: Thu, 26 Oct 2023 22:35:58 +0200 Subject: Kernel: Fixup rtl8139, add basic ARP and ethernet support Currently the ARP appears to be able to respond to requests. --- network/bytes.c | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 network/bytes.c (limited to 'network/bytes.c') diff --git a/network/bytes.c b/network/bytes.c new file mode 100644 index 0000000..94afa73 --- /dev/null +++ b/network/bytes.c @@ -0,0 +1,10 @@ +#include <network/bytes.h> + +uint16_t ntohs(uint16_t net) { return (net >> 8) | (net << 8); } + +uint16_t htons(uint16_t net) { return (net >> 8) | (net << 8); } + +uint32_t htonl(uint32_t net) { + return (((net & 0x000000FF) << 24) | ((net & 0x0000FF00) << 8) | + ((net & 0x00FF0000) >> 8) | ((net & 0xFF000000) >> 24)); +} -- cgit v1.2.3