Commit graph

147 commits

Author SHA1 Message Date
Bill Currie
dbbc2cd777 comment patches from Misty 2000-12-07 00:08:42 +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
Bill Currie
97f7b9a568 rename quakedef.h to host.h (I should have done this months ago).
NOTE: -{sdl,sgl,3dfx,ggi,wgl,mgl} targets are very likely to be broken
if any file fails to compile, just put #include "host.h" into it
2000-12-05 06:33:44 +00:00
Bill Currie
6b3f8e5dba make sure com_gamedir exists before writing config.cfg 2000-12-04 16:07:08 +00:00
Bill Currie
37eb211c0a Misty's clock hack. show_clock 1 displays a clock on the screen for those that
need to know the current time while playing.
2000-12-04 03:46:04 +00:00
Bill Currie
ae290926c4 WildCode's location marking code (with a little touchup). 2000-12-03 23:52:54 +00:00
Bill Currie
c67a1b37e5 fix handling of +set on the command line so the global config file can be
overridden (so long as it doesn't use setrom:)
2000-11-30 19:53:25 +00:00
Bill Currie
42b3a83bd9 move host_parms from quakefs.c to somewhere a little more sensibe. 2000-11-29 23:26:45 +00:00
Dabb
6e3337b64a Well, let's be really strict and put Host_Init(void) here.. 2000-11-27 15:26:49 +00:00
Forest Hale
9ce5fc95df quakeparms_t audit.
changed all parms references to directly access host_parms to improve readability, and removed unused basedir references. (all remaining fields in quakeparms_t deserve to be there)
2000-11-27 13:17:48 +00:00
Jeff Teunissen
c8fcb1cf22 Add *qf_version userinfo when connecting to QF servers. 2000-11-25 14:22:09 +00:00
Bill Currie
e03e707272 new cvar: cl_sbar_separator defaulting to 0. That ugly white vertical line to
the right of the status bar is now GONE (unless you actually /want/ it: if so,
set cl_sbar_separator to 1)
2000-11-21 05:08:12 +00:00
Bill Currie
d31a9f73de Always use COM_CreatPath instead of Sys_mkdir 2000-11-08 06:07:03 +00:00
Jeff Teunissen
ba11d00aba compat.h: Add str*equal () convenience macros
cl_main.c: Clean up version string a little
cmd.c: Add setrom parsing to first init phase, clean up includes a little
cvar.c: setrom command now uses set's semantics. Cvar_Set, Cvar_Set_f,
Cvar_Setrom_f now do a Con_DPrintf to report attempts to set CVAR_ROM
cvars.
sv_main.c: Clean up version string a little
vid.c: -winsize, -width, and -height no longer use Cvar_SetROM. The code
looks a little uglier, but it's more correct.
2000-11-04 07:42:43 +00:00
Bill Currie
56f7cce92e fix the missing explosion noises (and other impact sounds) 2000-10-31 05:48:32 +00:00
Bill Currie
5c2257399d oops :/ 2000-10-31 05:29:32 +00:00
Forest Hale
f404648926 added confirm_quit cvar, defaults to on 2000-10-29 20:49:50 +00:00
Zephaniah E. Hull
13bd5ce012 The init sequence cleanup!
Also broke up client.h into a lot of smaller headers.
Oh, software rendering works again.

And yes, this does hit a hell of a lot of files.
2000-10-29 15:35:24 +00:00
Bill Currie
c9b3b34f26 nukage 2000-10-26 03:43:53 +00:00
Bill Currie
9d80b4394e cl_main.c:
what was id trying to hide? oh well, it's clear now :)
gl_draw.c:
	missed a value->int_val conversion
2000-10-24 19:32:30 +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
4478b82af4 add some more *cap flags to the definition list (those mared with a * are not
yet implemented). Also add the p and t flags to the *cap string.
2000-10-16 20:41:06 +00:00
Bill Currie
6868542519 add some cvar discriptions 2000-10-16 03:29:42 +00:00
Bill Currie
8e7499cb1b fix a nasty buffer overflow giving a potential remote access to the system via
the client. Could be especially nasty if the client is running as root and
stuffcmds can come from anywhere. exploit details:

stuffcmds rcon_password <long password>
stuffcmds rcon <long command>
2000-10-16 03:18:37 +00:00
Bill Currie
1dd0f7ed0f Conditionally disable bunny hopping (speed jumping). To disable bunny hopping
on your server, put `serverinfo no_pogo_stick 1' into your server.cfg. It's
called no_pogo_stick for two reasons: the effect is called "pogo stick" in the
source code in a comment from the original id source code and also as a minor
(and very week:/) obfustication for `cheaters' trying to set it in their
clients. However, the client checks for no_pogo_stick in the server info and
forces it on when appropriate and having them in disagreement would only make
prediction a little screwy anyway :). BTW, when enabled this actually fixes the
original bug that allowed bunny hopping in the first place (though you still
get a jump grunt when you try to bunny hop; minor bug).
2000-10-15 04:26:09 +00:00
Jeff Teunissen
e0a53aa9a2 cl_main.c: More VID_SetCaption status messages.
vid_*: Make it so that VID_SetCaption can be safely called with the output
from va()
2000-10-14 07:10:56 +00:00
Zephaniah E. Hull
dbda53e93b More tweaking of stuff, fixed a minor bug in the loc stuff, may still
have the crash causer though.
2000-10-07 04:06:08 +00:00
Zephaniah E. Hull
760dfb8541 %l %a %A %h, for say and say_team, not quite finished yet. 2000-10-06 16:30:37 +00:00
Bill Currie
fc6ff9374d A solution to the problem of when to set the extended info keys. This allows
for nice large amounts of client info to be sent to a QuakeForge server.

