Commit graph

57 commits

Author SHA1 Message Date
Jeff Teunissen
272abade38 Backport Cvar callbacks to newtree. Software gamma still doesn't work in
GL, and I still don't know exactly why.
2001-05-13 05:10:02 +00:00
Brian Koropoff
75ecbe3032 This change adds a new type of client connection state (cs_prespawned) to make sure
the client sends the prespawn, spawn, and begin commands in the correct order.
This stops several interesting cheats in TF as well as the posibility of avoiding the map
checksum.
2001-04-19 23:50:31 +00:00
Anton E. Gavrilov
54076d1a07 Fix a typo 2001-04-08 00:06:32 +00:00
Jeff Teunissen
6f1587ff7f Userinfo culling in the server. The server now only sends userinfo stuff
that's useful to the client or the players. This should solve the problem
with QW clients' tiny setinfo buffers once and for all. Note, you can
still use setinfo to set your user info, but if it's not in the
"need-to-know" list, the server won't send it back to you. I will probably
make this optional with a server Cvar if there are problems.
2001-03-09 08:25:39 +00:00
Bill Currie
16b2c798f0 white space 2001-02-10 07:00:47 +00:00
Bill Currie
435c588e37 function header audit. 2001-02-09 02:53:09 +00:00
Bill Currie
5471165397 don't redirect output for the pause command 2001-02-07 18:33:38 +00:00
Bill Currie
4d08e219d9 make edict_t.v a union of entvars_t and pr_type_t[] 2001-02-02 21:22:35 +00:00
Bill Currie
a24894dc70 progs modularity improvements. what WAS sv_progs is now sv_pr_state, qwprog is
now sv_progs and the progs loading code no longer falls back to qwprogs.dat or
progs.dat. Also, call SV_Progs_Init_Cvars (forgot to do this earlier)
2001-01-28 23:27:48 +00:00
Ragnvald Maartmann-Moe IV
57f32284dd Mostly whitespace, typo fixes. Tweak mouse scaling in sdl more inline with other clients. 2001-01-27 02:56:30 +00:00
Bill Currie
591577f6ef skin.c:
skins must always be loaded into a 320x200 buffer
sv_user.c:
	disable redirect for kill
2001-01-20 20:55:00 +00:00
Bill Currie
464ca76e23 don't redirect for the download command 2001-01-18 10:41:03 +00:00
Zephaniah E. Hull
7e437396f6 Frogot to zap an unused var. 2001-01-15 18:22:58 +00:00
Zephaniah E. Hull
2569e34ea9 cl_ents.c: Killed an unused variable which gcc did not catch.
cl_parse.c: Fixed the white body issue taniwha found, finally!

pr_edict.c: From misty, server cvar qwprogs, use it to set the
qwprogs.dat to something else.

sv_user.c: Don't send the r_skyname command, the clients pickup the info
line.
2001-01-15 18:14:36 +00:00
Anton E. Gavrilov
9bc040c14c If you stufftext() something to the client, don't forget to terminate
them with \n !
2001-01-14 01:39:18 +00:00
Bill Currie
e7a6ad981d take care of repeated output for begin as well as say and say team. As this
list is likely to keep growing, I've re-written SV_ExecuteUserCommand to check
a flag in the user command entry to see wheter output should be redirected or
not. Also, the ucmds table is now qsorted on init and bsearched in
SV_ExecuteUserCommand for both speed and code cleanliness.
2001-01-08 06:23:10 +00:00
Bill Currie
a91a554830 don't redirect for the say command 2001-01-06 07:15:42 +00:00
Bill Currie
451afbd488 various printf, Sys_Printf, Con_Printf cleanups. Con_Printf now ALWAYS prints
to consol/logfile whether output is recirected or not. Also, Con_Printf will
not print the time stamp if the last char of the previous print wasn't \n
2001-01-05 19:52:50 +00:00
Bill Currie
2debf6f669 now only svs is reverenced where it shouldn't be, and that's to set info
strings (skybox and *progs). skybox is easy to take care of (aditional parse
functions), but I haven't yet decided what to do with *progs. Also, progs code
needs a bit of a cleanup, but that will come later.
2001-01-02 03:22:46 +00:00
Bill Currie
b6c832d900 while not 100% complete (sv is still referred to as well as r_skyname), the
progs engine no longer refers to any global vars. This alows for multiple progs
being loaded (NOTE: NOT multiple mods, but (eg) for various protocol
extensions) and, once the last couple of issues are taken care of, CSQC.
2000-12-31 07:43:09 +00:00
Bill Currie
76a11bd74a cvar doc patches from Misty 2000-12-31 04:46:04 +00:00
Bill Currie
ccba39666b #include audit 2000-12-30 02:16:36 +00:00
Bill Currie
c3f6aa669a sv_main.c:
check sv_minqfversion->string[0] instead of value
sv_user.c:
	white space
2000-12-14 07:46:17 +00:00
Jeff Teunissen
54e2a4d9d3 Okay, the big whitespace reformat. There is some silliness (case
statements, variable declarations), but all in all it's not bad.
2000-12-08 06:51:37 +00:00
Jeff Teunissen
b62d75a774 Some whitespace, removed the timekick detection for slow-mo clients. There
are way too many legitimate ways to get a too-slow time, unfortunately.
2000-12-08 06:14:26 +00:00
Bill Currie
eae11661e4 strncat parameter audit. Unfortunatly, strncat is counter-intutite: the n in
strncat is not the maximum length of the destination string, but of the SOURCE
string, thus strncat (dest, src, sizeof (dest)) is incorrect. It should be
strncat (dest, src, sizeof (text) - strlen (dest)). Even then, no terminating
nul will be written if src is too long, but at least it won't crash the stack:)
2000-12-05 16:04:12 +00:00
Zephaniah E. Hull
66e0e31b57 strcat -> strncat
sprintf -> snprintf

