+2008-03-20 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * include/client.h: IsLocOp() now checks to see if its MyUser() as
+ well; IsAnOper() uses IsOper() and IsLocOp() instead of directly
+ testing the flags
+
2008-03-15 Michael Poole <mdpoole@troilus.org>
* ircd/s_bsd.c (init_connection_limits): Remove errant apostrophe.
#define HasFlag(cli, flag) FlagHas(&cli_flags(cli), flag)
/** Return non-zero if the client is an IRC operator (global or local). */
-#define IsAnOper(x) (HasFlag(x, FLAG_OPER) || HasFlag(x, FLAG_LOCOP))
+#define IsAnOper(x) (IsOper(x) || IsLocOp(x))
/** Return non-zero if the client's connection is blocked. */
#define IsBlocked(x) HasFlag(x, FLAG_BLOCKED)
/** Return non-zero if the client's connection is still being burst. */
#define IsInvisible(x) HasFlag(x, FLAG_INVISIBLE)
/** Return non-zero if the client caused a net.burst. */
#define IsJunction(x) HasFlag(x, FLAG_JUNCTION)
-/** Return non-zero if the client has set mode +O (local operator). */
-#define IsLocOp(x) HasFlag(x, FLAG_LOCOP)
+/** Return non-zero if the client has set mode +O (local operator) locally. */
+#define IsLocOp(x) (MyUser(x) && HasFlag(x, FLAG_LOCOP))
/** Return non-zero if the client has set mode +o (global operator). */
#define IsOper(x) HasFlag(x, FLAG_OPER)
/** Return non-zero if the client has an active UDP ping request. */