sv_main.c:
	Append " QF" to the challenge reply. This DOES NOT break older clients
	because atoi stops parsing at the first non-number character but
	returns the value of what it successfully parsed. If a client does
	choke on this, its libc is broken and not to spec.

cl_main.c:
	Check for "QF" in the challenge string and if it's there, set the
	QF extended info keys before connecting. Also, make sure the extended
	info keys are NOT set prior to starting the connect process. This is
	done is the CL_Disconnect function.
2000-10-04 16:22:51 +00:00
Bill Currie
065abe9464 make VID_SetCaption consistent wherever appropriate (ie possibly windowed
environments). caption is "PROGRAM VERSION[: text]".
2000-10-04 05:45:48 +00:00
Bill Currie
46cbb108da bah, I broke connecting to old servers :(
remove *qsg_version and *cap on disconnect
set *qsg_version and *cap after connection but only if the server presents
*qsg_version (it will have big enough info buffers if this key exists). Doesn't
yet send the updated values to the server as there is currently no way to do
so :(  I started out creating a setfulluserinfo, but ran into design/security
problems with that approach. What's needed is to either find a secure way to
update these two star keys (however, special casing is ugly) or make them
non-star keys (I don't like that either: too easy to fiddle with). Another
possiblity is to force a reconnect after they are set.
2000-10-03 22:39:51 +00:00
Zephaniah E. Hull
e4c9ccff8f Cvar audit 1, all unused cvars are gone, with the exception of software
rendering, and the server.
2000-09-30 04:08:40 +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
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
Anton E. Gavrilov
ea7c4363ba Fix for ugly 'unknown: #' messages at the end of a demo. 2000-08-04 09:47:53 +00:00
Anton E. Gavrilov
bfcee99717 cl_deadbodyfilter and cl_gibfilter should work now. 2000-08-02 23:00:39 +00:00
Dabb
c29a59f262 VID_SetCaption (title) support. 2000-07-14 16:10:26 +00:00
James Brown
089a0a35d0 Patched for QSG Standard 2 (Extend Protocol).
Unfinished, renderer effects are only half implimented at this point.
2000-06-25 13:00:19 +00:00
Bill Currie
acb5f4b21a revert Endy's HL changes. Sorry endy but what would you rather have: HL
support in quakeforge, or knghtbrd using your guts for violin strings? :)
2000-06-16 09:41:42 +00:00
James Brown
1501c63997 Um. Fixed the server so it won't bomb loading Half-Life maps. 2000-06-10 03:43:18 +00:00
Anton E. Gavrilov
1139c87959 Remove master_adr;
Kill the stupid CVAR_SERVERINFO's.
2000-06-09 18:27:20 +00:00
Dan Olson
de18dc1c84 Added maplist command. The function was in, but it was never registered. 2000-05-31 14:16:08 +00:00
Loring Holden
5b094c2aa1 Reapply changes - this time tested w/ svga under Linux 2000-05-26 03:55:27 +00:00
Bill Currie
0bd4043ca4 revert lsh's checkins. They broke newtree for everybody but him. 2000-05-25 09:48:21 +00:00
Loring Holden
8005c0d25e I got this tree to build under Solaris, AIX, IRIX, & Linux.
In order to do so I:
* included strings.h and string.h in many files so various functions would be
defined
* Fixed model_t collision problem in cl_main.c (Solaris)
* com.c - corrected WORDS_BIGENDIAN spelling
* gl_draw.c - Use HAVE_GL_COLOR_INDEX8_EXT to avoid referencing
GL_COLOR_INDEX8_EXT when it isn't available
* net_udp.c - use socklen_t to appease AIX
2000-05-25 06:14:56 +00:00
Dan Olson
af98ae5fa5 Rename all Server_List_* to SL_* as well as some code cleanup. Does not fix
segfault
2000-05-25 01:38:52 +00:00
Jeff Teunissen
eb38ab097c configure.in: clean up final configuration report.
cl_main.c, cl_slist.c: Make server listing expand ~
2000-05-24 22:36:59 +00:00
Bill Currie
c8182eb2fd fixe the "failed to load sky 1" message 2000-05-24 05:12:54 +00:00
Jeff Teunissen
a45cefb3e0 Cvar fixups... 2000-05-24 02:07:53 +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
Bill Currie
fd35f176ba re-enable autoexec.cfg running on gamedir (defaults to off. need to put set cl_autexec either in quakeforge.conf or on the command line) 2000-05-23 11:29:15 +00:00
Bill Currie
3951d1fe4c bring across the VID and IN modules for svga, x11 and glx from OT. 2000-05-23 06:36:33 +00:00
Bill Currie
8ff75f94dc fix some problems with directories being created in the wrong places or not at all (caused by fs_userpath not being used when it should) 2000-05-23 01:44:20 +00:00
Joseph Carter
cb04fd6496 fix the +gamedir problem and fix my QFile removal 2000-05-22 21:32:14 +00:00
Joseph Carter
3d59dfed98 Before I can fix the (MANY!) problems with newtree, I have to fix the
little problem of mixed QFile and FILE.  Since we're not using ZLib in
this tree, QFile makes no real sense.  That didn't fix the real problem
I am having though.
2000-05-22 21:16:22 +00:00
Joseph Carter
7b1b82a16b C done 2000-05-22 06:46:35 +00:00
Anton E. Gavrilov
a955b34f46 freelook cvar support 2000-05-22 03:15:30 +00:00
Anton E. Gavrilov
2b42f07798 quakefs.h now defines fs_userpath and fs_sharepath 2000-05-22 01:37:19 +00:00
Anton E. Gavrilov
0f656e5f44 build.c is buildnum.c now 2000-05-21 22:13:01 +00:00
Marcus Sundberg
c6c333c3ee Changed basepath -> userpath 2000-05-21 21:39:53 +00:00
Jeff Teunissen
c40d97b99c s/fs_basedir/fs_userdir/g 2000-05-21 20:28:44 +00:00
Brian Koropoff
d9da49c2a9 The server address book now uses a linked list. I had some issues merging this with some of taniwha's changes, so it may not be perfect. Please test it. 2000-05-21 20:14:09 +00:00
Bill Currie
5f3c129314 fix a segfault cause by cmd line parsing 2000-05-21 10:21:08 +00:00
Bill Currie
3594de9738 command line now overrides what's in the config file 2000-05-21 10:08:27 +00:00
Bill Currie
ce25c13a65 command line and config file parsing ala OT 2000-05-21 09:49:25 +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
f1edd57186 Move Sys_Init after Cvar_Init. 2000-05-20 22:13:45 +00:00
Anton E. Gavrilov
6a6185458b Moved cvar initialization from CL_Init() to CL_InitCvars() 2000-05-19 10:48:21 +00:00
Thad Ward
4a5ffaed66 fix a win32 build error in cl_main.c 2000-05-19 04:37:16 +00:00
Brian Koropoff
0140835694 Server list stuff added to newtree! 2000-05-19 04:33:12 +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
Anton E. Gavrilov
739ff24b70 Removed Sys_Init() from Host_Init() --- who put it there? 2000-05-19 00:10:18 +00:00
Joseph Carter
0c93f0d1f2 Skybox support - just add env/*.tga!
Bring your own Cmd_LoadSky_f (), I haven't done that or the server code
yet.
2000-05-18 04:34:26 +00:00
Bill Currie
64d00faa8f Apply theoddone33's cvar patch (he's having connectivity problems with tank) 2000-05-17 23:16:23 +00:00
Jeff Teunissen
7647fdd484 Configure.in: minor changes.
include/* -- #defines so that you can #include them more than once.
2000-05-17 18:28:13 +00:00
Bill Currie
832af13c12 all files now include config.h 2000-05-17 10:03:19 +00:00
Brian Koropoff
e30c17729c Various things from theoddone. For some reason he can't commit... 2000-05-17 01:52:15 +00:00
Bill Currie
285f02e006 getting closer to working glx client 2000-05-16 07:21:28 +00:00
Bill Currie
5e6187be19 client now starts up without segging (X11, anyway) 2000-05-16 06:33:37 +00:00
Joseph Carter
00f00185f8 view lowering now does actually lower view. 2000-05-16 04:59:51 +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
Marcus Sundberg
a3a9384eec Cast isspace() and tolower() arguments to int to avoid warnings. 2000-05-14 18:10:56 +00:00
Joseph Carter
6e37b33f44 sys.h is no longer part of quakedef.h
sys_wina.S is now sys_x86.S (same as now gone sys_dosa.S, used on Linux too)

Updated Linux Makefile to reflect above

Linux translation table thingy now compiles properly
2000-05-14 16:56:28 +00:00
Danne
31b8be8648 *ver MUST be numerical - clients to ATOI with it. 2000-05-14 16:54:45 +00:00
Yan Sweitzer
bfb28427a9 cleaned external references to in_win.c
include in_win.h
2000-05-14 09:57:28 +00:00
Thad Ward
b0ced49de7 oops.. didn't realize that there was an #ifdef __linux__ around the call to s_init 2000-05-14 06:20:41 +00:00
Thad Ward
d8b2f366a1 moved sound initializatio out of vid_* to cl_host, where it belongs 2000-05-14 03:32:06 +00:00
Joseph Carter
01eceda77e Removed the string QuakeWorld from places to help avoid stepping on Id's
tues (not that they care to be honest..)  VERSION is gone, use the strings
QW_VERSION and QF_VERSION.  I'd like QW_VERSION to go away but I don't
think we're ready to screw with that just yet.  Note, those are strings,
not floats.

Also defined QSG_STANDARD and set all the star keys the current qw-server
does.

qw-* -> qf-*, unlike the main tree this one is not planned to be just QW.
2000-05-13 20:51:02 +00:00
Bill Currie
3f0635e210 remove sys_win.c.client. if it's still needed, it's in cvs
remove some GLQUAKEs from tho others. no client builds atm :(, but then neither does the server :/
2000-05-12 23:45:09 +00:00
Bill Currie
da7fc52b3e forgot to call cl_Cmd_Init :) 2000-05-11 23:49:03 +00:00
Joseph Carter
38f9b705b9 Whee! Every source file just got edited. Added the QF-style GPL header
to the top.  What I didn't add was descriptions.  Someone else wanna take
those on?
2000-05-11 16:03:29 +00:00
Bill Currie
ee16312bb8 clien (svga) compiles, but doesn't link yet (so clients are disabled for now) 2000-05-11 13:15:59 +00:00
Dan Olson
b139acafc2 ^M cleanup, and qw-server compiles with -Werror 2000-05-10 20:33:16 +00:00
Joseph Carter
d859383680 Initial revision 2000-05-10 11:29:38 +00:00