Call a krb5 cleanup routine to cleanup forwarded credentials, if necessary
authorRichard Basch <probe@mit.edu>
Fri, 12 Apr 1996 01:51:34 +0000 (01:51 +0000)
committerRichard Basch <probe@mit.edu>
Fri, 12 Apr 1996 01:51:34 +0000 (01:51 +0000)
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@7798 dc483132-0cff-0310-8789-dd5450dbe970

src/appl/telnet/telnetd/ChangeLog
src/appl/telnet/telnetd/ext.h
src/appl/telnet/telnetd/sys_term.c

index 53b881b09bf34c6b22ae87ce2165ae21281ad4ee..2c66434f8c6fee9f5d03351833fd8b3bb7b21a8d 100644 (file)
@@ -1,3 +1,7 @@
+Thu Apr 11 21:44:39 1996  Richard Basch  <basch@lehman.com>
+
+       * sys_term.c (cleanup): Call the Kerberos 5 cleanup routine, also.
+
 Wed Mar 27 00:27:32 1996  Tom Yu  <tlyu@dragons-lair.MIT.EDU>
 
        * telnetd.c: remove inclusion of netdb.h; it's already in defs.h,
index 53d90698d0e585295ab0c198bfc3d7ec43397fac..2f577da496ebcbf2c5d85f1d60792765a17cfea3 100644 (file)
@@ -225,7 +225,11 @@ extern int needtermstat;
 #  define DEFAULT_IM   "\r\n\r\nCray UNICOS (%h) (%t)\r\n\r\r\n\r"
 # else
 #  ifdef sun
-#   define DEFAULT_IM  "\r\n\r\nSunOS UNIX (%h) (%t)\r\n\r\r\n\r"
+#   ifdef __SVR4
+#    define DEFAULT_IM "\r\n\r\nUNIX(r) System V Release 4.0 (%h) (%t)\r\n\r\r\n\r"
+#   else
+#    define DEFAULT_IM "\r\n\r\nSunOS UNIX (%h) (%t)\r\n\r\r\n\r"
+#   endif
 #  else
 #   ifdef ultrix
 #    define DEFAULT_IM "\r\n\r\nULTRIX (%h) (%t)\r\n\r\r\n\r"
index e6d9786d1c184990c5f815f0e5ebdde58ab8f114..ac76cd864531c3130783b2082fe5e7b54855a1e7 100644 (file)
@@ -1090,7 +1090,7 @@ startslave(host, autologin, autoname)
        int autologin;
        char *autoname;
 {
-int syncpipe[2];
+       int syncpipe[2];
        register int i;
 #ifdef NEWINIT
        extern char *ptyip;
@@ -1099,8 +1099,8 @@ int syncpipe[2];
        register int n;
 #endif /* NEWINIT */
 
-if ( pipe(syncpipe) < 0 ) 
-    fatal(net, "failed getting synchronization pipe");
+       if ( pipe(syncpipe) < 0 ) 
+               fatal(net, "failed getting synchronization pipe");
     
 #if    defined(AUTHENTICATION)
        if (!autoname || !autoname[0])
@@ -1117,31 +1117,30 @@ if ( pipe(syncpipe) < 0 )
        if ((i = fork()) < 0)
                fatalperror(net, "fork");
        if (i) {
-char c;
+               char c;
 
                void sigjob P((int));
-slavepid = i; /* So we can clean it up later */
+               slavepid = i; /* So we can clean it up later */
 #ifdef CRAY
                (void) signal(WJSIGNAL, sigjob);
 #endif
 
                /* Wait for child before writing to parent side of pty.*/
-(void) close(syncpipe[1]);
-if ( read(syncpipe[0], &c, 1) == 0 ) {
-  /* Slave side died */
-  fatal ( net, "Slave failed to initialize");
-}
+               (void) close(syncpipe[1]);
+               if ( read(syncpipe[0], &c, 1) == 0 ) {
+                       /* Slave side died */
+                       fatal ( net, "Slave failed to initialize");
+               }
 
                close(syncpipe[0]);
-
                
-                       } else {
+       } else {
                
                pty_update_utmp (PTY_LOGIN_PROCESS, getpid(), "LOGIN", line,
                                 host, PTY_TTYSLOT_USABLE);
                getptyslave(autologin);
 
-/* Notify our parent we're ready to continue.*/
+               /* Notify our parent we're ready to continue.*/
                write(syncpipe[1],"y",1);
                close(syncpipe[0]);
                close(syncpipe[1]);
@@ -1474,7 +1473,10 @@ addarg(argv, val)
 cleanup(sig)
        int sig;
 {
-    pty_cleanup(line,slavepid,1);
+       pty_cleanup(line,slavepid,1);
+#ifdef KRB5
+       kerberos5_cleanup();
+#endif
     
        (void) shutdown(net, 2);
        exit(1);