LDAPEXOP(1)
π LDAPEXOP β issue LDAP extended operations π
okay bestie, so this is ldapexop from the General Commands Manual, section 1 β it lives in your shell, not your C code, and it is the moment for sending extended operations at an LDAP server. no cap. π¦
β¨ SYNOPSIS β¨
ldapexop [-V[V]] [-d debuglevel] [-n] [-v] [-f file] [-x] [-D binddn]
[-W] [-w passwd] [-y passwdfile] [-H URI] [-e [!]ext[=extparam]]
[-o opt[=optparam]] [-O security-properties] [-I] [-Q] [-N] [-U authcid]
[-R realm] [-X authzid] [-Y mech] [-Z[Z]] {oid | oid:data | oid::b64data
| whoami | cancel cancel-id | refresh DN [ttl]}
like, look at her. so many flags. she contains multitudes. π
πΈ DESCRIPTION πΈ
ldapexop issues the LDAP extended operation specified by oid, or by one of the special keywords whoami, cancel, or refresh. she's basically the extended-operations girlie and she knows it. π₯
Extra data for the extended operation can be handed to the server with data, or base-64 encoded as b64data in the case of oid, or via the additional parameters in the case of those specially named extended operations up there. β¨
β οΈ bestie listen β ldapexop behaves differently for the same extended operation depending on whether you gave it as an OID or as a specially named operation. this is not a drill. π
sooo, calling ldapexop with the OID of the whoami (RFC 4532) extended operation:
ldapexop [<options>] 1.3.6.1.4.1.4203.1.11.3
yields
# extended operation response
data:: <base64 encoded response data>
while calling it with the keyword whoami:
ldapexop [<options>] whoami
results in
dn:<client's identity>
same operation, two whole different energies. it's giving β¨main characterβ¨ vs β¨cryptic bestieβ¨. π
π OPTIONS π
okay so here's every single one, no skips, we don't gatekeep. π
-V[V]β print version info. if you give-VV, only the version information gets printed. (double the V, double the drama. βοΈ)-ddebuglevel β set the LDAP debugging level todebuglevel. turn it up and watch her spill everything. π-nβ show what would be done but don't actually do it. lowkey iconic for debugging when you pair it with-v. β¨-vβ run in verbose mode, with so many diagnostics written to standard output. she will not stop talking and honestly? we love that. π¬-ffile β read operations fromfile.-xβ use simple authentication instead of SASL.-Dbinddn β use the Distinguished Namebinddnto bind to the LDAP directory.-Wβ prompt for simple authentication. this is used instead of putting the password right there on the command line. (security bestie behaviour. π«Ά)-wpasswd β usepasswdas the password for simple authentication.-ypasswdfile β use the complete contents ofpasswdfileas the password for simple authentication.-HURI β specify URI(s) referring to the ldap server(s); only the protocol/host/port fields are allowed; a list of URI, separated by whitespace or commas, is expected.-e [!]ext[=extparam]β specify general extensions.!indicates criticality. here's the whole menu:
[!]assert=<filter> (an RFC 4515 Filter)
!authzid=<authzid> ("dn:<dn>" or "u:<user>")
[!]bauthzid (RFC 3829 authzid control)
[!]chaining[=<resolve>[/<cont>]]
[!]manageDSAit
[!]noop
ppolicy
[!]postread[=<attrs>] (a comma-separated attribute list)
[!]preread[=<attrs>] (a comma-separated attribute list)
[!]relax
sessiontracking[=<username>]
abandon,cancel,ignore (SIGINT sends abandon/cancel,
or ignores response; if critical, doesn't wait for SIGINT.
not really controls)
-o opt[=optparam]β specify anyldap.conf(5)option, or one of these cuties:
nettimeout=<timeout> (in seconds, or "none" or "max")
ldif_wrap=<width> (in columns, or "no" for no wrapping)
-Osecurity-properties β specify SASL security properties. π-Iβ enable SASL Interactive mode. always prompt. the default is to prompt only as needed. she's a little extra, respect it. π-Qβ enable SASL Quiet mode. never prompt. the strong silent type. π€«-Nβ do not use reverse DNS to canonicalize the SASL host name.-Uauthcid β specify the authentication ID for SASL bind. the form of the ID depends on the actual SASL mechanism used.-Rrealm β specify the realm of authentication ID for SASL bind. the form of the realm depends on the actual SASL mechanism used.-Xauthzid β specify the requested authorization ID for SASL bind.authzidmust be one of these formats:dn:<distinguished name>oru:<username>.-Ymech β specify the SASL mechanism to be used for authentication. without this option, the program will choose the best mechanism the server knows. she picks for you, trust her taste. π-Z[Z]β issue StartTLS (Transport Layer Security) extended operation. giving it twice (-ZZ) will require the operation to be successful. no takebacks, no maybe. π¨
π©Ί DIAGNOSTICS π©Ί
Exit status is zero if no errors occur. Errors result in a non-zero exit status and a diagnostic message being written to standard error. so if she's mad, she'll tell you, and she'll say it on stderr. π
π SEE ALSO π
go read that one too, iykyk. π
π AUTHOR π
This manual page was written by Peter Marschall based on ldapexop's usage message and a few tests with ldapexop. Do not expect it to be complete or absolutely correct. (he said it, not me β honesty is so attractive. π«Ά)
π ACKNOWLEDGEMENTS π
OpenLDAP Software is developed and maintained by The OpenLDAP Project <http://www.openldap.org/>. OpenLDAP Software is derived from the University of Michigan LDAP 3.3 Release.
and that's the whole page bestie β signed, sealed, delivered from the General Commands Manual, section 1, no version number and no date on this one, just pure LDAPEXOP(1) energy. slay, periodt. πβ¨ππ¦
π¦ where this page comes from
- alpine 3.24: openldap-doc 2.6.15-r0 Β· OLDAP-2.8
- arch rolling: openldap 2.7.1-1
- arch rolling: openldap 2.7.2-2 Β· OLDAP-2.8
- nixos 26.05: openldap 2.6.13
- nixpkgs unstable: openldap 2.6.13
- ubuntu stonking: ldap-utils 2.6.13+dfsg-1ubuntu3 Β· OpenLDAP-2.8
- Copyright 2009 Peter Marschall
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms