From hartmans@MIT.EDU Fri Sep 27 02:48:21 1996 Received: from dragons-lair.MIT.EDU (DRAGONS-LAIR.MIT.EDU [18.177.1.200]) by rt-11.MIT.EDU (8.7.5/8.7.3) with SMTP id CAA05673 for ; Fri, 27 Sep 1996 02:48:20 -0400 Received: from MIT.EDU (SOUTH-STATION-ANNEX.MIT.EDU [18.72.1.2]) by dragons-lair.MIT.EDU (8.6.13/8.6.9) with SMTP id CAA20837 for ; Fri, 27 Sep 1996 02:48:19 -0400 Received: from STARKILLER.MIT.EDU by MIT.EDU with SMTP id AA25100; Fri, 27 Sep 96 02:48:19 EDT Received: by starkiller.MIT.EDU (5.x/4.7) id AA29092; Fri, 27 Sep 1996 02:48:18 -0400 Message-Id: <9609270648.AA29092@starkiller.MIT.EDU> Date: Fri, 27 Sep 1996 02:48:18 -0400 From: hartmans@MIT.EDU Reply-To: hartmans@MIT.EDU To: krb5-bugs@MIT.EDU Subject: Consider upgrading to new Autoconf directory standards before 1.0 release X-Send-Pr-Version: 3.99 >Number: 37 >Category: krb5-libs >Synopsis: Consider upgrading to new Autoconf directory standards before 1.0 release >Confidential: no >Severity: serious >Priority: high >Responsible: hartmans >State: closed >Class: doc-bug >Submitter-Id: unknown >Arrival-Date: Fri Sep e 02:49:01 EDT 1996 >Last-Modified: Thu Nov 14 22:07:19 EST 1996 >Originator: Sam Hartman >Organization: mit >Release: 1.0-development >Environment: System: SunOS starkiller 5.4 Generic_101945-37 sun4m sparc >Description: Newer versions of Autoconf provide several different directories with well-defined emeanings. For example, only user executables are installed in sbin; daemons are installed in libexec. Also, shared data like krb5.conf would be installed in share instead of lib. (I propose to keep /etc/krb5.conf hard-coded as the first place to look). TO the extent that is reasonable, we should adopt these conventions. >How-To-Repeat: >Fix: >Audit-Trail: State-Changed-From-To: open-analyzed State-Changed-By: hartmans State-Changed-When: Fri Oct 18 01:14:12 1996 State-Changed-Why: In general, this is as simple as changing pre.in and osconf.h. We lose the functionality of seeting install_exec_prefix, etc, but retain destdir so I don't think this is a major loss--we trade a broken local hack for compatibility with the rest of the world. Responsible-Changed-From-To: krb5-unassigned->hartmans Responsible-Changed-By: hartmans Responsible-Changed-When: Fri Oct 18 01:17:24 1996 Responsible-Changed-Why: I'm implementing it. State-Changed-From-To: analyzed-feedback State-Changed-By: hartmans State-Changed-When: Wed Oct 30 19:16:02 1996 State-Changed-Why: Interested in discussion on changes that have been committed. From: Sam Hartman To: krbdev@MIT.EDU Cc: krb5-bugs@MIT.EDU, ghudson@MIT.EDU Subject: Re: krb5-libs/37: Consider upgrading to new Autoconf directory standards before 1.0 release Date: Wed, 30 Oct 1996 19:15:53 -0500 I will soon be checking in some fairly major restructuring of where krb5 files get installed to correspond more closely with more recent file system standards and what Autoconf expects. Major changes include: * prefix/lib/krb5.conf ==> sysconfdir/krb5.conf (prefix/etc normally) * prefix/lib/krb5kdc ==> localstatedir/krb5kdc (normally * prefix/var/krb5kdc) Marc had convinced me that these changes were a bad idea, because while they tended to introduce compatability with other systems and enabled several configure-time options, they broke compatability with the Betas. He suggested I should use these options only if there was a way that I could get the default behavior to be what it used to be; no such way exists. However, when I was complaining to Greg about this, he pointed out that making such changes would only become difficult after 1.0 was released, and it is really a bad idea to clutter up prefix/lib. I decided to make these changes in parallel with having the debate about whether they are a good idea, because they are fairly simple to revert, and I would like a chance to work out the bugs if we do accept them. It should be possible to add an --enable-old-directory-structure option that sets things back the way they used to be, but there are some problems that make it a fairly bad idea for this to be the default. The main problem is that you would then force the user to both disable this option and set whatever overides to the directories they wanted if they wanted to change something. I.E. configure lines might look like: configure --disable-old-directory-structure --localstatedir=/secure/krb5-database instead of: configure --localstate dir=/secure/krb5-database This type of default behavior is more confusing than it's worth. --Sam From: Sam Hartman To: hartmans@MIT.EDU Cc: krb5-bugs@MIT.EDU Subject: Re: krb5-libs/37: Consider upgrading to new Autoconf directory standards before 1.0 release Date: Thu, 31 Oct 1996 00:20:43 -0500 The following files were changed: config/pre.in include/krb5/Makefile.in include/krb5/stock/osconf.h From: "Theodore Y. Ts'o" To: Sam Hartman Cc: krbdev@MIT.EDU, krb5-bugs@MIT.EDU, ghudson@MIT.EDU Subject: Re: krb5-libs/37: Consider upgrading to new Autoconf directory standards before 1.0 release Date: Thu, 31 Oct 1996 11:24:39 -0500 Date: Wed, 30 Oct 1996 19:15:53 -0500 From: Sam Hartman Major changes include: * prefix/lib/krb5.conf ==> sysconfdir/krb5.conf (prefix/etc normally) I'm less concerned about this because I consider /etc/krb5.conf to be the "standard" place most people should be using. The botch in Kerberos V4 where some packages look for krb.conf in /etc/athena, some in /usr/athena/etc, some look in /usr/local/lib, some in /usr/cygnus, etc. was and is a mistake. We should have left it in /etc/krb.conf and called it a day. Otherwise, you have all sorts of headaches when different binaries look in different directories. Woe betide you if you have more than one krb.conf file installed in these different directories, and you wonder why one program works, and another doesn't..... So compatibility problems caused by moving krb5.conf from prefix/etc to prefix/lib is just a specific case of a more general problem of putting krb5.conf in lib in the first place. I understand the rationale that is caused by people wanting to keep krb5.conf available over the network (say, NFS, etc.). They can do that by putting a symlink from /etc/krb5.conf to wherever they want krb5.conf to live. I will note that the assumption that prefixdir is located over NFS has its own entertaining security implications. :-) * prefix/lib/krb5kdc ==> localstatedir/krb5kdc (normally prefix/var/krb5kdc) This is a KDC issue only, and so it's much easier to deal with. Sam, I agree with you and Greg for checking this change in. I don't believe we should both with an --enable-old-directory-structure. - Ted State-Changed-From-To: feedback-open State-Changed-By: hartmans State-Changed-When: Fri Nov 1 18:48:23 1996 State-Changed-Why: Now that it's implemented and agreed to, it should be documented. From: Tom Yu To: hartmans@MIT.EDU Cc: krb5-bugs@MIT.EDU, krbdev@MIT.EDU Subject: Re: krb5-libs/37: Consider upgrading to new Autoconf directory standards before 1.0 release Date: Sun, 10 Nov 1996 21:58:22 -0500 While we're at it... /etc/v5srvtab is probably not such a great name for the default keytab location. For starters, "v5" isn't all that clear a nams, and "srvtab" is a holdover from krb4 days. How about something like "/etc/krb5keytab" or "/etc/k5keytab"? Understadably, if we're going to do this name change it should happen before 1.0. ---Tom State-Changed-From-To: open-closed State-Changed-By: hartmans State-Changed-When: Thu Nov 14 22:06:34 1996 State-Changed-Why: I believe this integration and the corresponding doc fix have been successfully integrated. >Unformatted: Currently, I do not let includedir set where includes are installed, as our includes are architecture-dependent.