#define MATCH_SERVER 1 /**< flag for relay_masked_message (etc) to indicate the mask matches a server name */
#define MATCH_HOST 2 /**< flag for relay_masked_message (etc) to indicate the mask matches host name */
-#define COOKIE_VERIFIED 0xffffffff /**< value for cli_cookie() to show completion */
+/* used for parsing user modes */
+#define ALLOWMODES_ANY 0 /**< Allow any user mode */
+#define ALLOWMODES_DEFAULT 1 /**< Only allow the subset of modes that are legit defaults */
/** Formatter function for send_user_info().
* @param who Client being displayed.
*/
extern struct User* make_user(struct Client *cptr);
extern void free_user(struct User *user);
-extern int register_user(struct Client* cptr, struct Client* sptr,
- const char* nick, char* username);
+extern int register_user(struct Client* cptr, struct Client *sptr);
extern void user_count_memory(size_t* count_out, size_t* bytes_out);
extern int hide_hostmask(struct Client *cptr, unsigned int flags);
extern int set_user_mode(struct Client *cptr, struct Client *sptr,
- int parc, char *parv[]);
+ int parc, char *parv[], int allow_modes);
extern int is_silenced(struct Client *sptr, struct Client *acptr);
extern int hunt_server_cmd(struct Client *from, const char *cmd,
const char *tok, struct Client *one,