int mp_capability;
u_int8_t notify_data_remote_as[2];
u_int8_t notify_data_remote_id[4];
- u_int16_t *holdtime_ptr;
realpeer = NULL;
version = stream_getc (peer->ibuf);
memcpy (notify_data_remote_as, stream_pnt (peer->ibuf), 2);
remote_as = stream_getw (peer->ibuf);
- holdtime_ptr = (u_int16_t *)stream_pnt (peer->ibuf);
holdtime = stream_getw (peer->ibuf);
memcpy (notify_data_remote_id, stream_pnt (peer->ibuf), 4);
remote_id.s_addr = stream_get_ipv4 (peer->ibuf);
if (holdtime < 3 && holdtime != 0)
{
+ uint16_t netholdtime = htons (holdtime);
bgp_notify_send_with_data (peer,
BGP_NOTIFY_OPEN_ERR,
BGP_NOTIFY_OPEN_UNACEP_HOLDTIME,
- (u_int8_t *)holdtime_ptr, 2);
+ (u_int8_t *) &netholdtime, 2);
return -1;
}
end = pnt + length;
- while (pnt < end)
+ /* XXX: Streamify this */
+ for (; pnt < end; pnt += hdr->length + 3)
{
/* We need at least action, capability code and capability length. */
if (pnt + 3 > end)
zlog_warn ("%s unrecognized capability code: %d - ignored",
peer->host, hdr->code);
}
- pnt += hdr->length + 3;
}
return 0;
}
/* Read packet from fd. */
nbytes = stream_read_try (peer->ibuf, peer->fd, readsize);
- /* If read byte is smaller than zero then error occured. */
+ /* If read byte is smaller than zero then error occurred. */
if (nbytes < 0)
{
/* Transient error should retry */