summary refs log tree commit diff stats
path: root/src/common
diff options
context:
space:
mode:
Diffstat (limited to 'src/common')
-rw-r--r--src/common/dcc.c16
-rw-r--r--src/common/dcc.h30
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 */