rpm  4.5
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
files.c File Reference

The post-build, pre-packaging file tree walk to assemble the package manifest. More...

#include "system.h"
#include <regex.h>
#include <rpmio_internal.h>
#include <fts.h>
#include <rpmbuild.h>
#include "cpio.h"
#include "argv.h"
#include "rpmfc.h"
#include "rpmfi.h"
#include "rpmte.h"
#include "buildio.h"
#include "legacy.h"
#include "misc.h"
#include "debug.h"
Include dependency graph for files.c:

Go to the source code of this file.

Data Structures

struct  FileListRec_s
 
struct  AttrRec_s
 
struct  FileList_s
 Package file tree walk data. More...
 
struct  VFA
 

Macros

#define MYALLPERMS   07777
 
#define _RPMFI_INTERNAL
 
#define _RPMTE_INTERNAL
 
#define SKIPWHITE(_x)   {while(*(_x) && (xisspace(*_x) || *(_x) == ',')) (_x)++;}
 
#define SKIPNONWHITE(_x)   {while(*(_x) &&!(xisspace(*_x) || *(_x) == ',')) (_x)++;}
 
#define MAXDOCDIR   1024
 
#define fl_dev   fl_st.st_dev
 
#define fl_ino   fl_st.st_ino
 
#define fl_mode   fl_st.st_mode
 
#define fl_nlink   fl_st.st_nlink
 
#define fl_uid   fl_st.st_uid
 
#define fl_gid   fl_st.st_gid
 
#define fl_rdev   fl_st.st_rdev
 
#define fl_size   fl_st.st_size
 
#define fl_mtime   fl_st.st_mtime
 
#define isAttrDefault(_ars)   ((_ars)[0] == '-' && (_ars)[1] == '\0')
 

Typedefs

typedef enum specdFlags_e specdFlags
 
typedef struct FileListRec_sFileListRec
 
typedef struct AttrRec_sAttrRec
 
typedef struct FileList_sFileList
 Package file tree walk data.
 
typedef struct VFA VFA_t
 

Enumerations

enum  specdFlags_e {
  SPECD_DEFFILEMODE = (1 << 0), SPECD_DEFDIRMODE = (1 << 1), SPECD_DEFUID = (1 << 2), SPECD_DEFGID = (1 << 3),
  SPECD_DEFVERIFY = (1 << 4), SPECD_FILEMODE = (1 << 8), SPECD_DIRMODE = (1 << 9), SPECD_UID = (1 << 10),
  SPECD_GID = (1 << 11), SPECD_VERIFY = (1 << 12)
}
 

Functions

static void nullAttrRec (AttrRec ar)
 
static void freeAttrRec (AttrRec ar)
 
static void dupAttrRec (const AttrRec oar, AttrRec nar)
 
static char * strtokWithQuotes (char *s, char *delim)
 
static void timeCheck (int tc, Header h)
 
static int parseForVerify (char *buf, FileList fl)
 Parse verify and defverify from file manifest.
 
static int parseForDev (char *buf, FileList fl)
 Parse dev from file manifest.
 
static int parseForAttr (char *buf, FileList fl)
 Parse attr and defattr from file manifest.
 
static int parseForConfig (char *buf, FileList fl)
 Parse config from file manifest.
 
static int langCmp (const void *ap, const void *bp)
 
static int parseForLang (char *buf, FileList fl)
 Parse lang from file manifest.
 
static int parseForRegexLang (const char *fileName, char **lang)
 
