Drop too large packets
This commit is contained in:
@@ -385,10 +385,11 @@ main(int argc, char **argv)
|
|||||||
if (FD_ISSET(tun_fd, &rfds)) {
|
if (FD_ISSET(tun_fd, &rfds)) {
|
||||||
size_t size = 0;
|
size_t size = 0;
|
||||||
|
|
||||||
while (sizeof(buf) - size > gt.mtu) {
|
while (sizeof(buf) - size >= gt.mtu) {
|
||||||
const ssize_t r = tun_read(tun_fd, &buf[size],
|
const ssize_t r = tun_read(tun_fd, &buf[size],
|
||||||
sizeof(buf) - size);
|
sizeof(buf) - size);
|
||||||
if (r <= 0)
|
|
||||||
|
if (r <= 0 || r > gt.mtu)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
struct ip_common ic;
|
struct ip_common ic;
|
||||||
|
|||||||
Reference in New Issue
Block a user