37static const char *module_str =
"signconf_cmd";
40perform(task_type* task,
char const *zonename,
void *userdata,
void *context)
44 char cmd[SYSTEM_MAXLEN];
47 ods_log_info(
"[%s] performing signconf for zone %s", module_str,
53 ods_log_info(
"[%s] signconf done, no change", module_str);
54 return schedule_SUCCESS;
57 ods_log_error(
"[%s] signconf failed", module_str);
59 return schedule_SUCCESS;
62 ods_log_info(
"[%s] signconf done for zone %s, notifying signer",
63 module_str, zonename);
66 if (snprintf(cmd,
sizeof(cmd),
"%s %s", SIGNER_CLI_UPDATE, zonename) >= (
int)
sizeof(cmd)
69 ods_log_error(
"[%s] unable to notify signer of signconf changes for zone %s!",
70 module_str, zonename);
72 return schedule_SUCCESS;
79 task_type* task = task_create(strdup(zonename), TASK_CLASS_ENFORCER,
80 TASK_TYPE_SIGNCONF, perform, NULL, NULL, time_now());
81 (void) schedule_task(engine->
taskq, task, 1, 0);
95 ods_log_error(
"[%s] Can't fetch zones for policy %s from database",
113 ods_log_error(
"[%s] Can't fetch zones from database", module_str);
117 ods_log_error(
"[%s] Can't fetch zones from database", module_str);
const char * policy_name(const policy_t *policy)
const db_value_t * policy_id(const policy_t *policy)
void signconf_task_flush_policy(engine_type *engine, db_connection_t *dbconn, policy_t const *policy)
void signconf_task_flush_zone(engine_type *engine, db_connection_t *dbconn, const char *zonename)
void signconf_task_flush_all(engine_type *engine, db_connection_t *dbconn)
int signconf_export_zone(char const *zonename, db_connection_t *dbconn)
#define SIGNCONF_EXPORT_NO_CHANGE
#define SIGNCONF_EXPORT_OK
const char * zone_db_name(const zone_db_t *zone)
zone_list_db_t * zone_list_db_new_get_by_policy_id(const db_connection_t *connection, const db_value_t *policy_id)
zone_list_db_t * zone_list_db_new(const db_connection_t *connection)
int zone_list_db_get(zone_list_db_t *zone_list)
const zone_db_t * zone_list_db_next(zone_list_db_t *zone_list)
void zone_list_db_free(zone_list_db_t *zone_list)