#include <errno.h>
#include <fcntl.h>
#include <time.h>
#include <sys/stat.h>
#include <sys/time.h>
#include <unistd.h>
#include <glob.h>
#include <dirent.h>
#include <locale.h>
#include "Python.h"
#include "rpmio_internal.h"
#include "rpmcli.h"
#include "misc.h"
#include "header_internal.h"
#include "upgrade.h"
Go to the source code of this file.
Data Structures | |
struct | hdrObject_s |
struct | rpmdbObject_s |
struct | rpmdbMIObject_s |
struct | rpmtransObject_s |
struct | tsCallbackType |
struct | FDlist_t |
Module: rpm | |
typedef FDlist_t | FDlist |
void | initrpm (void) |
static PyObject * | rpmtransCreate (PyObject *self, PyObject *args) |
static PyObject * | doAddMacro (PyObject *self, PyObject *args) |
static PyObject * | doDelMacro (PyObject *self, PyObject *args) |
static PyObject * | archScore (PyObject *self, PyObject *args) |
static int | psGetArchScore (Header h) |
static int | pkgCompareVer (void *first, void *second) |
static void | pkgSort (struct pkgSet *psp) |
static PyObject * | findUpgradeSet (PyObject *self, PyObject *args) |
static PyObject * | rpmHeaderFromPackage (PyObject *self, PyObject *args) |
static PyObject * | hdrLoad (PyObject *self, PyObject *args) |
static PyObject * | rhnLoad (PyObject *self, PyObject *args) |
static PyObject * | rpmInitDB (PyObject *self, PyObject *args) |
static rpmdbObject * | rpmOpenDB (PyObject *self, PyObject *args) |
static PyObject * | rebuildDB (PyObject *self, PyObject *args) |
static PyObject * | rpmReadHeaders (FD_t fd) |
static PyObject * | rpmHeaderFromFD (PyObject *self, PyObject *args) |
static PyObject * | rpmHeaderFromFile (PyObject *self, PyObject *args) |
static int | rpmMergeHeaders (PyObject *list, FD_t fd, int matchTag) |
This assumes the order of list matches the order of the new headers, and throws an exception if that isn't true. | |
static PyObject * | rpmMergeHeadersFromFD (PyObject *self, PyObject *args) |
static void | errorcb (void) |
static PyObject * | errorSetCallback (PyObject *self, PyObject *args) |
static PyObject * | errorString (PyObject *self, PyObject *args) |
static PyObject * | versionCompare (PyObject *self, PyObject *args) |
static PyObject * | labelCompare (PyObject *self, PyObject *args) |
static PyObject * | checkSig (PyObject *self, PyObject *args) |
static PyObject * | getTsHeader (PyObject *self, PyObject *args) |
static PyObject * | setVerbosity (PyObject *self, PyObject *args) |
static int | closeCallback (FILE *f) |
static PyObject * | doFopen (PyObject *self, PyObject *args) |
static PyObject * | errorCB = NULL |
static PyObject * | errorData = NULL |
static FDlist * | fdhead = NULL |
static FDlist * | fdtail = NULL |
static PyMethodDef | rpmModuleMethods [] |
Class: header | |
static PyObject * | hdrKeyList (hdrObject *s, PyObject *args) |
static PyObject * | hdrUnload (hdrObject *s, PyObject *args, PyObject *keywords) |
static PyObject * | hdrVerifyFile (hdrObject *s, PyObject *args) |
Returns a list of these tuples for each item that failed: (attr_name, correctValue, currentValue) It should be passed the file number to verify. | |
static PyObject * | hdrExpandFilelist (hdrObject *s, PyObject *args) |
static PyObject * | hdrCompressFilelist (hdrObject *s, PyObject *args) |
static void | mungeFilelist (Header h) |
static PyObject * | rhnUnload (hdrObject *s, PyObject *args) |
static PyObject * | hdrFullFilelist (hdrObject *s, PyObject *args) |
static PyObject * | hdrSprintf (hdrObject *s, PyObject *args) |
static PyObject * | hdrGetAttr (hdrObject *s, char *name) |
static void | hdrDealloc (hdrObject *s) |
static long | tagNumFromPyObject (PyObject *item) |
static PyObject * | hdrSubscript (hdrObject *s, PyObject *item) |
static struct PyMethodDef | hdrMethods [] |
static PyMappingMethods | hdrAsMapping |
static PyTypeObject | hdrType |
Class: rpmdbMatchIterator | |
static PyObject * | rpmdbMINext (rpmdbMIObject *s, PyObject *args) |
static PyObject * | rpmdbMIGetAttr (rpmdbObject *s, char *name) |
static void | rpmdbMIDealloc (rpmdbMIObject *s) |
static struct PyMethodDef | rpmdbMIMethods [] |
static PyTypeObject | rpmdbMIType |
Class: rpmdb | |
static PyObject * | rpmdbFirst (rpmdbObject *s, PyObject *args) |
static PyObject * | rpmdbNext (rpmdbObject *s, PyObject *args) |
static PyObject * | handleDbResult (rpmdbMatchIterator mi) |
static PyObject * | rpmdbByFile (rpmdbObject *s, PyObject *args) |
static PyObject * | rpmdbByName (rpmdbObject *s, PyObject *args) |
static PyObject * | rpmdbByProvides (rpmdbObject *s, PyObject *args) |
static rpmdbMIObject * | py_rpmdbInitIterator (rpmdbObject *s, PyObject *args) |
static PyObject * | rpmdbGetAttr (rpmdbObject *s, char *name) |
static void | rpmdbDealloc (rpmdbObject *s) |
static int | rpmdbLength (rpmdbObject *s) |
static hdrObject * | rpmdbSubscript (rpmdbObject *s, PyObject *key) |
static struct PyMethodDef | rpmdbMethods [] |
static PyMappingMethods | rpmdbAsMapping |
static PyTypeObject | rpmdbType |
Class: rpmtrans | |
static PyObject * | rpmtransAdd (rpmtransObject *s, PyObject *args) |
static PyObject * | rpmtransRemove (rpmtransObject *s, PyObject *args) |
static PyObject * | rpmtransDepCheck (rpmtransObject *s, PyObject *args) |
static PyObject * | rpmtransOrder (rpmtransObject *s, PyObject *args) |
static PyObject * | py_rpmtransGetKeys (rpmtransObject *s, PyObject *args) |
static void * | tsCallback (const void *hd, const rpmCallbackType what, const unsigned long amount, const unsigned long total, const void *pkgKey, rpmCallbackData data) |
static PyObject * | rpmtransRun (rpmtransObject *s, PyObject *args) |
static PyObject * | rpmtransGetAttr (rpmtransObject *o, char *name) |
static void | rpmtransDealloc (PyObject *o) |
static int | rpmtransSetAttr (rpmtransObject *o, char *name, PyObject *val) |
static Header | transactionSetHeader = NULL |
static struct PyMethodDef | rpmtransMethods [] |
static PyTypeObject | rpmtransType |
Defines | |
#define | REGISTER_ENUM(val) |
Typedefs | |
typedef rpmdbObject_s | rpmdbObject |
typedef rpmdbMIObject_s | rpmdbMIObject |
typedef rpmtransObject_s | rpmtransObject |
typedef hdrObject_s | hdrObject |
Functions | |
static Header | headerAllocated (Header h) |
int | mdfile (const char *fn, unsigned char *digest) |
int | rpmvercmp (const char *one, const char *two) |
Segmented string compare for version and/or release. | |
Variables | |
int | _rpmio_debug |
static PyObject * | pyrpmError |
Definition in file rpmmodule.c.
|
Value: PyDict_SetItemString(d, #val, o=PyInt_FromLong( val )); \ Py_DECREF(o); |
|
Definition at line 2381 of file rpmmodule.c. |
|
Definition at line 1704 of file rpmmodule.c. References RPM_MACHTABLE_INSTARCH, and rpmMachineScore(). |
|
Definition at line 2331 of file rpmmodule.c. References rpmCheckSig(). |
|
Definition at line 2402 of file rpmmodule.c. References FDlist_t::f, Fclose(), FDlist_t::fd, fdFree, fdhead, fdLink, FDlist_t::next, and FDlist_t::note. Referenced by doFopen(). |
|
Definition at line 1676 of file rpmmodule.c. References addMacro(), name, and RMIL_DEFAULT. |
|
Definition at line 1690 of file rpmmodule.c. References delMacro(), and name. |
|
Definition at line 2433 of file rpmmodule.c. References closeCallback(), FDlist_t::f, FDlist_t::fd, fdGetFp(), fdhead, fdLink, fdtail, Ferror(), Fopen(), Fstrerror(), FDlist_t::next, FDlist_t::note, and pyrpmError. |
|
Definition at line 2225 of file rpmmodule.c. Referenced by errorSetCallback(). |
|
Definition at line 2244 of file rpmmodule.c. References errorcb(), and rpmErrorSetCallback. |
|
Definition at line 2284 of file rpmmodule.c. References rpmErrorString. Referenced by packageBinaries(). |
|
Definition at line 1786 of file rpmmodule.c. References alloca(), pkgSet::numPackages, and pkgSet::packages. |
|
Definition at line 2348 of file rpmmodule.c. References hdrObject_s::fileList, hdrObject_s::fileSizes, hdrObject_s::gids, hdrObject_s::h, headerLink(), hdrObject_s::linkList, hdrObject_s::md5list, hdrObject_s::modes, hdrObject_s::mtimes, hdrObject_s::rdevs, hdrObject_s::sigs, transactionSetHeader, and hdrObject_s::uids. |
|
Definition at line 1010 of file rpmmodule.c. References rpmdbFreeIterator(), rpmdbGetIteratorOffset(), and rpmdbNextIterator(). Referenced by rpmdbByFile(), rpmdbByName(), and rpmdbByProvides(). |
|
Definition at line 1882 of file rpmmodule.c. References compressFilelist(), hdrObject_s::fileList, hdrObject_s::fileSizes, hdrObject_s::gids, hdrObject_s::h, headerAllocated(), headerLoad(), hdrObject_s::linkList, hdrObject_s::md5list, hdrObject_s::modes, hdrObject_s::mtimes, providePackageNVR(), pyrpmError, hdrObject_s::rdevs, hdrObject_s::sigs, and hdrObject_s::uids. |
|
Definition at line 25 of file rpmmodule.c. References headerToken::flags, and HEADERFLAG_ALLOCATED. Referenced by hdrLoad(), rhnLoad(), and rhnUnload(). |
|
Definition at line 2511 of file rpmmodule.c. References name, pyrpmError, rpmdbType, rpmHeaderFormats, rpmReadConfigFiles(), rpmTagTable, and rpmTagTableSize. |
|
Definition at line 2300 of file rpmmodule.c. References rpmvercmp(). |
|
|
|
Definition at line 1731 of file rpmmodule.c. References psGetArchScore(), rpmVersionCompare(), and xstrcasecmp(). Referenced by pkgSort(). |
|
Definition at line 1753 of file rpmmodule.c. References packageInfo::name, name, pkgSet::numPackages, pkgSet::packages, and pkgCompareVer(). |
|
Definition at line 1718 of file rpmmodule.c. References headerGetEntry(), RPM_INT8_TYPE, RPM_MACHTABLE_INSTARCH, rpmMachineScore(), and RPMTAG_ARCH. Referenced by pkgCompareVer(). |
|
Definition at line 1060 of file rpmmodule.c. References rpmdbMIObject_s::db, rpmdbObject_s::db, rpmdbMIObject_s::mi, pyrpmError, rpmdbInitIterator(), and tagNumFromPyObject(). |
|
Definition at line 2039 of file rpmmodule.c. References rpmdbRebuild(). |
|
|
Definition at line 1029 of file rpmmodule.c. References rpmdbObject_s::db, handleDbResult(), rpmdbInitIterator(), and RPMTAG_BASENAMES. |
|
Definition at line 1039 of file rpmmodule.c. References rpmdbObject_s::db, handleDbResult(), rpmdbInitIterator(), and RPMTAG_NAME. |
|
Definition at line 1049 of file rpmmodule.c. References rpmdbObject_s::db, handleDbResult(), rpmdbInitIterator(), and RPMTAG_PROVIDENAME. |
|
Definition at line 1109 of file rpmmodule.c. References rpmdbObject_s::db, rpmdbObject_s::offsets, and rpmdbClose(). |
|
Definition at line 949 of file rpmmodule.c. References rpmdbObject_s::db, rpmdbObject_s::noffs, rpmdbObject_s::offsets, rpmdbObject_s::offx, pyrpmError, rpmdbFreeIterator(), rpmdbGetIteratorOffset(), RPMDBI_PACKAGES, rpmdbInitIterator(), and rpmdbNextIterator(). |
|
Definition at line 1103 of file rpmmodule.c. |
|
Definition at line 1123 of file rpmmodule.c. References rpmdbObject_s::db, rpmdbFreeIterator(), RPMDBI_PACKAGES, rpmdbInitIterator(), and rpmdbNextIterator(). |
|
Definition at line 988 of file rpmmodule.c. References rpmdbObject_s::noffs, rpmdbObject_s::offsets, and rpmdbObject_s::offx. |
|
|
Definition at line 2091 of file rpmmodule.c. References Fclose(), fdDup(), and rpmReadHeaders(). |
|
Definition at line 2107 of file rpmmodule.c. References Fclose(), Fopen(), pyrpmError, and rpmReadHeaders(). |
|
|
Definition at line 1983 of file rpmmodule.c. References alloca(), pyrpmError, rpmdbInit(), and snprintf(). |
|
This assumes the order of list matches the order of the new headers, and throws an exception if that isn't true.
Definition at line 2130 of file rpmmodule.c. References hdrObject_s::fileList, hdrObject_s::h, HEADER_MAGIC_YES, headerAddEntry(), headerFree(), headerFreeData(), headerFreeIterator(), headerGetEntry(), headerInitIterator(), headerNextIterator(), headerRead(), headerRemoveEntry(), hdrObject_s::linkList, hdrObject_s::md5list, pyrpmError, and hdrObject_s::sigs. Referenced by rpmMergeHeadersFromFD(). |
|
Definition at line 2191 of file rpmmodule.c. References Fclose(), fdDup(), and rpmMergeHeaders(). |
|
Definition at line 2007 of file rpmmodule.c. References alloca(), rpmdbObject_s::db, rpmdbObject_s::noffs, rpmdbObject_s::offsets, rpmdbObject_s::offx, pyrpmError, rpmdbOpen(), rpmdbType, and snprintf(). |
|
Definition at line 2049 of file rpmmodule.c. References compressFilelist(), hdrObject_s::fileList, hdrObject_s::fileSizes, hdrObject_s::gids, hdrObject_s::h, HEADER_MAGIC_YES, headerRead(), hdrObject_s::linkList, hdrObject_s::md5list, hdrObject_s::modes, hdrObject_s::mtimes, providePackageNVR(), pyrpmError, hdrObject_s::rdevs, hdrObject_s::sigs, and hdrObject_s::uids. Referenced by rpmHeaderFromFD(), and rpmHeaderFromFile(). |
|
Definition at line 1652 of file rpmmodule.c. References rpmdbObject_s::db, rpmtransObject_s::dbo, rpmtransObject_s::keyList, rpmdbType, rpmtransCreateSet(), rpmtransObject_s::scriptFd, and rpmtransObject_s::ts. |
|
Definition at line 2367 of file rpmmodule.c. References rpmSetVerbosity. |
|
Definition at line 2290 of file rpmmodule.c. References hdrObject_s::h, and rpmVersionCompare(). |
|
|
|
Definition at line 2221 of file rpmmodule.c. |
|
Definition at line 2221 of file rpmmodule.c. |
|
Definition at line 2394 of file rpmmodule.c. Referenced by closeCallback(), and doFopen(). |
|
Definition at line 2398 of file rpmmodule.c. Referenced by doFopen(). |
|
Initial value: { (inquiry) rpmdbLength, (binaryfunc) rpmdbSubscript, (objobjargproc)0, } Definition at line 1175 of file rpmmodule.c. |
|
Initial value: { {"firstkey", (PyCFunction) rpmdbFirst, 1 }, {"nextkey", (PyCFunction) rpmdbNext, 1 }, {"findbyfile", (PyCFunction) rpmdbByFile, 1 }, {"findbyname", (PyCFunction) rpmdbByName, 1 }, {"findbyprovides", (PyCFunction) rpmdbByProvides, 1 }, {"match", (PyCFunction) py_rpmdbInitIterator, 1 }, {NULL, NULL} } Definition at line 1091 of file rpmmodule.c. |
|
Initial value: { PyObject_HEAD_INIT(NULL) 0, "rpmdb", sizeof(rpmdbObject), 0, (destructor) rpmdbDealloc, 0, (getattrfunc) rpmdbGetAttr, 0, 0, 0, 0, 0, &rpmdbAsMapping, } Definition at line 1184 of file rpmmodule.c. Referenced by initrpm(), rpmOpenDB(), and rpmtransCreate(). |
|
Initial value: { { "TransactionSet", (PyCFunction) rpmtransCreate, METH_VARARGS, NULL }, { "addMacro", (PyCFunction) doAddMacro, METH_VARARGS, NULL }, { "delMacro", (PyCFunction) doDelMacro, METH_VARARGS, NULL }, { "archscore", (PyCFunction) archScore, METH_VARARGS, NULL }, { "findUpgradeSet", (PyCFunction) findUpgradeSet, METH_VARARGS, NULL }, { "headerFromPackage", (PyCFunction) rpmHeaderFromPackage, METH_VARARGS, NULL }, { "headerLoad", (PyCFunction) hdrLoad, METH_VARARGS, NULL }, { "rhnLoad", (PyCFunction) rhnLoad, METH_VARARGS, NULL }, { "initdb", (PyCFunction) rpmInitDB, METH_VARARGS, NULL }, { "opendb", (PyCFunction) rpmOpenDB, METH_VARARGS, NULL }, { "rebuilddb", (PyCFunction) rebuildDB, METH_VARARGS, NULL }, { "mergeHeaderListFromFD", (PyCFunction) rpmMergeHeadersFromFD, METH_VARARGS, NULL }, { "readHeaderListFromFD", (PyCFunction) rpmHeaderFromFD, METH_VARARGS, NULL }, { "readHeaderListFromFile", (PyCFunction) rpmHeaderFromFile, METH_VARARGS, NULL }, { "errorSetCallback", (PyCFunction) errorSetCallback, METH_VARARGS, NULL }, { "errorString", (PyCFunction) errorString, METH_VARARGS, NULL }, { "versionCompare", (PyCFunction) versionCompare, METH_VARARGS, NULL }, { "labelCompare", (PyCFunction) labelCompare, METH_VARARGS, NULL }, { "checksig", (PyCFunction) checkSig, METH_VARARGS, NULL }, { "getTransactionCallbackHeader", (PyCFunction) getTsHeader, METH_VARARGS, NULL }, { "setVerbosity", (PyCFunction) setVerbosity, METH_VARARGS, NULL }, { NULL } } Definition at line 2483 of file rpmmodule.c. |