woo@pioneer.arpa (Alex Woo) (12/18/87)
I need help sending IP mail to someone who has a '$' in his username. The actual syntax I have tried is bs\$user%somewhere.bitnet@cunyvm.cuny.edu This doesn't work. Usually the \$ is converted into a '0' in the return from the Postmaster from somewhere. Any suggestions would be greatly appreciated. Thanks. Alex Woo woo@ames-pioneer.arpa
jsloan@wright.edu (John Sloan) (12/23/87)
[ This is the clearest of three replies all explaining the same problem. I just tested this on my Ultrix 2.0 system and the problem seems to be gone. You should be able to replace the sendmail on your Ultrix v1 system with sendmail from a 4.3 BSD tape. -- Art Z. ] In article <16551@felix.UUCP>, woo@pioneer.arpa (Alex Woo) writes: : (talk about $'s in addresses being deleted) : > This doesn't work. Usually the \$ is converted into a '0' in > the return from the Postmaster from somewhere. If you're running Ultrix, you're probably (but not necessarily) running Sendmail. All email addresses are parsed through Sendmail, which uses a $ to signify the start of a macro expansion or some other special function in its parsing rules. You guessed it: a $ in the address is interpreted during parsing as just such a macro expansion. I fooled around with this for a long time before I figured out what was going on. Most of the time the $X (where X is just some single character which followed the $) was expanded into a null string because the macro was undefined, so things like JLS$RCS became JLSCS. I was really confused until one day I used an address containing a macro that just happened to be defined, something like SFH$HSC which magically became SFwrightSC (i.e. the $H was expanded into my hostname), and then I understood what was happening. Did it get "fixed"? Nope, never figured any way around it, other than (1) in the very short run writing a front end to a mailer that turned "_" into "$" so that users could say "JLS_RCS", but this was a terrible long term solution because replies wouldn't work of course; and (2) in the long run change user names on the target system to omit "$", i.e. JLS$RCS was changed to JLSRCS. This was on one of my Ultrix machines (then Ultrix 1.0 which was pretty much straight vanilla 4.2BSD) running Sendmail, trying to send email to someone else's VMS system, using the DECnet/Ultrix product. I had already hacked the Sendmail cf file to allow addresses of usual :: DECnet form to be converted into a more canonical %-@ internet form, so that the VMS users could have access to USENET and CSNET from the VMS system using the Ultrix engine as a gateway, and as they were highly motivated on the VMS end to have access to this stuff, they dropped the $ in the logins. It was a major change on the main campus VMS machine with hundreds of users. -- John John Sloan Wright State University Research Center jsloan@SPOTS.Wright.Edu 3171 Research Blvd., Kettering, OH 45420 ...!cbosgd!wright!jsloan (513) 259-1384 (513) 873-2491 Logic Disclaimer: belong(opinions,jsloan). belong(opinions,_):-!,fail.
zemon@felix.UUCP (Art Zemon) (12/23/87)
Boy am I embarrassed! After I fired of that last posting, sendmail was good enough to deliver an error message to me. The test mail that I sent with a $ in it and I had thought was properly processed was not. The bug still exists in Ultrix v2.0. Sorry for the confusion. On a brighter note, alan@cunixc.columbia.edu thinks that newer sendmails are rid of this bug: There was an old 4.2 version of sendmail which macro-expanded data as well as rules. So, a $, which is the macro character, whould cause sendmail to macro expand it. Mail to an id I have, DM$ALAN, would get rewritten to DMFri 18 Dec 87 12:00 ESTLAN (or something like that) since $A is the time macro (I think). Newer (e.g. 4.3) sendmails have this bug fixed. You can test it with: mail -v user\$name@hostname and see if sendmail macro-expands the $n or not. Alan Crosswell Columbia University -- -- Art Zemon By Computer: ...!hplabs!felix!zemon By Air: Archer N33565 By Golly: moderator of comp.unix.ultrix