if (params->q_bits > 0)
result = _gnutls_x509_write_uint32(c2, "privateValueLength",
params->q_bits);
- else
+ else {
result = asn1_write_value(c2, "privateValueLength", NULL, 0);
+ if (result != ASN1_SUCCESS)
+ result = _gnutls_asn2err(result);
+ }
if (result < 0) {
gnutls_assert();
*serial_size = len;
- if (result < 0) {
+ if (result != ASN1_SUCCESS) {
ret = _gnutls_asn2err(result);
goto fail;
}
if (result == ASN1_ELEMENT_NOT_FOUND)
return GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE;
- else if (result < 0) {
+ else if (result != ASN1_SUCCESS) {
gnutls_assert();
return _gnutls_asn2err(result);
}
if (result == ASN1_ELEMENT_NOT_FOUND)
return GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE;
- else if (result < 0) {
+ else if (result != ASN1_SUCCESS) {
gnutls_assert();
return _gnutls_asn2err(result);
}
if (result == ASN1_ELEMENT_NOT_FOUND)
return GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE;
- else if (result < 0) {
+ else if (result != ASN1_SUCCESS) {
gnutls_assert();
return _gnutls_asn2err(result);
}
asn1_delete_structure(&c2);
result = GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE;
goto out;
- } else if (result < 0) {
+ } else if (result != ASN1_SUCCESS) {
gnutls_assert();
asn1_delete_structure(&c2);
result = _gnutls_asn2err(result);
asn1_delete_structure(&c2);
- if (result < 0) {
+ if (result != ASN1_SUCCESS) {
gnutls_assert();
result = _gnutls_asn2err(result);
goto out;
_gnutls_str_cat(tmp, sizeof(tmp), ".value");
result = asn1_write_value(asn1_struct, tmp, _data, sizeof_data);
- if (result < 0) {
+ if (result != ASN1_SUCCESS) {
gnutls_assert();
return _gnutls_asn2err(result);
}
result = asn1_write_value(spk, "pSourceFunc.parameters", label.data,
label.size);
- if (result < 0) {
+ if (result != ASN1_SUCCESS) {
gnutls_assert();
result = _gnutls_asn2err(result);
goto cleanup;
_gnutls_str_cpy(name, sizeof(name), where);
if (tag == ASN1_TAG_UTCTime) {
- if ((result = asn1_write_value(c2, where, "utcTime", 1)) < 0) {
+ if ((result = asn1_write_value(c2, where, "utcTime", 1)) !=
+ ASN1_SUCCESS) {
gnutls_assert();
return _gnutls_asn2err(result);
}
_gnutls_str_cat(name, sizeof(name), ".utcTime");
} else {
- if ((result = asn1_write_value(c2, where, "generalTime", 1)) <
- 0) {
+ if ((result = asn1_write_value(c2, where, "generalTime", 1)) !=
+ ASN1_SUCCESS) {
gnutls_assert();
return _gnutls_asn2err(result);
}
if (pathlen < 0) {
result = asn1_write_value(c2, "pathLenConstraint", NULL, 0);
- if (result < 0)
+ if (result != ASN1_SUCCESS)
result = _gnutls_asn2err(result);
} else
result = _gnutls_x509_write_uint32(c2, "pathLenConstraint",
result = asn1_write_value(c2, "proxyPolicy.policyLanguage",
policyLanguage, 1);
- if (result < 0) {
+ if (result != ASN1_SUCCESS) {
gnutls_assert();
result = _gnutls_asn2err(result);
goto cleanup;
result = asn1_write_value(c2, "proxyPolicy.policy", policy,
sizeof_policy);
- if (result < 0) {
+ if (result != ASN1_SUCCESS) {
gnutls_assert();
result = _gnutls_asn2err(result);
goto cleanup;
int ret;
size_t s = 0;
char smallbuf[10];
+ char oidbuf[128];
gnutls_datum_t out;
unsigned crit;
s = 0;
ret = gnutls_x509_crq_get_extension_info(crq, 0, NULL, &s, NULL);
- if (ret != 0)
+ if (ret != GNUTLS_E_SHORT_MEMORY_BUFFER || s > sizeof(oidbuf))
fail("gnutls_x509_crq_get_extension_info2\n");
+ ret = gnutls_x509_crq_get_extension_info(crq, 0, oidbuf, &s, NULL);
+ if (ret != 0)
+ fail("gnutls_x509_crq_get_extension_info3\n");
+
s = 0;
ret = gnutls_x509_crq_get_extension_data(crq, 0, NULL, &s);
if (ret != 0)