mirror of
https://github.com/drwetter/testssl.sh.git
synced 2024-12-28 20:39:45 +01:00
Fix #1961
This commit fixes #1961 in the 3.1dev branch by leaving NODEIP set to the server's IP address rather than changing it to the DNS name in the case of STARTTLS XMPP. In order to address the problem of $OPENSSL s_client not working with STARTTLS XMPP if an IP address is provided to -connect, the -xmpphost option is used to provide the DNS name.
This commit is contained in:
parent
f15da8d15d
commit
667de371cd
11
testssl.sh
11
testssl.sh
@ -20983,8 +20983,6 @@ determine_service() {
|
||||
ftp|smtp|lmtp|pop3|imap|xmpp|xmpp-server|telnet|ldap|postgres|mysql|nntp)
|
||||
STARTTLS="-starttls $protocol"
|
||||
if [[ "$protocol" == xmpp ]] || [[ "$protocol" == xmpp-server ]]; then
|
||||
# for XMPP, openssl has a problem using -connect $NODEIP:$PORT. thus we use -connect $NODE:$PORT instead!
|
||||
NODEIP="$NODE"
|
||||
if [[ -n "$XMPP_HOST" ]]; then
|
||||
if ! "$HAS_XMPP"; then
|
||||
fatal "Your $OPENSSL does not support the \"-xmpphost\" option" $ERR_OSSLBIN
|
||||
@ -20998,11 +20996,18 @@ determine_service() {
|
||||
prln_warning " IP address doesn't work for XMPP, trying PTR record $rDNS"
|
||||
# remove trailing .
|
||||
NODE=${rDNS%%.}
|
||||
NODEIP=${rDNS%%.}
|
||||
else
|
||||
fatal "No DNS supplied and no PTR record available which I can try for XMPP" $ERR_DNSLOOKUP
|
||||
fi
|
||||
fi
|
||||
if "$HAS_XMPP"; then
|
||||
# small hack -- instead of changing calls all over the place
|
||||
STARTTLS="$STARTTLS -xmpphost $NODE"
|
||||
else
|
||||
# If the XMPP name cannot be provided using -xmpphost,
|
||||
# then it needs to be provided to the -connect option
|
||||
NODEIP="$NODE"
|
||||
fi
|
||||
fi
|
||||
if [[ "$protocol" == xmpp-server ]] && ! "$HAS_XMPP_SERVER"; then
|
||||
#FIXME: make use of HAS_XMPP_SERVER2
|
||||
|
Loading…
Reference in New Issue
Block a user