From 898ea7b855541b5809e25944c8dada7b50775fd3 Mon Sep 17 00:00:00 2001 From: Kai Engert Date: Wed, 29 Jul 2015 17:41:00 -0400 Subject: [PATCH] RT3742: Add xmpp_server to s_client. Reviewed-by: Matt Caswell --- apps/s_client.c | 9 +++++++-- doc/apps/s_client.pod | 7 ++++--- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/apps/s_client.c b/apps/s_client.c index 559cf706a7..a5fddcae36 100644 --- a/apps/s_client.c +++ b/apps/s_client.c @@ -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, "", + "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; diff --git a/doc/apps/s_client.pod b/doc/apps/s_client.pod index 12a6ef7cf8..e91b9f1334 100644 --- a/doc/apps/s_client.pod +++ b/doc/apps/s_client.pod @@ -288,12 +288,13 @@ command for more information. send the protocol-specific message(s) to switch to TLS for communication. B 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.