Sprinkle setting error strings.
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@17409 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
		| @@ -91,18 +91,23 @@ hx509_certs_init(hx509_context context, | |||||||
| 	type = strdup("MEMORY"); | 	type = strdup("MEMORY"); | ||||||
| 	residue = name; | 	residue = name; | ||||||
|     } |     } | ||||||
|     if (type == NULL) |     if (type == NULL) { | ||||||
|  | 	hx509_clear_error_string(context); | ||||||
| 	return ENOMEM; | 	return ENOMEM; | ||||||
|  |     } | ||||||
|      |      | ||||||
|     ops = _hx509_ks_type(context, type); |     ops = _hx509_ks_type(context, type); | ||||||
|     free(type); |     free(type); | ||||||
|     if (ops == NULL) |     if (ops == NULL) { | ||||||
|  | 	hx509_set_error_string(context, 0, ENOENT,  | ||||||
|  | 			       "Keyset type %s is not supported", type); | ||||||
| 	return ENOENT; | 	return ENOENT; | ||||||
|  |     } | ||||||
|     c = calloc(1, sizeof(*c)); |     c = calloc(1, sizeof(*c)); | ||||||
|     if (c == NULL) |     if (c == NULL) { | ||||||
|  | 	hx509_clear_error_string(context); | ||||||
| 	return ENOMEM; | 	return ENOMEM; | ||||||
|  |     } | ||||||
|     c->ops = ops; |     c->ops = ops; | ||||||
|  |  | ||||||
|     ret = (*ops->init)(context, c, &c->ops_data, flags, residue, lock); |     ret = (*ops->init)(context, c, &c->ops_data, flags, residue, lock); | ||||||
| @@ -132,8 +137,12 @@ hx509_certs_start_seq(hx509_context context, | |||||||
| { | { | ||||||
|     int ret; |     int ret; | ||||||
|  |  | ||||||
|     if (certs->ops->iter_start == NULL) |     if (certs->ops->iter_start == NULL) { | ||||||
|  | 	hx509_set_error_string(context, 0, ENOENT,  | ||||||
|  | 			       "Keyset type %s doesn't support iteration",  | ||||||
|  | 			       certs->ops->name); | ||||||
| 	return ENOENT; | 	return ENOENT; | ||||||
|  |     } | ||||||
|  |  | ||||||
|     ret = (*certs->ops->iter_start)(context, certs, certs->ops_data, cursor); |     ret = (*certs->ops->iter_start)(context, certs, certs->ops_data, cursor); | ||||||
|     if (ret) |     if (ret) | ||||||
| @@ -219,8 +228,12 @@ hx509_ci_print_names(hx509_context context, void *ctx, hx509_cert c) | |||||||
| int | int | ||||||
| hx509_certs_add(hx509_context context, hx509_certs certs, hx509_cert cert) | hx509_certs_add(hx509_context context, hx509_certs certs, hx509_cert cert) | ||||||
| { | { | ||||||
|     if (certs->ops->add == NULL) |     if (certs->ops->add == NULL) { | ||||||
|  | 	hx509_set_error_string(context, 0, ENOENT,  | ||||||
|  | 			       "Keyset type %s doesn't support add operation",  | ||||||
|  | 			       certs->ops->name); | ||||||
| 	return ENOENT; | 	return ENOENT; | ||||||
|  |     } | ||||||
|  |  | ||||||
|     return (*certs->ops->add)(context, certs, certs->ops_data, cert); |     return (*certs->ops->add)(context, certs, certs->ops_data, cert); | ||||||
| } | } | ||||||
| @@ -261,8 +274,10 @@ hx509_certs_find(hx509_context context, | |||||||
|     hx509_certs_end_seq(context, certs, cursor); |     hx509_certs_end_seq(context, certs, cursor); | ||||||
|     if (ret) |     if (ret) | ||||||
| 	return ret; | 	return ret; | ||||||
|     if (c == NULL) |     if (c == NULL) { | ||||||
|  | 	hx509_clear_error_string(context); | ||||||
| 	return HX509_CERT_NOT_FOUND; | 	return HX509_CERT_NOT_FOUND; | ||||||
|  |     } | ||||||
|  |  | ||||||
|     return 0; |     return 0; | ||||||
| } | } | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Love Hörnquist Åstrand
					Love Hörnquist Åstrand