slapo-valsort - Value Sorting overlay to slapd
/etc/ldap/slapd.conf
The Value Sorting overlay can be used with a backend database to sort the values
of specific multi-valued attributes within a subtree. The sorting occurs
whenever the attributes are returned in a search response.
Sorting can be specified in ascending or descending order, using either numeric
or alphanumeric sort methods. Additionally, a "weighted" sort can be
specified, which uses a numeric weight prepended to the attribute values. The
weighted sort is always performed in ascending order, but may be combined with
the other methods for values that all have equal weights. The weight is
specified by prepending an integer weight {<
weight>} in front of
each value of the attribute for which weighted sorting is desired. This
weighting factor is stripped off and not returned in search results unless the
valsort control is specified (1.3.6.1.4.1.4203.666.5.14).
The valsort control requires a value consisting of a Sequence that contains a
boolean flag. The weighting factor is only returned if the boolean value is
TRUE. In
lber-encode(3) format, the required value must conform to
"{b}" syntax.
These
slapd.conf options apply to the Value Sorting overlay. They should
appear after the
overlay directive.
- valsort-attr <attribute> <baseDN>
(< sort-method> | weighted [<sort-method>])
- Configure a sorting method for the specified
attribute in the subtree rooted at baseDN. The
sort-method may be one of alpha-ascend,
alpha-descend, numeric-ascend, or numeric-descend. If
the special weighted method is specified, a secondary
sort-method may also be specified. It is an error to specify an
alphanumeric sort-method for an attribute with Integer or
NumericString syntax, and it is an error to specify a numeric
sort-method for an attribute with a syntax other than Integer or
NumericString.
database mdb
suffix dc=example,dc=com
...
overlay valsort
valsort-attr member ou=groups,dc=example,dc=com alpha-ascend
To invoke
ldapsearch(1) with the valsort control, the control value must
be set appropriately. The following octets represent the desired
"{b}" encoding:
0x30 0x03 0x01 0x01 0xff
The control can be sent from the command-line using the base64 encoding of the
value:
ldapsearch -E 1.3.6.1.4.1.4203.666.5.14=::MAMBAf8=
- /etc/ldap/slapd.conf
- default slapd configuration file
slapd.conf(5),
slapd-config(5).
This module was written in 2005 by Howard Chu of Symas Corporation. The work was
sponsored by Stanford University.