7 #include <netinet/in.h>
12 #define _RPMHKP_INTERNAL
24 #define alloca_strdup(_s) strcpy(alloca(strlen(_s)+1), (_s))
56 if (sig == NULL || dig == NULL || sigp == NULL)
59 keyid =
pgpGrab(sigp->signid+4, 4);
96 const char * msg = NULL;
103 if (hdrp) *hdrp = NULL;
111 {
const char item[] =
"Lead";
128 {
const char item[] =
"Signature";
134 (msg && *msg ? msg :
_(
"read failed\n")));
149 #define _chk(_mask) (she->tag == 0 && !(vsflags & (_mask)))
189 {
const char item[] =
"Header";
201 if (opx > 0 && op != NULL) {
217 if (xx && he->
p.
argv != NULL && he->
c > 0)
223 dig->pub =
_free(dig->pub);
231 dig->pub =
_free(dig->pub);
240 if (she->
p.
ptr == NULL) {
255 xx = rpmhkpLoadSignature(NULL, dig, pp);
256 if (dig->signature.version != 3 && dig->signature.version != 4) {
258 _(
"skipping package %s with unverifiable V%u signature\n"),
259 fn, dig->signature.version);
266 unsigned char * hmagic = NULL;
280 if (hmagic && nmagic > 0) {
282 dig->nbytes += nmagic;
293 xx = rpmhkpLoadSignature(NULL, dig, pp);
294 if (dig->signature.version != 3 && dig->signature.version != 4) {
296 _(
"skipping package %s with unverifiable V%u signature\n"),
297 fn, dig->signature.version);
306 unsigned char * hmagic = NULL;
320 if (hmagic && nmagic > 0) {
322 dig->nbytes += nmagic;
335 while ((count =
Fread(buf,
sizeof(buf[0]),
sizeof(buf), fd)) > 0)
336 dig->nbytes += count;
365 rpmlog(lvl,
"%s: %s\n", fn, buf);
381 if (rc !=
RPMRC_FAIL && h != NULL && hdrp != NULL) {