X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=libopkg%2Fopkg.h;h=4c34c32d5816b8f3158b84592b990823aeaab18e;hb=76bcf4ec07e560ce724744bbbc71781dee35307b;hp=a6decd5da34d880266702bffd162cecc2355c087;hpb=b3d79de121685182a66900c82d35a10175971135;p=oweals%2Fopkg-lede.git diff --git a/libopkg/opkg.h b/libopkg/opkg.h index a6decd5..4c34c32 100644 --- a/libopkg/opkg.h +++ b/libopkg/opkg.h @@ -15,12 +15,37 @@ General Public License for more details. */ +#ifndef OPKG_H +#define OPKG_H + typedef struct _opkg_t opkg_t; typedef struct _opkg_package_t opkg_package_t; +typedef struct _opkg_progress_data_t opkg_progress_data_t; -typedef void (*opkg_progress_callback_t) (opkg_t *opkg, int percentage, void *user_data); +typedef void (*opkg_progress_callback_t) (opkg_t *opkg, const opkg_progress_data_t *progress, void *user_data); typedef void (*opkg_package_callback_t) (opkg_t *opkg, opkg_package_t *package, void *user_data); +enum _opkg_action_t +{ + OPKG_INSTALL, + OPKG_REMOVE, + OPKG_DOWNLOAD +}; + +enum _opkg_error_code_t +{ + OPKG_NO_ERROR, + OPKG_UNKNOWN_ERROR, + OPKG_DOWNLOAD_FAILED, + OPKG_DEPENDENCIES_FAILED, + OPKG_PACKAGE_ALREADY_INSTALLED, + OPKG_PACKAGE_NOT_AVAILABLE, + OPKG_PACKAGE_NOT_FOUND, + OPKG_PACKAGE_NOT_INSTALLED, + OPKG_GPG_ERROR, + OPKG_MD5_ERROR, + OPKG_SHA256_ERROR +}; struct _opkg_package_t { @@ -30,18 +55,26 @@ struct _opkg_package_t char *repository; char *description; char *tags; + char *url; + int size; int installed; }; +struct _opkg_progress_data_t +{ + int percentage; + int action; + opkg_package_t *package; +}; + opkg_package_t* opkg_package_new (); -opkg_package_t* opkg_package_new_with_values (const char *name, const char *version, const char *arch, const char *desc, const char *tags, int installed); void opkg_package_free (opkg_package_t *package); opkg_t* opkg_new (); void opkg_free (opkg_t *opkg); void opkg_get_option (opkg_t *opkg, char *option, void **value); void opkg_set_option (opkg_t *opkg, char *option, void *value); -int opkg_read_config_files (opkg_t *opkg); +int opkg_re_read_config_files (opkg_t *opkg); int opkg_install_package (opkg_t *opkg, const char *package_name, opkg_progress_callback_t callback, void *user_data); int opkg_remove_package (opkg_t *opkg, const char *package_name, opkg_progress_callback_t callback, void *user_data); @@ -50,3 +83,9 @@ int opkg_upgrade_all (opkg_t *opkg, opkg_progress_callback_t callback, void *use int opkg_update_package_lists (opkg_t *opkg, opkg_progress_callback_t callback, void *user_data); int opkg_list_packages (opkg_t *opkg, opkg_package_callback_t callback, void *user_data); +int opkg_list_upgradable_packages (opkg_t *opkg, opkg_package_callback_t callback, void *user_data); +opkg_package_t* opkg_find_package (opkg_t *opkg, const char *name, const char *version, const char *architecture, const char *repository); + +int opkg_repository_accessibility_check(opkg_t *opkg); + +#endif /* OPKG_H */