/*
* Empire - A multi-player, client/server Internet based war game.
- * Copyright (C) 1986-2000, Dave Pare, Jeff Bailey, Thomas Ruschak,
+ * Copyright (C) 1986-2007, Dave Pare, Jeff Bailey, Thomas Ruschak,
* Ken Stevens, Steve McClure
*
* This program is free software; you can redistribute it and/or modify
*
* ---
*
- * See the "LEGAL", "LICENSE", "CREDITS" and "README" files for all the
- * related information and legal notices. It is expected that any future
- * projects/authors will amend these files as needed.
+ * See files README, COPYING and CREDITS in the root of the source
+ * tree for related information and legal notices. It is expected
+ * that future projects/authors will amend these files as needed.
*
* ---
*
* Doug Hay, 1998
*/
-#ifndef _PLAYER_H_
-#define _PLAYER_H_
+#ifndef PLAYER_H
+#define PLAYER_H
-#include <sys/types.h>
-#if !defined(_WIN32)
-#include <netinet/in.h>
-#endif
-#include "prototype.h"
-#include "queue.h"
-#include "misc.h"
-#include "com.h"
+#include <time.h>
#include "empthread.h"
+#include "misc.h"
+#include "queue.h"
+#include "types.h"
struct player {
struct emp_qelem queue;
empth_t *proc;
- s_char hostaddr[32];
- s_char hostname[512];
- s_char client[128];
- s_char userid[32];
- int validated;
+ char hostaddr[32];
+ char hostname[512]; /* may be empty */
+ char client[128]; /* may be empty */
+ char userid[32]; /* may be empty */
+ int authenticated;
natid cnum;
int state;
+ int flags;
struct cmndstr *command;
struct iop *iop;
- s_char combuf[1024];
- s_char *argp[128];
- s_char *condarg;
+ char combuf[1024]; /* command input buffer, UTF-8 */
+ char *argp[128]; /* arguments, ASCII */
+ char *condarg; /* conditional, ASCII */
time_t lasttime;
int ncomstat;
int minleft;
#define PS_SHUTDOWN 3
#define PS_KILL 4
-/* thread priorities */
-#define PP_UPDATE 6
-#define PP_SHUTDOWN 5
-#define PP_SCHED 4
-#define PP_TIMESTAMP 2
-#define PP_PLAYER 3
-#define PP_ACCEPT 3
-#define PP_KILLIDLE 2
-
-#include "prototypes.h" /* must come at end, after defines and typedefs */
+/* player flags */
+enum {
+ PF_UTF8 = bit(0) /* client wants UTF-8 */
+};
-#endif /* _PLAYER_H_ */
+#endif