164 |
|
sendto_match_servs(source_p, parv[1], CAP_UNDLN, "UNDLINE %s %s", |
165 |
|
parv[1], parv[2]); |
166 |
|
|
167 |
< |
if (!IsClient(source_p) || match(parv[1], me.name)) |
167 |
> |
if (match(parv[1], me.name)) |
168 |
|
return 0; |
169 |
|
|
170 |
|
if (HasFlag(source_p, FLAGS_SERVICE) || |
174 |
|
{ |
175 |
|
if (remove_dline_match(addr)) |
176 |
|
{ |
177 |
< |
sendto_one_notice(source_p, &me, ":D-Line for [%s] is removed", addr); |
177 |
> |
if (IsClient(source_p)) |
178 |
> |
sendto_one_notice(source_p, &me, ":D-Line for [%s] is removed", addr); |
179 |
|
sendto_realops_flags(UMODE_ALL, L_ALL, SEND_NOTICE, |
180 |
|
"%s has removed the D-Line for: [%s]", |
181 |
|
get_oper_name(source_p), addr); |
182 |
|
ilog(LOG_TYPE_DLINE, "%s removed D-Line for [%s]", |
183 |
|
get_oper_name(source_p), addr); |
184 |
|
} |
185 |
< |
else |
185 |
> |
else if (IsClient(source_p)) |
186 |
|
sendto_one_notice(source_p, &me, ":No D-Line for [%s] found", addr); |
187 |
|
} |
188 |
|
|