Merge ssh://repo.or.cz/srv/git/libisds
[libisds.git] / client / loadcmssignedsentmessage.c
blobec7e6f83d46b6fc894b8d067d517f1385614105e
1 #define _XOPEN_SOURCE 500
2 #include <stdlib.h>
3 #include <stdio.h>
4 #include <locale.h>
5 #include <time.h>
6 #include <string.h>
7 #include <isds.h>
8 #include "common.h"
11 int main(int argc, char **argv) {
12 struct isds_ctx *ctx = NULL;
13 isds_error err;
15 setlocale(LC_ALL, "");
17 err = isds_init();
18 if (err) {
19 printf("isds_init() failed: %s\n", isds_strerror(err));
20 exit(EXIT_FAILURE);
23 isds_set_logging(ILF_ALL & ~ILF_HTTP, ILL_ALL);
25 ctx = isds_ctx_create();
26 if (!ctx) {
27 printf("isds_ctx_create() failed");
33 /* Load CMS signed sent message */
34 struct isds_message *message = NULL;
35 void *buffer;
36 int fd;
37 size_t length;
39 if (mmap_file("../server/messages/signed_sent_message-151874.zfo",
40 &fd, &buffer, &length)) {
41 fprintf(stderr, "Could not map file with message");
42 isds_ctx_free(&ctx);
43 isds_cleanup();
44 exit(EXIT_FAILURE);
47 printf("Loading CMS signed sent message\n");
48 err = isds_load_message(ctx, RAWTYPE_CMS_SIGNED_OUTGOING_MESSAGE,
49 buffer, length, &message, BUFFER_DONT_STORE);
50 if (err)
51 printf("isds_load_message() failed: %s: %s\n",
52 isds_strerror(err), isds_long_message(ctx));
53 else {
54 printf("isds_load_message() succeeded:\n");
55 print_message(message);
58 isds_message_free(&message);
59 munmap_file(fd, buffer, length);
64 err = isds_ctx_free(&ctx);
65 if (err) {
66 printf("isds_ctx_free() failed: %s\n", isds_strerror(err));
70 err = isds_cleanup();
71 if (err) {
72 printf("isds_cleanup() failed: %s\n", isds_strerror(err));
75 exit (EXIT_SUCCESS);