251 |
|
{ |
252 |
|
conf = ptr->data; |
253 |
|
|
254 |
< |
sendto_one(source_p, RPL_STATSXLINE, |
254 |
> |
sendto_one(source_p, form_str(RPL_STATSXLINE), |
255 |
|
me.name, source_p->name, |
256 |
|
conf->until ? "x": "X", conf->count, |
257 |
|
conf->name, conf->reason); |
264 |
|
{ |
265 |
|
conf = ptr->data; |
266 |
|
|
267 |
< |
sendto_one(source_p, RPL_STATSXLINE, |
267 |
> |
sendto_one(source_p, form_str(RPL_STATSXLINE), |
268 |
|
me.name, source_p->name, |
269 |
|
"XR", conf->count, |
270 |
|
conf->name, conf->reason); |
276 |
|
{ |
277 |
|
conf = ptr->data; |
278 |
|
|
279 |
< |
sendto_one(source_p, RPL_STATSKLINE, me.name, |
279 |
> |
sendto_one(source_p, form_str(RPL_STATSKLINE), me.name, |
280 |
|
source_p->name, "KR", conf->host, conf->user, |
281 |
|
conf->reason); |
282 |
|
} |
298 |
|
else |
299 |
|
*p++ = ToLower(shared->letter); |
300 |
|
|
301 |
< |
sendto_one(source_p, RPL_STATSULINE, |
301 |
> |
sendto_one(source_p, form_str(RPL_STATSULINE), |
302 |
|
me.name, source_p->name, conf->name, |
303 |
|
conf->user?conf->user: "*", |
304 |
|
conf->host?conf->host: "*", buf); |
318 |
|
else |
319 |
|
*p++ = ToLower(shared->letter); |
320 |
|
|
321 |
< |
sendto_one(source_p, RPL_STATSULINE, |
321 |
> |
sendto_one(source_p, form_str(RPL_STATSULINE), |
322 |
|
me.name, source_p->name, conf->name, |
323 |
|
"*", "*", buf); |
324 |
|
} |
332 |
|
|
333 |
|
/* Don't allow non opers to see oper privs */ |
334 |
|
if (HasUMode(source_p, UMODE_OPER)) |
335 |
< |
sendto_one(source_p, RPL_STATSOLINE, |
335 |
> |
sendto_one(source_p, form_str(RPL_STATSOLINE), |
336 |
|
me.name, source_p->name, 'O', conf->user, conf->host, |
337 |
|
conf->name, oper_privs_as_string(conf->port), |
338 |
|
conf->class ? conf->class->name : "<default>"); |
339 |
|
else |
340 |
< |
sendto_one(source_p, RPL_STATSOLINE, |
340 |
> |
sendto_one(source_p, form_str(RPL_STATSOLINE), |
341 |
|
me.name, source_p->name, 'O', conf->user, conf->host, |
342 |
|
conf->name, "0", |
343 |
|
conf->class ? conf->class->name : "<default>"); |
348 |
|
DLINK_FOREACH(ptr, class_get_list()->head) |
349 |
|
{ |
350 |
|
class = ptr->data; |
351 |
< |
sendto_one(source_p, RPL_STATSYLINE, |
351 |
> |
sendto_one(source_p, form_str(RPL_STATSYLINE), |
352 |
|
me.name, source_p->name, 'Y', |
353 |
|
class->name, class->ping_freq, |
354 |
|
class->con_freq, |
365 |
|
DLINK_FOREACH(ptr, service_items.head) |
366 |
|
{ |
367 |
|
conf = ptr->data; |
368 |
< |
sendto_one(source_p, RPL_STATSSERVICE, |
368 |
> |
sendto_one(source_p, form_str(RPL_STATSSERVICE), |
369 |
|
me.name, source_p->name, 'S', "*", conf->name, 0, 0); |
370 |
|
} |
371 |
|
break; |
391 |
|
* Allow admins to see actual ips unless hide_server_ips is enabled |
392 |
|
*/ |
393 |
|
if (!ConfigServerHide.hide_server_ips && HasUMode(source_p, UMODE_ADMIN)) |
394 |
< |
sendto_one(source_p, RPL_STATSCLINE, |
394 |
> |
sendto_one(source_p, form_str(RPL_STATSCLINE), |
395 |
|
me.name, source_p->name, 'C', conf->host, |
396 |
|
buf, conf->name, conf->port, |
397 |
|
conf->class ? conf->class->name : "<default>"); |
398 |
|
else |
399 |
< |
sendto_one(source_p, RPL_STATSCLINE, |
399 |
> |
sendto_one(source_p, form_str(RPL_STATSCLINE), |
400 |
|
me.name, source_p->name, 'C', |
401 |
|
"*@127.0.0.1", buf, conf->name, conf->port, |
402 |
|
conf->class ? conf->class->name : "<default>"); |
409 |
|
conf = ptr->data; |
410 |
|
|
411 |
|
DLINK_FOREACH(dptr, conf->hub_list.head) |
412 |
< |
sendto_one(source_p, RPL_STATSHLINE, me.name, |
412 |
> |
sendto_one(source_p, form_str(RPL_STATSHLINE), me.name, |
413 |
|
source_p->name, 'H', dptr->data, conf->name, 0, "*"); |
414 |
|
} |
415 |
|
|
418 |
|
conf = ptr->data; |
419 |
|
|
420 |
|
DLINK_FOREACH(dptr, conf->leaf_list.head) |
421 |
< |
sendto_one(source_p, RPL_STATSLLINE, me.name, |
421 |
> |
sendto_one(source_p, form_str(RPL_STATSLLINE), me.name, |
422 |
|
source_p->name, 'L', dptr->data, conf->name, 0, "*"); |
423 |
|
} |
424 |
|
|
549 |
|
{ |
550 |
|
if (IsConfRedir(conf)) |
551 |
|
{ |
552 |
< |
sendto_one(client_p, RPL_REDIR, |
552 |
> |
sendto_one(client_p, form_str(RPL_REDIR), |
553 |
|
me.name, client_p->name, |
554 |
|
conf->name ? conf->name : "", |
555 |
|
conf->port); |
1356 |
|
ConfigServerHide.links_delay = 300; |
1357 |
|
ConfigServerHide.hidden = 0; |
1358 |
|
ConfigServerHide.hide_servers = 0; |
1359 |
+ |
ConfigServerHide.hide_services = 0; |
1360 |
|
ConfigServerHide.hidden_name = xstrdup(NETWORK_NAME_DEFAULT); |
1361 |
|
ConfigServerHide.hide_server_ips = 0; |
1362 |
|
|
2147 |
|
|
2148 |
|
if (parc == 0) |
2149 |
|
{ |
2150 |
< |
sendto_one(source_p, ERR_NEEDMOREPARAMS, |
2150 |
> |
sendto_one(source_p, form_str(ERR_NEEDMOREPARAMS), |
2151 |
|
me.name, source_p->name, cmd); |
2152 |
|
return -1; |
2153 |
|
} |
2182 |
|
|
2183 |
|
if (!HasOFlag(source_p, OPER_FLAG_REMOTEBAN)) |
2184 |
|
{ |
2185 |
< |
sendto_one(source_p, ERR_NOPRIVS, |
2185 |
> |
sendto_one(source_p, form_str(ERR_NOPRIVS), |
2186 |
|
me.name, source_p->name, "remoteban"); |
2187 |
|
return -1; |
2188 |
|
} |
2189 |
|
|
2190 |
|
if (parc == 0 || EmptyString(*parv)) |
2191 |
|
{ |
2192 |
< |
sendto_one(source_p, ERR_NEEDMOREPARAMS, |
2192 |
> |
sendto_one(source_p, form_str(ERR_NEEDMOREPARAMS), |
2193 |
|
me.name, source_p->name, cmd); |
2194 |
|
return -1; |
2195 |
|
} |