]> git.pond.sub.org Git - empserver/log
empserver
16 years agoClean up library dependencies
Markus Armbruster [Sat, 2 Feb 2008 20:03:12 +0000 (21:03 +0100)]
Clean up library dependencies

Move stuff to untangle the ugly cyclic dependencies between the
archives built for selected subdirectories of src/lib/:

* Move common/io.c to empthread/ because it requires empthread stuff

* Move parts of subs/nstr.c to common/nstreval.c to satisfy
  common/ef_verify.o

* Move getstarg.c getstring.c onearg.c from gen/ to subs/ because they
  require stuff from there

* Move bridgefall.c check.c damage.c empobj.c journal.c maps.c
  sectdamage.c from common/ to subs/ because they require stuff from
  there

* Move cnumb.c from subs/ to common/ to satisfy common/type.o

* Move log.c fsize.c from common/ to gen/ because they really belong
  there

* Move emp_config.c mapdist.c from gen/ to common/ because they really
  belong there, and require stuff from libglobal.a

Also package as/ as libas.a to satisfy common/path.o.

Remaining dependencies:

    lib             needs
    --------------------------------------------
    libas.a         libglobal.a
    libcommon.a     libas.a libglobal.a libgen.a
    libgen.a
    libglobal.a
    liblwp.a        libgen.a
    libw32.a[*]     libgen.a

    [*] Except for service.o, which can only be linked into the server

Link order now: liblwp.a libcommon.a libas.a libgen.a libglobal.a
libw32.a.  The position of libw32.a is not quite right, but works
anyway.

16 years agoGet rid of src/lib/gen/copy.c
Markus Armbruster [Sat, 2 Feb 2008 20:52:01 +0000 (21:52 +0100)]
Get rid of src/lib/gen/copy.c

The function that gave its name to this file is long gone, the file's
description is bogus, and it contains just one definition.  Move that
to ../subs/border.c, and delete the file.

16 years agoGet rid of src/lib/common/land.c
Markus Armbruster [Sat, 2 Feb 2008 20:36:37 +0000 (21:36 +0100)]
Get rid of src/lib/common/land.c

There are several files with land unit subroutines.  This one is in an
awkward place: it depends on stuff from ../subs, which contributes to
libcommon.a's ugly dependencies.  Move its contents to logical places
(use internal linkage where possible), and remove it.

16 years agoDocument econfig key info setting for running without installing
Markus Armbruster [Sat, 2 Feb 2008 15:15:40 +0000 (16:15 +0100)]
Document econfig key info setting for running without installing

16 years agoRemove telfil, use teldir instead.
Markus Armbruster [Sat, 2 Feb 2008 08:22:10 +0000 (09:22 +0100)]
Remove telfil, use teldir instead.

16 years agoBelatedly update c_form of of show command
Markus Armbruster [Sat, 2 Feb 2008 06:56:49 +0000 (07:56 +0100)]
Belatedly update c_form of of show command

It lacked item and news since 4.3.0.

16 years agoTrim extra newline from documentation of econfig key update_demand
Markus Armbruster [Sat, 2 Feb 2008 06:53:19 +0000 (07:53 +0100)]
Trim extra newline from documentation of econfig key update_demand

16 years agoRemove unused non-terminal <VAR> from output of list command
Markus Armbruster [Sat, 2 Feb 2008 06:50:26 +0000 (07:50 +0100)]
Remove unused non-terminal <VAR> from output of list command

It's been unused since commit 5dec30d6, and its explanation was bogus
before.

16 years agoAdd missing expansion island
Ron Koenderink [Fri, 25 Jan 2008 14:12:49 +0000 (08:12 -0600)]
Add missing expansion island

The number of islands was off by one.  The last island was
created, but not actually placed on the map.

16 years agoFix empsched's name in its manual page
Markus Armbruster [Sat, 19 Jan 2008 09:32:02 +0000 (10:32 +0100)]
Fix empsched's name in its manual page

16 years agoUpdate copyright notice
Markus Armbruster [Sat, 19 Jan 2008 09:15:37 +0000 (10:15 +0100)]
Update copyright notice

16 years agoRemove bogus comment
Markus Armbruster [Sat, 19 Jan 2008 08:00:32 +0000 (09:00 +0100)]
Remove bogus comment

16 years agoNote generator script in output
Markus Armbruster [Thu, 17 Jan 2008 21:12:55 +0000 (22:12 +0100)]
Note generator script in output

