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 } |