[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

zmailer's parsing of quoted addresses




One of our users recently rec'd the following rejected message:

	----- Transcript of session follows -----
	Connected to mail.aero.org:
	RCPT To:<lao::louis andrews@mts$.enet.dec.com>
	501-               ^
	501 Path data: Missing "@" from mailbox definition
	554 "lao::louis andrews"@mts$.enet.dec.com... Remote protocol error
	----- Unsent message follows -----

when sending a message 

	To: "lao::louis andrews"@mts$.enet.dec.com

Shouldn't zmailer be able to parse that since the space is within
quotes and just send the message to mts$.enet.dec.com?  Why the
"remote protocol error" (I'm guessing it's the $ in the hostname)?

I don't think it's even getting as far as the router, but if it did,
it still wouldn't work. The following script shows what the router does
with that address (it does the same thing -- trys to send it to @lao --
if I route something like this as well:

	 "lao::louis andrews"@mts.com

so it doesn't appear to be the $ in the hostname that is messing up the
routing).

Script started on Sat Jun 25 19:17:06 1994
[41] router -i
ZMailer router (2.2.m8 #123: Mon Apr  4 19:37:36 PDT 1994)
  bien@zee:/home/src/zmailer-2.2.1-mea-940322/router
Copyright 1992 Rayan S. Zachariassen

z$ router "lao::louis andrews"@mts$.enet.dec.com
<bien.interactive@aero.org>: address: lao::louis andrews@mts$.enet.dec.com
(((error unresolvable 'louis andrews@mts$.enet.dec.com@lao' default_attributes)))
z$ trace on
z$ router  "lao::louis andrews"@mts$.enet.dec.com
    router 'lao::louis andrews@mts$.enet.dec.com'
        : default_attributes
        log address: 'lao::louis andrews@mts$.enet.dec.com'
            get (get envelopeinfo message-id) <0>
            echo <bien.interactive@aero.org>: address: lao::louis andrews@mts$.enet.dec.com
<bien.interactive@aero.org>: address: lao::louis andrews@mts$.enet.dec.com
        db flush expansions
        rrouter 'lao::louis andrews@mts$.enet.dec.com' default_attributes
            canonicalize 'lao::louis andrews@mts$.enet.dec.com'
                continue
?=1
                focus 'louis andrews@mts$.enet.dec.com<@lao>'
                    [ lao =  ]
?=1
                    [ false = false ]
                    %dblookup (canon lao) <0>
                    [ lao ]
                    [ lao ]
                    [ false = true ]
?=1
?=1
?=1
                    echo louis andrews@mts$.enet.dec.com<@lao>
                return (return) <0>
?=1
?=1
?=1
?=1
            deliver lao
                %dblookup (thishost lao) <0>
?=1
?=1
                [ ]
?=1
?=1
                return (return 1) <0>
?=1
?=1
?=1
            [ ]
?=1
            [ lao = aero.org ]
?=1
?=1
?=1
?=1
?=1
?=1
            [ xfalse = xtrue ]
?=1
?=1
            routes_neighbour lao 'louis andrews@mts$.enet.dec.com@lao' default_attributes
                %dblookup (routesdb lao) <0>
?=1
?=1
?=1
                return (return 1) <0>
?=1
?=1
?=1
?=1
            smtp_neighbour lao 'louis andrews@mts$.enet.dec.com@lao' default_attributes
                host_neighbour lao.
                    %dblookup (mxhosts lao.) <0>
?=1
                    %dblookup (ipaddress lao.) <0>
?=1
?=1
?=1
                    return (return 1) <0>
?=1
?=1
?=1
                return (return 1) <0>
?=1
?=1
?=1
?=1
            uucp_neighbour lao 'louis andrews@mts$.enet.dec.com@lao' default_attributes
                pathalias lao
                    %dblookup (pathdb lao) <0>
?=1
?=1
?=1
                    return (return 1) <0>
?=1
?=1
?=1
?=1
                return (return 1) <0>
?=1
?=1
?=1
?=1
?=1
            [ xfalse = xtrue ]
?=1
?=1
            [ xfalse = xtrue ]
?=1
?=1
            [  ]
?=1
            return (return (((error unresolvable 'louis andrews@mts$.enet.dec.com@lao' default_attributes)))) <0>
        [  ]
?=1
?=1
        return (return (((error unresolvable 'louis andrews@mts$.enet.dec.com@lao' default_attributes)))) <0>
(((error unresolvable 'louis andrews@mts$.enet.dec.com@lao' default_attributes)))
z$ 

Is that really the correct way to parse an address like that?

--Cheryl Bien
  bien@aero.org