16 years agoFix bogus file names in error messages
Markus Armbruster [Sun, 13 Jan 2008 10:25:32 +0000 (11:25 +0100)]
Fix bogus file names in error messages

16 years agoReplace .cvsignore files by .gitignore files
Markus Armbruster [Sun, 13 Jan 2008 10:21:39 +0000 (11:21 +0100)]
Replace .cvsignore files by .gitignore files

16 years agoConvert the build process from CVS to git
Markus Armbruster [Sun, 13 Jan 2008 10:17:26 +0000 (11:17 +0100)]
Convert the build process from CVS to git

Detect .git instead of CVS.  Use git-ls-files with git, else
$(srcdir)/sources.mk.  info/findsubj.pl now gets the info files as
arguments rather than from sources.mk.

Remaking info subjects doesn't quite work, but it was broken similarly
before.

16 years ago4.3.11 late changes. v4.3.11
Markus Armbruster [Tue, 1 Jan 2008 19:22:59 +0000 (19:22 +0000)]
4.3.11 late changes.

16 years ago(player_coms): Clean up c_form of announce, break, bye and list.
Markus Armbruster [Tue, 1 Jan 2008 19:09:38 +0000 (19:09 +0000)]
(player_coms): Clean up c_form of announce, break, bye and list.

16 years agoAdd HTML links.
Ron Koenderink [Tue, 1 Jan 2008 16:26:58 +0000 (16:26 +0000)]
Add HTML links.
Improve description for Autotrading.

16 years agoAdd HTML link for info pages.
Ron Koenderink [Tue, 1 Jan 2008 16:22:41 +0000 (16:22 +0000)]
Add HTML link for info pages.

16 years agoRename Autofeed to be Autofish and add information on doing automatic
Ron Koenderink [Tue, 1 Jan 2008 15:20:08 +0000 (15:20 +0000)]
Rename Autofeed to be Autofish and add information on doing automatic
off-shore drilling like automatic fishing.  Fix the formatting to be
more consistent with other info pages.

Add see also reference for Autofish to Autonav.

16 years agoRemove quit as it sometimes confuses the client.
Ron Koenderink [Tue, 25 Dec 2007 17:26:50 +0000 (17:26 +0000)]
Remove quit as it sometimes confuses the client.
Known problem with 4.3.11, depend on the EOF.

16 years agoRemove the symbolic link to empire and use the empire executable
Ron Koenderink [Sun, 23 Dec 2007 22:16:37 +0000 (22:16 +0000)]
Remove the symbolic link to empire and use the empire executable
directly.  Symbolic link fails for WIN32 empire because empire has
exe extension.

16 years agoScheduled task script file for win32 nightly build
Ron Koenderink [Sun, 23 Dec 2007 16:08:34 +0000 (16:08 +0000)]
Scheduled task script file for win32 nightly build

16 years agoConfiguration file for win32 nightly build
Ron Koenderink [Sun, 23 Dec 2007 16:06:59 +0000 (16:06 +0000)]
Configuration file for win32 nightly build

16 years ago(sect_ca): New selector elev. It's set by fairland, but has no effect
Markus Armbruster [Sat, 22 Dec 2007 08:11:21 +0000 (08:11 +0000)]
(sect_ca): New selector elev.  It's set by fairland, but has no effect
on the game.  It can be useful for deities to customize a world
created by fairland.

16 years agoClarify -2.
Markus Armbruster [Sat, 22 Dec 2007 08:07:55 +0000 (08:07 +0000)]
Clarify -2.

Warn about passwords on the command line.

16 years agoFix the previous revision.
Markus Armbruster [Sat, 22 Dec 2007 07:57:07 +0000 (07:57 +0000)]
Fix the previous revision.

16 years agoAdd sysdep_w32.o to the list of objects for the client.
Ron Koenderink [Tue, 18 Dec 2007 02:42:15 +0000 (02:42 +0000)]
Add sysdep_w32.o to the list of objects for the client.
Used for WIN32 clients.

16 years ago(w32_socket) [_WIN32]: Correct the return type to SOCKET
Ron Koenderink [Mon, 17 Dec 2007 13:18:19 +0000 (13:18 +0000)]
(w32_socket) [_WIN32]: Correct the return type to SOCKET
for the select() call.

