diff -Naur ncp-1.2.4/ncp.c ncp-1.2.4.patched/ncp.c --- ncp-1.2.4/ncp.c 2005-05-13 13:17:53.000000000 -0400 +++ ncp-1.2.4.patched/ncp.c 2025-05-14 05:54:19.123650149 -0400 @@ -87,7 +87,7 @@ int v6tcpsock() { int s; - if ((s=socket_tcp6())!=-1) { + if ((s=socket_tcp6b())!=-1) { if (socket_bind6_reuse(s,(char *)V6any,8002,0)!=-1) if (socket_listen(s,1)!=-1) return s; @@ -98,7 +98,7 @@ int v4tcpsock() { int s; - if ((s=socket_tcp4())!=-1) { + if ((s=socket_tcp4b())!=-1) { if (socket_bind4_reuse(s,(char *)V6any,8002)!=-1) if (socket_listen(s,1)!=-1) return s; @@ -290,7 +290,7 @@ } for (;;) { - s = socket_tcp6(); + s = socket_tcp6b(); if (s==-1) diesys(111,"socket"); if (socket_bind6(s,(char *)V6any,0,0) == -1) @@ -392,7 +392,7 @@ char **newargv; carp("server mode. waiting for connection."); - s = socket_tcp6(); + s = socket_tcp6b(); if (s == -1) diesys(111,"socket"); if (socket_bind6_reuse(s,(char *)V6any,8002,0) == -1) @@ -430,11 +430,12 @@ diesys(111,"temporary unable to figure out IP address for ",*argv); if (out.len < 16) die(111,"no IP address for ",*argv); - s = socket_tcp6(); + s = socket_tcp6b(); if (s==-1) diesys(111,"socket"); if (socket_bind6(s,(char *)V6any,0,0) == -1) diesys(111,"bind"); + ndelay_off(s); if (socket_connect6(s,out.s,8002,0) == -1) diesys(111,"connection to ",*argv); ndelay_off(s);