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.
The manual pages
- Solnix: editmap(8) from
pkgs.solnix.illumos-world-man· illumos.org - FreeBSD: editmap(8) 15.1-RELEASE
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 with | Topic | What differs |
|---|---|---|
| FreeBSD | cdb map type | The 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 synopsis | The 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]) |
| FreeBSD | library requirements | FreeBSD 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 |
| FreeBSD | same options and exit behaviour | Both 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 |
| FreeBSD | TrustedUser ownership | Both 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 |
| FreeBSD | operand documentation | The 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
-Cfile, 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.