16 years ago(w32_socket) [_WIN32]: Change result to be unsigned to
Ron Koenderink [Sun, 16 Dec 2007 21:31:51 +0000 (21:31 +0000)]
(w32_socket) [_WIN32]: Change result to be unsigned to
match the WIN32 return value from socket().

16 years agoMove the patch level to above the empserver level.
Ron Koenderink [Sun, 16 Dec 2007 20:14:31 +0000 (20:14 +0000)]
Move the patch level to above the empserver level.

16 years agoAdd mingw specific patch for nightly build for win32.i386.
Ron Koenderink [Sun, 16 Dec 2007 15:45:09 +0000 (15:45 +0000)]
Add mingw specific patch for nightly build for win32.i386.

16 years ago(sysdep_stdin_init) [_WIN32]: Add missing void for the parameter list.
Ron Koenderink [Sun, 16 Dec 2007 04:02:16 +0000 (04:02 +0000)]
(sysdep_stdin_init) [_WIN32]: Add missing void for the parameter list.

16 years ago(w32_openfd) [_WIN32]: Correct extern reference.
Ron Koenderink [Sun, 16 Dec 2007 04:00:19 +0000 (04:00 +0000)]
(w32_openfd) [_WIN32]: Correct extern reference.

16 years agoUpdate for 4.3.11.
Markus Armbruster [Sat, 15 Dec 2007 07:18:40 +0000 (07:18 +0000)]
Update for 4.3.11.

16 years agoUpdate for current code. Fix description of login commands option
Markus Armbruster [Sat, 15 Dec 2007 07:10:53 +0000 (07:10 +0000)]
Update for current code.  Fix description of login commands option
and play.  Document protocol's C_EXECUTE flaws.  Clarify extent of
redirections.  Spelling fixes and such.

16 years ago(parseid): Switch id encoding from base 16 to base 36. This gives us
Markus Armbruster [Sat, 15 Dec 2007 06:52:50 +0000 (06:52 +0000)]
(parseid): Switch id encoding from base 16 to base 36.  This gives us
another 20 single digit ids before we have to risk breaking clients by
going to multiple digits.

16 years agoComment cautioning about protocol version change.
Markus Armbruster [Sat, 15 Dec 2007 06:27:55 +0000 (06:27 +0000)]
Comment cautioning about protocol version change.

16 years agoRemove superfluous parenthesis.
Markus Armbruster [Fri, 14 Dec 2007 07:49:58 +0000 (07:49 +0000)]
Remove superfluous parenthesis.

16 years ago(retreat_ship1, retreat_land1): Simplify slightly.
Markus Armbruster [Fri, 14 Dec 2007 07:48:50 +0000 (07:48 +0000)]
(retreat_ship1, retreat_land1): Simplify slightly.

16 years ago(play): Failed to initialized sa.sa_mask.
Markus Armbruster [Fri, 14 Dec 2007 07:45:46 +0000 (07:45 +0000)]
(play): Failed to initialized sa.sa_mask.

16 years ago(expect): Simplify, no functional change.
Markus Armbruster [Fri, 14 Dec 2007 07:44:46 +0000 (07:44 +0000)]
(expect): Simplify, no functional change.

16 years ago(parseid): New, factored out of recvline() and recv_output().
Markus Armbruster [Fri, 14 Dec 2007 07:44:12 +0000 (07:44 +0000)]
(parseid): New, factored out of recvline() and recv_output().
(recvline, recv_output): Use it.

16 years ago(recvline): Cope with multiple-digit ids. Server doesn't send such
Markus Armbruster [Fri, 14 Dec 2007 07:36:27 +0000 (07:36 +0000)]
(recvline): Cope with multiple-digit ids.  Server doesn't send such
ids at this time.

16 years ago(recvline): Rewrite the loop to receive a line from a socket. The new
Markus Armbruster [Fri, 14 Dec 2007 07:26:30 +0000 (07:26 +0000)]
(recvline): Rewrite the loop to receive a line from a socket.  The new
version silently truncates long lines.  The old one split them up and
got quite confused.  It got also confused when the line didn't arrive
in one piece.  Icing on the cake: it wrote beyond the end of the
buffer.  The new version is less efficient, but that doesn't matter
here.

16 years ago(recvline): Remove the timeout feature. There are many other places
Markus Armbruster [Fri, 14 Dec 2007 06:59:09 +0000 (06:59 +0000)]
(recvline): Remove the timeout feature.  There are many other places
where the client could wait indefinitely for the server.  The user can
always interrupt.

[_WIN32] (alarm): Unused, remove.

