116a2abbae
- Use perl5
59 lines
1.9 KiB
Plaintext
59 lines
1.9 KiB
Plaintext
*** lchat.pl.orig Fri May 29 21:05:46 1998
|
|
--- lchat.pl Mon Jun 8 14:34:37 1998
|
|
***************
|
|
*** 161,167 ****
|
|
# Similar to open_port, but does less. Used for PASV code with ftp.pl
|
|
# -Erez Zadok.
|
|
sub open_newport { ## public
|
|
! local($server, $port, $newsock) = @_;
|
|
|
|
local($serveraddr,$serverproc);
|
|
|
|
--- 161,167 ----
|
|
# Similar to open_port, but does less. Used for PASV code with ftp.pl
|
|
# -Erez Zadok.
|
|
sub open_newport { ## public
|
|
! local($server, $port, *newsock) = @_;
|
|
|
|
local($serveraddr,$serverproc);
|
|
|
|
***************
|
|
*** 180,197 ****
|
|
}
|
|
$serverproc = pack($sockaddr, 2, $port, $serveraddr);
|
|
|
|
! unless (connect($newsock, $serverproc)) {
|
|
! ($!) = ($!, close($newsock)); # close newsock while saving $!
|
|
return undef;
|
|
}
|
|
# We opened with the local address set to ANY, at this stage we know
|
|
# which interface we are using. This is critical if our machine is
|
|
# multi-homed, with IP forwarding off, so fix-up.
|
|
local($fam,$lport);
|
|
! ($fam,$lport,$thisaddr) = unpack($sockaddr, getsockname($newsock));
|
|
$thisproc = pack($sockaddr, 2, 0, $thisaddr);
|
|
# end of post-connect fixup
|
|
! select((select($newsock), $| = 1)[0]);
|
|
return 1;
|
|
}
|
|
##############################################################################
|
|
--- 180,197 ----
|
|
}
|
|
$serverproc = pack($sockaddr, 2, $port, $serveraddr);
|
|
|
|
! unless (connect(newsock, $serverproc)) {
|
|
! ($!) = ($!, close(newsock)); # close newsock while saving $!
|
|
return undef;
|
|
}
|
|
# We opened with the local address set to ANY, at this stage we know
|
|
# which interface we are using. This is critical if our machine is
|
|
# multi-homed, with IP forwarding off, so fix-up.
|
|
local($fam,$lport);
|
|
! ($fam,$lport,$thisaddr) = unpack($sockaddr, getsockname(newsock));
|
|
$thisproc = pack($sockaddr, 2, 0, $thisaddr);
|
|
# end of post-connect fixup
|
|
! select((select(newsock), $| = 1)[0]);
|
|
return 1;
|
|
}
|
|
##############################################################################
|