aboutsummaryrefslogtreecommitdiffstats
path: root/util-src/ringbuffer.c
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2020-05-29 18:11:42 +0200
committerKim Alvefur <zash@zash.se>2020-05-29 18:11:42 +0200
commit73efa2f2f174f699ddb4a56320dc6fbb681e5be1 (patch)
tree201cf90725615fd50a3a03d260a6aff23a5987a0 /util-src/ringbuffer.c
parent4c70417684d3617a83aacc8cae16078e354ad87b (diff)
downloadprosody-73efa2f2f174f699ddb4a56320dc6fbb681e5be1.tar.gz
prosody-73efa2f2f174f699ddb4a56320dc6fbb681e5be1.zip
util.ringbuffer: Prevent creation of zero-size buffer
Diffstat (limited to 'util-src/ringbuffer.c')
-rw-r--r--util-src/ringbuffer.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/util-src/ringbuffer.c b/util-src/ringbuffer.c
index 3e17cdf5..f4a51cc9 100644
--- a/util-src/ringbuffer.c
+++ b/util-src/ringbuffer.c
@@ -198,6 +198,7 @@ static int rb_free(lua_State *L) {
static int rb_new(lua_State *L) {
size_t size = luaL_optinteger(L, 1, sysconf(_SC_PAGESIZE));
+ luaL_argcheck(L, size > 0, 1, "positive integer expected");
ringbuffer *b = lua_newuserdata(L, sizeof(ringbuffer) + size);
b->rpos = 0;