The OpenNET Project / Index page

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

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

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

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

    NAME

    lib/psm.h - Package state machine to handle a package from a transaction set. 
     
    

    SYNOPSIS


    #include 'fsm.h'
    #include 'depends.h'
     

    Data Structures


    struct psm_s

    struct sharedFileInfo

    struct transactionFileInfo_s
     

    Defines


    #define TFIMAGIC 0x09697923

    #define PSM_VERBOSE 0x8000

    #define PSM_INTERNAL 0x4000

    #define PSM_SYSCALL 0x2000

    #define PSM_DEAD 0x1000

    #define _fv(_a) ((_a) | PSM_VERBOSE)

    #define _fi(_a) ((_a) | PSM_INTERNAL)

    #define _fs(_a) ((_a) | (PSM_INTERNAL | PSM_SYSCALL))

    #define _fd(_a) ((_a) | (PSM_INTERNAL | PSM_DEAD))
     

    Typedefs


    typedef enum pkgStage_e pkgStage
     

    Enumerations


    enum pkgStage_e { PSM_UNKNOWN = 0, PSM_INIT = 1, PSM_PRE = 2, PSM_PROCESS = 3, PSM_POST = 4, PSM_UNDO = 5, PSM_FINI = 6, PSM_PKGINSTALL = 7, PSM_PKGERASE = 8, PSM_PKGCOMMIT = 10, PSM_PKGSAVE = 12, PSM_CREATE = 17, PSM_NOTIFY = 22, PSM_DESTROY = 23, PSM_COMMIT = 25, PSM_CHROOT_IN = 51, PSM_CHROOT_OUT = 52, PSM_SCRIPT = 53, PSM_TRIGGERS = 54, PSM_IMMED_TRIGGERS = 55, PSM_RPMIO_FLAGS = 56, PSM_RPMDB_LOAD = 97, PSM_RPMDB_ADD = 98, PSM_RPMDB_REMOVE = 99 }
     

    Functions


    void loadFi (Header h, TFI_t fi)
    Load data from header into transaction file element info.
    void freeFi (TFI_t fi)
    Destroy transaction element file info.
    const char *const fiTypeString (TFI_t fi)
    Return formatted string representation of package disposition.
    int psmStage (PSM_t psm, pkgStage stage)
    Package state machine driver.  

    DETAILED DESCRIPTION

    Package state machine to handle a package from a transaction set.

    Definition in file psm.h.  

    DEFINE DOCUMENTATION

     

    #define _fd(_a) ((_a) | (PSM_INTERNAL | PSM_DEAD))

    Definition at line 119 of file psm.h.  

    #define _fi(_a) ((_a) | PSM_INTERNAL)

    Definition at line 117 of file psm.h.  

    #define _fs(_a) ((_a) | (PSM_INTERNAL | PSM_SYSCALL))

    Definition at line 118 of file psm.h.  

    #define _fv(_a) ((_a) | PSM_VERBOSE)

    Definition at line 116 of file psm.h.  

    #define PSM_DEAD 0x1000

    Definition at line 115 of file psm.h.  

    #define PSM_INTERNAL 0x4000

    Definition at line 113 of file psm.h.  

    #define PSM_SYSCALL 0x2000

    Definition at line 114 of file psm.h.  

    #define PSM_VERBOSE 0x8000

    Definition at line 112 of file psm.h.  

    #define TFIMAGIC 0x09697923

    Definition at line 94 of file psm.h.

    Referenced by rpmRunTransactions(), and rpmVerifyScript().  

    TYPEDEF DOCUMENTATION

     

    typedef enum pkgStage_e pkgStage

    Referenced by pkgStageString(), and psmStage().  

    ENUMERATION TYPE DOCUMENTATION

     

    enum pkgStage_e

    Enumeration values:

    PSM_UNKNOWN
    PSM_INIT
    PSM_PRE
    PSM_PROCESS
    PSM_POST
    PSM_UNDO
    PSM_FINI
    PSM_PKGINSTALL
    PSM_PKGERASE
    PSM_PKGCOMMIT
    PSM_PKGSAVE
    PSM_CREATE
    PSM_NOTIFY
    PSM_DESTROY
    PSM_COMMIT
    PSM_CHROOT_IN
    PSM_CHROOT_OUT
    PSM_SCRIPT
    PSM_TRIGGERS
    PSM_IMMED_TRIGGERS
    PSM_RPMIO_FLAGS
    PSM_RPMDB_LOAD
    PSM_RPMDB_ADD
    PSM_RPMDB_REMOVE

    Definition at line 120 of file psm.h.  

    FUNCTION DOCUMENTATION

     

    const char* const fiTypeString (TFI_t fi)

    Return formatted string representation of package disposition.

    Parameters:

    a
    package dispostion

    Returns: formatted string

    Definition at line 235 of file psm.c.

    References transactionFileInfo_s::type.

    Referenced by fsmStage().  

    void freeFi (TFI_t fi)

    Destroy transaction element file info.

    Parameters:

    fi
    transaction element file info

    Definition at line 188 of file psm.c.

    References _free(), transactionFileInfo_s::actions, transactionFileInfo_s::apath, transactionFileInfo_s::bnl, transactionFileInfo_s::dil, transactionFileInfo_s::dnl, transactionFileInfo_s::fflags, transactionFileInfo_s::fgids, transactionFileInfo_s::fgroup, transactionFileInfo_s::flangs, transactionFileInfo_s::flinks, transactionFileInfo_s::fmapflags, transactionFileInfo_s::fmd5s, transactionFileInfo_s::fmodes, freeFSM(), transactionFileInfo_s::fsizes, transactionFileInfo_s::fsm, transactionFileInfo_s::fstates, transactionFileInfo_s::fuids, transactionFileInfo_s::fuser, transactionFileInfo_s::h, headerFree(), transactionFileInfo_s::hfd, HFD_t, transactionFileInfo_s::name, transactionFileInfo_s::obnl, transactionFileInfo_s::odnl, transactionFileInfo_s::release, transactionFileInfo_s::replaced, transactionFileInfo_s::replacedSizes, transactionFileInfo_s::type, and transactionFileInfo_s::version.

    Referenced by freeFl(), freePackage(), freeSpec(), rpmInstallSourcePackage(), and rpmVerifyScript().  

    void loadFi (Header h, TFI_t fi)

    Load data from header into transaction file element info.

    Parameters:

    h
    header
    fi
    transaction element file info

    Definition at line 72 of file psm.c.

    References transactionFileInfo_s::action, transactionFileInfo_s::actions, transactionFileInfo_s::archiveSize, transactionFileInfo_s::bnl, transactionFileInfo_s::bnlmax, CPIO_ALL_HARDLINKS, CPIO_MAP_ABSOLUTE, CPIO_MAP_ADDDOT, CPIO_MAP_GID, CPIO_MAP_MODE, CPIO_MAP_PATH, CPIO_MAP_UID, transactionFileInfo_s::dc, transactionFileInfo_s::dil, transactionFileInfo_s::dnl, transactionFileInfo_s::dnlmax, transactionFileInfo_s::dperms, transactionFileInfo_s::epoch, FA_UNKNOWN, transactionFileInfo_s::fc, transactionFileInfo_s::fflags, transactionFileInfo_s::flags, transactionFileInfo_s::flangs, transactionFileInfo_s::flinks, transactionFileInfo_s::fmd5s, transactionFileInfo_s::fmodes, transactionFileInfo_s::fmtimes, transactionFileInfo_s::fperms, transactionFileInfo_s::frdevs, transactionFileInfo_s::fsizes, transactionFileInfo_s::fsm, transactionFileInfo_s::fstates, transactionFileInfo_s::h, transactionFileInfo_s::hae, headerFree(), headerLink(), transactionFileInfo_s::hfd, HFD_t, transactionFileInfo_s::hge, HGE_t, transactionFileInfo_s::hme, transactionFileInfo_s::hre, transactionFileInfo_s::mapflags, transactionFileInfo_s::name, newFSM(), transactionFileInfo_s::release, transactionFileInfo_s::replacedSizes, RPMTAG_ARCHIVESIZE, RPMTAG_BASENAMES, RPMTAG_DIRINDEXES, RPMTAG_DIRNAMES, RPMTAG_EPOCH, RPMTAG_FILEFLAGS, RPMTAG_FILELANGS, RPMTAG_FILELINKTOS, RPMTAG_FILEMD5S, RPMTAG_FILEMODES, RPMTAG_FILEMTIMES, RPMTAG_FILERDEVS, RPMTAG_FILESIZES, RPMTAG_FILESTATES, RPMTAG_NAME, RPMTAG_RELEASE, RPMTAG_VERSION, transactionFileInfo_s::type, uint_32, transactionFileInfo_s::version, xcalloc(), xmalloc(), and xstrdup().

    Referenced by genCpioListAndHeader(), rpmInstallSourcePackage(), rpmRunTransactions(), and rpmVerifyScript().  

    int psmStage (PSM_t psm, pkgStage stage)

    Package state machine driver.

    Todo:
     Packages w/o files never get a callback, hence don't get displayed on install with -v.  

    Definition at line 1354 of file psm.c.

    References _, _free(), transactionFileInfo_s::action, transactionFileInfo_s::actions, psm_s::amount, transactionFileInfo_s::ap, transactionFileInfo_s::apath, transactionFileInfo_s::archiveSize, rpmlead::archnum, buildOrigFileList(), psm_s::cfd, psm_s::chrootDone, rpmTransactionSet_s::chrootDone, psm_s::countCorrection, CPIO_MAP_GID, CPIO_MAP_MODE, CPIO_MAP_PATH, CPIO_MAP_UID, cpioStrerror(), rpmTransactionSet_s::currDir, rpmdb_s::db_chrootDone, transactionFileInfo_s::epoch, errno, FA_COPYOUT, psm_s::failedFile, transactionFileInfo_s::fc, Fclose(), availablePackage::fd, psm_s::fd, fdDup(), Fdopen(), Ferror(), Fflush(), transactionFileInfo_s::fgids, transactionFileInfo_s::fgroup, psm_s::fi, fileAction, Fileno(), transactionFileInfo_s::fmodes, Fopen(), transactionFileInfo_s::fsm, FSM_PKGBUILD, FSM_PKGCOMMIT, FSM_PKGERASE, FSM_PKGINSTALL, fsmSetup(), fsmTeardown(), transactionFileInfo_s::fstates, Fstrerror(), transactionFileInfo_s::fuids, transactionFileInfo_s::fuser, transactionFileInfo_s::gid, gnameToGid(), psm_s::goal, transactionFileInfo_s::h, HEADER_MAGIC_YES, headerAddEntry(), headerCopy(), headerCopyLoad(), headerFree(), headerFreeData(), headerFreeIterator(), headerGetEntry(), headerInitIterator(), headerIsEntry(), headerLink(), headerNew(), headerNextIterator(), headerRegenSigHeader(), headerSprintf(), headerWrite(), transactionFileInfo_s::hfd, HFD_t, transactionFileInfo_s::hge, HGE_t, transactionFileInfo_s::hme, HME_t, hPTR_t, rpmTransactionSet_s::id, int_32, availablePackage::key, rpmlead::major, transactionFileInfo_s::mapflags, markReplacedFiles(), mergeFiles(), psm_s::mi, rpmlead::minor, rpmlead::name, transactionFileInfo_s::name, rpmTransactionSet_s::notify, rpmTransactionSet_s::notifyData, psm_s::npkgs_installed, psm_s::oh, rpmlead::osnum, psm_s::pkgfn, pkgStage, pkgStageString(), psm_s::pkgURL, psm_s::progTag, PSM_CHROOT_IN, PSM_CHROOT_OUT, PSM_COMMIT, PSM_CREATE, PSM_DESTROY, PSM_FINI, PSM_IMMED_TRIGGERS, PSM_INIT, PSM_NOTIFY, PSM_PKGCOMMIT, PSM_PKGERASE, PSM_PKGINSTALL, PSM_PKGSAVE, PSM_POST, PSM_PRE, PSM_PROCESS, PSM_RPMDB_ADD, PSM_RPMDB_LOAD, PSM_RPMDB_REMOVE, PSM_RPMIO_FLAGS, PSM_SCRIPT, PSM_TRIGGERS, PSM_UNDO, PSM_UNKNOWN, psm_s::rc, transactionFileInfo_s::record, transactionFileInfo_s::release, rpmTransactionSet_s::rootDir, RPM_CHAR_TYPE, RPM_INT32_TYPE, rpmBuildFileList(), RPMCALLBACK_CPIO_ERROR, RPMCALLBACK_INST_PROGRESS, RPMCALLBACK_UNINST_START, RPMCALLBACK_UNINST_STOP, RPMCALLBACK_UNPACK_ERROR, rpmTransactionSet_s::rpmdb, rpmdbAdd(), rpmdbCountPackages(), rpmdbFreeIterator(), rpmdbGetIteratorOffset(), RPMDBI_PACKAGES, rpmdbInitIterator(), rpmdbNextIterator(), rpmdbRemove(), rpmdbSetIteratorRE(), RPMERR_CPIO, RPMERR_NOSPACE, RPMERR_SCRIPT, rpmError, RPMFILE_STATE_NORMAL, rpmFreeSignature(), rpmGenPath(), rpmGetArchInfo(), rpmGetOsInfo(), rpmGetPath(), psm_s::rpmio_flags, RPMLEAD_BINARY, RPMMESS_DEBUG, RPMMESS_VERBOSE, RPMMESS_WARNING, rpmMessage, RPMMIRE_DEFAULT, rpmRC, RPMRC_FAIL, RPMRC_OK, RPMSENSE_TRIGGERIN, RPMSENSE_TRIGGERPOSTUN, RPMSENSE_TRIGGERUN, RPMSIGTYPE_HEADERSIG, RPMTAG_DEFAULTPREFIX, RPMTAG_FILEGROUPNAME, RPMTAG_FILESTATES, RPMTAG_FILEUSERNAME, RPMTAG_HEADERIMAGE, RPMTAG_HEADERIMMUTABLE, RPMTAG_INSTALLTIME, RPMTAG_MULTILIBS, RPMTAG_NAME, RPMTAG_ORIGBASENAMES, RPMTAG_PAYLOADCOMPRESSOR, RPMTAG_POSTIN, RPMTAG_POSTINPROG, RPMTAG_POSTUN, RPMTAG_POSTUNPROG, RPMTAG_PREIN, RPMTAG_PREINPROG, RPMTAG_PREUN, RPMTAG_PREUNPROG, RPMTAG_RELEASE, RPMTAG_REMOVETID, RPMTAG_VERSION, RPMTRANS_FLAG_APPLYONLY, RPMTRANS_FLAG_JUSTDB, RPMTRANS_FLAG_MULTILIB, RPMTRANS_FLAG_NOPOST, RPMTRANS_FLAG_NOPOSTUN, RPMTRANS_FLAG_NOPRE, RPMTRANS_FLAG_NOPREUN, RPMTRANS_FLAG_NOTRIGGERIN, RPMTRANS_FLAG_NOTRIGGERPOSTUN, RPMTRANS_FLAG_NOTRIGGERPREIN, RPMTRANS_FLAG_NOTRIGGERUN, RPMTRANS_FLAG_PKGCOMMIT, RPMTRANS_FLAG_TEST, rpmWriteSignature(), runImmedTriggers(), runInstScript(), runTriggers(), psm_s::scriptArg, psm_s::scriptTag, psm_s::sense, rpmlead::signature_type, psm_s::stepName, stpcpy(), transactionFileInfo_s::striplen, tag2sln(), psm_s::total, rpmTransactionSet_s::transFlags, psm_s::ts, rpmlead::type, transactionFileInfo_s::uid, uint_32, unameToUid(), urlPath(), transactionFileInfo_s::version, psm_s::what, writeLead(), xcalloc(), and xmalloc().

    Referenced by rpmInstallSourcePackage(), rpmRunTransactions(), and rpmVerifyScript().  

    AUTHOR

    Generated automatically by Doxygen for rpm from the source code.


     

    Index

    NAME
    SYNOPSIS
    Data Structures
    Defines
    Typedefs
    Enumerations
    Functions
    DETAILED DESCRIPTION
    DEFINE DOCUMENTATION
    #define _fd(_a) ((_a) | (PSM_INTERNAL | PSM_DEAD))
    #define _fi(_a) ((_a) | PSM_INTERNAL)
    #define _fs(_a) ((_a) | (PSM_INTERNAL | PSM_SYSCALL))
    #define _fv(_a) ((_a) | PSM_VERBOSE)
    #define PSM_DEAD 0x1000
    #define PSM_INTERNAL 0x4000
    #define PSM_SYSCALL 0x2000
    #define PSM_VERBOSE 0x8000
    #define TFIMAGIC 0x09697923
    TYPEDEF DOCUMENTATION
    typedef enum pkgStage_e pkgStage
    ENUMERATION TYPE DOCUMENTATION
    enum pkgStage_e
    FUNCTION DOCUMENTATION
    const char* const fiTypeString (TFI_t fi)
    void freeFi (TFI_t fi)
    void loadFi (Header h, TFI_t fi)
    int psmStage (PSM_t psm, pkgStage stage)
    AUTHOR


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




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

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