add missing apk_trust.h

cute-signatures
Timo Teräs 2020-10-09 16:14:38 +03:00
parent 705e002bb0
commit da8d83338b
2 changed files with 44 additions and 2 deletions

42
src/apk_trust.h Normal file
View File

@ -0,0 +1,42 @@
/* apk_trust.h - Alpine Package Keeper (APK)
*
* Copyright (C) 2020 Timo Teräs <timo.teras@iki.fi>
* All rights reserved.
*
* SPDX-License-Identifier: GPL-2.0-only
*/
#ifndef APK_TRUST
#define APK_TRUST
#include <openssl/evp.h>
#include "apk_blob.h"
struct apk_pkey {
uint8_t id[16];
EVP_PKEY *key;
};
int apk_pkey_init(struct apk_pkey *pkey, EVP_PKEY *key);
void apk_pkey_free(struct apk_pkey *pkey);
int apk_pkey_load(struct apk_pkey *pkey, int dirfd, const char *fn);
struct apk_trust_key {
struct list_head key_node;
struct apk_pkey key;
char *filename;
};
struct apk_trust {
EVP_MD_CTX *mdctx;
struct list_head trusted_key_list;
struct list_head private_key_list;
int allow_untrusted : 1;
};
int apk_trust_init(struct apk_trust *trust, int keysfd, struct apk_string_array *);
void apk_trust_free(struct apk_trust *trust);
struct apk_pkey *apk_trust_key_by_name(struct apk_trust *trust, const char *filename);
#endif

View File

@ -86,7 +86,7 @@ static int option_parse_applet(void *ctx, struct apk_ctx *ac, int opt, const cha
break;
case OPT_VERSION_check:
ictx->action = ver_validate;
ac->open_flags = 0;
ac->open_flags |= APK_OPENF_NO_STATE | APK_OPENF_NO_REPOS;
break;
case OPT_VERSION_indexes:
ictx->action = ver_indexes;
@ -96,7 +96,7 @@ static int option_parse_applet(void *ctx, struct apk_ctx *ac, int opt, const cha
break;
case OPT_VERSION_test:
ictx->action = ver_test;
ac->open_flags = 0;
ac->open_flags |= APK_OPENF_NO_STATE | APK_OPENF_NO_REPOS;
break;
default:
return -ENOTSUP;