]> git.pond.sub.org Git - empserver/blobdiff - src/lib/commands/turn.c
Update copyright notice.
[empserver] / src / lib / commands / turn.c
index 1c35ef531efac93113a51bfc0a42c05b1a4b3e2b..4b24b4ded45a5379379451b2fee522e0b439cf28 100644 (file)
@@ -1,6 +1,6 @@
 /*
  *  Empire - A multi-player, client/server Internet based war game.
- *  Copyright (C) 1986-2005, 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.
  *
  *  ---
  *
  *  turn.c: Turn the game on, off, or set the login message.
  * 
  *  Known contributors to this file:
- *    
+ *     Marc Olzheim, 2004
  */
 
-#include "misc.h"
-#include "player.h"
+#include <config.h>
+
+#include <errno.h>
+#if !defined(_WIN32)
+#include <unistd.h>
+#elif defined(__GNUC__)
+#include <io.h>
+#endif
 #include "tel.h"
 #include "commands.h"
 #include "optlist.h"
 
-#include <errno.h>
-#include <fcntl.h>
-
 /*
  * Enable / disable logins and set the message of the day.
  */
@@ -49,7 +52,8 @@ turn(void)
     FILE *fptr;
     struct telstr tgm;
     char *p;
-    char buf[MAXTELSIZE];
+    char buf[1024];
+    char msgbuf[MAXTELSIZE + 1]; /* UTF-8 */
     char *msgfilepath;
 
     p = getstarg(player->argp[1], "on, off or motd? ", buf);
@@ -75,7 +79,7 @@ turn(void)
        pr("Enter a new message of the day.\n");
 
     time(&tgm.tel_date);
-    tgm.tel_length = getele("The World", buf);
+    tgm.tel_length = getele("The World", msgbuf);
 
     if (tgm.tel_length < 0) {
        pr("Ignored\n");
@@ -87,7 +91,8 @@ turn(void)
            pr("Removing exsting motd.\n");
            if ((unlink(msgfilepath) == -1) && (errno != ENOENT)) {
                pr("Could not remove motd.\n");
-               logerror("Could not remove motd file (%s).\n", msgfilepath);
+               logerror("Could not remove motd file (%s).\n",
+                        msgfilepath);
                return RET_SYS;
            }
            return RET_OK;
@@ -106,7 +111,7 @@ turn(void)
        pr("Logins disabled.\n");
 
     if ((fwrite(&tgm, sizeof(tgm), 1, fptr) != 1) ||
-       (fwrite(buf, tgm.tel_length, 1, fptr) != 1)) {
+       (fwrite(msgbuf, tgm.tel_length, 1, fptr) != 1)) {
        fclose(fptr);
        pr("Something went wrong writing the message file.\n");
        logerror("Could not properly write message file (%s).\n",