It took a lot of digging to discover a very simple key concept: factotum needs a /lib/ndb entry to determine the authentication server associated with a particular authentication domain. I have just rebuilt my Plan 9 network after a serious disk failure and that turned out to be the missing piece I had overlooked.
I have tested upas/smtpd against upas/smtp as well as a slightly dated version of Outlook Express. Takes some getting used to, but it does work. I do suspect that it does not override the "norelay" restrictions, so I'm not altogether done, but in the main I can thank the factotum/upas team(s) for a job well done. A small change to a failure() call in factotum/p9cr.c code would have made my quest shorter. I will submit it as a patch as soon as I have removed all the debugging code from the various modules. ++L
