mirror of
https://github.com/Mauler125/r5sdk.git
synced 2025-02-09 19:15:03 +01:00
Implement bounds check for non-sanitized value of u.m_nNewEntity. Debug builds of the engine have an assertion, however in release these are stripped. This fixes a full chain client RCE exploit, for more information, see: https://ctf.re/source-engine/exploitation/2021/05/01/source-engine-2/
33 lines
1.1 KiB
C
33 lines
1.1 KiB
C
//===== Copyright (c) 1996-2005, Valve Corporation, All rights reserved. ======//
|
|
//
|
|
// Purpose:
|
|
//
|
|
// $NoKeywords: $
|
|
//
|
|
//=============================================================================//
|
|
#ifndef CONST_H
|
|
#define CONST_H
|
|
|
|
// How many bits to use to encode an edict.
|
|
#define MAX_EDICT_BITS 14 // # of bits needed to represent max edicts
|
|
// Max # of edicts in a level
|
|
#define MAX_EDICTS (1<<MAX_EDICT_BITS)
|
|
|
|
enum RenderMode_t
|
|
{
|
|
kRenderNormal = 0, // src
|
|
kRenderTransColor, // c*a+dest*(1-a)
|
|
kRenderTransTexture, // src*a+dest*(1-a)
|
|
kRenderGlow, // src*a+dest -- No Z buffer checks -- Fixed size in screen space
|
|
kRenderTransAlpha, // src*srca+dest*(1-srca)
|
|
kRenderTransAdd, // src*a+dest
|
|
kRenderEnvironmental, // not drawn, used for environmental effects
|
|
kRenderTransAddFrameBlend, // use a fractional frame value to blend between animation frames
|
|
kRenderTransAlphaAdd, // src + dest*(1-a)
|
|
kRenderWorldGlow, // Same as kRenderGlow but not fixed size in screen space
|
|
kRenderNone, // Don't render.
|
|
|
|
kRenderModeCount, // must be last
|
|
};
|
|
|
|
#endif // CONST_H
|