Merge ssh://repo.or.cz/srv/git/libisds
[libisds.git] / client / logger.c
blob127aef9f1557dbbd415cc3e0e25e473c6173774a
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"
10 void logger(isds_log_facility facility, isds_log_level level,
11 const char *message, int length, void *data) {
12 printf("\033[32mLOG(%02d,%02d): ", facility, level);
13 printf("%.*s", length, message);
14 printf("\033[m");
18 int main(int argc, char **argv) {
19 struct isds_ctx *ctx = NULL;
20 isds_error err;
22 setlocale(LC_ALL, "");
24 err = isds_init();
25 if (err) {
26 printf("isds_init() failed: %s\n", isds_strerror(err));
27 exit(EXIT_FAILURE);
28 } else {
29 printf("isds_init() succeeded\n");
32 isds_set_log_callback(logger, NULL);
33 isds_set_logging(ILF_ALL, ILL_ALL);
35 ctx = isds_ctx_create();
36 if (!ctx) {
37 printf("isds_ctx_create() failed");
38 } else {
39 printf("isds_ctx_create() succeeded\n");
43 err = isds_set_timeout(ctx, 10000);
44 if (err) {
45 printf("isds_set_timeout() failed: %s\n", isds_strerror(err));
46 } else {
47 printf("isds_set_timeout() succeeded\n");
51 /* err = isds_set_tls(ctx, ITLS_VERIFY_SERVER, 0);
52 if (err) {
53 printf("isds_set_tls(ITLS_VERIFY_SERVER) failed: %s\n",
54 isds_strerror(err));
57 err = isds_set_tls(ctx, ITLS_CA_FILE, "/etc/ssl/certs/ca-certificates.crt");
58 if (err) {
59 printf("isds_set_tls(ITLS_CA_FILE) failed: %s\n",
60 isds_strerror(err));
61 }*/
63 err = isds_login(ctx, url, username, password, NULL);
64 if (err) {
65 printf("isds_login() failed: %s: %s\n", isds_strerror(err),
66 isds_long_message(ctx));
67 } else {
68 printf("Logged in :)\n");
72 err = isds_logout(ctx);
73 if (err) {
74 printf("isds_logout() failed: %s\n", isds_strerror(err));
75 } else {
76 printf("isds_logout() succeeded\n");
81 err = isds_ctx_free(&ctx);
82 if (err) {
83 printf("isds_ctx_free() failed: %s\n", isds_strerror(err));
84 } else {
85 printf("isds_ctx_free() succeeded\n");
90 err = isds_cleanup();
91 if (err) {
92 printf("isds_cleanup() failed: %s\n", isds_strerror(err));
93 } else {
94 printf("isds_ctx_cleanup() succeeded\n");
98 exit (EXIT_SUCCESS);