Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 14 Nov 1996 07:02:22 -0600 (CST)
From:      Chris Csanady <ccsanady@friley216.res.iastate.edu>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   bin/2008: kerberos tickets from login all have the same name
Message-ID:  <199611141302.HAA02135@friley216.res.iastate.edu>
Resent-Message-ID: <199611141310.FAA07916@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         2008
>Category:       bin
>Synopsis:       kerberos tickets from login all have the same name
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Nov 14 05:10:01 PST 1996
>Last-Modified:
>Originator:     Chris Csanady
>Organization:
>Release:        FreeBSD 3.0-CURRENT i386
>Environment:

	

>Description:

	

By default, login stores your kerberos tickets in /tmp/tkt_uid.  If you are
logged on to the same machine multiple times, it will use the same ticket.  It
is generally good practice to put a kdestroy in your .logout (or the default.)
If you do this, logging out of any of your sessions will mean you have no
tickets in the others.
	

>How-To-Repeat:

	

>Fix:
	
	

*** klogin.c    Thu Nov 14 06:45:32 1996
--- klogin.c.new        Thu Nov 14 06:50:08 1996
***************
*** 54,59 ****
--- 54,60 ----
  
  extern int notickets;
  extern char *krbtkfile_env;
+ extern char *tty;
  
  /*
   * Attempt to log the user in using Kerberos authentication
***************
*** 102,112 ****
         */
  
        if (strcmp(instance, "root") != 0)
!               (void)sprintf(tkt_location, "%s%d", TKT_ROOT, pw->pw_uid);
!       else {
!               (void)sprintf(tkt_location, "%s_root_%d", TKT_ROOT, pw->pw_uid);
!               krbtkfile_env = tkt_location;
!       }
        (void)krb_set_tkt_string(tkt_location);
  
        /*
--- 103,114 ----
         */
  
        if (strcmp(instance, "root") != 0)
!               (void)sprintf(tkt_location, "%s_%d.%s",
!                       TKT_ROOT, pw->pw_uid, tty);
!       else
!               (void)sprintf(tkt_location, "%s_root_%d.%s",
!                       TKT_ROOT, pw->pw_uid, tty);
!       krbtkfile_env = tkt_location;
        (void)krb_set_tkt_string(tkt_location);
  
        /*

>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199611141302.HAA02135>