Blame src/cli-debug-args.def

Packit 549fdc
AutoGen Definitions options;
Packit 549fdc
prog-name     = gnutls-cli-debug;
Packit 549fdc
prog-title    = "GnuTLS debug client";
Packit 549fdc
prog-desc     = "Simple client program to check TLS server capabilities.";
Packit 549fdc
short-usage   = "Usage: gnutls-cli-debug [options] hostname\n"
Packit 549fdc
                "gnutls-cli --help for usage instructions.\n";
Packit 549fdc
explain       = "";
Packit 549fdc
detail        = "TLS debug client. It sets up multiple TLS connections to 
Packit 549fdc
a server and queries its capabilities. It was created to assist in debugging 
Packit 549fdc
GnuTLS, but it might be useful to extract a TLS server's capabilities.
Packit 549fdc
It connects to a TLS server, performs tests and print the server's 
Packit 549fdc
capabilities. If called with the `-V' parameter more checks will be performed.
Packit 549fdc
Can be used to check for servers with special needs or bugs.";
Packit 549fdc
reorder-args;
Packit 549fdc
argument;
Packit 549fdc
Packit 549fdc
#define  VERBOSE_OPT 1
Packit 549fdc
#include args-std.def
Packit 549fdc
Packit 549fdc
flag = {
Packit 549fdc
    name      = port;
Packit 549fdc
    value     = p;
Packit 549fdc
    arg-type  = number;
Packit 549fdc
    arg-range = "0 -> 65536";
Packit 549fdc
    descrip   = "The port to connect to";
Packit 549fdc
    doc      = "";
Packit 549fdc
};
Packit 549fdc
Packit 549fdc
flag = {
Packit 549fdc
    name      = app-proto;
Packit 549fdc
    aliases   = starttls-proto;
Packit 549fdc
};
Packit 549fdc
Packit 549fdc
flag = {
Packit 549fdc
    name      = starttls-proto;
Packit 549fdc
    arg-type  = string;
Packit 549fdc
    descrip   = "The application protocol to be used to obtain the server's certificate (https, ftp, smtp, imap, ldap, xmpp, lmtp, pop3, nntp, sieve, postgres)";
Packit 549fdc
    doc      = "Specify the application layer protocol for STARTTLS. If the protocol is supported, gnutls-cli will proceed to the TLS negotiation.";
Packit 549fdc
};
Packit 549fdc
Packit 549fdc
Packit 549fdc
doc-section = {
Packit 549fdc
  ds-type   = 'SEE ALSO'; // or anything else
Packit 549fdc
  ds-format = 'texi';      // or texi or mdoc format
Packit 549fdc
  ds-text   = <<-_EOText_
Packit 549fdc
gnutls-cli(1), gnutls-serv(1)
Packit 549fdc
_EOText_;
Packit 549fdc
};
Packit 549fdc
Packit 549fdc
doc-section = {
Packit 549fdc
  ds-type = 'EXAMPLES';
Packit 549fdc
  ds-format = 'texi';
Packit 549fdc
  ds-text   = <<-_EOF_
Packit 549fdc
@example
Packit 549fdc
$ gnutls-cli-debug localhost
Packit 549fdc
GnuTLS debug client 3.5.0
Packit 549fdc
Checking localhost:443
Packit 549fdc
                             for SSL 3.0 (RFC6101) support... yes
Packit 549fdc
                        whether we need to disable TLS 1.2... no
Packit 549fdc
                        whether we need to disable TLS 1.1... no
Packit 549fdc
                        whether we need to disable TLS 1.0... no
Packit 549fdc
                        whether %NO_EXTENSIONS is required... no
Packit 549fdc
                               whether %COMPAT is required... no
Packit 549fdc
                             for TLS 1.0 (RFC2246) support... yes
Packit 549fdc
                             for TLS 1.1 (RFC4346) support... yes
Packit 549fdc
                             for TLS 1.2 (RFC5246) support... yes
Packit 549fdc
                                  fallback from TLS 1.6 to... TLS1.2
Packit 549fdc
                        for RFC7507 inappropriate fallback... yes
Packit 549fdc
                                     for HTTPS server name... Local
Packit 549fdc
                               for certificate chain order... sorted
Packit 549fdc
                  for safe renegotiation (RFC5746) support... yes
Packit 549fdc
                     for Safe renegotiation support (SCSV)... no
Packit 549fdc
                    for encrypt-then-MAC (RFC7366) support... no
Packit 549fdc
                   for ext master secret (RFC7627) support... no
Packit 549fdc
                           for heartbeat (RFC6520) support... no
Packit 549fdc
                       for version rollback bug in RSA PMS... dunno
Packit 549fdc
                  for version rollback bug in Client Hello... no
Packit 549fdc
            whether the server ignores the RSA PMS version... yes
Packit 549fdc
whether small records (512 bytes) are tolerated on handshake... yes
Packit 549fdc
    whether cipher suites not in SSL 3.0 spec are accepted... yes
Packit 549fdc
whether a bogus TLS record version in the client hello is accepted... yes
Packit 549fdc
         whether the server understands TLS closure alerts... partially
Packit 549fdc
            whether the server supports session resumption... yes
Packit 549fdc
                      for anonymous authentication support... no
Packit 549fdc
                      for ephemeral Diffie-Hellman support... no
Packit 549fdc
                   for ephemeral EC Diffie-Hellman support... yes
Packit 549fdc
                    ephemeral EC Diffie-Hellman group info... SECP256R1
Packit 549fdc
                  for AES-128-GCM cipher (RFC5288) support... yes
Packit 549fdc
                  for AES-128-CCM cipher (RFC6655) support... no
Packit 549fdc
                for AES-128-CCM-8 cipher (RFC6655) support... no
Packit 549fdc
                  for AES-128-CBC cipher (RFC3268) support... yes
Packit 549fdc
             for CAMELLIA-128-GCM cipher (RFC6367) support... no
Packit 549fdc
             for CAMELLIA-128-CBC cipher (RFC5932) support... no
Packit 549fdc
                     for 3DES-CBC cipher (RFC2246) support... yes
Packit 549fdc
                  for ARCFOUR 128 cipher (RFC2246) support... yes
Packit 549fdc
                                       for MD5 MAC support... yes
Packit 549fdc
                                      for SHA1 MAC support... yes
Packit 549fdc
                                    for SHA256 MAC support... yes
Packit 549fdc
                              for ZLIB compression support... no
Packit 549fdc
                     for max record size (RFC6066) support... no
Packit 549fdc
                for OCSP status response (RFC6066) support... no
Packit 549fdc
              for OpenPGP authentication (RFC6091) support... no
Packit 549fdc
@end example
Packit 549fdc
Packit 549fdc
You could also use the client to debug services with starttls capability.
Packit 549fdc
@example
Packit 549fdc
$ gnutls-cli-debug --starttls-proto smtp --port 25 localhost
Packit 549fdc
@end example
Packit 549fdc
Packit 549fdc
_EOF_;
Packit 549fdc
};
Packit 549fdc