When skipping the address parameter, take the padding into account.
MFC after: 3 days
This commit is contained in:
parent
94a5245c4c
commit
aac50dab6d
@ -699,8 +699,8 @@ sctp_handle_asconf(struct mbuf *m, unsigned int offset,
|
|||||||
sctp_m_freem(m_ack);
|
sctp_m_freem(m_ack);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
/* param_length is already validated in process_control... */
|
/* skip lookup addr */
|
||||||
offset += ntohs(p_addr->ph.param_length); /* skip lookup addr */
|
offset += SCTP_SIZE32(ntohs(p_addr->ph.param_length));
|
||||||
/* get pointer to first asconf param in ASCONF */
|
/* get pointer to first asconf param in ASCONF */
|
||||||
aph = (struct sctp_asconf_paramhdr *)sctp_m_getptr(m, offset, sizeof(struct sctp_asconf_paramhdr), (uint8_t *)&aparam_buf);
|
aph = (struct sctp_asconf_paramhdr *)sctp_m_getptr(m, offset, sizeof(struct sctp_asconf_paramhdr), (uint8_t *)&aparam_buf);
|
||||||
if (aph == NULL) {
|
if (aph == NULL) {
|
||||||
|
Loading…
Reference in New Issue
Block a user