Fix CVE-2017-6891 in minitasn1 code
[platform/upstream/gnutls.git] / doc / invoke-srptool.texi
1 @node srptool Invocation
2 @subsubsection Invoking srptool
3 @pindex srptool
4 @ignore
5 #  -*- buffer-read-only: t -*- vi: set ro:
6 #
7 # DO NOT EDIT THIS FILE   (invoke-srptool.texi)
8 #
9 # It has been AutoGen-ed
10 # From the definitions    ../src/srptool-args.def
11 # and the template file   agtexi-cmd.tpl
12 @end ignore
13
14
15 Simple program that emulates the programs in the Stanford SRP (Secure
16 Remote Password) libraries using GnuTLS.  It is intended for use in  places
17 where you don't expect SRP authentication to be the used for system users.
18
19 In  brief,  to use SRP you need to create two files. These are the password
20 file that holds the users and the verifiers associated with  them  and  the
21 configuration file to hold the group parameters (called tpasswd.conf).
22
23 This section was generated by @strong{AutoGen},
24 using the @code{agtexi-cmd} template and the option descriptions for the @code{srptool} program.
25 This software is released under the GNU General Public License, version 3 or later.
26
27
28 @anchor{srptool usage}
29 @subsubheading srptool help/usage (@option{--help})
30 @cindex srptool help
31
32 This is the automatically generated usage text for srptool.
33
34 The text printed is the same whether selected with the @code{help} option
35 (@option{--help}) or the @code{more-help} option (@option{--more-help}).  @code{more-help} will print
36 the usage text by passing it through a pager program.
37 @code{more-help} is disabled on platforms without a working
38 @code{fork(2)} function.  The @code{PAGER} environment variable is
39 used to select the program, defaulting to @file{more}.  Both will exit
40 with a status code of 0.
41
42 @exampleindent 0
43 @example
44 srptool - GnuTLS SRP tool
45 Usage:  srptool [ -<flag> [<val>] | --<name>[@{=| @}<val>] ]...
46
47    -d, --debug=num            Enable debugging
48                                 - it must be in the range:
49                                   0 to 9999
50    -i, --index=num            specify the index of the group parameters in tpasswd.conf to use
51    -u, --username=str         specify a username
52    -p, --passwd=str           specify a password file
53    -s, --salt=num             specify salt size
54        --verify               just verify the password.
55    -v, --passwd-conf=str      specify a password conf file.
56        --create-conf=str      Generate a password configuration file.
57    -v, --version[=arg]        output version information and exit
58    -h, --help                 display extended usage information and exit
59    -!, --more-help            extended usage information passed thru pager
60
61 Options are specified by doubled hyphens and their name or by a single
62 hyphen and the flag character.
63
64 Simple program that emulates the programs in the Stanford SRP (Secure
65 Remote Password) libraries using GnuTLS.  It is intended for use in places
66 where you don't expect SRP authentication to be the used for system users.
67
68 In brief, to use SRP you need to create two files.  These are the password
69 file that holds the users and the verifiers associated with them and the
70 configuration file to hold the group parameters (called tpasswd.conf).
71
72 @end example
73 @exampleindent 4
74
75 @anchor{srptool debug}
76 @subsubheading debug option (-d)
77
78 This is the ``enable debugging'' option.
79 This option takes a number argument.
80 Specifies the debug level.
81 @anchor{srptool verify}
82 @subsubheading verify option
83
84 This is the ``just verify the password.'' option.
85 Verifies the password provided against the password file.
86 @anchor{srptool passwd-conf}
87 @subsubheading passwd-conf option (-v)
88
89 This is the ``specify a password conf file.'' option.
90 This option takes a string argument.
91 Specify a filename or a PKCS #11 URL to read the CAs from.
92 @anchor{srptool create-conf}
93 @subsubheading create-conf option
94
95 This is the ``generate a password configuration file.'' option.
96 This option takes a string argument.
97 This generates a password configuration file (tpasswd.conf)
98 containing the required for TLS parameters.
99 @anchor{srptool exit status}
100 @subsubheading srptool exit status
101
102 One of the following exit values will be returned:
103 @table @samp
104 @item 0 (EXIT_SUCCESS)
105 Successful program execution.
106 @item 1 (EXIT_FAILURE)
107 The operation failed or the command syntax was not valid.
108 @end table
109 @anchor{srptool See Also}
110 @subsubheading srptool See Also
111     gnutls-cli-debug (1), gnutls-serv (1), srptool (1), psktool (1), certtool (1)
112 @anchor{srptool Examples}
113 @subsubheading srptool Examples
114 To create @file{tpasswd.conf} which holds the g and n values for SRP protocol
115 (generator and a large prime), run:
116 @example
117 $ srptool --create-conf /etc/tpasswd.conf
118 @end example
119
120 This command will create @file{/etc/tpasswd} and will add user 'test' (you
121 will also be prompted for a password). Verifiers are stored by default
122 in the way libsrp expects.
123 @example
124 $ srptool --passwd /etc/tpasswd --passwd-conf /etc/tpasswd.conf -u test
125 @end example
126
127
128 This command will check against a password. If the password matches
129 the one in @file{/etc/tpasswd} you will get an ok.
130 @example
131 $ srptool --passwd /etc/tpasswd --passwd\-conf /etc/tpasswd.conf --verify -u test
132 @end example