Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(267)

Side by Side Diff: openssl/crypto/x509v3/v3_extku.c

Issue 9254031: Upgrade chrome's OpenSSL to same version Android ships with. (Closed) Base URL: http://src.chromium.org/svn/trunk/deps/third_party/openssl/
Patch Set: '' Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « openssl/crypto/x509v3/v3_enum.c ('k') | openssl/crypto/x509v3/v3_genn.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* v3_extku.c */ 1 /* v3_extku.c */
2 /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL 2 /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
3 * project 1999. 3 * project 1999.
4 */ 4 */
5 /* ==================================================================== 5 /* ====================================================================
6 * Copyright (c) 1999 The OpenSSL Project. All rights reserved. 6 * Copyright (c) 1999 The OpenSSL Project. All rights reserved.
7 * 7 *
8 * Redistribution and use in source and binary forms, with or without 8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions 9 * modification, are permitted provided that the following conditions
10 * are met: 10 * are met:
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 * 56 *
57 */ 57 */
58 58
59 59
60 #include <stdio.h> 60 #include <stdio.h>
61 #include "cryptlib.h" 61 #include "cryptlib.h"
62 #include <openssl/asn1t.h> 62 #include <openssl/asn1t.h>
63 #include <openssl/conf.h> 63 #include <openssl/conf.h>
64 #include <openssl/x509v3.h> 64 #include <openssl/x509v3.h>
65 65
66 static void *v2i_EXTENDED_KEY_USAGE(X509V3_EXT_METHOD *method, 66 static void *v2i_EXTENDED_KEY_USAGE(const X509V3_EXT_METHOD *method,
67 » » » » X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval); 67 » » » » X509V3_CTX *ctx,
68 static STACK_OF(CONF_VALUE) *i2v_EXTENDED_KEY_USAGE(X509V3_EXT_METHOD *method, 68 » » » » STACK_OF(CONF_VALUE) *nval);
69 static STACK_OF(CONF_VALUE) *i2v_EXTENDED_KEY_USAGE(const X509V3_EXT_METHOD *met hod,
69 void *eku, STACK_OF(CONF_VALUE) *extlist); 70 void *eku, STACK_OF(CONF_VALUE) *extlist);
70 71
71 const X509V3_EXT_METHOD v3_ext_ku = { 72 const X509V3_EXT_METHOD v3_ext_ku = {
72 NID_ext_key_usage, 0, 73 NID_ext_key_usage, 0,
73 ASN1_ITEM_ref(EXTENDED_KEY_USAGE), 74 ASN1_ITEM_ref(EXTENDED_KEY_USAGE),
74 0,0,0,0, 75 0,0,0,0,
75 0,0, 76 0,0,
76 i2v_EXTENDED_KEY_USAGE, 77 i2v_EXTENDED_KEY_USAGE,
77 v2i_EXTENDED_KEY_USAGE, 78 v2i_EXTENDED_KEY_USAGE,
78 0,0, 79 0,0,
(...skipping 11 matching lines...) Expand all
90 0,0, 91 0,0,
91 NULL 92 NULL
92 }; 93 };
93 94
94 ASN1_ITEM_TEMPLATE(EXTENDED_KEY_USAGE) = 95 ASN1_ITEM_TEMPLATE(EXTENDED_KEY_USAGE) =
95 ASN1_EX_TEMPLATE_TYPE(ASN1_TFLG_SEQUENCE_OF, 0, EXTENDED_KEY_USAGE, ASN1 _OBJECT) 96 ASN1_EX_TEMPLATE_TYPE(ASN1_TFLG_SEQUENCE_OF, 0, EXTENDED_KEY_USAGE, ASN1 _OBJECT)
96 ASN1_ITEM_TEMPLATE_END(EXTENDED_KEY_USAGE) 97 ASN1_ITEM_TEMPLATE_END(EXTENDED_KEY_USAGE)
97 98
98 IMPLEMENT_ASN1_FUNCTIONS(EXTENDED_KEY_USAGE) 99 IMPLEMENT_ASN1_FUNCTIONS(EXTENDED_KEY_USAGE)
99 100
100 static STACK_OF(CONF_VALUE) *i2v_EXTENDED_KEY_USAGE(X509V3_EXT_METHOD *method, 101 static STACK_OF(CONF_VALUE) *
101 » » void *a, STACK_OF(CONF_VALUE) *ext_list) 102 i2v_EXTENDED_KEY_USAGE(const X509V3_EXT_METHOD *method, void *a,
103 » » » STACK_OF(CONF_VALUE) *ext_list)
102 { 104 {
103 EXTENDED_KEY_USAGE *eku = a; 105 EXTENDED_KEY_USAGE *eku = a;
104 int i; 106 int i;
105 ASN1_OBJECT *obj; 107 ASN1_OBJECT *obj;
106 char obj_tmp[80]; 108 char obj_tmp[80];
107 for(i = 0; i < sk_ASN1_OBJECT_num(eku); i++) { 109 for(i = 0; i < sk_ASN1_OBJECT_num(eku); i++) {
108 obj = sk_ASN1_OBJECT_value(eku, i); 110 obj = sk_ASN1_OBJECT_value(eku, i);
109 i2t_ASN1_OBJECT(obj_tmp, 80, obj); 111 i2t_ASN1_OBJECT(obj_tmp, 80, obj);
110 X509V3_add_value(NULL, obj_tmp, &ext_list); 112 X509V3_add_value(NULL, obj_tmp, &ext_list);
111 } 113 }
112 return ext_list; 114 return ext_list;
113 } 115 }
114 116
115 static void *v2i_EXTENDED_KEY_USAGE(X509V3_EXT_METHOD *method, 117 static void *v2i_EXTENDED_KEY_USAGE(const X509V3_EXT_METHOD *method,
116 » » » » X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval) 118 » » » » X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval)
117 { 119 {
118 EXTENDED_KEY_USAGE *extku; 120 EXTENDED_KEY_USAGE *extku;
119 char *extval; 121 char *extval;
120 ASN1_OBJECT *objtmp; 122 ASN1_OBJECT *objtmp;
121 CONF_VALUE *val; 123 CONF_VALUE *val;
122 int i; 124 int i;
123 125
124 if(!(extku = sk_ASN1_OBJECT_new_null())) { 126 if(!(extku = sk_ASN1_OBJECT_new_null())) {
125 X509V3err(X509V3_F_V2I_EXTENDED_KEY_USAGE,ERR_R_MALLOC_FAILURE); 127 X509V3err(X509V3_F_V2I_EXTENDED_KEY_USAGE,ERR_R_MALLOC_FAILURE);
126 return NULL; 128 return NULL;
127 } 129 }
128 130
129 for(i = 0; i < sk_CONF_VALUE_num(nval); i++) { 131 for(i = 0; i < sk_CONF_VALUE_num(nval); i++) {
130 val = sk_CONF_VALUE_value(nval, i); 132 val = sk_CONF_VALUE_value(nval, i);
131 if(val->value) extval = val->value; 133 if(val->value) extval = val->value;
132 else extval = val->name; 134 else extval = val->name;
133 if(!(objtmp = OBJ_txt2obj(extval, 0))) { 135 if(!(objtmp = OBJ_txt2obj(extval, 0))) {
134 sk_ASN1_OBJECT_pop_free(extku, ASN1_OBJECT_free); 136 sk_ASN1_OBJECT_pop_free(extku, ASN1_OBJECT_free);
135 X509V3err(X509V3_F_V2I_EXTENDED_KEY_USAGE,X509V3_R_INVAL ID_OBJECT_IDENTIFIER); 137 X509V3err(X509V3_F_V2I_EXTENDED_KEY_USAGE,X509V3_R_INVAL ID_OBJECT_IDENTIFIER);
136 X509V3_conf_err(val); 138 X509V3_conf_err(val);
137 return NULL; 139 return NULL;
138 } 140 }
139 sk_ASN1_OBJECT_push(extku, objtmp); 141 sk_ASN1_OBJECT_push(extku, objtmp);
140 } 142 }
141 return extku; 143 return extku;
142 } 144 }
OLDNEW
« no previous file with comments | « openssl/crypto/x509v3/v3_enum.c ('k') | openssl/crypto/x509v3/v3_genn.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698