}
}
controlreply((nick *)sender,"Timestamp : %lu",target->timestamp);
- controlreply((nick *)sender,"IP address: %s",IPtostr(target->p_ipaddr));
+
+ /* HACK */
+ {
+ int ext = findnickext("signontracker");
+
+ if(ext >= 0) {
+ time_t signedon = (time_t)(target->exts[ext]);
+ if(signedon) {
+ controlreply((nick *)sender,"Signed on : %lu",signedon);
+ } else {
+ controlreply((nick *)sender,"Signed on : ???");
+ }
+ }
+ }
+ controlreply((nick *)sender,"IP address: %s",IPtostr(target->ipaddress));
controlreply((nick *)sender,"Realname : %s (%d user(s) have this realname)",target->realname->name->content,target->realname->usercount);
if (target->umodes) {
controlreply((nick *)sender,"Umode(s) : %s",printflags(target->umodes,umodeflags));
}
}
+ if (target->away) {
+ controlreply((nick *)sender, "Away : %s",target->away->content);
+ }
+
hooknick=(nick *)sender;
registerhook(HOOK_CONTROL_WHOISREPLY,&handlewhois);
triggerhook(HOOK_CONTROL_WHOISREQUEST,target);
if (cargc<1)
return CMD_USAGE;
- switch(rmmod(cargv[0])) {
+ switch(rmmod(cargv[0], 1)) {
case 1:
controlreply((nick *)sender,"Module %s is not loaded.",cargv[0]);
return CMD_ERROR;
a->schedule = NULL;
- rmmod(froo->content);
+ rmmod(froo->content, 1);
freesstring(froo);
}
free( ((cmdhelp *)ext)->helpstr);
free(ext);
}
+
+char *controlid(nick *np) {
+ static char buf[512];
+
+ snprintf(buf, sizeof(buf), "%s!%s@%s/%s", np->nick, np->ident, np->host->name->content, np->authname);
+
+ return buf;
+}
+