mfrost@BLOOM-BEACON.MIT.EDU (Mark Frost) (12/27/90)
Hello. I've got the kerberos sources up to patchlevel 9 and have spent the last week and half trying to get it all up. Most of the problems I've had were configuration difficulties, but now I think I'm stuck. I am able to start the kerberos server (/usr/etc/kerberos), and I can start the kadmin daemon. I can also edit the database. When I try to use, kpasswd (or even ksu), I seem to get a Bus error (core dumped) after I enter the verified password. After chasing this through the source code for a few days, I have finally discovered that it is coming from one of the des routines, specifically, pcbc_encrypt() (des_pcbc_encrypt() ?). The crash seems to come between the lines indicated below (located at approximately line 113 in pcbc_encrypt.c) #ifdef MUSTALIGN if ((long) input & 3) { bcopy((char *)input,(char *)&t_input[0],sizeof(t_input[0])); bcopy((char *)(input+1),(char *)&t_input[1],sizeof(t_input[1])); } else #endif { t_input[0] = *input; /* Gets bus error on execution of this*/ t_input[1] = *(input+1); } /* zero pad */ if (length < 8) { for (j = length; j <= 7; j++) *(t_in_p+j)= 0; } What really puzzles me about this is that this code obviously works or else the kerberos server wouldn't start up. I am using Pyramid OSx 5.1a on an MiServer. I am using the conf-pyr.h configuration file -- I put it in by hand in osconf.h as it seems to get lost otherwise. I have defined the following options in the config.Imakefile file BSD42 ATHENA_COMPAT ATHENA KERBEROS VFS NOTTYENT ENCRYPTION NDBM Does anyone have any ideas as to why this is happening? I'm assuming that this is the right place to post this -- if not, please direct me to where it should be sent. Thanks -m----------- Mark Frost (mfrost@pyramid.com) ---mmm--------- System Administrator - Hardware Engineering -----mmmmm------- Pyramid Technology Corporation -------mmmmmmm----- 1295 Charleston Rd, P.O. Box 7295 ---------mmmmmmmmm--- Mountain View, California 94039-7295 -----------mmmmmmmmmmm- (415) 335-8163
jtkohl@MIT.EDU (John T Kohl) (01/02/91)
If you look at a core dump, I suspect you'll find that the bus errors occur in the cases where the "input" is not word-aligned. It sounds like the Pyramid is a machine on which "MUSTALIGN" is required for the DES library to work properly. Try putting #define MUSTALIGN in your config file(s), rebuilding DES, and relinking. John