IRIX 6.5 + AFS/Kerberos Problems

David Steiner david.r.steiner at Dartmouth.EDU
Fri May 3 05:19:24 EST 2002


I am having problems compiling ssh 3.1.p1 under IRIX 6.5.15. I can 
get ssh to compile but it does not seem to be able to authenticate 
using afs passwords.

Some details:

gcc 3.0.1
ssl-0.9.6c
zlib-1.1.4.

I am configuring with:

	./configure --with-kerberos4=/usr/kerberos --with-afs=/usr/afsws \
		--with-tcp-wrappers=/usr/local

Straight out of the box, this fails with:

        gcc -g -O2 -Wall -Wpointer-arith -Wno-uninitialized -I. -I. 
-I/usr/local/
ssl/include -I/usr/local/include  -I/usr/local/include 
-I/usr/kerberos/include -
I/usr/afsws/include -DSSHDIR=\"/usr/local/etc\" 
-D_PATH_SSH_PROGRAM=\"/usr/loca
l/bin/ssh\" 
-D_PATH_SSH_ASKPASS_DEFAULT=\"/usr/local/libexec/ssh-askpass\"  -D_
PATH_SFTP_SERVER=\"/usr/local/libexec/sftp-server\" 
-D_PATH_SSH_PIDDIR=\"/usr/l
ocal/etc\"  -DSSH_RAND_HELPER=\"/usr/local/libexec/ssh-rand-helper\" 
-DHAVE_CONF
IG_H -c auth-passwd.c
In file included from auth-passwd.c:49:
/usr/include/crypt.h:38: conflicting types for `des_encrypt'
/usr/kerberos/include/des.h:181: previous declaration of `des_encrypt'
*** Error code 1 (bu21)


I found a "fix" for this in a post in the mailing list archive 
indicating that there was a name conflict with the SGI libs which 
could be worked around by modifying auth-passwd.c and auth.h as 
follows:

         auth-passwd.c:
	--------------
	at line 46: add line:  #define	ONLY_PASSWD_AUTH
		(just before: #include "auth.h" )

	 auth.h
	------
	make include of krb.h conditional (starts at line 100):

		#ifdef KRB4
	 new-->	#ifndef ONLY_PASSWD_AUTH
		#include <krb.h>
		int     auth_krb4(Authctxt *, KTEXT, char **);
		int     auth_krb4_password(Authctxt *, const char *);
		void    krb4_cleanup_proc(void *);
	 new-->	#endif  /* ! ONLY_PASSWD_AUTH */


After making this change, ssh will build and run but sshd does not 
allow logging in using AFS accounts despite the defaults saying it 
should.

There was another post in the archives that said the problem might be 
taken care of by removing the #include <crypt.h> directive from 
auth-passwd.c but this exhibits the same behavior as the the previous 
fix.

Can anyone out there point me in the right direction.

TIA,
-- 
David R. Steiner                               david.r.steiner at dartmouth.edu
UNIX System Manager                            Phone:  603.646.3127
Dartmouth College                              Fax:     603.646.1041



More information about the openssh-unix-dev mailing list