From c9581349d5d98c546517d4be70ea56786dd371f8 Mon Sep 17 00:00:00 2001
From: Steve Wills <swills@FreeBSD.org>
Date: Mon, 31 Dec 2018 20:51:16 +0000
Subject: [PATCH 1/3] mail/opendkim: fix build with lua52 and lua53

Link: https://cgit.freebsd.org/ports/commit/?id=739be5c250f886c386b3dd5cd5dda5759ca895a8
---
 miltertest/miltertest.c |  4 ++--
 opendkim/opendkim-lua.c | 40 ++++++++++++++++++++++++++++++----------
 2 files changed, 32 insertions(+), 12 deletions(-)

diff --git a/miltertest/miltertest.c b/miltertest/miltertest.c
index 04e50c04..84278b82 100644
--- a/miltertest/miltertest.c
+++ b/miltertest/miltertest.c
@@ -4009,7 +4009,7 @@ main(int argc, char **argv)
 	}
 
 	/* register functions */
-#if LUA_VERSION_NUM == 502
+#if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
         luaL_newlib(l, mt_library);
 	lua_setglobal(l, "mt");
 #else /* LUA_VERSION_NUM == 502 */
@@ -4163,7 +4163,7 @@ main(int argc, char **argv)
 	lua_setglobal(l, "SMFIF_SETSYMLIST");
 #endif /* SMFIF_SETSYMLIST */
 
-#if LUA_VERSION_NUM == 502
+#if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
 	switch (lua_load(l, mt_lua_reader, (void *) &io,
 	                 script == NULL ? "(stdin)" : script, NULL))
 #else /* LUA_VERSION_NUM == 502 */
diff --git a/opendkim/opendkim-lua.c b/opendkim/opendkim-lua.c
index 71dd24ab..702e8980 100644
--- a/opendkim/opendkim-lua.c
+++ b/opendkim/opendkim-lua.c
@@ -282,7 +282,7 @@ dkimf_lua_alloc(void *ud, void *ptr, size_t osize, size_t nsize)
 		free(ptr);
 		return NULL;
 	}
-# if LUA_VERSION_NUM == 502
+# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
 	else if (nsize != 0 && ptr == NULL)
 # else /* LUA_VERSION_NUM == 502 */
 	else if (nsize != 0 && osize == 0)
