]> jfr.im git - irc/evilnet/x3.git/blobdiff - src/nickserv.h
added levels command
[irc/evilnet/x3.git] / src / nickserv.h
index 69715321c988bc4fa7accdbb3797c600cbcc511c..73e2e929cf2aa6e4c2c8f8f6d17e078f6148e50b 100644 (file)
@@ -39,6 +39,7 @@ struct svccmd;
 #define HI_FLAG_NETWORK_HELPER 0x00000100
 #define HI_FLAG_BOT            0x00000200
 #define HI_FLAG_AUTOHIDE       0x00000400
+#define HI_FLAG_ADVANCED       0x00000800
 /* Flag characters for the above.  First char is LSB, etc. */
 #define HANDLE_FLAGS "SphgscfnHbx"
 
@@ -100,9 +101,6 @@ struct handle_info {
     char *infoline;
     char *handle;
     char *fakehost;
-#ifdef WITH_PROTOCOL_BAHAMUT
-    unsigned long id;
-#endif
     time_t registered;
     time_t lastseen;
     unsigned short flags;
@@ -134,13 +132,14 @@ void init_nickserv(const char *nick);
 struct handle_info *get_handle_info(const char *handle);
 struct handle_info *smart_get_handle_info(struct userNode *service, struct userNode *user, const char *name);
 int oper_try_set_access(struct userNode *user, struct userNode *bot, struct handle_info *target, unsigned int new_level);
-int oper_outranks(struct userNode *user, struct handle_info *hi);
+int oper_outranks(struct svccmd *cmd, struct userNode *user, struct handle_info *hi);
 struct nick_info *get_nick_info(const char *nick);
 struct modeNode *find_handle_in_channel(struct chanNode *channel, struct handle_info *handle, struct userNode *except);
 int nickserv_modify_handle_flags(struct userNode *user, struct userNode *bot, const char *str, unsigned long *add, unsigned long *remove);
 int oper_has_access(struct userNode *user, struct userNode *bot, unsigned int min_level, unsigned int quiet);
 void nickserv_show_oper_accounts(struct userNode *user, struct svccmd *cmd);
 
+struct handle_info *get_victim_oper(struct svccmd *cmd, struct userNode *user, const char *target);
 struct handle_info *loc_auth(char *handle, char *password);
 
 typedef void (*user_mode_func_t)(struct userNode *user, const char *mode_change);