This is info/swbis_swign.info, produced by makeinfo version 4.7 from
stdin.


File: swbis_swign.info,  Node: Top,  Next: NAME,  Up: (dir)

1 swign" "1
***********

* Menu:

* NAME::
* SYNOPSIS::
* DESCRIPTION::
* OPTIONS::
* EXTERNAL EFFECTS::
* TESTING::
* ENVIRONMENT::
* RETURN VALUE::
* FILES::
* SEE ALSO::
* IDENTIFICATION::
* BUGS::


File: swbis_swign.info,  Node: NAME,  Next: SYNOPSIS,  Prev: Top,  Up: Top

1.1 NAME
========

swign -- Tar archive signing utility for source distributions.


File: swbis_swign.info,  Node: SYNOPSIS,  Next: DESCRIPTION,  Prev: NAME,  Up: Top

1.2 SYNOPSIS
============

     swign [options] [-u gpg-name] [--homedir=gpg-homedir] @-

     swign -S [options] [-u gpg-name] [--homedir=gpg-homedir]


File: swbis_swign.info,  Node: DESCRIPTION,  Next: OPTIONS,  Prev: SYNOPSIS,  Up: Top

1.3 DESCRIPTION
===============

swign loads a signed metadata catalog file into the current directory
and then, using GNU tar and the distribution file list, writes the
archive to stdout.  The contents of the archive is the contents of the
current directory ".".  The pathnames in the archive are prefixed by
the directory name of ".".  The owner and group of all the files in the
emitted archive are specified by the PSF file and command line options.

If a PSF is provided using the -s option then the specified ownership
must be consistent with the 'swign' command line options for ownerships
otherwise the signature will not be valid.  The default ownerships for
all the files are the current user's owner and group.  If the -o (or
-g) option is used with a empty string for the option arg then the file
ownerships of the source files are used.  This script assumes GNU tar
is installed.

After writing the ./catalog/ file and before writing the archive, the
file list stored in ./catalog/dfiles/files is compared to the current
directory contents, if any difference is found the archive is not
written and error returned.


File: swbis_swign.info,  Node: OPTIONS,  Next: EXTERNAL EFFECTS,  Prev: DESCRIPTION,  Up: Top

1.4 OPTIONS
===========

--help

     show help.


--psf

     show the PSF to stdout, and then exit.


-u, --local-user name

     Use name as the user ID to sign.


--homedir=DIR

     Set the name of the home directory to DIR.  If not specified then
     use "~/.gnupg".


-s, --source=FILE

     Specify a PSF or '-' for stdin.  If this is not given then the
     internally generated PSF is used.


-T, --show-names-only

     show some info (for help and debugging) and exit.


-t, --run-sanity-check

     Instead of writing stdout, write the archive to
     ../packageDirName.swigntest.tar.gz and run some sanity tests.


-S, --sign-this

     Write the ./catalog/ file containing the digest and signature into
     "." and then exit without writing the archive to stdout.


-D, --with-checksig FILE

     Include the checksig control script sourced from FILE.


-o, --owner OWNER

     Specify owner.  Use an empty string "" to specify the source file
     owner.


-g, --group GROUP

     Specify group.  Use an empty string "" to specify the source file
     group.


-x format

     Specify the archive format.  Must be one of the formats of
     swpackage.


@-

     Target, only supported target is standard output.



File: swbis_swign.info,  Node: EXTERNAL EFFECTS,  Next: TESTING,  Prev: OPTIONS,  Up: Top

1.5 EXTERNAL EFFECTS
====================

The program will remove and replace a file in "." named ./catalog/.

When using the '-t' option an archive file is written to
../packageDirName.swigntest.tar.gz


File: swbis_swign.info,  Node: TESTING,  Next: ENVIRONMENT,  Prev: EXTERNAL EFFECTS,  Up: Top

1.6 TESTING
===========

After running successfully with options -S  and -D FILE  the following
should be true (report no error).

               swverify --checksig .


Similarly,

               swign -u gpgname @- | swverify --checksig -

If a checksig script is included then you should unpack the package at a
new location and run  swverify --checksig "." in the new location.

Swign can be used to sign any directory using the file ownerships of
the source files.  The following commands act as a test of swpackage's
ability to generate an archive identical to GNU tar.  (Note:
checksig.sh is found in ./bin of the source distribution.)

            swign -D $HOME/checksig.sh -u "Test User" -o "" -g "" -S;
            swverify -d @.


File: swbis_swign.info,  Node: ENVIRONMENT,  Next: RETURN VALUE,  Prev: TESTING,  Up: Top

1.7 ENVIRONMENT
===============

The environment variable SWPACKAGEPASSFD sets the passphrase file
descriptor.


File: swbis_swign.info,  Node: RETURN VALUE,  Next: FILES,  Prev: ENVIRONMENT,  Up: Top

1.8 RETURN VALUE
================

0 on success, non-zero on failure.


File: swbis_swign.info,  Node: FILES,  Next: SEE ALSO,  Prev: RETURN VALUE,  Up: Top

1.9 FILES
=========

\<path\>/catalog/


File: swbis_swign.info,  Node: SEE ALSO,  Next: IDENTIFICATION,  Prev: FILES,  Up: Top

1.10 SEE ALSO
=============

info swbis

swpackage(8), gpg


File: swbis_swign.info,  Node: IDENTIFICATION,  Next: BUGS,  Prev: SEE ALSO,  Up: Top

1.11 IDENTIFICATION
===================

      swign(1): The source directory signing utility of the swbis project.
      Author: J. Lowe jhlowe@acm.org
      Version: 0.473
      Date: 2005-11-05
      Copying: GNU Free Documentation License


File: swbis_swign.info,  Node: BUGS,  Prev: IDENTIFICATION,  Up: Top

1.12 BUGS
=========

If a directory is signed using the '-S' option and has a file path
greater than 99 chars in length then it will be unverifiable if the
'ustar0' format and GNU tar 1.13.25 was used.

Verification of the directory form of a distribution (i.e. the
installed tarball path name prefix) such as running 'swverify -d @.'
after running 'swign -S' will fail if the order of directory entries is
not compatible with traditional Unix file system directory entry
ordering.  This incompatibility may be present in the Ext3, reiserFS,
and DarwinOS et.al file systems.

Use of the '-o USER -g GROUP' is dependent on the checksig script.  The
default file ownership policies of this program are suited to packaged
products where file user and group ownerships are not a critical
feature.



Tag Table:
Node: Top77
Node: NAME342
Node: SYNOPSIS503
Node: DESCRIPTION742
Node: OPTIONS1960
Node: EXTERNAL EFFECTS3290
Node: TESTING3588
Node: ENVIRONMENT4427
Node: RETURN VALUE4632
Node: FILES4794
Node: SEE ALSO4922
Node: IDENTIFICATION5072
Node: BUGS5405

End Tag Table
