diff options
Diffstat (limited to 'src/net/ipv4.c')
-rw-r--r-- | src/net/ipv4.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/net/ipv4.c b/src/net/ipv4.c index 7959cf3..8eb04a6 100644 --- a/src/net/ipv4.c +++ b/src/net/ipv4.c @@ -358,8 +358,11 @@ static int ipv4_tx ( struct io_buffer *iobuf, ( ( netdev->rx_stats.good & 0xf ) << 0 ) ); /* Fix up checksums */ - if ( trans_csum ) + if ( trans_csum ) { *trans_csum = ipv4_pshdr_chksum ( iobuf, *trans_csum ); + if ( ! *trans_csum ) + *trans_csum = tcpip_protocol->zero_csum; + } iphdr->chksum = tcpip_chksum ( iphdr, sizeof ( *iphdr ) ); /* Print IP4 header for debugging */ |