static int parseForSimple (Spec spec, Package pkg, char *buf, FileList fl, const char **fileName)
 Parse simple attributes (e.g.
 
static int compareFileListRecs (const void *ap, const void *bp)
 
static int isDoc (FileList fl, const char *fileName)
 Test if file is located in a docdir.
 
static int checkHardLinks (FileList fl)
 Verify that file attributes scope over hardlinks correctly.
 
static int dncmp (const void *a, const void *b)
 
static void compressFilelist (Header h)
 Convert absolute path tag to (dirname,basename,dirindex) tags.
 
static void genCpioListAndHeader (FileList fl, rpmfi *fip, Header h, int isSrc)
 Add file entries to header.
 
static FileListRec freeFileList (FileListRec fileList, int count)
 
static int recurseDir (FileList fl, const char *diskURL)
 Add directory (and all of its files) to the package manifest.
 
static int addFile (FileList fl, const char *diskURL, struct stat *statp)
 Add a file to the package manifest.
 
static int processMetadataFile (Package pkg, FileList fl, const char *fileURL, rpmTag tag)
 Add a pubkey/policy/icon to a binary package.
 
static int processBinaryFile (Package pkg, FileList fl, const char *fileURL)
 Add a file to a binary package.
 
static int processPackageFiles (Spec spec, Package pkg, int installSpecialDoc, int test)
 
int initSourceHeader (Spec spec, StringBuf *sfp)
 Create and initialize header for source package.
 
int processSourceFiles (Spec spec)
 Post-build processing for source package.
 
static int checkFiles (StringBuf fileList)
 Check packaged file list against what's in the build root.
 
int processBinaryFiles (Spec spec, int installSpecialDoc, int test)
 Post-build processing for binary package(s).
 

Variables

static struct AttrRec_s root_ar = { NULL, NULL, "root", "root", 0, 0 }
 
static StringBuf check_fileList = NULL
 
VFA_t verifyAttrs []
 
VFA_t virtualFileAttributes []
 

Detailed Description

The post-build, pre-packaging file tree walk to assemble the package manifest.

Definition in file files.c.

Macro Definition Documentation

#define _RPMFI_INTERNAL

Definition at line 23 of file files.c.

#define _RPMTE_INTERNAL

Definition at line 26 of file files.c.

#define fl_dev   fl_st.st_dev

Definition at line 66 of file files.c.

#define fl_gid   fl_st.st_gid

Definition at line 71 of file files.c.

#define fl_ino   fl_st.st_ino

Definition at line 67 of file files.c.

#define fl_mode   fl_st.st_mode

Definition at line 68 of file files.c.

#define fl_mtime   fl_st.st_mtime

Definition at line 74 of file files.c.

#define fl_nlink   fl_st.st_nlink

Definition at line 69 of file files.c.

#define fl_rdev   fl_st.st_rdev

Definition at line 72 of file files.c.

#define fl_size   fl_st.st_size

Definition at line 73 of file files.c.

#define fl_uid   fl_st.st_uid

Definition at line 70 of file files.c.

#define isAttrDefault (   _ars)    ((_ars)[0] == '-' && (_ars)[1] == '\0')

Definition at line 414 of file files.c.

Referenced by parseForAttr().

#define MAXDOCDIR   1024

Definition at line 44 of file files.c.

Referenced by parseForSimple().

#define MYALLPERMS   07777

Definition at line 9 of file files.c.

Referenced by parseForAttr().

#define SKIPNONWHITE (   _x)    {while(*(_x) &&!(xisspace(*_x) || *(_x) == ',')) (_x)++;}

Definition at line 42 of file files.c.

Referenced by parseForAttr(), parseForConfig(), parseForDev(), parseForLang(), and parseForVerify().

#define SKIPWHITE (   _x)    {while(*(_x) && (xisspace(*_x) || *(_x) == ',')) (_x)++;}

Definition at line 41 of file files.c.

Referenced by parseForAttr(), parseForConfig(), parseForDev(), parseForLang(), and parseForVerify().

Typedef Documentation

typedef struct AttrRec_s * AttrRec
typedef struct FileList_s * FileList

Package file tree walk data.

typedef struct FileListRec_s * FileListRec
typedef enum specdFlags_e specdFlags
typedef struct VFA VFA_t

Enumeration Type Documentation

Enumerator:
SPECD_DEFFILEMODE 
SPECD_DEFDIRMODE 
SPECD_DEFUID 
SPECD_DEFGID 
SPECD_DEFVERIFY 
SPECD_FILEMODE 
SPECD_DIRMODE 
SPECD_UID 
SPECD_GID 
SPECD_VERIFY 

Definition at line 48 of file files.c.

Function Documentation

static int addFile ( FileList  fl,
const char *  diskURL,
struct stat *  statp 
)
static
static int checkFiles ( StringBuf  fileList)
static

Check packaged file list against what's in the build root.

Parameters
fileListpackaged file list
Returns
-1 if skipped, 0 on OK, 1 on error

Definition at line 2621 of file files.c.

References _, _free(), freeStringBuf(), getStringBuf(), rpmExpand(), rpmExpandNumeric(), rpmfcExec(), RPMMESS_ERROR, RPMMESS_NORMAL, RPMMESS_WARNING, and rpmMessage.

Referenced by processBinaryFiles().

static int checkHardLinks ( FileList  fl)
static

Verify that file attributes scope over hardlinks correctly.

If partial hardlink sets are possible, then add tracking dependency.

Parameters
flpackage file tree walk data
Returns
1 if partial hardlink sets can exist, 0 otherwise.

Definition at line 1116 of file files.c.

References FileList_s::fileList, FileList_s::fileListRecsUsed, FileListRec_s::flags, RPMFILE_EXCLUDE, and RPMFILE_GHOST.

Referenced by processPackageFiles().

static int compareFileListRecs ( const void *  ap,
const void *  bp 
)
static

Definition at line 1081 of file files.c.

References urlPath().

Referenced by genCpioListAndHeader().

static void compressFilelist ( Header  h)
static

Convert absolute path tag to (dirname,basename,dirindex) tags.

Parameters
hheader

Definition at line 1166 of file files.c.

References alloca(), dncmp(), headerAddEntry(), headerFreeData(), headerGetEntryMinMemory(), headerIsEntry(), headerRemoveEntry(), RPM_INT32_TYPE, RPM_STRING_ARRAY_TYPE, RPMTAG_BASENAMES, RPMTAG_DIRINDEXES, RPMTAG_DIRNAMES, RPMTAG_OLDFILENAMES, and urlPath().

Referenced by genCpioListAndHeader().

static int dncmp ( const void *  a,
const void *  b 
)
static

Definition at line 1148 of file files.c.

References urlPath().

Referenced by compressFilelist().

static void dupAttrRec ( const AttrRec  oar,
AttrRec  nar 
)
static
static void freeAttrRec ( AttrRec  ar)
static
static FileListRec freeFileList ( FileListRec  fileList,
int  count 
)
static
static void genCpioListAndHeader ( FileList  fl,
rpmfi fip,
Header  h,
int  isSrc 
)
static

Add file entries to header.

Todo:

Should directories have doc/config attributes? (#14531)

Remove RPMTAG_OLDFILENAMES, add dirname/basename instead.

Parameters
flpackage file tree walk data
Return values
*fipfile info for package
Parameters
h
isSrc

Definition at line 1271 of file files.c.

References _, _free(), FileList_s::buildRootURL, compareFileListRecs(), compressFilelist(), CPIO_FOLLOW_SYMLINKS, CPIO_MAP_GID, CPIO_MAP_MODE, CPIO_MAP_PATH, CPIO_MAP_TYPE, CPIO_MAP_UID, FileListRec_s::diskURL, dodigest(), FA_COPYOUT, FA_SKIP, FileList_s::fileList, FileList_s::fileListRecsUsed, FileListRec_s::fileURL, FileListRec_s::flags, freecon, FileListRec_s::gname, headerAddEntry(), headerAddOrAppendEntry(), isDoc(), FileListRec_s::langs, matchpathcon, matchpathcon_init, PGPHASHALGO_ADLER32, PGPHASHALGO_CRC32, PGPHASHALGO_CRC64, PGPHASHALGO_HAVAL_5_160, PGPHASHALGO_MD2, PGPHASHALGO_MD4, PGPHASHALGO_MD5, PGPHASHALGO_RIPEMD128, PGPHASHALGO_RIPEMD160, PGPHASHALGO_SHA1, PGPHASHALGO_SHA256, PGPHASHALGO_SHA384, PGPHASHALGO_SHA512, PGPHASHALGO_TIGER192, FileList_s::prefix, FileList_s::processingFailed, Readlink(), RPM_INT16_TYPE, RPM_INT32_TYPE, RPM_STRING_ARRAY_TYPE, RPMERR_BADSPEC, rpmError, rpmExpandNumeric(), rpmfiFree(), RPMFILE_CONFIG, RPMFILE_DOC, RPMFILE_EXCLUDE, RPMFILE_GHOST, rpmfiNew(), rpmGetPath(), rpmlibNeedsFeature(), RPMMESS_WARNING, rpmMessage, RPMTAG_BASENAMES, RPMTAG_FILECONTEXTS, RPMTAG_FILEDEVICES, RPMTAG_FILEDIGESTALGOS, RPMTAG_FILEDIGESTS, RPMTAG_FILEFLAGS, RPMTAG_FILEGROUPNAME, RPMTAG_FILEINODES, RPMTAG_FILELANGS, RPMTAG_FILELINKTOS, RPMTAG_FILEMODES, RPMTAG_FILEMTIMES, RPMTAG_FILERDEVS, RPMTAG_FILESIZES, RPMTAG_FILEUSERNAME, RPMTAG_FILEVERIFYFLAGS, RPMTAG_OLDFILENAMES, RPMTAG_SIZE, RPMVERIFY_FILESIZE, RPMVERIFY_LINKTO, RPMVERIFY_MD5, RPMVERIFY_MTIME, S_ISLNK, SPECD_DEFDIRMODE, SPECD_DEFFILEMODE, SPECD_DEFGID, SPECD_DEFUID, SPECD_DEFVERIFY, SPECD_DIRMODE, SPECD_FILEMODE, SPECD_GID, SPECD_UID, SPECD_VERIFY, FileListRec_s::specdFlags, stpcpy(), FileList_s::totalFileSize, TR_ADDED, FileListRec_s::uname, urlPath(), FileListRec_s::verifyFlags, xcalloc(), and xmalloc().

Referenced by processPackageFiles(), and processSourceFiles().

static int isDoc ( FileList  fl,
const char *  fileName 
)
static

Test if file is located in a docdir.

Bug:
Use of strstr(3) might result in false positives.
Parameters
flpackage file tree walk data
fileNamefile path
Returns
1 if doc file, 0 if not

Definition at line 1099 of file files.c.

References FileList_s::docDirCount, and FileList_s::docDirs.

Referenced by genCpioListAndHeader().

static int langCmp ( const void *  ap,
const void *  bp 
)
static

Definition at line 719 of file files.c.

Referenced by parseForLang().

static void nullAttrRec ( AttrRec  ar)
static
static int parseForAttr ( char *  buf,
FileList  fl 
)
static

Parse attr and defattr from file manifest.

Parameters
bufcurrent spec file line
flpackage file tree walk data
Returns
0 on success

Definition at line 525 of file files.c.

References _, alloca(), FileList_s::cur_ar, FileList_s::currentSpecdFlags, FileList_s::def_ar, FileList_s::defSpecdFlags, dupAttrRec(), isAttrDefault, MYALLPERMS, name, nullAttrRec(), FileList_s::processingFailed, RPMERR_BADSPEC, rpmError, SKIPNONWHITE, SKIPSPACE, SKIPWHITE, SPECD_DIRMODE, SPECD_FILEMODE, SPECD_GID, and SPECD_UID.

Referenced by processPackageFiles(), and processSourceFiles().

static int parseForConfig ( char *  buf,
FileList  fl 
)
static

Parse config from file manifest.

Parameters
bufcurrent spec file line
flpackage file tree walk data
Returns
0 on success

Definition at line 658 of file files.c.

References _, alloca(), FileList_s::currentFlags, name, FileList_s::processingFailed, RPMERR_BADSPEC, rpmError, RPMFILE_CONFIG, RPMFILE_MISSINGOK, RPMFILE_NOREPLACE, SKIPNONWHITE, SKIPSPACE, and SKIPWHITE.

Referenced by processPackageFiles().

static int parseForDev ( char *  buf,
FileList  fl 
)
static

Parse dev from file manifest.

Parameters
bufcurrent spec file line
flpackage file tree walk data
Returns
0 on success

Definition at line 423 of file files.c.

References _, alloca(), FileList_s::devmajor, FileList_s::devminor, FileList_s::devtype, name, FileList_s::noGlob, FileList_s::processingFailed, RPMERR_BADSPEC, rpmError, SKIPNONWHITE, SKIPSPACE, SKIPWHITE, and xisdigit().

Referenced by processPackageFiles().

static int parseForLang ( char *  buf,
FileList  fl 
)
static

Parse lang from file manifest.

Parameters
bufcurrent spec file line
flpackage file tree walk data
Returns
0 on success

Definition at line 734 of file files.c.

References _, alloca(), FileList_s::currentLangs, langCmp(), name, FileList_s::nLangs, FileList_s::processingFailed, RPMERR_BADSPEC, rpmError, SKIPNONWHITE, SKIPSPACE, SKIPWHITE, xmalloc(), and xrealloc().

Referenced by processPackageFiles().

static int parseForRegexLang ( const char *  fileName,
char **  lang 
)
static

Definition at line 825 of file files.c.

References _free(), and rpmExpand().

Referenced by addFile().

static int parseForSimple ( Spec  spec,
Package  pkg,
char *  buf,
FileList  fl,
const char **  fileName 
)
static

Parse simple attributes (e.g.

dir) from file manifest.

Parameters
specspec file control structure
pkgpackage control structure
bufcurrent spec file line
flpackage file tree walk data
Return values
*fileNamefile name
Returns
0 on success

Definition at line 904 of file files.c.

References _, _free(), appendLineStringBuf, appendStringBuf, VFA::attribute, FileList_s::currentFlags, FileList_s::docDirCount, FileList_s::docDirs, VFA::flag, Package_s::header, headerSprintf(), FileList_s::isDir, FileList_s::isSpecialDoc, MAXDOCDIR, MKDIR_P, newStringBuf(), VFA::not, FileList_s::passedSpecialDoc, FileList_s::processingFailed, RPMERR_BADSPEC, RPMERR_INTERNAL, rpmError, rpmExpand(), RPMFILE_DOC, RPMFILE_ICON, RPMFILE_POLICY, RPMFILE_PUBKEY, rpmGetPath(), rpmHeaderFormats, rpmTagTable, Package_s::specialDoc, strtokWithQuotes(), URL_IS_PATH, urlPath(), and xstrdup().

Referenced by processPackageFiles().

static int parseForVerify ( char *  buf,
FileList  fl 
)
static

Parse verify and defverify from file manifest.

Parameters
bufcurrent spec file line
flpackage file tree walk data
Returns
0 on success

Definition at line 325 of file files.c.

References _, alloca(), VFA::attribute, FileList_s::currentSpecdFlags, FileList_s::currentVerifyFlags, FileList_s::defSpecdFlags, FileList_s::defVerifyFlags, VFA::flag, name, FileList_s::processingFailed, RPMERR_BADSPEC, rpmError, RPMVERIFY_NONE, SKIPNONWHITE, SKIPSPACE, SKIPWHITE, and SPECD_VERIFY.

Referenced by processPackageFiles().

static int processBinaryFile ( Package  pkg,
FileList  fl,
const char *  fileURL 
)
static

Add a file to a binary package.

Parameters
pkgpackage control structure
flpackage file tree walk data
fileURL
Returns
0 on success

Definition at line 2042 of file files.c.

References _, _free(), addFile(), FileList_s::buildRootURL, Glob_pattern_p(), FileList_s::noGlob, FileList_s::processingFailed, RPMERR_BADSPEC, rpmError, rpmGenPath(), rpmGlob(), and urlPath().

Referenced by processPackageFiles().

static int processMetadataFile ( Package  pkg,
FileList  fl,
const char *  fileURL,
rpmTag  tag 
)
static

Add a pubkey/policy/icon to a binary package.

Parameters
pkgpackage control structure
flpackage file tree walk data
fileURLpath to file, relative is builddir, absolute buildroot.
tagtag to add
Returns
0 on success

Definition at line 1962 of file files.c.

References _, _free(), addFile(), FileList_s::buildRootURL, Package_s::header, headerAddOrAppendEntry(), PGPARMOR_PUBKEY, pgpArmorWrap(), pgpReadPkts(), FileList_s::processingFailed, RPM_STRING_ARRAY_TYPE, RPMERR_BADSPEC, rpmError, rpmGenPath(), rpmioSlurp(), RPMTAG_POLICIES, RPMTAG_PUBKEYS, and urlPath().

Referenced by processPackageFiles().

static int processPackageFiles ( Spec  spec,
Package  pkg,
int  installSpecialDoc,
int  test 
)
static

Definition at line 2124 of file files.c.

References _, _free(), appendStringBuf, FileList_s::buildRootURL, Spec_s::buildSubdir, checkHardLinks(), Package_s::cpioList, FileList_s::cur_ar, FileList_s::currentFlags, FileList_s::currentLangs, FileList_s::currentSpecdFlags, FileList_s::currentVerifyFlags, FileList_s::def_ar, FileList_s::defSpecdFlags, FileList_s::defVerifyFlags, FileList_s::devmajor, FileList_s::devminor, FileList_s::devtype, FileList_s::docDirCount, FileList_s::docDirs, doScript(), dupAttrRec(), expandMacros(), Fclose(), fdGetFp(), Ferror(), FileList_s::fileCount, Package_s::fileFile, FileList_s::fileList, Package_s::fileList, FileList_s::fileListRecsAlloced, FileList_s::fileListRecsUsed, Fopen(), freeAttrRec(), freeFileList(), freeSplitString(), Fstrerror(), genCpioListAndHeader(), getStringBuf(), handleComments(), Package_s::header, headerGetEntryMinMemory(), FileList_s::inFtw, FileList_s::isDir, FileList_s::isSpecialDoc, Spec_s::macros, FileList_s::nLangs, FileList_s::noGlob, nullAttrRec(), parseForAttr(), parseForConfig(), parseForDev(), parseForLang(), parseForSimple(), parseForVerify(), FileList_s::passedSpecialDoc, FileList_s::prefix, processBinaryFile(), FileList_s::processingFailed, processMetadataFile(), Spec_s::rootURL, RPMBUILD_STRINGBUF, RPMERR_BADFILENAME, RPMERR_BADSPEC, rpmError, rpmExpandNumeric(), RPMFILE_POLICY, RPMFILE_PUBKEY, rpmGenPath(), rpmGetPath(), rpmlibNeedsFeature(), RPMTAG_DEFAULTPREFIX, RPMTAG_POLICIES, RPMTAG_PUBKEYS, RPMVERIFY_ALL, SKIPSPACE, Package_s::specialDoc, splitString(), Spec_s::timeCheck, timeCheck(), FileList_s::totalFileSize, and xstrdup().

Referenced by processBinaryFiles().

static int recurseDir ( FileList  fl,
const char *  diskURL 
)
static

Add directory (and all of its files) to the package manifest.

Parameters
flpackage file tree walk data
diskURLpath to file
Returns
0 on success

Definition at line 1905 of file files.c.

References addFile(), _ftsent::fts_accpath, Fts_close(), FTS_COMFOLLOW, FTS_D, FTS_DC, FTS_DEFAULT, FTS_DNR, FTS_DOT, FTS_DP, FTS_ERR, FTS_F, _ftsent::fts_info, FTS_INIT, FTS_NOCHDIR, FTS_NS, FTS_NSOK, Fts_open(), FTS_PHYSICAL, Fts_read(), FTS_SL, FTS_SLNONE, _ftsent::fts_statp, FTS_W, FileList_s::inFtw, FileList_s::isDir, and RPMERR_BADSPEC.

Referenced by addFile().

static char* strtokWithQuotes ( char *  s,
char *  delim 
)
static
Parameters
sstring
delimtoken delimiters

Definition at line 225 of file files.c.

Referenced by parseForSimple().

static void timeCheck ( int  tc,
Header  h 
)
static

Variable Documentation

StringBuf check_fileList = NULL
static

Definition at line 113 of file files.c.

struct AttrRec_s root_ar = { NULL, NULL, "root", "root", 0, 0 }
static

Definition at line 108 of file files.c.

VFA_t verifyAttrs[]
Initial value:
= {
{ "md5", 0, RPMVERIFY_MD5 },
{ "size", 0, RPMVERIFY_FILESIZE },
{ "link", 0, RPMVERIFY_LINKTO },
{ "user", 0, RPMVERIFY_USER },
{ "group", 0, RPMVERIFY_GROUP },
{ "mtime", 0, RPMVERIFY_MTIME },
{ "mode", 0, RPMVERIFY_MODE },
{ "rdev", 0, RPMVERIFY_RDEV },
{ NULL, 0, 0 }
}

Definition at line 305 of file files.c.

VFA_t virtualFileAttributes[]
Initial value:
= {
{ "%dir", 0, 0 },
{ "%doc", 0, RPMFILE_DOC },
{ "%ghost", 0, RPMFILE_GHOST },
{ "%exclude", 0, RPMFILE_EXCLUDE },
{ "%readme", 0, RPMFILE_README },
{ "%license", 0, RPMFILE_LICENSE },
{ "%pubkey", 0, RPMFILE_PUBKEY },
{ "%policy", 0, RPMFILE_POLICY },
{ NULL, 0, 0 }
}

Definition at line 872 of file files.c.