From ae0ed413485c20b8bbb4fbdea01ec8a1b0b18e1e Mon Sep 17 00:00:00 2001 From: "Ilya.Kazakevich" Date: Wed, 1 May 2024 15:36:23 +0200 Subject: [PATCH] [wslproxy]: survive closed socket, close socket correctly. 1.When remote side socket is closed, `SIGPIPE` might be sent. We must ignore and exit correctly (we can't die as we might accept more connections) 2. shutdown and close sockets will inform remote side that socket is closed. Without it, remote side may not notice anything until the next write. GitOrigin-RevId: 51a6204651e49f63ac8b52d9e3e1e4928007c3ff --- bin/win/aarch64/wslproxy | Bin 42568 -> 38504 bytes bin/win/amd64/wslproxy | Bin 38552 -> 38504 bytes native/WslTools/wslproxy.c | 14 +++++++++++++- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/bin/win/aarch64/wslproxy b/bin/win/aarch64/wslproxy index 43093c1dfe2ec4d388a197e2063afb8f1c8a4707..0a20deef64f98ab2c5fb623a4a4719bf7ab15035 100644 GIT binary patch literal 38504 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 R?a}@>4$s7MtX?ep{{UyUULv*y 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 diff --git a/bin/win/amd64/wslproxy b/bin/win/amd64/wslproxy index 31282430c7c818428bbd0096e194989af9f09480..9985ed7fbb1c644f5ba122f6892d0af6c49a1454 100644 GIT binary patch literal 38504 zcmeIbeSB2awKsldGLuX~$Qd9=)F4A0G%13Kg_02>Imrah=mdfRp`w*IBti`&O=d_? zFo`F@9F9|MuWfzW-dpY4<88fH+uLHK3P}c%fQlhh4N@f_!Wj-PQ7{Q_InQ_PGm`{s zZ~OWE?jO(d`4CO^IeV}Dw)WaP-!SmIs95-yrX;iw+# zug)mv>T-;SNZOZVyhhW}^k9!@xBRT*JUM3|zy&H4I$Cz%>k9!@&P6 z1`1b%u4+(}PNm43oQdi;<2X*e1Aj7G)F&R|IE6A3@8vk*K4F=#beVi*CmofGMETqf zI=rHyUH#=P9H+k{2FskbC#H$Y<2Erkdu9b1dQafE#+JaiodB&>e|9s+$)WJ~sG59M zy$-L9E&e1in4L(#H>Gi$R_0Y!J8j@mpl%Abghhy1g=%A+X-ji>#$lnT;j&K$Uj z`tZvAYQShe$t#}_lm{*9Z@-2nGDYP^tpi!=Pw^@$*&XOn3{HH#oMwfg{Rt210*qOD zS69utu5YI!I|`D%&v7(VPM#ctM|IvJ+bItV>&D_e=cNupn9mb86S6+^1ZT~3%V)*(lj<+2tg)pg zK{V|aU0UrCZ8xJvs<#qkMQJKv0M7E&1uXNd8b=lDcTqQ^7DHH?*)7PIchYh$6Xh>h zog$F7L(M=%An)xmqScyAG3a&Lgl3`_xkC+Ij!LRH z&7iZNT-No>7WwdYJD^GdZZ~6kZs&NnyxN)U4X$?Dz4CF&Nl_g)vQ9U#P6KbqhmA=T zJ6Lv&k^O6aIhqrLOPz_Rhz1j>Wqur5R+A0L5(ddP65{#SHaW+uFHA+}az3{0E{EJh z)EE+$dgSw%^%a_Mju?EvX%pqcs!hPmXh!ssju()tS3V-jCq?;VwF5MWSvs)zYZcnn zavNybhW@}eG@t;LUb>`%vUlYey(|~*!>+z^1thS{BVPe4q5e_?WiyxAo!PHmxgI=5 z-UTFkXbee8b{(jS`ug?|+L1qIo6XpryVYOZjh;{qY-ATI%Av-VjZ=W~7aj$+-_q4? zESpB0KXlW5;>xriUsiY8Vn7Q6O|s5CfVU=3S;%3vFu z4r(13k3;=(mgjaB;yFamjopFkMCCbW3LAoTUKz_1d3P5^lJ$!mFp$<9N@TkzkK1Y% z^|po|2|zXZ9Nu!RZTD?>%<9Tzaxju07i z#rjJxA*r(I6GSOw)6T98k<9YQmqFg|6%~rUb}$rgu&m9dhA>6>u$QR$jG+GojQzqO zNOLJ*7<_P38&+gDk*KKLA<9dgHZ`6IA!vPxs)8I&hzfE+;VIZgdT*!*!+4d3;hMY| zD5^>jCC!%EqEFCHgV%(+S1{(?fXQ=Q_)Va!bS6K=czu@1R<3XdXcPJT zv!bM%_$^zJ)l69i|2MUWF10FFlm__?pNqj2x;HqD2Wm*{<<3Jz#X7i^l8IqTc@&hDWCm&!{Ip;>h6e+-rWi)FU)4L?Lz-r#@eJQ#ERr(B<|du5gI zm9C1dCu2lc8~@}YRLs;Nr-WwUM1LLop4(3A@0HJ}_K9pXz_{w80ZEs1zTp+>3K$a& z<|8~9GUQBiBF)Sy%B|wS!TKZAt7z&3ec#MRZ*>~UG?s+L^!;M+Ii5kGM*UG5o;a{y zbnWG(g&2vb%zjelxYs$Z4tsK*S#<3a`MiB%eVFCAE>y*fu0Hnyd8=B+5Yf>Uh#RtP~gKit?OLPJaiFYB^i0ukf!eACfAc+4+G_!((mOe%*!Jt8WLx8Z3dVIWnJrEpajb%0Acr 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 diff --git a/native/WslTools/wslproxy.c b/native/WslTools/wslproxy.c index ed493a81b571..242717c0c928 100644 --- a/native/WslTools/wslproxy.c +++ b/native/WslTools/wslproxy.c @@ -8,6 +8,7 @@ #include #include #include +#include // See svg file and wslproxy_test_client.py @@ -129,13 +130,20 @@ static void *jb_connect_pair(jb_sockpair *sockpair) { while (sent < bytes) { if ((write_result = write(dest, buf + sent, bytes - sent)) < 0) { if (errno != EINTR || errno != EAGAIN) { - break; //socket closed + goto end; //socket closed } } sent += write_result; } } + end: + + shutdown(source, SHUT_WR); close(source); + + shutdown(dest, SHUT_WR); + close(dest); + return NULL; } @@ -189,6 +197,10 @@ _Noreturn static void *jb_listen_ingress(const int *p_ingress_srv_sock_fd) { static int g_ingress_srv_sock_fd; int main(int argc, char **argv) { + // We expect write failures to occur but we want to handle them where + // the error occurs rather than in a SIGPIPE handler. + signal(SIGPIPE, SIG_IGN); + // '--loopback' means use 127.0.0.1 as egress IP g_egress_ip = (argc > 1 && strcmp(&argv[1][0], "--loopback") == 0) ? htonl(INADDR_LOOPBACK) : jb_get_wsl_public_ip();