xbps-rindex: [sign] pubkey buffer must be kept until index-meta is externalized too.
This commit is contained in:
parent
11e04685ef
commit
cbe05bd0f4
@ -128,7 +128,7 @@ sign_repo(struct xbps_handle *xhp, const char *repodir,
|
|||||||
unsigned int siglen;
|
unsigned int siglen;
|
||||||
uint16_t rpubkeysize, pubkeysize;
|
uint16_t rpubkeysize, pubkeysize;
|
||||||
const char *arch, *pkgver, *rsignedby = NULL;
|
const char *arch, *pkgver, *rsignedby = NULL;
|
||||||
char *binpkg, *binpkg_sig, *buf, *defprivkey;
|
char *binpkg, *binpkg_sig, *buf = NULL, *defprivkey;
|
||||||
int binpkg_fd, binpkg_sig_fd, rv = 0;
|
int binpkg_fd, binpkg_sig_fd, rv = 0;
|
||||||
bool flush = false;
|
bool flush = false;
|
||||||
|
|
||||||
@ -265,7 +265,6 @@ sign_repo(struct xbps_handle *xhp, const char *repodir,
|
|||||||
if (!xbps_data_equals(rpubkey, data))
|
if (!xbps_data_equals(rpubkey, data))
|
||||||
flush = true;
|
flush = true;
|
||||||
|
|
||||||
free(buf);
|
|
||||||
|
|
||||||
pubkeysize = RSA_size(rsa) * 8;
|
pubkeysize = RSA_size(rsa) * 8;
|
||||||
xbps_dictionary_get_uint16(repo->idxmeta, "public-key-size", &rpubkeysize);
|
xbps_dictionary_get_uint16(repo->idxmeta, "public-key-size", &rpubkeysize);
|
||||||
@ -298,6 +297,8 @@ sign_repo(struct xbps_handle *xhp, const char *repodir,
|
|||||||
out:
|
out:
|
||||||
index_unlock(il);
|
index_unlock(il);
|
||||||
|
|
||||||
|
if (buf)
|
||||||
|
free(buf);
|
||||||
if (data)
|
if (data)
|
||||||
xbps_object_release(data);
|
xbps_object_release(data);
|
||||||
if (rsa) {
|
if (rsa) {
|
||||||
|
Loading…
Reference in New Issue
Block a user