(main,mobility_check,upda,turn,rea,mobupdate,ef_open,logerror,

emp_config,gamedown,show_motd,match_user,typed_wu,
delete_old_announcements) [_WIN32]: switch the default file mode to
binary to match POSIX.  Remove the now unneccessary ifdef for
the open/fopen. Add text mode for user files (econfig/auth).
This commit is contained in:
Ron Koenderink 2004-12-30 01:31:03 +00:00
parent f6e78f4589
commit 1a8488bc45
13 changed files with 14 additions and 65 deletions

View file

@ -61,11 +61,7 @@ mobupdate(void)
else else
minites = atol(player->argp[1]) * 60; minites = atol(player->argp[1]) * 60;
time(&now); time(&now);
#if !defined(_WIN32)
if ((fp = fopen(timestampfil, "r+")) == NULL) { if ((fp = fopen(timestampfil, "r+")) == NULL) {
#else
if ((fp = fopen(timestampfil, "r+b")) == NULL) {
#endif
logerror("Unable to edit timestamp file."); logerror("Unable to edit timestamp file.");
} else { } else {
rewind(fp); rewind(fp);

View file

@ -100,11 +100,7 @@ rea(void)
clear_telegram_is_new(player->cnum); clear_telegram_is_new(player->cnum);
} }
#if !defined(_WIN32)
if ((telfp = fopen(mbox, "r+")) == 0) { if ((telfp = fopen(mbox, "r+")) == 0) {
#else
if ((telfp = fopen(mbox, "r+b")) == 0) {
#endif
logerror("telegram file %s", mbox); logerror("telegram file %s", mbox);
return RET_FAIL; return RET_FAIL;
} }
@ -208,11 +204,7 @@ rea(void)
/* Here, we just re-open the file for "w" only, /* Here, we just re-open the file for "w" only,
and that will wipe the file clean automatically */ and that will wipe the file clean automatically */
(void)fclose(telfp); (void)fclose(telfp);
#if !defined(_WIN32)
telfp = fopen((char *)mbox, "w"); telfp = fopen((char *)mbox, "w");
#else
telfp = fopen((char *)mbox, "wb");
#endif
} }
} }
} }

View file

