dce@mips.UUCP (David Elliott) (11/11/86)
In 4.3BSD, the code to get the host table entries using the hostname (gethostbyname()) first takes the characters in the hostname and turns them all into lower case. (This applies to the database version of gethostbyname() and to the code used when the nameserver is not running. I didn't check the nameserver code.) We have had customer complaints saying that they need to be able to have case-sensitivity in hostnames. Is there any reason that one of the following could not be done? 1. Allow case-sensitivity in hostnames by removing the upper/lower case conversion. 2. Change the routines to understand either case. That is, have hostname "MyHoSt" be the same as "myhost". Is there a definitive document describing exactly what a hostname can be and what it means (please, no replies referring to include files; I know what they say about length and so forth)? David Elliott MIPS Computer Systems, Inc. decwrl!mips!dce
jsdy@hadron.UUCP (Joseph S. D. Yao) (12/19/86)
In article <762@mips.UUCP> dce@mips.UUCP (David Elliott) writes: >We have had customer complaints saying that they need to be able to >have case-sensitivity in hostnames. >Is there any reason that one of the following could not be done? > 1. Allow case-sensitivity in hostnames ... > 2. Change the routines to understand either case. That is, have > hostname "MyHoSt" be the same as "myhost". >Is there a definitive document ... Apologies if this has already been answered; we lost news for a while. In the ARPA research community, papers are forever working papers, and are called "Requests for Comments" (RFC's) -- and, indeed, may in fact be modified long after they are published. The reference you seek is RFC#822: Standard for the Format of ARPA Internet Text Messages. This isn't the only such document (ISO is working on one, for instance), but it's been around a long time ... and it's the one of which I have a copy. And the one on which sendmail is (however loosely) based. 3.4.7 CASE INDEPENDENCE Except as noted, alphabetic strings may be represented in any combination of upper and lower case. The only syntactic units which requires [sic] preservation of case information are: - text - qtext - dtext - ctext - quoted-pair - local-part, except "Postmaster" When matching any other syntactic unit, case is to be ignored. For example, the field-names "From", "FROM", "from", and even "FroM" are semantically equal and should all be treated ident- ically. When generating these units, any mix of upper and lower case alphabetic characters may be used. The case shown in this specification is suggested for message-creating processes. Note: The reserved local-part address unit, "Postmaster", is an exception. When the value "Postmaster" is being interpreted, it must be accepted in any mixture of case, including "POSTMASTER", and "postmaster". [sic] In other words, only local mailbox names (lognames & group aliases), the body of the message, and text that's somehow protected are re- quired to have case information preserved. That is for the benefit of primitive operating systems which work better with only one case (no flames! I said it to be funny, ha-ha!). Sendmail, purely for its own convenience in interpreting these things, takes this quite literally when translating things to LC for comparisons and not retaining the cased versions. Other mailers (MMDF, perhaps?) might retain case info in the delivered version. However, your customers are in violation of standards if they claim to need case in host names. -- Joe Yao hadron!jsdy@seismo.{CSS.GOV,ARPA,UUCP} jsdy@hadron.COM (not yet domainised)