1 /*! \mainpage librpm API Documentation.
2 This documents the librpm API as available to rpm itself and to the
3 various depsolvers or language bindings that rely upon it.
5 It enables to build tools for:
6 - \link rpmbuild creating \endlink,
7 - \link rpmsign signing \endlink,
8 - \link rpmtd querying \endlink,
9 - or \link rpmts (un)installing \endlink RPM packages.
12 /** \defgroup internalargv Internal APIs:
16 /** \defgroup internalargv CLI Arguments:
20 /** \defgroup rpmargv Argument Manipulation API.
21 \brief Argument Manipulation API (internal).
23 /** \defgroup rpmcli Command Line API.
24 \brief Parsing RPM command line arguments (internal).
27 /** \defgroup rpmsq Signal Queue API.
28 \brief Signal Queue API (internal).
30 /** \defgroup rpmsw Statistics API.
31 \brief Statistics API (internal).
33 /** \defgroup rpmrc RPMRC.
34 \brief Reading config files and getting some important configuration values.
37 /** \defgroup buildsign Building & signing packages:
41 /** \defgroup rpmbuild Build API.
42 \brief API for building packages.
44 /** \defgroup signature Signature Tags API.
45 \brief List of signature tags.
47 /** \defgroup rpmsign Signature API.
48 \brief How to add or remove a signature from a package header.
52 /** \defgroup datatypes Data types:
56 /** \defgroup rpmtypes RPM data types.
57 \brief The abstract RPM data types.
59 /** \defgroup rpmstring String Manipulation API.
60 \brief String Manipulation API.
62 /** \defgroup rpmstrpool String Pool API.
63 \brief How to store strings in pools.
66 /** \defgroup install (un)Installing packages:
70 /** \defgroup rpmds Dependency Set API.
71 \brief How to compare dependencies.
73 /** \defgroup rpmcallback Callback signature & types.
74 \brief The signature of function to register as callback and the cases where it can be called
76 /** \defgroup rpmts Transaction Set API.
77 \brief How to create, run & destroy a package transaction.
79 /** \defgroup rpmte Transaction Element API.
80 \brief How to retrieve information from a transaction element.
82 /** \defgroup rpmps Problem Set API.
83 \brief Problem Set API.
85 /** \defgroup rpmprob Problem Element API.
86 \brief Problem Element API.
88 /** \defgroup rpmvf Verify API.
89 \brief How to verify a package
93 /** \defgroup rpmfiles File Info Set API.
94 \brief File Info Set API.
96 /** \defgroup rpmfi File Info Set Iterator API.
97 \brief File Info Set Iterator API.
99 /** \defgroup rpmfc File Classification API.
100 \brief Structures and methods for build-time file classification
102 /** \defgroup rpmkeyring RPM keyring API.
103 \brief RPM keyring API.
105 /** \defgroup rpmmacro Macro API.
108 /** \defgroup rpmlog Logging API.
109 \brief RPM Logging facilities.
111 /** \defgroup rpmpgp OpenPGP API.
112 \brief OpenPGP constants and structures from RFC-2440.
114 /** \defgroup headquery Querying package headers:
118 /** \defgroup header Header API.
119 \brief How to manipulate package headers (which carries all information about a package).
121 /** \defgroup rpmtag RPM Tag API.
122 \brief Manipulating RPM tags (accessing values, types, ...)
124 /** \defgroup rpmtd RPM Tag Data Container API.
125 \brief How to retrieve data from package headers.
132 /** \defgroup header Header API.
133 /** \defgroup rpmdb Database API.
134 \brief Opening & accessing the RPM indices using Berkeley DB (the so called rpmdb)
136 /** \defgroup rpmio RPM IO API.
137 \brief The RPM IO API (Fd_t is RPM equivalent to libc's FILE).
139 /** \defgroup rpmfileutil File and Path Manipulation API.
140 \brief File and path manipulation helper functions.
142 /** \defgroup rpmurl URL Manipulation API.
143 \brief A couple utils for URL Manipulation.