net.server_event: Fire onincoming() callback for new connections as opposed to the...
[prosody.git] / util-src / pposix.c
index 49521a163e73dddac2521c173f40122896bb3fd9..8c1dbcc6f9a754c5626ecebc2a3cd5eb4e506597 100644 (file)
@@ -13,7 +13,7 @@
 * POSIX support functions for Lua
 */
 
-#define MODULE_VERSION "0.3.2"
+#define MODULE_VERSION "0.3.3"
 
 #include <stdlib.h>
 #include <math.h>
@@ -371,6 +371,21 @@ int lc_umask(lua_State* L)
        return 1;
 }
 
+int lc_mkdir(lua_State* L)
+{
+       int ret = mkdir(luaL_checkstring(L, 1), S_IRUSR | S_IWUSR | S_IXUSR
+               | S_IRGRP | S_IWGRP | S_IXGRP
+               | S_IROTH | S_IXOTH); /* mode 775 */
+
+       lua_pushboolean(L, ret==0);
+       if(ret)
+       {
+               lua_pushstring(L, strerror(errno));
+               return 2;
+       }
+       return 1;
+}
+
 /*     Like POSIX's setrlimit()/getrlimit() API functions.
  *
  *     Syntax:
@@ -505,6 +520,8 @@ int luaopen_util_pposix(lua_State *L)
 
                { "umask", lc_umask },
 
+               { "mkdir", lc_mkdir },
+
                { "setrlimit", lc_setrlimit },
                { "getrlimit", lc_getrlimit },