# but preserving initial state so it could be used afterwards
CP_ECHO_RETURN=""
+ RET=""
if [ -d /etc/ldap/slapd.d/ ]; then
- RET="`grep -r olcSuffix /etc/ldap/slapd.d/|awk '{print $2}'`"
+ RET="`grep -r olcSuffix: /etc/ldap/slapd.d/ | awk '{print $2}' | head -1`"
elif [ -f /etc/ldap/slapd.conf ]; then
- RET="`awk '/^suffix/ { exit }
+ RET="`awk '/^suffix/ { exit }
END { gsub(/"/, "", $2); print $2 }' \
< /etc/ldap/slapd.conf`"
else
- if [ ! -d /etc/ldap/slapd.d/ ]; then
- echo "cp_get_ldap_suffix: /etc/ldap/slapd.d/: No such directory" >&2
- return 2
- elif [ ! -f /etc/ldap/slapd.conf ]; then
- echo "cp_get_ldap_suffix: /etc/ldap/slapd.conf: No such file" >&2
- return 2
- fi
+ RET=""
+ echo "cp_get_ldap_suffix: /etc/ldap/slapd.{d/,conf}: No such file or directory" >&2
+ return 2
fi
-
if [ "`echo $RET | sed 's/,/ /g' | wc -w`" -gt 2 ]; then
RET=""
echo "cp_get_ldap_suffix: Invalid LDAP suffix in /etc/ldap/slapd.d/" >&2
return 2
fi
- [ -z "$RET" ] && echo "cp_get_ldap_suffix: No LDAP suffix in /etc/ldap/slapd.d/ or /etc/ldap/slapd.conf" >&2
+ [ -z "$RET" ] && echo "cp_get_ldap_suffix: No LDAP suffix in /etc/ldap/slapd.{d/,conf}" >&2
[ -z "$echo_return" ] || echo $RET
CP_ECHO_RETURN="$echo_return"
}
# but preserving initial state so it could be used afterwards
CP_ECHO_RETURN=""
- if [ ! -d /etc/ldap/slapd.d/ ]; then
- echo "cp_get_ldap_suffix: /etc/ldap/slapd.d/: No such directory" >&2
- return 2
- elif [ ! -f /etc/ldap/slapd.conf ]; then
- echo "cp_get_ldap_suffix: /etc/ldap/slapd.conf: No such file" >&2
- return 2
+ RET=""
+
+ if [ ! -d /etc/ldap/slapd.d/ -a ! -f /etc/ldap/slapd.conf ]; then
+ echo "cp_get_ldap_realm: /etc/ldap/slapd.{d/,conf}: No such file or directory" >&2
fi
-
+
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.d/" >&2
+ [ -z "$RET" ] && echo "cp_get_ldap_realm: No LDAP REALM in /etc/ldap/slapd.{d/,conf}" >&2
[ -z "$echo_return" ] || echo $RET
CP_ECHO_RETURN="$echo_return"
}