> > I found it. The code itself is broken. I missed the lack of parens.
> >
> > if (m->m_len < sizeof(struct arphdr) &&
> > (m = m_pullup(m, sizeof(struct arphdr)) == NULL)) {
> > log(LOG_ERR, "arp: runt packet -- m_pullup failed.");
> > continue;
> >
> >
> > Should be:
> >
> > if (m->m_len < sizeof(struct arphdr) &&
> > ((m = m_pullup(m, sizeof(struct arphdr))) == NULL)) {
> > log(LOG_ERR, "arp: runt packet -- m_pullup failed.");
> > continue;
>
> Umm, I see what you've done, but doesn't == have greater precedence than
> &&, so the code was fine as it was, wasn't it?
Never mind, I missed the paren. However, I would have written the fix
as follow so I wouldn't have missed the fix. :)
if (m->m_len < sizeof(struct arphdr) &&
(m = m_pullup(m, sizeof(struct arphdr))) == NULL) {
log(LOG_ERR, "arp: runt packet -- m_pullup failed.");
continue;
To each his own. :)
Nate
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message