mirror of
				https://gitlab.archlinux.org/pacman/pacman.git
				synced 2025-11-04 01:14:41 +01:00 
			
		
		
		
	Compare commits
	
		
			1 Commits
		
	
	
		
			morganamil
			...
			morganamil
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					8b35654474 | 
@@ -240,7 +240,7 @@ link:translation-help.html[translation-help].
 | 
			
		||||
Bugs
 | 
			
		||||
----
 | 
			
		||||
If you find bugs (which is quite likely), please email them to the pacman-dev
 | 
			
		||||
mailing last at mailto:pacman-dev@lists.archlinux.org[] with specific information
 | 
			
		||||
mailing last at mailto:pacman-dev@archlinux.org[] with specific information
 | 
			
		||||
such as your command-line, the nature of the bug, and even the package database
 | 
			
		||||
if it helps.
 | 
			
		||||
 | 
			
		||||
@@ -251,6 +251,6 @@ bugs under the Pacman project.
 | 
			
		||||
Copyright
 | 
			
		||||
---------
 | 
			
		||||
pacman is Copyright (C) 2006-2021 Pacman Development Team
 | 
			
		||||
<pacman-dev@lists.archlinux.org> and Copyright (C) 2002-2006 Judd Vinet
 | 
			
		||||
<pacman-dev@archlinux.org> and Copyright (C) 2002-2006 Judd Vinet
 | 
			
		||||
<jvinet@zeroflux.org> and is licensed through the GNU General Public License,
 | 
			
		||||
version 2 or later.
 | 
			
		||||
 
 | 
			
		||||
@@ -210,11 +210,6 @@ Transaction Options (apply to '-S', '-R' and '-U')
 | 
			
		||||
	dependencies are installed and there are no package conflicts in the
 | 
			
		||||
	system. Specify this option twice to skip all dependency checks.
 | 
			
		||||
 | 
			
		||||
*-n, \--nosave*::
 | 
			
		||||
	Instructs pacman to ignore file backup designations. Normally, when a
 | 
			
		||||
	file is removed from the system, the database is checked to see if the
 | 
			
		||||
	file should be renamed with a '.pacsave' extension.
 | 
			
		||||
 | 
			
		||||
*\--assume-installed* <package=version>::
 | 
			
		||||
	Add a virtual package "package" with version "version" to the transaction
 | 
			
		||||
	to satisfy dependencies. This allows to disable specific dependency checks
 | 
			
		||||
@@ -261,12 +256,6 @@ Upgrade Options (apply to '-S' and '-U')[[UO]]
 | 
			
		||||
	as explicitly installed so it will not be removed by the '\--recursive'
 | 
			
		||||
	remove operation.
 | 
			
		||||
 | 
			
		||||
*\--note*::
 | 
			
		||||
	Add an install note to packages. This will only apply to targets explicitly
 | 
			
		||||
	listed and not their dependencies. The note can be used to keep track of why
 | 
			
		||||
	a package was installed or any other info of note. The note can later be
 | 
			
		||||
	edited or removed with '\--D \--note' or '\--D \--rmnote' respectively.
 | 
			
		||||
 | 
			
		||||
*\--ignore* <package>::
 | 
			
		||||
	Directs pacman to ignore upgrades of package even if there is one
 | 
			
		||||
	available. Multiple packages can be specified by separating them
 | 
			
		||||
@@ -280,9 +269,6 @@ Upgrade Options (apply to '-S' and '-U')[[UO]]
 | 
			
		||||
*\--needed*::
 | 
			
		||||
	Do not reinstall the targets that are already up-to-date.
 | 
			
		||||
 | 
			
		||||
*\--nokeep*::
 | 
			
		||||
	Overwrite backup files when installing packages.
 | 
			
		||||
 | 
			
		||||
*\--overwrite* <glob>::
 | 
			
		||||
	Bypass file conflict checks and overwrite conflicting files. If the
 | 
			
		||||
	package that is about to be installed contains files that are already
 | 
			
		||||
@@ -378,9 +364,6 @@ Query Options (apply to '-Q')[[QO]]
 | 
			
		||||
	replacements are not checked here. This option works best if the sync
 | 
			
		||||
	database is refreshed using '-Sy'.
 | 
			
		||||
 | 
			
		||||
*-w, \--backup*::
 | 
			
		||||
	List all modified backup files owened by a given package. Multiple packages can
 | 
			
		||||
	be specified on the command line. Pass twice to print all backup files.
 | 
			
		||||
 | 
			
		||||
Remove Options (apply to '-R')[[RO]]
 | 
			
		||||
------------------------------------
 | 
			
		||||
@@ -389,6 +372,11 @@ Remove Options (apply to '-R')[[RO]]
 | 
			
		||||
	or more target packages. This operation is recursive and must be used
 | 
			
		||||
	with care, since it can remove many potentially needed packages.
 | 
			
		||||
 | 
			
		||||
*-n, \--nosave*::
 | 
			
		||||
	Instructs pacman to ignore file backup designations. Normally, when a
 | 
			
		||||
	file is removed from the system, the database is checked to see if the
 | 
			
		||||
	file should be renamed with a '.pacsave' extension.
 | 
			
		||||
 | 
			
		||||
*-s, \--recursive*::
 | 
			
		||||
	Remove each target specified including all of their dependencies, provided
 | 
			
		||||
	that (A) they are not required by other packages; and (B) they were not
 | 
			
		||||
@@ -480,13 +468,6 @@ Database Options (apply to '-D')[[QO]]
 | 
			
		||||
	package installed even when it was initially installed as a dependency
 | 
			
		||||
	of another package.
 | 
			
		||||
 | 
			
		||||
*\--note*::
 | 
			
		||||
	Add or edit a package's install note. The note can be used to keep track of why
 | 
			
		||||
	a package was installed or any other info of note.
 | 
			
		||||
 | 
			
		||||
*\--rmnote*::
 | 
			
		||||
	Remove a package's install note.
 | 
			
		||||
 | 
			
		||||
*-k, \--check*::
 | 
			
		||||
	Check the local package database is internally consistent. This will
 | 
			
		||||
	check all required files are present and that installed packages have
 | 
			
		||||
 
 | 
			
		||||
@@ -55,7 +55,7 @@ Pre-release Updates
 | 
			
		||||
~~~~~~~~~~~~~~~~~~~
 | 
			
		||||
 | 
			
		||||
A week or two before each release, the codebase will go into a string freeze
 | 
			
		||||
and an email will be sent to the mailto:pacman-dev@lists.archlinux.org[pacman-dev]
 | 
			
		||||
and an email will be sent to the mailto:pacman-dev@archlinux.org[pacman-dev]
 | 
			
		||||
mailing list asking for translations. This email will have a prefix of
 | 
			
		||||
*[translation]* for anyone looking to set up an email filter.
 | 
			
		||||
 | 
			
		||||
@@ -150,4 +150,4 @@ There are currently no efforts underway to include translated manual pages in
 | 
			
		||||
the pacman codebase. However, this is not to say translations are unwelcome. If
 | 
			
		||||
someone has experience with i18n man pages and how to best include them with our
 | 
			
		||||
source, please contact the pacman-dev mailing list at
 | 
			
		||||
mailto:pacman-dev@lists.archlinux.org[].
 | 
			
		||||
