[1549] in Kerberos
Re: Need help setting up kerberos slave server.
daemon@ATHENA.MIT.EDU (Oren L. Stern)
Thu Sep 5 23:25:10 1991
Date: 6 Sep 91 02:40:42 GMT
From: nero@eng.umd.edu (Oren L. Stern)
To: kerberos@shelby.Stanford.EDU
In article <SA177CT@cc.swarthmore.edu> Andrew@cs.swarthmore.edu (Andrew Rieger) writes:
>
>
> We are running kerberos on a lan of Sun IPXs (4.1.1) and we are trying
>to set up a slave server. The documentation is sparse :-0, but we have
>gotten far enough to setup krb_prop in /etc/services, start kpropd on the
>slave machine and then manually start kprop on the server. The results were
>less than spectacular. Kpropd died on that slave (with the slowdeath
>function "AAAAHHHHHHH", as the error message says) and kprop returned
>errors saying that it could not connect because it couldn't bind the socket.
>We would appreciate any help in this area, as we are less than excited about
>the prospect of putting kerberos onto production machines without a backup
>server. Thanks.
Did kprop return the error or kpropd? We had a similar problem. On or
about line 150 of kpropd.c (V4, I assume), you'll find the text:
if ((sp = getservbyname("krb_prop", "tcp")) == NULL) {
klog(L_KRB_PERR, "kpropd: tcp/krb_prop: unknown service.");
SlowDeath();
}
sin.sin_port = sp->s_port;
sin.sin_family = AF_INET;
Add the line:
sin.sin_addr.s_addr = INADDR_ANY;
directly after that. If there is any garbage in that field when bind() is
called, it will have problems.
Another problem you might encounter on a RISC machine (such as yours) is
a possible byte alignment problem in kprop.c. Around line 566 is the text:
(*th)->net_addr = *(u_long *) host->h_addr;
This should be changed to:
bcopy(host->h_addr, (char *)&(*th)->net_addr, sizeof(u_long));
--
Oren Stern (nero@eng.umd.edu) | "A boy without mischief is like a bowling ball
UUCP: uunet!eng.umd.edu!nero | without a liquid center" -- Homer Simpson