[comp.mail.sendmail] How do you parse double quotes?

kcantrel@digi.lonestar.org (Keith Cantrell) (07/18/90)

Vital information:  sendmail version 5.61 with IDA enhancements

I am trying to handle mail from our VMS VAX and I am running into a little
problem.  The problem is if a user mails from a machine that is not the one
that executes SMTP, the sender (both envelope and headers) are of the form:
VAX_MAIL_MACHINE!"CLUSTER_NAME::USERNAME" (with the double quotes!).  It
does not pose a problems to our mailer, but when we pass the message to
other mailers in the network, a lot of them barf on calculating the return
path.  I tried to write a rule that would match $+!"$+::$+" but sendmail
apparently handles double quotes differently than I would expect (ie. first
of all it did not match, secondly it said it was trying to match:

-----trying rule: $+ ! "^Q::^Q" 

So my question is: How do I match double quotes?  Or better yet, what will
be a good translation rule for converting
VAX_MAIL_MACHINE!"CLUSTER_NAME::USERNAME" to VAX_MAIL_MACHINE!USERNAME,
and, which rule should I put this in?

Thanks in advance,

Keith Cantrell

-----------------------------------------------------------------------
Keith Cantrell                    Phones:  hm: 214-492-1088
Apollo Computer                            wk: 214-519-2399 @ DSC 
A Subsidiary of Hewlett-Packard
USMAIL:                          EMAIL:
2100 Sonata Ln                   kcantrel@digi.lonestar.org
Carrollton TX 75007                           or
                                  ...!texbell!digi!kcantrel
-----------------------------------------------------------------------

moore@cs.utk.edu (Keith Moore) (07/19/90)

In article <798@digi.lonestar.org> kcantrel@digi.lonestar.org (Keith Cantrell) asks:
How do you parse double quotes?

The answer is:  You can't do this with sendmail.  Sendmail assumes that
the headers and addresses are RFC822-compliant, so anything within
double quotes is treated as a single token.

>So my question is: How do I match double quotes?  Or better yet, what will
>be a good translation rule for converting
>VAX_MAIL_MACHINE!"CLUSTER_NAME::USERNAME" to VAX_MAIL_MACHINE!USERNAME,
>and, which rule should I put this in?

The place to do this is not in sendmail, but in the gateway between
the DECnet world and the Internet world.  I just added support to my
DECnet mail gateway for rewrite rules based on regular expressions.
With this code and some help from the domain name server, it's not too
difficult to convert most DECnet mail addresses to domain addresses.

I'll announce in this newsgroup when the new version of the gateway
is ready for release.

-- 
Keith Moore			Internet: moore@cs.utk.edu
University of Tenn. CS Dept.	BITNET: moore@utkvx
107 Ayres Hall, UT Campus	UT Decnet: utkcs::moore
Knoxville Tennessee 37996-1301	Telephone: +1 615 974 0822

peirce@gumby.cc.wmich.edu (Leonard Peirce) (07/19/90)

In article <1990Jul18.170636.8340@cs.utk.edu> moore@cs.utk.edu (Keith Moore) writes:
>In article <798@digi.lonestar.org> kcantrel@digi.lonestar.org (Keith Cantrell) asks:
>>So my question is: How do I match double quotes?  Or better yet, what will
>>be a good translation rule for converting
>>VAX_MAIL_MACHINE!"CLUSTER_NAME::USERNAME" to VAX_MAIL_MACHINE!USERNAME,
>>and, which rule should I put this in?
>
>The place to do this is not in sendmail, but in the gateway between
>the DECnet world and the Internet world.

It sounds like the problem could be /usr/etc/mail11dv3.  It's not stripping
off the double quotes from mail coming from the VMS side (which must be
addressed ULTRIXNODE::"user@host.domain".  It leaves the quotes on, sendmail
treats everything inside it as one token and does some funny things with it.

mail11dv3 used to work ok but it was broken for ULTRIX 3.0.  I got a patched
copy from someone at DEC that worked fine.  It was supposed to be fixed in
3.1 but wasn't.  Fortunately, the 3.0 version still worked.

If anyone needs a copy of mail11dv3, let me know.
--
Leonard Peirce                  Internet:  peirce@gumby.cc.wmich.edu
Western Michigan University                peirce@gw.wmich.edu
Academic Computing Services     UUCP:      ...!uunet!sharkey!wmichgw!peirce
Kalamazoo, MI  49008            Phone:     (616) 387-5469