Revamped the W32 gettext implementation.
[gnupg.git] / doc / scdaemon.texi
index 8470016..df9d01a 100644 (file)
@@ -1,4 +1,4 @@
-g@c Copyright (C) 2002 Free Software Foundation, Inc.
+@c Copyright (C) 2002 Free Software Foundation, Inc.
 @c This is part of the GnuPG manual.
 @c For copying conditions, see the file gnupg.texi.
 
@@ -8,30 +8,58 @@ g@c Copyright (C) 2002 Free Software Foundation, Inc.
 @cindex command options
 @cindex options, SCDAEMON command
 
-@c man begin DESCRIPTION
-
+@manpage scdaemon.1
+@ifset manverb
+.B scdaemon
+\- Smartcard daemon for the GnuPG system
+@end ifset
+
+@mansect synopsis
+@ifset manverb
+.B  scdaemon
+.RB [ \-\-homedir
+.IR dir ]
+.RB [ \-\-options
+.IR file ]
+.RI [ options ]  
+.B  \-\-server 
+.br
+.B  scdaemon
+.RB [ \-\-homedir
+.IR dir ]
+.RB [ \-\-options
+.IR file ]
+.RI [ options ]  
+.B  \-\-daemon 
+.RI [ command_line ]
+@end ifset
+
+
+@mansect description
 The @command{scdaemon} is a daemon to manage smartcards.  It is usually
-invoked by gpg-agent and in general not used directly.
-
-@c man end
+invoked by @command{gpg-agent} and in general not used directly.
 
-@xref{Option Index}, for an index to GPG-AGENTS's commands and options.
+@manpause
+@xref{Option Index}, for an index to @command{scdaemon}'s commands and
+options.
+@mancont
 
 @menu
 * Scdaemon Commands::      List of all commands.
 * Scdaemon Options::       List of all options.
 * Card applications::      Description of card applications.
+* Scdaemon Configuration:: Configuration files.
 * Scdaemon Examples::      Some usage examples.
 * Scdaemon Protocol::      The protocol the daemon uses.
 @end menu
 
-@c man begin COMMANDS
+@mansect commands
 
 @node Scdaemon Commands
 @section Commands
 
-Commands are not distinguished from options execpt for the fact that
-only one one command is allowed.
+Commands are not distinguished from options except for the fact that
+only one command is allowed.
 
 @table @gnupgtabopt
 @item --version
@@ -65,15 +93,10 @@ may be used to get the name of that extra socket.
 Run the program in the background.  This option is required to prevent
 it from being accidently running in the background.
 
-@item --print-atr
-@opindex print-atr
-This is mainly a debugging command, used to print the ATR
-(Answer-To-Reset) of a card and exit immediately. 
-
 @end table
 
 
-@c man begin OPTIONS
+@mansect options
 
 @node Scdaemon Options
 @section Option Summary
@@ -87,14 +110,8 @@ per-user configuration file.  The default configuration file is named
 @file{scdaemon.conf} and expected in the @file{.gnupg} directory directly
 below the home directory of the user.
 
-@item --homedir @var{dir}
-@opindex homedir
-Set the name of the home directory to @var{dir}. If his option is not
-used, the home directory defaults to @file{~/.gnupg}.  It is only
-recognized when given on the command line.  It also overrides any home
-directory stated through the environment variable @env{GNUPGHOME} or
-(on W32 systems) by means on the Registry entry
-@var{HKCU\Software\GNU\GnuPG:HomeDir}.
+@include opt-homedir.texi
+
 
 @item -v
 @item --verbose
@@ -109,21 +126,21 @@ verbose commands to @command{gpgsm}, such as @samp{-vv}.
 Select the debug level for investigating problems. @var{level} may be
 one of:
 
-   @table @code
-   @item none
-   no debugging at all.
-   @item basic  
-   some basic debug messages
-   @item advanced
-   more verbose debug messages
-   @item expert
-   even more detailed messages
-   @item guru
-   all of the debug messages you can get
-   @end table
+@table @code
+@item none
+no debugging at all.
+@item basic  
+some basic debug messages
+@item advanced
+more verbose debug messages
+@item expert
+even more detailed messages
+@item guru
+all of the debug messages you can get
+@end table
 
 How these messages are mapped to the actual debugging flags is not
-specified and may change with newer releaes of this program. They are
+specified and may change with newer releases of this program. They are
 however carefully selected to best aid in debugging.
 
 @quotation Note
@@ -139,26 +156,26 @@ This option is only useful for debugging and the behaviour may change at
 any time without notice.  FLAGS are bit encoded and may be given in
 usual C-Syntax. The currently defined bits are:
 
-   @table @code
-   @item 0  (1)
-   command I/O
-   @item 1  (2)  
-   values of big number integers 
-   @item 2  (4)
-   low level crypto operations
-   @item 5  (32)
-   memory allocation
-   @item 6  (64)
-   caching
-   @item 7  (128)
-   show memory statistics.
-   @item 9  (512)
-   write hashed data to files named @code{dbgmd-000*}
-   @item 10 (1024)
-   trace Assuan protocol
-   @item 11 (2048)
-   trace APDU I/O to the card.  This may reveal sensitive data.
-   @end table
+@table @code
+@item 0  (1)
+command I/O
+@item 1  (2)  
+values of big number integers 
+@item 2  (4)
+low level crypto operations
+@item 5  (32)
+memory allocation
+@item 6  (64)
+caching
+@item 7  (128)
+show memory statistics.
+@item 9  (512)
+write hashed data to files named @code{dbgmd-000*}
+@item 10 (1024)
+trace Assuan protocol
+@item 11 (2048)
+trace APDU I/O to the card.  This may reveal sensitive data.
+@end table
 
 @item --debug-all
 @opindex debug-all
