return 1
fi
- RET="`awk /^suffix/'{print $2}' /etc/ldap/slapd.conf | head -1 | tr -d '"'`"
-
+ RET="`awk '/^suffix/ { exit }
+ END { gsub(/"/, "", $2); print $2 }' \
+ < /etc/ldap/slapd.conf`"
+
+ if [ "`echo $RET | sed 's/,/ /g' | wc -w`" -gt 2 ]; then
+ RET=""
+ echo "cp_get_ldap_suffix: Invalid LDAP suffix in /etc/ldap/slapd.conf" >&2
+ return 2
+ fi
+
[ -z "$RET" ] && echo "cp_get_ldap_suffix: No LDAP suffix in /etc/ldap/slapd.conf" >&2
[ -z "$echo_return" ] || echo $RET
CP_ECHO_RETURN="$echo_return"
echo "cp_get_ldap_realm: /etc/ldap/slapd.conf: No such file" >&2
return 1
fi
-
- RET="`awk /^suffix/'{print $2}' /etc/ldap/slapd.conf | head -1 | tr -d '"' | awk -F, '{print $1}' | awk -F= '{print $2}'`"
+
+ cp_get_ldap_suffix || true
+ RET="`echo $RET | awk -F, '{print $1}' | awk -F= '{print $2}'`"
[ -z "$RET" ] && echo "cp_get_ldap_realm: No LDAP REALM in /etc/ldap/slapd.conf" >&2
[ -z "$echo_return" ] || echo $RET