1 # Copyright (C) 2002, 2003, 2004, 2005 Simon Josefsson.
3 # This file is part of GNU SASL.
5 # GNU SASL is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 2, or (at your option)
10 # GNU SASL is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with GNU SASL; if not, write to the Free Software Foundation,
17 # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
19 purpose "Authenticate user to a server using Simple Authentication and
20 Security Layer. Currently IMAP and SMTP servers are supported. This
21 is a command line interface for the GNU SASL library."
24 option "client" c "Act as client." flag on
25 option "server" s "Act as server." flag off
26 option "client-mechanisms" - "Write name of supported client mechanisms separated by space to stdout." flag off
27 option "server-mechanisms" - "Write name of supported server mechanisms separated by space to stdout." flag off
29 section "Network options"
30 option "connect" - "Connect to TCP server and negotiate on stream instead of stdin/stdout. PORT is the protocol service, or an integer denoting the port, and defaults to 143 (imap) if not specified. Also sets the --hostname default." string typestr="HOST[:PORT]" no
32 section "Generic options"
33 option "application-data" d "After authentication, read data from stdin and run it through the mechanism's security layer and print it base64 encoded to stdout. The default is to terminate after authentication." flag on
34 option "imap" - "Use a IMAP-like logon procedure (client only). Also sets the --service default to 'imap'." flag off
35 option "smtp" - "Use a SMTP-like logon procedure (client only). Also sets the --service default to 'smtp'." flag off
36 option "mechanism" m "Mechanism to use." string no
37 option "no-client-first" - "Disallow client to send data first (client only)." flag off
39 section "SASL mechanism options (they are prompted for when required)"
40 option "anonymous-token" n "Token for anonymous authentication, usually mail address (ANONYMOUS only)." string no
41 option "authentication-id" a "Identity of credential owner." string no
42 option "authorization-id" z "Identity to request service for." string no
43 option "password" p "Password for authentication (insecure for non-testing purposes)." string no
44 option "realm" r "Realm. Defaults to hostname." string no
45 option "maxbuf" x "Indicate maximum buffer size (DIGEST-MD5 only)." int typestr="NUMBER" no
46 option "passcode" - "Passcode for authentication (SECURID only)." string typestr="NUMBER" no
47 option "service" - "Set the requested service name (should be a registered GSSAPI host based service name)." string no
48 option "hostname" - "Set the name of the server with the requested service." string no
49 option "service-name" - "Set the generic server name in case of a replicated server (DIGEST-MD5 only)." string no
50 option "enable-cram-md5-validate" - "Validate CRAM-MD5 challenge and response interactively." flag off
51 option "disable-cleartext-validate" - "Disable cleartext validate hook, forcing server to prompt for password." flag off
52 option "quality-of-protection" - "How application payload will be protected. 'auth' means no protection, 'auth-int' means integrity protection, 'auth-conf' means integrity and confidentialiy protection. Currently only used by DIGEST-MD5, where the default is 'auth-conf'." string typestr="TYPE" no
54 section "STARTTLS options"
55 option "starttls" - "Force use of STARTTLS. The default is to use STARTTLS when available." flag off
56 option "no-starttls" - "Unconditionally disable STARTTLS." flag off
57 option "x509-ca-file" - "File containing one or more X.509 Certificate Authorities certificates in PEM format, used to verify the certificate received from the server. If not specified, no verification of the remote server certificate will be done." string typestr="FILE" no
58 option "x509-cert-file" - "File containing client X.509 certificate in PEM format. Used together with --x509-key-file to specify the certificate/key pair." string typestr="FILE" no
59 option "x509-key-file" - "Private key for the client X.509 certificate in PEM format. Used together with --x509-key-file to specify the certificate/key pair." string typestr="FILE" no
61 section "Other options"
62 option "verbose" - "Produce verbose output." flag off
63 option "quiet" - "Don't produce any diagnostic output." flag off