Newer
Older
parameterProblemMsg := {
icmpType := c_parameterProblemMsg,
icmpCode := p_icmpCode,
checksum := c_2ZeroBytes,
pointer := p_pointer,
data := p_data }
}
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
/*
* @param p_src Binary IPv6 address associated with the
* test component.
* @param p_dst Binary IPv6 address associated with NUT.
* @param p_icmpCode ICMPv6 type to be used
* @param p_data data in ICMPv6 Destination Unreachable message.
*/
template ParameterProblem m_parameterProblem_noExtHdr(
template Ipv6Address p_src,
template Ipv6Address p_dst,
UInt8 p_icmpCode,
octetstring p_data) := {
ipv6Hdr := m_ipHdr_nextHdr_srcDst(c_icmpHdr, p_src, p_dst),
extHdrList := omit,
ipv6Payload := {
parameterProblemMsg := {
icmpType := c_parameterProblemMsg,
icmpCode := p_icmpCode,
checksum := c_2ZeroBytes,
pointer := c_icmpPointer24, //arbitrary pointer value
data := p_data }
}
}
/*
* @param p_src Binary IPv6 address associated with the
* test component.
* @param p_dst Binary IPv6 address associated with NUT.
*/
extHdrList := *,
ipv6Payload := {
parameterProblemMsg := {
icmpType := c_parameterProblemMsg,
icmpCode := ?,
checksum := ?,
pointer := ?,
data := * }
}
/*
* @param p_src Binary IPv6 address associated with the
* test component.
* @param p_dst Binary IPv6 address associated with NUT.
*/
template ParameterProblem mw_parameterProblem_noExtHdr(
template Ipv6Address p_src,
template Ipv6Address p_dst) := {
ipv6Hdr := mw_ipHdr_nextHdr_srcDst(c_icmpHdr, p_src, p_dst),
extHdrList := omit,
ipv6Payload := {
parameterProblemMsg := {
icmpType := c_parameterProblemMsg,
icmpCode := ?,
checksum := ?,
pointer := ?,
data := * }
}
}
/*
* @param p_src Binary IPv6 address associated with the
* test component.
* @param p_dst Binary IPv6 address associated with NUT.
* @param p_icmpCode ICMPv6 code to be used
* @param p_pointer ICMPv6 pointer to be used
template ParameterProblem mw_parameterProblem_code_pointer(
extHdrList := *,
ipv6Payload := {
parameterProblemMsg := {
icmpType := c_parameterProblemMsg,
icmpCode := p_icmpCode,
checksum := ?,
pointer := p_pointer,
data := * }
}
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
/*
* @param p_src Binary IPv6 address associated with the
* test component.
* @param p_dst Binary IPv6 address associated with NUT.
* @param p_icmpCode ICMPv6 code to be used
* @param p_pointer ICMPv6 pointer to be used
*/
template ParameterProblem mw_parameterProblem_code(
template Ipv6Address p_src,
template Ipv6Address p_dst,
UInt8 p_icmpCode) := {
ipv6Hdr := mw_ipHdr_nextHdr_srcDst(c_icmpHdr, p_src, p_dst),
extHdrList := omit,
ipv6Payload := {
parameterProblemMsg := {
icmpType := c_parameterProblemMsg,
icmpCode := p_icmpCode,
checksum := ?,
pointer := ?,
data := * }
}
}
/*
* @param p_nextHeader
* @param p_src Binary IPv6 address associated with the
* test component.
* @param p_dst Binary IPv6 address associated with NUT.
* @param p_icmpCode ICMPv6 code to be used
* @param p_extHdrList
* @param p_pointer ICMPv6 pointer to be used
*/
template ParameterProblem mw_parameterProblem_code_pointer_extHdr(
UInt8 p_nextHeader,
template Ipv6Address p_src,
template Ipv6Address p_dst,
template ExtensionHeaderList p_extHdrList,
UInt8 p_icmpCode,
ipv6Hdr := mw_ipHdr_nextHdr_srcDst(p_nextHeader, p_src, p_dst),
extHdrList := p_extHdrList,
ipv6Payload := {
parameterProblemMsg := {
icmpType := c_parameterProblemMsg,
icmpCode := p_icmpCode,
checksum := ?,
pointer := p_pointer,
data := * }
}
} // end group ICMPv6_Parameter_Problem
group ICMPv6_Time_Exceeded {
/*
* @param p_src Binary IPv6 address associated with the
* test component.
* @param p_dst Binary IPv6 address associated with NUT.
* @param p_hopLimit Number of hops to be used in IPv6 header.
* @param p_icmpCode ICMPv6 type to be used
*/
template TimeExceeded m_timeExceeded_noExtHdr_hop(
octetstring p_data) := {
ipv6Hdr :=
m_ipHdr_nextHdr_hop_srcDst(c_icmpHdr, p_hopLimit, p_src, p_dst),
extHdrList := omit,
ipv6Payload := {
timeExceededMsg := {
icmpType := c_timeExceededMsg,
icmpCode := p_icmpCode,
checksum := c_2ZeroBytes,
unused := 0,
data := p_data }
}
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
/*
* @param p_src Binary IPv6 address associated with the
* test component.
* @param p_dst Binary IPv6 address associated with NUT.
* @param p_data data in ICMPv6 Destination Unreachable message.
*/
template TimeExceeded m_timeExceeded_noExtHdr(
template Ipv6Address p_src,
template Ipv6Address p_dst,
octetstring p_data) := {
ipv6Hdr := m_ipHdr_nextHdr_srcDst(c_icmpHdr, p_src, p_dst),
extHdrList := omit,
ipv6Payload := {
timeExceededMsg := {
icmpType := c_timeExceededMsg,
icmpCode := c_icmpCode0,
checksum := c_2ZeroBytes,
unused := 0,
data := p_data }
}
}
/*
* @param p_src Binary IPv6 address associated with the
* test component.
* @param p_dst Binary IPv6 address associated with NUT.
* @param p_icmpCode ICMPv6 code to be used
*/
template TimeExceeded mw_timeExceeded_noExtHdr(
template Ipv6Address p_src,
template Ipv6Address p_dst,
template UInt8 p_icmpCode) := {
extHdrList := omit,
ipv6Payload := {
timeExceededMsg := {
icmpType := c_timeExceededMsg,
icmpCode := p_icmpCode,
checksum := ?,
unused := ?,
data := * }
}
}
} // end group ICMPv6_Time_Exceeded
} // end module LibIpv6_Rfc2463Icmpv6_Templates