example libctdb.a and test program libctdb/tst.c
[sahlberg/ctdb.git] / libctdb / tst.c
1 #include <stdio.h>
2 #include <stdint.h>
3 #include <poll.h>
4 #include "include/libctdb.h"
5
6
7 void rm_cb(int32_t status, int32_t recmaster, void *private_data)
8 {
9         printf("recmaster:%d\n", recmaster);
10 }
11
12 int main(int argc, char *argv[])
13 {
14         struct ctdb_context *ctdb_context;
15         struct ctdb_client_control_state *state;
16         struct pollfd pfd;
17
18         ctdb_context = libctdb_connect("/tmp/ctdb.socket");
19
20
21         pfd.fd = libctdb_get_fd(ctdb_context);
22
23         state = libctdb_getrecmaster_send_cb(ctdb_context, 0, rm_cb, NULL);
24
25         for (;;) {
26           pfd.events = libctdb_which_events(ctdb_context);
27           if (poll(&pfd, 1, -1) < 0) {
28             printf("Poll failed");
29             exit(10);
30           }
31           libctdb_service(ctdb_context);
32         }
33
34         return 0;
35 }