dav/main.c

changeset 398
26fdeed98cd7
parent 384
8bfde5687890
child 410
0b9bea2d7283
equal deleted inserted replaced
397:ddda42712f39 398:26fdeed98cd7
139 } else if(!strcasecmp(cmd, "info")) { 139 } else if(!strcasecmp(cmd, "info")) {
140 ret = cmd_info(args); 140 ret = cmd_info(args);
141 } else if(!strcasecmp(cmd, "add-repository") 141 } else if(!strcasecmp(cmd, "add-repository")
142 || !strcasecmp(cmd, "add-repo")) { 142 || !strcasecmp(cmd, "add-repo")) {
143 ret = cmd_add_repository(args); 143 ret = cmd_add_repository(args);
144 } else if(!strcasecmp(cmd, "remove-repository")
145 || !strcasecmp(cmd, "remove-repo")
146 || !strcasecmp(cmd, "rm-repo")) {
147 ret = cmd_remove_repository(args);
144 } else if(!strcasecmp(cmd, "list-repositories") 148 } else if(!strcasecmp(cmd, "list-repositories")
145 || !strcasecmp(cmd, "list-repos")) { 149 || !strcasecmp(cmd, "list-repos")) {
146 ret = list_repositories(); 150 ret = list_repositories();
147 } else if(!strcasecmp(cmd, "version") || !strcasecmp(cmd, "-version") 151 } else if(!strcasecmp(cmd, "version") || !strcasecmp(cmd, "-version")
148 || !strcasecmp(cmd, "--version")) { 152 || !strcasecmp(cmd, "--version")) {
238 fprintf(stderr, " -i disable cert verification (all commands)\n"); 242 fprintf(stderr, " -i disable cert verification (all commands)\n");
239 fprintf(stderr, " -v verbose output (all commands)\n"); 243 fprintf(stderr, " -v verbose output (all commands)\n");
240 fprintf(stderr, "\n"); 244 fprintf(stderr, "\n");
241 fprintf(stderr, "Config commands:\n"); 245 fprintf(stderr, "Config commands:\n");
242 fprintf(stderr, " add-repository\n"); 246 fprintf(stderr, " add-repository\n");
247 fprintf(stderr, " remove-repository\n");
243 fprintf(stderr, " list-repositories\n"); 248 fprintf(stderr, " list-repositories\n");
244 fprintf(stderr, " check-config\n"); 249 fprintf(stderr, " check-config\n");
245 fprintf(stderr, "\n"); 250 fprintf(stderr, "\n");
246 fprintf(stderr, 251 fprintf(stderr,
247 "Instead of an url you can pass a repository name " 252 "Instead of an url you can pass a repository name "
1924 free(password); 1929 free(password);
1925 } 1930 }
1926 1931
1927 return ret; 1932 return ret;
1928 } 1933 }
1934
1935 int cmd_remove_repository(CmdArgs *args) {
1936 if(args->argc < 1) {
1937 fprintf(stderr, "Too few arguments\n");
1938 fprintf(stderr, "Usage: dav remove-repository <name...>\n");
1939 return -1;
1940 }
1941
1942 for(int i = 0 ; i < args->argc ; i++) {
1943 sstr_t reponame = sstr(args->argv[i]);
1944 Repository* repo = get_repository(reponame);
1945 if(repo) {
1946 if(remove_repository(repo)) {
1947 fprintf(stderr, "Cannot write config.xml\n");
1948 return -1;
1949 }
1950 } else {
1951 fprintf(stderr, "Repository %s does not exist - skipped.\n",
1952 reponame.ptr);
1953 return -1;
1954 }
1955 }
1956
1957 return -1;
1958 }

mercurial