]> git.ozlabs.org Git - ccan/blob - ccan/tal/grab_file/_info
68ad089b06f23d59e4ef318f0f107c76a9e50e87
[ccan] / ccan / tal / grab_file / _info
1 #include "config.h"
2 #include <stdio.h>
3 #include <string.h>
4
5 /**
6  * tal/grab_file - file helper routines
7  *
8  * This contains simple functions for getting the contents of a file.
9  *
10  * Example:
11  *      #include <err.h>
12  *      #include <stdio.h>
13  *      #include <string.h>
14  *      #include <ccan/tal/grab_file/grab_file.h>
15  *      #include <ccan/tal/tal.h> // for tal_free
16  *
17  *      int main(int argc, char *argv[])
18  *      {
19  *              char *file;
20  *
21  *              file = grab_file(NULL, argv[1]);
22  *              if (!file)
23  *                      err(1, "Could not read file %s", argv[1]);
24  *              if (strlen(file)+1 != tal_count(file))
25  *                      printf("File contains NUL characters\n");
26  *              else if (tal_count(file) == 1)
27  *                      printf("File contains nothing\n");
28  *              else if (strchr(file, '\n'))
29  *                      printf("File contains multiple lines\n");
30  *              else
31  *                      printf("File contains one line\n");
32  *              tal_free(file);
33  *
34  *              return 0;
35  *      }
36  *
37  * License: LGPL (v2.1 or any later version)
38  * Author: Rusty Russell <rusty@rustcorp.com.au>
39  */
40 int main(int argc, char *argv[])
41 {
42         if (argc != 2)
43                 return 1;
44
45         if (strcmp(argv[1], "depends") == 0) {
46                 printf("ccan/tal\n");
47                 printf("ccan/noerr\n");
48                 return 0;
49         }
50         if (strcmp(argv[1], "testdepends") == 0) {
51                 printf("ccan/tal/str\n");
52                 return 0;
53         }
54
55         return 1;
56 }