/[svn]/ircd-hybrid/contrib/spy_links_notice.c
ViewVC logotype

Contents of /ircd-hybrid/contrib/spy_links_notice.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1044 - (show annotations)
Tue Jan 26 12:58:17 2010 UTC (10 years, 6 months ago) by michael
File MIME type: text/x-chdr
File size: 1943 byte(s)
- contrib/spy_links_notice.c: do not show additional arguments supplied to the
  LINKS command in spy notices. new behaviour is to simply show the command sent
  by the client, which exactly behaves like all other contributed spy modules.
- remove clean_string()

1 /*
2 * ircd-hybrid: an advanced Internet Relay Chat Daemon(ircd).
3 * spy_links_notice.c: Sends a notice when someone uses LINKS.
4 *
5 * Copyright (C) 2002 by the past and present ircd coders, and others.
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
20 * USA
21 *
22 * $Id$
23 */
24
25 #include "stdinc.h"
26 #ifndef STATIC_MODULES
27 #include "list.h"
28 #include "modules.h"
29 #include "hook.h"
30 #include "client.h"
31 #include "ircd.h"
32 #include "send.h"
33
34 static struct Callback *links_cb = NULL;
35 static dlink_node *prev_hook;
36
37 static void *show_links(va_list);
38
39 void
40 _modinit(void)
41 {
42 if ((links_cb = find_callback("doing_links")))
43 prev_hook = install_hook(links_cb, show_links);
44 }
45
46 void
47 _moddeinit(void)
48 {
49 if (links_cb)
50 uninstall_hook(links_cb, show_links);
51 }
52
53 const char *_version = "$Revision$";
54
55 static void *
56 show_links(va_list args)
57 {
58 struct Client *source_p = va_arg(args, struct Client *);
59 int parc = va_arg(args, int);
60 char **parv = va_arg(args, char **);
61
62 if (IsClient(source_p))
63 sendto_realops_flags(UMODE_SPY, L_ALL,
64 "links requested by %s (%s@%s) [%s]",
65 source_p->name, source_p->username,
66 source_p->host, source_p->servptr->name);
67
68 return pass_callback(prev_hook, source_p, parc, parv);
69 }
70 #endif

Properties

Name Value
svn:eol-style native
svn:keywords Id Revision

svnadmin@ircd-hybrid.org
ViewVC Help
Powered by ViewVC 1.1.28