mirror of
https://github.com/shadowsocks/shadowsocks-libev.git
synced 2026-11-01 07:30:02 +00:00
Decrease the visibility of fragmentation. #1524
This commit is contained in:
+18
-12
@@ -697,8 +697,9 @@ remote_recv_cb(EV_P_ ev_io *w, int revents)
|
||||
ERROR("[udp] remote_recv_recvfrom");
|
||||
goto CLEAN_UP;
|
||||
} else if (r > packet_size) {
|
||||
LOGE("[udp] remote_recv_recvfrom fragmentation");
|
||||
goto CLEAN_UP;
|
||||
if (verbose) {
|
||||
LOGI("[udp] remote_recv_recvfrom fragmentation");
|
||||
}
|
||||
}
|
||||
|
||||
buf->len = r;
|
||||
@@ -777,8 +778,9 @@ remote_recv_cb(EV_P_ ev_io *w, int revents)
|
||||
#endif
|
||||
|
||||
if (buf->len > packet_size) {
|
||||
LOGE("[udp] remote_recv_sendto fragmentation");
|
||||
goto CLEAN_UP;
|
||||
if (verbose) {
|
||||
LOGI("[udp] remote_recv_sendto fragmentation");
|
||||
}
|
||||
}
|
||||
|
||||
size_t remote_src_addr_len = get_sockaddr_len((struct sockaddr *)&remote_ctx->src_addr);
|
||||
@@ -880,8 +882,9 @@ server_recv_cb(EV_P_ ev_io *w, int revents)
|
||||
ERROR("[udp] server_recvmsg");
|
||||
goto CLEAN_UP;
|
||||
} else if (buf->len > packet_size) {
|
||||
ERROR("[udp] UDP server_recv_recvmsg fragmentation");
|
||||
goto CLEAN_UP;
|
||||
if (verbose) {
|
||||
LOGI("[udp] UDP server_recv_recvmsg fragmentation");
|
||||
}
|
||||
}
|
||||
|
||||
if (get_dstaddr(&msg, &dst_addr)) {
|
||||
@@ -901,8 +904,9 @@ server_recv_cb(EV_P_ ev_io *w, int revents)
|
||||
ERROR("[udp] server_recv_recvfrom");
|
||||
goto CLEAN_UP;
|
||||
} else if (r > packet_size) {
|
||||
ERROR("[udp] server_recv_recvfrom fragmentation");
|
||||
goto CLEAN_UP;
|
||||
if (verbose) {
|
||||
LOGI("[udp] server_recv_recvfrom fragmentation");
|
||||
}
|
||||
}
|
||||
|
||||
buf->len = r;
|
||||
@@ -1188,8 +1192,9 @@ server_recv_cb(EV_P_ ev_io *w, int revents)
|
||||
}
|
||||
|
||||
if (buf->len > packet_size) {
|
||||
LOGE("[udp] server_recv_sendto fragmentation");
|
||||
goto CLEAN_UP;
|
||||
if (verbose) {
|
||||
LOGI("[udp] server_recv_sendto fragmentation");
|
||||
}
|
||||
}
|
||||
|
||||
int s = sendto(remote_ctx->fd, buf->data, buf->len, 0, remote_addr, remote_addr_len);
|
||||
@@ -1204,8 +1209,9 @@ server_recv_cb(EV_P_ ev_io *w, int revents)
|
||||
int need_query = 0;
|
||||
|
||||
if (buf->len - addr_header_len > packet_size) {
|
||||
LOGE("[udp] server_recv_sendto fragmentation");
|
||||
goto CLEAN_UP;
|
||||
if (verbose) {
|
||||
LOGE("[udp] server_recv_sendto fragmentation");
|
||||
}
|
||||
}
|
||||
|
||||
if (remote_ctx != NULL) {
|
||||
|
||||
Reference in New Issue
Block a user