ldapdelete(1) on Solnix vs Linux and the BSDs

On Solnix, ldapdelete is the illumos tool at /usr/bin/ldapdelete. It uses Netscape/Sun-style options, and several single-letter flags mean something different from the NetBSD (OpenLDAP-style) ldapdelete. The biggest traps are -P, -W, -w, -y, -Y, -O, -E and -Z.

What Solnix runs

A default Solnix system runs the illumos ldapdelete at /usr/bin/ldapdelete. No other variants are shipped. The bundle has a counterpart page only for NetBSD 11.0. It has no Linux, FreeBSD or OpenBSD ldapdelete page, so nothing is claimed about those systems.

Differences

Compared withTopicWhat differs
NetBSD-P meaningSolnix -P takes the path of the client certificate database. NetBSD -P {2|3} selects the LDAP protocol version. On Solnix the version is set with -V version.
Source: Solnix ldapdelete(1) -P, -V; NetBSD ldapdelete(1) -P
NetBSD-V meaningSolnix -V version takes 2 or 3 as its argument, and LDAPv3 is the default. NetBSD -V[V] takes no version and prints version information; -VV prints only that.
Source: Solnix ldapdelete(1) -V; NetBSD ldapdelete(1) -V[V]
NetBSD-W and -w password handlingSolnix -W password takes an argument: the password for the key database named by -P. NetBSD -W takes no argument and prompts for the simple-auth password. On Solnix, omitting -w makes the command prompt on standard input.
Source: Solnix ldapdelete(1) -W, -w; NetBSD ldapdelete(1) -W, -w
NetBSDpassword from a fileSolnix reads the password from a file with -j filename. This is mutually exclusive with -w and -W. NetBSD uses -y passwdfile for this. On Solnix, -y takes a proxy ID.
Source: Solnix ldapdelete(1) -j, -y; NetBSD ldapdelete(1) -y
NetBSD-Y meaning and SASL setupSolnix -Y proxyid sets the proxied authorization DN. NetBSD -Y mech selects the SASL mechanism. Solnix sets SASL mech, realm, authid, authzid and secProp through -o name=value. NetBSD uses -Y, -R, -U, -X and -O.
Source: Solnix ldapdelete(1) -Y, -o; NetBSD ldapdelete(1) -Y, -R, -U, -X, -O
NetBSD-O, -o and -E meaningsSolnix -O is a referral hop limit (no limit by default). NetBSD -O sets SASL security properties. Solnix -o is for SASL options. NetBSD -o is for nettimeout and ldif-wrap. Solnix -E asks the server to report the bind identity. NetBSD -E sets delete extensions.
Source: Solnix ldapdelete(1) -O, -o, -E; NetBSD ldapdelete(1) -O, -o, -E
NetBSD-Z and -N meaningSolnix -Z selects SSL certificate-based client authentication and requires -N certificate-name plus the other SSL options. NetBSD -Z[Z] issues StartTLS (-ZZ makes it mandatory). NetBSD -N means do not use reverse DNS for the SASL host name.
Source: Solnix ldapdelete(1) -Z, -N; NetBSD ldapdelete(1) -Z[Z], -N
NetBSD-H and server addressingSolnix -H shows usage help, like -?. NetBSD -H takes an LDAP URI, and NetBSD -h and -p are marked deprecated in its favour. Solnix has no URI option; use -h ldaphost and -p ldapport.
Source: Solnix ldapdelete(1) -H, -?, -h, -p; NetBSD ldapdelete(1) -H, -h, -p
NetBSDdeleting a subtreeNetBSD -r deletes a non-leaf DN and all its children with no confirmation, and -z sets the search size limit. The Solnix SYNOPSIS has no -r. The Solnix OPTIONS list -a, which bypasses the confirmation question when deleting a branch; its SYNOPSIS omits it, and the manual does not say how branch deletion is requested.
Source: NetBSD ldapdelete(1) -r, -z; Solnix ldapdelete(1) -a, SYNOPSIS
NetBSDSolnix-only and NetBSD-only optionsSolnix has -i locale (command-line character set), -k path (conversion routines), -J (control with criticality) and -a. NetBSD has none of these. NetBSD has -e and -E extensions, -x (simple auth), -I, -Q and -z, which Solnix does not document. Solnix -M takes no second M.
Source: Solnix ldapdelete(1) -i, -k, -J, -a, -M; NetBSD ldapdelete(1) -e, -x, -I, -Q, -M[M]
NetBSD-d debug levelsThe Solnix page lists debug masks (1 trace, 2 packets, 4 arguments, 32 filters, 128 access control) that you add together. NetBSD says -d has an effect only if ldapdelete was compiled with LDAP_DEBUG defined.
Source: Solnix ldapdelete(1) -d; NetBSD ldapdelete(1) -d

Standards

  • POSIX: ldapdelete is not a POSIX.1-2024 utility.
  • Solnix: Stability Level: Evolving (ATTRIBUTES).
  • NetBSD: The page says DNs should use the LDAPv3 string representation defined in RFC 4514. It has no STANDARDS section in the bundle.

Writing portable scripts

  • Do not share option strings between Solnix and NetBSD ldapdelete. -P, -V, -W, -w, -y, -Y, -O, -o, -E, -Z, -N and -H mean different things, so branch on the platform or test the tool.
  • Pass a DN list on standard input or with -f, and use -c to keep going after errors; both pages document these. Keep passwords out of the command line, using -j on Solnix and -y or -W on NetBSD.

Every difference here is taken from the manual pages linked above: Solnix's published page, Linux (man-pages and the GNU and util-linux manuals), FreeBSD, OpenBSD and NetBSD. Each row names its source. Where a manual is silent, this page is too. Compiled 2026-10-26. Found a mistake? Mail hackers@lists.solnix.io.