Main Page Modules Data Structures File List Data Fields Globals Related Pages

# python/rpmmodule.c File Reference

More...

`#include <alloca.h>`
`#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"`
`#include "db-py.h"`
`#include "header-py.h"`

Go to the source code of this file.

## Data Structures

struct | FDlist_t
struct | rpmtransObject_s
struct | tsCallbackType

## Module: rpm

typedef FDlist_t | FDlist
void | initrpm (void)
PyObject * | rpmtransCreate (PyObject *self, PyObject *args)
PyObject * | doAddMacro (PyObject *self, PyObject *args)
PyObject * | doDelMacro (PyObject *self, PyObject *args)
PyObject * | archScore (PyObject *self, PyObject *args)
int | psGetArchScore (Header h)
int | pkgCompareVer (void *first, void *second)
void | pkgSort (struct pkgSet *psp)
PyObject * | findUpgradeSet (PyObject *self, PyObject *args)
PyObject * | rpmInitDB (PyObject *self, PyObject *args)
void | errorcb (void)
PyObject * | errorSetCallback (PyObject *self, PyObject *args)
PyObject * | errorString (PyObject *self, PyObject *args)
PyObject * | checkSig (PyObject *self, PyObject *args)
PyObject * | getTsHeader (PyObject *self, PyObject *args)
PyObject * | setVerbosity (PyObject *self, PyObject *args)
int | closeCallback (FILE *f)
PyObject * | doFopen (PyObject *self, PyObject *args)
PyObject * | errorCB = NULL
PyObject * | errorData = NULL
FDlist * | fdhead = NULL
FDlist * | fdtail = NULL
PyMethodDef | rpmModuleMethods []

## Class: rpmtrans

PyObject * | rpmtransAdd (rpmtransObject *s, PyObject *args)
PyObject * | rpmtransRemove (rpmtransObject *s, PyObject *args)
PyObject * | rpmtransDepCheck (rpmtransObject *s, PyObject *args)
PyObject * | rpmtransOrder (rpmtransObject *s, PyObject *args)
PyObject * | py_rpmtransGetKeys (rpmtransObject *s, PyObject *args)
void * | tsCallback (const void *hd, const rpmCallbackType what, const unsigned long amount, const unsigned long total, const void *pkgKey, rpmCallbackData data)
PyObject * | rpmtransRun (rpmtransObject *s, PyObject *args)
PyObject * | rpmtransGetAttr (rpmtransObject *o, char *name)
void | rpmtransDealloc (PyObject *o)
int | rpmtransSetAttr (rpmtransObject *o, char *name, PyObject *val)
Header | transactionSetHeader = NULL
PyMethodDef | rpmtransMethods []
PyTypeObject | rpmtransType

## Defines

#define | REGISTER_ENUM(val)

## Typedefs

typedef rpmtransObject_s | rpmtransObject

## Functions

int | mdfile (const char *fn, unsigned char *digest)
int | rpmvercmp (const char *one, const char *two)

## Variables

int | _rpmio_debug

## Detailed Description

Definition in file rpmmodule.c.

## Define Documentation

#define REGISTER_ENUM | ( | val |  | ) |

