[2824] in Kerberos-V5-bugs

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

krb5-libs/503: seteuid.c should not look for _POSIX_SAVED_IDS

daemon@ATHENA.MIT.EDU (evanc@synapse.net)
Sat Nov 22 14:59:05 1997

Resent-From: gnats@rt-11.MIT.EDU (GNATS Management)
Resent-To: krb5-unassigned@RT-11.MIT.EDU
Resent-Reply-To: krb5-bugs@MIT.EDU, evanc@synapse.net
Date: 22 Nov 1997 19:56:36 -0000
From: evanc@synapse.net
To: krb5-bugs@MIT.EDU
Cc: evanc@synapse.net


>Number:         503
>Category:       krb5-libs
>Synopsis:       seteuid.c should not look for _POSIX_SAVED_IDS
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    krb5-unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   unknown
>Arrival-Date:   Sat Nov 22 14:57:01 EST 1997
>Last-Modified:
>Originator:     Evan Champion
>Organization:
	
>Release:        krb5-1.0.2
>Environment:
	
System: BSD/OS conductor.synapse.net 3.1 BSDI BSD/OS 3.1 Kernel #0: Tue Oct 28 19:45:49 EST 1997 evanc@piano.synapse.net:/usr/src/sys/compile/CONDUCTOR i386


>Description:
	lib/krb5util/seteuid.c should not be looking for _POSIX_SAVED_IDS.
	This prevents seteuid() from being used on 4.4BSD systems, as none
	of them define _POSIX_SAVED_IDS, and seteuid() is very often the
	only set-effective-UID function that actually works.  This is
	definitely the case on all versions of BSD/OS.

	Fix verified to not break anything on BSD/OS 3.1 and FreeBSD
	3.0-current.  I rather doubt it will break anything on other
	platforms either.
>How-To-Repeat:
	
>Fix:
*** /home/evanc/1/krb5-1.0.3/src/lib/krb5util/seteuid.c Mon Nov 17 22:49:40 1997
--- src/lib/krb5util/seteuid.c  Sat Nov 22 14:53:19 1997
***************
*** 38,44 ****
    int euid_in;
  {
    uid_t euid = (uid_t) euid_in;
! #if defined(_POSIX_SAVED_IDS) && defined(HAVE_SETEUID)
    return  (seteuid(euid)) ;
  #else
  #if defined(HAVE_SETRESUID)
--- 38,44 ----
    int euid_in;
  {
    uid_t euid = (uid_t) euid_in;
! #if defined(HAVE_SETEUID)
    return  (seteuid(euid)) ;
  #else
  #if defined(HAVE_SETRESUID)

>Audit-Trail:
>Unformatted:

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