diff options
author | Ben Gamari <ben@smart-cactus.org> | 2016-05-08 09:48:13 +0200 |
---|---|---|
committer | Patrick Griffis <tingping@tingping.se> | 2016-06-30 15:51:10 -0400 |
commit | 9e11280e529b5b494f0c04bda602df907aa0b207 (patch) | |
tree | fc7239f716171a9834d9ffa0bcc845ecaf0cea6c /src/common | |
parent | 77dccacd0215aa51edf755886d39d94ed30b03af (diff) |
dcc: Introduce dcc_type and dcc_state enums
Closes #1705
Diffstat (limited to 'src/common')
-rw-r--r-- | src/common/dcc.c | 16 | ||||
-rw-r--r-- | src/common/dcc.h | 30 |
2 files changed, 31 insertions, 15 deletions
diff --git a/src/common/dcc.c b/src/common/dcc.c index dc5ec2fe..055098b2 100644 --- a/src/common/dcc.c +++ b/src/common/dcc.c @@ -81,7 +81,7 @@ static int dcc_global_throttle; /* 0x1 = sends, 0x2 = gets */ static gint64 dcc_sendcpssum, dcc_getcpssum; static struct DCC *new_dcc (void); -static void dcc_close (struct DCC *dcc, int dccstat, int destroy); +static void dcc_close (struct DCC *dcc, enum dcc_state dccstat, int destroy); static gboolean dcc_send_data (GIOChannel *, GIOCondition, struct DCC *); static gboolean dcc_read (GIOChannel *, GIOCondition, struct DCC *); static gboolean dcc_read_ack (GIOChannel *source, GIOCondition condition, struct DCC *dcc); @@ -293,6 +293,8 @@ dcc_check_timeouts (void) if (prefs.hex_dcc_remove) dcc_close (dcc, 0, TRUE); break; + default: + break; } list = next; } @@ -367,7 +369,7 @@ dcc_connect_sok (struct DCC *dcc) } static void -dcc_close (struct DCC *dcc, int dccstat, int destroy) +dcc_close (struct DCC *dcc, enum dcc_state dccstat, int destroy) { if (dcc->wiotag) { @@ -1606,6 +1608,8 @@ dcc_accept (GIOChannel *source, GIOCondition condition, struct DCC *dcc) EMIT_SIGNAL (XP_TE_DCCCONCHAT, dcc->serv->front_session, dcc->nick, host, NULL, NULL, 0); break; + default: + break; } fe_dcc_update (dcc); @@ -2183,6 +2187,8 @@ dcc_get (struct DCC *dcc) case STAT_ABORTED: dcc_close (dcc, 0, TRUE); break; + default: + break; } } @@ -2265,6 +2271,9 @@ dcc_chat (struct session *sess, char *nick, int passive) case STAT_ABORTED: case STAT_FAILED: dcc_close (dcc, 0, TRUE); + break; + case STAT_DONE: + break; } } dcc = find_dcc (nick, "", TYPE_CHATRECV); @@ -2278,6 +2287,9 @@ dcc_chat (struct session *sess, char *nick, int passive) case STAT_FAILED: case STAT_ABORTED: dcc_close (dcc, 0, TRUE); + break; + default: + break; } return; } diff --git a/src/common/dcc.h b/src/common/dcc.h index e5d0809f..379385e6 100644 --- a/src/common/dcc.h +++ b/src/common/dcc.h @@ -25,17 +25,21 @@ #ifndef HEXCHAT_DCC_H #define HEXCHAT_DCC_H -#define STAT_QUEUED 0 -#define STAT_ACTIVE 1 -#define STAT_FAILED 2 -#define STAT_DONE 3 -#define STAT_CONNECTING 4 -#define STAT_ABORTED 5 - -#define TYPE_SEND 0 -#define TYPE_RECV 1 -#define TYPE_CHATRECV 2 -#define TYPE_CHATSEND 3 +enum dcc_state { + STAT_QUEUED = 0, + STAT_ACTIVE, + STAT_FAILED, + STAT_DONE, + STAT_CONNECTING, + STAT_ABORTED +}; + +enum dcc_type { + TYPE_SEND = 0, + TYPE_RECV, + TYPE_CHATRECV, + TYPE_CHATSEND +}; #define CPS_AVG_WINDOW 10 @@ -72,8 +76,8 @@ struct DCC char *file; /* utf8 */ char *destfile; /* utf8 */ char *nick; - unsigned char type; /* 0 = SEND 1 = RECV 2 = CHAT */ - unsigned char dccstat; /* 0 = QUEUED 1 = ACTIVE 2 = FAILED 3 = DONE */ + enum dcc_type type; + enum dcc_state dccstat; unsigned int resume_sent:1; /* resume request sent */ unsigned int fastsend:1; unsigned int ackoffset:1; /* is receiver sending acks as an offset from */ |