tdb2: update documentation
[ccan] / ccan / tdb2 / tools / mktdb.c
1 #include <ccan/tdb2/tdb2.h>
2 #include <stdlib.h>
3 #include <stdio.h>
4 #include <fcntl.h>
5 #include <err.h>
6
7 int main(int argc, char *argv[])
8 {
9         unsigned int i, num_recs;
10         struct tdb_context *tdb;
11
12         if (argc != 3 || (num_recs = atoi(argv[2])) == 0)
13                 errx(1, "Usage: mktdb <tdbfile> <numrecords>");
14
15         tdb = tdb_open(argv[1], TDB_DEFAULT, O_CREAT|O_TRUNC|O_RDWR, 0600,NULL);
16         if (!tdb)
17                 err(1, "Opening %s", argv[1]);
18
19         for (i = 0; i < num_recs; i++) {
20                 TDB_DATA d;
21
22                 d.dptr = (void *)&i;
23                 d.dsize = sizeof(i);
24                 if (tdb_store(tdb, d, d, TDB_INSERT) != 0)
25                         err(1, "Failed to store record %i", i);
26         }
27         printf("Done\n");
28         return 0;
29 }