Skip to content
This repository was archived by the owner on Jun 6, 2021. It is now read-only.

Commit f9e66b9

Browse files
edk0Stephen Bennett
authored andcommitted
chantrace: really don't disclose oper status
1 parent 7ce8fea commit f9e66b9

File tree

1 file changed

+26
-26
lines changed

1 file changed

+26
-26
lines changed

modules/m_etrace.c

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ me_etrace(struct Client *client_p, struct Client *source_p, int parc, const char
133133
if((target_p = find_person(parv[1])) && MyClient(target_p))
134134
do_single_etrace(source_p, target_p);
135135

136-
sendto_one_numeric(source_p, RPL_ENDOFTRACE, form_str(RPL_ENDOFTRACE),
136+
sendto_one_numeric(source_p, RPL_ENDOFTRACE, form_str(RPL_ENDOFTRACE),
137137
target_p ? target_p->name : parv[1]);
138138

139139
return 0;
@@ -157,8 +157,8 @@ do_etrace(struct Client *source_p, int ipv4, int ipv6)
157157
#endif
158158

159159
sendto_one(source_p, form_str(RPL_ETRACE),
160-
me.name, source_p->name,
161-
SeesOper(source_p, target_p) ? "Oper" : "User",
160+
me.name, source_p->name,
161+
SeesOper(source_p, target_p) ? "Oper" : "User",
162162
get_client_class(target_p),
163163
target_p->name, target_p->username, target_p->host,
164164
show_ip(source_p, target_p) ? target_p->sockhost : "255.255.255.255",
@@ -196,17 +196,17 @@ do_single_etrace(struct Client *source_p, struct Client *target_p)
196196
*/
197197
if(!show_ip(source_p, target_p))
198198
sendto_one(source_p, form_str(RPL_ETRACEFULL),
199-
me.name, source_p->name,
199+
me.name, source_p->name,
200200
IsOper(target_p) ? "Oper" : "User",
201201
get_client_class(target_p),
202-
target_p->name, target_p->username, target_p->host,
202+
target_p->name, target_p->username, target_p->host,
203203
"255.255.255.255", "<hidden> <hidden>", target_p->info);
204204
else
205205
sendto_one(source_p, form_str(RPL_ETRACEFULL),
206-
me.name, source_p->name,
206+
me.name, source_p->name,
207207
IsOper(target_p) ? "Oper" : "User",
208208
get_client_class(target_p),
209-
target_p->name, target_p->username,
209+
target_p->name, target_p->username,
210210
target_p->host, target_p->sockhost,
211211
target_p->localClient->fullcaps, target_p->info);
212212
}
@@ -268,8 +268,8 @@ m_chantrace(struct Client *client_p, struct Client *source_p, int parc, const ch
268268
sockhost = target_p->sockhost;
269269

270270
sendto_one(source_p, form_str(RPL_ETRACE),
271-
me.name, source_p->name,
272-
IsOper(target_p) ? "Oper" : "User",
271+
me.name, source_p->name,
272+
SeesOper(source_p, target_p) ? "Oper" : "User",
273273
/* class field -- pretend its server.. */
274274
target_p->servptr->name,
275275
target_p->name, target_p->username, target_p->host,
@@ -287,14 +287,14 @@ match_masktrace(struct Client *source_p, rb_dlink_list *list,
287287
{
288288
struct Client *target_p;
289289
rb_dlink_node *ptr;
290-
const char *sockhost;
291-
290+
const char *sockhost;
291+
292292
RB_DLINK_FOREACH(ptr, list->head)
293293
{
294294
target_p = ptr->data;
295295
if(!IsPerson(target_p))
296296
continue;
297-
297+
298298
if(EmptyString(target_p->sockhost))
299299
sockhost = empty_sockhost;
300300
else if(!show_ip(source_p, target_p))
@@ -312,9 +312,9 @@ match_masktrace(struct Client *source_p, rb_dlink_list *list,
312312

313313
if(gecos != NULL && !match_esc(gecos, target_p->info))
314314
continue;
315-
315+
316316
sendto_one(source_p, form_str(RPL_ETRACE),
317-
me.name, source_p->name,
317+
me.name, source_p->name,
318318
IsOper(target_p) ? "Oper" : "User",
319319
/* class field -- pretend its server.. */
320320
target_p->servptr->name,
@@ -325,31 +325,31 @@ match_masktrace(struct Client *source_p, rb_dlink_list *list,
325325
}
326326

327327
static int
328-
mo_masktrace(struct Client *client_p, struct Client *source_p, int parc,
328+
mo_masktrace(struct Client *client_p, struct Client *source_p, int parc,
329329
const char *parv[])
330330
{
331331
char *name, *username, *hostname, *gecos;
332332
const char *mask;
333333
int operspy = 0;
334334

335-
mask = parv[1];
336-
name = LOCAL_COPY(parv[1]);
335+
mask = parv[1];
336+
name = LOCAL_COPY(parv[1]);
337337
collapse(name);
338338

339339
if(IsOperAuspex(source_p) && parv[1][0] == '!')
340340
{
341341
name++;
342342
mask++;
343343
operspy = 1;
344-
}
345-
344+
}
345+
346346
if(parc > 2 && !EmptyString(parv[2]))
347347
{
348348
gecos = LOCAL_COPY(parv[2]);
349349
collapse_esc(gecos);
350350
} else
351351
gecos = NULL;
352-
352+
353353

354354
if((hostname = strchr(name, '@')) == NULL)
355355
{
@@ -358,7 +358,7 @@ mo_masktrace(struct Client *client_p, struct Client *source_p, int parc,
358358
}
359359

360360
*hostname++ = '\0';
361-
361+
362362
if((username = strchr(name, '!')) == NULL)
363363
{
364364
username = name;
@@ -371,7 +371,7 @@ mo_masktrace(struct Client *client_p, struct Client *source_p, int parc,
371371
sendto_one_notice(source_p, ":Invalid parameters");
372372
return 0;
373373
}
374-
374+
375375
if(operspy) {
376376
if (!ConfigFileEntry.operspy_dont_care_user_info)
377377
{
@@ -380,14 +380,14 @@ mo_masktrace(struct Client *client_p, struct Client *source_p, int parc,
380380
if(!EmptyString(gecos)) {
381381
rb_strlcat(buf, " ", sizeof(buf));
382382
rb_strlcat(buf, gecos, sizeof(buf));
383-
}
383+
}
384384

385-
report_operspy(source_p, "MASKTRACE", buf);
385+
report_operspy(source_p, "MASKTRACE", buf);
386386
}
387-
match_masktrace(source_p, &global_client_list, username, hostname, name, gecos);
387+
match_masktrace(source_p, &global_client_list, username, hostname, name, gecos);
388388
} else
389389
match_masktrace(source_p, &lclient_list, username, hostname, name, gecos);
390390

391-
sendto_one_numeric(source_p, RPL_ENDOFTRACE, form_str(RPL_ENDOFTRACE), me.name);
391+
sendto_one_numeric(source_p, RPL_ENDOFTRACE, form_str(RPL_ENDOFTRACE), me.name);
392392
return 0;
393393
}

0 commit comments

Comments
 (0)