+# Searching database...
dn: dc=example,dc=com
objectClass: domain
objectClass: domainRelatedObject
dc: example
associatedDomain: example.com
+dn: ou=LDAPv2,dc=example,dc=com
+objectClass: organizationalUnit
+ou: LDAPv2
+description: RFC 1779 compliant DN string representation
+
dn: ou=LDAPv3,dc=example,dc=com
objectClass: organizationalUnit
ou: LDAPv3
description: RFC 2253 compliant DN string representation
+dn: cn=May Succeed 1,ou=LDAPv2,dc=example,dc=com
+objectClass: groupOfNames
+cn: May Succeed 1
+member:
+description: " " // space, quote characters (") are not part of the string
+
+dn: cn=May Succeed 3,ou=LDAPv2,dc=example,dc=com
+objectClass: groupOfNames
+cn: May Succeed 3
+member: uid=jsmith,o=example,c=US
+description: UID=jsmith, O=example, C=US // spaces
+
+dn: cn=May Succeed 4,ou=LDAPv2,dc=example,dc=com
+objectClass: groupOfNames
+cn: May Succeed 4
+member: uid=jsmith,o=example,c=US
+description: UID=jsmith;O=example;C=US // semi-colons
+
+dn: cn=May Succeed 6,ou=LDAPv2,dc=example,dc=com
+objectClass: groupOfNames
+cn: May Succeed 6
+member: cn=John Smith,o=example,c=US
+description: CN="John Smith",O=example,C=US // quotes
+
dn: cn=Must Succeed,ou=LDAPv3,dc=example,dc=com
objectClass: groupOfNames
cn: Must Succeed
description: CN=Lu\C4\8Di\C4\87
description: testUUID=597ae2f6-16a6-1027-98f4-abcdefABCDEF,DC=Example
-dn: cn=Unescaped Equals,ou=LDAPv3,dc=example,dc=com
-objectClass: groupOfNames
-cn: Unescaped Equals
-member: cn=Unescaped Equals,ou=LDAPv3,dc=example,dc=com
-member: cn=A*x\3Db is a linear algebra problem,ou=LDAPv3,dc=example,dc=com
-description: cn=A*x=b is a linear algebra problem,ou=LDAPv3,dc=example,dc=com
- // unescaped EQUALS
-
-dn: ou=LDAPv2,dc=example,dc=com
-objectClass: organizationalUnit
-ou: LDAPv2
-description: RFC 1779 compliant DN string representation
-
-dn: cn=May Succeed 1,ou=LDAPv2,dc=example,dc=com
-objectClass: groupOfNames
-cn: May Succeed 1
-member:
-description: " " // space, quote characters (") are not part of the string
-
-dn: cn=May Succeed 3,ou=LDAPv2,dc=example,dc=com
-objectClass: groupOfNames
-cn: May Succeed 3
-member: uid=jsmith,o=example,c=US
-description: UID=jsmith, O=example, C=US // spaces
-
-dn: cn=May Succeed 4,ou=LDAPv2,dc=example,dc=com
-objectClass: groupOfNames
-cn: May Succeed 4
-member: uid=jsmith,o=example,c=US
-description: UID=jsmith;O=example;C=US // semi-colons
-
-dn: cn=May Succeed 6,ou=LDAPv2,dc=example,dc=com
-objectClass: groupOfNames
-cn: May Succeed 6
-member: cn=John Smith,o=example,c=US
-description: CN="John Smith",O=example,C=US // quotes
-
-dn: ou=Related Syntaxes,dc=example,dc=com
-objectClass: organizationalUnit
-ou: Related Syntaxes
-
dn: cn=Name and Optional UID,ou=Related Syntaxes,dc=example,dc=com
objectClass: groupOfUniqueNames
cn: Name and Optional UID
description: dc=example,dc=com#'1000'B // with DN portion
description: dc=example,dc=com#'0'B // with DN portion and just one '0'
+dn: ou=Related Syntaxes,dc=example,dc=com
+objectClass: organizationalUnit
+ou: Related Syntaxes
+
dn: cn=Should Parse as DN,cn=Name and Optional UID,ou=Related Syntaxes,dc=exam
ple,dc=com
objectClass: groupOfUniqueNames
description: dc=example,dc=com#'0B // malformed UID?
description: dc=example,dc=com '0'B // malformed UID?
+dn: cn=Unescaped Equals,ou=LDAPv3,dc=example,dc=com
+objectClass: groupOfNames
+cn: Unescaped Equals
+member: cn=Unescaped Equals,ou=LDAPv3,dc=example,dc=com
+member: cn=A*x\3Db is a linear algebra problem,ou=LDAPv3,dc=example,dc=com
+description: cn=A*x=b is a linear algebra problem,ou=LDAPv3,dc=example,dc=com
+ // unescaped EQUALS
+
+# Searching database for DN="OU=Sales+CN=J. Smith,DC=example,DC=net"...
dn: cn=Must Succeed,ou=LDAPv3,dc=example,dc=com
objectClass: groupOfNames
cn: Must Succeed
description: CN=Lu\C4\8Di\C4\87
description: testUUID=597ae2f6-16a6-1027-98f4-abcdefABCDEF,DC=Example
+# Searching database for entryUUID-named DN="testUUID=597ae2f6-16a6-1027-98f4-ABCDEFabcdef,DC=Example"...
dn: cn=Must Succeed,ou=LDAPv3,dc=example,dc=com
objectClass: groupOfNames
cn: Must Succeed
description: CN=Lu\C4\8Di\C4\87
description: testUUID=597ae2f6-16a6-1027-98f4-abcdefABCDEF,DC=Example
+# Searching database for nameAndOptionalUID="dc=example,dc=com"...
+# Searching database for nameAndOptionalUID="dc=example,dc=com#'001000'B"...
dn: cn=Name and Optional UID,ou=Related Syntaxes,dc=example,dc=com
objectClass: groupOfUniqueNames
cn: Name and Optional UID
description: dc=example,dc=com#'1000'B // with DN portion
description: dc=example,dc=com#'0'B // with DN portion and just one '0'
+# Searching database for uniqueMember~="dc=example,dc=com" (approx)...
dn: cn=Name and Optional UID,ou=Related Syntaxes,dc=example,dc=com
objectClass: groupOfUniqueNames
cn: Name and Optional UID
description: dc=example,dc=com#'1000'B // with DN portion
description: dc=example,dc=com#'0'B // with DN portion and just one '0'
+# Searching database for uniqueMember~="dc=example,dc=com#'001000'B" (approx)...
dn: cn=Name and Optional UID,ou=Related Syntaxes,dc=example,dc=com
objectClass: groupOfUniqueNames
cn: Name and Optional UID
echo "Searching database..."
echo "# Searching database..." >> $SEARCHOUT
-$LDAPSEARCH -b "$BASEDN" -h $LOCALHOST -p $PORT1 >> $SEARCHOUT 2>&1
+$LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT1 >> $SEARCHOUT 2>&1
RC=$?
if test $RC != 0 ; then
DN="OU=Sales+CN=J. Smith,DC=example,DC=net"
echo "Searching database for DN=\"$DN\"..."
echo "# Searching database for DN=\"$DN\"..." >> $SEARCHOUT
-$LDAPSEARCH -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
+$LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
"(member=$DN)" >> $SEARCHOUT 2>&1
RC=$?
DN="testUUID=597ae2f6-16a6-1027-98f4-ABCDEFabcdef,DC=Example"
echo "Searching database for entryUUID-named DN=\"$DN\"..."
echo "# Searching database for entryUUID-named DN=\"$DN\"..." >> $SEARCHOUT
-$LDAPSEARCH -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
+$LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
"(member=$DN)" \
>> $SEARCHOUT 2>&1
DN="dc=example,dc=com"
echo "Searching database for nameAndOptionalUID=\"$DN\"..."
echo "# Searching database for nameAndOptionalUID=\"$DN\"..." >> $SEARCHOUT
-$LDAPSEARCH -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
+$LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
"(uniqueMember=$DN)" >> $SEARCHOUT 2>&1
RC=$?
DN="dc=example,dc=com#'001000'B"
echo "Searching database for nameAndOptionalUID=\"$DN\"..."
echo "# Searching database for nameAndOptionalUID=\"$DN\"..." >> $SEARCHOUT
-$LDAPSEARCH -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
+$LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
"(uniqueMember=$DN)" >> $SEARCHOUT 2>&1
RC=$?
DN="dc=example,dc=com"
echo "Searching database for uniqueMember~=\"$DN\" (approx)..."
echo "# Searching database for uniqueMember~=\"$DN\" (approx)..." >> $SEARCHOUT
-$LDAPSEARCH -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
+$LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
"(uniqueMember~=)" >> $SEARCHOUT 2>&1
RC=$?
DN="dc=example,dc=com#'001000'B"
echo "Searching database for uniqueMember~=\"$DN\" (approx)..."
echo "# Searching database for uniqueMember~=\"$DN\" (approx)..." >> $SEARCHOUT
-$LDAPSEARCH -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
+$LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
"(uniqueMember~=$DN)" >> $SEARCHOUT 2>&1
RC=$?