errno.h | errno.h | |||
---|---|---|---|---|
/* | ||||
* Copyright (C) 2012-2013 Red Hat, Inc. | ||||
* | ||||
* Licensed under the GNU Lesser General Public License Version 2.1 | ||||
* | ||||
* This library is free software; you can redistribute it and/or | ||||
* modify it under the terms of the GNU Lesser General Public | ||||
* License as published by the Free Software Foundation; either | ||||
* version 2.1 of the License, or (at your option) any later version. | ||||
* | ||||
* This library is distributed in the hope that it will be useful, | ||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||||
* Lesser General Public License for more details. | ||||
* | ||||
* You should have received a copy of the GNU Lesser General Public | ||||
* License along with this library; if not, write to the Free Software | ||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 | ||||
USA | ||||
*/ | ||||
#ifndef HY_ERRNO_H | #ifndef HY_ERRNO_H | |||
#define HY_ERRNO_H | #define HY_ERRNO_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
enum _hy_errors_e { | enum _hy_errors_e { | |||
HY_E_FAILED = 1, // general runtime error | HY_E_FAILED = 1, // general runtime error | |||
HY_E_OP, // client programming error | HY_E_OP, // client programming error | |||
HY_E_LIBSOLV, // erorr propagated from libsolv | HY_E_LIBSOLV, // error propagated from libsolv | |||
HY_E_IO, // I/O error | HY_E_IO, // I/O error | |||
HY_E_CACHE_WRITE, // cache write error | HY_E_CACHE_WRITE, // cache write error | |||
HY_E_QUERY, // ill-formed query | HY_E_QUERY, // ill-formed query | |||
HY_E_ARCH, // unknown arch | HY_E_ARCH, // unknown arch | |||
HY_E_VALIDATION, // validation check failed | HY_E_VALIDATION, // validation check failed | |||
HY_E_SELECTOR, // ill-specified selector | HY_E_SELECTOR, // ill-specified selector | |||
HY_E_NO_SOLUTION, // goal found no solutions | HY_E_NO_SOLUTION, // goal found no solutions | |||
HY_E_NO_CAPABILITY, // the capability was not available | ||||
}; | }; | |||
extern __thread int hy_errno; | extern __thread int hy_errno; | |||
int hy_get_errno(void); | int hy_get_errno(void); | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif | #endif | |||
End of changes. 3 change blocks. | ||||
1 lines changed or deleted | 23 lines changed or added | |||
goal.h | goal.h | |||
---|---|---|---|---|
/* | ||||
* Copyright (C) 2012-2013 Red Hat, Inc. | ||||
* | ||||
* Licensed under the GNU Lesser General Public License Version 2.1 | ||||
* | ||||
* This library is free software; you can redistribute it and/or | ||||
* modify it under the terms of the GNU Lesser General Public | ||||
* License as published by the Free Software Foundation; either | ||||
* version 2.1 of the License, or (at your option) any later version. | ||||
* | ||||
* This library is distributed in the hope that it will be useful, | ||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||||
* Lesser General Public License for more details. | ||||
* | ||||
* You should have received a copy of the GNU Lesser General Public | ||||
* License along with this library; if not, write to the Free Software | ||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 | ||||
USA | ||||
*/ | ||||
#ifndef HY_GOAL_H | #ifndef HY_GOAL_H | |||
#define HY_GOAL_H | #define HY_GOAL_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
// hawkey | // hawkey | |||
#include "types.h" | #include "types.h" | |||
enum _hy_goal_op_flags { | enum _hy_goal_op_flags { | |||
HY_CHECK_INSTALLED = 1 << 0, | HY_CHECK_INSTALLED = 1 << 0, | |||
HY_CLEAN_DEPS = 1 << 1 | HY_CLEAN_DEPS = 1 << 1 | |||
}; | }; | |||
enum _hy_goal_run_flags { | enum _hy_goal_run_flags { | |||
HY_ALLOW_UNINSTALL = 1 | HY_ALLOW_UNINSTALL = 1 << 0, | |||
HY_FORCE_BEST = 1 << 1 | ||||
}; | }; | |||
#define HY_REASON_DEP 1 | #define HY_REASON_DEP 1 | |||
#define HY_REASON_USER 2 | #define HY_REASON_USER 2 | |||
HyGoal hy_goal_create(HySack sack); | HyGoal hy_goal_create(HySack sack); | |||
void hy_goal_free(HyGoal goal); | void hy_goal_free(HyGoal goal); | |||
int hy_goal_distupgrade_all(HyGoal goal); | int hy_goal_distupgrade_all(HyGoal goal); | |||
int hy_goal_distupgrade(HyGoal goal, HyPackage new_pkg); | ||||
int hy_goal_distupgrade_selector(HyGoal goal, HySelector); | ||||
int hy_goal_downgrade_to(HyGoal goal, HyPackage new_pkg); | int hy_goal_downgrade_to(HyGoal goal, HyPackage new_pkg); | |||
int hy_goal_erase(HyGoal goal, HyPackage pkg); | int hy_goal_erase(HyGoal goal, HyPackage pkg); | |||
int hy_goal_erase_flags(HyGoal goal, HyPackage pkg, int flags); | int hy_goal_erase_flags(HyGoal goal, HyPackage pkg, int flags); | |||
/** | /** | |||
* Erase packages specified by the Selector. | * Erase packages specified by the Selector. | |||
* | * | |||
* @returns 0 on success, HY_E_SELECTOR for an invalid Selector. | * @returns 0 on success, HY_E_SELECTOR for an invalid Selector. | |||
*/ | */ | |||
int hy_goal_erase_selector(HyGoal goal, HySelector sltr); | int hy_goal_erase_selector(HyGoal goal, HySelector sltr); | |||
int hy_goal_erase_selector_flags(HyGoal goal, HySelector sltr, int flags); | int hy_goal_erase_selector_flags(HyGoal goal, HySelector sltr, int flags); | |||
int hy_goal_install(HyGoal goal, HyPackage new_pkg); | int hy_goal_install(HyGoal goal, HyPackage new_pkg); | |||
int hy_goal_install_selector(HyGoal goal, HySelector sltr); | int hy_goal_install_selector(HyGoal goal, HySelector sltr); | |||
int hy_goal_upgrade_all(HyGoal goal); | int hy_goal_upgrade_all(HyGoal goal); | |||
int hy_goal_upgrade_to(HyGoal goal, HyPackage new_pkg); | int hy_goal_upgrade_to(HyGoal goal, HyPackage new_pkg); | |||
int hy_goal_upgrade_to_flags(HyGoal goal, HyPackage new_pkg, int flags); | int hy_goal_upgrade_to_flags(HyGoal goal, HyPackage new_pkg, int flags); | |||
int hy_goal_upgrade_selector(HyGoal goal, HySelector sltr); | int hy_goal_upgrade_selector(HyGoal goal, HySelector sltr); | |||
int hy_goal_upgrade_to_selector(HyGoal goal, HySelector sltr); | int hy_goal_upgrade_to_selector(HyGoal goal, HySelector sltr); | |||
int hy_goal_userinstalled(HyGoal goal, HyPackage pkg); | int hy_goal_userinstalled(HyGoal goal, HyPackage pkg); | |||
/* introspecting the requests */ | ||||
int hy_goal_req_has_distupgrade_all(HyGoal goal); | ||||
int hy_goal_req_has_erase(HyGoal goal); | ||||
int hy_goal_req_has_upgrade_all(HyGoal goal); | ||||
int hy_goal_req_length(HyGoal goal); | ||||
/* resolving the goal */ | ||||
int hy_goal_run(HyGoal goal); | int hy_goal_run(HyGoal goal); | |||
int hy_goal_run_flags(HyGoal goal, int flags); | int hy_goal_run_flags(HyGoal goal, int flags); | |||
int hy_goal_run_all(HyGoal goal, hy_solution_callback cb, void *cb_data); | int hy_goal_run_all(HyGoal goal, hy_solution_callback cb, void *cb_data); | |||
int hy_goal_run_all_flags(HyGoal goal, hy_solution_callback cb, void *cb_da ta, | int hy_goal_run_all_flags(HyGoal goal, hy_solution_callback cb, void *cb_da ta, | |||
int flags); | int flags); | |||
/* problems */ | /* problems */ | |||
int hy_goal_count_problems(HyGoal goal); | int hy_goal_count_problems(HyGoal goal); | |||
char *hy_goal_describe_problem(HyGoal goal, unsigned i); | char *hy_goal_describe_problem(HyGoal goal, unsigned i); | |||
int hy_goal_log_decisions(HyGoal goal); | int hy_goal_log_decisions(HyGoal goal); | |||
int hy_goal_write_debugdata(HyGoal goal, const char *dir); | ||||
/* result processing */ | /* result processing */ | |||
HyPackageList hy_goal_list_erasures(HyGoal goal); | HyPackageList hy_goal_list_erasures(HyGoal goal); | |||
HyPackageList hy_goal_list_installs(HyGoal goal); | HyPackageList hy_goal_list_installs(HyGoal goal); | |||
HyPackageList hy_goal_list_obsoleted(HyGoal goal); | ||||
HyPackageList hy_goal_list_reinstalls(HyGoal goal); | HyPackageList hy_goal_list_reinstalls(HyGoal goal); | |||
HyPackageList hy_goal_list_unneeded(HyGoal goal); | ||||
HyPackageList hy_goal_list_upgrades(HyGoal goal); | HyPackageList hy_goal_list_upgrades(HyGoal goal); | |||
HyPackageList hy_goal_list_downgrades(HyGoal goal); | HyPackageList hy_goal_list_downgrades(HyGoal goal); | |||
HyPackage hy_goal_package_obsoletes(HyGoal goal, HyPackage pkg); | HyPackageList hy_goal_list_obsoleted_by_package(HyGoal goal, HyPackage pkg) ; | |||
int hy_goal_get_reason(HyGoal goal, HyPackage pkg); | int hy_goal_get_reason(HyGoal goal, HyPackage pkg); | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif | #endif | |||
#endif | #endif | |||
End of changes. 9 change blocks. | ||||
3 lines changed or deleted | 38 lines changed or added | |||
package.h | package.h | |||
---|---|---|---|---|
/* | ||||
* Copyright (C) 2012-2014 Red Hat, Inc. | ||||
* | ||||
* Licensed under the GNU Lesser General Public License Version 2.1 | ||||
* | ||||
* This library is free software; you can redistribute it and/or | ||||
* modify it under the terms of the GNU Lesser General Public | ||||
* License as published by the Free Software Foundation; either | ||||
* version 2.1 of the License, or (at your option) any later version. | ||||
* | ||||
* This library is distributed in the hope that it will be useful, | ||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||||
* Lesser General Public License for more details. | ||||
* | ||||
* You should have received a copy of the GNU Lesser General Public | ||||
* License along with this library; if not, write to the Free Software | ||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 | ||||
USA | ||||
*/ | ||||
#ifndef HY_PACKAGE_H | #ifndef HY_PACKAGE_H | |||
#define HY_PACKAGE_H | #define HY_PACKAGE_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
// hawkey | // hawkey | |||
#include "types.h" | #include "types.h" | |||
// deprecated in 0.4.12, eligible for dropping after 2014-07-07 AND no soon | ||||
er | ||||
// than in 0.4.15, use HyAdvisoryType instead | ||||
typedef enum { | ||||
HY_UPDATE_SEVERITY_SECURITY, /* ordered by rough importance */ | ||||
HY_UPDATE_SEVERITY_IMPORTANT, | ||||
HY_UPDATE_SEVERITY_BUGFIX, | ||||
HY_UPDATE_SEVERITY_NORMAL, | ||||
HY_UPDATE_SEVERITY_ENHANCEMENT, | ||||
HY_UPDATE_SEVERITY_LOW, | ||||
HY_UPDATE_SEVERITY_UNKNOWN, | ||||
} HyUpdateSeverity; | ||||
/* public */ | /* public */ | |||
void hy_package_free(HyPackage pkg); | void hy_package_free(HyPackage pkg); | |||
HyPackage hy_package_link(HyPackage pkg); | HyPackage hy_package_link(HyPackage pkg); | |||
int hy_package_identical(HyPackage pkg1, HyPackage pkg2); | int hy_package_identical(HyPackage pkg1, HyPackage pkg2); | |||
int hy_package_installed(HyPackage pkg); | ||||
int hy_package_cmp(HyPackage pkg1, HyPackage pkg2); | int hy_package_cmp(HyPackage pkg1, HyPackage pkg2); | |||
int hy_package_evr_cmp(HyPackage pkg1, HyPackage pkg2); | int hy_package_evr_cmp(HyPackage pkg1, HyPackage pkg2); | |||
char *hy_package_get_location(HyPackage pkg); | char *hy_package_get_location(HyPackage pkg); | |||
const char *hy_package_get_baseurl(HyPackage pkg); | ||||
char *hy_package_get_nevra(HyPackage pkg); | char *hy_package_get_nevra(HyPackage pkg); | |||
char *hy_package_get_sourcerpm(HyPackage pkg); | char *hy_package_get_sourcerpm(HyPackage pkg); | |||
char *hy_package_get_version(HyPackage pkg); | char *hy_package_get_version(HyPackage pkg); | |||
char *hy_package_get_release(HyPackage pkg); | char *hy_package_get_release(HyPackage pkg); | |||
const char *hy_package_get_name(HyPackage pkg); | const char *hy_package_get_name(HyPackage pkg); | |||
const char *hy_package_get_arch(HyPackage pkg); | const char *hy_package_get_arch(HyPackage pkg); | |||
const unsigned char *hy_package_get_chksum(HyPackage pkg, int *type); | const unsigned char *hy_package_get_chksum(HyPackage pkg, int *type); | |||
const char *hy_package_get_description(HyPackage pkg); | const char *hy_package_get_description(HyPackage pkg); | |||
const char *hy_package_get_evr(HyPackage pkg); | const char *hy_package_get_evr(HyPackage pkg); | |||
const char *hy_package_get_license(HyPackage pkg); | const char *hy_package_get_license(HyPackage pkg); | |||
const unsigned char *hy_package_get_hdr_chksum(HyPackage pkg, int *type); | const unsigned char *hy_package_get_hdr_chksum(HyPackage pkg, int *type); | |||
const char *hy_package_get_packager(HyPackage pkg); | const char *hy_package_get_packager(HyPackage pkg); | |||
const char *hy_package_get_reponame(HyPackage pkg); | const char *hy_package_get_reponame(HyPackage pkg); | |||
const char *hy_package_get_summary(HyPackage pkg); | const char *hy_package_get_summary(HyPackage pkg); | |||
const char *hy_package_get_url(HyPackage pkg); | const char *hy_package_get_url(HyPackage pkg); | |||
unsigned long long hy_package_get_downloadsize(HyPackage pkg); | ||||
unsigned long long hy_package_get_epoch(HyPackage pkg); | unsigned long long hy_package_get_epoch(HyPackage pkg); | |||
unsigned long long hy_package_get_hdr_end(HyPackage pkg); | ||||
unsigned long long hy_package_get_installsize(HyPackage pkg); | ||||
unsigned long long hy_package_get_medianr(HyPackage pkg); | unsigned long long hy_package_get_medianr(HyPackage pkg); | |||
unsigned long long hy_package_get_rpmdbid(HyPackage pkg); | unsigned long long hy_package_get_rpmdbid(HyPackage pkg); | |||
unsigned long long hy_package_get_size(HyPackage pkg); | unsigned long long hy_package_get_size(HyPackage pkg); | |||
unsigned long long hy_package_get_buildtime(HyPackage pkg); | unsigned long long hy_package_get_buildtime(HyPackage pkg); | |||
unsigned long long hy_package_get_installtime(HyPackage pkg); | unsigned long long hy_package_get_installtime(HyPackage pkg); | |||
HyReldepList hy_package_get_conflicts(HyPackage pkg); | ||||
HyReldepList hy_package_get_obsoletes(HyPackage pkg); | HyReldepList hy_package_get_obsoletes(HyPackage pkg); | |||
HyReldepList hy_package_get_provides(HyPackage pkg); | ||||
HyReldepList hy_package_get_requires(HyPackage pkg); | HyReldepList hy_package_get_requires(HyPackage pkg); | |||
HyStringArray hy_package_get_files(HyPackage pkg); | ||||
HyAdvisoryList hy_package_get_advisories(HyPackage pkg, int cmp_type); | ||||
typedef void (*HyUserdataDestroy) (void *userdata); | ||||
void *hy_package_get_userdata(HyPackage pkg); | ||||
void hy_package_set_userdata(HyPackage pkg, void *userdata, HyUserdataDestr | ||||
oy destroy_func); | ||||
HyPackageDelta hy_package_get_delta_from_evr(HyPackage pkg, const char *fro m_evr); | HyPackageDelta hy_package_get_delta_from_evr(HyPackage pkg, const char *fro m_evr); | |||
const char *hy_packagedelta_get_location(HyPackageDelta delta); | const char *hy_packagedelta_get_location(HyPackageDelta delta); | |||
const char *hy_packagedelta_get_baseurl(HyPackageDelta delta); | ||||
unsigned long long hy_packagedelta_get_downloadsize(HyPackageDelta delta); | ||||
const unsigned char *hy_packagedelta_get_chksum(HyPackageDelta delta, int * | ||||
type); | ||||
void hy_packagedelta_free(HyPackageDelta delta); | void hy_packagedelta_free(HyPackageDelta delta); | |||
// deprecated in 0.4.12, eligible for dropping after 2014-07-07 AND no soon | ||||
er | ||||
// than in 0.4.15, use hy_advisory_get_type instead | ||||
HyUpdateSeverity hy_package_get_update_severity(HyPackage pkg); | ||||
// deprecated in 0.4.12, eligible for dropping after 2014-07-07 AND no soon | ||||
er | ||||
// than in 0.4.15, use hy_advisory_get_id instead | ||||
const char *hy_package_get_update_name(HyPackage pkg); | ||||
// deprecated in 0.4.12, eligible for dropping after 2014-07-07 AND no soon | ||||
er | ||||
// than in 0.4.15, use hy_advisory_get_description instead | ||||
const char *hy_package_get_update_description(HyPackage pkg); | ||||
// deprecated in 0.4.12, eligible for dropping after 2014-07-07 AND no soon | ||||
er | ||||
// than in 0.4.15, use hy_advisory_get_updated instead | ||||
unsigned long long hy_package_get_update_issued(HyPackage pkg); | ||||
// deprecated in 0.4.12, eligible for dropping after 2014-07-07 AND no soon | ||||
er | ||||
// than in 0.4.15, use hy_advisory_get_references instead | ||||
HyStringArray hy_package_get_update_urls_bugzilla(HyPackage pkg); | ||||
// deprecated in 0.4.12, eligible for dropping after 2014-07-07 AND no soon | ||||
er | ||||
// than in 0.4.15, use hy_advisory_get_references instead | ||||
HyStringArray hy_package_get_update_urls_cve(HyPackage pkg); | ||||
// deprecated in 0.4.12, eligible for dropping after 2014-07-07 AND no soon | ||||
er | ||||
// than in 0.4.15, use hy_advisory_get_references instead | ||||
HyStringArray hy_package_get_update_urls_vendor(HyPackage pkg); | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif | #endif | |||
#endif | #endif | |||
End of changes. 11 change blocks. | ||||
0 lines changed or deleted | 81 lines changed or added | |||
packagelist.h | packagelist.h | |||
---|---|---|---|---|
/* | ||||
* Copyright (C) 2012-2013 Red Hat, Inc. | ||||
* | ||||
* Licensed under the GNU Lesser General Public License Version 2.1 | ||||
* | ||||
* This library is free software; you can redistribute it and/or | ||||
* modify it under the terms of the GNU Lesser General Public | ||||
* License as published by the Free Software Foundation; either | ||||
* version 2.1 of the License, or (at your option) any later version. | ||||
* | ||||
* This library is distributed in the hope that it will be useful, | ||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||||
* Lesser General Public License for more details. | ||||
* | ||||
* You should have received a copy of the GNU Lesser General Public | ||||
* License along with this library; if not, write to the Free Software | ||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 | ||||
USA | ||||
*/ | ||||
#ifndef HY_PACKAGELIST_H | #ifndef HY_PACKAGELIST_H | |||
#define HY_PACKAGELIST_H | #define HY_PACKAGELIST_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
// hawkey | // hawkey | |||
#include "types.h" | #include "types.h" | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 21 lines changed or added | |||
packageset.h | packageset.h | |||
---|---|---|---|---|
/* | ||||
* Copyright (C) 2012-2013 Red Hat, Inc. | ||||
* | ||||
* Licensed under the GNU Lesser General Public License Version 2.1 | ||||
* | ||||
* This library is free software; you can redistribute it and/or | ||||
* modify it under the terms of the GNU Lesser General Public | ||||
* License as published by the Free Software Foundation; either | ||||
* version 2.1 of the License, or (at your option) any later version. | ||||
* | ||||
* This library is distributed in the hope that it will be useful, | ||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||||
* Lesser General Public License for more details. | ||||
* | ||||
* You should have received a copy of the GNU Lesser General Public | ||||
* License along with this library; if not, write to the Free Software | ||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 | ||||
USA | ||||
*/ | ||||
#ifndef HY_PACKAGESET_H | #ifndef HY_PACKAGESET_H | |||
#define HY_PACKAGESET_H | #define HY_PACKAGESET_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
// hawkey | // hawkey | |||
#include "types.h" | #include "types.h" | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 21 lines changed or added | |||
query.h | query.h | |||
---|---|---|---|---|
/* | ||||
* Copyright (C) 2012-2014 Red Hat, Inc. | ||||
* | ||||
* Licensed under the GNU Lesser General Public License Version 2.1 | ||||
* | ||||
* This library is free software; you can redistribute it and/or | ||||
* modify it under the terms of the GNU Lesser General Public | ||||
* License as published by the Free Software Foundation; either | ||||
* version 2.1 of the License, or (at your option) any later version. | ||||
* | ||||
* This library is distributed in the hope that it will be useful, | ||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||||
* Lesser General Public License for more details. | ||||
* | ||||
* You should have received a copy of the GNU Lesser General Public | ||||
* License along with this library; if not, write to the Free Software | ||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 | ||||
USA | ||||
*/ | ||||
#ifndef HY_QUERY_H | #ifndef HY_QUERY_H | |||
#define HY_QUERY_H | #define HY_QUERY_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
/* hawkey */ | /* hawkey */ | |||
#include "types.h" | #include "types.h" | |||
enum _hy_query_flags { | ||||
HY_IGNORE_EXCLUDES = 1 << 0 | ||||
}; | ||||
HyQuery hy_query_create(HySack sack); | HyQuery hy_query_create(HySack sack); | |||
HyQuery hy_query_create_flags(HySack sack, int flags); | ||||
void hy_query_free(HyQuery q); | void hy_query_free(HyQuery q); | |||
void hy_query_clear(HyQuery q); | void hy_query_clear(HyQuery q); | |||
HyQuery hy_query_clone(HyQuery q); | HyQuery hy_query_clone(HyQuery q); | |||
int hy_query_filter(HyQuery q, int keyname, int cmp_type, const char *match ); | int hy_query_filter(HyQuery q, int keyname, int cmp_type, const char *match ); | |||
int hy_query_filter_empty(HyQuery q); | int hy_query_filter_empty(HyQuery q); | |||
int hy_query_filter_in(HyQuery q, int keyname, int cmp_type, | int hy_query_filter_in(HyQuery q, int keyname, int cmp_type, | |||
const char **matches); | const char **matches); | |||
int hy_query_filter_num(HyQuery q, int keyname, int cmp_type, | int hy_query_filter_num(HyQuery q, int keyname, int cmp_type, | |||
int match); | int match); | |||
int hy_query_filter_num_in(HyQuery q, int keyname, int cmp_type, int nmatch es, | int hy_query_filter_num_in(HyQuery q, int keyname, int cmp_type, int nmatch es, | |||
const int *matches); | const int *matches); | |||
int hy_query_filter_package_in(HyQuery q, int keyname, int cmp_type, | int hy_query_filter_package_in(HyQuery q, int keyname, int cmp_type, | |||
const HyPackageSet pset); | const HyPackageSet pset); | |||
int hy_query_filter_reldep(HyQuery q, int keyname, const HyReldep reldep); | int hy_query_filter_reldep(HyQuery q, int keyname, const HyReldep reldep); | |||
int hy_query_filter_reldep_in(HyQuery q, int keyname, | int hy_query_filter_reldep_in(HyQuery q, int keyname, | |||
const HyReldepList reldeplist); | const HyReldepList reldeplist); | |||
int hy_query_filter_provides(HyQuery q, int cmp_type, const char *name, | int hy_query_filter_provides(HyQuery q, int cmp_type, const char *name, | |||
const char *evr); | const char *evr); | |||
int hy_query_filter_provides_in(HyQuery q, char **reldep_strs); | ||||
int hy_query_filter_requires(HyQuery q, int cmp_type, const char *name, | int hy_query_filter_requires(HyQuery q, int cmp_type, const char *name, | |||
const char *evr); | const char *evr); | |||
/** | /** | |||
* Filter packages that are installed and have higher version than other no | ||||
t | ||||
* installed packages that are named same. | ||||
* | ||||
* NOTE: this does not guarantee packages filtered in this way are downgrad | ||||
able. | ||||
*/ | ||||
void hy_query_filter_downgradable(HyQuery q, int val); | ||||
/** | ||||
* Filter packages that are named same as an installed package but lower ve rsion. | * Filter packages that are named same as an installed package but lower ve rsion. | |||
* | * | |||
* NOTE: this does not guerantee packages filtered in this way are installa ble. | * NOTE: this does not guarantee packages filtered in this way are installa ble. | |||
*/ | */ | |||
void hy_query_filter_downgrades(HyQuery q, int val); | void hy_query_filter_downgrades(HyQuery q, int val); | |||
/** | /** | |||
* Filter packages that are installed and have lower version than other not | ||||
* installed packages that are named same. | ||||
* | ||||
* NOTE: this does not guarantee packages filtered in this way are upgradab | ||||
le. | ||||
*/ | ||||
void hy_query_filter_upgradable(HyQuery q, int val); | ||||
/** | ||||
* Filter packages that are named same as an installed package but higher v ersion. | * Filter packages that are named same as an installed package but higher v ersion. | |||
* | * | |||
* NOTE: this does not guerantee packages filtered in this way are installa ble. | * NOTE: this does not guarantee packages filtered in this way are installa ble. | |||
*/ | */ | |||
void hy_query_filter_upgrades(HyQuery q, int val); | void hy_query_filter_upgrades(HyQuery q, int val); | |||
void hy_query_filter_latest_per_arch(HyQuery q, int val); | ||||
void hy_query_filter_latest(HyQuery q, int val); | void hy_query_filter_latest(HyQuery q, int val); | |||
HyPackageList hy_query_run(HyQuery q); | HyPackageList hy_query_run(HyQuery q); | |||
HyPackageSet hy_query_run_set(HyQuery q); | HyPackageSet hy_query_run_set(HyQuery q); | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif | #endif | |||
#endif /* HY_QUERY_H */ | #endif /* HY_QUERY_H */ | |||
End of changes. 9 change blocks. | ||||
2 lines changed or deleted | 47 lines changed or added | |||
reldep.h | reldep.h | |||
---|---|---|---|---|
/* | ||||
* Copyright (C) 2012-2013 Red Hat, Inc. | ||||
* | ||||
* Licensed under the GNU Lesser General Public License Version 2.1 | ||||
* | ||||
* This library is free software; you can redistribute it and/or | ||||
* modify it under the terms of the GNU Lesser General Public | ||||
* License as published by the Free Software Foundation; either | ||||
* version 2.1 of the License, or (at your option) any later version. | ||||
* | ||||
* This library is distributed in the hope that it will be useful, | ||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||||
* Lesser General Public License for more details. | ||||
* | ||||
* You should have received a copy of the GNU Lesser General Public | ||||
* License along with this library; if not, write to the Free Software | ||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 | ||||
USA | ||||
*/ | ||||
#ifndef HY_RELDEP_H | #ifndef HY_RELDEP_H | |||
#define HY_RELDEP_H | #define HY_RELDEP_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
/* hawkey */ | /* hawkey */ | |||
#include "types.h" | #include "types.h" | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 21 lines changed or added | |||
repo.h | repo.h | |||
---|---|---|---|---|
/* | ||||
* Copyright (C) 2012-2013 Red Hat, Inc. | ||||
* | ||||
* Licensed under the GNU Lesser General Public License Version 2.1 | ||||
* | ||||
* This library is free software; you can redistribute it and/or | ||||
* modify it under the terms of the GNU Lesser General Public | ||||
* License as published by the Free Software Foundation; either | ||||
* version 2.1 of the License, or (at your option) any later version. | ||||
* | ||||
* This library is distributed in the hope that it will be useful, | ||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||||
* Lesser General Public License for more details. | ||||
* | ||||
* You should have received a copy of the GNU Lesser General Public | ||||
* License along with this library; if not, write to the Free Software | ||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 | ||||
USA | ||||
*/ | ||||
#ifndef HY_REPO_H | #ifndef HY_REPO_H | |||
#define HY_REPO_H | #define HY_REPO_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
// hawkey | // hawkey | |||
#include "types.h" | #include "types.h" | |||
enum _hy_repo_param_e { | enum _hy_repo_param_e { | |||
HY_REPO_NAME, | HY_REPO_NAME, | |||
HY_REPO_MD_FN, | HY_REPO_MD_FN, | |||
HY_REPO_PRESTO_FN, | HY_REPO_PRESTO_FN, | |||
HY_REPO_PRIMARY_FN, | HY_REPO_PRIMARY_FN, | |||
HY_REPO_FILELISTS_FN | HY_REPO_FILELISTS_FN, | |||
HY_REPO_UPDATEINFO_FN | ||||
}; | }; | |||
HyRepo hy_repo_create(const char *name); | HyRepo hy_repo_create(const char *name); | |||
int hy_repo_get_cost(HyRepo repo); | ||||
void hy_repo_set_cost(HyRepo repo, int value); | ||||
void hy_repo_set_string(HyRepo repo, int which, const char *str_val); | void hy_repo_set_string(HyRepo repo, int which, const char *str_val); | |||
const char *hy_repo_get_string(HyRepo repo, int which); | const char *hy_repo_get_string(HyRepo repo, int which); | |||
void hy_repo_free(HyRepo repo); | void hy_repo_free(HyRepo repo); | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif | #endif | |||
#endif /* HY_REPO_H */ | #endif /* HY_REPO_H */ | |||
End of changes. 3 change blocks. | ||||
1 lines changed or deleted | 25 lines changed or added | |||
sack.h | sack.h | |||
---|---|---|---|---|
/* | ||||
* Copyright (C) 2012-2013 Red Hat, Inc. | ||||
* | ||||
* Licensed under the GNU Lesser General Public License Version 2.1 | ||||
* | ||||
* This library is free software; you can redistribute it and/or | ||||
* modify it under the terms of the GNU Lesser General Public | ||||
* License as published by the Free Software Foundation; either | ||||
* version 2.1 of the License, or (at your option) any later version. | ||||
* | ||||
* This library is distributed in the hope that it will be useful, | ||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||||
* Lesser General Public License for more details. | ||||
* | ||||
* You should have received a copy of the GNU Lesser General Public | ||||
* License along with this library; if not, write to the Free Software | ||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 | ||||
USA | ||||
*/ | ||||
#ifndef HY_SACK_H | #ifndef HY_SACK_H | |||
#define HY_SACK_H | #define HY_SACK_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
// hawkey | // hawkey | |||
#include "types.h" | #include "types.h" | |||
enum _hy_sack_sack_create_flags { | ||||
HY_MAKE_CACHE_DIR = 1 << 0 | ||||
}; | ||||
enum _hy_sack_repo_load_flags { | enum _hy_sack_repo_load_flags { | |||
HY_BUILD_CACHE = 1 << 0, | HY_BUILD_CACHE = 1 << 0, | |||
HY_LOAD_FILELISTS = 1 << 1, | HY_LOAD_FILELISTS = 1 << 1, | |||
HY_LOAD_PRESTO = 1 << 2 | HY_LOAD_PRESTO = 1 << 2, | |||
HY_LOAD_UPDATEINFO = 1 << 3 | ||||
}; | }; | |||
HySack hy_sack_create(const char *cache_path, const char *arch); | HySack hy_sack_create(const char *cache_path, const char *arch, | |||
const char *rootdir, int flags); | ||||
void hy_sack_free(HySack sack); | void hy_sack_free(HySack sack); | |||
const char *hy_sack_get_cache_path(HySack sack); | int hy_sack_evr_cmp(HySack sack, const char *evr1, const char *evr2); | |||
const char *hy_sack_get_cache_dir(HySack sack); | ||||
char *hy_sack_give_cache_fn(HySack sack, const char *reponame, const char * ext); | char *hy_sack_give_cache_fn(HySack sack, const char *reponame, const char * ext); | |||
const char **hy_sack_list_arches(HySack sack); | const char **hy_sack_list_arches(HySack sack); | |||
void hy_sack_set_installonly(HySack sack, const char **installonly); | void hy_sack_set_installonly(HySack sack, const char **installonly); | |||
void hy_sack_set_installonly_limit(HySack sack, int limit); | ||||
void hy_sack_create_cmdline_repo(HySack sack); | void hy_sack_create_cmdline_repo(HySack sack); | |||
HyPackage hy_sack_add_cmdline_package(HySack sack, const char *fn); | HyPackage hy_sack_add_cmdline_package(HySack sack, const char *fn); | |||
int hy_sack_count(HySack sack); | int hy_sack_count(HySack sack); | |||
void hy_sack_add_excludes(HySack sack, HyPackageSet pset); | ||||
void hy_sack_set_excludes(HySack sack, HyPackageSet pset); | ||||
int hy_sack_repo_enabled(HySack sack, const char *reponame, int enabled); | ||||
/** | /** | |||
* Load RPMDB, the system package database. | * Load RPMDB, the system package database. | |||
* | * | |||
* @returns 0 on success, HY_E_IO on fatal error, | * @returns 0 on success, HY_E_IO on fatal error, | |||
* HY_E_CACHE_WRITE on cache write error. | * HY_E_CACHE_WRITE on cache write error. | |||
*/ | */ | |||
int hy_sack_load_system_repo(HySack sack, HyRepo a_hrepo, int flags); | int hy_sack_load_system_repo(HySack sack, HyRepo a_hrepo, int flags); | |||
int hy_sack_load_yum_repo(HySack sack, HyRepo hrepo, int flags); | int hy_sack_load_yum_repo(HySack sack, HyRepo hrepo, int flags); | |||
End of changes. 7 change blocks. | ||||
3 lines changed or deleted | 35 lines changed or added | |||
selector.h | selector.h | |||
---|---|---|---|---|
/* | ||||
* Copyright (C) 2012-2013 Red Hat, Inc. | ||||
* | ||||
* Licensed under the GNU Lesser General Public License Version 2.1 | ||||
* | ||||
* This library is free software; you can redistribute it and/or | ||||
* modify it under the terms of the GNU Lesser General Public | ||||
* License as published by the Free Software Foundation; either | ||||
* version 2.1 of the License, or (at your option) any later version. | ||||
* | ||||
* This library is distributed in the hope that it will be useful, | ||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||||
* Lesser General Public License for more details. | ||||
* | ||||
* You should have received a copy of the GNU Lesser General Public | ||||
* License along with this library; if not, write to the Free Software | ||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 | ||||
USA | ||||
*/ | ||||
#ifndef HY_SELECTOR_H | #ifndef HY_SELECTOR_H | |||
#define HY_SELECTOR_H | #define HY_SELECTOR_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
#include "types.h" | #include "types.h" | |||
HySelector hy_selector_create(HySack sack); | HySelector hy_selector_create(HySack sack); | |||
void hy_selector_free(HySelector sltr); | void hy_selector_free(HySelector sltr); | |||
int hy_selector_set(HySelector sltr, int keyname, int cmp_type, | int hy_selector_set(HySelector sltr, int keyname, int cmp_type, | |||
const char *match); | const char *match); | |||
HyPackageList hy_selector_matches(HySelector sltr); | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif | #endif | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
0 lines changed or deleted | 22 lines changed or added | |||
types.h | types.h | |||
---|---|---|---|---|
/* | ||||
* Copyright (C) 2012-2014 Red Hat, Inc. | ||||
* | ||||
* Licensed under the GNU Lesser General Public License Version 2.1 | ||||
* | ||||
* This library is free software; you can redistribute it and/or | ||||
* modify it under the terms of the GNU Lesser General Public | ||||
* License as published by the Free Software Foundation; either | ||||
* version 2.1 of the License, or (at your option) any later version. | ||||
* | ||||
* This library is distributed in the hope that it will be useful, | ||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||||
* Lesser General Public License for more details. | ||||
* | ||||
* You should have received a copy of the GNU Lesser General Public | ||||
* License along with this library; if not, write to the Free Software | ||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 | ||||
USA | ||||
*/ | ||||
#ifndef HY_TYPES_H | #ifndef HY_TYPES_H | |||
#define HY_TYPES_H | #define HY_TYPES_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
typedef enum _HyForm HyForm; | ||||
typedef struct _HyAdvisory * HyAdvisory; | ||||
typedef struct _HyAdvisoryList * HyAdvisoryList; | ||||
typedef struct _HyAdvisoryRef * HyAdvisoryRef; | ||||
typedef struct _HyAdvisoryRefList * HyAdvisoryRefList; | ||||
typedef struct _HyRepo * HyRepo; | typedef struct _HyRepo * HyRepo; | |||
typedef struct _HyGoal * HyGoal; | typedef struct _HyGoal * HyGoal; | |||
typedef struct _HyNevra * HyNevra; | ||||
typedef struct _HyPackage * HyPackage; | typedef struct _HyPackage * HyPackage; | |||
typedef struct _HyPackageDelta * HyPackageDelta; | typedef struct _HyPackageDelta * HyPackageDelta; | |||
typedef struct _HyPackageList * HyPackageList; | typedef struct _HyPackageList * HyPackageList; | |||
typedef struct _HyPackageListIter * HyPackageListIter; | typedef struct _HyPackageListIter * HyPackageListIter; | |||
typedef struct _HyPackageSet * HyPackageSet; | typedef struct _HyPackageSet * HyPackageSet; | |||
typedef struct _HyPossibilities * HyPossibilities; | ||||
typedef struct _HyQuery * HyQuery; | typedef struct _HyQuery * HyQuery; | |||
typedef struct _HyReldep * HyReldep; | typedef struct _HyReldep * HyReldep; | |||
typedef struct _HyReldepList * HyReldepList; | typedef struct _HyReldepList * HyReldepList; | |||
typedef struct _HySack * HySack; | typedef struct _HySack * HySack; | |||
typedef struct _HySelector * HySelector; | typedef struct _HySelector * HySelector; | |||
typedef char ** HyStringArray; | ||||
typedef char * HySubject; | ||||
typedef const unsigned char HyChecksum; | typedef const unsigned char HyChecksum; | |||
typedef int (*hy_solution_callback)(HyGoal goal, void *callback_data); | typedef int (*hy_solution_callback)(HyGoal goal, void *callback_data); | |||
#define HY_SYSTEM_REPO_NAME "@System" | #define HY_SYSTEM_REPO_NAME "@System" | |||
#define HY_SYSTEM_RPMDB "/var/lib/rpm/Packages" | ||||
#define HY_CMDLINE_REPO_NAME "@commandline" | #define HY_CMDLINE_REPO_NAME "@commandline" | |||
#define HY_EXT_FILENAMES "-filenames" | #define HY_EXT_FILENAMES "-filenames" | |||
#define HY_EXT_UPDATEINFO "-updateinfo" | ||||
#define HY_EXT_PRESTO "-presto" | #define HY_EXT_PRESTO "-presto" | |||
#define HY_CHKSUM_MD5 1 | #define HY_CHKSUM_MD5 1 | |||
#define HY_CHKSUM_SHA1 2 | #define HY_CHKSUM_SHA1 2 | |||
#define HY_CHKSUM_SHA256 3 | #define HY_CHKSUM_SHA256 3 | |||
enum _hy_key_name_e { | enum _hy_key_name_e { | |||
HY_PKG, | HY_PKG, | |||
HY_PKG_ALL, | HY_PKG_ALL, | |||
HY_PKG_ARCH, | HY_PKG_ARCH, | |||
HY_PKG_CONFLICTS, | ||||
HY_PKG_DESCRIPTION, | HY_PKG_DESCRIPTION, | |||
HY_PKG_EPOCH, | HY_PKG_EPOCH, | |||
HY_PKG_EVR, | HY_PKG_EVR, | |||
HY_PKG_FILE, | HY_PKG_FILE, | |||
HY_PKG_NAME, | HY_PKG_NAME, | |||
HY_PKG_NEVRA, | ||||
HY_PKG_OBSOLETES, | HY_PKG_OBSOLETES, | |||
HY_PKG_PROVIDES, | HY_PKG_PROVIDES, | |||
HY_PKG_RELEASE, | HY_PKG_RELEASE, | |||
HY_PKG_REPONAME, | HY_PKG_REPONAME, | |||
HY_PKG_REQUIRES, | HY_PKG_REQUIRES, | |||
HY_PKG_SOURCERPM, | HY_PKG_SOURCERPM, | |||
HY_PKG_SUMMARY, | HY_PKG_SUMMARY, | |||
HY_PKG_URL, | HY_PKG_URL, | |||
HY_PKG_VERSION | HY_PKG_VERSION, | |||
HY_PKG_LOCATION | ||||
}; | }; | |||
enum _hy_comparison_type_e { | enum _hy_comparison_type_e { | |||
/* part 1: flags that mix with all types */ | /* part 1: flags that mix with all types */ | |||
HY_ICASE = 1 << 0, | HY_ICASE = 1 << 0, | |||
HY_NOT = 1 << 1, | HY_NOT = 1 << 1, | |||
HY_COMPARISON_FLAG_MASK = HY_ICASE | HY_NOT, | HY_COMPARISON_FLAG_MASK = HY_ICASE | HY_NOT, | |||
/* part 2: comparison types that mix with each other */ | /* part 2: comparison types that mix with each other */ | |||
HY_EQ = (1 << 8), | HY_EQ = (1 << 8), | |||
HY_LT = (1 << 9), | HY_LT = (1 << 9), | |||
HY_GT = (1 << 10), | HY_GT = (1 << 10), | |||
/* part 3: comparison types that only make sense for strings */ | /* part 3: comparison types that only make sense for strings */ | |||
HY_SUBSTR = (1 << 11), | HY_SUBSTR = (1 << 11), | |||
HY_GLOB = (1 << 12), | HY_GLOB = (1 << 12), | |||
/* part 4: frequently used combinations */ | /* part 4: frequently used combinations */ | |||
HY_NEQ = HY_EQ | HY_NOT, | HY_NEQ = HY_EQ | HY_NOT, | |||
/* part 5: additional flags, not necessarily used for queries */ | ||||
HY_NAME_ONLY = (1 << 16), | ||||
}; | }; | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif | #endif | |||
#endif /* HY_TYPES_H */ | #endif /* HY_TYPES_H */ | |||
End of changes. 11 change blocks. | ||||
2 lines changed or deleted | 38 lines changed or added | |||
util.h | util.h | |||
---|---|---|---|---|
/* | ||||
* Copyright (C) 2012-2013 Red Hat, Inc. | ||||
* | ||||
* Licensed under the GNU Lesser General Public License Version 2.1 | ||||
* | ||||
* This library is free software; you can redistribute it and/or | ||||
* modify it under the terms of the GNU Lesser General Public | ||||
* License as published by the Free Software Foundation; either | ||||
* version 2.1 of the License, or (at your option) any later version. | ||||
* | ||||
* This library is distributed in the hope that it will be useful, | ||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||||
* Lesser General Public License for more details. | ||||
* | ||||
* You should have received a copy of the GNU Lesser General Public | ||||
* License along with this library; if not, write to the Free Software | ||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 | ||||
USA | ||||
*/ | ||||
#ifndef HY_UTIL_H | #ifndef HY_UTIL_H | |||
#define HY_UTIL_H | #define HY_UTIL_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
void *hy_free(void *mem); | void *hy_free(void *mem); | |||
void *hy_free_strs(char **strs); | ||||
const char *hy_chksum_name(int chksum_type); | const char *hy_chksum_name(int chksum_type); | |||
int hy_chksum_type(const char *chksum_name); | int hy_chksum_type(const char *chksum_name); | |||
char *hy_chksum_str(const unsigned char *chksum, int type); | char *hy_chksum_str(const unsigned char *chksum, int type); | |||
int hy_detect_arch(char **arch); | ||||
int hy_split_nevra(const char *nevra, char **name, long int *epoch, | int hy_split_nevra(const char *nevra, char **name, long int *epoch, | |||
char **version, char **release, char **arch); | char **version, char **release, char **arch); | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif | #endif | |||
#endif /* HY_UTIL_H */ | #endif /* HY_UTIL_H */ | |||
End of changes. 3 change blocks. | ||||
0 lines changed or deleted | 24 lines changed or added | |||
version.h | version.h | |||
---|---|---|---|---|
#ifndef HY_VERSION_H | #ifndef HY_VERSION_H | |||
#define HY_VERSION_H | #define HY_VERSION_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
#define HY_VERSION_MAJOR 0 | #define HY_VERSION_MAJOR 0 | |||
#define HY_VERSION_MINOR 3 | #define HY_VERSION_MINOR 4 | |||
#define HY_VERSION_PATCH 5 | #define HY_VERSION_PATCH 16 | |||
#define HY_VERSION_CHECK(major,minor,patch) \ | ||||
(HY_VERSION_MAJOR > (major) || \ | ||||
(HY_VERSION_MAJOR == (major) && HY_VERSION_MINOR > (minor)) || \ | ||||
(HY_VERSION_MAJOR == (major) && HY_VERSION_MINOR == (minor) && \ | ||||
HY_VERSION_PATCH >= (patch))) | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif | #endif | |||
#endif /* HY_VERSION_H */ | #endif /* HY_VERSION_H */ | |||
End of changes. 1 change blocks. | ||||
2 lines changed or deleted | 8 lines changed or added | |||