summaryrefslogtreecommitdiff
path: root/lib/manifest.h
blob: 77a9fa5b7ff55023d8d7d674c96c94d5c851f5cc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#ifndef H_MANIFEST
#define H_MANIFEST

/**
 * \file lib/manifest.h
 * Routines to expand a manifest containing glob expressions into an argv list.
 */

#ifdef __cplusplus
extern "C" {
#endif

/**
 * Return ls(1)-like formatted mode string.
 * @param mode		file mode
 * @return		(malloc'd) formatted mode string
 */
/*@-incondefs@*/
/*@only@*/
char * rpmPermsString(int mode)	
	/*@*/
	/*@ensures maxSet(result) == 10 /\ maxRead(result) == 10 @*/;
/*@=incondefs@*/

/**
 * Read manifest, glob items, and append to existing args.
 * @param fd			manifest file handle
 * @retval argcPtr		no. of args
 * @retval argvPtr		args themselves
 */
int rpmReadPackageManifest(FD_t fd, int * argcPtr, const char *** argvPtr)
	/*@globals fileSystem @*/
	/*@modifies fd, *argcPtr, *argvPtr, fileSystem @*/;

#ifdef __cplusplus
}
#endif

#endif	/* H_MANIFEST */