Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 #include <syslog.h>
00035 #include <stdlib.h>
00036
00037 #include "daemon.h"
00038 #include "daemon_util.h"
00039 #include "kaspaccess.h"
00040 #include "ksm/string_util.h"
00041 #include "ksm/string_util2.h"
00042
00043
00044
00045
00046
00047 void
00048 kaspSetPolicyDefaults(KSM_POLICY *policy, char *name)
00049 {
00050 if (policy == NULL) {
00051 log_msg(NULL, LOG_ERR, "Error in kaspSetPolicyDefaults, no policy provided");
00052 return;
00053 }
00054
00055 if (name) {
00056 snprintf(policy->name, KSM_NAME_LENGTH, "%s", name);
00057 }
00058
00059 policy->signer->refresh = 0;
00060 policy->signer->jitter = 0;
00061 policy->signer->propdelay = 0;
00062 policy->signer->soamin = 0;
00063 policy->signer->soattl = 0;
00064 policy->signer->serial = 0;
00065
00066 policy->signature->clockskew = 0;
00067 policy->signature->resign = 0;
00068 policy->signature->valdefault = 0;
00069 policy->signature->valdenial = 0;
00070
00071 policy->denial->version = 0;
00072 policy->denial->resalt = 0;
00073 policy->denial->algorithm = 0;
00074 policy->denial->iteration = 0;
00075 policy->denial->optout = 0;
00076 policy->denial->ttl = 0;
00077 policy->denial->saltlength = 0;
00078
00079 policy->keys->ttl = 0;
00080 policy->keys->retire_safety = 0;
00081 policy->keys->publish_safety = 0;
00082 policy->keys->share_keys = 0;
00083 policy->keys->purge = -1;
00084
00085 policy->ksk->algorithm = 0;
00086 policy->ksk->bits = 0;
00087 policy->ksk->lifetime = 0;
00088 policy->ksk->sm = 0;
00089 policy->ksk->overlap = 0;
00090 policy->ksk->ttl = 0;
00091 policy->ksk->rfc5011 = 0;
00092 policy->ksk->type = KSM_TYPE_KSK;
00093 policy->ksk->standby_keys = 0;
00094 policy->ksk->manual_rollover = 0;
00095 policy->ksk->rollover_scheme = KSM_ROLL_DEFAULT;
00096
00097 policy->zsk->algorithm = 0;
00098 policy->zsk->bits = 0;
00099 policy->zsk->lifetime = 0;
00100 policy->zsk->sm = 0;
00101 policy->zsk->overlap = 0;
00102 policy->zsk->ttl = 0;
00103 policy->zsk->rfc5011 = 0;
00104 policy->zsk->type = KSM_TYPE_ZSK;
00105 policy->zsk->standby_keys = 0;
00106 policy->zsk->manual_rollover = 0;
00107 policy->zsk->rollover_scheme = 0;
00108
00109 policy->enforcer->keycreate = 0;
00110 policy->enforcer->backup_interval = 0;
00111 policy->enforcer->keygeninterval = 0;
00112
00113 policy->zone->propdelay = 0;
00114 policy->zone->soa_ttl = 0;
00115 policy->zone->soa_min = 0;
00116 policy->zone->serial = 0;
00117
00118 policy->parent->propdelay = 0;
00119 policy->parent->ds_ttl = 0;
00120 policy->parent->soa_ttl = 0;
00121 policy->parent->soa_min = 0;
00122
00123 }
00124
00125
00126
00127
00128 void
00129 kaspConnect(DAEMONCONFIG* config, DB_HANDLE *handle)
00130 {
00131
00132 if (DbConnect(handle, (char *)config->schema, (char *)config->host, (char *)config->password, (char *)config->user, (char *)config->port) != 0) {
00133 unlink(config->pidfile);
00134 exit(-1);
00135 }
00136
00137 }
00138
00139
00140
00141
00142 void
00143 kaspDisconnect(DB_HANDLE*handle)
00144 {
00145 (void) DbDisconnect(*handle);
00146 }
00147
00148
00149
00150
00151 int
00152 kaspReadPolicy(KSM_POLICY* policy)
00153 {
00154
00155 return KsmPolicyRead(policy);
00156 }