RT3742: Add xmpp_server to s_client.

Reviewed-by: Matt Caswell <matt@openssl.org>
This commit is contained in:
Kai Engert 2015-07-29 17:41:00 -04:00 committed by Rich Salz
parent be0c03618a
commit 898ea7b855
2 changed files with 11 additions and 5 deletions

View File

@ -513,7 +513,8 @@ OPTIONS s_client_options[] = {
{"tls1", OPT_TLS1, '-', "Just use TLSv1"},
{"starttls", OPT_STARTTLS, 's',
"Use the STARTTLS command before starting TLS"},
{"xmpphost", OPT_XMPPHOST, 's', "Host to use with \"-starttls xmpp\""},
{"xmpphost", OPT_XMPPHOST, 's',
"Host to use with \"-starttls xmpp[-server]\""},
{"rand", OPT_RAND, 's',
"Load the file(s) into the random number generator"},
{"sess_out", OPT_SESS_OUT, '>', "File to write SSL session to"},
@ -608,6 +609,7 @@ typedef enum PROTOCOL_choice {
PROTO_FTP,
PROTO_TELNET,
PROTO_XMPP,
PROTO_XMPP_SERVER,
PROTO_CONNECT
} PROTOCOL_CHOICE;
@ -617,6 +619,7 @@ static OPT_PAIR services[] = {
{"imap", PROTO_IMAP},
{"ftp", PROTO_FTP},
{"xmpp", PROTO_XMPP},
{"xmpp-server", PROTO_XMPP_SERVER},
{"telnet", PROTO_TELNET},
{NULL}
};
@ -1548,11 +1551,13 @@ int s_client_main(int argc, char **argv)
}
break;
case PROTO_XMPP:
case PROTO_XMPP_SERVER:
{
int seen = 0;
BIO_printf(sbio, "<stream:stream "
"xmlns:stream='http://etherx.jabber.org/streams' "
"xmlns='jabber:client' to='%s' version='1.0'>",
"xmlns='jabber:%s' to='%s' version='1.0'>",
starttls_proto == PROTO_XMPP ? "client" : "server",
xmpphost ? xmpphost : host);
seen = BIO_read(sbio, mbuf, BUFSIZZ);
mbuf[seen] = 0;

View File

@ -288,12 +288,13 @@ command for more information.
send the protocol-specific message(s) to switch to TLS for communication.
B<protocol> is a keyword for the intended protocol. Currently, the only
supported keywords are "smtp", "pop3", "imap", "ftp" and "xmpp".
supported keywords are "smtp", "pop3", "imap", "ftp", "xmpp",
and "xmpp-server".
=item B<-xmpphost hostname>
This option, when used with "-starttls xmpp", specifies the host for the
"to" attribute of the stream element.
This option, when used with "-starttls xmpp" or "-starttls xmpp-server",
specifies the host for the "to" attribute of the stream element.
If this option is not specified, then the host specified with "-connect"
will be used.