diff options
author | nectar <nectar@FreeBSD.org> | 2000-01-17 03:10:58 +0800 |
---|---|---|
committer | nectar <nectar@FreeBSD.org> | 2000-01-17 03:10:58 +0800 |
commit | 482db597eacda04b8a78424fba298ba0fbbd2345 (patch) | |
tree | 37f44e0bd6a5ae7f9bf4e501b413a2922388d9a3 | |
parent | 067805e5f5b802bec548d1f765d5ed02d3b9d0d2 (diff) | |
download | freebsd-ports-gnome-482db597eacda04b8a78424fba298ba0fbbd2345.tar.gz freebsd-ports-gnome-482db597eacda04b8a78424fba298ba0fbbd2345.tar.zst freebsd-ports-gnome-482db597eacda04b8a78424fba298ba0fbbd2345.zip |
Update 1.1 -> 1.1.1
-rw-r--r-- | security/krb5-16/Makefile | 2 | ||||
-rw-r--r-- | security/krb5-16/distinfo | 2 | ||||
-rw-r--r-- | security/krb5-16/files/patch-as | 338 | ||||
-rw-r--r-- | security/krb5-16/files/patch-ba | 20 | ||||
-rw-r--r-- | security/krb5-16/files/patch-bb | 10 | ||||
-rw-r--r-- | security/krb5-17/Makefile | 2 | ||||
-rw-r--r-- | security/krb5-17/distinfo | 2 | ||||
-rw-r--r-- | security/krb5-17/files/patch-as | 338 | ||||
-rw-r--r-- | security/krb5-17/files/patch-ba | 20 | ||||
-rw-r--r-- | security/krb5-17/files/patch-bb | 10 | ||||
-rw-r--r-- | security/krb5-appl/Makefile | 2 | ||||
-rw-r--r-- | security/krb5-appl/distinfo | 2 | ||||
-rw-r--r-- | security/krb5-appl/files/patch-as | 338 | ||||
-rw-r--r-- | security/krb5-appl/files/patch-ba | 20 | ||||
-rw-r--r-- | security/krb5-appl/files/patch-bb | 10 | ||||
-rw-r--r-- | security/krb5/Makefile | 2 | ||||
-rw-r--r-- | security/krb5/distinfo | 2 | ||||
-rw-r--r-- | security/krb5/files/patch-as | 338 | ||||
-rw-r--r-- | security/krb5/files/patch-ba | 20 | ||||
-rw-r--r-- | security/krb5/files/patch-bb | 10 |
20 files changed, 624 insertions, 864 deletions
diff --git a/security/krb5-16/Makefile b/security/krb5-16/Makefile index 3c37aafcaeeb..ddbae5cc5440 100644 --- a/security/krb5-16/Makefile +++ b/security/krb5-16/Makefile @@ -6,7 +6,7 @@ # $FreeBSD$ # -DISTNAME= krb5-1.1 +DISTNAME= krb5-1.1.1 CATEGORIES= security MASTER_SITES= # manual download EXTRACT_SUFX= .tar diff --git a/security/krb5-16/distinfo b/security/krb5-16/distinfo index e465f8c0c7b1..75d29331a2be 100644 --- a/security/krb5-16/distinfo +++ b/security/krb5-16/distinfo @@ -1 +1 @@ -MD5 (krb5-1.1.tar) = 7a2c9796f40cd5d0c71e4caa75d2aa7b +MD5 (krb5-1.1.1.tar) = 33ab7d6e99fc09787f0ecce21df46086 diff --git a/security/krb5-16/files/patch-as b/security/krb5-16/files/patch-as index 519a1c74d4cb..badcda3daa6b 100644 --- a/security/krb5-16/files/patch-as +++ b/security/krb5-16/files/patch-as @@ -1,194 +1,144 @@ -*** clients/ksu/main.c.ORIG Fri Feb 6 19:41:57 1998 ---- clients/ksu/main.c Tue Jun 30 19:46:02 1998 -*************** -*** 56,62 **** - ill specified arguments to commands */ - - void usage (){ -! fprintf(stderr, "Usage: %s [target user] [-n principal] [-c source cachename] [-C target cachename] [-k] [-D] [-r time] [-pf] [-l lifetime] [-zZ] [-q] [-e command [args... ] ] [-a [args... ] ]\n", prog_name); - - } - ---- 56,62 ---- - ill specified arguments to commands */ - - void usage (){ -! fprintf(stderr, "Usage: %s [target user] [-m] [-n principal] [-c source cachename] [-C target cachename] [-k] [-D] [-r time] [-pf] [-l lifetime] [-zZ] [-q] [-e command [args... ] ] [-a [args... ] ]\n", prog_name); - - } - -*************** -*** 75,80 **** ---- 75,81 ---- - int argc; - char ** argv; - { -+ int asme = 0; - int hp =0; - int some_rest_copy = 0; - int all_rest_copy = 0; -*************** -*** 90,95 **** ---- 91,97 ---- - char * cc_target_tag = NULL; - char * target_user = NULL; - char * source_user; -+ char * source_shell; - - krb5_ccache cc_source = NULL; - char * cc_source_tag = NULL; -*************** -*** 174,180 **** - } - - -! while(!done && ((option = getopt(pargc, pargv,"n:c:C:r:a:zZDfpkql:e:")) != -1)){ - switch (option) { - case 'r': - options.opt |= KDC_OPT_RENEWABLE; ---- 176,182 ---- - } - - -! while(!done && ((option = getopt(pargc, pargv,"n:c:C:r:a:zZDfpkmql:e:")) != -1)){ - switch (option) { - case 'r': - options.opt |= KDC_OPT_RENEWABLE; -*************** -*** 216,221 **** ---- 218,226 ---- - errflg++; - } - break; -+ case 'm': -+ asme = 1; -+ break; - case 'n': - if ((retval = krb5_parse_name(ksu_context, optarg, &client))){ - com_err(prog_name, retval, "when parsing name %s", optarg); -*************** -*** 355,362 **** - exit(1); - } - -! /* allocate space and copy the usernamane there */ - source_user = strdup(pwd->pw_name); - source_uid = pwd->pw_uid; - source_gid = pwd->pw_gid; - ---- 360,368 ---- - exit(1); - } - -! /* allocate space and copy the username there */ - source_user = strdup(pwd->pw_name); -+ source_shell = strdup(pwd->pw_shell); - source_uid = pwd->pw_uid; - source_gid = pwd->pw_gid; - -*************** -*** 727,769 **** - /* get the shell of the user, this will be the shell used by su */ - target_pwd = getpwnam(target_user); - -! if (target_pwd->pw_shell) -! shell = strdup(target_pwd->pw_shell); -! else { -! shell = _DEF_CSH; /* default is cshell */ -! } - - #ifdef HAVE_GETUSERSHELL - - /* insist that the target login uses a standard shell (root is omited) */ - -! if (!standard_shell(target_pwd->pw_shell) && source_uid) { -! fprintf(stderr, "ksu: permission denied (shell).\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); - } - #endif /* HAVE_GETUSERSHELL */ - -! if (target_pwd->pw_uid){ -! -! if(set_env_var("USER", target_pwd->pw_name)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! } -! -! if(set_env_var( "HOME", target_pwd->pw_dir)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! -! if(set_env_var( "SHELL", shell)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } - - /* set the cc env name to target */ - ---- 733,792 ---- - /* get the shell of the user, this will be the shell used by su */ - target_pwd = getpwnam(target_user); - -! if (asme) { -! if (source_shell && *source_shell) { -! shell = strdup(source_shell); -! } else { -! shell = _DEF_CSH; -! } -! } else { -! if (target_pwd->pw_shell) -! shell = strdup(target_pwd->pw_shell); -! else { -! shell = _DEF_CSH; /* default is cshell */ -! } -! } - - #ifdef HAVE_GETUSERSHELL - - /* insist that the target login uses a standard shell (root is omited) */ - -! if (asme) { -! if (!standard_shell(pwd->pw_shell) && source_uid) { -! fprintf(stderr, "ksu: permission denied (shell).\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! } else { -! if (!standard_shell(target_pwd->pw_shell) && source_uid) { -! fprintf(stderr, "ksu: permission denied (shell).\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } - } - #endif /* HAVE_GETUSERSHELL */ - -! if (!asme) { -! if (target_pwd->pw_uid){ -! if (set_env_var("USER", target_pwd->pw_name)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! } -! -! if (set_env_var( "HOME", target_pwd->pw_dir)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! -! if (set_env_var( "SHELL", shell)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! } - - /* set the cc env name to target */ - +--- clients/ksu/main.c.ORIG Fri Dec 17 14:44:39 1999 ++++ clients/ksu/main.c Fri Dec 17 18:52:57 1999 +@@ -56,7 +56,7 @@ + ill specified arguments to commands */ + + void usage (){ +- fprintf(stderr, "Usage: %s [target user] [-n principal] [-c source cachename] [-C target cachename] [-k] [-D] [-r time] [-pf] [-l lifetime] [-zZ] [-q] [-e command [args... ] ] [-a [args... ] ]\n", prog_name); ++ fprintf(stderr, "Usage: %s [target user] [-m] [-n principal] [-c source cachename] [-C target cachename] [-k] [-D] [-r time] [-pf] [-l lifetime] [-zZ] [-q] [-e command [args... ] ] [-a [args... ] ]\n", prog_name); + + } + +@@ -75,6 +75,7 @@ + int argc; + char ** argv; + { ++int asme = 0; + int hp =0; + int some_rest_copy = 0; + int all_rest_copy = 0; +@@ -90,6 +91,7 @@ + char * cc_target_tag = NULL; + char * target_user = NULL; + char * source_user; ++char * source_shell; + + krb5_ccache cc_source = NULL; + const char * cc_source_tag = NULL; +@@ -173,7 +175,7 @@ + } + + +- while(!done && ((option = getopt(pargc, pargv,"n:c:r:a:zZDfpkql:e:")) != -1)){ ++ while(!done && ((option = getopt(pargc, pargv,"n:c:r:a:zZDfpkmql:e:")) != -1)){ + switch (option) { + case 'r': + options.opt |= KDC_OPT_RENEWABLE; +@@ -219,6 +221,9 @@ + errflg++; + } + break; ++ case 'm': ++ asme = 1; ++ break; + case 'n': + if ((retval = krb5_parse_name(ksu_context, optarg, &client))){ + com_err(prog_name, retval, "when parsing name %s", optarg); +@@ -326,6 +331,7 @@ + + /* allocate space and copy the usernamane there */ + source_user = xstrdup(pwd->pw_name); ++ source_shell = xstrdup(pwd->pw_shell); + source_uid = pwd->pw_uid; + source_gid = pwd->pw_gid; + +@@ -699,43 +705,60 @@ + /* get the shell of the user, this will be the shell used by su */ + target_pwd = getpwnam(target_user); + +- if (target_pwd->pw_shell) +- shell = xstrdup(target_pwd->pw_shell); +- else { +- shell = _DEF_CSH; /* default is cshell */ +- } ++ if (asme) { ++ if (source_shell && *source_shell) { ++ shell = strdup(source_shell); ++ } else { ++ shell = _DEF_CSH; ++ } ++ } else { ++ if (target_pwd->pw_shell) ++ shell = strdup(target_pwd->pw_shell); ++ else { ++ shell = _DEF_CSH; /* default is cshell */ ++ } ++ } + + #ifdef HAVE_GETUSERSHELL + + /* insist that the target login uses a standard shell (root is omited) */ + +- if (!standard_shell(target_pwd->pw_shell) && source_uid) { +- fprintf(stderr, "ksu: permission denied (shell).\n"); +- sweep_up(ksu_context, use_source_cache, cc_target); +- exit(1); ++ if (asme) { ++ if (!standard_shell(pwd->pw_shell) && source_uid) { ++ fprintf(stderr, "ksu: permission denied (shell).\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } ++ } else { ++ if (!standard_shell(target_pwd->pw_shell) && source_uid) { ++ fprintf(stderr, "ksu: permission denied (shell).\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } + } + #endif /* HAVE_GETUSERSHELL */ + +- if (target_pwd->pw_uid){ +- +- if(set_env_var("USER", target_pwd->pw_name)){ +- fprintf(stderr,"ksu: couldn't set environment variable USER\n"); +- sweep_up(ksu_context, use_source_cache, cc_target); +- exit(1); +- } +- } +- +- if(set_env_var( "HOME", target_pwd->pw_dir)){ +- fprintf(stderr,"ksu: couldn't set environment variable USER\n"); +- sweep_up(ksu_context, use_source_cache, cc_target); +- exit(1); +- } +- +- if(set_env_var( "SHELL", shell)){ +- fprintf(stderr,"ksu: couldn't set environment variable USER\n"); +- sweep_up(ksu_context, use_source_cache, cc_target); +- exit(1); +- } ++ if (!asme) { ++ if (target_pwd->pw_uid){ ++ if (set_env_var("USER", target_pwd->pw_name)){ ++ fprintf(stderr,"ksu: couldn't set environment variable USER\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } ++ } ++ ++ if (set_env_var( "HOME", target_pwd->pw_dir)){ ++ fprintf(stderr,"ksu: couldn't set environment variable USER\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } ++ ++ if (set_env_var( "SHELL", shell)){ ++ fprintf(stderr,"ksu: couldn't set environment variable USER\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } ++ } + + /* set the cc env name to target */ + diff --git a/security/krb5-16/files/patch-ba b/security/krb5-16/files/patch-ba index f346d9b8e80e..9c4a82b10e66 100644 --- a/security/krb5-16/files/patch-ba +++ b/security/krb5-16/files/patch-ba @@ -1,13 +1,5 @@ --- appl/bsd/login.c.ORIG Wed Oct 13 12:55:47 1999 +++ appl/bsd/login.c Wed Oct 13 12:56:29 1999 -@@ -518,6 +518,7 @@ - if (!getenv(KRB5_ENV_CCNAME)) { - sprintf(ccfile, "FILE:/tmp/krb5cc_p%d", getpid()); - setenv(KRB5_ENV_CCNAME, ccfile, 1); -+ krb5_cc_set_default_name(kcontext, ccfile); - unlink(ccfile+strlen("FILE:")); - } else { - /* note it correctly */ @@ -1303,19 +1304,6 @@ setpriority(PRIO_PROCESS, 0, 0 + PRIO_OFFSET); } @@ -86,15 +78,3 @@ setenv("HOME", pwd->pw_dir, 1); setenv("PATH", LPATH, 1); -@@ -1748,8 +1749,10 @@ - - #ifdef KRB5_GET_TICKETS - /* ccfile[0] is only set if we got tickets above */ -- if (login_krb5_get_tickets && ccfile[0]) -+ if (login_krb5_get_tickets && ccfile[0]) { - (void) setenv(KRB5_ENV_CCNAME, ccfile, 1); -+ krb5_cc_set_default_name(kcontext, ccfile); -+ } - #endif /* KRB5_GET_TICKETS */ - - if (tty[sizeof("tty")-1] == 'd') diff --git a/security/krb5-16/files/patch-bb b/security/krb5-16/files/patch-bb new file mode 100644 index 000000000000..6545ae682c53 --- /dev/null +++ b/security/krb5-16/files/patch-bb @@ -0,0 +1,10 @@ +--- appl/telnet/telnet/Makefile.in.orig Sat Dec 18 10:47:05 1999 ++++ appl/telnet/telnet/Makefile.in Sat Dec 18 10:47:13 1999 +@@ -58,7 +58,6 @@ + $(INSTALL_DATA) $(srcdir)/$$f.1 \ + ${DESTDIR}$(CLIENT_MANDIR)/`echo $$f|sed '$(transform)'`.1; \ + done +- $(INSTALL_DATA) $(srcdir)/tmac.doc ${DESTDIR}$(CLIENT_MANDIR)/tmac.doc + + authenc.o: defines.h externs.h general.h ring.h types.h $(ARPA_TELNET) + commands.o: defines.h externs.h general.h ring.h types.h $(ARPA_TELNET) diff --git a/security/krb5-17/Makefile b/security/krb5-17/Makefile index 3c37aafcaeeb..ddbae5cc5440 100644 --- a/security/krb5-17/Makefile +++ b/security/krb5-17/Makefile @@ -6,7 +6,7 @@ # $FreeBSD$ # -DISTNAME= krb5-1.1 +DISTNAME= krb5-1.1.1 CATEGORIES= security MASTER_SITES= # manual download EXTRACT_SUFX= .tar diff --git a/security/krb5-17/distinfo b/security/krb5-17/distinfo index e465f8c0c7b1..75d29331a2be 100644 --- a/security/krb5-17/distinfo +++ b/security/krb5-17/distinfo @@ -1 +1 @@ -MD5 (krb5-1.1.tar) = 7a2c9796f40cd5d0c71e4caa75d2aa7b +MD5 (krb5-1.1.1.tar) = 33ab7d6e99fc09787f0ecce21df46086 diff --git a/security/krb5-17/files/patch-as b/security/krb5-17/files/patch-as index 519a1c74d4cb..badcda3daa6b 100644 --- a/security/krb5-17/files/patch-as +++ b/security/krb5-17/files/patch-as @@ -1,194 +1,144 @@ -*** clients/ksu/main.c.ORIG Fri Feb 6 19:41:57 1998 ---- clients/ksu/main.c Tue Jun 30 19:46:02 1998 -*************** -*** 56,62 **** - ill specified arguments to commands */ - - void usage (){ -! fprintf(stderr, "Usage: %s [target user] [-n principal] [-c source cachename] [-C target cachename] [-k] [-D] [-r time] [-pf] [-l lifetime] [-zZ] [-q] [-e command [args... ] ] [-a [args... ] ]\n", prog_name); - - } - ---- 56,62 ---- - ill specified arguments to commands */ - - void usage (){ -! fprintf(stderr, "Usage: %s [target user] [-m] [-n principal] [-c source cachename] [-C target cachename] [-k] [-D] [-r time] [-pf] [-l lifetime] [-zZ] [-q] [-e command [args... ] ] [-a [args... ] ]\n", prog_name); - - } - -*************** -*** 75,80 **** ---- 75,81 ---- - int argc; - char ** argv; - { -+ int asme = 0; - int hp =0; - int some_rest_copy = 0; - int all_rest_copy = 0; -*************** -*** 90,95 **** ---- 91,97 ---- - char * cc_target_tag = NULL; - char * target_user = NULL; - char * source_user; -+ char * source_shell; - - krb5_ccache cc_source = NULL; - char * cc_source_tag = NULL; -*************** -*** 174,180 **** - } - - -! while(!done && ((option = getopt(pargc, pargv,"n:c:C:r:a:zZDfpkql:e:")) != -1)){ - switch (option) { - case 'r': - options.opt |= KDC_OPT_RENEWABLE; ---- 176,182 ---- - } - - -! while(!done && ((option = getopt(pargc, pargv,"n:c:C:r:a:zZDfpkmql:e:")) != -1)){ - switch (option) { - case 'r': - options.opt |= KDC_OPT_RENEWABLE; -*************** -*** 216,221 **** ---- 218,226 ---- - errflg++; - } - break; -+ case 'm': -+ asme = 1; -+ break; - case 'n': - if ((retval = krb5_parse_name(ksu_context, optarg, &client))){ - com_err(prog_name, retval, "when parsing name %s", optarg); -*************** -*** 355,362 **** - exit(1); - } - -! /* allocate space and copy the usernamane there */ - source_user = strdup(pwd->pw_name); - source_uid = pwd->pw_uid; - source_gid = pwd->pw_gid; - ---- 360,368 ---- - exit(1); - } - -! /* allocate space and copy the username there */ - source_user = strdup(pwd->pw_name); -+ source_shell = strdup(pwd->pw_shell); - source_uid = pwd->pw_uid; - source_gid = pwd->pw_gid; - -*************** -*** 727,769 **** - /* get the shell of the user, this will be the shell used by su */ - target_pwd = getpwnam(target_user); - -! if (target_pwd->pw_shell) -! shell = strdup(target_pwd->pw_shell); -! else { -! shell = _DEF_CSH; /* default is cshell */ -! } - - #ifdef HAVE_GETUSERSHELL - - /* insist that the target login uses a standard shell (root is omited) */ - -! if (!standard_shell(target_pwd->pw_shell) && source_uid) { -! fprintf(stderr, "ksu: permission denied (shell).\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); - } - #endif /* HAVE_GETUSERSHELL */ - -! if (target_pwd->pw_uid){ -! -! if(set_env_var("USER", target_pwd->pw_name)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! } -! -! if(set_env_var( "HOME", target_pwd->pw_dir)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! -! if(set_env_var( "SHELL", shell)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } - - /* set the cc env name to target */ - ---- 733,792 ---- - /* get the shell of the user, this will be the shell used by su */ - target_pwd = getpwnam(target_user); - -! if (asme) { -! if (source_shell && *source_shell) { -! shell = strdup(source_shell); -! } else { -! shell = _DEF_CSH; -! } -! } else { -! if (target_pwd->pw_shell) -! shell = strdup(target_pwd->pw_shell); -! else { -! shell = _DEF_CSH; /* default is cshell */ -! } -! } - - #ifdef HAVE_GETUSERSHELL - - /* insist that the target login uses a standard shell (root is omited) */ - -! if (asme) { -! if (!standard_shell(pwd->pw_shell) && source_uid) { -! fprintf(stderr, "ksu: permission denied (shell).\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! } else { -! if (!standard_shell(target_pwd->pw_shell) && source_uid) { -! fprintf(stderr, "ksu: permission denied (shell).\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } - } - #endif /* HAVE_GETUSERSHELL */ - -! if (!asme) { -! if (target_pwd->pw_uid){ -! if (set_env_var("USER", target_pwd->pw_name)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! } -! -! if (set_env_var( "HOME", target_pwd->pw_dir)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! -! if (set_env_var( "SHELL", shell)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! } - - /* set the cc env name to target */ - +--- clients/ksu/main.c.ORIG Fri Dec 17 14:44:39 1999 ++++ clients/ksu/main.c Fri Dec 17 18:52:57 1999 +@@ -56,7 +56,7 @@ + ill specified arguments to commands */ + + void usage (){ +- fprintf(stderr, "Usage: %s [target user] [-n principal] [-c source cachename] [-C target cachename] [-k] [-D] [-r time] [-pf] [-l lifetime] [-zZ] [-q] [-e command [args... ] ] [-a [args... ] ]\n", prog_name); ++ fprintf(stderr, "Usage: %s [target user] [-m] [-n principal] [-c source cachename] [-C target cachename] [-k] [-D] [-r time] [-pf] [-l lifetime] [-zZ] [-q] [-e command [args... ] ] [-a [args... ] ]\n", prog_name); + + } + +@@ -75,6 +75,7 @@ + int argc; + char ** argv; + { ++int asme = 0; + int hp =0; + int some_rest_copy = 0; + int all_rest_copy = 0; +@@ -90,6 +91,7 @@ + char * cc_target_tag = NULL; + char * target_user = NULL; + char * source_user; ++char * source_shell; + + krb5_ccache cc_source = NULL; + const char * cc_source_tag = NULL; +@@ -173,7 +175,7 @@ + } + + +- while(!done && ((option = getopt(pargc, pargv,"n:c:r:a:zZDfpkql:e:")) != -1)){ ++ while(!done && ((option = getopt(pargc, pargv,"n:c:r:a:zZDfpkmql:e:")) != -1)){ + switch (option) { + case 'r': + options.opt |= KDC_OPT_RENEWABLE; +@@ -219,6 +221,9 @@ + errflg++; + } + break; ++ case 'm': ++ asme = 1; ++ break; + case 'n': + if ((retval = krb5_parse_name(ksu_context, optarg, &client))){ + com_err(prog_name, retval, "when parsing name %s", optarg); +@@ -326,6 +331,7 @@ + + /* allocate space and copy the usernamane there */ + source_user = xstrdup(pwd->pw_name); ++ source_shell = xstrdup(pwd->pw_shell); + source_uid = pwd->pw_uid; + source_gid = pwd->pw_gid; + +@@ -699,43 +705,60 @@ + /* get the shell of the user, this will be the shell used by su */ + target_pwd = getpwnam(target_user); + +- if (target_pwd->pw_shell) +- shell = xstrdup(target_pwd->pw_shell); +- else { +- shell = _DEF_CSH; /* default is cshell */ +- } ++ if (asme) { ++ if (source_shell && *source_shell) { ++ shell = strdup(source_shell); ++ } else { ++ shell = _DEF_CSH; ++ } ++ } else { ++ if (target_pwd->pw_shell) ++ shell = strdup(target_pwd->pw_shell); ++ else { ++ shell = _DEF_CSH; /* default is cshell */ ++ } ++ } + + #ifdef HAVE_GETUSERSHELL + + /* insist that the target login uses a standard shell (root is omited) */ + +- if (!standard_shell(target_pwd->pw_shell) && source_uid) { +- fprintf(stderr, "ksu: permission denied (shell).\n"); +- sweep_up(ksu_context, use_source_cache, cc_target); +- exit(1); ++ if (asme) { ++ if (!standard_shell(pwd->pw_shell) && source_uid) { ++ fprintf(stderr, "ksu: permission denied (shell).\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } ++ } else { ++ if (!standard_shell(target_pwd->pw_shell) && source_uid) { ++ fprintf(stderr, "ksu: permission denied (shell).\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } + } + #endif /* HAVE_GETUSERSHELL */ + +- if (target_pwd->pw_uid){ +- +- if(set_env_var("USER", target_pwd->pw_name)){ +- fprintf(stderr,"ksu: couldn't set environment variable USER\n"); +- sweep_up(ksu_context, use_source_cache, cc_target); +- exit(1); +- } +- } +- +- if(set_env_var( "HOME", target_pwd->pw_dir)){ +- fprintf(stderr,"ksu: couldn't set environment variable USER\n"); +- sweep_up(ksu_context, use_source_cache, cc_target); +- exit(1); +- } +- +- if(set_env_var( "SHELL", shell)){ +- fprintf(stderr,"ksu: couldn't set environment variable USER\n"); +- sweep_up(ksu_context, use_source_cache, cc_target); +- exit(1); +- } ++ if (!asme) { ++ if (target_pwd->pw_uid){ ++ if (set_env_var("USER", target_pwd->pw_name)){ ++ fprintf(stderr,"ksu: couldn't set environment variable USER\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } ++ } ++ ++ if (set_env_var( "HOME", target_pwd->pw_dir)){ ++ fprintf(stderr,"ksu: couldn't set environment variable USER\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } ++ ++ if (set_env_var( "SHELL", shell)){ ++ fprintf(stderr,"ksu: couldn't set environment variable USER\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } ++ } + + /* set the cc env name to target */ + diff --git a/security/krb5-17/files/patch-ba b/security/krb5-17/files/patch-ba index f346d9b8e80e..9c4a82b10e66 100644 --- a/security/krb5-17/files/patch-ba +++ b/security/krb5-17/files/patch-ba @@ -1,13 +1,5 @@ --- appl/bsd/login.c.ORIG Wed Oct 13 12:55:47 1999 +++ appl/bsd/login.c Wed Oct 13 12:56:29 1999 -@@ -518,6 +518,7 @@ - if (!getenv(KRB5_ENV_CCNAME)) { - sprintf(ccfile, "FILE:/tmp/krb5cc_p%d", getpid()); - setenv(KRB5_ENV_CCNAME, ccfile, 1); -+ krb5_cc_set_default_name(kcontext, ccfile); - unlink(ccfile+strlen("FILE:")); - } else { - /* note it correctly */ @@ -1303,19 +1304,6 @@ setpriority(PRIO_PROCESS, 0, 0 + PRIO_OFFSET); } @@ -86,15 +78,3 @@ setenv("HOME", pwd->pw_dir, 1); setenv("PATH", LPATH, 1); -@@ -1748,8 +1749,10 @@ - - #ifdef KRB5_GET_TICKETS - /* ccfile[0] is only set if we got tickets above */ -- if (login_krb5_get_tickets && ccfile[0]) -+ if (login_krb5_get_tickets && ccfile[0]) { - (void) setenv(KRB5_ENV_CCNAME, ccfile, 1); -+ krb5_cc_set_default_name(kcontext, ccfile); -+ } - #endif /* KRB5_GET_TICKETS */ - - if (tty[sizeof("tty")-1] == 'd') diff --git a/security/krb5-17/files/patch-bb b/security/krb5-17/files/patch-bb new file mode 100644 index 000000000000..6545ae682c53 --- /dev/null +++ b/security/krb5-17/files/patch-bb @@ -0,0 +1,10 @@ +--- appl/telnet/telnet/Makefile.in.orig Sat Dec 18 10:47:05 1999 ++++ appl/telnet/telnet/Makefile.in Sat Dec 18 10:47:13 1999 +@@ -58,7 +58,6 @@ + $(INSTALL_DATA) $(srcdir)/$$f.1 \ + ${DESTDIR}$(CLIENT_MANDIR)/`echo $$f|sed '$(transform)'`.1; \ + done +- $(INSTALL_DATA) $(srcdir)/tmac.doc ${DESTDIR}$(CLIENT_MANDIR)/tmac.doc + + authenc.o: defines.h externs.h general.h ring.h types.h $(ARPA_TELNET) + commands.o: defines.h externs.h general.h ring.h types.h $(ARPA_TELNET) diff --git a/security/krb5-appl/Makefile b/security/krb5-appl/Makefile index 3c37aafcaeeb..ddbae5cc5440 100644 --- a/security/krb5-appl/Makefile +++ b/security/krb5-appl/Makefile @@ -6,7 +6,7 @@ # $FreeBSD$ # -DISTNAME= krb5-1.1 +DISTNAME= krb5-1.1.1 CATEGORIES= security MASTER_SITES= # manual download EXTRACT_SUFX= .tar diff --git a/security/krb5-appl/distinfo b/security/krb5-appl/distinfo index e465f8c0c7b1..75d29331a2be 100644 --- a/security/krb5-appl/distinfo +++ b/security/krb5-appl/distinfo @@ -1 +1 @@ -MD5 (krb5-1.1.tar) = 7a2c9796f40cd5d0c71e4caa75d2aa7b +MD5 (krb5-1.1.1.tar) = 33ab7d6e99fc09787f0ecce21df46086 diff --git a/security/krb5-appl/files/patch-as b/security/krb5-appl/files/patch-as index 519a1c74d4cb..badcda3daa6b 100644 --- a/security/krb5-appl/files/patch-as +++ b/security/krb5-appl/files/patch-as @@ -1,194 +1,144 @@ -*** clients/ksu/main.c.ORIG Fri Feb 6 19:41:57 1998 ---- clients/ksu/main.c Tue Jun 30 19:46:02 1998 -*************** -*** 56,62 **** - ill specified arguments to commands */ - - void usage (){ -! fprintf(stderr, "Usage: %s [target user] [-n principal] [-c source cachename] [-C target cachename] [-k] [-D] [-r time] [-pf] [-l lifetime] [-zZ] [-q] [-e command [args... ] ] [-a [args... ] ]\n", prog_name); - - } - ---- 56,62 ---- - ill specified arguments to commands */ - - void usage (){ -! fprintf(stderr, "Usage: %s [target user] [-m] [-n principal] [-c source cachename] [-C target cachename] [-k] [-D] [-r time] [-pf] [-l lifetime] [-zZ] [-q] [-e command [args... ] ] [-a [args... ] ]\n", prog_name); - - } - -*************** -*** 75,80 **** ---- 75,81 ---- - int argc; - char ** argv; - { -+ int asme = 0; - int hp =0; - int some_rest_copy = 0; - int all_rest_copy = 0; -*************** -*** 90,95 **** ---- 91,97 ---- - char * cc_target_tag = NULL; - char * target_user = NULL; - char * source_user; -+ char * source_shell; - - krb5_ccache cc_source = NULL; - char * cc_source_tag = NULL; -*************** -*** 174,180 **** - } - - -! while(!done && ((option = getopt(pargc, pargv,"n:c:C:r:a:zZDfpkql:e:")) != -1)){ - switch (option) { - case 'r': - options.opt |= KDC_OPT_RENEWABLE; ---- 176,182 ---- - } - - -! while(!done && ((option = getopt(pargc, pargv,"n:c:C:r:a:zZDfpkmql:e:")) != -1)){ - switch (option) { - case 'r': - options.opt |= KDC_OPT_RENEWABLE; -*************** -*** 216,221 **** ---- 218,226 ---- - errflg++; - } - break; -+ case 'm': -+ asme = 1; -+ break; - case 'n': - if ((retval = krb5_parse_name(ksu_context, optarg, &client))){ - com_err(prog_name, retval, "when parsing name %s", optarg); -*************** -*** 355,362 **** - exit(1); - } - -! /* allocate space and copy the usernamane there */ - source_user = strdup(pwd->pw_name); - source_uid = pwd->pw_uid; - source_gid = pwd->pw_gid; - ---- 360,368 ---- - exit(1); - } - -! /* allocate space and copy the username there */ - source_user = strdup(pwd->pw_name); -+ source_shell = strdup(pwd->pw_shell); - source_uid = pwd->pw_uid; - source_gid = pwd->pw_gid; - -*************** -*** 727,769 **** - /* get the shell of the user, this will be the shell used by su */ - target_pwd = getpwnam(target_user); - -! if (target_pwd->pw_shell) -! shell = strdup(target_pwd->pw_shell); -! else { -! shell = _DEF_CSH; /* default is cshell */ -! } - - #ifdef HAVE_GETUSERSHELL - - /* insist that the target login uses a standard shell (root is omited) */ - -! if (!standard_shell(target_pwd->pw_shell) && source_uid) { -! fprintf(stderr, "ksu: permission denied (shell).\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); - } - #endif /* HAVE_GETUSERSHELL */ - -! if (target_pwd->pw_uid){ -! -! if(set_env_var("USER", target_pwd->pw_name)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! } -! -! if(set_env_var( "HOME", target_pwd->pw_dir)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! -! if(set_env_var( "SHELL", shell)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } - - /* set the cc env name to target */ - ---- 733,792 ---- - /* get the shell of the user, this will be the shell used by su */ - target_pwd = getpwnam(target_user); - -! if (asme) { -! if (source_shell && *source_shell) { -! shell = strdup(source_shell); -! } else { -! shell = _DEF_CSH; -! } -! } else { -! if (target_pwd->pw_shell) -! shell = strdup(target_pwd->pw_shell); -! else { -! shell = _DEF_CSH; /* default is cshell */ -! } -! } - - #ifdef HAVE_GETUSERSHELL - - /* insist that the target login uses a standard shell (root is omited) */ - -! if (asme) { -! if (!standard_shell(pwd->pw_shell) && source_uid) { -! fprintf(stderr, "ksu: permission denied (shell).\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! } else { -! if (!standard_shell(target_pwd->pw_shell) && source_uid) { -! fprintf(stderr, "ksu: permission denied (shell).\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } - } - #endif /* HAVE_GETUSERSHELL */ - -! if (!asme) { -! if (target_pwd->pw_uid){ -! if (set_env_var("USER", target_pwd->pw_name)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! } -! -! if (set_env_var( "HOME", target_pwd->pw_dir)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! -! if (set_env_var( "SHELL", shell)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! } - - /* set the cc env name to target */ - +--- clients/ksu/main.c.ORIG Fri Dec 17 14:44:39 1999 ++++ clients/ksu/main.c Fri Dec 17 18:52:57 1999 +@@ -56,7 +56,7 @@ + ill specified arguments to commands */ + + void usage (){ +- fprintf(stderr, "Usage: %s [target user] [-n principal] [-c source cachename] [-C target cachename] [-k] [-D] [-r time] [-pf] [-l lifetime] [-zZ] [-q] [-e command [args... ] ] [-a [args... ] ]\n", prog_name); ++ fprintf(stderr, "Usage: %s [target user] [-m] [-n principal] [-c source cachename] [-C target cachename] [-k] [-D] [-r time] [-pf] [-l lifetime] [-zZ] [-q] [-e command [args... ] ] [-a [args... ] ]\n", prog_name); + + } + +@@ -75,6 +75,7 @@ + int argc; + char ** argv; + { ++int asme = 0; + int hp =0; + int some_rest_copy = 0; + int all_rest_copy = 0; +@@ -90,6 +91,7 @@ + char * cc_target_tag = NULL; + char * target_user = NULL; + char * source_user; ++char * source_shell; + + krb5_ccache cc_source = NULL; + const char * cc_source_tag = NULL; +@@ -173,7 +175,7 @@ + } + + +- while(!done && ((option = getopt(pargc, pargv,"n:c:r:a:zZDfpkql:e:")) != -1)){ ++ while(!done && ((option = getopt(pargc, pargv,"n:c:r:a:zZDfpkmql:e:")) != -1)){ + switch (option) { + case 'r': + options.opt |= KDC_OPT_RENEWABLE; +@@ -219,6 +221,9 @@ + errflg++; + } + break; ++ case 'm': ++ asme = 1; ++ break; + case 'n': + if ((retval = krb5_parse_name(ksu_context, optarg, &client))){ + com_err(prog_name, retval, "when parsing name %s", optarg); +@@ -326,6 +331,7 @@ + + /* allocate space and copy the usernamane there */ + source_user = xstrdup(pwd->pw_name); ++ source_shell = xstrdup(pwd->pw_shell); + source_uid = pwd->pw_uid; + source_gid = pwd->pw_gid; + +@@ -699,43 +705,60 @@ + /* get the shell of the user, this will be the shell used by su */ + target_pwd = getpwnam(target_user); + +- if (target_pwd->pw_shell) +- shell = xstrdup(target_pwd->pw_shell); +- else { +- shell = _DEF_CSH; /* default is cshell */ +- } ++ if (asme) { ++ if (source_shell && *source_shell) { ++ shell = strdup(source_shell); ++ } else { ++ shell = _DEF_CSH; ++ } ++ } else { ++ if (target_pwd->pw_shell) ++ shell = strdup(target_pwd->pw_shell); ++ else { ++ shell = _DEF_CSH; /* default is cshell */ ++ } ++ } + + #ifdef HAVE_GETUSERSHELL + + /* insist that the target login uses a standard shell (root is omited) */ + +- if (!standard_shell(target_pwd->pw_shell) && source_uid) { +- fprintf(stderr, "ksu: permission denied (shell).\n"); +- sweep_up(ksu_context, use_source_cache, cc_target); +- exit(1); ++ if (asme) { ++ if (!standard_shell(pwd->pw_shell) && source_uid) { ++ fprintf(stderr, "ksu: permission denied (shell).\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } ++ } else { ++ if (!standard_shell(target_pwd->pw_shell) && source_uid) { ++ fprintf(stderr, "ksu: permission denied (shell).\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } + } + #endif /* HAVE_GETUSERSHELL */ + +- if (target_pwd->pw_uid){ +- +- if(set_env_var("USER", target_pwd->pw_name)){ +- fprintf(stderr,"ksu: couldn't set environment variable USER\n"); +- sweep_up(ksu_context, use_source_cache, cc_target); +- exit(1); +- } +- } +- +- if(set_env_var( "HOME", target_pwd->pw_dir)){ +- fprintf(stderr,"ksu: couldn't set environment variable USER\n"); +- sweep_up(ksu_context, use_source_cache, cc_target); +- exit(1); +- } +- +- if(set_env_var( "SHELL", shell)){ +- fprintf(stderr,"ksu: couldn't set environment variable USER\n"); +- sweep_up(ksu_context, use_source_cache, cc_target); +- exit(1); +- } ++ if (!asme) { ++ if (target_pwd->pw_uid){ ++ if (set_env_var("USER", target_pwd->pw_name)){ ++ fprintf(stderr,"ksu: couldn't set environment variable USER\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } ++ } ++ ++ if (set_env_var( "HOME", target_pwd->pw_dir)){ ++ fprintf(stderr,"ksu: couldn't set environment variable USER\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } ++ ++ if (set_env_var( "SHELL", shell)){ ++ fprintf(stderr,"ksu: couldn't set environment variable USER\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } ++ } + + /* set the cc env name to target */ + diff --git a/security/krb5-appl/files/patch-ba b/security/krb5-appl/files/patch-ba index f346d9b8e80e..9c4a82b10e66 100644 --- a/security/krb5-appl/files/patch-ba +++ b/security/krb5-appl/files/patch-ba @@ -1,13 +1,5 @@ --- appl/bsd/login.c.ORIG Wed Oct 13 12:55:47 1999 +++ appl/bsd/login.c Wed Oct 13 12:56:29 1999 -@@ -518,6 +518,7 @@ - if (!getenv(KRB5_ENV_CCNAME)) { - sprintf(ccfile, "FILE:/tmp/krb5cc_p%d", getpid()); - setenv(KRB5_ENV_CCNAME, ccfile, 1); -+ krb5_cc_set_default_name(kcontext, ccfile); - unlink(ccfile+strlen("FILE:")); - } else { - /* note it correctly */ @@ -1303,19 +1304,6 @@ setpriority(PRIO_PROCESS, 0, 0 + PRIO_OFFSET); } @@ -86,15 +78,3 @@ setenv("HOME", pwd->pw_dir, 1); setenv("PATH", LPATH, 1); -@@ -1748,8 +1749,10 @@ - - #ifdef KRB5_GET_TICKETS - /* ccfile[0] is only set if we got tickets above */ -- if (login_krb5_get_tickets && ccfile[0]) -+ if (login_krb5_get_tickets && ccfile[0]) { - (void) setenv(KRB5_ENV_CCNAME, ccfile, 1); -+ krb5_cc_set_default_name(kcontext, ccfile); -+ } - #endif /* KRB5_GET_TICKETS */ - - if (tty[sizeof("tty")-1] == 'd') diff --git a/security/krb5-appl/files/patch-bb b/security/krb5-appl/files/patch-bb new file mode 100644 index 000000000000..6545ae682c53 --- /dev/null +++ b/security/krb5-appl/files/patch-bb @@ -0,0 +1,10 @@ +--- appl/telnet/telnet/Makefile.in.orig Sat Dec 18 10:47:05 1999 ++++ appl/telnet/telnet/Makefile.in Sat Dec 18 10:47:13 1999 +@@ -58,7 +58,6 @@ + $(INSTALL_DATA) $(srcdir)/$$f.1 \ + ${DESTDIR}$(CLIENT_MANDIR)/`echo $$f|sed '$(transform)'`.1; \ + done +- $(INSTALL_DATA) $(srcdir)/tmac.doc ${DESTDIR}$(CLIENT_MANDIR)/tmac.doc + + authenc.o: defines.h externs.h general.h ring.h types.h $(ARPA_TELNET) + commands.o: defines.h externs.h general.h ring.h types.h $(ARPA_TELNET) diff --git a/security/krb5/Makefile b/security/krb5/Makefile index 3c37aafcaeeb..ddbae5cc5440 100644 --- a/security/krb5/Makefile +++ b/security/krb5/Makefile @@ -6,7 +6,7 @@ # $FreeBSD$ # -DISTNAME= krb5-1.1 +DISTNAME= krb5-1.1.1 CATEGORIES= security MASTER_SITES= # manual download EXTRACT_SUFX= .tar diff --git a/security/krb5/distinfo b/security/krb5/distinfo index e465f8c0c7b1..75d29331a2be 100644 --- a/security/krb5/distinfo +++ b/security/krb5/distinfo @@ -1 +1 @@ -MD5 (krb5-1.1.tar) = 7a2c9796f40cd5d0c71e4caa75d2aa7b +MD5 (krb5-1.1.1.tar) = 33ab7d6e99fc09787f0ecce21df46086 diff --git a/security/krb5/files/patch-as b/security/krb5/files/patch-as index 519a1c74d4cb..badcda3daa6b 100644 --- a/security/krb5/files/patch-as +++ b/security/krb5/files/patch-as @@ -1,194 +1,144 @@ -*** clients/ksu/main.c.ORIG Fri Feb 6 19:41:57 1998 ---- clients/ksu/main.c Tue Jun 30 19:46:02 1998 -*************** -*** 56,62 **** - ill specified arguments to commands */ - - void usage (){ -! fprintf(stderr, "Usage: %s [target user] [-n principal] [-c source cachename] [-C target cachename] [-k] [-D] [-r time] [-pf] [-l lifetime] [-zZ] [-q] [-e command [args... ] ] [-a [args... ] ]\n", prog_name); - - } - ---- 56,62 ---- - ill specified arguments to commands */ - - void usage (){ -! fprintf(stderr, "Usage: %s [target user] [-m] [-n principal] [-c source cachename] [-C target cachename] [-k] [-D] [-r time] [-pf] [-l lifetime] [-zZ] [-q] [-e command [args... ] ] [-a [args... ] ]\n", prog_name); - - } - -*************** -*** 75,80 **** ---- 75,81 ---- - int argc; - char ** argv; - { -+ int asme = 0; - int hp =0; - int some_rest_copy = 0; - int all_rest_copy = 0; -*************** -*** 90,95 **** ---- 91,97 ---- - char * cc_target_tag = NULL; - char * target_user = NULL; - char * source_user; -+ char * source_shell; - - krb5_ccache cc_source = NULL; - char * cc_source_tag = NULL; -*************** -*** 174,180 **** - } - - -! while(!done && ((option = getopt(pargc, pargv,"n:c:C:r:a:zZDfpkql:e:")) != -1)){ - switch (option) { - case 'r': - options.opt |= KDC_OPT_RENEWABLE; ---- 176,182 ---- - } - - -! while(!done && ((option = getopt(pargc, pargv,"n:c:C:r:a:zZDfpkmql:e:")) != -1)){ - switch (option) { - case 'r': - options.opt |= KDC_OPT_RENEWABLE; -*************** -*** 216,221 **** ---- 218,226 ---- - errflg++; - } - break; -+ case 'm': -+ asme = 1; -+ break; - case 'n': - if ((retval = krb5_parse_name(ksu_context, optarg, &client))){ - com_err(prog_name, retval, "when parsing name %s", optarg); -*************** -*** 355,362 **** - exit(1); - } - -! /* allocate space and copy the usernamane there */ - source_user = strdup(pwd->pw_name); - source_uid = pwd->pw_uid; - source_gid = pwd->pw_gid; - ---- 360,368 ---- - exit(1); - } - -! /* allocate space and copy the username there */ - source_user = strdup(pwd->pw_name); -+ source_shell = strdup(pwd->pw_shell); - source_uid = pwd->pw_uid; - source_gid = pwd->pw_gid; - -*************** -*** 727,769 **** - /* get the shell of the user, this will be the shell used by su */ - target_pwd = getpwnam(target_user); - -! if (target_pwd->pw_shell) -! shell = strdup(target_pwd->pw_shell); -! else { -! shell = _DEF_CSH; /* default is cshell */ -! } - - #ifdef HAVE_GETUSERSHELL - - /* insist that the target login uses a standard shell (root is omited) */ - -! if (!standard_shell(target_pwd->pw_shell) && source_uid) { -! fprintf(stderr, "ksu: permission denied (shell).\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); - } - #endif /* HAVE_GETUSERSHELL */ - -! if (target_pwd->pw_uid){ -! -! if(set_env_var("USER", target_pwd->pw_name)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! } -! -! if(set_env_var( "HOME", target_pwd->pw_dir)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! -! if(set_env_var( "SHELL", shell)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } - - /* set the cc env name to target */ - ---- 733,792 ---- - /* get the shell of the user, this will be the shell used by su */ - target_pwd = getpwnam(target_user); - -! if (asme) { -! if (source_shell && *source_shell) { -! shell = strdup(source_shell); -! } else { -! shell = _DEF_CSH; -! } -! } else { -! if (target_pwd->pw_shell) -! shell = strdup(target_pwd->pw_shell); -! else { -! shell = _DEF_CSH; /* default is cshell */ -! } -! } - - #ifdef HAVE_GETUSERSHELL - - /* insist that the target login uses a standard shell (root is omited) */ - -! if (asme) { -! if (!standard_shell(pwd->pw_shell) && source_uid) { -! fprintf(stderr, "ksu: permission denied (shell).\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! } else { -! if (!standard_shell(target_pwd->pw_shell) && source_uid) { -! fprintf(stderr, "ksu: permission denied (shell).\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } - } - #endif /* HAVE_GETUSERSHELL */ - -! if (!asme) { -! if (target_pwd->pw_uid){ -! if (set_env_var("USER", target_pwd->pw_name)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! } -! -! if (set_env_var( "HOME", target_pwd->pw_dir)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! -! if (set_env_var( "SHELL", shell)){ -! fprintf(stderr,"ksu: couldn't set environment variable USER\n"); -! sweep_up(ksu_context, use_source_cache, cc_target); -! exit(1); -! } -! } - - /* set the cc env name to target */ - +--- clients/ksu/main.c.ORIG Fri Dec 17 14:44:39 1999 ++++ clients/ksu/main.c Fri Dec 17 18:52:57 1999 +@@ -56,7 +56,7 @@ + ill specified arguments to commands */ + + void usage (){ +- fprintf(stderr, "Usage: %s [target user] [-n principal] [-c source cachename] [-C target cachename] [-k] [-D] [-r time] [-pf] [-l lifetime] [-zZ] [-q] [-e command [args... ] ] [-a [args... ] ]\n", prog_name); ++ fprintf(stderr, "Usage: %s [target user] [-m] [-n principal] [-c source cachename] [-C target cachename] [-k] [-D] [-r time] [-pf] [-l lifetime] [-zZ] [-q] [-e command [args... ] ] [-a [args... ] ]\n", prog_name); + + } + +@@ -75,6 +75,7 @@ + int argc; + char ** argv; + { ++int asme = 0; + int hp =0; + int some_rest_copy = 0; + int all_rest_copy = 0; +@@ -90,6 +91,7 @@ + char * cc_target_tag = NULL; + char * target_user = NULL; + char * source_user; ++char * source_shell; + + krb5_ccache cc_source = NULL; + const char * cc_source_tag = NULL; +@@ -173,7 +175,7 @@ + } + + +- while(!done && ((option = getopt(pargc, pargv,"n:c:r:a:zZDfpkql:e:")) != -1)){ ++ while(!done && ((option = getopt(pargc, pargv,"n:c:r:a:zZDfpkmql:e:")) != -1)){ + switch (option) { + case 'r': + options.opt |= KDC_OPT_RENEWABLE; +@@ -219,6 +221,9 @@ + errflg++; + } + break; ++ case 'm': ++ asme = 1; ++ break; + case 'n': + if ((retval = krb5_parse_name(ksu_context, optarg, &client))){ + com_err(prog_name, retval, "when parsing name %s", optarg); +@@ -326,6 +331,7 @@ + + /* allocate space and copy the usernamane there */ + source_user = xstrdup(pwd->pw_name); ++ source_shell = xstrdup(pwd->pw_shell); + source_uid = pwd->pw_uid; + source_gid = pwd->pw_gid; + +@@ -699,43 +705,60 @@ + /* get the shell of the user, this will be the shell used by su */ + target_pwd = getpwnam(target_user); + +- if (target_pwd->pw_shell) +- shell = xstrdup(target_pwd->pw_shell); +- else { +- shell = _DEF_CSH; /* default is cshell */ +- } ++ if (asme) { ++ if (source_shell && *source_shell) { ++ shell = strdup(source_shell); ++ } else { ++ shell = _DEF_CSH; ++ } ++ } else { ++ if (target_pwd->pw_shell) ++ shell = strdup(target_pwd->pw_shell); ++ else { ++ shell = _DEF_CSH; /* default is cshell */ ++ } ++ } + + #ifdef HAVE_GETUSERSHELL + + /* insist that the target login uses a standard shell (root is omited) */ + +- if (!standard_shell(target_pwd->pw_shell) && source_uid) { +- fprintf(stderr, "ksu: permission denied (shell).\n"); +- sweep_up(ksu_context, use_source_cache, cc_target); +- exit(1); ++ if (asme) { ++ if (!standard_shell(pwd->pw_shell) && source_uid) { ++ fprintf(stderr, "ksu: permission denied (shell).\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } ++ } else { ++ if (!standard_shell(target_pwd->pw_shell) && source_uid) { ++ fprintf(stderr, "ksu: permission denied (shell).\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } + } + #endif /* HAVE_GETUSERSHELL */ + +- if (target_pwd->pw_uid){ +- +- if(set_env_var("USER", target_pwd->pw_name)){ +- fprintf(stderr,"ksu: couldn't set environment variable USER\n"); +- sweep_up(ksu_context, use_source_cache, cc_target); +- exit(1); +- } +- } +- +- if(set_env_var( "HOME", target_pwd->pw_dir)){ +- fprintf(stderr,"ksu: couldn't set environment variable USER\n"); +- sweep_up(ksu_context, use_source_cache, cc_target); +- exit(1); +- } +- +- if(set_env_var( "SHELL", shell)){ +- fprintf(stderr,"ksu: couldn't set environment variable USER\n"); +- sweep_up(ksu_context, use_source_cache, cc_target); +- exit(1); +- } ++ if (!asme) { ++ if (target_pwd->pw_uid){ ++ if (set_env_var("USER", target_pwd->pw_name)){ ++ fprintf(stderr,"ksu: couldn't set environment variable USER\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } ++ } ++ ++ if (set_env_var( "HOME", target_pwd->pw_dir)){ ++ fprintf(stderr,"ksu: couldn't set environment variable USER\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } ++ ++ if (set_env_var( "SHELL", shell)){ ++ fprintf(stderr,"ksu: couldn't set environment variable USER\n"); ++ sweep_up(ksu_context, use_source_cache, cc_target); ++ exit(1); ++ } ++ } + + /* set the cc env name to target */ + diff --git a/security/krb5/files/patch-ba b/security/krb5/files/patch-ba index f346d9b8e80e..9c4a82b10e66 100644 --- a/security/krb5/files/patch-ba +++ b/security/krb5/files/patch-ba @@ -1,13 +1,5 @@ --- appl/bsd/login.c.ORIG Wed Oct 13 12:55:47 1999 +++ appl/bsd/login.c Wed Oct 13 12:56:29 1999 -@@ -518,6 +518,7 @@ - if (!getenv(KRB5_ENV_CCNAME)) { - sprintf(ccfile, "FILE:/tmp/krb5cc_p%d", getpid()); - setenv(KRB5_ENV_CCNAME, ccfile, 1); -+ krb5_cc_set_default_name(kcontext, ccfile); - unlink(ccfile+strlen("FILE:")); - } else { - /* note it correctly */ @@ -1303,19 +1304,6 @@ setpriority(PRIO_PROCESS, 0, 0 + PRIO_OFFSET); } @@ -86,15 +78,3 @@ setenv("HOME", pwd->pw_dir, 1); setenv("PATH", LPATH, 1); -@@ -1748,8 +1749,10 @@ - - #ifdef KRB5_GET_TICKETS - /* ccfile[0] is only set if we got tickets above */ -- if (login_krb5_get_tickets && ccfile[0]) -+ if (login_krb5_get_tickets && ccfile[0]) { - (void) setenv(KRB5_ENV_CCNAME, ccfile, 1); -+ krb5_cc_set_default_name(kcontext, ccfile); -+ } - #endif /* KRB5_GET_TICKETS */ - - if (tty[sizeof("tty")-1] == 'd') diff --git a/security/krb5/files/patch-bb b/security/krb5/files/patch-bb new file mode 100644 index 000000000000..6545ae682c53 --- /dev/null +++ b/security/krb5/files/patch-bb @@ -0,0 +1,10 @@ +--- appl/telnet/telnet/Makefile.in.orig Sat Dec 18 10:47:05 1999 ++++ appl/telnet/telnet/Makefile.in Sat Dec 18 10:47:13 1999 +@@ -58,7 +58,6 @@ + $(INSTALL_DATA) $(srcdir)/$$f.1 \ + ${DESTDIR}$(CLIENT_MANDIR)/`echo $$f|sed '$(transform)'`.1; \ + done +- $(INSTALL_DATA) $(srcdir)/tmac.doc ${DESTDIR}$(CLIENT_MANDIR)/tmac.doc + + authenc.o: defines.h externs.h general.h ring.h types.h $(ARPA_TELNET) + commands.o: defines.h externs.h general.h ring.h types.h $(ARPA_TELNET) |