NAME
csv2yapet - convert CSV file to YAPET file
SYNOPSIS
csv2yapet [[-c] | [-h] | [-V]] [-p {password}] [-q] [-s {separator}]
{src} {dst}
DESCRIPTION
The csv2yapet utility converts a CSV file src to an YAPET file dst. The
expected columns and column order of the CSV file is explained in the
section called “Source File Format”.
For each successfully imported source file record a corresponding YAPET
password record will be generated in the resulting file.
After the successful conversion the file dst can be opened with
yapet(1).
The file suffix .pet is appended to the output file dst if not provided
as part of the file path.
The password either entered on the standard input or provided as
command line argument using the -p option is used to encrypt the
destination file dst and must be used to decrypt the file content when
opening the file in yapet(1).
csv2yapet will not overwrite existing destination files. If the
destination file already exists csv2yapet will abort the conversion.
Errors during the conversion process will be displayed unless the -q
option is provided.
Source File Format
The source file src to be converted has to be organized as CSV file.
The default character for delimiting the fields is ´,´ (comma) unless
specified differently on the command line providing the -s option
(refer to the section called “OPTIONS”).
Fields containing the field separator character have to be enclosed in
double quotes (").
Double quote characters to be converted literally, has each to be
preceded by another double quote character (see the section called
“EXAMPLES”).
The following table will describe the fields of the source CSV file as
expected by csv2yapet:
Table 1. Source file format
+-----------------------------+----------------------------------------+
| Column # | YAPET record field |
+-----------------------------+----------------------------------------+
| 1 | Name |
+-----------------------------+----------------------------------------+
| 2 | Host |
+-----------------------------+----------------------------------------+
| 3 | Username |
+-----------------------------+----------------------------------------+
| 4 | Password |
+-----------------------------+----------------------------------------+
| 5 | Comment |
+-----------------------------+----------------------------------------+
See the section called “EXAMPLES” for an example CSV file.
OPTIONS
The following options are supported:
-c, --copyright
Show the copyright information.
-h, --help
Print a help text.
-p password, --password password
The password to be used to encrypt the YAPET file. If csv2yapet is
invoked without this option, it will prompt for the password on the
standard input.
-q, --quiet
Enable the quiet mode. No details about errors are reported.
-s separator, --separator separator
Change the default field separator ´,´ (comma) to the single
character separator.
-V, --version
Show the version of csv2yapet.
OPERANDS
The following operands are required:
src
The source CSV file to be converted. It must be of the format
described in the section called “Source File Format”.
dst
The resulting YAPET file holding the content of src encrypted. This
file must not exist prior the conversion process, else csv2yapet
will not start the conversion and abort.
EXAMPLES
Example 1. An example of a CSV file accepted by csv2yapet.
The following example shows an excerpt of a CSV file as accepted for
conversion by csv2yapet.
As the second line shows, fields can be blank but the separator may not
be omitted.
ssh host,host.example.org,johndoe,secret,Linux machine
mail account,imap.email.org,john_doe,secret,
...
Example 2. An example of a CSV file accepted by csv2yapet using double
quotes.
The following example shows an excerpt of a CSV file as accepted for
conversion by csv2yapet.
The first line demonstrates how to double quote fields containing the
separator character. The second line shows how to literally convert
double quote characters.
"ssh, ftp, and http server",server.example.org,johndoe,secret,Linux machine
mail account,imap.email.org,john_doe,secret,"John ""the Unknown"" Doe"
...
Example 3. Invoking csv2yapet.
The following example shows how to invoke csv2yapet in order to convert
a CSV file to an YAPET file. If the -s option is not given, csv2yapet
will ask for a password as shown:
$ csv2yapet passwords.csv passwords.pet
Please enter the password for passwords.pet:
Please re-type the password:
passwords.pet successfully created.
$
EXIST STATUS
0
No error.
1
Wrong command line arguments provided.
2
The passwords provided on the standard input do not match.
3
The destination file dst already exists.
4
An unexpected error occurred.
BUGS
Please report bugs to the author (see the section called “AUTHOR”), or
(preferably) point your browser to http://bugs.guengel.ch[1] and create
a bug report.
AUTHOR
Rafael Ostertag rafi@guengel.ch
SEE ALSO
yapet(1)
LICENSE
csv2yapet is part of YAPET.
YAPET -- Yet Another Password Encryption Tool
Copyright (C) 2008, 2009 Rafael Ostertag rafi@guengel.ch
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program. If not, see http://www.gnu.org/licenses/.
Additional permission under GNU GPL version 3 section 7. If you modify
this program, or any covered work, by linking or combining it with the
OpenSSL project´s OpenSSL library (or a modified version of that
library), containing parts covered by the terms of the OpenSSL or
SSLeay licenses, Rafael Ostertag grants you additional permission to
convey the resulting work. Corresponding Source for a non-source form
of such a combination shall include the source code for the parts of
OpenSSL used as well as that of the covered work.
COPYRIGHT
Copyright © 2008, 2009 Rafael Ostertag <rafi@guengel.ch>
NOTES
1. http://bugs.guengel.ch
http://bugs.guengel.ch/