16 years ago(sendcmd): Cope gracefully with short writes and EINTR. Don't just
Markus Armbruster [Fri, 14 Dec 2007 06:42:57 +0000 (06:42 +0000)]
(sendcmd): Cope gracefully with short writes and EINTR.  Don't just
continue after real errors.

16 years ago(sendcmd): Don't overflow buf[]. The bug was fairly harmless, because
Markus Armbruster [Fri, 14 Dec 2007 06:01:13 +0000 (06:01 +0000)]
(sendcmd): Don't overflow buf[].  The bug was fairly harmless, because
the overflowing data comes from the local user.

16 years ago(redir_authorized, doexecute): Change diagnostics to talk about batch
Markus Armbruster [Thu, 13 Dec 2007 21:36:25 +0000 (21:36 +0000)]
(redir_authorized, doexecute): Change diagnostics to talk about batch
files instead of script files, to match info execute.

16 years agoRemove senseless casts.
Markus Armbruster [Thu, 13 Dec 2007 21:34:27 +0000 (21:34 +0000)]
Remove senseless casts.

16 years agoRemove superfluous parenthesis.
Markus Armbruster [Thu, 13 Dec 2007 21:32:34 +0000 (21:32 +0000)]
Remove superfluous parenthesis.

16 years agoAdd -k option to the make so more than one error can be found.
Ron Koenderink [Thu, 13 Dec 2007 13:41:09 +0000 (13:41 +0000)]
Add -k option to the make so more than one error can be found.

16 years agoUpdate the CVSROOT to extract directly from sourceforge.net
Ron Koenderink [Thu, 13 Dec 2007 02:13:25 +0000 (02:13 +0000)]
Update the CVSROOT to extract directly from sourceforge.net

16 years ago(play) [_WIN32]: Remove the argumennts for sysdef_stdin_init,
Ron Koenderink [Thu, 13 Dec 2007 01:20:40 +0000 (01:20 +0000)]
(play) [_WIN32]: Remove the argumennts for sysdef_stdin_init,
not needed..

