Do not claim GSS_C_PROT_READY_FLAG since we don't support it
authorSam Hartman <hartmans@mit.edu>
Fri, 14 Mar 2003 20:37:36 +0000 (20:37 +0000)
committerSam Hartman <hartmans@mit.edu>
Fri, 14 Mar 2003 20:37:36 +0000 (20:37 +0000)
Our code does not currently support GSS_C_PROT_READY_FLAG so only
return that flag after context establishment. A potential future
addition is to support that flag and return GAP_TOKEN if the initiator
processes a message token before the final context token.

Ticket: 1352
Tags: pullup
Status: open

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15280 dc483132-0cff-0310-8789-dd5450dbe970

src/lib/gssapi/krb5/ChangeLog
src/lib/gssapi/krb5/accept_sec_context.c
src/lib/gssapi/krb5/gssapiP_krb5.h
src/lib/gssapi/krb5/init_sec_context.c

index 7424a251db02ed7cad86cb35212d6f758e5ab2db..47f718d16293e5978a4a5d9f67ced4a7a3edd6a1 100644 (file)
@@ -1,3 +1,14 @@
+2003-03-14  Sam Hartman  <hartmans@mit.edu>
+
+       * accept_sec_context.c (krb5_gss_accept_sec_context): Set
+       prot_ready here
+
+       * init_sec_context.c (krb5_gss_init_sec_context):  Set prot_ready
+       after context established
+
+       * gssapiP_krb5.h (KG_IMPLFLAGS): Don't claim prot_ready until the
+       context is established  because we don't currently support it.  
+
 2003-03-06  Alexandra Ellwood  <lxs@mit.edu>
 
     * disp_status.c, gssapi_krb5.h, gssapiP_krb5.h: 
index 5ff6146eadc65cfaeaaa2694084a0c85837c43e6..a004acb2290e99301a784a2fe603600f533b380b 100644 (file)
@@ -719,6 +719,7 @@ krb5_gss_accept_sec_context(minor_status, context_handle,
                                       &ctx->seq_send);
 
        /* the reply token hasn't been sent yet, but that's ok. */
+       ctx->gss_flags |= GSS_C_PROT_READY_FLAG;
        ctx->established = 1;
 
        token.length = g_token_size((gss_OID) mech_used, ap_rep.length);
index 3251086128a0067fcbbe33a16bcd07357c6d1675..f50653dbfd47a38188f13c222f05ce59ecc70b4a 100644 (file)
@@ -83,7 +83,7 @@
 #define KG_TOK_DEL_CTX         0x0102
 
 #define KG_IMPLFLAGS(x) (GSS_C_INTEG_FLAG | GSS_C_CONF_FLAG | \
-                        GSS_C_TRANS_FLAG | GSS_C_PROT_READY_FLAG | \
+                        GSS_C_TRANS_FLAG | \
                         ((x) & (GSS_C_MUTUAL_FLAG | GSS_C_REPLAY_FLAG | \
                                 GSS_C_SEQUENCE_FLAG | GSS_C_DELEG_FLAG)))
 
index 8877052ba6adb64dbdd3ea421f0aaea1fbed8989..ba630f1eb45d83bb1b418775fe2d5902e4661b34 100644 (file)
@@ -688,6 +688,7 @@ krb5_gss_init_sec_context(minor_status, claimant_cred_handle,
         g_order_init(&(ctx->seqstate), ctx->seq_recv,
                      (ctx->gss_flags & GSS_C_REPLAY_FLAG) != 0, 
                      (ctx->gss_flags & GSS_C_SEQUENCE_FLAG) != 0);
+        ctx->gss_flags |= GSS_C_PROT_READY_FLAG;
         ctx->established = 1;
         /* fall through to GSS_S_COMPLETE */
       }