@@ -191,7 +208,7 @@ dump.  This options enables it and also changes the working directory to
 
 @item --no-detach
 @opindex no-detach
-Don't detach the process from the console.  This is manly usefule for
+Don't detach the process from the console.  This is mainly useful for
 debugging.
 
 @item --log-file @var{file}
@@ -229,6 +246,13 @@ readers might need a string here; run the program in verbose mode to get
 a list of available readers.  The default is then the first reader
 found.
 
+To get a list of available CCID readers you may use this command:
+@smallexample
+echo scd getinfo reader_list | gpg-connect-agent --decode | awk '/^D/ @{print $2@}'
+@end smallexample
+
+
+
 @item --disable-keypad
 @opindex disable-keypad
 Even if a card reader features a keypad, do not try to use it.
@@ -242,7 +266,7 @@ This enables the use of Admin class commands for card applications
 where this is supported.  Currently we support it for the OpenPGP
 card.  Deny is the default.  This commands is useful to inhibit
 accidental access to admin class command which could ultimately lock
-the card through worng PIN numbers.
+the card through wrong PIN numbers.
 
 @item --disable-application @var{name}
 @opindex disable-application
@@ -256,8 +280,7 @@ All the long options may also be given in the configuration file after
 stripping off the two leading dashes.
 
 
-@c man begin CARD APPLICATIONS
-
+@mansect card applications
 @node Card applications
 @section Description of card applications
 
@@ -290,7 +313,7 @@ used by @command{gpgsm}.
 @subsection The DINSIG card application ``dinsig''
 
 This is an application as described in the German draft standard
-@emph{DIN V 66291-1}.  It is intended to be used by cards supporteing
+@emph{DIN V 66291-1}.  It is intended to be used by cards supporting
 the German signature law and its bylaws (SigG and SigV).
 
 @node PKCS#15 Card
@@ -300,10 +323,46 @@ This is common fraqmework for smart card applications.  It is used by
 @command{gpgsm}.
 
 
+@c *******************************************
+@c ***************            ****************
+@c ***************   FILES    ****************
+@c ***************            ****************
+@c *******************************************
+@mansect files
+@node Scdaemon Configuration
+@section Configuration files
+
+There are a few configuration files to control certain aspects of
+@command{scdaemons}'s operation. Unless noted, they are expected in the
+current home directory (@pxref{option --homedir}).
+
+@table @file
+
+@item scdaemon.conf
+@cindex scdaemon.conf
+This is the standard configuration file read by @command{scdaemon} on
+startup.  It may contain any valid long option; the leading two dashes
+may not be entered and the option may not be abbreviated.  This default
+name may be changed on the command line (@pxref{option --options}).
+
+@item scd-event
+@cindex scd-event
+If this file is present and executable, it will be called on veyer card
+reader's status changed. An example of this script is provided with the
+distribution
+
+@item reader_@var{n}.status
+This file is created by @command{sdaemon} to let other applications now
+about reader status changes.  Its use is now deprecated in favor of
+@file{scd-event}.
+
+@end table
+
 
 @c 
 @c  Examples
 @c
+@mansect examples
 @node Scdaemon Examples
 @section Examples
 
@@ -318,6 +377,7 @@ $ scdaemon --server -v
 @c 
 @c  Assuan Protocol
 @c
+@manpause
 @node Scdaemon Protocol
 @section Scdaemon's Assuan Protocol
 
@@ -410,11 +470,12 @@ returned in @var{hexstring_with_keygrip}.
 @subsection Return a certificate
 
 @example
- READCERT @var{hexified_certid}
+ READCERT @var{hexified_certid}|@var{keyid}
 @end example
 
 This function is used to read a certificate identified by
-@var{hexified_certid} from the card.
+@var{hexified_certid} from the card.  With OpenPGP cards the keyid
+@code{OpenPGP.3} may be used to rad the certticate of version 2 cards.
 
 
 @node Scdaemon READKEY
@@ -520,11 +581,12 @@ TO BE WRITTEN.
 @subsection Change PINs.
 
 @example
-   PASSWD [--reset] @var{chvno}
+   PASSWD [--reset] [--nullpin] @var{chvno}
 @end example
   
 Change the PIN or reset the retry counter of the card holder
-verification vector number @var{chvno}.
+verification vector number @var{chvno}.  The option @option{--nullpin}
+is used to initialize the PIN of TCOS cards (6 byte NullPIN only).
 
 
 @node Scdaemon CHECKPIN
@@ -586,7 +648,7 @@ Send an APDU to the current reader.  This command bypasses the high
 level functions and sends the data directly to the card.
 @var{hexstring} is expected to be a proper APDU.  If @var{hexstring} is
 not given no commands are send to the card; However the command will
-implictly check whether the card is ready for use.
+implicitly check whether the card is ready for use.
 
 Using the option @code{--atr} returns the ATR of the card as a status
 message before any data like this:
@@ -599,3 +661,11 @@ Using the option @code{--more} handles the card status word MORE_DATA
 
 
 
+@mansect see also
+@ifset isman
+@command{gpg-agent}(1),
+@command{gpgsm}(1), 
+@command{gpg2}(1)
+@end ifset
+@include see-also-note.texi
+