dpkg 1.22.7-3-g89f48
Loading...
Searching...
No Matches
Enumerations | Functions
db-fsys-files.c File Reference

(4682652aa)

#include <config.h>
#include <compat.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <errno.h>
#include <string.h>
#include <pwd.h>
#include <grp.h>
#include <fcntl.h>
#include <unistd.h>
#include <stdlib.h>
#include <dpkg/i18n.h>
#include <dpkg/dpkg.h>
#include <dpkg/dpkg-db.h>
#include <dpkg/path.h>
#include <dpkg/dir.h>
#include <dpkg/fdio.h>
#include <dpkg/pkg-array.h>
#include <dpkg/pkg-files.h>
#include <dpkg/progress.h>
#include <dpkg/db-ctrl.h>
#include <dpkg/db-fsys.h>
Include dependency graph for db-fsys-files.c:

Enumerations

enum  pkg_filesdb_load_status { PKG_FILESDB_LOAD_NONE = 0 , PKG_FILESDB_LOAD_INPROGRESS = 1 , PKG_FILESDB_LOAD_DONE = 2 }
 

Functions

void note_must_reread_files_inpackage (struct pkginfo *pkg)
 
void ensure_packagefiles_available (struct pkginfo *pkg)
 Load the list of files in this package into memory, or update the list if it is there but stale.
 
void ensure_allinstfiles_available (void)
 
void ensure_allinstfiles_available_quiet (void)
 
void write_filelist_except (struct pkginfo *pkg, struct pkgbin *pkgbin, struct fsys_namenode_list *list, enum fsys_namenode_flags mask)
 

Enumeration Type Documentation

◆ pkg_filesdb_load_status

Enumerator
PKG_FILESDB_LOAD_NONE 
PKG_FILESDB_LOAD_INPROGRESS 
PKG_FILESDB_LOAD_DONE 

Function Documentation

◆ ensure_allinstfiles_available()

void ensure_allinstfiles_available ( void  )

References _, ensure_packagefiles_available(), fsys_hash_entries(), max, pkg_array::n_pkgs, P_, pkg_array_destroy(), pkg_array_init_from_hash(), PKG_FILESDB_LOAD_DONE, PKG_FILESDB_LOAD_INPROGRESS, pkg_hash_count_pkg(), pkg_array::pkgs, progress_done(), progress_init(), and progress_step().

Referenced by deferred_remove(), ensure_allinstfiles_available_quiet(), and process_archive().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ensure_allinstfiles_available_quiet()

void ensure_allinstfiles_available_quiet ( void  )

References ensure_allinstfiles_available(), and PKG_FILESDB_LOAD_DONE.

Here is the call graph for this function:

◆ ensure_packagefiles_available()

void ensure_packagefiles_available ( struct pkginfo pkg)

Load the list of files in this package into memory, or update the list if it is there but stale.

References _, varbuf::buf, pkginfo::configversion, DPKG_ERROR_INIT, dpkg_error_print(), dpkg_version_is_informative(), file_slurp(), pkginfo::files, pkginfo::files_list_valid, pkginfo::installed, LISTFILE, onerr_abort, pkg_files_blank(), pkg_infodb_get_file(), pkg_name(), PKG_STAT_CONFIGFILES, PKG_STAT_NOTINSTALLED, pnaw_nonambig, pkginfo::status, dpkg_error::syserrno, dpkg_error::type, varbuf::used, varbuf_destroy(), VARBUF_INIT, and warning().

Referenced by ensure_allinstfiles_available().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ note_must_reread_files_inpackage()

void note_must_reread_files_inpackage ( struct pkginfo pkg)

References pkginfo::files_list_valid.

Referenced by write_filelist_except().

Here is the caller graph for this function:

◆ write_filelist_except()

void write_filelist_except ( struct pkginfo pkg,
struct pkgbin pkgbin,
struct fsys_namenode_list list,
enum fsys_namenode_flags  mask 
)

References atomic_file_close(), atomic_file_commit(), atomic_file_free(), atomic_file_new(), atomic_file_open(), atomic_file_sync(), dir_sync_path(), fsys_namenode::flags, LISTFILE, fsys_namenode::name, fsys_namenode_list::namenode, fsys_namenode_list::next, note_must_reread_files_inpackage(), pkg_infodb_get_dir(), and pkg_infodb_get_file().

Referenced by process_archive().

Here is the call graph for this function:
Here is the caller graph for this function: