createrepo_c library
1.2.3
C library for metadata manipulation
Toggle main menu visibility
Loading...
Searching...
No Matches
deltarpms.h
1
/* createrepo_c - Library of routines for manipulation with repodata
2
* Copyright (C) 2014 Tomas Mlcoch
3
*
4
* This program is free software; you can redistribute it and/or
5
* modify it under the terms of the GNU General Public License
6
* as published by the Free Software Foundation; either version 2
7
* of the License, or (at your option) any later version.
8
*
9
* This program is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
* GNU General Public License for more details.
13
*
14
* You should have received a copy of the GNU General Public License
15
* along with this program; if not, write to the Free Software
16
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
17
* USA.
18
*/
19
20
#ifndef __C_CREATEREPOLIB_DELTARPMS_H__
21
#define __C_CREATEREPOLIB_DELTARPMS_H__
22
23
#ifdef __cplusplus
24
extern
"C"
{
25
#endif
26
27
#include <glib.h>
28
#include "package.h"
29
#include "parsehdr.h"
30
#include "xml_file.h"
31
36
37
#ifndef CR_DELTA_RPM_SUPPORT
38
/* #undef CR_DELTA_RPM_SUPPORT */
39
#endif
40
#define CR_DEFAULT_MAX_DELTA_RPM_SIZE 100000000
41
42
typedef
struct
{
43
cr_Package
*package;
44
char
*nevr;
45
char
*sequence;
46
GStringChunk *chunk;
47
}
cr_DeltaPackage
;
48
49
typedef
struct
{
50
char
*name;
51
char
*arch;
52
char
*epoch;
53
char
*version;
54
char
*release;
55
char
*location_href;
56
gint64 size_installed;
57
58
char
*path;
59
GStringChunk *chunk;
60
}
cr_DeltaTargetPackage
;
61
62
gboolean cr_drpm_support(
void
);
63
64
#ifdef CR_DELTA_RPM_SUPPORT
65
char
*
66
cr_drpm_create(
cr_DeltaTargetPackage
*old,
67
cr_DeltaTargetPackage
*
new
,
68
const
char
*destdir,
69
GError **err);
70
71
cr_DeltaPackage
*
72
cr_deltapackage_from_drpm_base(
const
char
*filename,
73
int
changelog_limit,
74
cr_HeaderReadingFlags
flags,
75
GError **err);
76
77
void
78
cr_deltapackage_free(
cr_DeltaPackage
*deltapackage);
79
80
GHashTable *
81
cr_deltarpms_scan_oldpackagedirs(GSList *oldpackagedirs,
82
gint64 max_delta_rpm_size,
83
GError **err);
84
85
cr_DeltaTargetPackage
*
86
cr_deltatargetpackage_from_package(
cr_Package
*pkg,
87
const
char
*path,
88
GError **err);
89
90
cr_DeltaTargetPackage
*
91
cr_deltatargetpackage_from_rpm(
const
char
*path, GError **err);
92
93
void
94
cr_deltatargetpackage_free(
cr_DeltaTargetPackage
*tpkg);
95
96
gboolean
97
cr_deltarpms_parallel_deltas(GSList *targetpackages,
98
GHashTable *oldpackages,
99
const
char
*outdeltadir,
100
gint num_deltas,
101
gint workers,
102
gint64 max_delta_rpm_size,
103
gint64 max_work_size,
104
GError **err);
105
106
GSList *
107
cr_deltarpms_scan_targetdir(
const
char
*path,
108
gint64 max_delta_rpm_size,
109
GError **err);
110
111
gboolean
112
cr_deltarpms_generate_prestodelta_file(
const
gchar *drpmdir,
113
cr_XmlFile
*f,
114
cr_XmlFile
*zck_f,
115
cr_ChecksumType
checksum_type,
116
gint workers,
117
const
gchar *prefix_to_strip,
118
GError **err);
119
#endif
120
121
123
124
#ifdef __cplusplus
125
}
126
#endif
127
128
#endif
/* __C_CREATEREPOLIB_DELTARPMS_H__ */
cr_ChecksumType
cr_ChecksumType
Definition
checksum.h:43
cr_HeaderReadingFlags
cr_HeaderReadingFlags
Definition
parsehdr.h:38
cr_DeltaPackage
Definition
deltarpms.h:42
cr_DeltaTargetPackage
Definition
deltarpms.h:49
cr_Package
Definition
package.h:84
cr_XmlFile
Definition
xml_file.h:50
src
deltarpms.h
Generated by
1.17.0