components/mysql-5-1/patches/yassl.patch
author Petr Nyc <Petr.Nyc@Oracle.COM>
Fri, 18 Sep 2015 00:26:21 -0400
branchs11u3-sru
changeset 4874 3c3d9a5b5065
parent 444 a2a87847a213
permissions -rw-r--r--
build metadata for S11.3SRU1.2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
444
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
     1
=== modified file 'extra/yassl/taocrypt/include/asn.hpp'
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
     2
--- extra/yassl/taocrypt/include/asn.hpp	2007-01-29 15:54:40 +0000
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
     3
+++ extra/yassl/taocrypt/include/asn.hpp.org	2010-01-13 05:20:45 +0000
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
     4
@@ -305,6 +305,7 @@ private:
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
     5
     bool   ValidateSignature(SignerList*);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
     6
     bool   ConfirmSignature(Source&);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
     7
     void   GetKey();
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
     8
+    char*  AddTag(char*, const char*, const char*, word32, word32);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
     9
     void   GetName(NameType);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    10
     void   GetValidity();
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    11
     void   GetDate(DateType);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    12
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    13
=== modified file 'extra/yassl/taocrypt/src/asn.cpp'
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    14
--- extra/yassl/taocrypt/src/asn.cpp	2009-06-29 13:17:01 +0000
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    15
+++ extra/yassl/taocrypt/src/asn.cpp.org	2010-01-13 05:20:45 +0000
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    16
@@ -652,6 +652,23 @@ word32 CertDecoder::GetDigest()
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    17
 }
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    18
 
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    19
 
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    20
+char *CertDecoder::AddTag(char *ptr, const char *buf_end, 
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    21
+                          const char *tag_name, word32 tag_name_length,
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    22
+                          word32 tag_value_length)
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    23
+{
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    24
+  if (ptr + tag_name_length + tag_value_length > buf_end)
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    25
+      return 0;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    26
+    
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    27
+  memcpy(ptr, tag_name, tag_name_length);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    28
+  ptr+= tag_name_length;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    29
+  
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    30
+  memcpy(ptr, source_.get_current(), tag_value_length);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    31
+  ptr+= tag_value_length;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    32
+  
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    33
+  return ptr;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    34
+}
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    35
+
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    36
+
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    37
 // process NAME, either issuer or subject
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    38
 void CertDecoder::GetName(NameType nt)
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    39
 {
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    40
@@ -659,11 +676,21 @@ void CertDecoder::GetName(NameType nt)
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    41
 
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    42
     SHA    sha;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    43
     word32 length = GetSequence();  // length of all distinguished names
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    44
-    assert (length < ASN_NAME_MAX);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    45
+
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    46
+    if (length >= ASN_NAME_MAX)
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    47
+        goto err;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    48
     length += source_.get_index();
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    49
 
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    50
-    char*  ptr = (nt == ISSUER) ? issuer_ : subject_;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    51
-    word32 idx = 0;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    52
+    char *ptr, *buf_end;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    53
+
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    54
+    if (nt == ISSUER) {
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    55
+        ptr= issuer_;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    56
+        buf_end= ptr + sizeof(issuer_) - 1;  // 1 byte for trailing 0
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    57
+    }
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    58
+    else {
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    59
+        ptr= subject_;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    60
+        buf_end= ptr + sizeof(subject_) - 1;  // 1 byte for trailing 0
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    61
+    }
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    62
 
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    63
     while (source_.get_index() < length) {
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    64
         GetSet();
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    65
@@ -685,47 +712,36 @@ void CertDecoder::GetName(NameType nt)
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    66
             byte   id      = source_.next();  
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    67
             b              = source_.next();    // strType
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    68
             word32 strLen  = GetLength(source_);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    69
-            bool   copy    = false;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    70
 
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    71
-            if (id == COMMON_NAME) {
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    72
-                memcpy(&ptr[idx], "/CN=", 4);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    73
-                idx += 4;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    74
-                copy = true;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    75
-            }
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    76
-            else if (id == SUR_NAME) {
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    77
-                memcpy(&ptr[idx], "/SN=", 4);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    78
-                idx += 4;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    79
-                copy = true;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    80
-            }
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    81
-            else if (id == COUNTRY_NAME) {
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    82
-                memcpy(&ptr[idx], "/C=", 3);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    83
-                idx += 3;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    84
-                copy = true;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    85
-            }
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    86
-            else if (id == LOCALITY_NAME) {
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    87
-                memcpy(&ptr[idx], "/L=", 3);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    88
-                idx += 3;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    89
-                copy = true;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    90
-            }
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    91
-            else if (id == STATE_NAME) {
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    92
-                memcpy(&ptr[idx], "/ST=", 4);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    93
-                idx += 4;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    94
-                copy = true;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    95
-            }
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    96
-            else if (id == ORG_NAME) {
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    97
-                memcpy(&ptr[idx], "/O=", 3);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    98
-                idx += 3;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
    99
-                copy = true;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   100
-            }
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   101
-            else if (id == ORGUNIT_NAME) {
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   102
-                memcpy(&ptr[idx], "/OU=", 4);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   103
-                idx += 4;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   104
-                copy = true;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   105
-            }
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   106
-
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   107
-            if (copy) {
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   108
-                memcpy(&ptr[idx], source_.get_current(), strLen);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   109
-                idx += strLen;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   110
+            switch (id) {
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   111
+            case COMMON_NAME:
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   112
+                if (!(ptr= AddTag(ptr, buf_end, "/CN=", 4, strLen)))
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   113
+                  goto err;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   114
+                break;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   115
+            case SUR_NAME:
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   116
+                if (!(ptr= AddTag(ptr, buf_end, "/SN=", 4, strLen)))
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   117
+                  goto err;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   118
+                break;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   119
+            case COUNTRY_NAME:
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   120
+                if (!(ptr= AddTag(ptr, buf_end, "/C=", 3, strLen)))
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   121
+                  goto err;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   122
+                break;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   123
+            case LOCALITY_NAME:
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   124
+                if (!(ptr= AddTag(ptr, buf_end, "/L=", 3, strLen)))
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   125
+                  goto err;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   126
+                break;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   127
+            case STATE_NAME:
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   128
+                if (!(ptr= AddTag(ptr, buf_end, "/ST=", 4, strLen)))
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   129
+                  goto err;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   130
+                break;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   131
+            case ORG_NAME:
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   132
+                if (!(ptr= AddTag(ptr, buf_end, "/O=", 3, strLen)))
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   133
+                  goto err;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   134
+                break;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   135
+            case ORGUNIT_NAME:
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   136
+                if (!(ptr= AddTag(ptr, buf_end, "/OU=", 4, strLen)))
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   137
+                  goto err;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   138
+                break;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   139
             }
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   140
 
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   141
             sha.Update(source_.get_current(), strLen);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   142
@@ -739,23 +755,20 @@ void CertDecoder::GetName(NameType nt)
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   143
             source_.advance(oidSz + 1);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   144
             word32 length = GetLength(source_);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   145
 
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   146
-            if (email) {
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   147
-                memcpy(&ptr[idx], "/emailAddress=", 14);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   148
-                idx += 14;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   149
-
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   150
-                memcpy(&ptr[idx], source_.get_current(), length);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   151
-                idx += length;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   152
-            }
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   153
+            if (email && !(ptr= AddTag(ptr, buf_end, "/emailAddress=", 14, length)))
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   154
+                goto err;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   155
 
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   156
             source_.advance(length);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   157
         }
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   158
     }
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   159
-    ptr[idx++] = 0;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   160
+    *ptr= 0;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   161
 
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   162
-    if (nt == ISSUER)
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   163
-        sha.Final(issuerHash_);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   164
-    else
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   165
-        sha.Final(subjectHash_);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   166
+    sha.Final(nt == ISSUER ? issuerHash_ : subjectHash_);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   167
+        
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   168
+    return;
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   169
+    
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   170
+err:
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   171
+    source_.SetError(CONTENT_E);
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   172
 }
a2a87847a213 7068640 Move MySQL 5.1 from SFW to Userland
Sunanda Menon <Sunanda.Menon@Sun.COM>
parents:
diff changeset
   173