Value:

    PyDict_SetItemString(d, #val, o=PyInt_FromLong( val )); \
        Py_DECREF(o);

## Typedef Documentation

typedef struct FDlist_t FDlist

| Definition at line 880 of file rpmmodule.c.

## Function Documentation

PyObject* archScore | ( | PyObject * | self,
|  | PyObject * | args
| ) | `[static]`

| Definition at line 610 of file rpmmodule.c. References RPM_MACHTABLE_INSTARCH, and rpmMachineScore.

PyObject* checkSig | ( | PyObject * | self,
|  | PyObject * | args
| ) | `[static]`

| Definition at line 837 of file rpmmodule.c. References rpmCheckSig.

int closeCallback | ( | FILE * | f | ) | `[static]`

| Definition at line 901 of file rpmmodule.c. References FDlist_t::f, Fclose, FDlist_t::fd, fdFree, fdLink, FDlist_t::next, and FDlist_t::note. Referenced by doFopen.

PyObject* doAddMacro | ( | PyObject * | self,
|  | PyObject * | args
| ) | `[static]`

| Definition at line 582 of file rpmmodule.c. References addMacro, and RMIL_DEFAULT.

PyObject* doDelMacro | ( | PyObject * | self,
|  | PyObject * | args
| ) | `[static]`

| Definition at line 596 of file rpmmodule.c. References delMacro.

PyObject* doFopen | ( | PyObject * | self,
|  | PyObject * | args
| ) | `[static]`

| Definition at line 932 of file rpmmodule.c. References closeCallback, FDlist_t::f, FDlist_t::fd, fdGetFp, fdLink, Ferror, Fopen, Fstrerror, FDlist_t::next, and FDlist_t::note.

void errorcb | ( | void |  | ) | `[static]`

| Definition at line 772 of file rpmmodule.c. References errorCB, and errorData. Referenced by errorSetCallback.

PyObject* errorSetCallback | ( | PyObject * | self,
|  | PyObject * | args
| ) | `[static]`

| Definition at line 791 of file rpmmodule.c. References errorcb, errorCB, and errorData.

PyObject* errorString | ( | PyObject * | self,
|  | PyObject * | args
| ) | `[static]`

| Definition at line 831 of file rpmmodule.c.

PyObject* findUpgradeSet | ( | PyObject * | self,
|  | PyObject * | args
| ) | `[static]`

| Definition at line 692 of file rpmmodule.c. References alloca, packageInfo::data, packageInfo::h, headerGetEntry, packageInfo::name, pkgSet::numPackages, pkgSet::packages, pkgSort, RPMTAG_NAME, packageInfo::selected, and ugFindUpgradePackages.

PyObject* getTsHeader | ( | PyObject * | self,
|  | PyObject * | args
| ) | `[static]`

| Definition at line 854 of file rpmmodule.c.

void initrpm | ( | void |  | ) |

Definition at line 1010 of file rpmmodule.c.

References HEADER_EXT_TAG, headerSprintfExtension_s::name, RPMFILE_CONFIG, RPMFILE_DOC, RPMFILE_GHOST, RPMFILE_LICENSE, RPMFILE_MISSINGOK, RPMFILE_NOREPLACE, RPMFILE_README, RPMFILE_STATE_NETSHARED, RPMFILE_STATE_NORMAL, RPMFILE_STATE_NOTINSTALLED, RPMFILE_STATE_REPLACED, RPMMIRE_DEFAULT, RPMMIRE_GLOB, RPMMIRE_REGEX, RPMMIRE_STRCMP, rpmModuleMethods, RPMPROB_BADARCH, RPMPROB_BADOS, RPMPROB_BADPRETRANS, RPMPROB_BADRELOCATE, RPMPROB_CONFLICT, RPMPROB_DISKNODES, RPMPROB_DISKSPACE, RPMPROB_FILE_CONFLICT, RPMPROB_FILTER_DISKNODES, RPMPROB_FILTER_DISKSPACE, RPMPROB_FILTER_FORCERELOCATE, RPMPROB_FILTER_IGNOREARCH, RPMPROB_FILTER_IGNOREOS, RPMPROB_FILTER_OLDPACKAGE, RPMPROB_FILTER_REPLACENEWFILES, RPMPROB_FILTER_REPLACEOLDFILES, RPMPROB_FILTER_REPLACEPKG, RPMPROB_NEW_FILE_CONFLICT, RPMPROB_OLDPACKAGE, RPMPROB_PKG_INSTALLED, RPMPROB_REQUIRES, rpmReadConfigFiles, RPMSENSE_EQUAL, RPMSENSE_FIND_PROVIDES, RPMSENSE_FIND_REQUIRES, RPMSENSE_GREATER, RPMSENSE_INTERP, RPMSENSE_LESS, RPMSENSE_MULTILIB, RPMSENSE_PREREQ, RPMSENSE_RPMLIB, RPMSENSE_SCRIPT_BUILD, RPMSENSE_SCRIPT_CLEAN, RPMSENSE_SCRIPT_INSTALL, RPMSENSE_SCRIPT_POST, RPMSENSE_SCRIPT_POSTUN, RPMSENSE_SCRIPT_PRE, RPMSENSE_SCRIPT_PREP, RPMSENSE_SCRIPT_PREUN, RPMSENSE_SCRIPT_VERIFY, RPMSENSE_SERIAL, RPMSENSE_TRIGGERIN, RPMSENSE_TRIGGERPOSTUN, RPMSENSE_TRIGGERPREIN, RPMSENSE_TRIGGERUN, rpmTagTable, rpmTagTableSize, RPMTRANS_FLAG_ALLFILES, RPMTRANS_FLAG_BUILD_PROBS, RPMTRANS_FLAG_JUSTDB, RPMTRANS_FLAG_KEEPOBSOLETE, RPMTRANS_FLAG_MULTILIB, RPMTRANS_FLAG_NODOCS, RPMTRANS_FLAG_NOSCRIPTS, RPMTRANS_FLAG_NOTRIGGERS, RPMTRANS_FLAG_TEST, rpmtransType, and headerSprintfExtension_s::type.

int mdfile | ( | const char * | fn,
|  | unsigned char * | digest
| ) |

int pkgCompareVer | ( | void * | first,
|  | void * | second
| ) | `[static]`

| Definition at line 637 of file rpmmodule.c. References psGetArchScore, rpmVersionCompare, and xstrcasecmp. Referenced by pkgSort.

void pkgSort | ( | struct pkgSet * | psp | ) | `[static]`

| Definition at line 659 of file rpmmodule.c. References packageInfo::name, pkgSet::numPackages, pkgSet::packages, and pkgCompareVer. Referenced by findUpgradeSet.

int psGetArchScore | ( | Header | h | ) | `[static]`

| Definition at line 624 of file rpmmodule.c. References headerGetEntry, RPM_INT8_TYPE, RPM_MACHTABLE_INSTARCH, rpmMachineScore, and RPMTAG_ARCH. Referenced by pkgCompareVer.

PyObject* rpmInitDB | ( | PyObject * | self,
|  | PyObject * | args
| ) | `[static]`

| Definition at line 743 of file rpmmodule.c. References alloca, rpmdbInit, and snprintf.

PyObject* setVerbosity | ( | PyObject * | self,
|  | PyObject * | args
| ) | `[static]`

| Definition at line 866 of file rpmmodule.c.

## Variable Documentation

int _rpmio_debug

| Definition at line 27 of file rpmmodule.c.

PyObject* errorCB = NULL`[static]`

| Definition at line 768 of file rpmmodule.c. Referenced by errorcb, and errorSetCallback.

PyObject * errorData = NULL`[static]`

| Definition at line 768 of file rpmmodule.c. Referenced by errorcb, and errorSetCallback.

FDlist* fdhead = NULL`[static]`

| Definition at line 893 of file rpmmodule.c.

FDlist* fdtail = NULL`[static]`

| Definition at line 897 of file rpmmodule.c.

PyMethodDef rpmModuleMethods[]`[static]`

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 982 of file rpmmodule.c.

Referenced by initrpm.