{ "%readme", RPMFILE_README },
{ "%license", RPMFILE_LICENSE },
{ "%pubkey", RPMFILE_PUBKEY },
+ { "%manifest", RPMFILE_SECMANIFEST },
{ NULL, 0 }
};
{
char *s, *t;
rpmRC res = RPMRC_OK;
- int allow_relative = (RPMFILE_PUBKEY|RPMFILE_DOC|RPMFILE_LICENSE);
+ int allow_relative = (RPMFILE_PUBKEY|RPMFILE_DOC|RPMFILE_LICENSE|RPMFILE_SECMANIFEST);
t = buf;
while ((s = strtokWithQuotes(t, " \t\n")) != NULL) {
apkt = pgpArmorWrap(PGPARMOR_PUBKEY, pkt, pktlen);
break;
}
+ case RPMTAG_SECMANIFEST: {
+ if ((xx = rpmioSlurp(fn, &pkt, &pktlen)) != 0 || pkt == NULL) {
+ rpmlog(RPMLOG_ERR, _("%s: Security manifest file read failed.\n"), fn);
+ goto exit;
+ }
+ apkt = rpmBase64Encode(pkt, pktlen, -1);
+ rpmlog(RPMLOG_INFO, _("Aptk: %s\n"), apkt);
+ break;
+ }
}
if (!apkt) {
argvAdd(&(fl.docDirs), *fn);
} else if (fl.cur.attrFlags & RPMFILE_PUBKEY) {
(void) processMetadataFile(pkg, &fl, *fn, RPMTAG_PUBKEYS);
+ } else if (fl.cur.attrFlags & RPMFILE_SECMANIFEST) {
+ (void) processMetadataFile(pkg, &fl, *fn, RPMTAG_SECMANIFEST);
} else {
if (fl.cur.attrFlags & RPMFILE_DIR)
fl.cur.isDir = 1;
{RPMTAG_BUILDSUGGESTS, 0, 0, LEN_AND_STR("buildsuggests")},
{RPMTAG_BUILDENHANCES, 0, 0, LEN_AND_STR("buildsupplements")},
{RPMTAG_BUILDENHANCES, 0, 0, LEN_AND_STR("buildenhances")},
+ {RPMTAG_SECMANIFEST, 0, 0, LEN_AND_STR("manifest")},
{0, 0, 0, 0}
};
RPMFILE_README = (1 << 8), /*!< from %%readme */
/* bits 9-10 unused */
RPMFILE_PUBKEY = (1 << 11), /*!< from %%pubkey */
+ RPMFILE_SECMANIFEST = (1 << 12), /*!< from %%manifest */
};
typedef rpmFlags rpmfileAttrs;
RPMTAG_ORDERNAME = 5035, /* s[] */
RPMTAG_ORDERVERSION = 5036, /* s[] */
RPMTAG_ORDERFLAGS = 5037, /* i[] */
- RPMTAG_MSSFMANIFEST = 5038, /* s[] reservation (unimplemented) */
- RPMTAG_MSSFDOMAIN = 5039, /* s[] reservation (unimplemented) */
+ RPMTAG_SECMANIFEST = 5038, /* s[] security manifest file */
+ RPMTAG_SECSWSOURCE = 5039, /* s[] security software source */
RPMTAG_INSTFILENAMES = 5040, /* s[] extension */
RPMTAG_REQUIRENEVRS = 5041, /* s[] extension */
RPMTAG_PROVIDENEVRS = 5042, /* s[] extension */