suricata
util-lua-common.h
Go to the documentation of this file.
1/* Copyright (C) 2014 Open Information Security Foundation
2 *
3 * You can copy, redistribute or modify this Program under the terms of
4 * the GNU General Public License version 2 as published by the Free
5 * Software Foundation.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 *
12 * You should have received a copy of the GNU General Public License
13 * version 2 along with this program; if not, write to the Free Software
14 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
15 * 02110-1301, USA.
16 */
17
18/**
19 * \file
20 *
21 * \author Victor Julien <victor@inliniac.net>
22 */
23
24#ifndef SURICATA_UTIL_LUA_COMMON_H
25#define SURICATA_UTIL_LUA_COMMON_H
26
27#define DEFAULT_LUA_ALLOC_LIMIT 500000
28#define DEFAULT_LUA_INSTRUCTION_LIMIT 500000
29
30int LuaCallbackError(lua_State *luastate, const char *msg);
31const char *LuaGetStringArgument(lua_State *luastate, int argc);
32
33void LuaPushTableKeyValueInt(lua_State *luastate, const char *key, int value);
34void LuaPushTableKeyValueBoolean(lua_State *luastate, const char *key, bool value);
35void LuaPushTableKeyValueString(lua_State *luastate, const char *key, const char *value);
37 lua_State *luastate, const char *key, const char *value, size_t len);
38void LuaPushTableKeyValueArray(lua_State *luastate, const char *key, const uint8_t *value, size_t len);
39
40int LuaStateNeedProto(lua_State *luastate, AppProto alproto);
41
42/* hack to please scan-build. Even though LuaCallbackError *always*
43 * returns 2, scan-build doesn't accept it and generates false
44 * positives */
45#define LUA_ERROR(msg) \
46 LuaCallbackError(luastate, (msg)); \
47 return 2
48
49#endif /* SURICATA_UTIL_LUA_COMMON_H */
uint8_t len
uint16_t AppProto
struct lua_State lua_State
void LuaPushTableKeyValueArray(lua_State *luastate, const char *key, const uint8_t *value, size_t len)
void LuaPushTableKeyValueString(lua_State *luastate, const char *key, const char *value)
Push a key plus string value to the stack.
void LuaPushTableKeyValueInt(lua_State *luastate, const char *key, int value)
int LuaStateNeedProto(lua_State *luastate, AppProto alproto)
const char * LuaGetStringArgument(lua_State *luastate, int argc)
void LuaPushTableKeyValueLString(lua_State *luastate, const char *key, const char *value, size_t len)
Push a key plus string value with length to the stack.
int LuaCallbackError(lua_State *luastate, const char *msg)
void LuaPushTableKeyValueBoolean(lua_State *luastate, const char *key, bool value)