mailto:pacman-dev@archlinux.org[].
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  add.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
@@ -431,22 +431,8 @@ static int commit_single_pkg(alpm_handle_t *handle, alpm_pkg_t *newpkg,
 | 
			
		||||
 | 
			
		||||
	ASSERT(trans != NULL, return -1);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
	if(_alpm_db_get_pkgfromcache(db, newpkg->name)) {
 | 
			
		||||
			oldpkg = newpkg->oldpkg;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/* set note on package only if it was explicitly added to transaction */
 | 
			
		||||
	if(trans->note && newpkg->reason == ALPM_PKG_REASON_EXPLICIT) {
 | 
			
		||||
		STRDUP(newpkg->note, trans->note,
 | 
			
		||||
				RET_ERR(handle, ALPM_ERR_MEMORY, -1));
 | 
			
		||||
	} else if(oldpkg && oldpkg->note) {
 | 
			
		||||
		STRDUP(newpkg->note,oldpkg->note,
 | 
			
		||||
				RET_ERR(handle, ALPM_ERR_MEMORY, -1));
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if(oldpkg) {
 | 
			
		||||
	/* see if this is an upgrade. if so, remove the old package first */
 | 
			
		||||
	if(_alpm_db_get_pkgfromcache(db, newpkg->name) && (oldpkg = newpkg->oldpkg)) {
 | 
			
		||||
		int cmp = _alpm_pkg_compare_versions(newpkg, oldpkg);
 | 
			
		||||
		if(cmp < 0) {
 | 
			
		||||
			log_msg = "downgrading";
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  add.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  alpm.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 * alpm.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
 | 
			
		||||
@@ -101,11 +101,6 @@ typedef struct _alpm_handle_t alpm_handle_t;
 | 
			
		||||
typedef struct _alpm_db_t alpm_db_t;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/** A Database file iterator
 | 
			
		||||
 * @ingroup libalpm_databases
 | 
			
		||||
 */
 | 
			
		||||
typedef struct __alpm_db_files_t alpm_db_files_t;
 | 
			
		||||
 | 
			
		||||
/** A package.
 | 
			
		||||
 *
 | 
			
		||||
 * A package can be loaded from disk via \link alpm_pkg_load \endlink or retrieved from a database.
 | 
			
		||||
@@ -163,9 +158,6 @@ typedef struct _alpm_backup_t {
 | 
			
		||||
 */
 | 
			
		||||
alpm_file_t *alpm_filelist_contains(alpm_filelist_t *filelist, const char *path);
 | 
			
		||||
 | 
			
		||||
/** Frees a file list */
 | 
			
		||||
void  alpm_filelist_free(alpm_filelist_t *files);
 | 
			
		||||
 | 
			
		||||
/* End of libalpm_files */
 | 
			
		||||
/** @} */
 | 
			
		||||
 | 
			
		||||
@@ -1289,12 +1281,6 @@ int alpm_unregister_all_syncdbs(alpm_handle_t *handle);
 | 
			
		||||
 */
 | 
			
		||||
int alpm_db_unregister(alpm_db_t *db);
 | 
			
		||||
 | 
			
		||||
/** Get the handle of a package database.
 | 
			
		||||
 * @param db pointer to the package database
 | 
			
		||||
 * @return the alpm handle that the package database belongs to
 | 
			
		||||
 */
 | 
			
		||||
alpm_handle_t *alpm_db_get_handle(alpm_db_t *db);
 | 
			
		||||
 | 
			
		||||
/** Get the name of a package database.
 | 
			
		||||
 * @param db pointer to the package database
 | 
			
		||||
 * @return the name of the package database, NULL on error
 | 
			
		||||
@@ -1458,42 +1444,6 @@ int alpm_db_get_usage(alpm_db_t *db, int *usage);
 | 
			
		||||
/* End of usage accessors */
 | 
			
		||||
/** @} */
 | 
			
		||||
 | 
			
		||||
/** @name File iterators
 | 
			
		||||
 * @{
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
/** Opens a handle to the db files iterator.
 | 
			
		||||
 * @param db the db files to iterate over
 | 
			
		||||
 * @return handle to the iterator
 | 
			
		||||
 */
 | 
			
		||||
alpm_db_files_t *alpm_db_files_open(alpm_db_t *db);
 | 
			
		||||
 | 
			
		||||
/** Goes to the next package.
 | 
			
		||||
 * @param files handle to the file iterator
 | 
			
		||||
 * @param pkgname stores the pkgname of the current package
 | 
			
		||||
 * @return 0 on success, 1 if end of iterator, -1 on error
 | 
			
		||||
 */
 | 
			
		||||
int alpm_db_files_next(alpm_db_files_t *files, char** pkgname);
 | 
			
		||||
 | 
			
		||||
/** Loads the files for a package into a file list.
 | 
			
		||||
 *
 | 
			
		||||
 * This extends the file list as needed, reusing the memory alloced.
 | 
			
		||||
 * You can reuse the same file list for calls to this function but
 | 
			
		||||
 * the list should be freed with \link alpm_filelist_free alpm_filelist_free \endlink
 | 
			
		||||
 * after use.
 | 
			
		||||
 * @param files handle to the file iterator
 | 
			
		||||
 * @param filelist the filelist to load files into
 | 
			
		||||
 * @return 0 on success, -1 on error
 | 
			
		||||
 */
 | 
			
		||||
int alpm_db_files_load(alpm_db_files_t *files, alpm_filelist_t *filelist);
 | 
			
		||||
 | 
			
		||||
/** Close the db file iterator
 | 
			
		||||
 * @param files handle to the file iterator
 | 
			
		||||
 */
 | 
			
		||||
void alpm_db_files_close(alpm_db_files_t *files);
 | 
			
		||||
 | 
			
		||||
/* End of file iterators */
 | 
			
		||||
/** @} */
 | 
			
		||||
 | 
			
		||||
/* End of libalpm_databases */
 | 
			
		||||
/** @} */
 | 
			
		||||
@@ -2436,12 +2386,6 @@ int alpm_pkg_should_ignore(alpm_handle_t *handle, alpm_pkg_t *pkg);
 | 
			
		||||
 * @{
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
/** Gets the handle of a package
 | 
			
		||||
 * @param pkg a pointer to package
 | 
			
		||||
 * @return the alpm handle that the package belongs to
 | 
			
		||||
 */
 | 
			
		||||
alpm_handle_t *alpm_pkg_get_handle(alpm_pkg_t *pkg);
 | 
			
		||||
 | 
			
		||||
/** Gets the name of the file from which the package was loaded.
 | 
			
		||||
 * @param pkg a pointer to package
 | 
			
		||||
 * @return a reference to an internal string
 | 
			
		||||
@@ -2485,12 +2429,6 @@ const char *alpm_pkg_get_desc(alpm_pkg_t *pkg);
 | 
			
		||||
 */
 | 
			
		||||
const char *alpm_pkg_get_url(alpm_pkg_t *pkg);
 | 
			
		||||
 | 
			
		||||
/** Returns the package note.
 | 
			
		||||
 * @param pkg a pointer to package
 | 
			
		||||
 * @return a reference to an internal string
 | 
			
		||||
 */
 | 
			
		||||
char *alpm_pkg_get_note(alpm_pkg_t *pkg);
 | 
			
		||||
 | 
			
		||||
/** Returns the build timestamp of the package.
 | 
			
		||||
 * @param pkg a pointer to package
 | 
			
		||||
 * @return the timestamp of the build time
 | 
			
		||||
@@ -2669,15 +2607,6 @@ off_t alpm_pkg_download_size(alpm_pkg_t *newpkg);
 | 
			
		||||
 */
 | 
			
		||||
int alpm_pkg_set_reason(alpm_pkg_t *pkg, alpm_pkgreason_t reason);
 | 
			
		||||
 | 
			
		||||
/** Set install note for a package in the local database.
 | 
			
		||||
 * The provided package object must be from the local database or this method
 | 
			
		||||
 * will fail. The write to the local database is performed immediately.
 | 
			
		||||
 * @param pkg the package to edit
 | 
			
		||||
 * @param note the new install note, null to remove a note
 | 
			
		||||
 * @return 0 on success, -1 on error (pm_errno is set accordingly)
 | 
			
		||||
 */
 | 
			
		||||
int alpm_pkg_set_note(alpm_pkg_t *pkg, char *note);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* End of libalpm_pkg_t accessors */
 | 
			
		||||
/** @} */
 | 
			
		||||
@@ -2749,6 +2678,7 @@ int alpm_pkg_mtree_close(const alpm_pkg_t *pkg, struct archive *archive);
 | 
			
		||||
/* End of mtree accessors */
 | 
			
		||||
/** @} */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* End of libalpm_packages */
 | 
			
		||||
/** @} */
 | 
			
		||||
 | 
			
		||||
@@ -2774,8 +2704,7 @@ int alpm_pkg_mtree_close(const alpm_pkg_t *pkg, struct archive *archive);
 | 
			
		||||
typedef enum _alpm_transflag_t {
 | 
			
		||||
	/** Ignore dependency checks. */
 | 
			
		||||
	ALPM_TRANS_FLAG_NODEPS = 1,
 | 
			
		||||
	/** Don't keep backup files when installing packages. */
 | 
			
		||||
	ALPM_TRANS_FLAG_NOKEEP = (1 << 1),
 | 
			
		||||
	/* (1 << 1) flag can go here */
 | 
			
		||||
	/** Delete files even if they are tagged as backup. */
 | 
			
		||||
	ALPM_TRANS_FLAG_NOSAVE = (1 << 2),
 | 
			
		||||
	/** Ignore version numbers when checking dependencies. */
 | 
			
		||||
@@ -2827,16 +2756,6 @@ alpm_list_t *alpm_trans_get_add(alpm_handle_t *handle);
 | 
			
		||||
 */
 | 
			
		||||
alpm_list_t *alpm_trans_get_remove(alpm_handle_t *handle);
 | 
			
		||||
 | 
			
		||||
/** Sets the install note for a transaction
 | 
			
		||||
 *
 | 
			
		||||
 * All target packages will gain the note, dependencies will not.
 | 
			
		||||
 *
 | 
			
		||||
 * @param handle the context handle
 | 
			
		||||
 * @note the the note, may not contain new lines
 | 
			
		||||
 * @return 0 on success, -1 on error (pm_errno is set accordingly)
 | 
			
		||||
 */
 | 
			
		||||
int alpm_trans_set_note(alpm_handle_t *handle, char *note);
 | 
			
		||||
 | 
			
		||||
/** Initialize the transaction.
 | 
			
		||||
 * @param handle the context handle
 | 
			
		||||
 * @param flags flags of the transaction (like nodeps, etc; see alpm_transflag_t)
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  alpm_list.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  alpm_list.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  backup.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  backup.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  be_local.c : backend for the local database
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
@@ -81,12 +81,6 @@ static const char *_cache_get_url(alpm_pkg_t *pkg)
 | 
			
		||||
	return pkg->url;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static char *_cache_get_note(alpm_pkg_t *pkg)
 | 
			
		||||
{
 | 
			
		||||
	LAZY_LOAD(INFRQ_DESC);
 | 
			
		||||
	return pkg->note;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static alpm_time_t _cache_get_builddate(alpm_pkg_t *pkg)
 | 
			
		||||
{
 | 
			
		||||
	LAZY_LOAD(INFRQ_DESC);
 | 
			
		||||
@@ -336,7 +330,6 @@ static const struct pkg_operations local_pkg_ops = {
 | 
			
		||||
	.get_base = _cache_get_base,
 | 
			
		||||
	.get_desc = _cache_get_desc,
 | 
			
		||||
	.get_url = _cache_get_url,
 | 
			
		||||
	.get_note = _cache_get_note,
 | 
			
		||||
	.get_builddate = _cache_get_builddate,
 | 
			
		||||
	.get_installdate = _cache_get_installdate,
 | 
			
		||||
	.get_packager = _cache_get_packager,
 | 
			
		||||
@@ -759,8 +752,6 @@ static int local_db_read(alpm_pkg_t *info, int inforeq)
 | 
			
		||||
				READ_AND_STORE_ALL(info->groups);
 | 
			
		||||
			} else if(strcmp(line, "%URL%") == 0) {
 | 
			
		||||
				READ_AND_STORE(info->url);
 | 
			
		||||
			} else if(strcmp(line, "%NOTE%") == 0) {
 | 
			
		||||
				READ_AND_STORE(info->note);
 | 
			
		||||
			} else if(strcmp(line, "%LICENSE%") == 0) {
 | 
			
		||||
				READ_AND_STORE_ALL(info->licenses);
 | 
			
		||||
			} else if(strcmp(line, "%ARCH%") == 0) {
 | 
			
		||||
@@ -1049,11 +1040,6 @@ int _alpm_local_db_write(alpm_db_t *db, alpm_pkg_t *info, int inforeq)
 | 
			
		||||
		write_deps(fp, "%CONFLICTS%", info->conflicts);
 | 
			
		||||
		write_deps(fp, "%PROVIDES%", info->provides);
 | 
			
		||||
 | 
			
		||||
		if(info->note) {
 | 
			
		||||
			fprintf(fp, "%%NOTE%%\n"
 | 
			
		||||
							"%s\n\n", info->note);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		fclose(fp);
 | 
			
		||||
		fp = NULL;
 | 
			
		||||
	}
 | 
			
		||||
@@ -1172,31 +1158,6 @@ int SYMEXPORT alpm_pkg_set_reason(alpm_pkg_t *pkg, alpm_pkgreason_t reason)
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int SYMEXPORT alpm_pkg_set_note(alpm_pkg_t *pkg, char *note)
 | 
			
		||||
{
 | 
			
		||||
	ASSERT(pkg != NULL, return -1);
 | 
			
		||||
	ASSERT(pkg->origin == ALPM_PKG_FROM_LOCALDB,
 | 
			
		||||
			RET_ERR(pkg->handle, ALPM_ERR_WRONG_ARGS, -1));
 | 
			
		||||
	ASSERT(pkg->origin_data.db == pkg->handle->db_local,
 | 
			
		||||
			RET_ERR(pkg->handle, ALPM_ERR_WRONG_ARGS, -1));
 | 
			
		||||
 | 
			
		||||
	_alpm_log(pkg->handle, ALPM_LOG_DEBUG,
 | 
			
		||||
			"setting note for %s: %s\n", pkg->name, note);
 | 
			
		||||
	LAZY_LOAD(INFRQ_DESC);
 | 
			
		||||
	FREE(pkg->note);
 | 
			
		||||
	if(note) {
 | 
			
		||||
		ASSERT(!strchr(note, '\n'), RET_ERR(pkg->handle, ALPM_ERR_WRONG_ARGS, -1));
 | 
			
		||||
		STRDUP(pkg->note, note,
 | 
			
		||||
				RET_ERR(pkg->handle, ALPM_ERR_MEMORY, -1));
 | 
			
		||||
	}
 | 
			
		||||
	/* write DESC */
 | 
			
		||||
	if(_alpm_local_db_write(pkg->handle->db_local, pkg, INFRQ_DESC)) {
 | 
			
		||||
		RET_ERR(pkg->handle, ALPM_ERR_DB_WRITE, -1);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static const struct db_operations local_db_ops = {
 | 
			
		||||
	.validate         = local_db_validate,
 | 
			
		||||
	.populate         = local_db_populate,
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  be_package.c : backend for packages
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  be_sync.c : backend for sync databases
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
@@ -566,7 +566,8 @@ static int sync_db_read(alpm_db_t *db, struct archive *archive,
 | 
			
		||||
		return 0;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if(strcmp(filename, "desc") == 0 || strcmp(filename, "depends") == 0) {
 | 
			
		||||
	if(strcmp(filename, "desc") == 0 || strcmp(filename, "depends") == 0
 | 
			
		||||
			|| strcmp(filename, "files") == 0) {
 | 
			
		||||
		int ret;
 | 
			
		||||
		while((ret = _alpm_archive_fgets(archive, &buf)) == ARCHIVE_OK) {
 | 
			
		||||
			char *line = buf.line;
 | 
			
		||||
@@ -635,6 +636,36 @@ static int sync_db_read(alpm_db_t *db, struct archive *archive,
 | 
			
		||||
				READ_AND_SPLITDEP(pkg->conflicts);
 | 
			
		||||
			} else if(strcmp(line, "%PROVIDES%") == 0) {
 | 
			
		||||
				READ_AND_SPLITDEP(pkg->provides);
 | 
			
		||||
			} else if(strcmp(line, "%FILES%") == 0) {
 | 
			
		||||
				/* TODO: this could lazy load if there is future demand */
 | 
			
		||||
				size_t files_count = 0, files_size = 0;
 | 
			
		||||
				alpm_file_t *files = NULL;
 | 
			
		||||
 | 
			
		||||
				while(1) {
 | 
			
		||||
					if(_alpm_archive_fgets(archive, &buf) != ARCHIVE_OK) {
 | 
			
		||||
						goto error;
 | 
			
		||||
					}
 | 
			
		||||
					line = buf.line;
 | 
			
		||||
					if(_alpm_strip_newline(line, buf.real_line_size) == 0) {
 | 
			
		||||
						break;
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					if(!_alpm_greedy_grow((void **)&files, &files_size,
 | 
			
		||||
								(files_count ? (files_count + 1) * sizeof(alpm_file_t) : 8 * sizeof(alpm_file_t)))) {
 | 
			
		||||
						goto error;
 | 
			
		||||
					}
 | 
			
		||||
					STRDUP(files[files_count].name, line, goto error);
 | 
			
		||||
					files_count++;
 | 
			
		||||
				}
 | 
			
		||||
				/* attempt to hand back any memory we don't need */
 | 
			
		||||
				if(files_count > 0) {
 | 
			
		||||
					REALLOC(files, sizeof(alpm_file_t) * files_count, (void)0);
 | 
			
		||||
				} else {
 | 
			
		||||
					FREE(files);
 | 
			
		||||
				}
 | 
			
		||||
				pkg->files.count = files_count;
 | 
			
		||||
				pkg->files.files = files;
 | 
			
		||||
				_alpm_filelist_sort(&pkg->files);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		if(ret != ARCHIVE_EOF) {
 | 
			
		||||
@@ -685,152 +716,3 @@ alpm_db_t *_alpm_db_register_sync(alpm_handle_t *handle, const char *treename,
 | 
			
		||||
	handle->dbs_sync = alpm_list_add(handle->dbs_sync, db);
 | 
			
		||||
	return db;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static int load_files(struct archive *archive, alpm_filelist_t *filelist)
 | 
			
		||||
{
 | 
			
		||||
	struct archive_read_buffer buf = {0};
 | 
			
		||||
 | 
			
		||||
	/* 512K for a line length seems reasonable */
 | 
			
		||||
	buf.max_line_size = 512 * 1024;
 | 
			
		||||
 | 
			
		||||
	_alpm_filelist_truncate(filelist);
 | 
			
		||||
 | 
			
		||||
	int ret;
 | 
			
		||||
	while((ret = _alpm_archive_fgets(archive, &buf)) == ARCHIVE_OK) {
 | 
			
		||||
		char *line = buf.line;
 | 
			
		||||
		if(_alpm_strip_newline(line, buf.real_line_size) == 0) {
 | 
			
		||||
			/* length of stripped line was zero */
 | 
			
		||||
			continue;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		if(strcmp(line, "%FILES%") == 0) {
 | 
			
		||||
			size_t files_size = 0;
 | 
			
		||||
 | 
			
		||||
			while(1) {
 | 
			
		||||
				if(_alpm_archive_fgets(archive, &buf) != ARCHIVE_OK) {
 | 
			
		||||
					goto error;
 | 
			
		||||
				}
 | 
			
		||||
				line = buf.line;
 | 
			
		||||
				if(_alpm_strip_newline(line, buf.real_line_size) == 0) {
 | 
			
		||||
					break;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				if(!_alpm_greedy_grow((void **)&filelist->files, &files_size,
 | 
			
		||||
							(filelist->count ? (filelist->count + 1) * sizeof(alpm_file_t) : 8 * sizeof(alpm_file_t)))) {
 | 
			
		||||
					goto error;
 | 
			
		||||
				}
 | 
			
		||||
				STRDUP(filelist->files[filelist->count].name, line, goto error);
 | 
			
		||||
				filelist->count++;
 | 
			
		||||
			}
 | 
			
		||||
			_alpm_filelist_sort(filelist);
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	if(ret != ARCHIVE_EOF) {
 | 
			
		||||
		goto error;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return 0;
 | 
			
		||||
 | 
			
		||||
error:
 | 
			
		||||
	return -1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
alpm_db_files_t SYMEXPORT *alpm_db_files_open(alpm_db_t *db)
 | 
			
		||||
{
 | 
			
		||||
	const char *dbpath;
 | 
			
		||||
	int fd;
 | 
			
		||||
	struct stat buf;
 | 
			
		||||
	struct archive *archive;
 | 
			
		||||
	alpm_db_files_t *files = NULL;
 | 
			
		||||
 | 
			
		||||
	ASSERT(db != NULL, return NULL);
 | 
			
		||||
 | 
			
		||||
	dbpath = _alpm_db_path(db);
 | 
			
		||||
	if(!dbpath) {
 | 
			
		||||
		/* pm_errno set in _alpm_db_path() */
 | 
			
		||||
		return NULL;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if(db->status & DB_STATUS_INVALID || db->status & DB_STATUS_MISSING) {
 | 
			
		||||
		return NULL;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	fd = _alpm_open_archive(db->handle, dbpath, &buf,
 | 
			
		||||
			&archive, ALPM_ERR_DB_OPEN);
 | 
			
		||||
	if(fd < 0) {
 | 
			
		||||
		db->status &= ~DB_STATUS_VALID;
 | 
			
		||||
		db->status |= DB_STATUS_INVALID;
 | 
			
		||||
		_alpm_archive_read_free(archive);
 | 
			
		||||
		return NULL;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	MALLOC(files, sizeof(alpm_db_files_t), RET_ERR(db->handle, ALPM_ERR_MEMORY, NULL));
 | 
			
		||||
	files->archive = archive;
 | 
			
		||||
	files->fd = fd;
 | 
			
		||||
	files->db = db;
 | 
			
		||||
	return files;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int SYMEXPORT alpm_db_files_next(alpm_db_files_t *files, char** pkgname)
 | 
			
		||||
{
 | 
			
		||||
	struct archive_entry *entry;
 | 
			
		||||
	const char *entryname;
 | 
			
		||||
	int archive_ret;
 | 
			
		||||
	char *filename;
 | 
			
		||||
 | 
			
		||||
	ASSERT(files != NULL, return -1);
 | 
			
		||||
	ASSERT(pkgname != NULL, return -1);
 | 
			
		||||
 | 
			
		||||
	while((archive_ret = archive_read_next_header(files->archive, &entry)) == ARCHIVE_OK) {
 | 
			
		||||
		mode_t mode = archive_entry_mode(entry);
 | 
			
		||||
		if(!S_ISDIR(mode)) {
 | 
			
		||||
			entryname = archive_entry_pathname(entry);
 | 
			
		||||
			if(entryname == NULL) {
 | 
			
		||||
				_alpm_log(files->db->handle, ALPM_LOG_DEBUG,
 | 
			
		||||
						"invalid archive entry provided to alpm_db_files_next, skipping\n");
 | 
			
		||||
				return -1;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			if(_alpm_splitname(entryname, pkgname, NULL, NULL) != 0) {
 | 
			
		||||
				_alpm_log(files->db->handle, ALPM_LOG_ERROR,
 | 
			
		||||
						_("invalid name for database entry '%s'\n"), entryname);
 | 
			
		||||
				return -1;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			filename = strrchr(entryname, '/');
 | 
			
		||||
			filename++;
 | 
			
		||||
 | 
			
		||||
			/* we only want to read the file list */
 | 
			
		||||
			if(filename && strcmp(filename, "files") == 0) {
 | 
			
		||||
				return 0;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	if(archive_ret != ARCHIVE_EOF) {
 | 
			
		||||
		return -1;
 | 
			
		||||
	}
 | 
			
		||||
	return 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int SYMEXPORT alpm_db_files_load(alpm_db_files_t *files, alpm_filelist_t *filelist)
 | 
			
		||||
{
 | 
			
		||||
	ASSERT(files != NULL, return -1);
 | 
			
		||||
	ASSERT(filelist != NULL, return -1);
 | 
			
		||||
 | 
			
		||||
	_alpm_filelist_truncate(filelist);
 | 
			
		||||
	if(load_files(files->archive, filelist) != 0) {
 | 
			
		||||
		_alpm_log(files->db->handle, ALPM_LOG_ERROR,
 | 
			
		||||
			_("could not parse package description file '%s' from db '%s'\n"),
 | 
			
		||||
			"files", files->db->treename);
 | 
			
		||||
		return -1;
 | 
			
		||||
	}
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void SYMEXPORT alpm_db_files_close(alpm_db_files_t *files)
 | 
			
		||||
{
 | 
			
		||||
	ASSERT(files != NULL, return);
 | 
			
		||||
	_alpm_archive_read_free(files->archive);
 | 
			
		||||
	close(files->fd);
 | 
			
		||||
	free(files);
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  conflict.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2006 by David Kimpe <dnaku@frugalware.org>
 | 
			
		||||
@@ -269,7 +269,6 @@ static alpm_list_t *add_fileconflict(alpm_handle_t *handle,
 | 
			
		||||
	STRDUP(conflict->file, filestr, goto error);
 | 
			
		||||
	if(!pkg2) {
 | 
			
		||||
		conflict->type = ALPM_FILECONFLICT_FILESYSTEM;
 | 
			
		||||
		STRDUP(conflict->ctarget, "", goto error);
 | 
			
		||||
	} else if(pkg2->origin == ALPM_PKG_FROM_LOCALDB) {
 | 
			
		||||
		conflict->type = ALPM_FILECONFLICT_FILESYSTEM;
 | 
			
		||||
		STRDUP(conflict->ctarget, pkg2->name, goto error);
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  conflict.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  db.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
 | 
			
		||||
@@ -212,12 +212,6 @@ int SYMEXPORT alpm_db_remove_server(alpm_db_t *db, const char *url)
 | 
			
		||||
	return ret;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
alpm_handle_t SYMEXPORT *alpm_db_get_handle(alpm_db_t *db)
 | 
			
		||||
{
 | 
			
		||||
	ASSERT(db != NULL, return NULL);
 | 
			
		||||
	return db->handle;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
const char SYMEXPORT *alpm_db_get_name(const alpm_db_t *db)
 | 
			
		||||
{
 | 
			
		||||
	ASSERT(db != NULL, return NULL);
 | 
			
		||||
@@ -411,7 +405,6 @@ int _alpm_db_search(alpm_db_t *db, const alpm_list_t *needles,
 | 
			
		||||
			const char *matched = NULL;
 | 
			
		||||
			const char *name = pkg->name;
 | 
			
		||||
			const char *desc = alpm_pkg_get_desc(pkg);
 | 
			
		||||
			const char *note = alpm_pkg_get_note(pkg);
 | 
			
		||||
 | 
			
		||||
			/* check name as regex AND as plain text */
 | 
			
		||||
			if(name && (regexec(®, name, 0, 0, 0) == 0 || strstr(name, targ))) {
 | 
			
		||||
@@ -421,11 +414,6 @@ int _alpm_db_search(alpm_db_t *db, const alpm_list_t *needles,
 | 
			
		||||
			else if(desc && regexec(®, desc, 0, 0, 0) == 0) {
 | 
			
		||||
				matched = desc;
 | 
			
		||||
			}
 | 
			
		||||
			/* check note */
 | 
			
		||||
			else if(note && regexec(®, note, 0, 0, 0) == 0) {
 | 
			
		||||
				matched = note;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			/* TODO: should we be doing this, and should we print something
 | 
			
		||||
			 * differently when we do match it since it isn't currently printed? */
 | 
			
		||||
			if(!matched) {
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  db.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2006 by Miklos Vajna <vmiklos@frugalware.org>
 | 
			
		||||
@@ -61,13 +61,6 @@ struct db_operations {
 | 
			
		||||
	void (*unregister) (alpm_db_t *);
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* Database files iterator */
 | 
			
		||||
struct __alpm_db_files_t {
 | 
			
		||||
	struct archive *archive;
 | 
			
		||||
	int fd;
 | 
			
		||||
	alpm_db_t *db;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* Database */
 | 
			
		||||
struct _alpm_db_t {
 | 
			
		||||
	alpm_handle_t *handle;
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  deps.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  deps.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2006 by Miklos Vajna <vmiklos@frugalware.org>
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  diskspace.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2010-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2010-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 *  it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  diskspace.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2010-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2010-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 *  it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  dload.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  dload.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  error.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  filelist.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2012-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2012-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 *  it under the terms of the GNU General Public License as published by
 | 
			
		||||
@@ -145,17 +145,3 @@ void _alpm_filelist_sort(alpm_filelist_t *filelist)
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void _alpm_filelist_truncate(alpm_filelist_t *files)
 | 
			
		||||
{
 | 
			
		||||
	for(size_t i = 0; i < files->count; i++) {
 | 
			
		||||
		FREE(files->files[i].name);
 | 
			
		||||
	}
 | 
			
		||||
	files->count = 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void SYMEXPORT alpm_filelist_free(alpm_filelist_t *files)
 | 
			
		||||
{
 | 
			
		||||
	_alpm_filelist_truncate(files);
 | 
			
		||||
	free(files->files);
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  filelist.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2012-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2012-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 *  it under the terms of the GNU General Public License as published by
 | 
			
		||||
@@ -28,6 +28,5 @@ alpm_list_t *_alpm_filelist_intersection(alpm_filelist_t *filesA,
 | 
			
		||||
		alpm_filelist_t *filesB);
 | 
			
		||||
 | 
			
		||||
void _alpm_filelist_sort(alpm_filelist_t *filelist);
 | 
			
		||||
void _alpm_filelist_truncate(alpm_filelist_t *filelist);
 | 
			
		||||
 | 
			
		||||
#endif /* ALPM_FILELIST_H */
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  graph.c - helpful graph structure and setup/teardown methods
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2007-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2007-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 *  it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  graph.h - helpful graph structure and setup/teardown methods
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2007-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2007-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 *  it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  group.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  group.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  handle.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  handle.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  hook.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2015-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2015-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 *  it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  hook.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2015-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2015-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 *  it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 * libarchive-compat.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2013-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2013-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 *  it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  log.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  log.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  package.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2005, 2006 by Christian Hamar <krics@linuxforum.hu>
 | 
			
		||||
@@ -57,7 +57,7 @@ int SYMEXPORT alpm_pkg_checkmd5sum(alpm_pkg_t *pkg)
 | 
			
		||||
	ASSERT(pkg->origin == ALPM_PKG_FROM_SYNCDB,
 | 
			
		||||
			RET_ERR(pkg->handle, ALPM_ERR_WRONG_ARGS, -1));
 | 
			
		||||
 | 
			
		||||
	fpath = _alpm_cache_find_pkg(pkg, 0);
 | 
			
		||||
	fpath = _alpm_filecache_find(pkg->handle, pkg->filename);
 | 
			
		||||
 | 
			
		||||
	retval = _alpm_test_checksum(fpath, pkg->md5sum, ALPM_PKG_VALIDATION_MD5SUM);
 | 
			
		||||
 | 
			
		||||
@@ -78,7 +78,6 @@ int SYMEXPORT alpm_pkg_checkmd5sum(alpm_pkg_t *pkg)
 | 
			
		||||
static const char *_pkg_get_base(alpm_pkg_t *pkg)        { return pkg->base; }
 | 
			
		||||
static const char *_pkg_get_desc(alpm_pkg_t *pkg)        { return pkg->desc; }
 | 
			
		||||
static const char *_pkg_get_url(alpm_pkg_t *pkg)         { return pkg->url; }
 | 
			
		||||
static char *_pkg_get_note(alpm_pkg_t *pkg)        { return pkg->note; }
 | 
			
		||||
static alpm_time_t _pkg_get_builddate(alpm_pkg_t *pkg)   { return pkg->builddate; }
 | 
			
		||||
static alpm_time_t _pkg_get_installdate(alpm_pkg_t *pkg) { return pkg->installdate; }
 | 
			
		||||
static const char *_pkg_get_packager(alpm_pkg_t *pkg)    { return pkg->packager; }
 | 
			
		||||
@@ -100,7 +99,6 @@ static alpm_list_t *_pkg_get_replaces(alpm_pkg_t *pkg)   { return pkg->replaces;
 | 
			
		||||
static alpm_filelist_t *_pkg_get_files(alpm_pkg_t *pkg)  { return &(pkg->files); }
 | 
			
		||||
static alpm_list_t *_pkg_get_backup(alpm_pkg_t *pkg)     { return pkg->backup; }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
static void *_pkg_changelog_open(alpm_pkg_t UNUSED *pkg)
 | 
			
		||||
{
 | 
			
		||||
	return NULL;
 | 
			
		||||
@@ -144,7 +142,6 @@ const struct pkg_operations default_pkg_ops = {
 | 
			
		||||
	.get_base        = _pkg_get_base,
 | 
			
		||||
	.get_desc        = _pkg_get_desc,
 | 
			
		||||
	.get_url         = _pkg_get_url,
 | 
			
		||||
	.get_note        = _pkg_get_note,
 | 
			
		||||
	.get_builddate   = _pkg_get_builddate,
 | 
			
		||||
	.get_installdate = _pkg_get_installdate,
 | 
			
		||||
	.get_packager    = _pkg_get_packager,
 | 
			
		||||
@@ -194,13 +191,6 @@ const char SYMEXPORT *alpm_pkg_get_base(alpm_pkg_t *pkg)
 | 
			
		||||
	return pkg->ops->get_base(pkg);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
alpm_handle_t SYMEXPORT *alpm_pkg_get_handle(alpm_pkg_t *pkg)
 | 
			
		||||
{
 | 
			
		||||
	ASSERT(pkg != NULL, return NULL);
 | 
			
		||||
	pkg->handle->pm_errno = ALPM_ERR_OK;
 | 
			
		||||
	return pkg->handle;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
const char SYMEXPORT *alpm_pkg_get_name(alpm_pkg_t *pkg)
 | 
			
		||||
{
 | 
			
		||||
	ASSERT(pkg != NULL, return NULL);
 | 
			
		||||
@@ -236,13 +226,6 @@ const char SYMEXPORT *alpm_pkg_get_url(alpm_pkg_t *pkg)
 | 
			
		||||
	return pkg->ops->get_url(pkg);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
char SYMEXPORT *alpm_pkg_get_note(alpm_pkg_t *pkg)
 | 
			
		||||
{
 | 
			
		||||
	ASSERT(pkg != NULL, return NULL);
 | 
			
		||||
	pkg->handle->pm_errno = ALPM_ERR_OK;
 | 
			
		||||
	return pkg->ops->get_note(pkg);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
alpm_time_t SYMEXPORT alpm_pkg_get_builddate(alpm_pkg_t *pkg)
 | 
			
		||||
{
 | 
			
		||||
	ASSERT(pkg != NULL, return -1);
 | 
			
		||||
@@ -300,7 +283,7 @@ int SYMEXPORT alpm_pkg_get_sig(alpm_pkg_t *pkg, unsigned char **sig, size_t *sig
 | 
			
		||||
		alpm_errno_t err;
 | 
			
		||||
		int ret = -1;
 | 
			
		||||
 | 
			
		||||
		pkgpath = _alpm_cache_find_pkg(pkg, 0);
 | 
			
		||||
		pkgpath = _alpm_filecache_find(pkg->handle, pkg->filename);
 | 
			
		||||
		if(!pkgpath) {
 | 
			
		||||
			GOTO_ERR(pkg->handle, ALPM_ERR_PKG_NOT_FOUND, cleanup);
 | 
			
		||||
		}
 | 
			
		||||
@@ -627,7 +610,6 @@ int _alpm_pkg_dup(alpm_pkg_t *pkg, alpm_pkg_t **new_ptr)
 | 
			
		||||
	STRDUP(newpkg->version, pkg->version, goto cleanup);
 | 
			
		||||
	STRDUP(newpkg->desc, pkg->desc, goto cleanup);
 | 
			
		||||
	STRDUP(newpkg->url, pkg->url, goto cleanup);
 | 
			
		||||
	STRDUP(newpkg->note, pkg->note, goto cleanup);
 | 
			
		||||
	newpkg->builddate = pkg->builddate;
 | 
			
		||||
	newpkg->installdate = pkg->installdate;
 | 
			
		||||
	STRDUP(newpkg->packager, pkg->packager, goto cleanup);
 | 
			
		||||
@@ -701,7 +683,6 @@ void _alpm_pkg_free(alpm_pkg_t *pkg)
 | 
			
		||||
	FREE(pkg->version);
 | 
			
		||||
	FREE(pkg->desc);
 | 
			
		||||
	FREE(pkg->url);
 | 
			
		||||
	FREE(pkg->note);
 | 
			
		||||
	FREE(pkg->packager);
 | 
			
		||||
	FREE(pkg->md5sum);
 | 
			
		||||
	FREE(pkg->sha256sum);
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  package.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2006 by David Kimpe <dnaku@frugalware.org>
 | 
			
		||||
@@ -46,7 +46,6 @@ struct pkg_operations {
 | 
			
		||||
	const char *(*get_base) (alpm_pkg_t *);
 | 
			
		||||
	const char *(*get_desc) (alpm_pkg_t *);
 | 
			
		||||
	const char *(*get_url) (alpm_pkg_t *);
 | 
			
		||||
	char *(*get_note) (alpm_pkg_t *);
 | 
			
		||||
	alpm_time_t (*get_builddate) (alpm_pkg_t *);
 | 
			
		||||
	alpm_time_t (*get_installdate) (alpm_pkg_t *);
 | 
			
		||||
	const char *(*get_packager) (alpm_pkg_t *);
 | 
			
		||||
@@ -94,7 +93,6 @@ struct _alpm_pkg_t {
 | 
			
		||||
	char *version;
 | 
			
		||||
	char *desc;
 | 
			
		||||
	char *url;
 | 
			
		||||
	char *note;
 | 
			
		||||
	char *packager;
 | 
			
		||||
	char *md5sum;
 | 
			
		||||
	char *sha256sum;
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  pkghash.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 *  it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  pkghash.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 *  it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  remove.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
 | 
			
		||||
@@ -332,7 +332,7 @@ static int can_remove_file(alpm_handle_t *handle, const alpm_file_t *file)
 | 
			
		||||
	/* If we fail write permissions due to a read-only filesystem, abort.
 | 
			
		||||
	 * Assume all other possible failures are covered somewhere else */
 | 
			
		||||
	if(_alpm_access(handle, NULL, filepath, W_OK) == -1) {
 | 
			
		||||
		if(errno != EACCES && errno != ETXTBSY && _alpm_access(handle, NULL, filepath, F_OK) == 0) {
 | 
			
		||||
		if(errno != EACCES && errno != ETXTBSY && access(filepath, F_OK) == 0) {
 | 
			
		||||
			/* only return failure if the file ACTUALLY exists and we can't write to
 | 
			
		||||
			 * it - ignore "chmod -w" simple permission failures */
 | 
			
		||||
			_alpm_log(handle, ALPM_LOG_ERROR, _("cannot remove file '%s': %s\n"),
 | 
			
		||||
@@ -575,9 +575,7 @@ static int should_skip_file(alpm_handle_t *handle,
 | 
			
		||||
{
 | 
			
		||||
	return _alpm_fnmatch_patterns(handle->noupgrade, path) == 0
 | 
			
		||||
		|| alpm_list_find_str(handle->trans->skip_remove, path)
 | 
			
		||||
		|| (!(handle->trans->flags & ALPM_TRANS_FLAG_NOKEEP)
 | 
			
		||||
				&& newpkg
 | 
			
		||||
				&& _alpm_needbackup(path, newpkg)
 | 
			
		||||
		|| (newpkg && _alpm_needbackup(path, newpkg)
 | 
			
		||||
				&& alpm_filelist_contains(alpm_pkg_get_files(newpkg), path));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  remove.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  signing.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2008-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2008-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 *  it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  signing.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2008-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2008-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 *  it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  sync.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
 | 
			
		||||
@@ -323,7 +323,7 @@ static int compute_download_size(alpm_pkg_t *newpkg)
 | 
			
		||||
 | 
			
		||||
	ASSERT(newpkg->filename != NULL, RET_ERR(handle, ALPM_ERR_PKG_INVALID_NAME, -1));
 | 
			
		||||
	fname = newpkg->filename;
 | 
			
		||||
	fpath = _alpm_cache_find_pkg(newpkg, 0);
 | 
			
		||||
	fpath = _alpm_filecache_find(handle, fname);
 | 
			
		||||
 | 
			
		||||
	/* downloaded file exists, so there's nothing to grab */
 | 
			
		||||
	if(fpath) {
 | 
			
		||||
@@ -333,7 +333,7 @@ static int compute_download_size(alpm_pkg_t *newpkg)
 | 
			
		||||
 | 
			
		||||
	CALLOC(fnamepart, strlen(fname) + 6, sizeof(char), return -1);
 | 
			
		||||
	sprintf(fnamepart, "%s.part", fname);
 | 
			
		||||
	fpath = _alpm_cache_find_pkg(newpkg, 1);
 | 
			
		||||
	fpath = _alpm_filecache_find(handle, fnamepart);
 | 
			
		||||
	if(fpath) {
 | 
			
		||||
		struct stat st;
 | 
			
		||||
		if(stat(fpath, &st) == 0) {
 | 
			
		||||
@@ -732,18 +732,26 @@ static int find_dl_candidates(alpm_handle_t *handle, alpm_list_t **files)
 | 
			
		||||
				handle->pm_errno = ALPM_ERR_SERVER_NONE;
 | 
			
		||||
				_alpm_log(handle, ALPM_LOG_ERROR, "%s: %s\n",
 | 
			
		||||
						alpm_strerror(handle->pm_errno), repo->treename);
 | 
			
		||||
				return -1;
 | 
			
		||||
				return 1;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			ASSERT(spkg->filename != NULL, RET_ERR(handle, ALPM_ERR_PKG_INVALID_NAME, -1));
 | 
			
		||||
 | 
			
		||||
			need_download = spkg->download_size != 0 || !_alpm_cache_pkg_exists(spkg, 0);
 | 
			
		||||
			need_download = spkg->download_size != 0 || !_alpm_filecache_exists(handle, spkg->filename);
 | 
			
		||||
			/* even if the package file in the cache we need to check for
 | 
			
		||||
			 * accompanion *.sig file as well.
 | 
			
		||||
			 * If *.sig is not cached then force download the package + its signature file.
 | 
			
		||||
			 */
 | 
			
		||||
			if(!need_download && (siglevel & ALPM_SIG_PACKAGE)) {
 | 
			
		||||
				need_download = !_alpm_cache_pkg_exists(spkg, 1);
 | 
			
		||||
				char *sig_filename = NULL;
 | 
			
		||||
				int len = strlen(spkg->filename) + 5;
 | 
			
		||||
 | 
			
		||||
				MALLOC(sig_filename, len, RET_ERR(handle, ALPM_ERR_MEMORY, -1));
 | 
			
		||||
				snprintf(sig_filename, len, "%s.sig", spkg->filename);
 | 
			
		||||
 | 
			
		||||
				need_download = !_alpm_filecache_exists(handle, sig_filename);
 | 
			
		||||
 | 
			
		||||
				FREE(sig_filename);
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			if(need_download) {
 | 
			
		||||
@@ -982,14 +990,7 @@ static int check_validity(alpm_handle_t *handle,
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		current_bytes += v.pkg->size;
 | 
			
		||||
		v.path = _alpm_cache_find_pkg(v.pkg, 0);
 | 
			
		||||
 | 
			
		||||
		if(!v.path) {
 | 
			
		||||
			_alpm_log(handle, ALPM_LOG_ERROR,
 | 
			
		||||
					_("%s: could not find package in cache\n"), v.pkg->name);
 | 
			
		||||
			RET_ERR(handle, ALPM_ERR_PKG_NOT_FOUND, -1);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		v.path = _alpm_filecache_find(handle, v.pkg->filename);
 | 
			
		||||
		v.siglevel = alpm_db_get_siglevel(alpm_pkg_get_db(v.pkg));
 | 
			
		||||
 | 
			
		||||
		if(_alpm_pkg_validate_internal(handle, v.path, v.pkg,
 | 
			
		||||
@@ -1079,14 +1080,7 @@ static int load_packages(alpm_handle_t *handle, alpm_list_t **data,
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		current_bytes += spkg->size;
 | 
			
		||||
 | 
			
		||||
		filepath = _alpm_cache_find_pkg(spkg, 0);
 | 
			
		||||
 | 
			
		||||
		if(!filepath) {
 | 
			
		||||
			_alpm_log(handle, ALPM_LOG_ERROR,
 | 
			
		||||
					_("%s: could not find package in cache\n"), spkg->name);
 | 
			
		||||
			RET_ERR(handle, ALPM_ERR_PKG_NOT_FOUND, -1);
 | 
			
		||||
		}
 | 
			
		||||
		filepath = _alpm_filecache_find(handle, spkg->filename);
 | 
			
		||||
 | 
			
		||||
		/* load the package file and replace pkgcache entry with it in the target list */
 | 
			
		||||
		/* TODO: alpm_pkg_get_db() will not work on this target anymore */
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  sync.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  trans.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
 | 
			
		||||
@@ -177,8 +177,7 @@ int SYMEXPORT alpm_trans_commit(alpm_handle_t *handle, alpm_list_t **data)
 | 
			
		||||
	ASSERT(trans != NULL, RET_ERR(handle, ALPM_ERR_TRANS_NULL, -1));
 | 
			
		||||
	ASSERT(trans->state == STATE_PREPARED, RET_ERR(handle, ALPM_ERR_TRANS_NOT_PREPARED, -1));
 | 
			
		||||
 | 
			
		||||
	ASSERT(!(trans->flags & ALPM_TRANS_FLAG_NOLOCK && !(trans->flags & ALPM_TRANS_FLAG_DOWNLOADONLY)),
 | 
			
		||||
			RET_ERR(handle, ALPM_ERR_TRANS_NOT_LOCKED, -1));
 | 
			
		||||
	ASSERT(!(trans->flags & ALPM_TRANS_FLAG_NOLOCK), RET_ERR(handle, ALPM_ERR_TRANS_NOT_LOCKED, -1));
 | 
			
		||||
 | 
			
		||||
	/* If there's nothing to do, return without complaining */
 | 
			
		||||
	if(trans->add == NULL && trans->remove == NULL) {
 | 
			
		||||
@@ -299,7 +298,6 @@ void _alpm_trans_free(alpm_trans_t *trans)
 | 
			
		||||
	alpm_list_free(trans->add);
 | 
			
		||||
	alpm_list_free_inner(trans->remove, (alpm_list_fn_free)_alpm_pkg_free);
 | 
			
		||||
	alpm_list_free(trans->remove);
 | 
			
		||||
	FREE(trans->note);
 | 
			
		||||
 | 
			
		||||
	FREELIST(trans->skip_remove);
 | 
			
		||||
 | 
			
		||||
@@ -452,19 +450,3 @@ alpm_list_t SYMEXPORT *alpm_trans_get_remove(alpm_handle_t *handle)
 | 
			
		||||
 | 
			
		||||
	return handle->trans->remove;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int SYMEXPORT alpm_trans_set_note(alpm_handle_t *handle, char *note) {
 | 
			
		||||
	CHECK_HANDLE(handle, return -1);
 | 
			
		||||
	ASSERT(handle->trans != NULL, RET_ERR(handle, ALPM_ERR_TRANS_NULL, -1));
 | 
			
		||||
	ASSERT(handle->trans->state == STATE_INITIALIZED, RET_ERR(handle, ALPM_ERR_TRANS_NOT_INITIALIZED, -1));
 | 
			
		||||
 | 
			
		||||
	if(handle->trans->note) {
 | 
			
		||||
		ASSERT(!strchr(handle->trans->note, '\n'), RET_ERR(handle, ALPM_ERR_WRONG_ARGS, -1));
 | 
			
		||||
		free(handle->trans->note);
 | 
			
		||||
		handle->trans->note = NULL;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	STRDUP(handle->trans->note, note, RET_ERR(handle, ALPM_ERR_MEMORY, -1));
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  trans.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
 | 
			
		||||
@@ -39,7 +39,6 @@ typedef enum _alpm_transstate_t {
 | 
			
		||||
typedef struct _alpm_trans_t {
 | 
			
		||||
	/* bitfield of alpm_transflag_t flags */
 | 
			
		||||
	int flags;
 | 
			
		||||
	char *note;
 | 
			
		||||
	alpm_transstate_t state;
 | 
			
		||||
	alpm_list_t *unresolvable;  /* list of (alpm_pkg_t *) */
 | 
			
		||||
	alpm_list_t *add;           /* list of (alpm_pkg_t *) */
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  util.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
 | 
			
		||||
@@ -815,37 +815,6 @@ int _alpm_str_cmp(const void *s1, const void *s2)
 | 
			
		||||
	return strcmp(s1, s2);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
char *_alpm_cache_find_pkg(alpm_pkg_t *pkg, int sig) {
 | 
			
		||||
	alpm_handle_t *handle = pkg->handle;
 | 
			
		||||
	struct stat buf;
 | 
			
		||||
	alpm_list_t *servers = pkg->origin_data.db->servers;
 | 
			
		||||
	char *retpath;
 | 
			
		||||
	char filepath[PATH_MAX];
 | 
			
		||||
 | 
			
		||||
	for(alpm_list_t *j = servers; j; j = j->next) {
 | 
			
		||||
		char *server = j->data;
 | 
			
		||||
 | 
			
		||||
		if(strncmp("file://", server, strlen("file://")) == 0) {
 | 
			
		||||
			int len = strlen(server) - strlen("file://") + 1 + strlen(pkg->filename) + 1;
 | 
			
		||||
 | 
			
		||||
			if(sig) {
 | 
			
		||||
				len += strlen(".sig");
 | 
			
		||||
				snprintf(filepath, len, "%s/%s", server + strlen("file://"), pkg->filename);
 | 
			
		||||
			} else {
 | 
			
		||||
				snprintf(filepath, len, "%s/%s.sig", server + strlen("file://"), pkg->filename);
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			if(stat(filepath, &buf) == 0 && S_ISREG(buf.st_mode)) {
 | 
			
		||||
				STRDUP(retpath, filepath, RET_ERR(handle, ALPM_ERR_MEMORY, NULL));
 | 
			
		||||
				_alpm_log(handle, ALPM_LOG_DEBUG, "found pkg in repo cache: %s\n", retpath);
 | 
			
		||||
				return retpath;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return _alpm_filecache_find(handle, pkg->filename);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/** Find a filename in a registered alpm cachedir.
 | 
			
		||||
 * @param handle the context handle
 | 
			
		||||
 * @param filename name of file to find
 | 
			
		||||
@@ -862,17 +831,10 @@ char *_alpm_filecache_find(alpm_handle_t *handle, const char *filename)
 | 
			
		||||
	for(i = handle->cachedirs; i; i = i->next) {
 | 
			
		||||
		snprintf(path, PATH_MAX, "%s%s", (char *)i->data,
 | 
			
		||||
				filename);
 | 
			
		||||
		if(stat(path, &buf) == 0) {
 | 
			
		||||
			if(S_ISREG(buf.st_mode)) {
 | 
			
		||||
				retpath = strdup(path);
 | 
			
		||||
				_alpm_log(handle, ALPM_LOG_DEBUG, "found cached pkg: %s\n", retpath);
 | 
			
		||||
				return retpath;
 | 
			
		||||
			} else {
 | 
			
		||||
				_alpm_log(handle, ALPM_LOG_WARNING,
 | 
			
		||||
						"cached pkg '%s' is not a regular file: mode=%i\n", path, buf.st_mode);
 | 
			
		||||
			}
 | 
			
		||||
		} else if(errno != ENOENT) {
 | 
			
		||||
			_alpm_log(handle, ALPM_LOG_WARNING, "could not open '%s'\n: %s", path, strerror(errno));
 | 
			
		||||
		if(stat(path, &buf) == 0 && S_ISREG(buf.st_mode)) {
 | 
			
		||||
			retpath = strdup(path);
 | 
			
		||||
			_alpm_log(handle, ALPM_LOG_DEBUG, "found cached pkg: %s\n", retpath);
 | 
			
		||||
			return retpath;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	/* package wasn't found in any cachedir */
 | 
			
		||||
@@ -884,10 +846,10 @@ char *_alpm_filecache_find(alpm_handle_t *handle, const char *filename)
 | 
			
		||||
 * @param filename name of file to find
 | 
			
		||||
 * @return 0 if the filename was not found, 1 otherwise
 | 
			
		||||
 */
 | 
			
		||||
int _alpm_cache_pkg_exists(alpm_pkg_t *pkg, int sig)
 | 
			
		||||
int _alpm_filecache_exists(alpm_handle_t *handle, const char *filename)
 | 
			
		||||
{
 | 
			
		||||
	int res;
 | 
			
		||||
	char *fpath = _alpm_cache_find_pkg(pkg, sig);
 | 
			
		||||
	char *fpath = _alpm_filecache_find(handle, filename);
 | 
			
		||||
	res = (fpath != NULL);
 | 
			
		||||
	FREE(fpath);
 | 
			
		||||
	return res;
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  util.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
 | 
			
		||||
 *  Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
 | 
			
		||||
 *  Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
 | 
			
		||||
@@ -133,10 +133,9 @@ int _alpm_run_chroot(alpm_handle_t *handle, const char *cmd, char *const argv[],
 | 
			
		||||
		_alpm_cb_io in_cb, void *in_ctx);
 | 
			
		||||
int _alpm_ldconfig(alpm_handle_t *handle);
 | 
			
		||||
int _alpm_str_cmp(const void *s1, const void *s2);
 | 
			
		||||
char *_alpm_cache_find_pkg(alpm_pkg_t *pkg, int sig);
 | 
			
		||||
char *_alpm_filecache_find(alpm_handle_t *handle, const char *filename);
 | 
			
		||||
/* Checks whether a file exists in cache */
 | 
			
		||||
int _alpm_cache_pkg_exists(alpm_pkg_t *pkg, int sig);
 | 
			
		||||
int _alpm_filecache_exists(alpm_handle_t *handle, const char *filename);
 | 
			
		||||
const char *_alpm_filecache_setup(alpm_handle_t *handle);
 | 
			
		||||
/* Unlike many uses of alpm_pkgvalidation_t, _alpm_test_checksum expects
 | 
			
		||||
 * an enum value rather than a bitfield. */
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,5 @@
 | 
			
		||||
/*
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
 *  Copyright (c) 2006-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
 *
 | 
			
		||||
 *  This program is free software; you can redistribute it and/or modify
 | 
			
		||||
 *  it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -3,7 +3,7 @@
 | 
			
		||||
#   buildenv.sh - functions for altering the build environment before
 | 
			
		||||
#   compilation
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2015-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2015-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   buildflags.sh - Clear user-specified buildflags if requested
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
#   ccache - Cache compilations and reuse them to save time on repetitions
 | 
			
		||||
#   distcc - Distribute compilation of C and C++ across machines
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2007-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2007-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -3,7 +3,7 @@
 | 
			
		||||
#   debugflags.sh - Specify flags for building a package with debugging
 | 
			
		||||
#   symbols
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2012-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2012-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -3,7 +3,7 @@
 | 
			
		||||
#   lto.sh - Specify flags for building a package with link-time
 | 
			
		||||
#            optimisation
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   makeflags.sh - Clear user-specified makeflags if requested
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2007-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2007-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   executable.sh - confirm presence of dependent executables
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2018-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2018-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   ccache.sh - Confirm presence of ccache binary
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   checksum.sh - Confirm presence of binaries for checksum operations
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2016-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2016-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   distcc.sh - Confirm presence of distcc binary
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   fakeroot.sh - Confirm presence of fakeroot binary
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   gpg.sh - Confirm presence of gpg binary
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   gzip.sh - Confirm presence of gzip binary
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   pacman.sh - Confirm presence of pacman binary
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2012-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2012-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   strip.sh - Confirm presence of strip binary
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   sudo.sh - Confirm presence of sudo binary
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   vcs.sh - Confirm presence of binaries for VCS operations
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   integrity.sh - functions relating to source integrity checking
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   generate_checksum.sh - functions for generating source checksums
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   generate_signature.sh - functions for generating PGP signatures
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2008-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2008-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   verify_checksum.sh - functions for checking source checksums
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   verify_signature.sh - functions for checking PGP signatures
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2011-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   lint_config.sh - functions for checking for makepkg.conf errors
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2018-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2018-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   ext.sh - Check that source/package extensions have valid prefixes
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2019-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2019-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   paths.sh - Check that pathname components do not contain odd characters
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2018-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2018-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   source_date_epoch.sh - Check that reproducible builds timestamp is valid
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2018-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2018-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   variable.sh - Check that variables are or are not arrays as appropriate
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2018-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2018-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   lint_package.sh - functions for checking for packaging errors
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2015-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2015-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   build_references.sh - Warn about files containing references to build directories
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2013-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2013-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   dotfiles.sh - check for dotfiles in the package root
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2016-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2016-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   file_names.sh - check package file names
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2016-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2016-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   missing_backup.sh - Warn about missing files in the backup array
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2013-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2013-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   lint_pkgbuild.sh - functions for detecting PKGBUILD errors
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2015-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2015-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   arch.sh - Check the 'arch' array conforms to requirements.
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   arch_specific.sh - Check that arch specific variables can be arch specific.
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   backup.sh - Check the 'backup' array conforms to requirements.
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   changelog.sh - Check the files in the 'changelog' array exist.
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   checkdepends.sh - Check the 'checkdepends' array conforms to requirements.
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   conflicts.sh - Check the 'conflicts' array conforms to requirements.
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   depends.sh - Check the 'depends' array conforms to requirements.
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   epoch.sh - Check the 'epoch' variable conforms to requirements.
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   fullpkgver.sh - Check whether a full version conforms to requirements.
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2018-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2018-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   install.sh - Check the files in the 'install' array exist.
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   makedepends.sh - Check the 'makedepends' array conforms to requirements.
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   optdepends.sh - Check the 'optdepends' array conforms to requirements.
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   options.sh - Check the 'options' array conforms to requirements.
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
#
 | 
			
		||||
#   package_function.sh - Check that required package functions exist.
 | 
			
		||||
#
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@lists.archlinux.org>
 | 
			
		||||
#   Copyright (c) 2014-2021 Pacman Development Team <pacman-dev@archlinux.org>
 | 
			
		||||
#
 | 
			
		||||
#   This program is free software; you can redistribute it and/or modify
 | 
			
		||||
#   it under the terms of the GNU General Public License as published by
 | 
			
		||||
 
 | 
			
		||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user