[OpenAFS-devel] Solaris libafs update

Dale Ghent daleg@umbc.edu
Tue, 2 Jan 2007 01:34:53 -0500


For those of you who don't obsessively track cvs commits...

I submitted a patch tonight to clean up the remaining uses of suser()  
in libafs when compiled on Solaris 10 or better. In all cases except  
two, all calls to suser() have been replaced with calls to priv_policy 
(). This insulates libafs in case suser() goes away some day  
(currently in the Solaris 10 kernel, suser() has been demoted to a  
macro around priv_policy() anyway)

The two exceptions are in afs_mount() and afs_unmount() in src/afs/ 
SOLARIS/osi_vfsops.c. For Solaris <= 9, the calls to suser() to  
determine if the calling user has permission to mount/umount AFS are  
kept. On Solaris >= 10, secpolicy_fs_mount() and secpolicy_fs_unmount 
() are called instead. In a basic sense, these are transparent  
replacements for suser()... with one advantage - it's one more step  
in the direction of (hopefully) making the afs kernel module zone- 
friendly... some day.

Still tracking down any more uses of private functions or stucts/ 
struct members. Right now I'm starting with a dump from 'nm -u  
libafs.nonfs.o' and going down the list.

Solaris Nevada (aka Solaris 11) is now recognized. My patch to add  
sun4x_511 and sunx86_511 sysnames was accepted a few days ago. You  
can now compile OpenAFS cvs HEAD on OpenSolaris or a derivative  
thereof. It seems to work as of right now, but since Solaris Nevada  
is ("officially") still a moving target, this support should stay in  
the 1.5 tree until Solaris 11 is officially released.

/dale

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