summaryrefslogtreecommitdiff
path: root/accel-pppd/lua
diff options
context:
space:
mode:
author[anp/hsw] <sysop@880.ru>2021-03-13 18:43:15 +0700
committer[anp/hsw] <sysop@880.ru>2021-03-13 18:43:15 +0700
commitc914000971063a4500cfb34f4141dfc3c943368d (patch)
treef96879e115cd1970435d97f466327b391015757b /accel-pppd/lua
parent49ef6cf969f662c44f4be2b82b101273c8c6de71 (diff)
downloadaccel-ppp-xebd-c914000971063a4500cfb34f4141dfc3c943368d.tar.gz
accel-ppp-xebd-c914000971063a4500cfb34f4141dfc3c943368d.zip
Fix some errors and warnings found by cppcheck
[accel-pppd/ctrl/ipoe/ipoe.c:4054]: (style) A pointer can not be negative so it is either pointless or an error to check if it is not. [accel-pppd/logs/log_syslog.c:148]: (error) Array 'facility_name[9]' accessed at index 35, which is out of bounds. [accel-pppd/lua/session.c:274]: (error) Common realloc mistake: 'mods' nulled but not freed upon failure [accel-pppd/extra/ippool.c:114]: (warning) %u in format string (no. 1) requires 'unsigned int *' but the argument type is 'int *'. [accel-pppd/extra/ippool.c:114]: (warning) %u in format string (no. 2) requires 'unsigned int *' but the argument type is 'int *'. [accel-pppd/extra/ippool.c:114]: (warning) %u in format string (no. 3) requires 'unsigned int *' but the argument type is 'int *'. [accel-pppd/extra/ippool.c:114]: (warning) %u in format string (no. 4) requires 'unsigned int *' but the argument type is 'int *'. [accel-pppd/extra/ippool.c:114]: (warning) %u in format string (no. 5) requires 'unsigned int *' but the argument type is 'int *'. [accel-pppd/extra/ippool.c:141]: (warning) %u in format string (no. 1) requires 'unsigned int *' but the argument type is 'int *'. [accel-pppd/extra/ippool.c:141]: (warning) %u in format string (no. 2) requires 'unsigned int *' but the argument type is 'int *'. [accel-pppd/extra/ippool.c:141]: (warning) %u in format string (no. 3) requires 'unsigned int *' but the argument type is 'int *'. [accel-pppd/extra/ippool.c:141]: (warning) %u in format string (no. 4) requires 'unsigned int *' but the argument type is 'int *'. [accel-pppd/extra/ippool.c:141]: (warning) %u in format string (no. 5) requires 'unsigned int *' but the argument type is 'int *'. [accel-pppd/main.c:97]: (warning) %d in format string (no. 1) requires 'int *' but the argument type is 'unsigned int *'. [accel-pppd/radius/radius.c:687] -> [accel-pppd/radius/radius.c:690]: (warning) Possible null pointer dereference: rpd - otherwise it is redundant to check it against null. [accel-pppd/radius/serv.c:805] -> [accel-pppd/radius/serv.c:829]: (warning) Possible null pointer dereference: ptr2 - otherwise it is redundant to check it against null. [accel-pppd/radius/serv.c:813] -> [accel-pppd/radius/serv.c:829]: (warning) Possible null pointer dereference: ptr2 - otherwise it is redundant to check it against null. [accel-pppd/radius/serv.c:823] -> [accel-pppd/radius/serv.c:829]: (warning) Possible null pointer dereference: ptr2 - otherwise it is redundant to check it against null.
Diffstat (limited to 'accel-pppd/lua')
-rw-r--r--accel-pppd/lua/session.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/accel-pppd/lua/session.c b/accel-pppd/lua/session.c
index bd98911..131f02f 100644
--- a/accel-pppd/lua/session.c
+++ b/accel-pppd/lua/session.c
@@ -268,10 +268,16 @@ static int session_module(lua_State *L)
void __export lua_session_module_register(const struct lua_session_module *mod)
{
+ char *mods_new;
if (!mods)
- mods = malloc(sizeof(void *));
+ mods_new = malloc(sizeof(void *));
else
- mods = realloc(mods, (mod_cnt + 1) * sizeof(void *));
+ mods_new = realloc(mods, (mod_cnt + 1) * sizeof(void *));
- mods[mod_cnt++] = mod;
+ if (mods_new) {
+ mods = mods_new;
+ mods[mod_cnt++] = mod;
+ } else {
+ log_emerg("lua: out of memory\n");
+ }
}