[BACK]Return to monitor_wrap.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / ssh

Diff for /src/usr.bin/ssh/monitor_wrap.c between version 1.28 and 1.29

version 1.28, 2003/07/22 13:35:22 version 1.29, 2003/08/22 10:56:09
Line 52 
Line 52 
 #include "channels.h"  #include "channels.h"
 #include "session.h"  #include "session.h"
   
   #ifdef GSSAPI
   #include "ssh-gss.h"
   #endif
   
 /* Imports */  /* Imports */
 extern int compat20;  extern int compat20;
 extern Newkeys *newkeys[];  extern Newkeys *newkeys[];
Line 971 
Line 975 
         buffer_free(&m);          buffer_free(&m);
         return (success);          return (success);
 }  }
 #endif  #endif /* KRB5 */
   
   #ifdef GSSAPI
   OM_uint32
   mm_ssh_gssapi_server_ctx(Gssctxt **ctx, gss_OID oid)
   {
           Buffer m;
           OM_uint32 major;
   
           /* Client doesn't get to see the context */
           *ctx = NULL;
   
           buffer_init(&m);
           buffer_put_string(&m, oid->elements, oid->length);
   
           mm_request_send(pmonitor->m_recvfd, MONITOR_REQ_GSSSETUP, &m);
           mm_request_receive_expect(pmonitor->m_recvfd, MONITOR_ANS_GSSSETUP, &m);
   
           major = buffer_get_int(&m);
   
           buffer_free(&m);
           return (major);
   }
   
   OM_uint32
   mm_ssh_gssapi_accept_ctx(Gssctxt *ctx, gss_buffer_desc *in,
       gss_buffer_desc *out, OM_uint32 *flags)
   {
           Buffer m;
           OM_uint32 major;
   
           buffer_init(&m);
           buffer_put_string(&m, in->value, in->length);
   
           mm_request_send(pmonitor->m_recvfd, MONITOR_REQ_GSSSTEP, &m);
           mm_request_receive_expect(pmonitor->m_recvfd, MONITOR_ANS_GSSSTEP, &m);
   
           major = buffer_get_int(&m);
           out->value = buffer_get_string(&m, &out->length);
           if (flags)
                   *flags = buffer_get_int(&m);
   
           buffer_free(&m);
   
           return (major);
   }
   
   int
   mm_ssh_gssapi_userok(char *user)
   {
           Buffer m;
           int authenticated = 0;
   
           buffer_init(&m);
   
           mm_request_send(pmonitor->m_recvfd, MONITOR_REQ_GSSUSEROK, &m);
           mm_request_receive_expect(pmonitor->m_recvfd, MONITOR_ANS_GSSUSEROK,
                                     &m);
   
           authenticated = buffer_get_int(&m);
   
           buffer_free(&m);
           debug3("%s: user %sauthenticated",__func__, authenticated ? "" : "not ");
           return (authenticated);
   }
   #endif /* GSSAPI */

Legend:
Removed from v.1.28  
changed lines
  Added in v.1.29