RWS%mit-xx@sri-unix.UUCP (11/04/83)
From: Robert W. Scheifler <RWS@mit-xx> In udp_input(), the code if (udpcksum) { ui->ui_next = ui->ui_prev = 0; ui->ui_x1 = 0; ui->ui_len = htons((u_short)len); if (ui->ui_sum = in_cksum(m, len + sizeof (struct ip))) { udpstat.udps_badsum++; m_freem(m); return; } } should be changed to if (udpcksum && ui->ui_sum) { register u_short csum = ui->ui_sum; ui->ui_next = ui->ui_prev = 0; ui->ui_x1 = 0; ui->ui_len = htons((u_short)len); ui->ui_sum = 0; if (csum != in_cksum(m, len + sizeof (struct ip))) { udpstat.udps_badsum++; m_freem(m); return; } } -------