diff options
Diffstat (limited to 'src/mod_magnet_cache.h')
-rw-r--r-- | src/mod_magnet_cache.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/mod_magnet_cache.h b/src/mod_magnet_cache.h new file mode 100644 index 0000000..50c9e44 --- /dev/null +++ b/src/mod_magnet_cache.h @@ -0,0 +1,33 @@ +#ifndef _MOD_MAGNET_CACHE_H_ +#define _MOD_MAGNET_CACHE_H_ + +#include "buffer.h" +#include "base.h" + +#ifdef HAVE_LUA_H +#include <lua.h> + +typedef struct { + buffer *name; + buffer *etag; + + lua_State *L; + + time_t last_used; /* LRU */ +} script; + +typedef struct { + script **ptr; + + size_t used; + size_t size; +} script_cache; + +script_cache *script_cache_init(void); +void script_cache_free(script_cache *cache); + +lua_State *script_cache_get_script(server *srv, connection *con, + script_cache *cache, buffer *name); + +#endif +#endif |