86 int KsmKeyPairCreate(
int policy_id,
const char* HSMKeyID,
int smID,
int size,
int alg,
const char* generate,
DB_ID*
id)
97 sql =
DisSpecifyInit(
"keypairs",
"policy_id, HSMkey_id, securitymodule_id, size, algorithm, generate");
148 char* columns = NULL;
155 StrAppend(&columns,
"zone_id, keypair_id, keytype, state");
262 switch (condition[i].code) {
265 condition[i].data.
number, i);
270 condition[i].data.
number, i);
275 condition[i].data.
number, i);
280 condition[i].data.
number, i);
285 condition[i].data.
number, i);
510 status =
KsmKey(result, data);
564 int KsmKeyPredict(
int policy_id,
int keytype,
int shared_keys,
int interval,
int *count,
int rollover_scheme,
int zone_count)
575 if (zone_count == 0) {
624 *count *= zone_count;
665 nchar = snprintf(in,
sizeof(in),
"(%d, %d, %d, %d, %d, %d, %d)",
667 if (nchar >=
sizeof(in)) {
734 int KsmKeyCountStillGood(
int policy_id,
int sm,
int bits,
int algorithm,
int interval,
const char* datetime,
int *count,
int keytype)
769 nchar = snprintf(in,
sizeof(in),
"(%d, %d, %d, %d, %d, %d, %d)",
771 if (nchar >=
sizeof(in)) {
780 nchar = snprintf(buffer,
sizeof(buffer),
781 "DATE_ADD('%s', INTERVAL %d SECOND)", datetime, total_interval);
783 nchar = snprintf(buffer,
sizeof(buffer),
784 "DATETIME('%s', '+%d SECONDS')", datetime, total_interval);
786 if (nchar >=
sizeof(buffer)) {
794 if (policy_id != -1) {
803 if (algorithm != -1) {
814 StrAppend(&sql,
" and (DATETIME(RETIRE) > ");
871 int KsmKeyGetUnallocated(
int policy_id,
int sm,
int bits,
int algorithm,
int zone_id,
int share_keys,
int *keypair_id)
891 snprintf(in_sql, 1024,
"(select id from KEYALLOC_VIEW where zone_id = %d)", zone_id);
892 snprintf(in_sql2, 1024,
"(select distinct id from KEYDATA_VIEW where policy_id = %d and state in (%d, %d))", policy_id,
KSM_STATE_RETIRE,
KSM_STATE_DEAD);
920 else if (status == -1) {}
969 status =
KsmKey(result, &data);
970 while (status == 0) {
975 status =
KsmKey(result, &data);
1017 printf(
"Couldn't turn \"now\" into a date, quitting...\n");
1025 if (zone_id != -1) {