Commit graph

63 commits

Author SHA1 Message Date
Ron Koenderink
1a8488bc45 (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).
2004-12-30 01:31:03 +00:00
473191301f (player_coms): Implement c_form for xdump and enable the command. 2004-12-16 22:08:03 +00:00
Marc Olzheim
d9f0f475da (turn): Change the command to allow for both an MOTD and a no-login
message.  Clean 'register' and 's_char' remnants on the way.
Circumvents bug #813167.
2004-12-16 14:17:08 +00:00
Marc Olzheim
e9a040adb9 Do not include var.h where no longer needed. Clean up register keywords in these file at the same time. No functional changes. 2004-10-12 20:08:51 +00:00
fac342ed49 Update copyright notice. 2004-09-07 15:07:16 +00:00
fe50838824 (xdump): New command xdump (experimental).
(player_coms): Add xdump under #if 0.
2004-08-20 12:39:16 +00:00
a5a8b52afd (gamedown): Printed down message with pr(), as a printf()-like format
string!  This reads and formats junk from the stack when message
contains '%', and can even crash.  Use prnf() instead.  Catched by Ron
Koenderink.
2004-08-10 13:34:41 +00:00
d721ba3b5c (show_motd): Printed motd with pr(), as a printf()-like format string!
This reads and formats junk from the stack when motd contains '%', and
can even crash.  Use prnf() instead.
2004-08-10 05:52:58 +00:00
b845997df3 Remove superflous include. 2004-05-09 15:22:17 +00:00
60bbb6b0c0 (buy, mark, display_mark): Move argument evaluation from
display_mark() to callers.  buy() no longer accepts "all".  It used to
display all lots, but didn't let you buy any.  Similar nonsense
happened for "" if buy() prompted for it.

(display_mark): Fix size of cheapest_items[].

