#include "../localuser/localuserchannel.h"
#include "../lib/irc_string.h"
#include "../lib/flags.h"
+#include "../authext/authext.h"
#include "lua.h"
#include "luabot.h"
snprintf(mask, sizeof(mask), "*@%s", IPtostr(target->p_ipaddr));
}
- irc_send("%s GL * +%s %d :%s", mynumeric->content, mask, duration, reason);
+ irc_send("%s GL * +%s %d %jd :%s", mynumeric->content, mask, duration, (intmax_t)getnettime(), reason);
LUA_RETURN(ps, lua_cmsg(LUA_PUKECHAN, "lua-GLINE: %s (%d users, %d seconds -- %s)", mask, usercount, duration, reason));
}
return 1;
}
-/* O(n) */
static int lua_getuserbyauth(lua_State *l) {
- const char *acc;
nick *np;
- int i, found = 0;
+ int found = 0;
+ authname *au;
if(!lua_isstring(l, 1))
return 0;
- acc = lua_tostring(l, 1);
+ au = getauthbyname(lua_tostring(l, 1));
+ if(!au)
+ return 0;
- for(i=0;i<NICKHASHSIZE;i++) {
- for(np=nicktable[i];np;np=np->next) {
- if(np && np->authname[0] && !ircd_strcmp(np->authname, acc)) {
- lua_pushnumeric(l, np->numeric);
- found++;
- }
- }
+ for(np=au->nicks;np;np=np->nextbyauthname) {
+ lua_pushnumeric(l, np->numeric);
+ found++;
}
return found;