diff --git a/modules/um_callerid.c b/modules/um_callerid.c index 12b9033b..89743598 100644 --- a/modules/um_callerid.c +++ b/modules/um_callerid.c @@ -96,10 +96,12 @@ allow_message(struct Client *source_p, struct Client *target_p) if (!IsSetAnyCallerID(target_p)) return true; - if (IsSetRelaxedCallerID(target_p) && has_common_channel(source_p, target_p) && !IsSetStrictCallerID(target_p)) + if (!IsPerson(source_p)) return true; - if (IsServer(source_p)) + if (IsSetRelaxedCallerID(target_p) && + !IsSetStrictCallerID(target_p) && + has_common_channel(source_p, target_p)) return true; /* XXX: controversial? allow opers to send through +g */ diff --git a/modules/um_regonlymsg.c b/modules/um_regonlymsg.c index 3b31006a..79f8ab0f 100644 --- a/modules/um_regonlymsg.c +++ b/modules/um_regonlymsg.c @@ -78,7 +78,7 @@ allow_message(struct Client *source_p, struct Client *target_p) if (!IsSetRegOnlyMsg(target_p)) return true; - if (IsServer(source_p)) + if (!IsPerson(source_p)) return true; /* XXX: controversial? allow opers to send through +R */