34 #include "cmdhandler.h" 41 #include "clientpipe.h" 47 static const char *module_str =
"update_all_cmd";
60 client_printf(sockfd,
"Perform policy import, update zonelist, and update repositorylist.\n\n");
67 char *zonelist = NULL;
68 char **replist = NULL;
69 char **policy_names = NULL;
75 &zonelist, &replist, &repcount,
76 (ods_log_verbosity() >= 3)))
77 ods_log_error_and_printf(sockfd, module_str,
78 "Unable to validate '%s' consistency.",
80 else if (
check_kasp(kasp, replist, repcount, 0, &policy_names, &policy_count))
81 ods_log_error_and_printf(sockfd, module_str,
82 "Unable to validate '%s' consistency.", kasp);
84 ods_log_error_and_printf(sockfd, module_str,
85 "Unable to validate '%s' consistency.", zonelist);
91 for (i = 0; i < repcount; i++) free(replist[i]);
95 for (i = 0; i < policy_count; i++) free(policy_names[i]);
101 run(
int sockfd, cmdhandler_ctx_type* context,
const char *cmd)
115 if (!(error = check_all(sockfd, engine))) {
137 "update all", &usage, &help, NULL, &run
const char * cfg_filename
int check_conf(const char *conf, char **kasp, char **zonelist, char ***repo_listout, int *repo_countout, int verbose)
int zonelist_import(int sockfd, engine_type *engine, db_connection_t *dbconn, int do_delete, const char *zonelist_path)
void engine_start_workers(engine_type *engine)
int check_kasp(const char *kasp, char **repo_list, int repo_count, int verbose, char ***policy_names_out, int *policy_count_out)
int check_zonelist(const char *zonelist, int verbose, char **policy_names, int policy_count)
engine_type * getglobalcontext(cmdhandler_ctx_type *context)
pthread_cond_t signal_cond
void engine_stop_workers(engine_type *engine)
db_connection_t * getconnectioncontext(cmdhandler_ctx_type *context)
engineconfig_type * config
struct cmd_func_block update_all_funcblock
int policy_import(int sockfd, engine_type *engine, db_connection_t *dbconn, int do_delete)
pthread_mutex_t signal_lock