[4309] in Kerberos

home help back first fref pref prev next nref lref last post

Re: Linux box as kerberos server

daemon@ATHENA.MIT.EDU (David Simmons)
Sun Dec 11 00:03:34 1994

To: kerberos@MIT.EDU
Date: 11 Dec 1994 04:45:42 GMT
From: simmons@EE.MsState.Edu (David Simmons)
Reply-To: simmons@EE.MsState.Edu

In article <3cd3el$jvj@news.bu.edu>, Brian Mancuso <brianm@csa.bu.edu> wrote:
>Here is a more detailed summary of the changes needed to compile
>Kerberos V on the Linux Platform. This file can also be obtained
>from 'ftp://spiff.gnu.ai.mit.edu/tmp/brian/' .
>
> ---
>
>I say with much regret that in the hasty manner in which I went about
>the build I neglected to record any of the changes that I made, or any
>circumstances that prevented a build of Kerberos V on a Linux Platform.
>
>To the best of my recollection, however, I had to make the following
>changes:
>
> * In order to get the subsystem to build ("ss") it was necessary to
>   copy '/usr/bin/sed' to '/bin' .

Hmm... somehow, making changes to the system files doesn't seem to
be a real solution.  Ideally, the kerberos maintainers would adjust
the configure stuff to determine where 'sed' is on the system.  For
now, altering src/util/et/Makefile.in and src/util/ss/Makefile.in to
use the correct path for sed seems to be the most elegant solution.

> * In order to get the kerberos libraries to build it was necessary to
>   modify stdlib.h . I commented out line 141 of the inc-4.6.20 version
>   which read 'extern void srandom __P((unsigned int __seed));' .

Again, this problem lies in the kerberos source, and not the system
file stdlib.h.  According to the ChangeLog file in src/appl/bsd,
the configure stuff checks for the presence of the srand48() function
on the system, and if it exists, substitutes it for srandom.  It
does this by defining srandom to be srand48.  This would be an
acceptable approach, except that stdlib.h, which is ultimately
included, defines both srandom and srand48.  This causes srandom
to be defined twice in the compile, generating a fatal error.

I think the ideal solution to this problem would be to use an
independent label definition, such as "RANDOM", to define as
either srandom or srand48.  My solution for this compile is to
manually edit the two files that use this, krlogin.c and krlogind.c,
and change references of srandom to srand48, as well as editing the
configure script to leave out the -Dsrandom=srand48.

>
> * In order to build the administration utilities it was necessary to
>   modify the Makefiles generated by Autoconf such that they linked
>   with libdbm .

I haven't reached this problem yet.  :)

When I finish making the necessary modifications, I'll release a
patch that can be applied to a clean, freshly unpacked, kerberos
V5, beta 4.3.  Hopefully the official source tree will eventually
be more universal.

David

-- 
David Simmons, System Administrator                 simmons@ee.msstate.edu
Mississippi State University Electrical and Computer Engineering
Visit my home page!  http://www.ee.msstate.edu/~simmons

home help back first fref pref prev next nref lref last post