[comp.mail.misc] use of %

argv%turnpike@Sun.COM (Dan Heller) (10/14/89)

[ I summarize at the end of this letter ]

> From: jwc@unify.UUCP (J. William Claypool)
> In article <126099@sun.Eng.Sun.COM> argv@sun.UUCP (Dan Heller) writes:
> >Awww, come on... don't leave 'em hanging.  You should at least summarize..
> >% has lower precedence than @, but is evaluated left to right like @.
> >It's precedence is equal to !.
>                     ^^^^^
> Seems to me that % should have LOWER precedence than !. 
...
> How about:
>     addr2!user%addr1
> shouldn't this be routed the same?
Yes, this is routed the same, but we're now speaking hypothetically
because no "working" mailer would put a %-sign an address without it
having an @-sign in it.  (see notes about non-working mailers below).
Because your address is equal to the one's I gave earlier, your
argument does not satisfy your claim that % has lower precedence than
the !.  Equal precedence means that the address parsing does not alter
due to the precense of the %.

Similarly, and because we're spekaing "hypothetically" now, this
address is equal:
    addr2%addr1!user

> >From: toddp@hp-ptp.HP.COM (Todd_Poynor)
> >% has lower precedence than @, but is evaluated left to right like @.
> >It's precedence is equal to !.
> Not quite -- "%" is evaluated right-to-left, as per the example.  There
> should only be one "@" in the address, since source routing using
Back to reality now (no hypothetical situations), %-signs should never
be used without the precense of an @-sign.  And because there may be only
*ONE* @-sign in an address, the % is sometimes used but should be treated
no differently than !'s aside from the fact that %'s are evaluated from
left to right as opposed to !'s being evalutated right to left.

From time to time, you'll hear someone whine about mixing @'s and !'s.
Well, you can get around them by using the %-sign.  This isn't a good
solution, it's just *a* solution (quality of solution here is not being
evaluated).

> >From: pcf@galadriel.bt.co.uk (Pete French)
> >From article <126099@sun.Eng.Sun.COM>, by argv%turnpike@Sun.COM (Dan Heller):
> > the following are "similar" addresses:
> This is not necessarily true in the case of the second one. Another BT site
> I used to work on ran bog-standard V7 mail - and as such would not understand
> @ signs.
Ok, back to hypothetical again...  Let me premise this by saying that
the discussion about @-signs and %-signs and all this should be applied
to meachines that run -at least- RFC-822 compiant MTAs.  Attempting to
throw a wrench into the discussion by giving a broken mailer as an example
doesn't work.  If your machine doesn't understand @-signs, then users
shouldn't be using it.  If you're getting mail from remote sites that
are sending you address that have @-sign in it, those sites are definitely
broken.

> PS: If anyone can tell me where to get a copy of a mailer that will translate
>     the @ signs properly then let me know would you....
MTA or MUA?  Mush (MUA) provides this functionality to a limited degree.
That is, it will never -generate- an address with an @-sign (if you've
compiled with UUCP defined), but it will allow the user to specify an
address with an @-sign.  If you reply to mail, it always converts to uucp
format (if configured to do so).

[ summary ]

Look -- it's like this, plain and simple...
If an address has an @ sign in it, go directly to the host on the
-right- of the @-sign and pass everything to the left of it as the
"rest of the address".  This should only happen -once- because there
should only be one @-sign.  otherwise, the address -should- only 
contain !'s -- evaluate left to right and send to each host in the
path -- if it contains a %, then send to the host to the -right- of
the token you're looking at.  There's nothing about precedence since
their precedences are equal.


dan <island!argv@sun.com>
-----
My postings reflect my opinion only -- not the opinion of any company.

peter@ficc.uu.net (Peter da Silva) (10/15/89)

Intel forges to the lead in incompatibilities again.

Intel's OpenNET software uses % to indicate machine names. So far, so good.
Unfortunately it gives it ! syntax. If I send mail to someone outside my
subnet they will see:

	ficc%peter

If they're on uucp, they will see:

	ficc%peter, remote from ficc

Their mail user agent will generate this reply:

	ficc!peter!ficc

What fun, eh?
-- 
Peter da Silva, *NIX support guy @ Ferranti International Controls Corporation.
Biz: peter@ficc.uu.net, +1 713 274 5180. Fun: peter@sugar.hackercorp.com. `-_-'
                                                                           'U`
Quote: Structured Programming is a discipline -- not a straitjacket.

jwc@unify.UUCP (J. William Claypool) (10/16/89)

In article <126303@sun.Eng.Sun.COM> argv@sun.UUCP (Dan Heller) writes:
>[ I summarize at the end of this letter ]
>
>> From: jwc@unify.UUCP (J. William Claypool)
>> In article <126099@sun.Eng.Sun.COM> argv@sun.UUCP (Dan Heller) writes:
>> >Awww, come on... don't leave 'em hanging.  You should at least summarize..
>> >% has lower precedence than @, but is evaluated left to right like @.
>> >It's precedence is equal to !.
>>                     ^^^^^
>> Seems to me that % should have LOWER precedence than !. 
>...
>> How about:
>>     addr2!user%addr1
>> shouldn't this be routed the same?
>Yes, this is routed the same, but we're now speaking hypothetically
>because no "working" mailer would put a %-sign an address without it
>having an @-sign in it.  (see notes about non-working mailers below).

