Beispiel #1
0
int status_counter_dec(server *srv, const char *s, size_t len) {
	data_integer *di = status_counter_get_counter(srv, s, len);

	if (di->value > 0) di->value--;

	return 0;
}
Beispiel #2
0
int status_counter_set(server *srv, const char *s, size_t len, int val) {
	data_integer *di = status_counter_get_counter(srv, s, len);

	di->value = val;

	return 0;
}
Beispiel #3
0
/* dummies of the statistic framework functions
 * they will be moved to a statistics.c later */
int status_counter_inc(server *srv, const char *s, size_t len) {
	data_integer *di = status_counter_get_counter(srv, s, len);

	di->value++;

	return 0;
}
Beispiel #4
0
static int magnet_status_get(lua_State *L) {
	data_integer *di;
	server *srv = magnet_get_server(L);

	/* __index: param 1 is the (empty) table the value was not found in */
	const_buffer key = magnet_checkconstbuffer(L, 2);

	di = status_counter_get_counter(srv, key.ptr, key.len);

	lua_pushinteger(L, (lua_Integer)di->value);

	return 1;
}
static int magnet_status_get(lua_State *L) {
	data_integer *di;
	server *srv;
	size_t key_len = 0;

	const char *key = luaL_checklstring(L, 2, &key_len);

	lua_pushstring(L, "lighty.srv");
	lua_gettable(L, LUA_REGISTRYINDEX);
	srv = lua_touserdata(L, -1);
	lua_pop(L, 1);

	di = status_counter_get_counter(srv, key, key_len);

	lua_pushnumber(L, (double)di->value);

	return 1;
}