Revert "gsskrb5: add support for DCE_STYLE and des and des3 keys"
authorStefan Metzmacher <metze@samba.org>
Tue, 26 Aug 2008 10:25:54 +0000 (12:25 +0200)
committerStefan Metzmacher <metze@samba.org>
Tue, 26 Aug 2008 10:30:02 +0000 (12:30 +0200)
This reverts commit 86848dd0f217774faed81af8fbf68618013e20a1.

This should come back via a merge from heimdal's trunk later.

metze
(This used to be commit 585e5360e2d9f722e80850eb86c3d4253530e8ba)

source4/heimdal/lib/gssapi/krb5/unwrap.c
source4/heimdal/lib/gssapi/krb5/wrap.c

index c287469e96b4e0bbd8e77969f2614ec028142d59..eec4078a706017102c3a12e63a0072e84de13283 100644 (file)
@@ -59,17 +59,10 @@ unwrap_des
   OM_uint32 ret;
   int cstate;
   int cmp;
-  int token_len;
-
-  if (IS_DCE_STYLE(context_handle)) {
-     token_len = 22 + 8 + 15; /* 45 */
-  } else {
-     token_len = input_message_buffer->length;
-  }
 
   p = input_message_buffer->value;
   ret = _gsskrb5_verify_header (&p,
-                                  token_len,
+                                  input_message_buffer->length,
                                   "\x02\x01",
                                   GSS_KRB5_MECHANISM);
   if (ret)
@@ -112,17 +105,12 @@ unwrap_des
       memset (deskey, 0, sizeof(deskey));
       memset (&schedule, 0, sizeof(schedule));
   }
-
-  if (IS_DCE_STYLE(context_handle)) {
-    padlength = 0;
-  } else {
-    /* check pad */
-    ret = _gssapi_verify_pad(input_message_buffer,
-                            input_message_buffer->length - len,
-                            &padlength);
-    if (ret)
-        return ret;
-  }
+  /* check pad */
+  ret = _gssapi_verify_pad(input_message_buffer, 
+                          input_message_buffer->length - len,
+                          &padlength);
+  if (ret)
+      return ret;
 
   MD5_Init (&md5);
   MD5_Update (&md5, p - 24, 8);
@@ -207,17 +195,10 @@ unwrap_des3
   krb5_crypto crypto;
   Checksum csum;
   int cmp;
-  int token_len;
-
-  if (IS_DCE_STYLE(context_handle)) {
-     token_len = 34 + 8 + 15; /* 57 */
-  } else {
-     token_len = input_message_buffer->length;
-  }
 
   p = input_message_buffer->value;
   ret = _gsskrb5_verify_header (&p,
-                                  token_len,
+                                  input_message_buffer->length,
                                   "\x02\x01",
                                   GSS_KRB5_MECHANISM);
   if (ret)
@@ -264,17 +245,12 @@ unwrap_des3
       memcpy (p, tmp.data, tmp.length);
       krb5_data_free(&tmp);
   }
-
-  if (IS_DCE_STYLE(context_handle)) {
-    padlength = 0;
-  } else {
-    /* check pad */
-    ret = _gssapi_verify_pad(input_message_buffer,
-                            input_message_buffer->length - len,
-                            &padlength);
-    if (ret)
-        return ret;
-  }
+  /* check pad */
+  ret = _gssapi_verify_pad(input_message_buffer, 
+                          input_message_buffer->length - len,
+                          &padlength);
+  if (ret)
+      return ret;
 
   /* verify sequence number */
   
index bedeace4dd88f1c5c0c8fb7c168692bf055ecdea..6d00f2adcfbadf708d1b43e397cdd4b371e0fd42 100644 (file)
@@ -210,19 +210,10 @@ wrap_des
   int32_t seq_number;
   size_t len, total_len, padlength, datalen;
 
-  if (IS_DCE_STYLE(ctx)) {
-    padlength = 0;
-    datalen = input_message_buffer->length;
-    len = 22 + 8;
-    _gsskrb5_encap_length (len, &len, &total_len, GSS_KRB5_MECHANISM);
-    total_len += datalen;
-    datalen += 8;
-  } else {
-    padlength = 8 - (input_message_buffer->length % 8);
-    datalen = input_message_buffer->length + padlength + 8;
-    len = datalen + 22;
-    _gsskrb5_encap_length (len, &len, &total_len, GSS_KRB5_MECHANISM);
-  }
+  padlength = 8 - (input_message_buffer->length % 8);
+  datalen = input_message_buffer->length + padlength + 8;
+  len = datalen + 22;
+  _gsskrb5_encap_length (len, &len, &total_len, GSS_KRB5_MECHANISM);
 
   output_message_buffer->length = total_len;
   output_message_buffer->value  = malloc (total_len);
@@ -345,19 +336,10 @@ wrap_des3
   Checksum cksum;
   krb5_data encdata;
 
-  if (IS_DCE_STYLE(ctx)) {
-    padlength = 0;
-    datalen = input_message_buffer->length;
-    len = 34 + 8;
-    _gsskrb5_encap_length (len, &len, &total_len, GSS_KRB5_MECHANISM);
-    total_len += datalen;
-    datalen += 8;
-  } else {
-    padlength = 8 - (input_message_buffer->length % 8);
-    datalen = input_message_buffer->length + padlength + 8;
-    len = datalen + 34;
-    _gsskrb5_encap_length (len, &len, &total_len, GSS_KRB5_MECHANISM);
-  }
+  padlength = 8 - (input_message_buffer->length % 8);
+  datalen = input_message_buffer->length + padlength + 8;
+  len = datalen + 34;
+  _gsskrb5_encap_length (len, &len, &total_len, GSS_KRB5_MECHANISM);
 
   output_message_buffer->length = total_len;
   output_message_buffer->value  = malloc (total_len);