pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/net/mirror
Module Name: pkgsrc
Committed By: bouyer
Date: Thu Apr 11 10:23:44 UTC 2024
Modified Files:
pkgsrc/net/mirror: Makefile distinfo
pkgsrc/net/mirror/patches: patch-ac patch-ad patch-ae patch-ag
Added Files:
pkgsrc/net/mirror/patches: patch-lsparse.pl
Log Message:
Fix warning:
Old package separator "'" deprecated at ...
Bump PKGREVISION
To generate a diff of this commit:
cvs rdiff -u -r1.46 -r1.47 pkgsrc/net/mirror/Makefile
cvs rdiff -u -r1.9 -r1.10 pkgsrc/net/mirror/distinfo
cvs rdiff -u -r1.5 -r1.6 pkgsrc/net/mirror/patches/patch-ac \
pkgsrc/net/mirror/patches/patch-ad
cvs rdiff -u -r1.7 -r1.8 pkgsrc/net/mirror/patches/patch-ae
cvs rdiff -u -r1.2 -r1.3 pkgsrc/net/mirror/patches/patch-ag
cvs rdiff -u -r0 -r1.1 pkgsrc/net/mirror/patches/patch-lsparse.pl
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/net/mirror/Makefile
diff -u pkgsrc/net/mirror/Makefile:1.46 pkgsrc/net/mirror/Makefile:1.47
--- pkgsrc/net/mirror/Makefile:1.46 Tue Jun 28 11:35:02 2022
+++ pkgsrc/net/mirror/Makefile Thu Apr 11 10:23:44 2024
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.46 2022/06/28 11:35:02 wiz Exp $
+# $NetBSD: Makefile,v 1.47 2024/04/11 10:23:44 bouyer Exp $
DISTNAME= mirror-2.9
-PKGREVISION= 13
+PKGREVISION= 14
CATEGORIES= net
MASTER_SITES= # ftp://src.doc.ic.ac.uk/computing/archiving/mirror/
Index: pkgsrc/net/mirror/distinfo
diff -u pkgsrc/net/mirror/distinfo:1.9 pkgsrc/net/mirror/distinfo:1.10
--- pkgsrc/net/mirror/distinfo:1.9 Tue Oct 26 11:06:00 2021
+++ pkgsrc/net/mirror/distinfo Thu Apr 11 10:23:44 2024
@@ -1,12 +1,13 @@
-$NetBSD: distinfo,v 1.9 2021/10/26 11:06:00 nia Exp $
+$NetBSD: distinfo,v 1.10 2024/04/11 10:23:44 bouyer Exp $
BLAKE2s (mirror-2.9.tar.gz) = 9af6c135528b0a26418a229f6f943f70913a07fef1fffa2954685fa2d17e4bb6
SHA512 (mirror-2.9.tar.gz) = afed2e62b95d1dd52aac32f3a608c0e08813c78d1bed8f5066bc4d6ac031c05ffeb7c7594a1c565dbf015086d7b3a907f35132ea850a3b93c31377e69dfa0654
Size (mirror-2.9.tar.gz) = 123194 bytes
SHA1 (patch-aa) = 04ba59e036a946eeff5c1a8cea08465c21a92dd8
SHA1 (patch-ab) = 09045d218a86890f95e381f355fa61c3dfc34ef0
-SHA1 (patch-ac) = 816da27263d8883bc073f425d95b593c0a6f5ad2
-SHA1 (patch-ad) = 24b9dd4124756d2c058309e306da0ca022719ac6
-SHA1 (patch-ae) = 2efb5c4cc8f25b897d163e28a908b9745a553229
+SHA1 (patch-ac) = 4f018248392769e4da9e87ec16c509b3ac87d0e0
+SHA1 (patch-ad) = 9cbc9ce613cc0588d22186d542012fb911ab166f
+SHA1 (patch-ae) = eb06da3874cdfc13cc1aeb605ec3f936fb68ecf4
SHA1 (patch-af) = d83755dca89242a6822e5531a481b1735089242a
-SHA1 (patch-ag) = 31574a37bb09587ee7496a98c985865127a2fb0e
+SHA1 (patch-ag) = f402c883c3fe8967f7dc6b847969915ae367f678
+SHA1 (patch-lsparse.pl) = 9048fc10b06616c87fa7eafd64eb098e30ac3b7e
Index: pkgsrc/net/mirror/patches/patch-ac
diff -u pkgsrc/net/mirror/patches/patch-ac:1.5 pkgsrc/net/mirror/patches/patch-ac:1.6
--- pkgsrc/net/mirror/patches/patch-ac:1.5 Mon Sep 12 16:35:43 2011
+++ pkgsrc/net/mirror/patches/patch-ac Thu Apr 11 10:23:44 2024
@@ -1,14 +1,33 @@
-$NetBSD: patch-ac,v 1.5 2011/09/12 16:35:43 taca Exp $
+$NetBSD: patch-ac,v 1.6 2024/04/11 10:23:44 bouyer Exp $
* Fix path for pkgsrc.
* Use md5(1) instead of sum(1).
* Add -f option to compress program.
* Fix deleting remote directories.
* Fix display of transfer direction.
+* Fix deprecation warning (change ' to ::) for newer perl
---- mirror.pl.orig 1998-06-08 10:55:27.000000000 +0000
-+++ mirror.pl
-@@ -104,7 +104,7 @@ $load_defaults = 1;
+--- mirror.pl.orig 2024-04-11 11:08:05.973997402 +0200
++++ mirror.pl 2024-04-11 11:07:48.794686287 +0200
+@@ -38,7 +38,7 @@
+ # Allow for remote_account pasword.
+ # Only one arg to undef, for early perl5's
+ # Use all capitals for file descriptors.
+-# Use ftp'close not ftp'quit
++# Use ftp::close not ftp::quit
+ # Avoid file renaming under MACos
+ # Corrected file deleting.
+ #
+@@ -51,7 +51,7 @@
+ # Allow strip_cr (from Andrew).
+ # More symlink handling...
+ # Set type for vms correctly.
+-# Changed response from ftp'delete, also corrected path used.
++# Changed response from ftp::delete, also corrected path used.
+ #
+ # Revision 2.4 1994/04/29 20:11:09 lmjm
+ # Use correct variable for hostname
+@@ -104,7 +104,7 @@
# Try to find the default location of various programs via
# the users PATH then using $extra_path
if( ! $on_win ){
@@ -17,7 +36,7 @@ $NetBSD: patch-ac,v 1.5 2011/09/12 16:35
}
if( $extra_path ne '' ){
$ENV{ 'PATH' } .= $path_sep . $extra_path;
-@@ -159,19 +159,20 @@ if( ! $mail_prog ){
+@@ -159,19 +159,20 @@
$rm_prog = &find_prog( 'rm' );
# Generate checksums
@@ -42,7 +61,25 @@ $NetBSD: patch-ac,v 1.5 2011/09/12 16:35
unshift( @INC, $dir );
# Debian GNU/Linux stores mirror.defaults in /etc/mirror
-@@ -1022,7 +1023,7 @@ sub do_mirror
+@@ -259,7 +260,7 @@
+ $default{ 'remote_gpass' } = '';
+ $default{ 'timeout' } = 120; # timeout ftp requests after this many seconds
+ $default{ 'failed_gets_excl' } = ''; # failed messages to ignore while getting,
+- # if failed to ftp'get
++ # if failed to ftp::get
+ $default{ 'ftp_port' } = 21; # port number of remote ftp daemon
+ $default{ 'proxy' } = 0; # normally use regular ftp
+ $default{ 'proxy_ftp_port' } = 4514; # default from Sun
+@@ -656,7 +657,7 @@
+ # THIS DOES NOT YET WORK!!!!!
+ $dumped_version = 1;
+ warn "Dumping perl\n";
+- dump parse_args;
++ CORE::dump parse_args;
+ }
+
+ warn "Unknown arg $arg, skipping\n";
+@@ -1022,7 +1023,7 @@
&pr_variables( "\n" );
}
elsif( $package && ! $pretty_print ){
@@ -51,7 +88,177 @@ $NetBSD: patch-ac,v 1.5 2011/09/12 16:35
&msg( "package=$package $site:$remote_dir -> $local_dir\n");
}
else {
-@@ -1807,7 +1808,7 @@ sub get_remote_directory_details
+@@ -1053,10 +1054,10 @@
+
+ if( $debug ){
+ # Keep the ftp debugging lower than the rest.
+- &ftp'debug( $debug - 1);
++ &ftp::debug( $debug - 1);
+ }
+ else {
+- &ftp'debug( $verbose );
++ &ftp::debug( $verbose );
+ }
+
+ if( $recurse_hard ){
+@@ -1069,19 +1070,19 @@
+ }
+
+ if( ! $interactive ){
+- $ftp'showfd = 'STDOUT';
++ $ftp::showfd = 'STDOUT';
+ }
+- &ftp'set_timeout( $timeout );
+- &ftp'set_signals( "main'msg" );
++ &ftp::set_timeout( $timeout );
++ &ftp::set_signals( "main'msg" );
+
+ # set passive ftp mode
+ if( $passive_ftp ){
+- $ftp'use_pasv = 1;
++ $ftp::use_pasv = 1;
+ }
+
+ # Are we using the SOCKS version of perl?
+ if( $using_socks ){
+- $chat'using_socks = 1;
++ $chat::using_socks = 1;
+ }
+
+ # Useful string in prints
+@@ -1216,13 +1217,13 @@
+ if( $con == 1 ){
+ &msg( "login as $remote_user\n" ) if $debug > 1;
+ $curr_remote_user = $remote_user;
+- if( ! &ftp'login( $remote_user, $remote_password, $remote_account ) ){
++ if( ! &ftp::login( $remote_user, $remote_password, $remote_account ) ){
+ &msg( "Cannot login, skipping package\n" );
+ &disconnect();
+ &msg( "\n" );
+ return $exit_status;
+ }
+- $can_restart = (&ftp'restart(0) == 1);
++ $can_restart = (&ftp::restart(0) == 1);
+ if( $debug > 1 ){
+ &msg( "Can " . ($can_restart ? '' : "not ") . "do restarts\n" );
+
+@@ -1233,7 +1234,7 @@
+ &msg( "Already connected to site $site\n" ) if $debug;
+ }
+
+- if( ! &ftp'type( $text_mode ? 'A' : 'I' ) ){
++ if( ! &ftp::type( $text_mode ? 'A' : 'I' ) ){
+ &msg( "Cannot set type\n" );
+ }
+
+@@ -1244,16 +1245,16 @@
+ # setting the namemap functions.
+ if( $remote_fs =~ /vms/i ){
+ $vms = 1;
+- &ftp'set_namemap( "main'unix2vms", "main'vms2unix" );
++ &ftp::set_namemap( "main'unix2vms", "main'vms2unix" );
+ }
+ else {
+ $vms = 0;
+ # No mapping necessary
+- &ftp'set_namemap( '' );
++ &ftp::set_namemap( '' );
+ }
+
+ if( ! $get_file || $remote_idle ){
+- local( @rhelp ) = &ftp'site_commands();
++ local( @rhelp ) = &ftp::site_commands();
+ $remote_has_chmod = grep( $_ eq 'CHMOD', @rhelp);
+ $remote_has_rename = grep( $_ eq 'RNFR', @rhelp) && grep( $_ eq 'RNTO', @rhelp);
+ $remote_has_idle = grep( $_ eq 'IDLE', @rhelp);
+@@ -1264,7 +1265,7 @@
+ }
+
+ if( $remote_has_idle && $remote_idle ){
+- if( ! &ftp'quote( "site idle $remote_idle" ) ){
++ if( ! &ftp::quote( "site idle $remote_idle" ) ){
+ &msg( "Cannot set remote idle\n" );
+ }
+ elsif( $debug > 2 ){
+@@ -1273,7 +1274,7 @@
+ }
+
+ if( $remote_group ){
+- if( ! &ftp'quote( "site group $remote_group" ) ){
++ if( ! &ftp::quote( "site group $remote_group" ) ){
+ &msg( "Cannot set remote group\n" );
+ }
+ elsif( $debug > 2 ){
+@@ -1282,7 +1283,7 @@
+ }
+
+ if( $remote_gpass ){
+- if( ! &ftp'quote( "site gpass $remote_gpass" ) ){
++ if( ! &ftp::quote( "site gpass $remote_gpass" ) ){
+ &msg( "Cannot set remote gpass\n" );
+ }
+ elsif( $debug > 2 ){
+@@ -1496,11 +1497,11 @@
+ {
+ if( $connected ){
+ &msg( "disconnecting from $connected\n" ) if $debug;
+- if( ! $ftp'fatalerror ){
+- &ftp'close();
++ if( ! $ftp::fatalerror ){
++ &ftp::close();
+ }
+ else {
+- &ftp'service_closed();
++ &ftp::service_closed();
+ }
+ }
+ $connected = '';
+@@ -1524,11 +1525,11 @@
+ &disconnect();
+
+ if( $proxy ){
+- $ftp'proxy = $proxy;
+- $ftp'proxy_gateway = $proxy_gateway;
+- $ftp'proxy_ftp_port = $proxy_ftp_port;
++ $ftp::proxy = $proxy;
++ $ftp::proxy_gateway = $proxy_gateway;
++ $ftp::proxy_ftp_port = $proxy_ftp_port;
+ }
+- $res = &ftp'open( $site, $ftp_port, $retry_call, $attempts );
++ $res = &ftp::open( $site, $ftp_port, $retry_call, $attempts );
+ if( $res == 1 ){
+ # Connected
+ $connected = $site;
+@@ -1544,7 +1545,7 @@
+ if( $debug > 2 ){
+ &msg( " prodding remote ftpd\n" );
+ }
+- &ftp'pwd();
++ &ftp::pwd();
+ }
+
+ # checkout and fixup any regexps.
+@@ -1774,7 +1775,7 @@
+ $remote_type[ 0 ] = 0;
+ $remote_mode[ 0 ] = 0;
+
+- if( $remote_fs !~ /cms/ && ! &ftp'cwd( $remote_dir ) ){
++ if( $remote_fs !~ /cms/ && ! &ftp::cwd( $remote_dir ) ){
+ if( $get_file ){
+ # no files to get
+ return 0;
+@@ -1783,8 +1784,8 @@
+ &msg( "Failed to change to remote directory ($remote_dir) trying to create it\n" );
+ &mkdirs( $remote_dir );
+
+- if( ! &ftp'cwd( $remote_dir ) ){
+- &msg( "Cannot change to remote directory ($remote_dir) because: $ftp'response\n" );
++ if( ! &ftp::cwd( $remote_dir ) ){
++ &msg( "Cannot change to remote directory ($remote_dir) because: $ftp::response\n" );
+ return 0;
+ }
+ }
+@@ -1807,7 +1808,7 @@
local( $f );
$f = $dirtmp;
$f =~ s/($shell_metachars)/\\$1/g;
@@ -60,7 +267,16 @@ $NetBSD: patch-ac,v 1.5 2011/09/12 16:35
}
if( ! open( DIRTMP, $dirtmp ) ){
&msg( "Cannot open $dirtmp\n" );
-@@ -1845,7 +1846,7 @@ sub get_remote_directory_details
+@@ -1827,7 +1828,7 @@
+ }
+
+ &msg( " Getting directory listing from remote file $ls_lR_file\n" ) if $debug;
+- if( ! &ftp'get( $ls_lR_file, $dirtmp, 0 ) ){
++ if( ! &ftp::get( $ls_lR_file, $dirtmp, 0 ) ){
+ &msg( "Cannot get dir listing file\n" );
+ return 0;
+ }
+@@ -1845,7 +1846,7 @@
$f = $dirtmp;
$dirtmp =~ s/\.($sys_compress_suffix|$gzip_suffix|$old_gzip_suffix)$//;
$udirtmp =~ s/\.($sys_compress_suffix|$gzip_suffix|$ol_gzip_suffix)$//;
@@ -69,7 +285,163 @@ $NetBSD: patch-ac,v 1.5 2011/09/12 16:35
&msg( "Cannot uncompress directory listing\n" );
return 0;
}
-@@ -2760,7 +2761,7 @@ sub transfer_file
+@@ -1860,7 +1861,7 @@
+ }
+ else {
+ $use_ls = 1;
+- if( ! &ftp'type( 'A' ) ){
++ if( ! &ftp::type( 'A' ) ){
+ &msg( "Cannot set type to ascii for dir listing, ignored\n" );
+ $type_changed = 0;
+ }
+@@ -1869,21 +1870,21 @@
+ }
+ }
+
+- $lsparse'fstype = $remote_fs;
+- $lsparse'name = "$site:$package";
++ $lsparse::fstype = $remote_fs;
++ $lsparse::name = "$site:$package";
+
+ if( $use_ls ){
+ local( $flags ) = $flags_nonrecursive;
+ if( $recursive && ! $recurse_hard ){
+ $flags = $flags_recursive;
+ }
+- $lsparse'report_subdirs = (! $recurse_hard && $algorithm == 0);
+- if( !&ftp'dir_open( $flags ) ){
+- &msg( "Cannot get remote directory listing because: $ftp'response\n" );
++ $lsparse::report_subdirs = (! $recurse_hard && $algorithm == 0);
++ if( !&ftp::dir_open( $flags ) ){
++ &msg( "Cannot get remote directory listing because: $ftp::response\n" );
+ return 0;
+ }
+
+- $rls = "ftp'NS";
++ $rls = "ftp::NS";
+ }
+
+ $rcwd = '';
+@@ -1892,8 +1893,8 @@
+ # relative to the remote_dir
+ $rcwd = $remote_dir;
+ }
+- $dateconv'use_timelocal = $use_timelocal;
+- if( !&lsparse'reset( $rcwd ) ){
++ $dateconv::use_timelocal = $use_timelocal;
++ if( !&lsparse::reset( $rcwd ) ){
+ &msg( "$remote_fs: unknown fstype\n" );
+ return 0;
+ }
+@@ -1923,7 +1924,7 @@
+ # Could optimise this out - but it makes sure that
+ # the other end gets a command straight after a possibly
+ # long dir listing.
+- if( ! &ftp'type( $text_mode ? 'A' : 'I' ) ){
++ if( ! &ftp::type( $text_mode ? 'A' : 'I' ) ){
+ local( $msg ) = "Cannot reset type after dir listing, ";
+ if( $type_changed ){
+ # I changed it before - so I must be able to
+@@ -1995,7 +1996,7 @@
+ while( 1 ){
+ while( !eof( $rls ) ){
+ ( $path, $size, $time, $type, $mode ) =
+- &lsparse'line( $rls );
++ &lsparse::line( $rls );
+ last if $path eq '';
+ if( $ls_fix_mappings ){
+ local( $old_path ) = $path;
+@@ -2086,9 +2087,9 @@
+ }
+
+ if( $use_ls ){
+- if( ! &ftp'dir_close() ){
++ if( ! &ftp::dir_close() ){
+ &msg( "Failure at end of remote directory" .
+- " ($rdir) because: $ftp'response\n" );
++ " ($rdir) because: $ftp::response\n" );
+ return 0;
+ }
+ }
+@@ -2098,9 +2099,9 @@
+ while( 1 ){
+ if( $#dir_list < 0 ){
+ # Make sure we end in the right directory.
+- if( ! &ftp'cwd( $remote_dir ) ){
++ if( ! &ftp::cwd( $remote_dir ) ){
+ &msg( "Cannot change to remote directory" .
+- " ($rdir) because: $ftp'response\n" );
++ " ($rdir) because: $ftp::response\n" );
+ return 0;
+ }
+ $done = 1;
+@@ -2111,9 +2112,9 @@
+ if( $debug > 2 ){
+ print "scanning: $remote_dir / $rcwd\n";
+ }
+- if( ! &ftp'cwd( $rdir ) ){
++ if( ! &ftp::cwd( $rdir ) ){
+ &msg( "Cannot change to remote directory" .
+- " ($rdir) because: $ftp'response\n" );
++ " ($rdir) because: $ftp::response\n" );
+ next;
+ }
+ last;
+@@ -2121,12 +2122,12 @@
+ if( $done ){
+ last;
+ }
+- if( !&ftp'dir_open( $flags_nonrecursive ) ){
++ if( !&ftp::dir_open( $flags_nonrecursive ) ){
+ &msg( "Cannot get remote directory" .
+- " listing because: $ftp'response\n" );
++ " listing because: $ftp::response\n" );
+ return 0;
+ }
+- &lsparse'reset( $rcwd );
++ &lsparse::reset( $rcwd );
+
+ # round the loop again.
+ next;
+@@ -2517,7 +2518,7 @@
+
+ if( $external_mapping ){
+ $old_name = $name;
+- local( $tmp ) = &extmap'map( $name );
++ local( $tmp ) = &extmap::map( $name );
+ if( $tmp ne $old_name ){
+ $name = $tmp;
+ }
+@@ -2678,11 +2679,11 @@
+ &transfer_file( $src_path, $dest_path,
+ $attribs, $remote_time[ $srci ] );
+ if( $get_file && $newpath eq '' ){
+- &msg( $log, "Failed to $XFER file $ftp'response\n" );
+- if( $ftp'response =~ /timeout|timed out/i ){
++ &msg( $log, "Failed to $XFER file $ftp::response\n" );
++ if( $ftp::response =~ /timeout|timed out/i ){
+ $timeouts++;
+ }
+- if( $ftp'fatalerror || $timeouts > $max_timeouts ){
++ if( $ftp::fatalerror || $timeouts > $max_timeouts ){
+ &msg( $log, "Fatal error talking to site, skipping rest of transfers\n" );
+ &disconnect();
+ return;
+@@ -2742,11 +2743,11 @@
+ }
+
+ if( $vms ){
+- &ftp'type( ($src_path =~ /$vms_xfer_text/i) ? 'A' : 'I' );
++ &ftp::type( ($src_path =~ /$vms_xfer_text/i) ? 'A' : 'I' );
+ }
+
+ if( $remote_fs eq 'macos' && ! $get_file ){
+- &ftp'type( 'A' );
++ &ftp::type( 'A' );
+ }
+
+ if( ! $get_file ){
+@@ -2760,7 +2761,7 @@
local( $f ) = $src_file;
$f =~ s/($shell_metachars)/\\$1/g;
$comptemp = "$big_temp/.out$$";
@@ -78,7 +450,52 @@ $NetBSD: patch-ac,v 1.5 2011/09/12 16:35
$src_file = $comptemp;
}
-@@ -2840,10 +2841,10 @@ sub transfer_file
+@@ -2768,15 +2769,15 @@
+ $temp = $dest_path;
+ }
+
+- if( ! &ftp'put( $src_file, $temp, $restart ) ){
+- &msg( $log, "Failed to put $src_file: $ftp'response\n" );
++ if( ! &ftp::put( $src_file, $temp, $restart ) ){
++ &msg( $log, "Failed to put $src_file: $ftp::response\n" );
+ unlink( $comptemp ) if $comptemp;
+ return '';
+ }
+
+ unlink( $comptemp ) if $comptemp;
+- if( !$no_rename && ! &ftp'rename( $temp, $dest_path ) ){
+- &msg( $log, "Failed to remote rename $temp to $dest_path: $ftp'response\n" );
++ if( !$no_rename && ! &ftp::rename( $temp, $dest_path ) ){
++ &msg( $log, "Failed to remote rename $temp to $dest_path: $ftp::response\n" );
+ return '';
+ }
+
+@@ -2800,11 +2801,11 @@
+ # it.
+
+ # Get a file
+- &ftp'dostrip( $strip_cr );
++ &ftp::dostrip( $strip_cr );
+ $start_time = time;
+- if( ! &ftp'get( $src_path, $temp, $restart ) ){
+- if( !$failed_gets_excl || $ftp'response !~ /$failed_gets_excl/ ){
+- &msg( $log, "Failed to get $src_path: $ftp'response\n" );
++ if( ! &ftp::get( $src_path, $temp, $restart ) ){
++ if( !$failed_gets_excl || $ftp::response !~ /$failed_gets_excl/ ){
++ &msg( $log, "Failed to get $src_path: $ftp::response\n" );
+ }
+
+ # Time stamp the temp file to allow for a restart
+@@ -2823,7 +2824,7 @@
+
+ # delete source file after successful transfer
+ if( $delete_source ){
+- if( &ftp'delete( $src_path ) ){
++ if( &ftp::delete( $src_path ) ){
+ &msg( $log, "Deleted remote $src_path\n");
+ }
+ else {
+@@ -2840,10 +2841,10 @@
# Am I doing compress to gzip conversion?
if( $compress_conv_patt && $src_path =~ /$compress_conv_patt/ &&
$compress_suffix eq $gzip_suffix ){
@@ -91,7 +508,7 @@ $NetBSD: patch-ac,v 1.5 2011/09/12 16:35
}
&sys( $comp );
$temp =~ s/\\($shell_metachars)/$1/g;
-@@ -3174,9 +3175,9 @@ sub do_delete
+@@ -3174,9 +3175,9 @@
&msg( $log, "rmdir $cwd/$del failed: $!\n" );
}
else {
@@ -99,8 +516,77 @@ $NetBSD: patch-ac,v 1.5 2011/09/12 16:35
- &ftp'delete( "$del" ) ||
- &msg( $log, "ftp delete DIR $del failed\n" );
+ &msg( $log, "deldir DIR $del\n" );
-+ &ftp'deldir( "$del" ) ||
++ &ftp::deldir( "$del" ) ||
+ &msg( $log, "ftp deldir DIR $del failed\n" );
}
}
else {
+@@ -3184,7 +3185,7 @@
+ &msg( $log, "NEED TO rmdir $cwd/$del\n" );
+ }
+ else {
+- &msg( $log, "NEED TO ftp'deldir $del\n" );
++ &msg( $log, "NEED TO ftp::deldir $del\n" );
+ }
+ }
+ return;
+@@ -3199,7 +3200,7 @@
+ }
+ else {
+ &msg( $log, "delete FILE $del\n" );
+- &ftp'delete( "$del" ) ||
++ &ftp::delete( "$del" ) ||
+ &msg( $log, "ftp delete FILE $del failed\n" );
+ }
+ }
+@@ -3208,7 +3209,7 @@
+ &msg( $log, "NEED TO unlink $cwd/$del\n" );
+ }
+ else {
+- &msg( $log, "NEED TO ftp'delete $del\n" );
++ &msg( $log, "NEED TO ftp::delete $del\n" );
+ }
+ }
+ }
+@@ -3345,12 +3346,12 @@
+ }
+ else {
+ # make a remote directory
+- $val = &ftp'mkdir( $dir );
++ $val = &ftp::mkdir( $dir );
+
+ # The mkdir might have failed due to bad mode
+ # So try to chmod it anyway
+ if( $remote_has_chmod ){
+- $val = &ftp'chmod( $dir, $mode );
++ $val = &ftp::chmod( $dir, $mode );
+ }
+ }
+
+@@ -3369,14 +3370,14 @@
+ }
+ else {
+ # check if remote directory exists
+- local($old_dir) = &ftp'pwd();
++ local($old_dir) = &ftp::pwd();
+
+- $val = &ftp'cwd($dir);
++ $val = &ftp::cwd($dir);
+
+ # If I didn't manage to change dir should be where I was!
+ if( $val ){
+ # go back to the original directory
+- &ftp'cwd($old_dir) || die "Cannot cd to original remote directory";
++ &ftp::cwd($old_dir) || die "Cannot cd to original remote directory";
+ }
+ }
+ return $val;
+@@ -3430,7 +3431,7 @@
+ else {
+ # change the remote file
+ if( $remote_has_chmod ){
+- &ftp'chmod( $path, $mode );
++ &ftp::chmod( $path, $mode );
+ }
+ }
+ }
Index: pkgsrc/net/mirror/patches/patch-ad
diff -u pkgsrc/net/mirror/patches/patch-ad:1.5 pkgsrc/net/mirror/patches/patch-ad:1.6
--- pkgsrc/net/mirror/patches/patch-ad:1.5 Tue Dec 28 18:15:43 1999
+++ pkgsrc/net/mirror/patches/patch-ad Thu Apr 11 10:23:44 2024
@@ -1,8 +1,74 @@
-$NetBSD: patch-ad,v 1.5 1999/12/28 18:15:43 itojun Exp $
+$NetBSD: patch-ad,v 1.6 2024/04/11 10:23:44 bouyer Exp $
---- lchat.pl.orig Wed Jun 7 22:19:22 1995
-+++ lchat.pl Wed May 12 18:10:54 1999
-@@ -79,7 +79,7 @@
+--- lchat.pl.orig 2024-04-11 11:08:05.970309238 +0200
++++ lchat.pl 2024-04-11 11:07:48.798330768 +0200
+@@ -34,7 +34,7 @@
+ # Lots of changes. See CHANGES since 2.8 file.
+ #
+ # Revision 2.3 1994/02/03 13:45:35 lmjm
+-# Correct chat'read (bfriesen%simple.sat.tx.us@localhost)
++# Correct chat::read (bfriesen%simple.sat.tx.us@localhost)
+ #
+ # Revision 2.2 1993/12/14 11:09:03 lmjm
+ # Only include sys/socket.ph if not already there.
+@@ -55,7 +55,7 @@
+ eval "use Socket";
+ }
+ else {
+- unless( defined &'PF_INET ){
++ unless( defined &::PF_INET ){
+ eval "sub ATT { 0; } sub INTEL { 0; }";
+ do 'sys/socket.ph';
+ }
+@@ -65,18 +65,18 @@
+ if( $] =~ /^5\.\d+$/ ){
+ # Perl 5 has a special way of getting them via the 'use Socket'
+ # above.
+- $main'pf_inet = &Socket'PF_INET;
+- $main'sock_stream = &Socket'SOCK_STREAM;
++ $main::pf_inet = &Socket::PF_INET;
++ $main::sock_stream = &Socket::SOCK_STREAM;
+ local($name, $aliases, $proto) = getprotobyname( 'tcp' );
+- $main'tcp_proto = $proto;
++ $main::tcp_proto = $proto;
+ }
+-elsif( defined( &'PF_INET ) ){
++elsif( defined( &::PF_INET ) ){
+ # Perl 4 needs to have the socket.ph file created when perl was
+ # installed.
+- $main'pf_inet = &'PF_INET;
+- $main'sock_stream = &'SOCK_STREAM;
++ $main::pf_inet = &::PF_INET;
++ $main::sock_stream = &::SOCK_STREAM;
+ local($name, $aliases, $proto) = getprotobyname( 'tcp' );
+- $main'tcp_proto = $proto;
++ $main::tcp_proto = $proto;
+ }
+ else {
+ # Whoever installed perl didn't run h2ph !!!
+@@ -84,9 +84,9 @@
+ # last resort
+ # Use hardwired versions
+ # but who the heck would change these anyway? (:-)
+- $main'pf_inet = 2;
+- $main'sock_stream = 1; # Sigh... On Solaris set this to 2
+- $main'tcp_proto = 6;
++ $main::pf_inet = 2;
++ $main::sock_stream = 1; # Sigh... On Solaris set this to 2
++ $main::tcp_proto = 6;
+ warn "lchat.pl: using hardwired in network constantants";
+ }
+
+@@ -108,7 +108,7 @@
+ }
+
+
+-## &chat'open_port("server.address",$port_number);
++## &chat::open_port("server.address",$port_number);
+ ## opens a named or numbered TCP server
+ sub open_port { ## public
+ local($server, $port) = @_;
+@@ -117,7 +117,7 @@
# We may be multi-homed, start with 0, fixup once connexion is made
$thisaddr = "\0\0\0\0" ;
@@ -11,16 +77,18 @@ $NetBSD: patch-ad,v 1.5 1999/12/28 18:15
if ($server =~ /^(\d+)+\.(\d+)\.(\d+)\.(\d+)$/) {
$serveraddr = pack('C4', $1, $2, $3, $4);
-@@ -90,7 +90,7 @@
+@@ -128,8 +128,8 @@
}
$serveraddr = $x[4];
}
- $serverproc = pack($sockaddr, 2, $port, $serveraddr);
+- unless (socket(S, $main'pf_inet, $main'sock_stream, $main'tcp_proto)) {
+ $serverproc = pack_sockaddr_in($port, $serveraddr);
- unless (socket(S, $main'pf_inet, $main'sock_stream, $main'tcp_proto)) {
++ unless (socket(S, $main::pf_inet, $main::sock_stream, $main::tcp_proto)) {
($!) = ($!, close(S)); # close S while saving $!
return undef;
-@@ -99,12 +99,12 @@
+ }
+@@ -137,12 +137,12 @@
# The SOCKS documentation claims that this bind before the connet
# is unnecessary. Not just, that, but when used with SOCKS,
# a connect() must not follow a bind(). -Erez Zadok.
@@ -39,7 +107,7 @@ $NetBSD: patch-ad,v 1.5 1999/12/28 18:15
unless (connect(S, $serverproc)) {
($!) = ($!, close(S)); # close S while saving $!
return undef;
-@@ -114,7 +114,7 @@
+@@ -152,7 +152,7 @@
# multi-homed, with IP forwarding off, so fix-up.
local($fam,$lport);
($fam,$lport,$thisaddr) = unpack($sockaddr, getsockname(S));
@@ -48,7 +116,7 @@ $NetBSD: patch-ad,v 1.5 1999/12/28 18:15
# end of post-connect fixup
select((select(S), $| = 1)[0]);
return 1;
-@@ -129,7 +129,7 @@
+@@ -167,7 +167,7 @@
# We may be multi-homed, start with 0, fixup once connexion is made
$thisaddr = "\0\0\0\0" ;
@@ -57,7 +125,7 @@ $NetBSD: patch-ad,v 1.5 1999/12/28 18:15
if ($server =~ /^(\d+)+\.(\d+)\.(\d+)\.(\d+)$/) {
$serveraddr = pack('C4', $1, $2, $3, $4);
-@@ -151,7 +151,7 @@
+@@ -189,7 +189,7 @@
# multi-homed, with IP forwarding off, so fix-up.
local($fam,$lport);
($fam,$lport,$thisaddr) = unpack($sockaddr, getsockname($newsock));
@@ -66,3 +134,47 @@ $NetBSD: patch-ad,v 1.5 1999/12/28 18:15
# end of post-connect fixup
select((select($newsock), $| = 1)[0]);
return 1;
+@@ -197,7 +197,7 @@
+ ##############################################################################
+
+
+-## $return = &chat'expect($timeout_time,
++## $return = &chat::expect($timeout_time,
+ ## $pat1, $body1, $pat2, $body2, ... )
+ ## $timeout_time is the time (either relative to the current time, or
+ ## absolute, ala time(2)) at which a timeout event occurs.
+@@ -293,7 +293,7 @@
+ select($rmask, undef, undef, $endtime - time);
+ if ($nfound) {
+ $nread = sysread(S, $thisbuf, 1024);
+- if( $chat'debug ){
++ if( $chat::debug ){
+ print STDERR "sysread $nread ";
+ print STDERR ">>$thisbuf<<\n";
+ }
+@@ -316,21 +316,21 @@
+ & $subname();
+ }
+
+-## &chat'print(@data)
++## &chat::print(@data)
+ sub print { ## public
+ print S @_;
+- if( $chat'debug ){
++ if( $chat::debug ){
+ print STDERR "printed:";
+ print STDERR @_;
+ }
+ }
+
+-## &chat'close()
++## &chat::close()
+ sub close { ## public
+ close(S);
+ }
+
+-# &chat'read(*buf, $ntoread )
++# &chat::read(*buf, $ntoread )
+ # blocking read. returns no. of bytes read and puts data in $buf.
+ # If called with ntoread < 0 then just do the accept and return 0.
+ sub read { ## public
Index: pkgsrc/net/mirror/patches/patch-ae
diff -u pkgsrc/net/mirror/patches/patch-ae:1.7 pkgsrc/net/mirror/patches/patch-ae:1.8
--- pkgsrc/net/mirror/patches/patch-ae:1.7 Mon Sep 12 16:35:43 2011
+++ pkgsrc/net/mirror/patches/patch-ae Thu Apr 11 10:23:44 2024
@@ -1,12 +1,128 @@
-$NetBSD: patch-ae,v 1.7 2011/09/12 16:35:43 taca Exp $
+$NetBSD: patch-ae,v 1.8 2024/04/11 10:23:44 bouyer Exp $
* Enable deleting remote directories.
* Proper signal handling.
* Miscellaneous bug fixes.
+* Fix deprecation warning (change ' to ::) for newer perl
---- ftp.pl.orig 1998-06-05 09:10:27.000000000 +0000
-+++ ftp.pl
-@@ -233,7 +233,7 @@ sub timed_open
+--- ftp.pl.orig 2024-04-11 11:08:05.969004188 +0200
++++ ftp.pl 2024-04-11 11:07:48.797471889 +0200
+@@ -28,17 +28,17 @@
+ # $ftp_port = 21;
+ # $retry_call = 1;
+ # $attempts = 2;
+-# if( &ftp'open( $site, $ftp_port, $retry_call, $attempts ) != 1 ){
++# if( &ftp::open( $site, $ftp_port, $retry_call, $attempts ) != 1 ){
+ # die "failed to open ftp connection";
+ # }
+-# if( ! &ftp'login( $user, $pass ) ){
++# if( ! &ftp::login( $user, $pass ) ){
+ # die "failed to login";
+ # }
+-# &ftp'type( $text_mode ? 'A' : 'I' );
+-# if( ! &ftp'get( $remote_filename, $local_filename, 0 ) ){
++# &ftp::type( $text_mode ? 'A' : 'I' );
++# if( ! &ftp::get( $remote_filename, $local_filename, 0 ) ){
+ # die "failed to get file";
+ # }
+-# &ftp'close();
++# &ftp::close();
+ #
+ #
+ # $Id: patch-ae,v 1.8 2024/04/11 10:23:44 bouyer Exp $
+@@ -94,9 +94,9 @@
+
+ # This is a "global" it contains the last response from the remote ftp server
+ # for use in error messages
+-$ftp'response = "";
++$ftp::response = "";
+
+-# Also ftp'NS is the socket containing the data coming in from the remote ls
++# Also ftp::NS is the socket containing the data coming in from the remote ls
+ # command.
+
+ # The size of block to be read or written when talking to the remote
+@@ -115,12 +115,12 @@
+ $real_site = "";
+
+ # "Global" Where error/log reports are sent to
+-$ftp'showfd = 'STDERR';
++$ftp::showfd = 'STDERR';
+
+ # Should a 421 be treated as a connection close and return 99 from
+-# ftp'expect. This is against rfc1123 recommendations but I've found
++# ftp::expect. This is against rfc1123 recommendations but I've found
+ # it to be a wise default.
+-$ftp'drop_on_421 = 1;
++$ftp::drop_on_421 = 1;
+
+ # Name of a function to call on a pathname to map it into a remote
+ # pathname.
+@@ -131,7 +131,7 @@
+ $ftp_show = 0;
+
+ # Global set on a error that aborts the connection
+-$ftp'fatalerror = 0;
++$ftp::fatalerror = 0;
+
+ # Whether to keep the continuation messages so the user can look at them
+ $keep_continuations = 0;
+@@ -140,7 +140,7 @@
+ $read_in = undef;
+
+ # should we use the PASV extension to the ftp protocol?
+-$ftp'use_pasv = 0; # 0=no (default), 1=yes
++$ftp::use_pasv = 0; # 0=no (default), 1=yes
+
+ # Variable only used if proxying
+ $proxy = $proxy_gateway = $proxy_ftp_port = '';
+@@ -150,30 +150,30 @@
+ # (Normally set elsewhere - this is just a sensible default.)
+ # Is expected to take count and code as arguments and prompt
+ # for the secret key with 'password:' on stdout and then print the password.
+-$ftp'keygen_prog = '/usr/local/bin/key';
++$ftp::keygen_prog = '/usr/local/bin/key';
+
+ # Uncomment to turn on lots of debugging.
+ # &debug( 10 );
+
+-# Limit how much data any one ftp'get can pull back
++# Limit how much data any one ftp::get can pull back
+ # Negative values cause the size check to be skipped.
+ $max_get_size = -1;
+
+ # Where I am connected to.
+ $connect_site = '';
+
+-# &ftp'debug( debugging_level )
++# &ftp::debug( debugging_level )
+ # Turn on debugging ranging from 1 = some to 10 = everything
+-sub ftp'debug
++sub ftp::debug
+ {
+ $ftp_show = $_[0];
+ if( $ftp_show > 9 ){
+- $chat'debug = 1;
++ $chat::debug = 1;
+ }
+ }
+
+-# &ftp'set_timeout( seconds )
+-sub ftp'set_timeout
++# &ftp::set_timeout( seconds )
++sub ftp::set_timeout
+ {
+ local( $to ) = @_;
+ return if $to == $timeout;
+@@ -226,21 +226,21 @@
+ $connect_site = $site;
+ $connect_port = $ftp_port;
+ }
+- if( ! &chat'open_port( $connect_site, $connect_port ) ){
++ if( ! &chat::open_port( $connect_site, $connect_port ) ){
+ if( $retry_call ){
+ print $showfd "Failed to connect\n" if $ftp_show;
+ next;
}
else {
print $showfd "proxy connection failed " if $proxy;
@@ -15,22 +131,119 @@ $NetBSD: patch-ae,v 1.7 2011/09/12 16:35
return 0;
}
}
-@@ -270,6 +270,14 @@ sub ftp'set_signals
- $SIG{ 'PIPE' } = "ftp'ftp__sighandler";
+ $ret = &expect( $timeout,
+ 2, 1 ); # ready for login to $site
+ if( $ret != 1 ){
+- &chat'close();
++ &chat::close();
+ next;
+ }
+ return 1;
+@@ -264,14 +264,22 @@
+ }
+
+ # Setup a signal handler for possible errors.
+-sub ftp'set_signals
++sub ftp::set_signals
+ {
+ $ftp_logger = @_;
+- $SIG{ 'PIPE' } = "ftp'ftp__sighandler";
++ $SIG{ 'PIPE' } = "ftp::ftp__sighandler";
}
+-# &ftp'set_namemap( function to map outgoing name, function to map incoming )
+-sub ftp'set_namemap
+# Setup a signal handler for user interrupts.
-+sub ftp'set_user_signals
++sub ftp::set_user_signals
+{
+ $ftp_logger = @_;
-+ $SIG{ 'INT' } = "ftp'ftp__sighandler";
++ $SIG{ 'INT' } = "ftp::ftp__sighandler";
+}
+
+
- # &ftp'set_namemap( function to map outgoing name, function to map incoming )
- sub ftp'set_namemap
++# &ftp::set_namemap( function to map outgoing name, function to map incoming )
++sub ftp::set_namemap
{
-@@ -486,7 +494,7 @@ sub pasv
+ ($mapunixout, $mapunixin) = @_;
+ if( $debug ) {
+@@ -280,12 +288,12 @@
+ }
+
+
+-# &ftp'open( hostname or address,
++# &ftp::open( hostname or address,
+ # port to use,
+ # retry on call failure,
+ # number of attempts to retry )
+ # returns 1 if connected, 0 otherwise
+-sub ftp'open
++sub ftp::open
+ {
+ local( $site, $ftp_port, $retry_call, $attempts ) = @_;
+
+@@ -312,9 +320,9 @@
+ return $ret;
+ }
+
+-# &ftp'login( user, password, account )
++# &ftp::login( user, password, account )
+ # the account part is optional unless the remote service requires one.
+-sub ftp'login
++sub ftp::login
+ {
+ local( $remote_user, $remote_password, $remote_account ) = @_;
+ local( $ret );
+@@ -351,11 +359,11 @@
+ # check for s/key challenge - eg, [s/key 994 ph29005]
+ # If we are talking to skey then use remote_password as the
+ # secret to generate a real password
+- if( $ftp'response =~ m#\[s/key (\d+) (\w+)\]# ){
++ if( $ftp::response =~ m#\[s/key (\d+) (\w+)\]# ){
+ local( $count, $code ) = ($1, $2);
+
+ # TODO: report open failure & remove need for echo
+- open( SKEY, "echo $remote_password | $ftp'keygen_prog $count $code |" );
++ open( SKEY, "echo $remote_password | $ftp::keygen_prog $count $code |" );
+ while( <SKEY> ){
+ if( ! /password:/ ){
+ chop( $remote_password = $_ );
+@@ -411,21 +419,21 @@
+ sub service_closed
+ {
+ $service_open = 0;
+- &chat'close();
++ &chat::close();
+ }
+
+ # Close down the current ftp connecting in an orderly way.
+-sub ftp'close
++sub ftp::close
+ {
+ &quit();
+ $service_open = 0;
+- &chat'close();
++ &chat::close();
+ }
+
+-# &ftp'cwd( directory )
++# &ftp::cwd( directory )
+ # Change to the given directory
+ # return 1 if successful, 0 otherwise
+-sub ftp'cwd
++sub ftp::cwd
+ {
+ local( $dir ) = @_;
+ local( $ret );
+@@ -460,7 +468,7 @@
+ sub pasv
+ {
+ # At some point I need to close/free S2, no?
+- unless( socket( S2, $main'pf_inet, $main'sock_stream, $main'tcp_proto ) ){
++ unless( socket( S2, $main::pf_inet, $main::sock_stream, $main::tcp_proto ) ){
+ ($!) = ($!, close(S2)); # close S2 while saving $!
+ return undef;
+ }
+@@ -486,7 +494,7 @@
return 0;
}
if( $ret == 1 ) {
@@ -39,7 +252,40 @@ $NetBSD: patch-ae,v 1.7 2011/09/12 16:35
$newhost = sprintf( "%d.%d.%d.%d", $1, $2, $3, $4 );
$newport = $5 * 256 + $6;
}
-@@ -581,6 +589,9 @@ sub ftp'dir_close
+@@ -497,7 +505,7 @@
+ }
+
+ # now need to connect() the new socket
+- if( ! &chat'open_newport( $newhost, $newport, *S2 ) ){
++ if( ! &chat::open_newport( $newhost, $newport, *S2 ) ){
+ if( $retry_call ){
+ print $showfd "Failed to connect newport\n" if $ftp_show;
+ next;
+@@ -511,12 +519,12 @@
+ }
+
+
+-# &ftp'dir( remote LIST options )
++# &ftp::dir( remote LIST options )
+ # Start a list going with the given options.
+ # Presuming that the remote deamon uses the ls command to generate the
+ # data to send back then then you can send it some extra options (eg: -lRa)
+ # return 1 if sucessful, 0 otherwise
+-sub ftp'dir_open
++sub ftp::dir_open
+ {
+ local( $options ) = @_;
+ local( $ret );
+@@ -573,7 +581,7 @@
+
+ # Close down reading the result of a remote ls command
+ # return 1 if successful, 0 otherwise
+-sub ftp'dir_close
++sub ftp::dir_close
+ {
+ local( $ret );
+
+@@ -581,6 +589,9 @@
return 0;
}
@@ -49,7 +295,7 @@ $NetBSD: patch-ae,v 1.7 2011/09/12 16:35
# read the close
#
$ret = &expect($timeout,
-@@ -590,8 +601,6 @@ sub ftp'dir_close
+@@ -590,8 +601,6 @@
$ret = 0;
}
@@ -58,7 +304,41 @@ $NetBSD: patch-ae,v 1.7 2011/09/12 16:35
if( ! $ret ){
return 0;
-@@ -708,6 +717,7 @@ sub ftp'get
+@@ -602,7 +611,7 @@
+
+ # Quit from the remote ftp server
+ # return 1 if successful and 0 on failure
+-# Users should be calling &ftp'close();
++# Users should be calling &ftp::close();
+ sub quit
+ {
+ local( $ret );
+@@ -687,20 +696,20 @@
+ return syswrite( NS, $ftpbuf, $ftpbufsize );
+ }
+
+-# &ftp'dostrip( true or false )
++# &ftp::dostrip( true or false )
+ # Turn on or off stripping of incoming carriage returns.
+-sub ftp'dostrip
++sub ftp::dostrip
+ {
+ ($strip_cr ) = @_;
+ }
+
+-# &ftp'get( remote file, local file, try restarting where last xfer failed )
++# &ftp::get( remote file, local file, try restarting where last xfer failed )
+ # Get a remote file back into a local file.
+ # If no loc_fname passed then uses rem_fname.
+ # If $restart set and the remote site supports it then restart where
+ # last xfer left off.
+ # returns 1 on success, 0 otherwise
+-sub ftp'get
++sub ftp::get
+ {
+ local($rem_fname, $loc_fname, $restart ) = @_;
+ local( $ret );
+@@ -708,6 +717,7 @@
if( ! $service_open ){
return 0;
}
@@ -66,7 +346,16 @@ $NetBSD: patch-ae,v 1.7 2011/09/12 16:35
if( $loc_fname eq "" ){
$loc_fname = $rem_fname;
-@@ -917,10 +927,27 @@ sub delete
+@@ -887,7 +897,7 @@
+ return $ret;
+ }
+
+-# &ftp'delete( remote filename )
++# &ftp::delete( remote filename )
+ # Delete a file from the remote site.
+ # returns 1 if successful, 0 otherwise
+ sub delete
+@@ -917,15 +927,32 @@
sub deldir
{
@@ -96,4 +385,133 @@ $NetBSD: patch-ae,v 1.7 2011/09/12 16:35
+ return $ret == 1;
}
- # &ftp'put( local filename, remote filename, restart where left off )
+-# &ftp'put( local filename, remote filename, restart where left off )
++# &ftp::put( local filename, remote filename, restart where left off )
+ # Similar to get but sends file to the remote site.
+-sub ftp'put
++sub ftp::put
+ {
+ local( $loc_fname, $rem_fname ) = @_;
+ local( $strip_cr );
+@@ -1091,9 +1118,9 @@
+ return $ret;
+ }
+
+-# &ftp'restart( byte_offset )
++# &ftp::restart( byte_offset )
+ # Restart the next transfer from the given offset
+-sub ftp'restart
++sub ftp::restart
+ {
+ local( $restart_point, $ret ) = @_;
+
+@@ -1115,7 +1142,7 @@
+ return $ret;
+ }
+
+-# &ftp'type( 'A' or 'I' )
++# &ftp::type( 'A' or 'I' )
+ # set transfer type to Ascii or Image.
+ sub type
+ {
+@@ -1143,7 +1170,7 @@
+ @site_command_list = ();
+
+ # routine to query the remote server for 'SITE' commands supported
+-sub ftp'site_commands
++sub ftp::site_commands
+ {
+ local( $ret );
+
+@@ -1183,7 +1210,7 @@
+ }
+
+ # return the pwd, or null if we can't get the pwd
+-sub ftp'pwd
++sub ftp::pwd
+ {
+ local( $ret, $cwd );
+
+@@ -1214,7 +1241,7 @@
+ return $cwd;
+ }
+
+-# &ftp'mkdir( directory name )
++# &ftp::mkdir( directory name )
+ # Create a directory on the remote site
+ # return 1 for success, 0 otherwise
+ sub mkdir
+@@ -1244,7 +1271,7 @@
+ return $ret;
+ }
+
+-# &ftp'chmod( pathname, new mode )
++# &ftp::chmod( pathname, new mode )
+ # Change the mode of a file on the remote site.
+ # return 1 for success, 0 for failure
+ sub chmod
+@@ -1274,10 +1301,10 @@
+ return $ret;
+ }
+
+-# &ftp'rename( old name, new name )
++# &ftp::rename( old name, new name )
+ # Rename a file on the remote site.
+ # returns 1 if successful, 0 otherwise
+-sub ftp'rename
++sub ftp::rename
+ {
+ local( $old_name, $new_name ) = @_;
+ local( $ret );
+@@ -1325,8 +1352,8 @@
+ }
+
+
+-# &ftp'quote( site command );
+-sub ftp'quote
++# &ftp::quote( site command );
++sub ftp::quote
+ {
+ local( $cmd ) = @_;
+ local( $ret );
+@@ -1364,7 +1391,7 @@
+ }
+
+ #
+-# create the list of parameters for chat'expect
++# create the list of parameters for chat::expect
+ #
+ # expect( time_out, {value, return value} );
+ # the last response is stored in $response
+@@ -1427,7 +1454,7 @@
+ if( $ftp_show > 9 ){
+ &printargs( $time_out, @expect_args );
+ }
+- $ret = &chat'expect( $time_out, @expect_args );
++ $ret = &chat::expect( $time_out, @expect_args );
+ }
+
+ return $ret;
+@@ -1449,10 +1476,10 @@
+
+ $sockaddr = 'S n a4 x8';
+
+- ($a,$b,$c,$d) = unpack( 'C4', $chat'thisaddr );
+- $this = $chat'thisproc;
++ ($a,$b,$c,$d) = unpack( 'C4', $chat::thisaddr );
++ $this = $chat::thisproc;
+
+- if( ! socket( S, $main'pf_inet, $main'sock_stream, $main'tcp_proto ) ){
++ if( ! socket( S, $main::pf_inet, $main::sock_stream, $main::tcp_proto ) ){
+ warn "socket: $!";
+ return 0;
+ }
+@@ -1505,7 +1532,7 @@
+ print $showfd "---> $sc\n";
+ }
+
+- &chat'print( "$send_cmd\r\n" );
++ &chat::print( "$send_cmd\r\n" );
+ }
+
+ sub accept
Index: pkgsrc/net/mirror/patches/patch-ag
diff -u pkgsrc/net/mirror/patches/patch-ag:1.2 pkgsrc/net/mirror/patches/patch-ag:1.3
--- pkgsrc/net/mirror/patches/patch-ag:1.2 Mon Sep 12 16:35:43 2011
+++ pkgsrc/net/mirror/patches/patch-ag Thu Apr 11 10:23:44 2024
@@ -1,11 +1,12 @@
-$NetBSD: patch-ag,v 1.2 2011/09/12 16:35:43 taca Exp $
+$NetBSD: patch-ag,v 1.3 2024/04/11 10:23:44 bouyer Exp $
* Avoid to use timelocal.pl which cause obsolete warning with perl 5.14.
* Make sure to use 4-digit year.
+* Fix deprecation warning (change ' to ::) for newer perl
---- dateconv.pl.orig 1998-05-29 19:04:32.000000000 +0000
-+++ dateconv.pl
-@@ -47,7 +47,8 @@ sub lstime_to_standard
+--- dateconv.pl.orig 2024-04-11 11:08:05.967542752 +0200
++++ dateconv.pl 2024-04-11 11:07:48.795406481 +0200
+@@ -47,7 +47,8 @@
}
@@ -15,7 +16,35 @@ $NetBSD: patch-ag,v 1.2 2011/09/12 16:35
package dateconv;
# Use timelocal rather than gmtime.
-@@ -149,5 +150,5 @@ sub main'time_to_standard
+@@ -74,7 +75,7 @@
+ # input date and time string from ftp "ls -l", such as Mmm dd yyyy or
+ # Mmm dd HH:MM,
+ # return $time number via gmlocal( $string ).
+-sub main'lstime_to_time
++sub main::lstime_to_time
+ {
+ package dateconv;
+
+@@ -133,15 +134,15 @@
+ $year += 50 if 37 < $year && $year < 70 ;
+
+ if( $use_timelocal ){
+- return &'timelocal( $secs, $mins, $hours, $day, $month, $year );
++ return &::timelocal( $secs, $mins, $hours, $day, $month, $year );
+ }
+ else {
+- return &'timegm( $secs, $mins, $hours, $day, $month, $year );
++ return &::timegm( $secs, $mins, $hours, $day, $month, $year );
+ }
+ }
+
+ # input time number, output GMT string as "dd Mmm YY HH:MM"
+-sub main'time_to_standard
++sub main::time_to_standard
+ {
+ package dateconv;
+
+@@ -149,5 +150,5 @@
local( $sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst ) =
gmtime( $time );
Added files:
Index: pkgsrc/net/mirror/patches/patch-lsparse.pl
diff -u /dev/null pkgsrc/net/mirror/patches/patch-lsparse.pl:1.1
--- /dev/null Thu Apr 11 10:23:44 2024
+++ pkgsrc/net/mirror/patches/patch-lsparse.pl Thu Apr 11 10:23:44 2024
@@ -0,0 +1,526 @@
+$NetBSD: patch-lsparse.pl,v 1.1 2024/04/11 10:23:44 bouyer Exp $
+
+* Fix deprecation warning (change ' to ::) for newer perl
+
+--- lsparse.pl.orig 1998-05-29 21:04:23.000000000 +0200
++++ lsparse.pl 2024-04-11 11:07:48.800742520 +0200
+@@ -14,7 +14,7 @@
+ # This software is provided "as is" without express or implied warranty.
+ #
+ # Parse "ls -lR" type listings
+-# use lsparse'reset( dirname ) repeately
++# use lsparse::reset( dirname ) repeately
+ #
+ # By Lee McLoughlin <lmjm%icparc.ic.ac.uk@localhost>
+ #
+@@ -61,18 +61,18 @@
+ local( $match );
+
+ # The filestore type being scanned
+-$lsparse'fstype = 'unix';
++$lsparse::fstype = 'unix';
+
+ # Keep whatever case is on the remote system. Otherwise lowercase it.
+-$lsparse'vms_keep_case = '';
++$lsparse::vms_keep_case = '';
+
+ # A name to report when errors occur
+-$lsparse'name = 'unknown';
++$lsparse::name = 'unknown';
+
+ # Wether to report subdirs when finding them in a directory
+ # or when their details appear. (If you report early then mirro might
+ # recreate locally remote restricted directories.)
+-$lsparse'report_subdir = 0; # Report when finding details.
++$lsparse::report_subdir = 0; # Report when finding details.
+
+
+ # Name of routine to call to parse incoming listing lines
+@@ -81,7 +81,7 @@
+ # Set the directory that is being scanned and
+ # check that the scan routing for this fstype exists
+ # returns false if the fstype is unknown.
+-sub lsparse'reset
++sub lsparse::reset
+ {
+ $here = $currdir = $_[0];
+ $now = time;
+@@ -91,17 +91,17 @@
+ $vms_strip =~ s,^/+,,;
+ $vms_strip =~ s,/+$,,;
+
+- $ls_line = "lsparse'line_$fstype";
++ $ls_line = "lsparse::line_$fstype";
+ return( defined( &$ls_line ) );
+ }
+
+ # See line_unix following routine for call/return details.
+ # This calls the filestore specific parser.
+-sub lsparse'line
++sub lsparse::line
+ {
+ local( $fh ) = @_;
+
+- # ls_line is setup in lsparse'reset to the name of the function
++ # ls_line is setup in lsparse::reset to the name of the function
+ local( $path, $size, $time, $type, $mode ) =
+ eval "&$ls_line( \$fh )";
+
+@@ -119,7 +119,7 @@
+ # time is a Un*x time value for the file
+ # type is "f" for a file, "d" for a directory and
+ # "l linkname" for a symlink
+-sub lsparse'line_unix
++sub lsparse::line_unix
+ {
+ local( $fh ) = @_;
+ local( $non_crud, $perm_denied );
+@@ -132,7 +132,7 @@
+
+ while( <$fh> ){
+ # Store listing
+- print main'STORE $_;
++ print main::STORE $_;
+
+ # Stomp on carriage returns
+ s/\015//g;
+@@ -168,7 +168,7 @@
+ if( $perm_denied ){
+ $perm_denied = "";
+ warn "Warning: input corrupted by 'Permission denied'",
+- "errors, about line $. of $lsparse'name\n";
++ "errors, about line $. of $lsparse::name\n";
+ next;
+ }
+ # Not found's are like Permission denied's. They can start part
+@@ -180,7 +180,7 @@
+ if( $not_found ){
+ $not_found = "";
+ warn "Warning: input corrupted by 'not found' errors",
+- " about line $. of $lsparse'name\n";
++ " about line $. of $lsparse::name\n";
+ next;
+ }
+
+@@ -196,7 +196,7 @@
+ next;
+ }
+
+- local( $time ) = &main'lstime_to_time( $lsdate );
++ local( $time ) = &main::lstime_to_time( $lsdate );
+ local( $type ) = '?';
+ local( $mode ) = 0;
+
+@@ -316,7 +316,7 @@
+ # time is a Un*x time value for the file
+ # type is "f" for a file, "d" for a directory and
+ # "l linkname" for a symlink
+-sub lsparse'line_dls
++sub lsparse::line_dls
+ {
+ local( $fh ) = @_;
+ local( $non_crud, $perm_denied );
+@@ -327,7 +327,7 @@
+
+ while( <$fh> ){
+ # Store listing
+- print main'STORE $_;
++ print main::STORE $_;
+
+ # Stomp on carriage returns
+ s/\015//g;
+@@ -350,7 +350,7 @@
+ }
+ else {
+ # a file
+- $time = &main'lstime_to_time( $lsdate );
++ $time = &main::lstime_to_time( $lsdate );
+ $type = 'f';
+ $mode = 0444;
+ }
+@@ -400,7 +400,7 @@
+ # time is a Un*x time value for the file
+ # type is "f" for a file, "d" for a directory and
+ # "l linkname" for a symlink
+-sub lsparse'line_netware
++sub lsparse::line_netware
+ {
+ local( $fh ) = @_;
+
+@@ -410,7 +410,7 @@
+
+ while( <$fh> ){
+ # Store listing
+- print main'STORE $_;
++ print main::STORE $_;
+
+ # Stomp on carriage returns
+ s/\015//g;
+@@ -435,7 +435,7 @@
+ if( $file eq '.' || $file eq '..' ){
+ next;
+ }
+- local( $time ) = &main'lstime_to_time( $lsdate );
++ local( $time ) = &main::lstime_to_time( $lsdate );
+ local( $type ) = '?';
+ local( $mode ) = 0;
+
+@@ -509,7 +509,7 @@
+ # time is a Un*x time value for the file
+ # type is "f" for a file, "d" for a directory and
+ # "l linkname" for a symlink
+-sub lsparse'line_vms
++sub lsparse::line_vms
+ {
+ local( $fh ) = @_;
+ local( $non_crud, $perm_denied );
+@@ -520,7 +520,7 @@
+
+ while( <$fh> ){
+ # Store listing
+- print main'STORE $_;
++ print main::STORE $_;
+
+ # Stomp on carriage returns
+ s/\015//g;
+@@ -543,7 +543,7 @@
+ }
+
+ # Upper case is so ugly
+- if( ! $lsparse'vms_keep_case ){
++ if( ! $lsparse::vms_keep_case ){
+ tr/A-Z/a-z/;
+ }
+
+@@ -584,7 +584,7 @@
+ $size = 0;
+
+ if( $got ){
+- local( $time ) = &main'lstime_to_time( $lsdate );
++ local( $time ) = &main::lstime_to_time( $lsdate );
+ local( $type ) = 'f';
+ local( $mode ) = 0444;
+
+@@ -610,7 +610,7 @@
+ $mode = 0555;
+ }
+
+- $lsparse'vers = $vers;
++ $lsparse::vers = $vers;
+
+ #print "file=|$file| match=|$match| vms_strip=|$vms_strip|\n";
+ $file =~ s,^,/,;
+@@ -653,7 +653,7 @@
+ # time is a Un*x time value for the file
+ # type is "f" for a file, "d" for a directory and
+ # "l linkname" for a symlink
+-sub lsparse'line_dosftp
++sub lsparse::line_dosftp
+ {
+ local( $fh ) = @_;
+
+@@ -670,7 +670,7 @@
+ $_ = <$fh>;
+
+ # Store listing
+- print main'STORE $_;
++ print main::STORE $_;
+
+ # Ignore the summary at the end and blank lines
+ if( /^\d+ files?\./ || /^\s+$/ ){
+@@ -691,7 +691,7 @@
+
+ # TODO: fix hacky 19$yr
+ local( $lsdate ) = "$day-$mon-19$yr $hrs:$min";
+- local( $time ) = &main'lstime_to_time( $lsdate );
++ local( $time ) = &main::lstime_to_time( $lsdate );
+ local( $type ) = '?';
+ local( $mode ) = 0;
+
+@@ -736,7 +736,7 @@
+ # 03-08-94 07:17AM 5504 article.xfiles.intro
+ # 02-28-94 11:44AM 3262 article1.gillian.anderson
+
+-sub lsparse'line_dosish
++sub lsparse::line_dosish
+ {
+ local( $fh ) = @_;
+
+@@ -748,7 +748,7 @@
+ $_ = <$fh>;
+
+ # Store listing
+- print main'STORE $_;
++ print main::STORE $_;
+
+ # Ignore blank lines
+ if( /^\s+$/ ){
+@@ -775,7 +775,7 @@
+
+ # TODO: fix hacky 19$yr
+ local( $lsdate ) = "$day-$mon-19$yr $hrs:$min";
+- local( $time ) = &main'lstime_to_time( $lsdate );
++ local( $time ) = &main::lstime_to_time( $lsdate );
+ local( $type ) = ($dir_or_size eq '<DIR>' ? 'd' : 'f');
+ local( $mode ) = 0;
+ local( $size ) = 0;
+@@ -842,7 +842,7 @@
+ # WPKIT1.EXE 960338 06/21/95 17:01
+ # CMT.CSV 0 07/06/95 14:56
+
+-sub lsparse'line_supertcp
++sub lsparse::line_supertcp
+ {
+ local( $fh ) = @_;
+
+@@ -860,7 +860,7 @@
+ $_ = <$fh>;
+
+ # Store listing
+- print main'STORE $_;
++ print main::STORE $_;
+
+ # Ignore the summary at the end and blank lines
+ if( /^\d+ files?\./ || /^\s+$/ ){
+@@ -885,7 +885,7 @@
+ $pending = $5;
+
+ local( $lsdate ) = "$day-$mon-$yr $time";
+- local( $time ) = &main'lstime_to_time( $lsdate );
++ local( $time ) = &main::lstime_to_time( $lsdate );
+ local( $type ) = '?';
+ local( $mode ) = 0;
+
+@@ -931,7 +931,7 @@
+ # 372 A 08-09-95 10:26 Aussie_1.bag
+ # 310992 06-28-94 09:56 INSTALL.EXE
+
+-sub lsparse'line_os2
++sub lsparse::line_os2
+ {
+ local( $fh ) = @_;
+
+@@ -943,7 +943,7 @@
+ $_ = <$fh>;
+
+ # Store listing
+- print main'STORE $_;
++ print main::STORE $_;
+
+ # Ignore blank lines
+ if( /^\s+$/ ){
+@@ -971,7 +971,7 @@
+
+ # TODO: fix hacky 19$yr
+ local( $lsdate ) = "$day-$mon-19$yr $hrs:$min";
+- local( $time ) = &main'lstime_to_time( $lsdate );
++ local( $time ) = &main::lstime_to_time( $lsdate );
+ local( $type ) = ($dir eq 'DIR' ? 'd' : 'f');
+ local( $mode ) = 0;
+
+@@ -999,7 +999,7 @@
+ # time is a Un*x time value for the file
+ # type is "f" for a file, "d" for a directory and
+ # "l linkname" for a symlink
+-sub lsparse'line_chameleon
++sub lsparse::line_chameleon
+ {
+ local( $fh ) = @_;
+
+@@ -1038,7 +1038,7 @@
+ $pending = $5;
+
+ local( $lsdate ) = "$day-$mon-$yr $time";
+- local( $time ) = &main'lstime_to_time( $lsdate );
++ local( $time ) = &main::lstime_to_time( $lsdate );
+ local( $type ) = '?';
+ local( $mode ) = 0;
+
+@@ -1076,7 +1076,7 @@
+ # time is a Un*x time value for the file
+ # type is "f" for a file, "d" for a directory and
+ # "l linkname" for a symlink
+-sub lsparse'line_macos
++sub lsparse::line_macos
+ {
+ local( $fh ) = @_;
+ local( $non_crud, $perm_denied );
+@@ -1087,7 +1087,7 @@
+
+ while( <$fh> ){
+ # Store listing
+- print main'STORE $_;
++ print main::STORE $_;
+
+ # Stomp on carriage returns
+ s/\015//g;
+@@ -1098,7 +1098,7 @@
+ if( /^([\-rwxd]{10}).*\s(\d+\s+)?(\S+)\s+\d+\s*(\w\w\w\s+\d+\s*(\d+:\d+|\d\d\d\d))\s+(.*)\n/ ){
+ local( $kind, $size, $lsdate, $file ) = ($1, $3, $4, $6);
+
+- local( $time ) = &main'lstime_to_time( $lsdate );
++ local( $time ) = &main::lstime_to_time( $lsdate );
+ local( $type ) = '?';
+ local( $mode ) = 0;
+
+@@ -1126,18 +1126,18 @@
+
+
+ # --------------------- parse lsparse log file format
+-# lsparse'line_lsparse() is for input in lsparse's internal form,
++# lsparse::line_lsparse() is for input in lsparse's internal form,
+ # as it might have been written to a log file during a previous
+ # run of a program that uses lsparse. The format is:
+ # filename size time type mode
+ # where size and time are in decimal, mode is in decimal or octal,
+ # and type is one or two words.
+-sub lsparse'line_lsparse
++sub lsparse::line_lsparse
+ {
+ local( $fh ) = @_;
+
+- if( $lsparse'readtime ){
+- alarm( $lsparse'readtime );
++ if( $lsparse::readtime ){
++ alarm( $lsparse::readtime );
+ }
+
+ if( eof( $fh ) ){
+@@ -1147,7 +1147,7 @@
+
+ while( <$fh> ){
+ # Store listing
+- print main'STORE $_;
++ print main::STORE $_;
+
+ if( /^(\S+)\s+(\d+)\s+(\d+)\s+((l\s+)?\S+)\s+(\d+)\n$/ ){
+ # looks good.
+@@ -1174,12 +1174,12 @@
+ # This is the format used at sumex-aim.stanford.edu for the info-mac area.
+ # (see info-mac/help/all-files.txt.gz).
+ #
+-sub lsparse'line_infomac
++sub lsparse::line_infomac
+ {
+ local( $fh ) = @_;
+
+- if( $lsparse'readtime ){
+- alarm( $lsparse'readtime );
++ if( $lsparse::readtime ){
++ alarm( $lsparse::readtime );
+ }
+
+ if( eof( $fh ) ){
+@@ -1189,13 +1189,13 @@
+
+ while( <$fh> ){
+ # Store listing
+- print main'STORE $_;
++ print main::STORE $_;
+
+ next if /^;/;
+ if( /^([l-].)\s*(\d+)\s*(\w\w\w\s+\d+\s*(\d+:\d+|\d\d\d\d))\s+(.*)\n/ ){
+ local( $kind, $size, $lsdate, $file ) = ($1, $2, $3, $5);
+
+- local( $time ) = &main'lstime_to_time( $lsdate );
++ local( $time ) = &main::lstime_to_time( $lsdate );
+
+ # This should be a symlink
+ if( $kind =~ /^l/ && $file =~ /(.*) -> (.*)/ ){
+@@ -1226,12 +1226,12 @@
+ # +i8388621.48638,m848117771,r,s1336, qmsmac.html
+ # +i8388621.88705,m850544954,/, txt
+ #
+-sub lsparse'line_eplf
++sub lsparse::line_eplf
+ {
+ local( $fh ) = @_;
+
+- if( $lsparse'readtime ){
+- alarm( $lsparse'readtime );
++ if( $lsparse::readtime ){
++ alarm( $lsparse::readtime );
+ }
+
+ if( eof( $fh ) ){
+@@ -1243,7 +1243,7 @@
+ s/\015//g;
+
+ # Store listing
+- print main'STORE $_;
++ print main::STORE $_;
+
+ # +i8388621.48638,m848117771,r,s1336, qmsmac.html
+ # +i8388621.88705,m850544954,/, txt
+@@ -1272,12 +1272,12 @@
+ # --------------------- CTAN files list
+ # 22670 Mon Jul 20 12:36:34 1992 pub/tex/biblio/bibtex/contrib/aaai-named.bst
+ #
+-sub lsparse'line_ctan
++sub lsparse::line_ctan
+ {
+ local( $fh ) = @_;
+
+- if( $lsparse'readtime ){
+- alarm( $lsparse'readtime );
++ if( $lsparse::readtime ){
++ alarm( $lsparse::readtime );
+ }
+
+ if( eof( $fh ) ){
+@@ -1287,12 +1287,12 @@
+
+ while( <$fh> ){
+ # Store listing
+- print main'STORE $_;
++ print main::STORE $_;
+
+ if( /^\s*(\d+)\s+(\w\w\w\s+\w\w\w\s+\d+\s+\d+:\d+:\d+\s+\d+)\s+(.*)\n/ ){
+ local( $size, $lsdate, $file ) = ($1, $2, $3);
+
+- local( $time ) = &main'lstime_to_time( $lsdate );
++ local( $time ) = &main::lstime_to_time( $lsdate );
+
+ return( $file, $size, $time, 'f', 0444 );
+ }
+@@ -1317,12 +1317,12 @@
+ # time is a Un*x time value for the file -- this is good from the m/f
+ # type is always "f" for a file
+
+-sub lsparse'line_cms
++sub lsparse::line_cms
+ {
+ local( $fh ) = @_;
+
+- if( $lsparse'readtime ){
+- alarm( $lsparse'readtime );
++ if( $lsparse::readtime ){
++ alarm( $lsparse::readtime );
+ }
+
+ if( eof( $fh ) ){
+@@ -1331,21 +1331,21 @@
+ }
+ while( <$fh> ){
+ # Store listing
+- print main'STORE $_;
++ print main::STORE $_;
+
+ chop;
+ next unless /\d+\/\d+\/\d+\s+\d+:\d+:\d+/;
+ s/^\s+//;
+
+ # Upper case is so ugly
+- if( ! $lsparse'vms_keep_case ){
++ if( ! $lsparse::vms_keep_case ){
+ tr/A-Z/a-z/;
+ }
+
+ local( $fname, $ftype, $fdisk, $rectype, $lrecl, $recs,
+ $blocks, $ldate, $tod ) = split(/\s+/, $_);
+ return( join('.', ($fname, $ftype, $fdisk)),
+- $lrecl * $recs, &main'lstime_to_time( "$ldate $tod" ),
++ $lrecl * $recs, &main::lstime_to_time( "$ldate $tod" ),
+ 'f' );
+ }
+ alarm( 0 );
Home |
Main Index |
Thread Index |
Old Index