16 years ago(w32_getpw, w32_socket, w32_connect, w32_recv, w32_send,
Ron Koenderink [Tue, 11 Dec 2007 22:00:25 +0000 (22:00 +0000)]
(w32_getpw, w32_socket, w32_connect, w32_recv, w32_send,
w32_writev_socket, w32_close_socket, getpass, w32_openfd,
w32_openhandle, w32_readv_handle, w32_close_handle,
sysdep_init, sysdep_stdin_init, w32_select, w32_signal_handler,
sigaction, stdin_read_thread, w32_ring_from_file_to_bounce_buf)
[_WIN32]: New w32 equivalent functions for POSIX functions.
(recvline, sendcmd, tcp_connect, hostconnect, getpass,
main, intr, play, ring_to_file, ring_from_file, doexecute,
doredir) [_WIN32]: Use new WIN32 equivalent functions.
(main) [_WIN32]: Add sysdep_init() to support system dependent
initialization for equivalence functions.
(play) [_WIN32]: Add sysdef_stdin_init() to support system
dependent initialization for reading stdin.
(recv_input, play) [_WIN32]: Replace the calls to ring_to_file()
and select() with WIN32 specific enhanced versions.

Makefile.in: update dependencies with new files.
Make.mk: Add using of getopt.c and getopt.h
from src/lib/w32 directory.  Add getopt.c and getopt.h
to tar for client.

16 years ago(check_market): Slight simplification. No functional change.
Markus Armbruster [Sun, 9 Dec 2007 17:44:25 +0000 (17:44 +0000)]
(check_market): Slight simplification.  No functional change.

16 years agoDoc fix.
Markus Armbruster [Sun, 9 Dec 2007 17:43:44 +0000 (17:43 +0000)]
Doc fix.

16 years agoDocument restrictions. Warn of common client bugs.
Markus Armbruster [Sun, 9 Dec 2007 17:42:12 +0000 (17:42 +0000)]
Document restrictions.  Warn of common client bugs.

16 years agoDisable nested execute. The execute protocol is flawed and cannot be
Markus Armbruster [Sun, 9 Dec 2007 17:24:30 +0000 (17:24 +0000)]
Disable nested execute.  The execute protocol is flawed and cannot be
implemented correctly by asynchronous clients --- unless a client
waits for a prompt after sending the execute command and its argument,
it is prone to send more input before the C_EXECUTE arrives.  That
input overtakes the contents of the script file.  This is almost
certain to happen when the execute is in a script file.  Disabling
that is probably more useful and certainly less painful than
documenting this mess.  The client rejects nested execute since
servcmd.c rev. 1.42.
(EXEC): new.
(player_coms): Require it for execute.
(player_set_nstat): Set it in nstat.
(execute): Clear it in nstat.

16 years ago(execute): Clients can't reliably detect where a redirection ends
Markus Armbruster [Sun, 9 Dec 2007 17:06:03 +0000 (17:06 +0000)]
(execute): Clients can't reliably detect where a redirection ends
because the server doesn't send C_PROMPT.  The client simply rejects
such redirections since servcmd.c rev. 1.42.  Before it didn't, but
incorrectly extended the redirection until the end of the script, and
screwed up when there was more than one redirection in the execute.
Make the server reject such redirections as well, because that's
probably more useful and certainly less painful than documenting this
mess.

16 years agoAdd empsched, belatedly.
Markus Armbruster [Sun, 9 Dec 2007 16:04:54 +0000 (16:04 +0000)]
Add empsched, belatedly.

16 years agoRemoved EMPTARGET and ARCH from nightlybuilds,
Ron Koenderink [Sat, 8 Dec 2007 23:48:06 +0000 (23:48 +0000)]
Removed EMPTARGET and ARCH from nightlybuilds,
not used with new autoconf. Replace with INSTANCE
for logs, build directory for local patches.

Use the local patches directly from the source tree instead
of all local copy.

16 years ago(recv_input): Skip CR when creating command buffer.
Ron Koenderink [Sat, 8 Dec 2007 23:09:56 +0000 (23:09 +0000)]
(recv_input): Skip CR when creating command buffer.
This prevents mismatches between command buffer and
the response from the server during the secure check.

16 years ago(readv, writev) [_WIN32]: Set errno to ENOMEM when
Ron Koenderink [Sat, 8 Dec 2007 23:00:37 +0000 (23:00 +0000)]
(readv, writev) [_WIN32]: Set errno to ENOMEM when
unable memory.

16 years ago(status, init_nats): Concentrate CAP and MONEY logic in
Markus Armbruster [Sat, 8 Dec 2007 20:53:08 +0000 (20:53 +0000)]
(status, init_nats): Concentrate CAP and MONEY logic in
player_set_nstat().

16 years ago(dispatch, explain, status): Use player->nstat instead of
Markus Armbruster [Sat, 8 Dec 2007 20:47:13 +0000 (20:47 +0000)]
(dispatch, explain, status): Use player->nstat instead of
player->ncomstat for command permissions.  Side effect: status() no
longer notifies deities when they go broke or become solvent.
(dispatch): Don't distinguish between transiently and permanently
unavailable commands.  Didn't really work anyway.
(player): Remove unused member ncomstat.

16 years ago(capi, caploss): Leave updating player->nstat to next status().
Markus Armbruster [Sat, 8 Dec 2007 20:11:33 +0000 (20:11 +0000)]
(capi, caploss): Leave updating player->nstat to next status().

16 years ago(player): Remove member broke.
Markus Armbruster [Sat, 8 Dec 2007 20:09:35 +0000 (20:09 +0000)]
(player): Remove member broke.
(player_set_nstat): Don't set it.
(status): Check nstat instead of broke and nat_money.

16 years ago(player_set_nstat): New, factored out of init_nats().
Markus Armbruster [Sat, 8 Dec 2007 19:27:41 +0000 (19:27 +0000)]
(player_set_nstat): New, factored out of init_nats().
(init_nats): Use it.  No functional change.

(status): Use it.  This sets player->nstat from scratch, not just
MONEY and CAP.
(brea): Don't bother to update player->nstat, status() will.

16 years ago(xdump): Fix test whether to deny access to game state. Rev. 1.72
Markus Armbruster [Sat, 8 Dec 2007 18:05:51 +0000 (18:05 +0000)]
(xdump): Fix test whether to deny access to game state.  Rev. 1.72
added that test to make xdump available before break, and faithfully
denied access exactly when xdump wasn't available before.  This denied
access when maximum minutes per day were exceeded.  Don't.

16 years ago(caploss): Simplify. No functional change.
Markus Armbruster [Sat, 8 Dec 2007 17:53:04 +0000 (17:53 +0000)]
(caploss): Simplify.  No functional change.

16 years ago(servercmd): Fix telegram info prompt. Broken in rev. 1.37.
Markus Armbruster [Sat, 8 Dec 2007 17:42:16 +0000 (17:42 +0000)]
(servercmd): Fix telegram info prompt.  Broken in rev. 1.37.

16 years ago(caploss): Sacked capital isn't moved since rev. 1.7. Don't tell the
Markus Armbruster [Sat, 8 Dec 2007 17:28:38 +0000 (17:28 +0000)]
(caploss): Sacked capital isn't moved since rev. 1.7.  Don't tell the
victim it is.

16 years agoConsistently consider a nation bankrupt when its treasury is
Markus Armbruster [Sat, 8 Dec 2007 14:46:40 +0000 (14:46 +0000)]
Consistently consider a nation bankrupt when its treasury is
negative.  Some places considered $0 as bankrupt, some didn't.  Fix
the ones that did:
(repo_list): report command misreported countries with $0 as broke.
(init_nats): If you had $0, logging out and back in bankrupted you.
(produce_sect, upd_ship): Failed to build sectors and produce stuff
for countries with $0.

16 years ago(status): Round money before checking solvency, and consistently treat
Markus Armbruster [Sat, 8 Dec 2007 14:36:54 +0000 (14:36 +0000)]
(status): Round money before checking solvency, and consistently treat
$0 as solvent.  Before, you became bankrupt / solvent when your money
went below / above zero before rounding, but not when you hit zero
exactly.

16 years ago(servcmd): Fix recognition of empty C_INFORM broken in rev. 1.37.
Markus Armbruster [Sat, 8 Dec 2007 14:27:35 +0000 (14:27 +0000)]
(servcmd): Fix recognition of empty C_INFORM broken in rev. 1.37.

16 years ago(check_market): Fix missing putnat(). Belatedly clean up after the
Markus Armbruster [Sat, 8 Dec 2007 14:17:03 +0000 (14:17 +0000)]
(check_market): Fix missing putnat().  Belatedly clean up after the
removal of automatic loans in rev. 1.18.

16 years ago(check_trade): Fix bug that made your money evaporate when you didn't
Markus Armbruster [Sat, 8 Dec 2007 14:14:31 +0000 (14:14 +0000)]
(check_trade): Fix bug that made your money evaporate when you didn't
have enough to pay.  This was aggravated by the removal of automatic
loans in rev. 1.15.  Clean up after that revision, belatedly.

16 years ago(check_trade): Fix the price quoted to the buyer when he deal falls
Markus Armbruster [Sat, 8 Dec 2007 09:11:11 +0000 (09:11 +0000)]
(check_trade): Fix the price quoted to the buyer when he deal falls
through because he can't afford it.

16 years ago(status): Simplify. No functional change.
Markus Armbruster [Sat, 8 Dec 2007 07:33:45 +0000 (07:33 +0000)]
(status): Simplify.  No functional change.

16 years ago(army, fleet, wing): Fix printing of new group broken in rev. 1.13.
Markus Armbruster [Sun, 2 Dec 2007 18:33:28 +0000 (18:33 +0000)]
(army, fleet, wing): Fix printing of new group broken in rev. 1.13.

16 years agoBelatedly update section BUGS: relations work since 4.3.0, reject
Markus Armbruster [Sun, 2 Dec 2007 17:17:46 +0000 (17:17 +0000)]
Belatedly update section BUGS: relations work since 4.3.0, reject
since 4.3.4, and budget priorities are gone since 4.3.6.

Fix markup.

16 years agoFix not to show $ signs in route output. These were last seen in
Markus Armbruster [Sun, 2 Dec 2007 17:01:46 +0000 (17:01 +0000)]
Fix not to show $ signs in route output.  These were last seen in
actual source code as of version 1.0.3, dated May 1989.

16 years agoTrim .SA.
Markus Armbruster [Sun, 2 Dec 2007 16:49:04 +0000 (16:49 +0000)]
Trim .SA.

16 years agoAdd route to .SA.
Markus Armbruster [Sun, 2 Dec 2007 16:47:54 +0000 (16:47 +0000)]
Add route to .SA.

16 years agoRemove claim that ships and units on missions will not fire support.
Markus Armbruster [Sun, 2 Dec 2007 16:45:27 +0000 (16:45 +0000)]
Remove claim that ships and units on missions will not fire support.
It's always been wrong for ships, and land units were changed to match
ships in lndsub.c rev. 1.49.

16 years agoSpelling fixes.
Markus Armbruster [Sun, 2 Dec 2007 16:22:15 +0000 (16:22 +0000)]
Spelling fixes.

16 years agoReject unexpected redirections:
Markus Armbruster [Thu, 29 Nov 2007 06:04:30 +0000 (06:04 +0000)]
Reject unexpected redirections:
(redir_authorized): New parameter expected, reject when zero.
(doredir): Pass !redir_fp, do not close it.  Before, an unexpected
redirection silently replaced the existing one.
(dopipe): Pass !redir_fp.  Before, an unexpected redirection silently
replaced the existing one, leaking its FILE.
(doexecute): Pass 1.

16 years agoRefactor redirection data structure, no functional change:
Markus Armbruster [Thu, 29 Nov 2007 05:31:55 +0000 (05:31 +0000)]
Refactor redirection data structure, no functional change:
(redir_is_pipe): New.
(doredir, dopipe): Set it.
(pipe_fp): Remove.  Users changed to use redir_fp and redir_is_pipe.

16 years ago(prompt, servercmd): Move C_PROMPT code from prompt() to the only call
Markus Armbruster [Thu, 29 Nov 2007 05:17:54 +0000 (05:17 +0000)]
(prompt, servercmd): Move C_PROMPT code from prompt() to the only call
site that passes C_PROMPT.  No functional change.

16 years ago(servercmd, prompt, doexecute): Refactor: collect control of
Markus Armbruster [Wed, 28 Nov 2007 07:17:20 +0000 (07:17 +0000)]
(servercmd, prompt, doexecute): Refactor: collect control of
executing, input_fd and send_eof in servercmd().  No functional
change.

16 years agoFlaws in the Empire protocol make redirections within execute next to
Markus Armbruster [Wed, 28 Nov 2007 07:10:27 +0000 (07:10 +0000)]
Flaws in the Empire protocol make redirections within execute next to
impossible to implement correctly, and nested execute practically
useless (#116377).  Catch and refuse those:
(executing): New.
(doexecute, prompt): Set and clear it.
(redir_authorized): Reject if set.
(doexecute, play): Don't signal doexecute() failure through input_fd,
because that screws up up when we're executing already.  Increment
send_eof in doexecute() instead.
(send_eof): External linkage.

16 years ago(play): Increment send_eof instead of setting it, decrement it instead
Markus Armbruster [Wed, 28 Nov 2007 06:34:33 +0000 (06:34 +0000)]
(play): Increment send_eof instead of setting it, decrement it instead
of clearing it.  Fixes a race condition: when we got EOF on input_fd
and a failed doexecute() in the same iteration of the loop, only one
EOF cookie was sent, leaving the client hung.

16 years ago(play): Close input_fd when execute's done. Broken in rev. 1.1.
Markus Armbruster [Tue, 27 Nov 2007 19:55:34 +0000 (19:55 +0000)]
(play): Close input_fd when execute's done.  Broken in rev. 1.1.

16 years ago(loc_Exit_Handler, empth_init) [_WIN32]: Correct the function declaration
Ron Koenderink [Tue, 27 Nov 2007 03:29:35 +0000 (03:29 +0000)]
(loc_Exit_Handler, empth_init) [_WIN32]: Correct the function declaration
for loc_Exit_Handler().  Remove unnecessary cast.

16 years agoNew. Support for nightlybuild for SuSE.
Ron Koenderink [Sun, 25 Nov 2007 17:35:24 +0000 (17:35 +0000)]
New. Support for nightlybuild for SuSE.

16 years ago(chat): New, factored out of flash() and wall().
Markus Armbruster [Sun, 25 Nov 2007 14:34:50 +0000 (14:34 +0000)]
(chat): New, factored out of flash() and wall().
(flash, wall): Use it.

16 years ago(flash, wall): Use player->comtail[] to find the raw message. The old
Markus Armbruster [Sun, 25 Nov 2007 14:31:09 +0000 (14:31 +0000)]
(flash, wall): Use player->comtail[] to find the raw message.  The old
hack to find worked only when there were no spaces in flash's first
argument.  Closes #941740.

16 years ago(flash, wall): Remove rev 1.11's bogus input filtering.
Markus Armbruster [Sun, 25 Nov 2007 14:28:42 +0000 (14:28 +0000)]
(flash, wall): Remove rev 1.11's bogus input filtering.