- ListAccept(user);
- }
- else if (tok[0] == '-')
- {
- User* whotoremove = ServerInstance->FindNick(tok.substr(1));
- if (whotoremove)
- atleastonechange = RemoveAccept(user, whotoremove, false) || atleastonechange;
- }
- else
- {
- User* whotoadd = ServerInstance->FindNick(tok[0] == '+' ? tok.substr(1) : tok);
- if (whotoadd)
- atleastonechange = AddAccept(user, whotoadd, false) || atleastonechange;
- else
- user->WriteNumeric(401, "%s %s :No such nick/channel", user->nick, tok.c_str());
- }
+ if (tok == "*")
+ {
+ if (IS_LOCAL(user))
+ ListAccept(user);
+ return CMD_SUCCESS;
+ }
+ else if (tok[0] == '-')
+ {
+ User* whotoremove = ServerInstance->FindNick(tok.substr(1));
+ if (whotoremove)
+ return (RemoveAccept(user, whotoremove, false) ? CMD_SUCCESS : CMD_FAILURE);
+ else
+ return CMD_FAILURE;
+ }
+ else
+ {
+ User* whotoadd = ServerInstance->FindNick(tok[0] == '+' ? tok.substr(1) : tok);
+ if (whotoadd)
+ return (AddAccept(user, whotoadd, false) ? CMD_SUCCESS : CMD_FAILURE);
+ else
+ {
+ user->WriteNumeric(401, "%s %s :No such nick/channel", user->nick.c_str(), tok.c_str());
+ return CMD_FAILURE;