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

python/upgrade.c File Reference

More...

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
#include <string.h>
#include <glob.h>
#include <dirent.h>
#include <rpmlib.h>
#include "hash.h"
#include "upgrade.h"

Go to the source code of this file.

Defines

#define MAXPKGS   1024
#define USEDEBUG   0
#define DEBUG(x)

Functions

int pkgCompare (void *first, void *second)
void compareFileList (int availFileCount, char **availBaseNames, char **availDirNames, int *availDirIndexes, int instFileCount, char **instBaseNames, char **instDirNames, int *instDirIndexes, struct hash_table *ht)
void addLostFiles (rpmdb db, struct pkgSet *psp, struct hash_table *ht)
int findPackagesWithObsoletes (rpmdb db, struct pkgSet *psp)
void errorFunction (void)
int findUpgradePackages (rpmdb db, struct pkgSet *psp, struct hash_table *ht)
int removeMovedFilesAlreadyHandled (struct pkgSet *psp, struct hash_table *ht)
int findPackagesWithRelocatedFiles (struct pkgSet *psp, struct hash_table *ht)
int unmarkPackagesAlreadyInstalled (rpmdb db, struct pkgSet *psp)
void emptyErrorCallback (void)
int ugFindUpgradePackages (struct pkgSet *psp, char *installRoot)


Detailed Description

Definition in file upgrade.c.


Define Documentation

#define DEBUG  
 

Value:

{   \
     if (USEDEBUG)   \
         printf x; \
     }

Definition at line 23 of file upgrade.c.

#define MAXPKGS   1024
 

Definition at line 19 of file upgrade.c.

#define USEDEBUG   0
 

Definition at line 21 of file upgrade.c.


Function Documentation

void addLostFiles rpmdb    db,
struct pkgSet   psp,
struct hash_table   ht
[static]
 

Definition at line 105 of file upgrade.c.

References compareFileList, headerGetEntry, headerGetEntryMinMemory, int_32, packageInfo::name, pkgSet::numPackages, pkgSet::packages, pkgCompare, rpmdbFreeIterator, RPMDBI_PACKAGES, rpmdbInitIterator, rpmdbNextIterator, RPMTAG_BASENAMES, RPMTAG_DIRINDEXES, RPMTAG_DIRNAMES, and RPMTAG_NAME.

Referenced by ugFindUpgradePackages.

void compareFileList int    availFileCount,
char **    availBaseNames,
char **    availDirNames,
int *    availDirIndexes,
int    instFileCount,
char **    instBaseNames,
char **    instDirNames,
int *    instDirIndexes,
struct hash_table   ht
[static]
 

Definition at line 56 of file upgrade.c.

References DEBUG, and htAddToTable.

Referenced by addLostFiles, and findUpgradePackages.

void emptyErrorCallback void    [static]
 

Definition at line 462 of file upgrade.c.

Referenced by ugFindUpgradePackages.

void errorFunction void    [static]
 

Definition at line 185 of file upgrade.c.

Referenced by findUpgradePackages, and unmarkPackagesAlreadyInstalled.

int findPackagesWithObsoletes rpmdb    db,
struct pkgSet   psp
[static]
 

Definition at line 153 of file upgrade.c.

References headerGetEntryMinMemory, pkgSet::numPackages, pkgSet::packages, rpmdbCountPackages, RPMTAG_OBSOLETENAME, and packageInfo::selected.

Referenced by ugFindUpgradePackages.

int findPackagesWithRelocatedFiles struct pkgSet   psp,
struct hash_table   ht
[static]
 

Definition at line 346 of file upgrade.c.

References DEBUG, headerGetEntry, headerGetEntryMinMemory, htInTable, htRemoveFromTable, int_16, int_32, pkgSet::numPackages, pkgSet::packages, RPMTAG_BASENAMES, RPMTAG_DIRINDEXES, RPMTAG_DIRNAMES, RPMTAG_FILEMODES, and RPMTAG_NAME.

Referenced by ugFindUpgradePackages.

int findUpgradePackages rpmdb    db,
struct pkgSet   psp,
struct hash_table   ht
[static]
 

Definition at line 189 of file upgrade.c.

References compareFileList, DEBUG, errorFunction, headerGetEntry, headerGetEntryMinMemory, int_32, pkgSet::numPackages, pkgSet::packages, rpmdbFreeIterator, rpmdbInitIterator, rpmdbNextIterator, RPMTAG_BASENAMES, RPMTAG_DIRINDEXES, RPMTAG_DIRNAMES, RPMTAG_NAME, and rpmVersionCompare.

Referenced by ugFindUpgradePackages.

int pkgCompare void *    first,
void *    second
 

Definition at line 42 of file upgrade.c.

References xstrcasecmp.

Referenced by addLostFiles.

int removeMovedFilesAlreadyHandled struct pkgSet   psp,
struct hash_table   ht
[static]
 

Definition at line 296 of file upgrade.c.

References DEBUG, headerGetEntry, headerGetEntryMinMemory, htInTable, htRemoveFromTable, int_32, pkgSet::numPackages, pkgSet::packages, RPMTAG_BASENAMES, RPMTAG_DIRINDEXES, RPMTAG_DIRNAMES, and RPMTAG_NAME.

Referenced by ugFindUpgradePackages.

int ugFindUpgradePackages struct pkgSet   psp,
char *    installRoot
 

Definition at line 465 of file upgrade.c.

References addLostFiles, emptyErrorCallback, findPackagesWithObsoletes, findPackagesWithRelocatedFiles, findUpgradePackages, htFreeHashTable, htNewTable, removeMovedFilesAlreadyHandled, rpmdbClose, rpmdbOpen, and unmarkPackagesAlreadyInstalled.

int unmarkPackagesAlreadyInstalled rpmdb    db,
struct pkgSet   psp
[static]
 

Definition at line 418 of file upgrade.c.

References DEBUG, errorFunction, headerGetEntry, pkgSet::numPackages, pkgSet::packages, rpmdbFreeIterator, rpmdbInitIterator, rpmdbNextIterator, RPMTAG_NAME, and rpmVersionCompare.

Referenced by ugFindUpgradePackages.


Generated on Wed Mar 13 15:34:53 2002 for rpm by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002