[OpenAFS] Solaris 10 11/06 afs 1.4.2 pam module panic.

Dale Ghent daleg@umbc.edu
Tue, 19 Dec 2006 19:05:53 -0500

On Dec 19, 2006, at 6:52 PM, Carson Gaspar wrote:

> > meem wrote:
> > Is there a reason they're not using crsetugid() (see ddi_cred 
> (9F)) to > do this? Seems like if they had, everything would've  
> worked fine.
> Seems like a possible solution.

It is, and I have a patch in the works which uses the ddi_cred routines.

I have a afs kernel module that, when compiled on earlier versions of  
Solaris 10, will work on Solaris 10 11/06  without panic'ing it...  
like I said, it works mostly. While setting the pag using the  
ddi_cred crsetgroups() call fixes the panic, there are tons of naked  
references to cred_t elsewhere that need to be whacked and replaced  
with the relevant ddi_cred lookup functions.

I have my fixes in src/afs/SOLARIS/osi_groups.c for the afs_setgroups 
() and afs_getgroups() functions. Now I'm trying to make sense of src/ 
afs/SOLARIS/afs_osi_pag.c and friends and port them with healthy dose  
of AFS_SUN510_ENV ifdefs.

Stuff like the following:
     gidset0 = credp->cr_groups[0];
     gidset1 = credp->cr_groups[1];

is everywhere and needs to be addressed for this to be fixed well.

Dale Ghent
UNIX Systems Specialist
UMBC - Office of Information Technology
ECS 201 - x51705