It seems to me that '%' should be completely ignored until there are no
other address operators in the route.  Obviously, the _address_
<user%host@some.domain> rather than the _route_ should appear in the
mail header.

This is exactly what Smail 2.5 does with <user%host@some.domain>.  The
'%' is ignored (as it should be according to rfc822) and the UUCP route
generated is something like 'host1!host2!...!some.domain!user%host'.
It has been my experience that most hosts that understand
'do.main!local-part' (as any UUCP gateway should) also handle '%' in
the local part as Smail 2.5 seems to expect.
-- 

Bill Claypool    W. (916) 920-9092 |I know what I know if you know what I mean
jwc@unify.UUCP   H. (916) 381-4205 |------------------------------------------
    ...!{csusac,pyramid}!unify!jwc |  SCCA SFR Solo II   74 es  1984 CRX 1.5

toddp@hp-ptp.HP.COM (Todd_Poynor) (10/17/89)

>Back to reality now (no hypothetical situations), %-signs should never
>be used without the precense of an @-sign.
  
I'll buy your argument about >mailers< not putting "%" signs on addresses
without @s, but users befuddled by the Internet address syntax may easily
do this.  I see no reason for requiring an @ to be present.
  
>the % is sometimes used but should be treated
>no differently than !'s aside from the fact that %'s are evaluated from
>left to right as opposed to !'s being evalutated right to left.
 ^^^^^^^^^^^^^                                    ^^^^^^^^^^^^^
  
I believe you intended to indicate the opposite directions; at least, this
is what RFC-1123 mandates.  This RFC does >suggest< that "%" have lower
precedence than any other operator, including "!", but does not require it.
However, it's a fairly safe bet that this convention will become rather
widespread, now that it's recommended by such an influential source.
I don't know how prevalent hybrid addresses containing both routing
operators are in the net, but I believe this has usually been discouraged.
  
>Look -- it's like this, plain and simple...
  
Not so plain and not so simple.  This discussion was prompted by your
posting that purported to be a summary of what RFC-1123 said on the
matter, which it decidedly wasn't.  Hence my clarifying posting.
The algorithm you are arguing for is in clear disagreement with section
5.2.16 of that RFC, which fancies itself the new standard for handling
this source routing.  Your algorithm may well be the most commonly-used
today, I don't know.  I do know it is not quite the way the hosts have
been configured where I'm at.
  
So it appears we're running into that time-honored conflict: is the proper
way to do things what the Internet working groups and task forces say to
do, or is it whatever will leave you compatible with the majority of
Internet software out there?  Already there is some discussion in
comp.protocols.tcp-ip on whether these RFCs are being taken seriously by
Internet software vendors ("New Host-Requirement RFCs").  Time will tell.
For the mean time, I'm evaluating bangs before percents, and percents in
right-to-left fashion, and telling users never to mix bangs and percents.
  
The one part I'm holding off on is the use of empty reverse paths ("<>")
in the envelope (section 5.3.3) for failure notification messages.  This
construct loses on the UN*X mailers I've tried it on -- it gets updated
to "<@@hostname>" by the receiving UN*X host.  A message with this envelope
is not long for the world.  Forgive the drift...
  
^todd    "My standard can beat up your standard"

lear@NET.BIO.NET (Eliot Lear) (10/18/89)

In article <1960002@hp-ptp.HP.COM> toddp@hp-ptp.HP.COM (Todd_Poynor) writes:

> However, it's a fairly safe bet that this convention will become rather
> widespread, now that it's recommended by such an influential source.

By no means was did we intend to recommend use of the % hack.  It is
merely mentioned in discussion as a method that has been used in the
past.  However, what you do to your local-part is your business.

To quote the RFC (Section 5.2.6):


         DISCUSSION:
              The intent is to discourage all source routing and to
              abolish explicit source routing for mail delivery within
              the Internet environment.  Source-routing is unnecessary;
              the simple target address "user@domain" should always
              suffice.  This is the result of an explicit architectural
              decision to use universal naming rather than source
              routing for mail.  Thus, SMTP provides end-to-end
              connectivity, and the DNS provides globally-unique,
              location-independent names.  MX records handle the major
              case where source routing might otherwise be needed.
-- 
Eliot Lear
[lear@net.bio.net]

dg@lakart.UUCP (David Goodenough) (10/20/89)

lear@NET.BIO.NET (Eliot Lear) sez:
>          DISCUSSION:
>               The intent is to discourage all source routing and to
>               abolish explicit source routing for mail delivery within
>               the Internet environment.  Source-routing is unnecessary;
		    ^^^^^^^^
>               the simple target address "user@domain" should always
>               suffice.

Since when did .UUCP become a domain recognised by the Internet folks??

Note the "Internet" address in the .sig file.
-- 
	dg@lakart.UUCP - David Goodenough		+---+
						IHS	| +-+-+
	....... !harvard!xait!lakart!dg			+-+-+ |
AKA:	dg%lakart.uucp@xait.xerox.com			  +---+

lear@NET.BIO.NET (Eliot Lear) (10/23/89)

Look.

If you're going to route over the Internet, and ESPECIALLY if you are
going to argue over how the RFCs call for things to be done, and the
reasons they were done, then don't get into a tizzy when I quote the
source.
-- 
Eliot Lear
[lear@net.bio.net]