summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/x509v3/v3_info.c
diff options
context:
space:
mode:
authorho <>2003-03-16 12:18:21 +0000
committerho <>2003-03-16 12:18:21 +0000
commita4c0f9de9c618e0271a7e122136bdfe50301a6d7 (patch)
tree92679b9e140a2b594f7238dbaf4556cb2da66d73 /src/lib/libcrypto/x509v3/v3_info.c
parent68d910a736124944b061ef4eb6d3e07b4682389a (diff)
downloadopenbsd-a4c0f9de9c618e0271a7e122136bdfe50301a6d7.tar.gz
openbsd-a4c0f9de9c618e0271a7e122136bdfe50301a6d7.tar.bz2
openbsd-a4c0f9de9c618e0271a7e122136bdfe50301a6d7.zip
Less strcpy/strcat/sprintf. tdeval@ ok.
Diffstat (limited to 'src/lib/libcrypto/x509v3/v3_info.c')
-rw-r--r--src/lib/libcrypto/x509v3/v3_info.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/lib/libcrypto/x509v3/v3_info.c b/src/lib/libcrypto/x509v3/v3_info.c
index e1cf01a9b4..92b9316b02 100644
--- a/src/lib/libcrypto/x509v3/v3_info.c
+++ b/src/lib/libcrypto/x509v3/v3_info.c
@@ -105,7 +105,7 @@ static STACK_OF(CONF_VALUE) *i2v_AUTHORITY_INFO_ACCESS(X509V3_EXT_METHOD *method
105 STACK_OF(CONF_VALUE) *ret) 105 STACK_OF(CONF_VALUE) *ret)
106{ 106{
107 ACCESS_DESCRIPTION *desc; 107 ACCESS_DESCRIPTION *desc;
108 int i; 108 int i,nlen;
109 char objtmp[80], *ntmp; 109 char objtmp[80], *ntmp;
110 CONF_VALUE *vtmp; 110 CONF_VALUE *vtmp;
111 for(i = 0; i < sk_ACCESS_DESCRIPTION_num(ainfo); i++) { 111 for(i = 0; i < sk_ACCESS_DESCRIPTION_num(ainfo); i++) {
@@ -114,15 +114,16 @@ static STACK_OF(CONF_VALUE) *i2v_AUTHORITY_INFO_ACCESS(X509V3_EXT_METHOD *method
114 if(!ret) break; 114 if(!ret) break;
115 vtmp = sk_CONF_VALUE_value(ret, i); 115 vtmp = sk_CONF_VALUE_value(ret, i);
116 i2t_ASN1_OBJECT(objtmp, 80, desc->method); 116 i2t_ASN1_OBJECT(objtmp, 80, desc->method);
117 ntmp = OPENSSL_malloc(strlen(objtmp) + strlen(vtmp->name) + 5); 117 nlen = strlen(objtmp) + strlen(vtmp->name) + 4;
118 ntmp = OPENSSL_malloc(nlen);
118 if(!ntmp) { 119 if(!ntmp) {
119 X509V3err(X509V3_F_I2V_AUTHORITY_INFO_ACCESS, 120 X509V3err(X509V3_F_I2V_AUTHORITY_INFO_ACCESS,
120 ERR_R_MALLOC_FAILURE); 121 ERR_R_MALLOC_FAILURE);
121 return NULL; 122 return NULL;
122 } 123 }
123 strcpy(ntmp, objtmp); 124 strlcpy(ntmp, objtmp, nlen);
124 strcat(ntmp, " - "); 125 strlcat(ntmp, " - ", nlen);
125 strcat(ntmp, vtmp->name); 126 strlcat(ntmp, vtmp->name, nlen);
126 OPENSSL_free(vtmp->name); 127 OPENSSL_free(vtmp->name);
127 vtmp->name = ntmp; 128 vtmp->name = ntmp;
128 129