]> jfr.im git - irc/quakenet/newserv.git/blame - settime/settime.c
LUA: port luadb to dbapi2 to drop postgres dependency
[irc/quakenet/newserv.git] / settime / settime.c
CommitLineData
052247fa
CP
1#include <stdlib.h>
2#include <stdio.h>
3#include <stdarg.h>
4#include <string.h>
5#include "../irc/irc.h"
6#include "../core/schedule.h"
a9f65ad0 7#include "../control/control.h"
7f32dbdf
P
8#include "../lib/version.h"
9
10MODULE_VERSION("")
052247fa
CP
11
12schedule *settime_schedule;
a9f65ad0 13int settime_cmd(void *sender, int cargc, char **cargv);
052247fa
CP
14
15void settime_sendsettime()
16{
17time_t newtime;
18
19 newtime = time(NULL);
20 irc_send("%s SE %ld", mynumeric->content, newtime);
21 setnettime(newtime);
22}
23
24void _init()
25{
26 settime_schedule = schedulerecurring(time(NULL) + 300, 0, 1800, &settime_sendsettime, NULL);
a9f65ad0
P
27 registercontrolhelpcmd("settime",NO_DEVELOPER,0,&settime_cmd,"Usage: settime\nForce send a settime to network.");
28
052247fa
CP
29}
30
31void _fini()
32{
33 deleteschedule(settime_schedule, &settime_sendsettime, NULL);
a9f65ad0
P
34 deregistercontrolcmd("settime",&settime_cmd);
35}
36
37int settime_cmd(void *sender, int cargc, char **cargv) {
38 controlreply(sender,"Sending Settime...");
39 settime_sendsettime();
40 controlreply(sender,"Done");
41 return CMD_OK;
052247fa 42}