@ -95,11 +95,7 @@ turn(void)
pr("Writing empty no-login message.\n"); pr("Writing empty no-login message.\n");
} }
#if !defined(_WIN32)
fd = open(msgfilepath, O_RDWR | O_CREAT | O_TRUNC, 0660); fd = open(msgfilepath, O_RDWR | O_CREAT | O_TRUNC, 0660);
#else
fd = open(msgfilepath, O_RDWR | O_CREAT | O_TRUNC | O_BINARY, 0660);
#endif
if (fd == -1) { if (fd == -1) {
pr("Something went wrong opening the message file.\n"); pr("Something went wrong opening the message file.\n");
logerror("Could not open message file (%s).\n", msgfilepath); logerror("Could not open message file (%s).\n", msgfilepath);

View file

@ -51,13 +51,9 @@ upda(void)
struct mob_acc_globals timestamps; struct mob_acc_globals timestamps;
if (opt_MOB_ACCESS) { if (opt_MOB_ACCESS) {
#if !defined(_WIN32) if ((fp = fopen(timestampfil, "r")) == NULL)
if ((fp = fopen(timestampfil, "r")) == NULL) {
#else
if ((fp = fopen(timestampfil, "rb")) == NULL) {
#endif
logerror("Unable to open timestamp file."); logerror("Unable to open timestamp file.");
} else { else {
rewind(fp); rewind(fp);
fread(&timestamps, sizeof(timestamps), 1, fp); fread(&timestamps, sizeof(timestamps), 1, fp);
fclose(fp); fclose(fp);

View file

@ -60,9 +60,6 @@ ef_open(int type, int mode, int how)
static int block; static int block;
int size; int size;
#if defined(_WIN32)
mode |= _O_BINARY;
#endif
if (ef_check(type) < 0) if (ef_check(type) < 0)
return 0; return 0;
ep = &empfile[type]; ep = &empfile[type];

View file

@ -56,11 +56,7 @@ loginit(s_char *program)
{ {
s_char buf[1024]; s_char buf[1024];
#if !defined(_WIN32)
sprintf(buf, "%s/%s.log", datadir, program); sprintf(buf, "%s/%s.log", datadir, program);
#else
sprintf(buf, "%s\\%s.log", datadir, program);
#endif
logfile = malloc(strlen(buf) + 1); logfile = malloc(strlen(buf) + 1);
strcpy(logfile, buf); strcpy(logfile, buf);
} }
@ -86,7 +82,11 @@ logerror(s_char *format, ...)
if ((p = strchr(cbuf, '\n')) != 0) if ((p = strchr(cbuf, '\n')) != 0)
*p = 0; *p = 0;
(void)sprintf(buf1, "%s %s\n", cbuf, buf); (void)sprintf(buf1, "%s %s\n", cbuf, buf);
#if defined(_WIN32)
if ((logf = open(logfile, O_WRONLY | O_CREAT | O_APPEND | O_TEXT, 0666)) < 0)
#else
if ((logf = open(logfile, O_WRONLY | O_CREAT | O_APPEND, 0666)) < 0) if ((logf = open(logfile, O_WRONLY | O_CREAT | O_APPEND, 0666)) < 0)
#endif
return; return;
(void)write(logf, buf1, strlen(buf1)); (void)write(logf, buf1, strlen(buf1));
(void)close(logf); (void)close(logf);

View file

@ -92,7 +92,7 @@ emp_config(char *file)
fixup_files(); fixup_files();
return 0; return 0;
} }
if ((fp = fopen(file, "r")) == NULL) { if ((fp = fopen(file, "rt")) == NULL) {
fprintf(stderr, "Can't open %s for reading (%s)\n", fprintf(stderr, "Can't open %s for reading (%s)\n",
file, strerror(errno)); file, strerror(errno));
return -1; return -1;
@ -181,11 +181,7 @@ static struct otherfiles ofiles[] = {
{&annfil, "ann"}, {&annfil, "ann"},
{&timestampfil, "timestamp"}, {&timestampfil, "timestamp"},
{&teldir, "tel"}, {&teldir, "tel"},
#if !defined(_WIN32)
{&telfil, "tel/tel"}, {&telfil, "tel/tel"},
#else
{&telfil, "tel\\tel"},
#endif
{NULL, NULL} {NULL, NULL}
}; };
@ -198,20 +194,12 @@ fixup_files(void)
s_char buf[1024]; s_char buf[1024];
for (ep = empfile; ep < &empfile[EF_MAX]; ep++) { for (ep = empfile; ep < &empfile[EF_MAX]; ep++) {
#if !defined(_WIN32)
sprintf(buf, "%s/%s", datadir, ep->name); sprintf(buf, "%s/%s", datadir, ep->name);
#else
sprintf(buf, "%s\\%s", datadir, ep->name);
#endif
ep->file = strdup(buf); ep->file = strdup(buf);
} }
for (op = ofiles; op->files; op++) { for (op = ofiles; op->files; op++) {
#if !defined(_WIN32)
sprintf(buf, "%s/%s", datadir, op->name); sprintf(buf, "%s/%s", datadir, op->name);
#else
sprintf(buf, "%s\\%s", datadir, op->name);
#endif
*op->files = strdup(buf); *op->files = strdup(buf);
} }
} }

View file

@ -158,11 +158,7 @@ gamedown(void)
if (player->god) if (player->god)
return 0; return 0;
#if !defined(_WIN32)
if ((downf = open(downfil, O_RDONLY, 0)) < 0) if ((downf = open(downfil, O_RDONLY, 0)) < 0)
#else
if ((downf = open(downfil, O_RDONLY | O_BINARY, 0)) < 0)
#endif
return 0; return 0;
if (read(downf, (s_char *)&tgm, sizeof(tgm)) != sizeof(tgm)) { if (read(downf, (s_char *)&tgm, sizeof(tgm)) != sizeof(tgm)) {
logerror("bad header on login message (downfil)"); logerror("bad header on login message (downfil)");

View file

@ -347,11 +347,7 @@ show_motd(void)
struct telstr tgm; struct telstr tgm;
char buf[MAXTELSIZE]; char buf[MAXTELSIZE];
#if !defined(_WIN32)
if ((motdf = open(motdfil, O_RDONLY, 0)) < 0) if ((motdf = open(motdfil, O_RDONLY, 0)) < 0)
#else
if ((motdf = open(motdfil, O_RDONLY | O_BINARY, 0)) < 0)
#endif
{ {
if (errno == ENOENT) if (errno == ENOENT)
return RET_OK; return RET_OK;
@ -388,7 +384,7 @@ match_user(char *file, struct player *p)
char host[256]; char host[256];
char user[256]; char user[256];
if ((fp = fopen(file, "r")) == NULL) { if ((fp = fopen(file, "rt")) == NULL) {
/*logerror("Cannot find file %s", file); */ /*logerror("Cannot find file %s", file); */
return 0; return 0;
} }

View file

@ -125,11 +125,7 @@ typed_wu(natid from, natid to, s_char *message, int type)
(np->nat_stat & STAT_SANCT) == 0)) { (np->nat_stat & STAT_SANCT) == 0)) {
return -1; return -1;
} }
#if !defined(_WIN32)
if ((fd = open(box, O_WRONLY | O_APPEND, 0)) < 0) { if ((fd = open(box, O_WRONLY | O_APPEND, 0)) < 0) {
#else
if ((fd = open(box, O_WRONLY | O_APPEND | O_BINARY, 0)) < 0) {
#endif
logerror("telegram 'open' of %s (#%d) failed", box, to); logerror("telegram 'open' of %s (#%d) failed", box, to);
return -1; return -1;
} }

View file

@ -65,12 +65,12 @@ delete_old_announcements(void)
old = now - days(anno_keep_days); old = now - days(anno_keep_days);
logerror("Deleting annos older than %s", ctime(&old)); logerror("Deleting annos older than %s", ctime(&old));
if ((annfp = fopen(annfil, "rb")) == NULL) { if ((annfp = fopen(annfil, "r")) == NULL) {
logerror("can't open telegram file %s for reading", annfil); logerror("can't open telegram file %s for reading", annfil);
return; return;
} }
sprintf(tmp_filename, "%s.tmp", annfil); sprintf(tmp_filename, "%s.tmp", annfil);
if ((tmpfp = fopen(tmp_filename, "wb")) == NULL) { if ((tmpfp = fopen(tmp_filename, "w")) == NULL) {
logerror("can't open telegram file %s for writing", logerror("can't open telegram file %s for writing",
tmp_filename); tmp_filename);
if (fclose(annfp) != 0) if (fclose(annfp) != 0)

View file

@ -112,6 +112,10 @@ main(int argc, char **argv)
char *config_file = NULL; char *config_file = NULL;
s_char tbuf[256]; s_char tbuf[256];
#if defined(_WIN32)
_fmode = _O_BINARY;
#endif
loginit("server"); loginit("server");
mainpid = getpid(); mainpid = getpid();

View file

@ -52,11 +52,7 @@ mobility_check(void *unused)
while (1) { while (1) {
time(&now); time(&now);
/* logerror("Updating timestamp file at %s", ctime(&now));*/ /* logerror("Updating timestamp file at %s", ctime(&now));*/
#if !defined(_WIN32)
if ((fp = fopen(timestampfil, "r+")) == NULL) { if ((fp = fopen(timestampfil, "r+")) == NULL) {
#else
if ((fp = fopen(timestampfil, "r+b")) == NULL) {
#endif
logerror("Unable to edit timestamp file."); logerror("Unable to edit timestamp file.");
continue; continue;
} }
@ -101,11 +97,7 @@ mobility_init(void)
mobility */ mobility */
time(&now); time(&now);
#if !defined(_WIN32)
if ((fp = fopen(timestampfil, "r+")) == NULL) { if ((fp = fopen(timestampfil, "r+")) == NULL) {
#else
if ((fp = fopen(timestampfil, "r+b")) == NULL) {
#endif
logerror("Unable to edit timestamp file."); logerror("Unable to edit timestamp file.");
/* FIXME safe to continue? */ /* FIXME safe to continue? */
} else { } else {