Main Page   Modules   Compound List   File List   Compound Members   File Members   Related Pages  

lib/misc.c File Reference

More...

#include "system.h"
#include <rpmlib.h>
#include <rpmurl.h>
#include <rpmmacro.h>
#include "misc.h"
#include "debug.h"

Go to the source code of this file.

Functions

char** splitString (const char * str, int length, char sep)
void freeSplitString (char ** list)
int rpmfileexists (const char * urlfn)
int rpmvercmp (const char * a, const char * b)
int doputenv (const char *str)
int dosetenv (const char *name, const char *value, int overwrite)
int rpmMkpath (const char * path, mode_t mode, uid_t uid, gid_t gid)
int makeTempFile (const char * prefix, const char ** fnptr, FD_t * fdptr)
char* currentDirectory (void)
int dncmp (const void * a, const void * b)
void compressFilelist (Header h)
void doBuildFileList (Header h, const char *** fileListPtr, int * fileCountPtr, int baseNameTag, int dirNameTag, int dirIndexesTag)
void expandFilelist (Header h)
void rpmBuildFileList (Header h, const char *** fileListPtr, int * fileCountPtr)
 Retrieve file names from header. More...

void buildOrigFileList (Header h, const char *** fileListPtr, int * fileCountPtr)
int myGlobPatternP (const char *patternURL)
int glob_error (const char *foo, int bar)
int rpmGlob (const char * patterns, int * argcPtr, const char *** argvPtr)
int rpmHeaderGetEntry (Header h, int_32 tag, int_32 *type, void **p, int_32 *c)
 Retrieve tag info from header. More...

int rpmPackageGetEntry ( void *leadp, Header sigs, Header h, int_32 tag, int_32 *type, void **p, int_32 *c)
 Retrieve tag info from header. More...

void providePackageNVR (Header h)

Variables

char* RPMVERSION = VERSION


Detailed Description

Definition in file misc.c.


Function Documentation

void buildOrigFileList ( Header h,
const char *** fileListPtr,
int * fileCountPtr )
 

Definition at line 534 of file misc.c.

Referenced by assembleFileList().

void compressFilelist ( Header h )
 

Definition at line 388 of file misc.c.

Referenced by doGetRecord(), hdrCompressFilelist(), hdrLoad(), mungeFilelist(), readPackageHeaders(), rpmReadHeaders(), and writeRPM().

char * currentDirectory ( void )
 

Returns:
cureent working directory (malloc'ed)

Definition at line 364 of file misc.c.

Referenced by installSources(), and rpmRunTransactions().

int dncmp ( const void * a,
const void * b ) [static]
 

Definition at line 381 of file misc.c.

void doBuildFileList ( Header h,
const char *** fileListPtr,
int * fileCountPtr,
int baseNameTag,
int dirNameTag,
int dirIndexesTag ) [static]
 

Definition at line 467 of file misc.c.

Referenced by buildOrigFileList(), expandFilelist(), and rpmBuildFileList().

int doputenv ( const char * str )
 

Definition at line 186 of file misc.c.

Referenced by runScript().

int dosetenv ( const char * name,
const char * value,
int overwrite )
 

Definition at line 198 of file misc.c.

Referenced by checkPassPhrase(), makeGPGSignature(), makePGPSignature(), verifyGPGSignature(), and verifyPGPSignature().

void expandFilelist ( Header h )
 

Definition at line 507 of file misc.c.

Referenced by dbiUpdateRecord(), hdrExpandFilelist(), rpmdbAdd(), and writeRPM().

void freeSplitString ( char ** list )
 

Definition at line 57 of file misc.c.

Referenced by parsePrep(), processPackageFiles(), processSourceFiles(), and skipFiles().

int glob_error ( const char * foo,
int bar ) [static]
 

Definition at line 572 of file misc.c.

int makeTempFile ( const char * prefix,
const char ** fnptr,
FD_t * fdptr )
 

Definition at line 266 of file misc.c.

Referenced by doScript(), manageFile(), runScript(), and writeRPM().

int myGlobPatternP ( const char * patternURL )
 

Definition at line 545 of file misc.c.

Referenced by processBinaryFile(), and rpmGlob().

void providePackageNVR ( Header h )
 

Definition at line 771 of file misc.c.

Referenced by doGetRecord(), hdrLoad(), packageBinaries(), readPackageHeaders(), rpmReadHeaders(), and writeRPM().

void rpmBuildFileList ( Header h,
const char *** fileListPtr,
int * fileCountPtr )
 

Retrieve file names from header.

The representation of file names in package headers changed in rpm-4.0. Originally, file names were stored as an array of paths. In rpm-4.0, file names are stored as separate arrays of dirname's and basename's, with a dirname index to associate the correct dirname with each basname. This function is used to retrieve file names independent of how the file names are represented in the package header.

Parameters:
h   header
Return values:
fileListPtr   address of array of file names
fileCountPtr   address of number of files

Definition at line 528 of file misc.c.

Referenced by assembleFileList(), filenamesTag(), fssizesTag(), mungeFilelist(), rpmHeaderGetEntry(), and verifyHeader().

int rpmGlob ( const char * patterns,
int * argcPtr,
const char *** argvPtr )
 

Definition at line 577 of file misc.c.

Referenced by processBinaryFile(), rpmInstall(), and rpmQueryVerify().

int rpmHeaderGetEntry ( Header h,
int_32 tag,
int_32 * type,
void ** p,
int_32 * c )
 

Retrieve tag info from header.

This is a "dressed" entry to headerGetEntry to do: 1) DIRNAME/BASENAME/DIRINDICES -> FILENAMES tag conversions. 2) i18n lookaside (if enabled).

Parameters:
h   header
tag   tag
Return values:
type   address of tag value data type
p   address of pointer to tag value(s)
c   address of number of values
Returns:
0 on success, 1 on bad magic, 2 on error

Definition at line 686 of file misc.c.

Referenced by rpmPackageGetEntry().

int rpmMkpath ( const char * path,
mode_t mode,
uid_t uid,
gid_t gid ) [static]
 

Definition at line 218 of file misc.c.

Referenced by makeTempFile().

int rpmPackageGetEntry ( void * leadp,
Header sigs,
Header h,
int_32 tag,
int_32 * type,
void ** p,
int_32 * c )
 

Retrieve tag info from header.

Yet Another "dressed" entry to headerGetEntry in order to unify signature/header tag retrieval.

Deprecated:
Signature tags are now duplicated into header when installed.
Todo:
Eliminate from API.
Parameters:
leadp   rpm lead
h   header
sigs   signatures
tag   tag
Return values:
type   address of tag value data type
p   address of pointer to tag value(s)
c   address of number of values
Returns:
0 on success, 1 on bad magic, 2 on error

Definition at line 737 of file misc.c.

Referenced by hdrSubscript().

int rpmfileexists ( const char * filespec )
 

Definition at line 63 of file misc.c.

Referenced by rpmdbMoveDatabase().

int rpmvercmp ( const char * one,
const char * two )
 

Definition at line 96 of file misc.c.

Referenced by labelCompare(), rpmRangesOverlap(), rpmVerifyFile(), and rpmVersionCompare().

char ** splitString ( const char * str,
int length,
char sep )
 

Definition at line 21 of file misc.c.

Referenced by parsePrep(), processPackageFiles(), processSourceFiles(), and skipFiles().


Variable Documentation

char * RPMVERSION = VERSION
 

Definition at line 19 of file misc.c.


Generated at Sun Apr 8 18:43:03 2001 for rpm by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000