diff options
Diffstat (limited to 'bin/raps2')
| -rwxr-xr-x | bin/raps2 | 53 | 
1 files changed, 48 insertions, 5 deletions
| @@ -11,15 +11,15 @@ use File::BaseDir qw(data_files data_home);  use File::Slurp qw(read_dir);  use Getopt::Long qw(:config no_ignore_case); -my ( $default_cost, $echo_generated, $pwgen_cmd ); +my ( $default_cost, $no_echo, $pwgen_cmd );  our $VERSION = '0.50';  GetOptions(  	'c|cost=i'      => \$default_cost, -	'e|echo'        => \$echo_generated, +	'E|no-echo'     => \$no_echo,  	'h|help'        => sub { cmd_help(0) }, -	'p|pwgen_cmd=s' => \$pwgen_cmd, +	'p|pwgen-cmd=s' => \$pwgen_cmd,  	'V|version'     => sub { say "raps2 version ${VERSION}"; exit 0 },  ) or cmd_help(1); @@ -79,7 +79,7 @@ sub cmd_add {  			exit 3;  		} -		if ($echo_generated) { +		if ( not $no_echo ) {  			$raps2->ui->output( [ 'Generated password', $pass ] );  		}  	} @@ -294,6 +294,12 @@ and Login will be saved as plaintext, Extra is encrypted like the password.  Adds I<account> to the store.  It will ask you for the store's master  password, some metadata and the new password and then store them. +If you do not provide a password (that is, leave both "Password" and "Verify" +lines blank), B<raps2> will use the B<pwgen> command to create one for you and +print the generated password on stdout. + +See also the B<-c>, B<-E> and B<-p> options. +  =item B<del> I<account>  Remove I<account> from the store. @@ -330,7 +336,36 @@ Show version information  =head1 OPTIONS -None. +=over + +=item B<-c>, B<--cost> I<int> + +Key setup cost to use for new passwords, overrides the configuration file. +Only makes sense with B<raps2 add>. + +Please be aware that the key setup time is an exponential function. That is, +when you increment the cost by 1, the key setup time will double.  See +Crypt::Eksblowfish(3pm). + +Default: 12 + +=item B<-E>, B<--no-echo> + +When using the pwgen functionality of B<raps2 add>, do not print the generated +password on stdout. + +=item B<-p>, B<--pwgen-cmd> I<command> + +When the user does not enter a password in B<raps2 add>, it will execute +I<command> to create one. The first line of output is taken as password. + +Default: pwgen -s 23 1 + +=item B<-V>, B<--version> + +Show version information. + +=back  =head1 EXIT STATUS @@ -340,6 +375,9 @@ zero on success, non-zero otherwise.  raps2 saves the master password hash in F<~/.config/raps2/password>. +The configuation (key setup cost and pwgen command) is stored in +F<~/.config/raps2/defaults> in an INI-like format. +  Additional encrypted passwords are stored in F<~/.local/share/raps2/>.  These directories can be changed by setting the B<XDG_CONFIG_HOME> and @@ -349,6 +387,8 @@ B<XDG_DATA_HOME> environment variables.  =over +=item * Config::Tiny +  =item * Crypt::CBC  =item * Crypt::Eksblowfish @@ -368,6 +408,9 @@ B<XDG_DATA_HOME> environment variables.  This is alpha software, the store format may change without further notice.  Backwards-compatibility is not guaranteed. +When running for the first time, raps2 will ask for the master passphrase +three times. Two would be better. +  =head1 AUTHOR  Copyright (C) 2011 by Daniel Friesel E<lt>derf@finalrewind.orgE<gt> | 
