[OpenAFS] case insensitivity in PTS names
Ted Anderson
ota@transarc.com
Mon, 22 Oct 2001 10:29:08 -0400 (EDT)
On Fri, 19 Oct 2001 19:32:34 -0400 (EDT) Jeffrey Hutzelman <jhutz@cmu.edu> wrote:
> Hm. It wasn't always that way, but it has been for a very long time:
>
> The stolower call in ptuser.c:pr_CreateUser appears here:
> revision 1.5
> date: 88/12/21 12:27:05; author: smn; state: Exp; lines added/del: 219/26
> Numerous changes and bug fixes, including the capabilities to change name
> and owner, and specify a cell to pr_Initialize. Also added kerberos
> security class prserver.
Thanks for doing this extra research. I only looked back as far as our
CML logs go. I should have looked deeper at the actual RCS logs.
> The lcstring call in WhoIsThis was present when that function was moved to
> ptprocs.c in v1.21. It actually appears to have been added by YOU, two
> days earlier, in v1.14 of utils.c:
>
> revision 1.21
> date: 89/08/02 12:54:44; author: ota; state: Exp; lines added/del: 61/8
> Moved WhoIsThis here.
> Checked more error codes.
> Changed AddToEntry to pass entry by reference.
> Allow specification of group id in noAuth mode.
>
> revision 1.14
> date: 89/06/08 14:13:14; author: ota; state: Exp; lines added/del: 40/29
> Fixed bug with making group its own owner.
> Improved WhoIsThis to lowercase name, and include non-null instances
Ahh, so. But actually it was two *months*, not two days. An
interesting, though unimportant for this discussion, event occurred in
these two months, namely I quit CMU and started at Transarc. I think
Sherri had quit working on the ptserver by then (she never worked at
Transarc), so I can't blame her for this. My best guess is that since
pr_CreateUser was only creating lowercase names anyway, it would reduce
spurious failures to l/c the names in WhoIsThis(). It is possible that
there was some client that was uppercasing names, but I don't recall any
such excuse.
The question is "Could WhoIsThis() be reverted to leave the name
alone?". Since the lowercasing on creation appears to be in the
client-side library routine, it doesn't actually prevent the server from
having uppercase names. It would depend on whether anyone depends on
this behavior of WhoIsThis().
Ted Anderson