diff --git a/src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp b/src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp index 94e54f6c06..db0dd53f20 100644 --- a/src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp +++ b/src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp @@ -1546,8 +1546,9 @@ ipv4_send_routed_data(net_protocol* _protocol, struct net_route* route, header->source = source.sin_addr.s_addr; header->checksum = 0; header.Sync(); - } else + } else if (header->checksum != 0) { checksumNeeded = false; + } TRACE(" Header was already supplied:"); TRACE_ONLY(dump_ipv4_header(*header));