> In manXX.tgz (since 4.8) and also on web-cgi, the smtpd.conf(5) man
> page references makemap(8) more than once ...
> ... with explicit instructions to use that man page as a guide when
> making db maps and/or understanding the format of plain maps.
>
> [..]
>
> This has been the case for over a year every single time I've looked
> at web-cgi and on multiple iterations of base ...
> ... and I've been trying very hard to exhaust myself there before coming here.
>
> Suffice to say this is not optimum.

I agree this isn't ideal.  On the other hand, having a system ship with
two overlapping & incompatible alternatives is a rather exceptional case,
and there's no way to automagically please everyone.  One could suggest
renaming the manuals (and binaries?) and installing them both, but that's
nasty and ugly, and probably not worth it, if one of the daemons is to
be axed anyway.

There's surely a good reason smtpd isn't the default yet, and there's
a good reason I kept hearing that smtpd isn't considered ready for
production yet, back when I started using it.  The message is rather
clear to me: you may play with it, as long as you know what you're doing,
and are okay with the possibility of problems.  Finding the manual is a
part of knowing what you're doing :-)  I can see why one could get
confused though, even if the title lines for these (installed) manuals
contain "sendmail".

> If not, what can be done about users who read the man pages and have
> issues as a result?

I don't know what can be done about users, but I know what the users can
do: try figure out what is lacking or misleading, maybe contact the
developer(s), and propose a change.  Something like this:

Index: makemap.8
===================================================================
RCS file: /cvs/src/usr.sbin/smtpd/makemap.8,v
retrieving revision 1.14
diff -u -p -r1.14 makemap.8
--- makemap.8   3 Sep 2010 11:22:36 -0000       1.14
+++ makemap.8   10 Oct 2011 19:10:51 -0000
@@ -90,11 +90,14 @@ accept for domain map "primary" deliver 
 .Ed
 .Sh VIRTUAL DOMAINS
 Virtual domains are kept in maps.
-To create single virtual address, add
-.Dq u...@example.com   user
+To create a virtual domain, add
+.Dq example.com kittens
 to the virtual map.
-To handle all mail destined to any user at example.com, add
-.Dq @example.com       user
+To create a virtual address for one user under that domain, add
+.Dq u...@example.com user
+to the virtual map.
+To catch all mail destined to the domain, add
+.Dq @example.com user
 to the virtual map.
 .Pp
 In addition to adding an entry to the virtual map,

The need to have a value for the domain key is a bit ugly.  I noticed
the stdio backend is happy with empty values, allowing for a pretty list
under a colon terminated domain name:
  virtual.domain:
  user1@virtual.domain    user1
  user2@virtual.domain    user2

  another.domain:
  user3@another.domain    user3
  user4@another.domain    user4
  ..

Makemap doesn't like it, though.

Reply via email to