From 568521b0895ced1e159226cd4b81210dba475310 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Tom=C3=A1=C5=A1=20Brada?= Date: Thu, 10 Sep 2015 11:02:27 +0200 Subject: [PATCH] Enable DontFragment flag on output socket. --- ServerLoop.pas | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ServerLoop.pas b/ServerLoop.pas index 6b58fd0..d90fee7 100644 --- a/ServerLoop.pas +++ b/ServerLoop.pas @@ -72,6 +72,7 @@ procedure SC(fn:pointer; retval:cint); procedure s_SetupInet; var bind_addr:tInetSockAddr; + var turnon:cint; begin with bind_addr do begin family:=AF_INET; @@ -79,6 +80,8 @@ procedure s_SetupInet; addr:=0; {any} s_inet:=fpSocket(family,SOCK_DGRAM,IPPROTO_UDP); SC(@fpSocket,s_inet); + turnon:=IP_PMTUDISC_DO; + SC(@fpsetsockopt,fpsetsockopt(s_inet, IPPROTO_IP, IP_MTU_DISCOVER, @turnon, sizeof(turnon))); end; SC(@fpBind,fpBind(s_inet,@bind_addr,sizeof(bind_addr))); with PollArr[0] do begin @@ -93,7 +96,7 @@ var Terminated:boolean=false; procedure SendMessage(const data; len:word; const rcpt:tSockAddrL ); var rc:Integer; begin - SC(@fpsendto,fpsendto(s_inet,@data,len,0,@rcpt,sizeof(sockaddr_in))); + {SC(@fpsendto,}fpsendto(s_inet,@data,len,0,@rcpt,sizeof(sockaddr_in)){)}; end; procedure SendMessage(const data; len:word; const rcpt:tNetAddr ); var sa:tSockAddrL; -- 2.11.4.GIT