Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 774253da authored by Ashwanth Goli's avatar Ashwanth Goli Committed by Tejaswi Tanikella
Browse files

net: rmnet_data: validate csum in SW



Do SW checksum validation if rmnet_data checksum
validation fails.

Change-Id: Ifff229dc1e7eb592d58fc66ea278debb292b89aa
Signed-off-by: default avatarAshwanth Goli <ashwanth@codeaurora.org>
Signed-off-by: default avatarTejaswi Tanikella <tejaswit@codeaurora.org>
parent b997f3dc
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -408,10 +408,12 @@ static rx_handler_result_t _rmnet_map_ingress_handler(struct sk_buff *skb,
		if (likely((ckresult == RMNET_MAP_CHECKSUM_OK)
			    || (ckresult == RMNET_MAP_CHECKSUM_SKIPPED)))
			skb->ip_summed |= CHECKSUM_UNNECESSARY;
		else if (ckresult != RMNET_MAP_CHECKSUM_ERR_UNKNOWN_IP_VERSION
			&& ckresult != RMNET_MAP_CHECKSUM_ERR_UNKNOWN_TRANSPORT
			&& ckresult != RMNET_MAP_CHECKSUM_VALID_FLAG_NOT_SET
			&& ckresult != RMNET_MAP_CHECKSUM_FRAGMENTED_PACKET) {
		else if (ckresult !=
				RMNET_MAP_CHECKSUM_ERR_UNKNOWN_IP_VERSION &&
			ckresult != RMNET_MAP_CHECKSUM_ERR_UNKNOWN_TRANSPORT &&
			ckresult != RMNET_MAP_CHECKSUM_VALID_FLAG_NOT_SET &&
			ckresult != RMNET_MAP_CHECKSUM_VALIDATION_FAILED &&
			ckresult != RMNET_MAP_CHECKSUM_FRAGMENTED_PACKET) {
			rmnet_kfree_skb(skb,
				RMNET_STATS_SKBFREE_INGRESS_BAD_MAP_CKSUM);
			return RX_HANDLER_CONSUMED;