AKA, really big buffer overflow security fixes.

More to come, geez we have holes everywhere.
2000-12-05 11:08:30 +00:00
Jeff Teunissen
d82b6a2e88 sv_main.c: Set the client's last_check field to -1 on connect. Unless a
player connects immediately after a timekick sample, their time WILL be
off, so don't look at them the first sample.

sv_user.c: Another location to enforce sv_maxrate, make sv_timekick and
friends ignore a user's time if it's -1, and apply double fuzz to times
lower than we expect -- it's way too sensitive otherwise. Also, some
whitespace changes.
2000-11-26 12:43:49 +00:00
Jeff Teunissen
6f40c97643 New Cvars:
sv_minqfversion: Set to the minimum allowable QuakeForge version you want
to allow on a server. QF clients prior to current CVS _will_not_work_ with
this cvar, as the QF version was not reported previously.

sv_maxrate: Change maximum rate algorithm; if sv_maxrate is nonzero, it is
the maximum rate allowed by the server. If it is unset, the maximum is
10000 like it used to be. The rate is silently capped, so it won't kick.

Cvar fixed: sv_timekick and friends; Now kicks on too little time passed
as well.

Functionality removed: "Last message repeated X times". It causes too much
trouble.
2000-11-25 14:20:04 +00:00
Anton E. Gavrilov
62d76003eb Security fixes (hope it works) 2000-11-21 00:45:36 +00:00
Bill Currie
d295f183ba remove va from commdef.h and fix the consequences 2000-10-21 07:34:56 +00:00
Bill Currie
2682888425 the big cvar value -> int_val audit. seems to work ok 2000-10-17 03:17:42 +00:00
Bill Currie
e60ae3b48c fix the paused message swaparoo 2000-10-16 03:12:03 +00:00
Bill Currie
667f28178f oops, got the sense of the zip flag backwards. Sending uncompressed files when
compressed is wanted and vv is not a good idea.
2000-09-28 13:35:59 +00:00
Bill Currie
1aa9084aa9 add support for COMPRESSED downloads!!! Of course, both client and server must
both support this. The client tells the server it can support compressed
downloads by setting the z flag in the *cap userinfo. If the server detects
that the client supports compression, and the file to be downloaded is
compressed (more accurately, has the .gz extension), the server sends a special
download packet with a size of -2 (-1 indicates error),, percent of 0, followed
by the new name of the file (eg maps/foo.bsp.gz for maps/foo.bsp). The client
WILL NOT accept a new filename that doesn not match the old name for the length
of the old name. The client also will not accept a new name if there are . or
.. path components. If the client rejects the new name, it prints a warning
message and aborts that download.
2000-09-28 06:11:55 +00:00
Bill Currie
86f87122c0 zlib support (gzipped pack contents). if you have a probelm with gzgets, you
have 3 choices: remove /usr/X11R6/lib/libz.a, --diable-zlib, or fix configure.
I do intend on fixing it myself.
2000-09-27 19:44:26 +00:00
Bill Currie
a38f854210 a little ws cleanup 2000-09-25 02:02:58 +00:00
Zephaniah E. Hull
210ba16069 First off in gl_draw.c we have some nice cleanup code for the upload
code.

Then we have the completely purge of treating 'unsigned' as a type, it
is NOT a type, it is a TYPE MODIFIER!

Under gcc for x86 it happens to try and do something sane, just treat it
as a unsigned int, but that is EVIL, it is a MODIFIER and if ANYONE adds
code which uses unsigned as a type in itself I /WILL/ harm them!!!
2000-09-22 09:08:08 +00:00
Maddes Buecher
1cb4241fb4 +USE unbound fix 2000-08-20 19:17:44 +00:00
Dabb
0bbc70dbd6 Fix for pause flood exploit. 2000-08-13 14:21:21 +00:00
Anton E. Gavrilov
3644a3056e host_frametime --> sv_frametime for server;
CVAR_FIXME cleanup.
2000-06-09 19:22:30 +00:00
Anton E. Gavrilov
5096ce59c3 Rename V_CalcRoll to SV_CalcRoll;
CVAR_FIXME cleanup.
2000-06-09 19:06:50 +00:00
Bill Currie
e98edd5f5f revert back to using f* for file io. I hope this fixes the catapult, but I wouldn't be suprised if it doesn't. 2000-05-23 22:43:36 +00:00
Joseph Carter
e9463e2db9 pretty much finishes source/* 2000-05-22 07:46:47 +00:00
Bill Currie
af032b8d55 port in some improvements from OT (namely fs_basepath, etc, though commandline parsing isn't finished yet)
split up the headerfiles and such. common.[ch] and qwsvdef.h no longer exist. More work still needs to be done (esp for windows) but this should be a major improvement.
2000-05-21 08:24:45 +00:00
Marcus Sundberg
5974810713 Fixed TRU64 warning. 2000-05-19 23:17:41 +00:00
Joseph Carter
466344b359 Not as clean as it could be, but for now it will work. 2000-05-19 03:06:05 +00:00
Bill Currie
832af13c12 all files now include config.h 2000-05-17 10:03:19 +00:00
Dan Olson
1d26c02826 Cvar merge... segfault problems... also unknown problems in vid_svga.c 2000-05-16 04:47:41 +00:00
Yan Sweitzer
1efb92f899 sprintf -> snprintf
vsprintf -> vsnprintf
2000-05-15 08:59:12 +00:00