The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

misc.c (3)
  • >> misc.c (3) ( Linux man: Библиотечные вызовы )
  •  

    NAME

    lib/misc.c -  
     
    

    SYNOPSIS


    #include 'system.h'
    #include 'rpmio_internal.h'
    #include 'rpmlib.h'
    #include 'rpmurl.h'
    #include 'rpmmacro.h'
    #include 'misc.h'
    #include 'debug.h'
     

    Functions


    char ** splitString (const char *str, int length, char sep)
    Split string into fields separated by a character.
    void freeSplitString (char **list)
    Free split string argv array.
    int doputenv (const char *str)
    Like the libc function, but malloc()'s the space needed.
    int dosetenv (const char *name, const char *value, int overwrite)
    Like the libc function, but malloc()'s the space needed.
    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)
    Return file handle for a temporaray file.
    char * currentDirectory (void)
    Return (malloc'd) current working directory.
    int dncmp (const void *a, const void *b)

    void compressFilelist (Header h)
    Convert absolute path tag to (dirname,basename,dirindex) tags.
    void doBuildFileList (Header h, const char ***fileListPtr, int *fileCountPtr, rpmTag baseNameTag, rpmTag dirNameTag, rpmTag dirIndexesTag)

    void expandFilelist (Header h)
    Convert (dirname,basename,dirindex) tags to absolute path tag.
    void rpmBuildFileList (Header h, const char ***fileListPtr, int *fileCountPtr)
    Retrieve file names from header.
    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.
    int rpmPackageGetEntry (void *leadp, Header sigs, Header h, int_32 tag, int_32 *type, void **p, int_32 *c)
    Retrieve tag info from header.
    void providePackageNVR (Header h)
    Retrofit a Provides: name = version-release dependency into legacy packages.
    int domd5 (const char *fn, unsigned char *digest, int asAscii)
    Calculate MD5 sum for file.  

    Variables


    int _debug = 0

    const char * RPMVERSION = VERSION

    int _noDirTokens = 0
     

    DETAILED DESCRIPTION

    Definition in file misc.c.  

    FUNCTION DOCUMENTATION

     

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

    Parameters:

    h
    header

    Definition at line 465 of file misc.c.

    References doBuildFileList(), RPMTAG_ORIGBASENAMES, RPMTAG_ORIGDIRINDEXES, and RPMTAG_ORIGDIRNAMES.

    Referenced by psmStage().  

    void compressFilelist (Header h)

    Convert absolute path tag to (dirname,basename,dirindex) tags.

    Parameters:

    h
    header

    Definition at line 298 of file misc.c.

    References alloca(), dncmp(), HAE_t, headerIsEntry(), HFD_t, HGE_t, HRE_t, int_32, RPM_INT32_TYPE, RPM_STRING_ARRAY_TYPE, RPMTAG_BASENAMES, RPMTAG_DIRINDEXES, RPMTAG_DIRNAMES, RPMTAG_OLDFILENAMES, and rpmTagType.

    Referenced by doGetRecord(), genCpioListAndHeader(), and readPackageHeaders().  

    char* currentDirectory (void)

    Return (malloc'd) current working directory.

    Returns: current working directory (malloc'ed)

    Definition at line 274 of file misc.c.

    References errno, xmalloc(), and xrealloc().

    Referenced by rpmRunTransactions().  

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

    Definition at line 291 of file misc.c.

    Referenced by compressFilelist().  

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

    Definition at line 389 of file misc.c.

    References _free(), HFD_t, HGE_t, rpmTag, rpmTagType, stpcpy(), and xmalloc().

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

    int domd5 (const char * fn, unsigned char * digest, int asAscii)

    Calculate MD5 sum for file.

    Todo: Eliminate, use beecrypt instead.

    Parameters:

    fn
    file name

    Return values:

    digest
    address of md5sum

    Parameters:

    asAscii
    return md5sum as ascii string?

    Returns: 0 on success, 1 on error

    Definition at line 791 of file misc.c.

    References _free(), Fclose(), fdFiniDigest(), fdInitDigest(), Ferror(), Fopen(), Fread(), and PGPHASHALGO_MD5.

    Referenced by decideFileFate(), genCpioListAndHeader(), mdbinfile(), mdfile(), and rpmVerifyFile().  

    int doputenv (const char * str)

    Like the libc function, but malloc()'s the space needed.

    Parameters:

    str

    Returns: 0 on success

    Definition at line 98 of file misc.c.

    References xmalloc().

    Referenced by runScript().  

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

    Like the libc function, but malloc()'s the space needed.

    Parameters:

    name
    variable name
    value
    variable value
    overwrite
    should an existing variable be changed?

    Returns: 0 on success

    Definition at line 108 of file misc.c.

    References getenv(), stpcpy(), and xmalloc().

    Referenced by checkPassPhrase(), do_verifyGPGSignature(), makeGPGSignature(), makePGPSignature(), runScript(), and verifyPGPSignature().  

    void expandFilelist (Header h)

    Convert (dirname,basename,dirindex) tags to absolute path tag.

    Parameters:

    h
    header

    Definition at line 436 of file misc.c.

    References _free(), doBuildFileList(), HAE_t, headerIsEntry(), HRE_t, RPM_STRING_ARRAY_TYPE, RPMTAG_BASENAMES, RPMTAG_DIRINDEXES, RPMTAG_DIRNAMES, and RPMTAG_OLDFILENAMES.

    Referenced by dbiUpdateRecord(), genCpioListAndHeader(), and rpmdbAdd().  

    void freeSplitString (char ** list)

    Free split string argv array.

    Parameters:

    list
    argv array

    Definition at line 59 of file misc.c.

    References _free().

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

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

    Definition at line 503 of file misc.c.

    Referenced by rpmGlob().  

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

    Return file handle for a temporaray file.

    A unique temporaray file path will be generated using rpmGenPath(prefix, '%{_tmppath}/', 'rpm-tmp.XXXXX') where 'XXXXXX' is filled in using rand(3). The file is opened, and the link count and (dev,ino) location are verified after opening. The file name and the open file handle are returned.

    Parameters:

    prefix
    leading part of temp file path

    Return values:

    fnptr
    temp file name (or NULL)
    fdptr
    temp file handle

    Returns: 0 on success

    Definition at line 170 of file misc.c.

    References _, _free(), errno, Fclose(), Ferror(), Fileno(), Fopen(), RPMERR_SCRIPT, rpmError, rpmGenPath(), rpmMkpath(), S_ISLNK, URL_IS_DASH, URL_IS_HTTP, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

    Referenced by doScript(), generateDepends(), manageFile(), runScript(), verifyGPGSignature(), verifyPGPSignature(), and writeRPM().  

    int myGlobPatternP (const char * patternURL)

    Definition at line 476 of file misc.c.

    References urlPath().

    Referenced by processBinaryFile(), and rpmGlob().  

    void providePackageNVR (Header h)

    Retrofit a Provides: name = version-release dependency into legacy packages.

    Parameters:

    h
    header

    Definition at line 712 of file misc.c.

    References alloca(), headerAddOrAppendEntry(), headerNVR(), HFD_t, HGE_t, int_32, RPM_INT32_TYPE, RPM_STRING_ARRAY_TYPE, RPMSENSE_ANY, RPMSENSE_EQUAL, RPMTAG_EPOCH, RPMTAG_PROVIDEFLAGS, RPMTAG_PROVIDENAME, RPMTAG_PROVIDEVERSION, rpmTagType, and stpcpy().

    Referenced by doGetRecord(), packageBinaries(), readPackageHeaders(), 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 459 of file misc.c.

    References doBuildFileList(), RPMTAG_BASENAMES, RPMTAG_DIRINDEXES, and RPMTAG_DIRNAMES.

    Referenced by filenamesTag(), fssizesTag(), psmStage(), rpmHeaderGetEntry(), rpmInstallSourcePackage(), and verifyHeader().  

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

    Definition at line 508 of file misc.c.

    References _free(), Glob(), glob_error(), Globfree(), myGlobPatternP(), URL_IS_DASH, URL_IS_FTP, URL_IS_HTTP, URL_IS_PATH, URL_IS_UNKNOWN, urlPath(), xmalloc(), xrealloc(), and xstrdup().

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

    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 627 of file misc.c.

    References headerGetEntry(), headerSprintf(), int_32, RPM_STRING_ARRAY_TYPE, RPM_STRING_TYPE, rpmBuildFileList(), RPMTAG_DESCRIPTION, RPMTAG_GROUP, RPMTAG_OLDFILENAMES, RPMTAG_SUMMARY, stpcpy(), and tagName().

    Referenced by rpmPackageGetEntry().  

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

    Definition at line 120 of file misc.c.

    References alloca(), errno, RPMMESS_WARNING, rpmMessage, and stpcpy().

    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 678 of file misc.c.

    References headerGetEntry(), headerIsEntry(), int_32, rpmHeaderGetEntry(), RPMSIGTAG_GPG, RPMSIGTAG_LEMD5_1, RPMSIGTAG_LEMD5_2, RPMSIGTAG_MD5, RPMSIGTAG_PGP, RPMSIGTAG_SIZE, RPMTAG_SIGGPG, RPMTAG_SIGLEMD5_1, RPMTAG_SIGLEMD5_2, RPMTAG_SIGMD5, RPMTAG_SIGPGP, RPMTAG_SIGPGP5, and RPMTAG_SIGSIZE.  

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

    Split string into fields separated by a character.

    Parameters:

    str
    string
    length
    length of string
    sep
    separator character

    Returns: (malloc'd) argv array

    Definition at line 23 of file misc.c.

    References xmalloc().

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

    VARIABLE DOCUMENTATION

     

    int _debug = 0 [static]

    Definition at line 7 of file misc.c.  

    const char* RPMVERSION = VERSION

    Definition at line 10 of file misc.c.  

    AUTHOR

    Generated automatically by Doxygen for rpm from the source code.


     

    Index

    NAME
    SYNOPSIS
    Functions
    Variables
    DETAILED DESCRIPTION
    FUNCTION DOCUMENTATION
    void buildOrigFileList (Header h, const char *** fileListPtr, int * fileCountPtr)
    void compressFilelist (Header h)
    char* currentDirectory (void)
    int dncmp (const void * a, const void * b) [static]
    void doBuildFileList (Header h, const char *** fileListPtr, int * fileCountPtr, rpmTag baseNameTag, rpmTag dirNameTag, rpmTag dirIndexesTag) [static]
    int domd5 (const char * fn, unsigned char * digest, int asAscii)
    int doputenv (const char * str)
    int dosetenv (const char * name, const char * value, int overwrite)
    void expandFilelist (Header h)
    void freeSplitString (char ** list)
    int glob_error (const char * foo, int bar) [static]
    int makeTempFile (const char * prefix, const char ** fnptr, FD_t * fdptr)
    int myGlobPatternP (const char * patternURL)
    void providePackageNVR (Header h)
    void rpmBuildFileList (Header h, const char *** fileListPtr, int * fileCountPtr)
    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)
    int rpmMkpath (const char * path, mode_t mode, uid_t uid, gid_t gid) [static]
    int rpmPackageGetEntry (void * leadp, Header sigs, Header h, int_32 tag, int_32 * type, void ** p, int_32 * c)
    char** splitString (const char * str, int length, char sep)
    VARIABLE DOCUMENTATION
    int _debug = 0 [static]
    const char* RPMVERSION = VERSION
    AUTHOR


    Поиск по тексту MAN-ов: 




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру