44b8d0dc1fc1e40418ab218643cc5a483e3aa629
[project/opkg-lede.git] / libopkg / opkg_state.h
1 /* opkg_state.c - the opkg package management system
2
3 Thomas Wood <thomas@openedhand.com>
4
5 Copyright (C) 2008 by OpenMoko Inc
6
7 This program is free software; you can redistribute it and/or
8 modify it under the terms of the GNU General Public License as
9 published by the Free Software Foundation; either version 2, or (at
10 your option) any later version.
11
12 This program is distributed in the hope that it will be useful, but
13 WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 General Public License for more details.
16 */
17
18 #ifndef OPKG_STATE_H
19 #define OPKG_STATE_H
20
21 #include "opkg_message.h"
22
23 extern int opkg_state_changed;
24
25 typedef enum _opkg_state {
26 OPKG_STATE_NONE,
27 OPKG_STATE_DOWNLOADING_PKG,
28 OPKG_STATE_INSTALLING_PKG,
29 OPKG_STATE_CONFIGURING_PKG,
30 OPKG_STATE_UPGRADING_PKG,
31 OPKG_STATE_REMOVING_PKG,
32 OPKG_STATE_DOWNLOADING_REPOSITORY,
33 OPKG_STATE_VERIFYING_REPOSITORY_SIGNATURE
34 } opkg_state_t;
35
36
37 void opkg_set_current_state (opkg_conf_t *conf, opkg_state_t state, const char *data);
38
39 typedef void (*opkg_state_changed_callback)(opkg_state_t state, const char *data);
40
41
42
43 #endif /* OPKG_STATE_H */