editmap(8) on Solnix vs Linux and the BSDs

On Solnix, editmap is the illumos editmap at /usr/sbin/editmap. It edits or queries a single record in a sendmail database map. The documented option set matches FreeBSD, but the Solnix page lists only dbm, btree and hash map types, while FreeBSD also lists cdb.

What Solnix runs

A default Solnix system runs the illumos editmap at /usr/sbin/editmap. No other variants are shipped. The page is published by pkgs.solnix.illumos-world-man. Linux, OpenBSD and NetBSD counterpart pages are not in the bundle, so nothing is claimed about them.

Differences

Compared withTopicWhat differs
FreeBSDcdb map typeThe FreeBSD page lists a fourth map type, cdb (Constant DataBase, needs the tinycdb library). The Solnix page lists only dbm, btree and hash. A script that passes cdb to editmap may work on FreeBSD but is not documented on Solnix.
Source: FreeBSD editmap(8) DESCRIPTION (cdb); Solnix editmap(8) OPERANDS (maptype)
FreeBSD-C is required in the Solnix synopsisThe Solnix SYNOPSIS shows -C file without brackets, so it reads as required. The FreeBSD SYNOPSIS shows [-C file] as optional. The Solnix OPTIONS text does not say it is mandatory. Pass -C explicitly on Solnix.
Source: Solnix editmap(8) SYNOPSIS (-C file); FreeBSD editmap(8) SYNOPSIS ([-C file])
FreeBSDlibrary requirementsFreeBSD says dbm needs ndbm(3), and btree and hash need the Berkeley DB library. The Solnix page says only that the available formats depend on how editmap is compiled, and names no libraries.
Source: FreeBSD editmap(8) DESCRIPTION; Solnix editmap(8) DESCRIPTION, OPERANDS
FreeBSDsame options and exit behaviourBoth pages document -C, -N, -f, -q, -u and -x with the same meanings. -q exits 0 when found and EX_UNAVAILABLE when not found, printing the error to stdout. -u and -x exit 0 on success and EX_IOERR on failure. Keys are case-folded unless -f is given.
Source: Solnix editmap(8) OPTIONS -f, -q, -u, -x; FreeBSD editmap(8) Flags -f, -q, -u, -x
FreeBSDTrustedUser ownershipBoth pages say that if TrustedUser is set in the sendmail configuration file and editmap is run as root, the generated files are owned by that user. -C selects which configuration file is read for this.
Source: Solnix editmap(8) DESCRIPTION, -C; FreeBSD editmap(8) DESCRIPTION, -C
FreeBSDoperand documentationThe Solnix page has an OPERANDS section describing key, value, mapname and maptype, and says key and value are separated by white space. The FreeBSD page has no operands section. It documents maptype only inside DESCRIPTION.
Source: Solnix editmap(8) OPERANDS; FreeBSD editmap(8) DESCRIPTION

Standards

  • POSIX: editmap is not a POSIX.1-2024 utility.
  • Solnix: The Solnix page refers to attributes(7) in SEE ALSO, but the bundle text has no ATTRIBUTES or interface stability section for editmap.
  • FreeBSD: The FreeBSD page has no STANDARDS section. Its HISTORY says: The editmap command has no history.

Writing portable scripts

  • Always pass -C file, because the Solnix synopsis shows it as required, and give maptype as dbm, btree or hash; cdb is documented only on FreeBSD.

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.