Commit f372c071 authored by tepelmann's avatar tepelmann
Browse files

Also UDP checksum calculation.

parent 7c3712c4
Loading
Loading
Loading
Loading
+8 −2
Original line number Original line Diff line number Diff line
@@ -329,8 +329,8 @@ group rfc2460Root_Functions {
	 * @param 	p_ipv6Payload Payload used for computing checksum
	 * @param 	p_ipv6Payload Payload used for computing checksum
	 * @return 	execution status 
	 * @return 	execution status 
	*/
	*/
	function f_calcIpv6PayloadChecksum( in template Ipv6Address p_srcAddr,	
	function f_calcIpv6PayloadChecksum( in Ipv6Address p_srcAddr,	
										in template Ipv6Address p_dstAddr, 
										in Ipv6Address p_dstAddr, 
										inout Ipv6Payload p_ipv6Payload)
										inout Ipv6Payload p_ipv6Payload)
	return FncRetCode {
	return FncRetCode {
		
		
@@ -442,6 +442,12 @@ group rfc2460Root_Functions {
				p_ipv6Payload.ikeMsg.checksum := fx_calcPayloadChecksum (p_srcAddr, p_dstAddr, p_ipv6Payload, c_udpHdr);
				p_ipv6Payload.ikeMsg.checksum := fx_calcPayloadChecksum (p_srcAddr, p_dstAddr, p_ipv6Payload, c_udpHdr);
			}
			}
		}
		}
		else if(ischosen(p_ipv6Payload.udpMsg)) {
			if(p_ipv6Payload.udpMsg.checksum == c_2ZeroBytes) {
				//calc checksum
				p_ipv6Payload.udpMsg.checksum := fx_calcPayloadChecksum (p_srcAddr, p_dstAddr, p_ipv6Payload, c_udpHdr);
			}
		}
		
		
		return e_success;
		return e_success;