[39] in athena10

home help back first fref pref prev next nref lref last post

ATHENA_SESSION_TMPDIR

daemon@ATHENA.MIT.EDU (Tim Abbott)
Sat Jan 12 01:07:23 2008

Date: Sat, 12 Jan 2008 01:07:11 -0500 (EST)
From: Tim Abbott <tabbott@MIT.EDU>
To: athena10@mit.edu
Message-ID: <Pine.LNX.4.64L.0801120050590.26368@mega-man.mit.edu>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed

I'm wondering what the plan for ATHENA_SESSION_TMPDIR is in the future. 
Currently, ATHENA_SESSION_TMPDIR is created by some code in the system 
dotfiles:

# Create a unique temporary directory for the session, and remember
# the directory name in the environment.
sessiondir="`$initdir/mksessiondir -s $$`"
if [ -n "$sessiondir" ]; then
   ATHENA_SESSION_TMPDIR="$sessiondir"
   export ATHENA_SESSION_TMPDIR
fi

One of the annoying things about this system is that it leaks a file in 
/tmp every time someone logs in.  Its other problem is that 
ATHENA_SESSION_TMPDIR is not guaranteed to be set if the user is not using 
the system dotfiles for whatever reason (the common case for this on 
Linerva is people logging in with GSSAPIDelegateCredentials=no).

Currently, the only thing Debathena has used ATHENA_SESSION_TMPDIR for is 
working around the fact that the elinks package (the version of links 
installed on Linerva) creates a named pipe in $HOME, and the package which 
configures this is only installed on Linerva and mega-man at the moment 
(though it might be deployed more widely in the future if we can't get 
elinks fixed upstream).

I recently generalized pam_xauthority.so to pam_mktemp.so (currently 
available in /mit/debathena/packages/debathena/), which makes it 
convenient to set an environment variable based on the results of 
mkstemp/mkdtemp at login, and remove the resulting file at logout.

So, one option would be to use this new PAM module for this purpose. 
We're currently planning to modify Debathena to use this new PAM module to 
handle ATHENA_SESSION_TMPDIR, but figure it's worth discussing the 
long-term fate of ATHENA_SESSION_TMPDIR first (I don't know what its 
original purpose was).  In particular, I'm wondering whether there's a 
reason ATHENA_SESSION_TMPDIR shouldn't just go away (we can probably get 
the elinks bug fixed upstream).

 	-Tim Abbott

home help back first fref pref prev next nref lref last post