@@ -482,7 +482,7 @@ dkimf_lua_setup_hook(void *ctx, const char *script, size_t scriptlen,
 	**  Register functions.
 	*/
 
-# if LUA_VERSION_NUM == 502
+# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
 	luaL_newlib(l, dkimf_lua_lib_setup);
 	lua_setglobal(l, "odkim");
 # else /* LUA_VERSION_NUM == 502 */
@@ -529,7 +529,7 @@ dkimf_lua_setup_hook(void *ctx, const char *script, size_t scriptlen,
 	/* import other globals */
 	dkimf_import_globals(ctx, l);
 
-# if LUA_VERSION_NUM == 502
+# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, name, NULL))
 # else /* LUA_VERSION_NUM == 502 */
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, name))
@@ -561,7 +561,11 @@ dkimf_lua_setup_hook(void *ctx, const char *script, size_t scriptlen,
 		io.lua_io_len = 0;
 		io.lua_io_alloc = 0;
 
+#if (LUA_VERSION_NUM == 503)
+		if (lua_dump(l, dkimf_lua_writer, &io, 0) == 0)
+#else
 		if (lua_dump(l, dkimf_lua_writer, &io) == 0)
+#endif
 		{
 			*keep = (void *) io.lua_io_script;
 			*funclen = io.lua_io_len;
@@ -637,7 +641,7 @@ dkimf_lua_screen_hook(void *ctx, const char *script, size_t scriptlen,
 	**  Register functions.
 	*/
 
-# if LUA_VERSION_NUM == 502
+# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
 	luaL_newlib(l, dkimf_lua_lib_screen);
 	lua_setglobal(l, "odkim");
 # else /* LUA_VERSION_NUM == 502 */
@@ -674,7 +678,7 @@ dkimf_lua_screen_hook(void *ctx, const char *script, size_t scriptlen,
 	/* import other globals */
 	dkimf_import_globals(ctx, l);
 
-# if LUA_VERSION_NUM == 502
+# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, name, NULL))
 # else /* LUA_VERSION_NUM == 502 */
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, name))
@@ -706,7 +710,11 @@ dkimf_lua_screen_hook(void *ctx, const char *script, size_t scriptlen,
 		io.lua_io_len = 0;
 		io.lua_io_alloc = 0;
 
+#if (LUA_VERSION_NUM == 503)
+		if (lua_dump(l, dkimf_lua_writer, &io, 0) == 0)
+#else
 		if (lua_dump(l, dkimf_lua_writer, &io) == 0)
+#endif
 		{
 			*keep = (void *) io.lua_io_script;
 			*funclen = io.lua_io_len;
@@ -782,7 +790,7 @@ dkimf_lua_stats_hook(void *ctx, const char *script, size_t scriptlen,
 	**  Register functions.
 	*/
 
-# if LUA_VERSION_NUM == 502
+# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
 	luaL_newlib(l, dkimf_lua_lib_stats);
 	lua_setglobal(l, "odkim");
 # else /* LUA_VERSION_NUM == 502 */
@@ -911,7 +919,7 @@ dkimf_lua_stats_hook(void *ctx, const char *script, size_t scriptlen,
 	/* import other globals */
 	dkimf_import_globals(ctx, l);
 
-# if LUA_VERSION_NUM == 502
+# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, name, NULL))
 # else /* LUA_VERSION_NUM == 502 */
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, name))
@@ -943,7 +951,11 @@ dkimf_lua_stats_hook(void *ctx, const char *script, size_t scriptlen,
 		io.lua_io_len = 0;
 		io.lua_io_alloc = 0;
 
+#if (LUA_VERSION_NUM == 503)
+		if (lua_dump(l, dkimf_lua_writer, &io, 0) == 0)
+#else
 		if (lua_dump(l, dkimf_lua_writer, &io) == 0)
+#endif
 		{
 			*keep = (void *) io.lua_io_script;
 			*funclen = io.lua_io_len;
@@ -1019,7 +1031,7 @@ dkimf_lua_final_hook(void *ctx, const char *script, size_t scriptlen,
 	**  Register functions.
 	*/
 
-# if LUA_VERSION_NUM == 502
+# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
 	luaL_newlib(l, dkimf_lua_lib_final);
 	lua_setglobal(l, "odkim");
 # else /* LUA_VERSION_NUM == 502 */
@@ -1148,7 +1160,7 @@ dkimf_lua_final_hook(void *ctx, const char *script, size_t scriptlen,
 	/* import other globals */
 	dkimf_import_globals(ctx, l);
 
-# if LUA_VERSION_NUM == 502
+# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, name, NULL))
 # else /* LUA_VERSION_NUM == 502 */
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, name))
@@ -1180,7 +1192,11 @@ dkimf_lua_final_hook(void *ctx, const char *script, size_t scriptlen,
 		io.lua_io_len = 0;
 		io.lua_io_alloc = 0;
 
+#if (LUA_VERSION_NUM == 503)
+		if (lua_dump(l, dkimf_lua_writer, &io, 0) == 0)
+#else
 		if (lua_dump(l, dkimf_lua_writer, &io) == 0)
+#endif
 		{
 			*keep = (void *) io.lua_io_script;
 			*funclen = io.lua_io_len;
@@ -1249,7 +1265,7 @@ dkimf_lua_db_hook(const char *script, size_t scriptlen, const char *query,
 		lua_pushstring(l, query);
 	lua_setglobal(l, "query");
 
-# if LUA_VERSION_NUM == 502
+# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, script, NULL))
 # else /* LUA_VERSION_NUM == 502 */
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, script))
@@ -1281,7 +1297,11 @@ dkimf_lua_db_hook(const char *script, size_t scriptlen, const char *query,
 		io.lua_io_len = 0;
 		io.lua_io_alloc = 0;
 
+#if (LUA_VERSION_NUM == 503)
+		if (lua_dump(l, dkimf_lua_writer, &io, 0) == 0)
+#else
 		if (lua_dump(l, dkimf_lua_writer, &io) == 0)
+#endif
 		{
 			*keep = (void *) io.lua_io_script;
 			*funclen = io.lua_io_len;

From 6c0794abc936dcda63e7433ff514185f2c541103 Mon Sep 17 00:00:00 2001
From: Alexey Dokuchaev <danfe@FreeBSD.org>
Date: Tue, 19 Jan 2021 03:46:02 +0000
Subject: [PATCH 2/3] Fix Lua version checks and thus unbreak the build against
 Lua 5.4.

Link: https://cgit.freebsd.org/ports/commit/?id=0426c84984ad7fbbd2b9773b9783af8b65851d69
---
 miltertest/miltertest.c | 12 +++----
 opendkim/opendkim-lua.c | 70 ++++++++++++++++++++---------------------
 2 files changed, 41 insertions(+), 41 deletions(-)

diff --git a/miltertest/miltertest.c b/miltertest/miltertest.c
index 84278b82..d5fc6ab6 100644
--- a/miltertest/miltertest.c
+++ b/miltertest/miltertest.c
@@ -4009,12 +4009,12 @@ main(int argc, char **argv)
 	}
 
 	/* register functions */
-#if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
+#if LUA_VERSION_NUM >= 502
         luaL_newlib(l, mt_library);
 	lua_setglobal(l, "mt");
-#else /* LUA_VERSION_NUM == 502 */
+#else /* LUA_VERSION_NUM >= 502 */
 	luaL_register(l, "mt", mt_library);
-#endif /* LUA_VERSION_NUM == 502 */
+#endif /* LUA_VERSION_NUM >= 502 */
 	lua_pop(l, 1);
 
 	/* register constants */
@@ -4163,13 +4163,13 @@ main(int argc, char **argv)
 	lua_setglobal(l, "SMFIF_SETSYMLIST");
 #endif /* SMFIF_SETSYMLIST */
 
-#if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
+#if LUA_VERSION_NUM >= 502
 	switch (lua_load(l, mt_lua_reader, (void *) &io,
 	                 script == NULL ? "(stdin)" : script, NULL))
-#else /* LUA_VERSION_NUM == 502 */
+#else /* LUA_VERSION_NUM >= 502 */
 	switch (lua_load(l, mt_lua_reader, (void *) &io,
 	                 script == NULL ? "(stdin)" : script))
-#endif /* LUA_VERSION_NUM == 502 */
+#endif /* LUA_VERSION_NUM >= 502 */
 	{
 	  case 0:
 		break;
diff --git a/opendkim/opendkim-lua.c b/opendkim/opendkim-lua.c
index 702e8980..508fb6f5 100644
--- a/opendkim/opendkim-lua.c
+++ b/opendkim/opendkim-lua.c
@@ -282,11 +282,11 @@ dkimf_lua_alloc(void *ud, void *ptr, size_t osize, size_t nsize)
 		free(ptr);
 		return NULL;
 	}
-# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
+# if LUA_VERSION_NUM >= 502
 	else if (nsize != 0 && ptr == NULL)
-# else /* LUA_VERSION_NUM == 502 */
+# else /* LUA_VERSION_NUM >= 502 */
 	else if (nsize != 0 && osize == 0)
-# endif /* LUA_VERSION_NUM == 502 */
+# endif /* LUA_VERSION_NUM >= 502 */
 	{
 		return malloc(nsize);
 	}
@@ -482,12 +482,12 @@ dkimf_lua_setup_hook(void *ctx, const char *script, size_t scriptlen,
 	**  Register functions.
 	*/
 
-# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
+# if LUA_VERSION_NUM >= 502
 	luaL_newlib(l, dkimf_lua_lib_setup);
 	lua_setglobal(l, "odkim");
-# else /* LUA_VERSION_NUM == 502 */
+# else /* LUA_VERSION_NUM >= 502 */
 	luaL_register(l, "odkim", dkimf_lua_lib_setup);
-# endif /* LUA_VERSION_NUM == 502 */
+# endif /* LUA_VERSION_NUM >= 502 */
 	lua_pop(l, 1);
 
 	/*
@@ -529,11 +529,11 @@ dkimf_lua_setup_hook(void *ctx, const char *script, size_t scriptlen,
 	/* import other globals */
 	dkimf_import_globals(ctx, l);
 
-# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
+# if LUA_VERSION_NUM >= 502
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, name, NULL))
-# else /* LUA_VERSION_NUM == 502 */
+# else /* LUA_VERSION_NUM >= 502 */
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, name))
-# endif /* LUA_VERSION_NUM == 502 */
+# endif /* LUA_VERSION_NUM >= 502 */
 	{
 	  case 0:
 		break;
@@ -561,7 +561,7 @@ dkimf_lua_setup_hook(void *ctx, const char *script, size_t scriptlen,
 		io.lua_io_len = 0;
 		io.lua_io_alloc = 0;
 
-#if (LUA_VERSION_NUM == 503)
+#if (LUA_VERSION_NUM >= 503)
 		if (lua_dump(l, dkimf_lua_writer, &io, 0) == 0)
 #else
 		if (lua_dump(l, dkimf_lua_writer, &io) == 0)
@@ -641,12 +641,12 @@ dkimf_lua_screen_hook(void *ctx, const char *script, size_t scriptlen,
 	**  Register functions.
 	*/
 
-# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
+# if LUA_VERSION_NUM >= 502
 	luaL_newlib(l, dkimf_lua_lib_screen);
 	lua_setglobal(l, "odkim");
-# else /* LUA_VERSION_NUM == 502 */
+# else /* LUA_VERSION_NUM >= 502 */
 	luaL_register(l, "odkim", dkimf_lua_lib_screen);
-# endif /* LUA_VERSION_NUM == 502 */
+# endif /* LUA_VERSION_NUM >= 502 */
 	lua_pop(l, 1);
 
 	/*
@@ -678,11 +678,11 @@ dkimf_lua_screen_hook(void *ctx, const char *script, size_t scriptlen,
 	/* import other globals */
 	dkimf_import_globals(ctx, l);
 
-# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
+# if LUA_VERSION_NUM >= 502
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, name, NULL))
-# else /* LUA_VERSION_NUM == 502 */
+# else /* LUA_VERSION_NUM >= 502 */
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, name))
-# endif /* LUA_VERSION_NUM == 502 */
+# endif /* LUA_VERSION_NUM >= 502 */
 	{
 	  case 0:
 		break;
@@ -710,7 +710,7 @@ dkimf_lua_screen_hook(void *ctx, const char *script, size_t scriptlen,
 		io.lua_io_len = 0;
 		io.lua_io_alloc = 0;
 
-#if (LUA_VERSION_NUM == 503)
+#if (LUA_VERSION_NUM >= 503)
 		if (lua_dump(l, dkimf_lua_writer, &io, 0) == 0)
 #else
 		if (lua_dump(l, dkimf_lua_writer, &io) == 0)
@@ -790,12 +790,12 @@ dkimf_lua_stats_hook(void *ctx, const char *script, size_t scriptlen,
 	**  Register functions.
 	*/
 
-# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
+# if LUA_VERSION_NUM >= 502
 	luaL_newlib(l, dkimf_lua_lib_stats);
 	lua_setglobal(l, "odkim");
-# else /* LUA_VERSION_NUM == 502 */
+# else /* LUA_VERSION_NUM >= 502 */
 	luaL_register(l, "odkim", dkimf_lua_lib_stats);
-# endif /* LUA_VERSION_NUM == 502 */
+# endif /* LUA_VERSION_NUM >= 502 */
 	lua_pop(l, 1);
 
 	/*
@@ -919,11 +919,11 @@ dkimf_lua_stats_hook(void *ctx, const char *script, size_t scriptlen,
 	/* import other globals */
 	dkimf_import_globals(ctx, l);
 
-# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
+# if LUA_VERSION_NUM >= 502
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, name, NULL))
-# else /* LUA_VERSION_NUM == 502 */
+# else /* LUA_VERSION_NUM >= 502 */
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, name))
-# endif /* LUA_VERSION_NUM == 502 */
+# endif /* LUA_VERSION_NUM >= 502 */
 	{
 	  case 0:
 		break;
@@ -951,7 +951,7 @@ dkimf_lua_stats_hook(void *ctx, const char *script, size_t scriptlen,
 		io.lua_io_len = 0;
 		io.lua_io_alloc = 0;
 
-#if (LUA_VERSION_NUM == 503)
+#if (LUA_VERSION_NUM >= 503)
 		if (lua_dump(l, dkimf_lua_writer, &io, 0) == 0)
 #else
 		if (lua_dump(l, dkimf_lua_writer, &io) == 0)
@@ -1031,12 +1031,12 @@ dkimf_lua_final_hook(void *ctx, const char *script, size_t scriptlen,
 	**  Register functions.
 	*/
 
-# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
+# if LUA_VERSION_NUM >= 502
 	luaL_newlib(l, dkimf_lua_lib_final);
 	lua_setglobal(l, "odkim");
-# else /* LUA_VERSION_NUM == 502 */
+# else /* LUA_VERSION_NUM >= 502 */
 	luaL_register(l, "odkim", dkimf_lua_lib_final);
-# endif /* LUA_VERSION_NUM == 502 */
+# endif /* LUA_VERSION_NUM >= 502 */
 	lua_pop(l, 1);
 
 	/*
@@ -1160,11 +1160,11 @@ dkimf_lua_final_hook(void *ctx, const char *script, size_t scriptlen,
 	/* import other globals */
 	dkimf_import_globals(ctx, l);
 
-# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
+# if LUA_VERSION_NUM >= 502
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, name, NULL))
-# else /* LUA_VERSION_NUM == 502 */
+# else /* LUA_VERSION_NUM >= 502 */
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, name))
-# endif /* LUA_VERSION_NUM == 502 */
+# endif /* LUA_VERSION_NUM >= 502 */
 	{
 	  case 0:
 		break;
@@ -1192,7 +1192,7 @@ dkimf_lua_final_hook(void *ctx, const char *script, size_t scriptlen,
 		io.lua_io_len = 0;
 		io.lua_io_alloc = 0;
 
-#if (LUA_VERSION_NUM == 503)
+#if (LUA_VERSION_NUM >= 503)
 		if (lua_dump(l, dkimf_lua_writer, &io, 0) == 0)
 #else
 		if (lua_dump(l, dkimf_lua_writer, &io) == 0)
@@ -1265,11 +1265,11 @@ dkimf_lua_db_hook(const char *script, size_t scriptlen, const char *query,
 		lua_pushstring(l, query);
 	lua_setglobal(l, "query");
 
-# if (LUA_VERSION_NUM == 502 || LUA_VERSION_NUM == 503)
+# if LUA_VERSION_NUM >= 502
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, script, NULL))
-# else /* LUA_VERSION_NUM == 502 */
+# else /* LUA_VERSION_NUM >= 502 */
 	switch (lua_load(l, dkimf_lua_reader, (void *) &io, script))
-# endif /* LUA_VERSION_NUM == 502 */
+# endif /* LUA_VERSION_NUM >= 502 */
 	{
 	  case 0:
 		break;
@@ -1297,7 +1297,7 @@ dkimf_lua_db_hook(const char *script, size_t scriptlen, const char *query,
 		io.lua_io_len = 0;
 		io.lua_io_alloc = 0;
 
-#if (LUA_VERSION_NUM == 503)
+#if (LUA_VERSION_NUM >= 503)
 		if (lua_dump(l, dkimf_lua_writer, &io, 0) == 0)
 #else
 		if (lua_dump(l, dkimf_lua_writer, &io) == 0)

From 4282a04cc6b9c4f74a9736818139aaedcf3f24ca Mon Sep 17 00:00:00 2001
From: Yasuhito FUTATSUKI <freebsd-bug-report-yf@yf.bsdclub.org>
Date: Mon, 11 Mar 2024 15:15:30 +0000
Subject: [PATCH 3/3] mail/opendkim: Fix fail to start with lua54 if lua files
 is really specified

Link: https://cgit.freebsd.org/ports/commit/?id=fb4ba36cba6f14d96323cee7f2e16b56a9ed205c
---
 miltertest/miltertest.c | 2 +-
 opendkim/opendkim-lua.c | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/miltertest/miltertest.c b/miltertest/miltertest.c
index d5fc6ab6..ebb79d1b 100644
--- a/miltertest/miltertest.c
+++ b/miltertest/miltertest.c
@@ -4014,8 +4014,8 @@ main(int argc, char **argv)
 	lua_setglobal(l, "mt");
 #else /* LUA_VERSION_NUM >= 502 */
 	luaL_register(l, "mt", mt_library);
-#endif /* LUA_VERSION_NUM >= 502 */
 	lua_pop(l, 1);
+#endif /* LUA_VERSION_NUM >= 502 */
 
 	/* register constants */
 	lua_pushnumber(l, MT_HDRINSERT);
diff --git a/opendkim/opendkim-lua.c b/opendkim/opendkim-lua.c
index 508fb6f5..270c4464 100644
--- a/opendkim/opendkim-lua.c
+++ b/opendkim/opendkim-lua.c
@@ -487,8 +487,8 @@ dkimf_lua_setup_hook(void *ctx, const char *script, size_t scriptlen,
 	lua_setglobal(l, "odkim");
 # else /* LUA_VERSION_NUM >= 502 */
 	luaL_register(l, "odkim", dkimf_lua_lib_setup);
-# endif /* LUA_VERSION_NUM >= 502 */
 	lua_pop(l, 1);
+# endif /* LUA_VERSION_NUM >= 502 */
 
 	/*
 	**  Register constants.
@@ -646,8 +646,8 @@ dkimf_lua_screen_hook(void *ctx, const char *script, size_t scriptlen,
 	lua_setglobal(l, "odkim");
 # else /* LUA_VERSION_NUM >= 502 */
 	luaL_register(l, "odkim", dkimf_lua_lib_screen);
-# endif /* LUA_VERSION_NUM >= 502 */
 	lua_pop(l, 1);
+# endif /* LUA_VERSION_NUM >= 502 */
 
 	/*
 	**  Register constants.
@@ -795,8 +795,8 @@ dkimf_lua_stats_hook(void *ctx, const char *script, size_t scriptlen,
 	lua_setglobal(l, "odkim");
 # else /* LUA_VERSION_NUM >= 502 */
 	luaL_register(l, "odkim", dkimf_lua_lib_stats);
-# endif /* LUA_VERSION_NUM >= 502 */
 	lua_pop(l, 1);
+# endif /* LUA_VERSION_NUM >= 502 */
 
 	/*
 	**  Register constants.
@@ -1036,8 +1036,8 @@ dkimf_lua_final_hook(void *ctx, const char *script, size_t scriptlen,
 	lua_setglobal(l, "odkim");
 # else /* LUA_VERSION_NUM >= 502 */
 	luaL_register(l, "odkim", dkimf_lua_lib_final);
-# endif /* LUA_VERSION_NUM >= 502 */
 	lua_pop(l, 1);
+# endif /* LUA_VERSION_NUM >= 502 */
 
 	/*
 	**  Register constants.