]> git.xonotic.org Git - xonotic/darkplaces.git/commit
Split the global cmd interpreter into 4 separate ones for specific uses (client conso...
authorhavoc <havoc@d7cf8633-e32d-0410-b094-e92efae38249>
Tue, 21 Jan 2020 08:36:34 +0000 (08:36 +0000)
committerhavoc <havoc@d7cf8633-e32d-0410-b094-e92efae38249>
Tue, 21 Jan 2020 08:36:34 +0000 (08:36 +0000)
commitc38d0d2d6409d9b3174b6cf04f1bd09694cbfc81
tree32c0304292f738ff5993d54b2905af208e84e221
parent6ac580a1cf9cfe114aca1e108610b06720922f2b
Split the global cmd interpreter into 4 separate ones for specific uses (client console, server console, client commands received from server, server commands received from clients), this is intended to make clients more robust against malicious servers by restricting which commands make sense.

This also hides some network protocol implementation details from the console command interpreter, and makes the command list a lot shorter in dedicated servers.

Changed Cbuf_LockThreadMutex/Cbuf_UnlockThreadMutex to Cbuf_Lock/Cbuf_Unlock and they now use a spinlock internally.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12500 d7cf8633-e32d-0410-b094-e92efae38249
59 files changed:
cd_shared.c
cl_demo.c
cl_input.c
cl_main.c
cl_parse.c
cl_particles.c
cl_screen.c
cl_video.c
client.h
clvm_cmds.c
cmd.c
cmd.h
console.c
console.h
crypto.c
csprogs.c
cvar.c
cvar.h
fs.c
gl_backend.c
gl_draw.c
gl_rmain.c
gl_rsurf.c
gl_textures.c
host.c
host_cmd.c
image.c
image.h
keys.c
keys.h
libcurl.c
menu.c
model_shared.c
mvm_cmds.c
netconn.c
netconn.h
progsvm.h
prvm_cmds.c
prvm_cmds.h
prvm_edict.c
prvm_exec.c
quakedef.h
r_modules.c
r_modules.h
r_shadow.c
r_sky.c
render.h
sbar.c
snd_main.c
sound.h
sv_main.c
sv_user.c
svvm_cmds.c
sys_shared.c
vid.h
vid_sdl.c
vid_shared.c
view.c
zone.c