diff options
author | piaip <piaip@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2013-03-22 13:14:36 +0800 |
---|---|---|
committer | piaip <piaip@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2013-03-22 13:14:36 +0800 |
commit | c741f36c7c69f901098f3cf641c3716928fd8fbe (patch) | |
tree | 0a2e8ffb32a2c653b0e5b1edcf5adea584e6a8a5 | |
parent | 6e3f60a4bc6dbeb49d35c4b77d776c07fc85bd2f (diff) | |
download | pttbbs-c741f36c7c69f901098f3cf641c3716928fd8fbe.tar pttbbs-c741f36c7c69f901098f3cf641c3716928fd8fbe.tar.gz pttbbs-c741f36c7c69f901098f3cf641c3716928fd8fbe.tar.bz2 pttbbs-c741f36c7c69f901098f3cf641c3716928fd8fbe.tar.lz pttbbs-c741f36c7c69f901098f3cf641c3716928fd8fbe.tar.xz pttbbs-c741f36c7c69f901098f3cf641c3716928fd8fbe.tar.zst pttbbs-c741f36c7c69f901098f3cf641c3716928fd8fbe.zip |
Make angelbeats upgrade process more smooth.
git-svn-id: http://opensvn.csie.org/pttbbs/trunk@5817 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
-rw-r--r-- | pttbbs/daemon/angelbeats/angelbeats.c | 15 | ||||
-rw-r--r-- | pttbbs/include/daemons.h | 17 |
2 files changed, 31 insertions, 1 deletions
diff --git a/pttbbs/daemon/angelbeats/angelbeats.c b/pttbbs/daemon/angelbeats/angelbeats.c index 2c2c0b0e..1de7c70d 100644 --- a/pttbbs/daemon/angelbeats/angelbeats.c +++ b/pttbbs/daemon/angelbeats/angelbeats.c @@ -750,6 +750,21 @@ client_cb(int fd, short event, void *arg) { goto end; } break; + case ANGELBEATS_REQ_REPORT1: + log("%s angel [%s] request for report v1\n", + Cdatelite(&clk), master_uid); + { + angel_beats_report rpt = {0}; + angel_beats_report_v1 v1 = {0}; + rpt.cb = sizeof(rpt); + create_angel_report(data.angel_uid, &rpt); + memcpy(&v1, &rpt, sizeof(v1)); + v1.cb = sizeof(v1); + // write different kind of data! + write(fd, &v1, sizeof(v1)); + goto end; + } + break; case ANGELBEATS_REQ_GET_ONLINE_LIST: log("%s get_online_uid_list\n", Cdatelite(&clk)); { diff --git a/pttbbs/include/daemons.h b/pttbbs/include/daemons.h index 634a3ff4..8270beaa 100644 --- a/pttbbs/include/daemons.h +++ b/pttbbs/include/daemons.h @@ -66,7 +66,7 @@ typedef struct login_data enum ANGELBEATS_OPERATIONS { ANGELBEATS_REQ_INVALID = 0, - ANGELBEATS_REQ_REPORT, + ANGELBEATS_REQ_REPORT1, ANGELBEATS_REQ_RELOAD, ANGELBEATS_REQ_SUGGEST, ANGELBEATS_REQ_SUGGEST_AND_LINK, @@ -77,6 +77,7 @@ enum ANGELBEATS_OPERATIONS { ANGELBEATS_REQ_REG_NEW, ANGELBEATS_REQ_BLAME, ANGELBEATS_REQ_SAVE_STATE, + ANGELBEATS_REQ_REPORT, }; typedef struct { @@ -92,6 +93,20 @@ typedef struct { short total_angels; short total_online_angels; short total_active_angels; + short min_masters_of_online_angels; + short max_masters_of_online_angels; + short min_masters_of_active_angels; + short max_masters_of_active_angels; + short my_index; + short my_active_index; + short my_active_masters; +} angel_beats_report_v1 ; + +typedef struct { + short cb; + short total_angels; + short total_online_angels; + short total_active_angels; short min_masters_of_online_angels; short max_masters_of_online_angels; |