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
FDlistfdhead = NULL
FDlistfdtail = 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 877 of file rpmmodule.c.


Function Documentation

PyObject* archScore PyObject *    self,
PyObject *    args
[static]
 

Definition at line 607 of file rpmmodule.c.

References RPM_MACHTABLE_INSTARCH, and rpmMachineScore().

PyObject* checkSig PyObject *    self,
PyObject *    args
[static]
 

Definition at line 834 of file rpmmodule.c.

References rpmCheckSig().

int closeCallback FILE *    f [static]
 

Definition at line 898 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 579 of file rpmmodule.c.

References addMacro(), and RMIL_DEFAULT.

PyObject* doDelMacro PyObject *    self,
PyObject *    args
[static]
 

Definition at line 593 of file rpmmodule.c.

References delMacro().

PyObject* doFopen PyObject *    self,
PyObject *    args
[static]
 

Definition at line 929 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 769 of file rpmmodule.c.

References errorCB, and errorData.

Referenced by errorSetCallback().

PyObject* errorSetCallback PyObject *    self,
PyObject *    args
[static]
 

Definition at line 788 of file rpmmodule.c.

References errorcb(), errorCB, errorData, and rpmErrorSetCallback.

PyObject* errorString PyObject *    self,
PyObject *    args
[static]
 

Definition at line 828 of file rpmmodule.c.

PyObject* findUpgradeSet PyObject *    self,
PyObject *    args
[static]
 

Definition at line 689 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 851 of file rpmmodule.c.

void initrpm void   
 

Definition at line 1007 of file rpmmodule.c.

References CHECKSIG_GPG, CHECKSIG_MD5, CHECKSIG_PGP, HEADER_EXT_TAG, headerSprintfExtension_s::name, RPMCALLBACK_CPIO_ERROR, RPMCALLBACK_INST_CLOSE_FILE, RPMCALLBACK_INST_OPEN_FILE, RPMCALLBACK_INST_PROGRESS, RPMCALLBACK_INST_START, RPMCALLBACK_TRANS_PROGRESS, RPMCALLBACK_TRANS_START, RPMCALLBACK_TRANS_STOP, RPMCALLBACK_UNINST_PROGRESS, RPMCALLBACK_UNINST_START, RPMCALLBACK_UNINST_STOP, RPMCALLBACK_UNPACK_ERROR, 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, 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
 

Referenced by handleOverlappedFiles().

int pkgCompareVer void *    first,
void *    second
[static]
 

Definition at line 634 of file rpmmodule.c.

References psGetArchScore(), rpmVersionCompare(), and xstrcasecmp().

Referenced by pkgSort().

void pkgSort struct pkgSet   psp [static]
 

Definition at line 656 of file rpmmodule.c.

References packageInfo::name, pkgSet::numPackages, pkgSet::packages, and pkgCompareVer().

Referenced by findUpgradeSet().

int psGetArchScore Header    h [static]
 

Definition at line 621 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 740 of file rpmmodule.c.

References alloca(), rpmdbInit(), and snprintf().

int rpmvercmp const char *    one,
const char *    two
 

Segmented string compare for version and/or release.

Parameters:
a  1st string
b  2nd string
Returns:
+1 if a is "newer", 0 if equal, -1 if b is "newer"

Definition at line 15 of file rpmvercmp.c.

References alloca(), xisalnum(), xisalpha(), and xisdigit().

Referenced by rpmEVRcmp(), and rpmVersionCompare().

PyObject* setVerbosity PyObject *    self,
PyObject *    args
[static]
 

Definition at line 863 of file rpmmodule.c.

References rpmSetVerbosity.


Variable Documentation

int _rpmio_debug
 

Definition at line 27 of file rpmmodule.c.

Referenced by fdWritable().

PyObject* errorCB = NULL [static]
 

Definition at line 765 of file rpmmodule.c.

Referenced by errorcb(), and errorSetCallback().

PyObject * errorData = NULL [static]
 

Definition at line 765 of file rpmmodule.c.

Referenced by errorcb(), and errorSetCallback().

FDlist* fdhead = NULL [static]
 

Definition at line 890 of file rpmmodule.c.

FDlist* fdtail = NULL [static]
 

Definition at line 894 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 979 of file rpmmodule.c.

Referenced by initrpm().


Generated on Sun Feb 2 23:32:10 2003 for rpm by doxygen1.2.18