use _hx509_request_print
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@21334 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -1204,58 +1204,21 @@ request_create(struct request_create_options *opt, int argc, char **argv)
|
|||||||
int
|
int
|
||||||
pkcs10_print(struct pkcs10_print_options *opt, int argc, char **argv)
|
pkcs10_print(struct pkcs10_print_options *opt, int argc, char **argv)
|
||||||
{
|
{
|
||||||
size_t size, length;
|
size_t length;
|
||||||
int ret, i;
|
int ret, i;
|
||||||
void *p;
|
void *p;
|
||||||
|
|
||||||
printf("pkcs10 print\n");
|
printf("pkcs10 print\n");
|
||||||
|
|
||||||
for (i = 0; i < argc; i++) {
|
for (i = 0; i < argc; i++) {
|
||||||
CertificationRequest req;
|
|
||||||
CertificationRequestInfo *rinfo;
|
|
||||||
|
|
||||||
ret = _hx509_map_file(argv[i], &p, &length, NULL);
|
ret = _hx509_map_file(argv[i], &p, &length, NULL);
|
||||||
if (ret)
|
if (ret)
|
||||||
err(1, "map_file: %s: %d", argv[i], ret);
|
err(1, "map_file: %s: %d", argv[i], ret);
|
||||||
|
|
||||||
ret = decode_CertificationRequest(p, length, &req, &size);
|
ret = _hx509_request_print(context, stdout, p, length);
|
||||||
_hx509_unmap_file(p, length);
|
_hx509_unmap_file(p, length);
|
||||||
if (ret)
|
if (ret)
|
||||||
errx(1, "failed to parse file %s: %d", argv[i], ret);
|
errx(1, "failed to print file %s: %d", argv[i], ret);
|
||||||
|
|
||||||
rinfo = &req.certificationRequestInfo;
|
|
||||||
|
|
||||||
{
|
|
||||||
char *subject;
|
|
||||||
hx509_name n;
|
|
||||||
|
|
||||||
ret = _hx509_name_from_Name(&rinfo->subject, &n);
|
|
||||||
if (ret)
|
|
||||||
abort();
|
|
||||||
|
|
||||||
ret = hx509_name_to_string(n, &subject);
|
|
||||||
hx509_name_free(&n);
|
|
||||||
if (ret)
|
|
||||||
abort();
|
|
||||||
|
|
||||||
printf("name: %s\n", subject);
|
|
||||||
free(subject);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (rinfo->attributes && rinfo->attributes->len) {
|
|
||||||
int j;
|
|
||||||
|
|
||||||
printf("Attributes:\n");
|
|
||||||
|
|
||||||
for (j = 0; j < rinfo->attributes->len; j++) {
|
|
||||||
char *str;
|
|
||||||
hx509_oid_sprint(&rinfo->attributes->val[j].type, &str);
|
|
||||||
printf("\toid: %s\n", str);
|
|
||||||
free(str);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
free_CertificationRequest(&req);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
Reference in New Issue
Block a user