Honour a possible diverging ldapsearch host URI param
authorDominik George <dominik.george@teckids.org>
Sun, 29 Nov 2015 18:34:59 +0000 (18:34 +0000)
committermirabilos <m@mirbsd.org>
Sun, 29 Nov 2015 18:34:59 +0000 (18:34 +0000)
mksh/assoldap.ksh

index d2ace44..f9ee3b1 100644 (file)
@@ -64,7 +64,7 @@ function asso_setldap_sasl {
 }
 function asso_setldap_internal {
        # parse options
-       local arrpath ldapopts x i=0 T dn line value
+       local arrpath ldapopts x i=0 T dn line value found=0
        set -A arrpath
        while (( $# )); do
                [[ $1 = -- || $1 = -+ ]] && break
@@ -79,6 +79,15 @@ function asso_setldap_internal {
        shift
        set -A ldapopts -- "$@"
 
+       # Add default host URI if none is given
+       for x in "${ldapopts[@]}"; do
+               [[ $x = -H ]] && found=1 && break
+       done
+       if (( !found )); then
+               ldapopts+=-H
+               ldapopts+=ldapi://
+       fi
+
        if (( do_free )); then
                # just in case, unset the target array and create it as associative
                asso__lookup 1 "${arrpath[@]}"