(player_coms): Document mark accepting "all".
2004-04-10 08:43:19 +00:00
647ca5cec2 (player_coms): Fix move and test syntax. 2004-04-08 19:30:12 +00:00
acdee1e3b6 (weekday, daytime, daytime_range): New; replace kw_parse(). Parsing
is somewhat stricter.
(is_wday_allowed, is_daytime_allowed, is_daytime_nar,
min_to_next_daytime): New.
(demand_update_time, scheduled_update_time, next_scheduled_time,
update_time, gamehours): Use them to replace kw_parse().
(kw_parse): No longer used, remove.
2004-04-04 15:52:26 +00:00
ded3daf70d (gamehours): All callers ignore the value assigned to hour[]. Remove
parameter.  Remove calls without effect.  Other callers changed.
2004-04-04 14:20:30 +00:00
2df3f002e1 (getminleft): Parameter hours unused since the previous rev., remove.
Change parameter mpd from int * to int, because its only use is *mpd
as r-value.  Callers changed.
2004-04-04 14:07:51 +00:00
05acaece48 (kw_read, kw_find, kwtab, kw_list): Were used to evaluate the hours
file until 4.2.7.  Since then kw_read() is unused, and kw_find()
always returns NULL.  Remove.  kw_find() callers changed.
2004-04-04 13:54:30 +00:00
5dec30d66c (player_coms): Fix survey syntax. 2004-04-04 11:13:43 +00:00
Marc Olzheim
8ed9644253 Don't shadow existing variables. No functional changes. 2004-03-23 16:02:41 +00:00
e7d75b2279 Use gcc function attribute `format' to catch bad format strings. Fix
them.  From Marc Olzheim.
Type modifier 'l' was missing in many places, probably rendering the
server useless on 64-bit hosts.
(ef_flush, ef_write, ef_extend, lwpCreate, lwpDestroy): Use conversion
specifier 'p' to print pointers.
(check_market): Fix display of loan amount.
(doland): Fix unescaped '%' (undefined behavior).
(ldump, ndump, pdump, sdump): Don't use flag '0' with conversion
specifier 's' (undefined behavior).
(dump, ldump, lost, ndump, pdump, sdump, empth_create, update_sched):
Cast time_t and pthread_t to long for printing.
(lwpStackCheck, lwpStackCheckUsed, finish_sects): Insert cast to fix
argument type on all platforms.
(prod): Remove extra argument.
(perform_mission, airdamage, retreat_land1, lwpReschedule): Format
string missed arguments.
2004-03-09 12:27:40 +00:00
eccc5cb7d7 Sectors need space for items, deliveries and distribution thresholds.
To save space, the ancients invented `variables': a collection of
key-value pairs, missing means zero value, space for `enough' keys.
This complicates the code, as assigning to a `variable' can fail for
lack of space.  Over time, `enough' increased, and for quite some time
now `variables' have been *wasting* space.  This changeset replaces
them, except in struct mchrstr, struct lchrstr and struct pchrstr,
where they are read-only, and will be replaced later.  It is only a
first step; further cleanup is required.  To simplify and minimize
this necessarily huge changeset, the new item[] arrays have an unused
slot 0, and the old variable types V_CIVIL, ... are still defined, but
must have the same values as the item types I_CIVIL, ...
2004-03-03 16:54:22 +00:00
19acc1cd07 (diss, player_coms): Command `dissolve' has been disabled at least
since the days of Chainsaw (early '90s), and the code smells bad.
Bury it.
2004-03-03 08:20:45 +00:00
1f5754b5aa (player_new) [!RESOLVE_IPADDRESS]: Don't define unused local variable. 2004-03-01 14:17:58 +00:00
7c52730439 Don't cast void to void. 2004-03-01 13:56:07 +00:00
13797a2ba2 (execute): Fix botched test for empty argument. 2004-03-01 13:26:39 +00:00
0c19d70c74 (mult, player_coms): Command `mult' is disabled since 4.0.0 ('96), and
its code is obviously not in working order.  Remove.
(minmult, maxmult, configkeys): Unused configuration parameters,
remove.
(tradedesc): Remove code related to mult that had no effect.
(multread, commread, commwrite, commamt, commset, multset, commprice):
Dangerous, because code bypasses ef_read() & friends, remove.
(diss): Commodity cleanup uses the above, remove.  Command is disabled
and unlikely to work anyway.
2004-03-01 09:04:02 +00:00
b572ec19ad Fix missing include. 2004-02-29 11:41:26 +00:00
e67dca9d29 Indentation fixes; suspect indent-emp is to blame. 2004-02-28 18:06:11 +00:00
2e58c2867a (login_coms): Fix forward declaration (was a definition). 2004-02-24 18:35:26 +00:00
46da1aec7a deity.h is redundant, remove it. 2004-02-20 20:34:43 +00:00
b4a7d9f022 The (unused) parameter of thread entry points is named `argv', but the
argument is actually the value of global variable `player'.  Rename to
`unused'.
2004-02-20 20:14:53 +00:00
4a3f0b8146 Add some missing declarations to headers. Remove some redundant
declarations elsewhere.  Change linkage of some functions to static.
2004-02-20 10:51:03 +00:00
6482ed03d1 (player_coms): Declaration in com.h was misspelled. Remove redundant
declarations elsewhere.
2004-02-19 20:38:02 +00:00
22a356b1e1 New server.h for server startup, control and shutdown, i.e. stuff in
src/server.  Use it.
2004-02-19 19:02:30 +00:00
9491e2e7fc Remove useless user.h. 2004-02-19 18:10:27 +00:00
966eb40899 Declare all configuration parameters in optlist.h. Remove some
redundant declarations elsewhere.
2004-02-19 16:46:18 +00:00
b5401d9dd4 <string.h> is ISO C, no need to #if it. 2004-02-19 10:05:53 +00:00
696b5b4b64 POSIX has all we need in <time.h>. No need to fool around with
<sys/time.h>.
2004-02-19 09:57:25 +00:00
cb23a7e5b0 (player_accept): Back out rev. 1.9, it doesn't compile under Windows.
Needs fixing.
2004-02-18 19:43:09 +00:00
dc2d3ff447 (player_coms): Fix c_form for fire. 2004-02-18 19:37:52 +00:00
21f4dc4f0f Declare command functions in commands.h. Delete their declarations in
empmod.c
2004-02-18 19:35:49 +00:00
d2244b6c24 Make users of struct cmdstr agree on prototype of member c_addr.
(player_login): Use player->argp[] to store arguments.
(client_cmd, user_cmd, sanc_cmd, coun_cmd, pass_cmd, play_cmd,
kill_cmd, list_cmd, quit_cmd): Remove parameters, fetch arguments from
player->argp[].
(cmdstr): Prototype member c_addr.

(play_cmd): Used to silently ignore up to two arguments if there
wasn't a third one.  Don't.
2004-02-18 19:04:01 +00:00
8cd0160176 Declare all configuration variables in optlist.h. Include that
instead of declaring them all over the place.  This uncovered type
errors:
(s_p_etu, adj_update): Defined long, sometimes declared int.  Kills
big endian machines where sizeof(long) != sizeof(int).  Change to
int.

(set_option, delete_option, optstrset, intset, floatset, doubleset,
longset, optionset, optiondel, worldxset): Change linkage to static.
2004-02-17 22:58:04 +00:00
237baffca9 Supply prototypes where possible. This uncovered type errors with
thread entrypoints:
(lwpSelect, shutdown_sequence): Parameters didn't match thread entry
point prototype.
(lwpEntryPoint): Arguments didn't match thread entry point prototype.

Change linkage of functions without prototype declaration to static
where possible.

Remove some superflous declarations, replace others by suitable
includes.
2004-02-17 17:59:30 +00:00
42a43e1461 (player_accept): Passed pointer to incorrect type to accept(). 2004-02-15 19:26:52 +00:00
ffcf6bff0f (iom, fdmax, newoutput): Serve no purpose since previous rev., remove
along with code to maintain them.  This removes the last uses of
io_mask.c io_mask.h; remove them.
2004-02-07 02:01:47 +00:00
1669add706 Creating make include files with make doesn't work with many makes out
there.  Back out for 4.2.13.  You have to create the make include
files by hand if they don't exist.  That's the case for freshly
checked out trees.
2004-02-07 00:54:35 +00:00
52cb1f8c55 (io_open, io_iopfromfd): Properly check argument FD to protect
io_list[] indexing.
(niop, io_init): Store length of io_list[] in new niop.
(player_accept): Checking the socket file descriptor here is now
redundant.  Remove.
2004-02-06 12:12:58 +00:00
aba72ef569 (player_coms): Fix flag argument of map commands in c_form. From Marc
Olzheim.
2004-02-03 17:27:51 +00:00
cff4c77bf9 (player_coms): Fix c_form for upgrade. From Marc Olzheim. 2004-01-28 22:12:27 +00:00
632fbf8d12 (player_new): Proper error checking. Oops, now it may return NULL.
Proper error checking in callers required.
(update_wait, market_update): If player_new() returns null pointer,
skip update.
(player_accept): If player_new() returns null pointer, close
connection.
2004-01-23 13:44:19 +00:00
422a8cea73 (io_select, io_init, io_open, io_close, io_output, io_flush, io_write,
io_puts, iom_create, iom_getmask, iom_set, iom_clear, iom_zero):
Portability bug: io_select() passed bit_fdmask to select().  This
breaks the fd_set abstraction, and works only with the traditional
Unix implementation of fd_set.  Use fd_set and its operations instead.
Remove unused source files.  Note: the offending code is currently
unsued.  But it's a time bomb, and fixing it also replaces a bunch of
code by standard library services.
2004-01-15 14:32:00 +00:00