One Hat Cyber Team
Your IP :
216.73.216.14
Server IP :
194.44.31.54
Server :
Linux zen.imath.kiev.ua 4.18.0-553.77.1.el8_10.x86_64 #1 SMP Fri Oct 3 14:30:23 UTC 2025 x86_64
Server Software :
Apache/2.4.37 (Rocky Linux) OpenSSL/1.1.1k
PHP Version :
5.6.40
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
backup
/
oldserver
/
2
/
bin
/
Edit File:
cpan-upload
#!/usr/bin/perl use strict; use warnings; package cpan_upload; # PODNAME: cpan-upload # ABSTRACT: upload a distribution to the CPAN use CPAN::Uploader; use Getopt::Long::Descriptive 0.084; #pod =head1 USAGE #pod #pod usage: cpan-upload [options] file-to-upload-1 [ file-to-upload-2 ... ] #pod -v --verbose enable verbose logging #pod -h --help display this help message #pod --dry-run do not actually upload anything #pod #pod -u --user your PAUSE username #pod -p --password the password to your PAUSE account #pod -d --directory a dir in your CPAN space in which to put the file #pod --http-proxy URL of the http proxy to use in uploading #pod --ignore-errors instead of aborting, continue to next file on error #pod #pod =head1 CONFIGURATION #pod #pod If you have a C<.pause> file in your home directory, it will be checked for a #pod username and password. It should look like this: #pod #pod user EXAMPLE #pod password your-secret-password #pod #pod You can GnuPG-encrypt this file if you wish: #pod #pod # Follow the prompts, setting your key as the "recipient" #pod # Use ^D once you've finished typing out your authentication information #pod gpg -ea > $HOME/.pause #pod # OR, encrypt a file you already created: #pod gpg -ea $HOME/.pause && mv $HOME/.pause{.asc,} #pod #pod =head1 SEE ALSO #pod #pod =over 4 #pod #pod =item L<CPAN::Uploader> #pod #pod =item L<Config::Identity> #pod #pod =back #pod #pod =cut my %arg; # This nonsensical hack is to cope with Module::Install wanting to call # cpan-upload -verbose; it should be made to use CPAN::Uploader instead. $ARGV[0] = '--verbose' if @ARGV == 2 and $ARGV[0] eq '-verbose'; # Process arguments my ($opt, $usage) = describe_options( "usage: %c [options] file-to-upload", [ "verbose|v" => "enable verbose logging" ], [ "help|h" => "display this help message" ], [ "dry-run" => "do not actually upload anything" ], [], [ "user|u=s" => "your PAUSE username" ], [ "password|p=s" => "the password to your PAUSE account" ], [ "directory|d=s" => "a dir in your CPAN space in which to put the files" ], [ "http-proxy=s" => "URL of the http proxy to use in uploading" ], [ "ignore-errors" => "instead of aborting, continue to next file on error" ], [ "config|c=s" => "config file to use; defaults to ~/.pause" ], ); if ($opt->help) { print $usage->text; exit; } my $from_file = CPAN::Uploader->read_config_file($opt->config); die "Please provide at least one file name.\n" . $usage unless @ARGV; $arg{user} = $opt->_specified('user') ? $opt->user : $from_file->{user}; die "Please provide a value for --user\n" unless defined $arg{user}; $arg{user} = uc $arg{user}; $arg{password} = $opt->password if $opt->_specified('password'); if ( ! $arg{password} and defined $from_file->{user} and ($arg{user} eq uc $from_file->{user}) ) { $arg{password} = $from_file->{password}; } $arg{debug} = 1 if $opt->verbose; $arg{subdir} = $opt->directory if defined $opt->directory; $arg{ $_ } = $opt->$_ for grep { defined $opt->$_ } qw(dry_run http_proxy); if (! $arg{password}) { require Term::ReadKey; local $| = 1; print "PAUSE Password: "; Term::ReadKey::ReadMode('noecho'); chop($arg{password} = <STDIN>); Term::ReadKey::ReadMode('restore'); print "\n"; } foreach my $file (@ARGV) { my $ok = eval { CPAN::Uploader->upload_file( $file, \%arg, ); 1; }; unless ($ok) { my $error = $@; die $@ unless $opt->ignore_errors; warn $@; } } __END__ =pod =encoding UTF-8 =head1 NAME cpan-upload - upload a distribution to the CPAN =head1 VERSION version 0.103008 =head1 USAGE usage: cpan-upload [options] file-to-upload-1 [ file-to-upload-2 ... ] -v --verbose enable verbose logging -h --help display this help message --dry-run do not actually upload anything -u --user your PAUSE username -p --password the password to your PAUSE account -d --directory a dir in your CPAN space in which to put the file --http-proxy URL of the http proxy to use in uploading --ignore-errors instead of aborting, continue to next file on error =head1 CONFIGURATION If you have a C<.pause> file in your home directory, it will be checked for a username and password. It should look like this: user EXAMPLE password your-secret-password You can GnuPG-encrypt this file if you wish: # Follow the prompts, setting your key as the "recipient" # Use ^D once you've finished typing out your authentication information gpg -ea > $HOME/.pause # OR, encrypt a file you already created: gpg -ea $HOME/.pause && mv $HOME/.pause{.asc,} =head1 SEE ALSO =over 4 =item L<CPAN::Uploader> =item L<Config::Identity> =back =head1 AUTHOR Ricardo SIGNES <rjbs@cpan.org> =head1 COPYRIGHT AND LICENSE This software is copyright (c) 2015 by Ricardo SIGNES. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. =cut
Simpan