blob: 9c44fdcd9c3da768e3ef0a84e13aa86f77801ad9 (
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
#ifndef _H_BUILDIO_
#define _H_BUILDIO_
/** \ingroup rpmbuild
* \file build/buildio.h
* XXX this information will move elsewhere eventually
*/
#include "cpio.h"
/**
*/
typedef struct cpioSourceArchive {
unsigned int cpioArchiveSize;
FD_t cpioFdIn;
/*@dependent@*/ TFI_t cpioList;
struct rpmlead * lead; /* XXX FIXME: exorcize lead/arch/os */
} CSA_t;
#ifdef __cplusplus
extern "C" {
#endif
/**
* Read rpm package components from file.
* @param filename file name of package (or NULL to use stdin)
* @retval specp spec structure to carry package header (or NULL)
* @retval lead package lead
* @retval sigs package signature
* @param csa
* @return 0 on success
*/
int readRPM(const char *fileName, /*@out@*/ Spec *specp, /*@out@*/ struct rpmlead *lead,
/*@out@*/ Header *sigs, CSA_t *csa);
/**
* Write rpm package to file.
*
* @warning The first header argument is now passed by reference in order to
* return a reloaded contiguous header to the caller.
*
* @retval hdrp header to write (final header is returned).
* @param filename file name of package
* @param type RPMLEAD_SOURCE/RPMLEAD_BINARY
* @param csa
* @param passPhrase
* @retval cookie generated cookie (i.e build host/time)
* @return 0 on success
*/
int writeRPM(Header *hdrp, const char *fileName, int type,
CSA_t *csa, char *passPhrase, /*@out@*/ const char **cookie);
#ifdef __cplusplus
}
#endif
#endif /* _H_BUILDIO_ */
|