]> arthur.barton.de Git - netatalk.git/blob - bin/ad/ad.c
38fd62bb3890099335d3780496af36a1eaaf8004
[netatalk.git] / bin / ad / ad.c
1 /* 
2    Copyright (c) 2009 Frank Lahm <franklahm@gmail.com>
3    
4    This program is free software; you can redistribute it and/or modify
5    it under the terms of the GNU General Public License as published by
6    the Free Software Foundation; either version 2 of the License, or
7    (at your option) any later version.
8  
9    This program is distributed in the hope that it will be useful,
10    but WITHOUT ANY WARRANTY; without even the implied warranty of
11    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12    GNU General Public License for more details.
13 */
14
15 #ifdef HAVE_CONFIG_H
16 #include "config.h"
17 #endif /* HAVE_CONFIG_H */
18
19 #include <unistd.h>
20 #include <sys/types.h>
21 #include <stdlib.h>
22 #include <stdio.h>
23 #include <stdarg.h>
24 #include <limits.h>
25 #include <signal.h>
26 #include <string.h>
27 #include <errno.h>
28
29 #include <atalk/cnid.h>
30 #include <atalk/volinfo.h>
31 #include <atalk/logger.h>
32 #include <atalk/util.h>
33
34 #include "ad.h"
35
36 static void usage_main(void)
37 {
38     printf("Usage: ad ls|cp|rm|mv|find [file|dir, ...]\n");
39     printf("       ad -v|--version\n");
40 }
41
42 static void show_version(void)
43 {
44     printf("ad (Netatalk %s)\n", VERSION);
45 }
46
47 int main(int argc, char **argv)
48 {
49     setuplog("default log_note /dev/tty");
50
51     if (argc < 2) {
52         usage_main();
53         return 1;
54     }
55
56     if (STRCMP(argv[1], ==, "ls"))
57         return ad_ls(argc - 1, argv + 1);
58     else if (STRCMP(argv[1], ==, "cp"))
59         return ad_cp(argc - 1, argv + 1);
60     else if (STRCMP(argv[1], ==, "rm"))
61         return ad_rm(argc - 1, argv + 1);
62     else if (STRCMP(argv[1], ==, "mv"))
63         return ad_mv(argc, argv);
64     else if (STRCMP(argv[1], ==, "find"))
65         return ad_find(argc, argv);
66     else if (STRCMP(argv[1], ==, "-v")) {
67         show_version();
68         return 1;
69     }
70     else if  (STRCMP(argv[1], ==, "--version")) {
71         show_version();
72         return 1;
73     }
74     else {
75         usage_main();
76         return 1;
77     }
78
79     return 0;
80 }