- csdb_accounthistory_insert(sender, NULL, NULL, rup->email, getsstring(cargv[1], EMAILLEN));
+ reason = cargv[2];
+ if(!checkreason(sender, reason))
+ return CMD_ERROR;
+
+ if(UHasStaffPriv(rup)) {
+ cs_log(sender,"SETEMAIL FAILED username %s (reason: %s)",rup->username, reason);
+ chanservwallmessage("%s (%s) just FAILED using SETEMAIL on %s: %s (reason: %s)", sender->nick, vrup->username, rup->username, cargv[1], reason);
+ chanservsendmessage(sender, "Sorry, that user is privileged.");
+ return CMD_ERROR;
+ }
+
+ csdb_accounthistory_insert(sender, NULL, NULL, rup->email?rup->email->content:NULL, cargv[1]);