controlreply(hooknick,"%s",(char *)arg);
}
-static int controlwhois_plain(void *sender, int cargc, char **cargv) {
- nick *target;
+void whoisnick(nick *sender, nick *target) {
channel **channels;
char buf[BUFSIZE];
int i;
-
- if (cargc<1)
- return CMD_USAGE;
-
- if (cargv[0][0]=='#') {
- if (!(target=getnickbynumericstr(cargv[0]+1))) {
- controlreply(sender,"Sorry, couldn't find numeric %s",cargv[0]+1);
- return CMD_ERROR;
- }
- } else {
- if ((target=getnickbynick(cargv[0]))==NULL) {
- controlreply((nick *)sender,"Sorry, couldn't find that user");
- return CMD_ERROR;
- }
- }
-
+
controlreply((nick *)sender,"Nick : %s",target->nick);
controlreply((nick *)sender,"Numeric : %s",longtonumeric(target->numeric,5));
controlreply((nick *)sender,"User@Host : %s@%s (%d user(s) on this host)",target->ident,target->host->name->content,target->host->clonecount);
controlreply((nick *)sender,"Opered as : %s",target->opername->content);
if (IsAccount(target)) {
controlreply((nick *)sender,"Account : %s",target->authname);
- if (target->accountts)
+ if (target->accountts)
controlreply((nick *)sender,"AccountTS : %ld",target->accountts);
if (target->auth) {
controlreply((nick *)sender,"UserID : %ld",target->auth->userid);
- if (target->auth->flags)
+ if (target->auth->flags)
controlreply((nick *)sender,"AccFlags : %s",printflags(target->auth->flags,accountflags));
}
}
}
}
}
+}
+
+static int controlwhois_plain(void *sender, int cargc, char **cargv) {
+ nick *target;
+
+ if (cargc<1)
+ return CMD_USAGE;
+
+ if (cargv[0][0]=='#') {
+ if (!(target=getnickbynumericstr(cargv[0]+1))) {
+ controlreply(sender,"Sorry, couldn't find numeric %s",cargv[0]+1);
+ return CMD_ERROR;
+ }
+ } else {
+ if ((target=getnickbynick(cargv[0]))==NULL) {
+ controlreply((nick *)sender,"Sorry, couldn't find that user");
+ return CMD_ERROR;
+ }
+ }
+
+ whoisnick(sender, target);
return CMD_OK;
}
void controlhelp(nick *np, Command *cmd);
void controlnswall(int noticelevel, char *format, ...) __attribute__ ((format (printf, 2, 3)));
char *controlid(nick *);
+void whoisnick(nick *sender, nick *target);
/* NEVER USE THE FOLLOWING IN COMMANDS, you'll end up missing bits off and users'll end up being able to gline people */
#define __NO_ANYONE 0x000