QoL improvements

This commit is contained in:
Alex
2023-03-27 20:11:32 +03:00
parent 3eb6923374
commit 93afcd2210
59 changed files with 612 additions and 424 deletions

View File

@ -4,6 +4,9 @@
#include "../kernel.h"
/* conversion from uint48_t {aka long unsigned int} to long unsigned int:48 may change value */
#pragma GCC diagnostic ignored "-Wconversion"
namespace NetworkARP
{
DiscoveredAddress *ARP::ManageDiscoveredAddresses(DAType Type, InternetProtocol IP, MediaAccessControl MAC)
@ -58,6 +61,10 @@ namespace NetworkARP
}
return nullptr;
}
default:
{
return nullptr;
}
}
return nullptr;
}

View File

@ -66,7 +66,7 @@ namespace NetworkDHCP
*(Ptr++) = DHCP_OPTION_HOST_NAME;
char *HostName = (char *)KERNEL_NAME;
*(Ptr++) = 1 + strlen(HostName);
*(Ptr++) = s_cst(uint8_t, 1 + strlen(HostName));
memcpy(Ptr, HostName, strlen(HostName));
Ptr += strlen(HostName);

View File

@ -3,6 +3,9 @@
#include "../kernel.h"
/* conversion from uint48_t {aka long unsigned int} to long unsigned int:48 may change value */
#pragma GCC diagnostic ignored "-Wconversion"
namespace NetworkEthernet
{
struct EthernetEventHelperStruct

View File

@ -27,8 +27,8 @@ namespace NetworkIPv4
Packet->Header.IHL = b8(sizeof(IPv4Header) / 4);
Packet->Header.TypeOfService = b8(0);
/* We don't byteswap. */
Packet->Header.TotalLength = Length + sizeof(IPv4Header);
Packet->Header.TotalLength = ((Packet->Header.TotalLength & 0xFF00) >> 8) | ((Packet->Header.TotalLength & 0x00FF) << 8);
Packet->Header.TotalLength = s_cst(uint16_t, Length + sizeof(IPv4Header));
Packet->Header.TotalLength = s_cst(uint16_t, ((Packet->Header.TotalLength & 0xFF00) >> 8) | ((Packet->Header.TotalLength & 0x00FF) << 8));
Packet->Header.Identification = b16(0x0000);
Packet->Header.Flags = b8(0x0);

View File

@ -49,8 +49,8 @@ namespace NetworkNTP
TaskManager->Sleep(1000);
}
int UnixTimestamp = b32(this->NTPPacket.TransmitTimestamp[0]) - 2208988800;
long UnixTimestamp = b32(this->NTPPacket.TransmitTimestamp[0]) - 2208988800;
debug("Unix time: %d", UnixTimestamp);
return UnixTimestamp;
return s_cst(int, UnixTimestamp);
}
}

View File

@ -60,7 +60,7 @@ namespace NetworkUDP
void UDP::Send(Socket *Socket, uint8_t *Data, uint64_t Length)
{
netdbg("Sending %d bytes to %s", Length, Socket->RemoteIP.v4.ToStringLittleEndian(), Socket->RemotePort);
uint16_t TotalLength = Length + sizeof(UDPHeader);
uint16_t TotalLength = s_cst(uint16_t, Length + sizeof(UDPHeader));
UDPPacket *packet = (UDPPacket *)kmalloc(TotalLength);
packet->Header.SourcePort = Socket->LocalPort;
packet->Header.DestinationPort = Socket->RemotePort;