static void stats_messages(struct Client *);
static void stats_dnsbl(struct Client *);
static void stats_oper(struct Client *);
+static void stats_privset(struct Client *);
static void stats_operedup(struct Client *);
static void stats_ports(struct Client *);
static void stats_tresv(struct Client *);
{'M', stats_messages, 0, 0, },
{'n', stats_dnsbl, 0, 0, },
{'o', stats_oper, 0, 0, },
- {'O', stats_oper, 0, 0, },
+ {'O', stats_privset, 1, 0, },
{'p', stats_operedup, 0, 0, },
{'P', stats_ports, 0, 0, },
{'q', stats_tresv, 1, 0, },
}
}
+static void
+stats_privset(struct Client *source_p)
+{
+ privilegeset_report(source_p);
+}
/* stats_operedup()
*
#include <stdinc.h>
#include "s_conf.h"
#include "privilege.h"
+#include "numeric.h"
static rb_dlink_list privilegeset_list = {};
privilegeset_unref(set);
}
}
+
+void
+privilegeset_report(struct Client *source_p)
+{
+ rb_dlink_node *ptr;
+
+ RB_DLINK_FOREACH(ptr, privilegeset_list.head)
+ {
+ struct PrivilegeSet *set = ptr->data;
+
+ /* use RPL_STATSDEBUG for now -- jilles */
+ sendto_one_numeric(source_p, RPL_STATSDEBUG,
+ "O :%s %s",
+ set->name,
+ set->privs);
+ }
+}