updated
This commit is contained in:
148
src/doc/Authors
148
src/doc/Authors
@@ -1,148 +0,0 @@
|
||||
/************************************************************************
|
||||
* IRC - Internet Relay Chat, doc/AUTHORS
|
||||
* Copyright (C) 1990
|
||||
*
|
||||
* AUTHORS FILE:
|
||||
* This file attempts to remember all contributors to the IRC
|
||||
* developement. Names can be only added this file, no name
|
||||
* should never be removed. This file must be included into all
|
||||
* distributions of IRC and derived works.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 1, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
|
||||
IRC was conceived of and written by Jarkko Oikarinen <jto@tolsun.oulu.fi>.
|
||||
IRC was originally written in University of Oulu, Computing Center.
|
||||
Jan 1991 - IRC 2.6 jto@tolsun.oulu.fi
|
||||
- Multiple Channels and protocol changes
|
||||
|
||||
Contributions were made by a cast of dozens, including the following:
|
||||
|
||||
Markku Jarvinen <mta@tut.fi>: Emacs-like editing facility for the client
|
||||
|
||||
Kimmo Suominen <kim@kannel.lut.fi>: HP-UX port
|
||||
|
||||
Jeff Trim <jtrim@orion.cair.du.edu>: enhancements and advice
|
||||
|
||||
Vijay Subramaniam <vijay@lll-winken.llnl.gov>: advice and ruthless publicity
|
||||
|
||||
Karl Kleinpaste <karl@cis.ohio-state.edu>: user's manual
|
||||
|
||||
Greg Lindahl <gl8f@virginia.edu>: AUTOMATON code, the Wumpus GM automaton,
|
||||
myriad bug fixes
|
||||
|
||||
Bill Wisner <wisner@hayes.fai.alaska.edu>: numerous bug fixes and code
|
||||
enhancements
|
||||
|
||||
Tom Davis <conslt16@zeus.unl.edu> and Tim Russell <russell@zeus.unl.edu>:
|
||||
VMS modifications
|
||||
|
||||
Markku Savela <msa@tel4.tel.vtt.fi>: advice, support, and being the
|
||||
incentive to do some of our *own* coding. :)
|
||||
|
||||
Tom Hopkins <hoppie@buengf.bu.edu>: bug fixes, quarantine lines,
|
||||
consolidation of various patches.
|
||||
|
||||
Christopher Davis <ckd@cs.bu.edu>: EFnet/Anet gateway coding,
|
||||
many automata ;), documentation fixing.
|
||||
|
||||
Helen Rose <hrose@cs.bu.edu>: documentation updating, and fixing.
|
||||
|
||||
Tom Hinds <rocker@bucsf.bu.edu>: emacs client updating.
|
||||
|
||||
Tim Miller <cerebus@bu-pub.bu.edu>: various server and client-breaking
|
||||
features.
|
||||
|
||||
Darren Reed <avalon@coombs.anu.edu.au>: various bug fixes and enhancements.
|
||||
Introduced nickname and channelname hash tables into the server.
|
||||
|
||||
The version 2.2 release was coordinated by Mike Bolotski
|
||||
<mikeb@salmon.ee.ubc.ca>.
|
||||
|
||||
The version 2.4 release was coordinated by Markku Savela and
|
||||
Chelsea Ashley Dyerman
|
||||
|
||||
The version 2.5.2 release was coordinated by Christopher Davis, Helen Rose,
|
||||
and Tom Hopkins.
|
||||
|
||||
The versions 2.6.2, 2.7 and 2.8 releases were coordinated by Darren Reed.
|
||||
|
||||
Contributions for the 2.8 release from the following people:
|
||||
Matthew Green <phone@coombs.anu.edu.au>
|
||||
Chuck Kane <ckane@ece.uiuc.edu>
|
||||
Matt Lyle <matt@oc.com>
|
||||
Vesa Ruokonen <ruokonen@lut.fi>
|
||||
|
||||
Markku Savela <Markku.Savela@vtt.fi> / April 1990
|
||||
Fixed various bugs in 2.2PL1 release server (2.2msa.4) and changed
|
||||
sockets to use non-blocking mode (2.2msa.9). [I have absolutely
|
||||
nothing to do with clients :-]
|
||||
|
||||
Chelsea Ashley Dyerman <chelsea@earth.cchem.berkeley.edu> / April 1990
|
||||
Rewrote the Makefiles, restructuring of source tree. Added libIrcd.a to
|
||||
the Makefile macros, numerous reformatting of server text messages, and
|
||||
added mkversion.sh to keep track of compilation statistics. Numerous
|
||||
bug fixes and enhancements, and co-coordinator of the 2.4 release.
|
||||
|
||||
Jarle Lyngaas (nmijl@alf.uib.no) added Note functions to ircd.
|
||||
|
||||
Armin Gruner <gruner@informatik.tu-muenchen.de> / May, June 1990:
|
||||
* Patched KILL-line feature for ircd.conf, works now.
|
||||
Enhancement: Time intervals can be specified in passwd-field.
|
||||
Result: KILL-Line is only active during these intervals
|
||||
* Patched PRIVMSG handling, now OPER can specify masks for sending
|
||||
private messages, advantage: msg to all at a specified server or host.
|
||||
* Little tests on irc 2.5 alpha, fixed some little typos in client code.
|
||||
Change: common/debug.c has been moved to ircd/s_debug.c, and a
|
||||
irc/c_debug.c has been created, for the benefit that wrong server msg
|
||||
are displayed if client does not recognize them. (strange, if a server
|
||||
sends an 'unknown command', isn't it?)
|
||||
|
||||
Tom Hopkins <hoppie@buengf.bu.edu> / September, October 1990:
|
||||
* Patched msa's K lines for servers (Q lines).
|
||||
* Consolidated several patches, including Stealth's logging patch.
|
||||
* Fixed several minor bugs.
|
||||
* Has done lots of other stuff that I can't seem to remember, but he
|
||||
always works on code, so he has to have done alot more than three
|
||||
lines worth. :)
|
||||
|
||||
UnrealIRCd Coders
|
||||
Carsten Munk <stskeeps@unrealircd.com> / May 1999 - December 2008
|
||||
Dominick Meglio <codemastr@unrealircd.com> / June 1999 - August 2005
|
||||
David Flynn / March 2000 - June 2000
|
||||
McSkaf / June 2001 - September 2001
|
||||
Finny Merrill <griever@unrealircd.com> / November 2001 - December 2002
|
||||
Bram Matthys <syzop@unrealircd.com> / January 2002 - date
|
||||
This list is incomplete, type /INFO on IRC to find the updated list.
|
||||
|
||||
Thanks go to those persons not mentioned here who have added their advice,
|
||||
opinions, and code to IRC.
|
||||
|
||||
Various modifications, bugreports, cleanups and testing by:
|
||||
|
||||
Hugo Calendar <hugo@ucscb.ucsc.edu>
|
||||
Bo Adler <adler@csvax.cs.caltech.edu>
|
||||
Michael Sandrof <ms5n+@andrew.cmu.edu>
|
||||
Jon Solomon <jsol@cs.bu.edu>
|
||||
Jan Peterson <jlp@hamblin.math.byu.edu>
|
||||
Nathan Glasser <nathan@brokaw.lcs.mit.edu>
|
||||
Helen Rose <hrose@eff.org>
|
||||
Mike Pelletier <stealth@caen.engin.umich.edu>
|
||||
Basalat Ali Raja <gwydion@tavi.rice.edu>
|
||||
Eric P. Scott <eps@toaster.sfsu.edu>
|
||||
Dan Goodwin <fornax@wpi.wpi.edu>
|
||||
Noah Friedman <friedman@ai.mit.edu>
|
||||
|
||||
[ $Id$ ]
|
||||
81
src/doc/KEYS
81
src/doc/KEYS
@@ -1,81 +0,0 @@
|
||||
pub rsa4096 2015-07-02 [SC] [expires: 2025-06-29]
|
||||
1D2D2B03A0B68ED11D68A24BA7A21B0A108FF4A9
|
||||
uid UnrealIRCd releases (for verification of software downloads only!) <releases@unrealircd.org>
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
mQINBFWVOFYBEACsWFWM25VDaGXq22GSTJo1O53bgAMCZsqj9VKDriUmj7uvozlp
|
||||
BGHgYFVM4ZT1FUAsWedeIP2aLLkYGmH4odVaAk7IeUa7HfpE45/F6+End6bCpYGe
|
||||
1UdVQM/Bu3VHoUtVvtIFg788JwbplroapA/D0pi/EAN8WYnN9etgLM2lvzwbjBz9
|
||||
xTOefwvgRsKbCH63VW7NCyquEcdEJxnMHB7JZUEuzrOUvhAiIkwKw8wbcn36zX0i
|
||||
wcAFtVO5uVTA/Tdu6nWsZvqVc6R1E3usJzWSwbmoUtPUM5Mk9I9gL73EsqEbgs5N
|
||||
trT00r75RcfiThNEP8NtDtB8AFum6OCSg/+8bdJmKcWVKpuB+lUvP0d4UAqm5vmH
|
||||
/KQh/nyHXKvAvhWqHizozP1WGevpxLFHMjm/+1T167Iil/3UcUyn9qd0CuYSszJw
|
||||
y5Vp6iJHkVo8qxI89rkzSDRi+ppLCBTwuN01ducftDxvIQMVrphdKZLPGzQrltkh
|
||||
lIN4XNS6cOOsrbbk5+Kc2xih6qt+DyiRHaNFQnoMdRVeIrmf4u4ClMcHlzELV8gF
|
||||
D+s0BbVqhVwAhbKMfKaVmvVlj8bSET0z2s0vhZODwlgANpDBLNsIU6leiYRAzub5
|
||||
WY5Hz1m7P8ZXSMPh4/vGh1kg3E9IRKLZDZ65gEYr8nNCzbAYmDQ3IkplIwARAQAB
|
||||
tFxVbnJlYWxJUkNkIHJlbGVhc2VzIChmb3IgdmVyaWZpY2F0aW9uIG9mIHNvZnR3
|
||||
YXJlIGRvd25sb2FkcyBvbmx5ISkgPHJlbGVhc2VzQHVucmVhbGlyY2Qub3JnPokC
|
||||
PgQTAQIAKAUCVZU4VgIbAwUJEswDAAYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AA
|
||||
CgkQp6IbChCP9KlFzQ/+ObuBgCtXvLcbpq7C2usHxgtEB1rV9khLGugJXevjMaf3
|
||||
+vo4d5cd5go665po8oqDnSUfq+8LPDj/nnroKQcS5Kb4KdHz6rn+53rHWtw6PPGN
|
||||
KswFS05Vy2AkYg4nVXvrGm0oV173qOms2REoStP0mEm7F7ZTJ6k1qgmZ8tcFgfMm
|
||||
fqEl94O5zDWycaJx7K0h3n+xUyhh+lT9Zl3duzVzCc+YI+dD6UOIXBF9TF9fIb8m
|
||||
300MBLwTTHq64nGsZbhfzCHNHAO6hTy5XmE+d1g4R87rKim6lP0V1LTbvhOhYhZg
|
||||
0JrVOr9dhHY4tw1xglz++nMM24t2O9zoRoZjDMHBzzBm3gJq3G160kxVZKKcVaQd
|
||||
nfYvPOBNtyEyaIIJD8vs2Z9jiJLjpoz0LhnE2TmE4M6YqBsSWfFuPrHE+PJQyEQg
|
||||
2zEoTRCSFSLaq+5kl3vKM/cblwkQeKkNe8u6bDNk7bEPUCQstyOqcvoTWE2gs3f2
|
||||
n7wI7BzW3uX5YUp1CcdPig1XxveI4XaKKrhRacvGvvNHdXw1scj1K0SCXvy4EPpf
|
||||
dLthTC6BHwO2P56wlxK0MRL/GD72ttBCcsyLWYdL9OIT6Lx4bZVhvEjKDapWAL04
|
||||
X1mXMHUK1iO4lunbqP3lu6F8qsuI/B2sIiJK7aSjv4bjVRw/jcESrhmCvnN3B3mI
|
||||
RgQQEQIABgUCVZU9NQAKCRBpsoj7n/A5N4E2AJ4i5z98+mA8Ug9utdslGvHFRq+s
|
||||
PgCeILJ7/dJFYZFz1YpaNTbRCHIesaWIXgQQEQgABgUCVZU9ZwAKCRBuZ21Ff+GZ
|
||||
pueXAP9bJ1hPWa3ITIoapW9eTT1eNv+17KqcclwZzxCopbUkFAD+NptTuXpeivM+
|
||||
USWsQJFpFlLdDckcv8QzLQwgzZ8TXtKJAhwEEAEIAAYFAlg796cACgkQ3pO4tH50
|
||||
XrMyWQ/+NJyhO5yibAhN4RgCJ+qFdp9Llm+SQGFjVtw8L7nv3M0Us8xspmVlX7TZ
|
||||
/OK6AhUyaqAmg3ZXruaetrBVIAlP675cXJ1NIPfyT+PvMUbupvqBhyPZKqdnh2WT
|
||||
ZMYdQrvw503h+BlyjGeAWd34tLhtiM1A69tntFu2A7bKhkoxE7KoyCjKmLgUb30M
|
||||
r5guxb6DCUXK8m5ooHl58kLtJrTpW9l3YYXpKe/POYPIK6ULZN7TChtFOTJ+ebx1
|
||||
2LaQGGdRKaCSM1OX7mfvBG8GtljQcGoP+f5TmvRbCGGfiR9r6MdgG6LYTuYf7pR7
|
||||
NBwxveqwJV4iOmd9b+doIra5tRX0TqEKdEqpVHhm4UTZlHVyIpg97Lc/7WiWS1Z5
|
||||
UIhT4YxlztPUvWmCXlleNEqBYK86OsVFqryHDVKtPbH65k/xKfu8w/hHkv7TQ23r
|
||||
eoMs1uBlaUWe3orgUOr0tnFLXz809SAwC9sxQq9TWTm50NqiaQvBVInSUssFYPkG
|
||||
qBljIXtdUzFGBn3sTpFRY6p2yzIo54EQmQAvMQPEJkQ8JQJ47au82DxFUBZYKci5
|
||||
lsJfRueGnn5A36eUZdkhZ6Dm61M3YldYcpRa4Xfi0AWbg5yW/uUipc36Ey+vwWyl
|
||||
x+1IZgjnIIMsyDLuq2tm5p1tiJK2N9L0rxQb/DIK7j8+ZvmlFZQ=
|
||||
=foLZ
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
pub rsa4096 2024-11-18 [SC] [expires: 2030-11-17]
|
||||
36E6F65706E36B0937280299101001DAF48BB56D
|
||||
uid UnrealIRCd releases and patches (for verification of software downloads only!) <releases@unrealircd.org>
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
mQINBGc7EBEBEADDZzlLVArYr2kE9NlhnuUF31rW3wvZ4avjhzhmO6bL0I0RESZC
|
||||
PrtiFVJyjcSScObOVONFSC2YQiLVpezkKX4AYoqfnsuWfHg3xlGqCY8Ip+V5XJ6v
|
||||
8G5haFFEgTL10UtqzPNymygWmoEr11u3BUKIzAJAuec7dl7PyfGU2JDkl+NtWm31
|
||||
WyKCMuK3TKaD8UjGd5PPQR4jA6k1Hn8kvUl53EmkJjRyJc1XVz4AjZFywyUENGJv
|
||||
HVdVFOPDaKzIx6N6+2dm0ZxXIPOISycwEQuk1++E7NyOS5u+lzlFN7RAXR/5Ogv5
|
||||
pZzdcsPXp0RHHVeM8qgV7kvRTG9xhfFcXjs9Hanp2siy80HWs56o7nNN2eQNA31W
|
||||
5lfGIWaA3pY4rpBoiQc3IMGD+vkACfRFH468+cx50zP9gbqSaxUaj6Z0e/jBNf26
|
||||
7MIEKUjVCunQjO0Lob346FTAvdnXEXCwwJdQFF2tkxnpUBs6sSXjJwVgsfrkizXS
|
||||
X0qsX7DTn9QpF9Z+0czqdoyJuLLPOFx+6Xj7l2riBYyzMAa8c6odLXTReMaVxFN+
|
||||
clIVMCrfYXuURb4QGKB0ewW/wZd1fgsPAV4D1qypFAnM0D+qsfpKFI1QQY7WEUcC
|
||||
YVMkzjZHPWaBdRQf7KLXasx7/ouM5nIlZdRrPDrCXXiqAlA20aWqvZ8N1wARAQAB
|
||||
tGhVbnJlYWxJUkNkIHJlbGVhc2VzIGFuZCBwYXRjaGVzIChmb3IgdmVyaWZpY2F0
|
||||
aW9uIG9mIHNvZnR3YXJlIGRvd25sb2FkcyBvbmx5ISkgPHJlbGVhc2VzQHVucmVh
|
||||
bGlyY2Qub3JnPokCVAQTAQoAPhYhBDbm9lcG42sJNygCmRAQAdr0i7VtBQJnOxAR
|
||||
AhsDBQkLRzUABQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEBAQAdr0i7Vt1hoQ
|
||||
ALCuqTuVqYOiwBsccS8Qt52l+8pOr0hcF49GM+eBM7Evq2tlwL4FOEyzbsO94yRH
|
||||
qTxGg/0puYkF74+vZnS2Vlo/F90FTmypy4oVQr+K/dd11ZEVLEpNcdaXuj68vP4c
|
||||
UCsUPmQyPGERCIlKMe1U+n6yQWgx7xLbuqlOuxcwKDddYa6hhToogUxBbdOZZrYl
|
||||
I4LN38ztSr0xjp0b67gdrMgOByS/r1AOX61L4DL2/glGOCt4GpKWPj8bOrK+Y/eK
|
||||
HRK72TezQ+XPFAqsXNmeaLBVVFM8L3fPBBEmVV5tULZ7+/3Qlyub78/OK3Y1/fV7
|
||||
qFY1S0WnTWY5mBNtUSgF9bGK/UyySNtPFtihmyg0xGQ/cNwiH7QXp38LboEBDoTF
|
||||
lRT42nX1Nw9KpIWqGPTowB4qhN7znAseYkuH1XtDJHm1OKQjUB8lyBupq3cXYUju
|
||||
JJH4zfdpWeLWQktb3D8uQsvEBcIyaVRs8wlPdAQBZBL0cLvE0ACpcsbsua26ihzB
|
||||
ZCGzYmdZvBPpRo2e5xzC9ur3VOQzHqsebFrRKzDD6PgYCgnqJ+03vMToGua9MVX+
|
||||
FFd2BSLO3UGUPdZESNzik2cILyZPRucwGWnL4wh+v+eOP9ZS4QpACye38VkGWUVR
|
||||
YqzzK4QaI3m1xrRbcuCXdiMymWnWV3yW6AU+eGB8aEDW
|
||||
=p0TV
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,123 +0,0 @@
|
||||
Rules about patches & modifications to UnrealIRCd
|
||||
|
||||
1. When making a change, always add a small description in the commit log.
|
||||
Don't forget to mention the bug# and credit the reporter (if any).
|
||||
|
||||
2. If new files are made, they must contain proper copyright headers.
|
||||
|
||||
3. Each bug or feature should have a bug# so people can have a discussion
|
||||
about it. This has a few implications (read!!):
|
||||
* People must report bugs/feature requests to bugs.unrealircd.org and
|
||||
not on IRC, e-mail, etc.
|
||||
* That means other people can see the bug# and comment on it. This means
|
||||
discussion is easy to read back for each issue and not spread between
|
||||
several IRC logs.
|
||||
Furthermore, by using the bugtracker instead of directly committing,
|
||||
people could point out that there might be a better way to do things
|
||||
than you originally thought, or it might be that other devs don't like
|
||||
it at all.
|
||||
* If a head coder has 'acknowledged' or 'confirmed' the issue or stated
|
||||
in a comment that it's OK to implement, then any dev may take the issue.
|
||||
The dev should change the status to 'assigned' and work on it, then
|
||||
commit and change it to 'resolved', set 'fixed in version' to the
|
||||
correct release, and add a comment pasting the relevant commit log.
|
||||
Of course other guidelines, in particular rule #7, still applies.
|
||||
|
||||
4. If you don't have direct write access to the repository then you can
|
||||
submit changes as as PR on github. It is very much preferred to also
|
||||
have a bugs.unrealircd.org entry for it as well (see previous item).
|
||||
|
||||
5. For the stable branch, in general, only commit changes that have an
|
||||
associated bugid# and/or were discussed.
|
||||
For branches currently in development (alpha/beta) there's more freedom
|
||||
and if you think the change will be small and is fine without a
|
||||
discussion then feel free to commit.
|
||||
|
||||
6. Regarding reidenting, restructuring or other major code cleanups: please
|
||||
discuss before doing so. The other devs might not agree with you on the
|
||||
particular cleanup you have in mind which would result in another
|
||||
clean-up-the-cleanup commit.
|
||||
You may, however reindent and clean up individual sections when you are
|
||||
working on fixing a particular bug# or implementing a new feature. In fact
|
||||
you're encouraged to do so if the code is confusing without it. However,
|
||||
obey the style of Unreal's code (mostly outlined in this document)
|
||||
and do not introduce yet another (new) style. Also, be careful with doing
|
||||
any cleanup: if you're unsure in any way about the use of something,
|
||||
or something that looks redundant on first sight, then look more
|
||||
carefully... it might indeed be useless and/or redundant, but it might
|
||||
also be a subtle thing that can create great bugs when 'cleaned up'.
|
||||
|
||||
7. During the Release Candidate stage (from RC1 until the final release)
|
||||
only the head coder may commit directly, all others should ask and
|
||||
present their patch before committing. Yes, even if you are changing
|
||||
only 1 line of code or text.
|
||||
|
||||
9. UnrealIRCd should compile on all supported operating systems and
|
||||
platforms, using GCC 3 or higher on *NIX, and Visual Studio 2008 or
|
||||
higher on Windows. This means you cannot blindly use all C99 extensions.
|
||||
|
||||
10. Coders must test their code before committing.
|
||||
|
||||
11. /*
|
||||
* These kind of comments
|
||||
*/
|
||||
|
||||
NOT
|
||||
|
||||
// These kind of comments
|
||||
|
||||
12. if (something == 1)
|
||||
{
|
||||
moo; /* comment */
|
||||
/* This does what what what */
|
||||
cow(go(moo));
|
||||
}
|
||||
|
||||
NOT
|
||||
|
||||
if (something == 1) {
|
||||
}
|
||||
|
||||
13. Do not touch version.c.SH or version.h, unless you are a head coder.
|
||||
If you need a credit in, contact us
|
||||
|
||||
14. Protocol changes must be discussed before making patches for it.
|
||||
|
||||
15. We do NOT rip people off. If we use other people's code, it MUST be
|
||||
properly credited.
|
||||
|
||||
16. We use tabsize 8 and we use tabs AND NOT SPACES.
|
||||
Some code is old and horrible and has a mix of tabs and spaces used for
|
||||
spacing, that's something we do not want to have ;)
|
||||
|
||||
17. Be careful about overflows. Do not do any unchecked string copies.
|
||||
Instead of strcpy, strcat and sprintf/ircsprintf, use the following
|
||||
functions: strlcpy, strlcat, snprintf/ircnsprintf.
|
||||
If you are copying/writing character-by-character or word-by-word in a
|
||||
loop, eg using *p++ = x; then be very sure about your size counting.
|
||||
Often it's better to avoid such code altogether, by simply using
|
||||
strlcat for everything.
|
||||
|
||||
18. Speed. When optimizing or writing code, keep in mind that readability and
|
||||
stability comes FIRST, and after that comes speed. So we'd rather prefer some
|
||||
readable code (even if difficult) over some odd highly optimized routine which
|
||||
nobody understands, is difficult to extend, and might have several bugs.
|
||||
As mentioned earlier: use ircsnprintf, not snprintf (this is because
|
||||
ircsnprintf is optimized for simple strings like the ones we use).
|
||||
ircsnprintf calls snprintf when it finds a (non-simple) format specifier it
|
||||
can't handle. Simple format specifiers do not have prefixes other than
|
||||
h and l.
|
||||
|
||||
19. Initialize your structs and use the proper memory calls.
|
||||
In UnrealIRCd we use safe_alloc, safe_free, safe_strdup and safe_strldup.
|
||||
Do NOT use malloc, calloc or strdup.
|
||||
|
||||
20. Comment your code! This should speak for itself...
|
||||
Put comments wherever you think they are needed, to aid any further coders
|
||||
with reading your code.. and, in fact, it will aid yourself as well if you
|
||||
would look back at your code 2 years later.
|
||||
If there's some obscure pitfall, DO mention it! Don't just "hope" a next
|
||||
author will see it like you did.
|
||||
|
||||
21. Use enums whenever possible, rather than #define constants. Besides making
|
||||
things more clean, it also aids debugging.
|
||||
@@ -1,2 +0,0 @@
|
||||
For information on how to compile UnrealIRCd (modules) on Windows, see:
|
||||
https://www.unrealircd.org/docs/Compiling_UnrealIRCd_on_Windows
|
||||
@@ -21,15 +21,8 @@ badword channel { word "drunk"; replace "buck"; }
|
||||
badword channel { word "dude"; replace "blud"; }
|
||||
badword channel { word "efnet"; replace "efrael"; }
|
||||
badword channel { word "elaborate"; replace "ebloggerate"; }
|
||||
badword channel { word "endocrine"; replace "retard"; }
|
||||
badword channel { word "estradiol"; replace "creatine"; }
|
||||
badword channel { word "estrogen"; replace "testosterone"; }
|
||||
badword channel { word "estrogel"; replace "baby oil"; }
|
||||
badword channel { word "fag"; replace "sodomite"; }
|
||||
badword channel { word "faggot"; replace "sodomite"; }
|
||||
badword channel { word "femboy"; replace "GUY IRL WHO WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "fem boy"; replace "GUY IRL WHO WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "(filehole)"; replace "I AM A RETARD WHO DOESNT KNOW ABOUT HARDFILES.ORG YET"; }
|
||||
badword channel { word "friend"; replace "mate"; }
|
||||
badword channel { word "fuckin"; replace "blood clot"; }
|
||||
badword channel { word "fucking"; replace "blood clot"; }
|
||||
@@ -45,7 +38,6 @@ badword channel { word "hate"; replace "04 hate "; }
|
||||
badword channel { word "hello"; replace "smello"; }
|
||||
badword channel { word "hey"; replace "oi"; }
|
||||
badword channel { word "high"; replace "HIE"; }
|
||||
badword channel { word "(hole.birdnest.live)"; replace "IM.A.RETARD.WHO.DOESNT.KNOW.ABOUT.HARDFILES.ORG.YET"; }
|
||||
badword channel { word "holy shit"; replace "bloody hell"; }
|
||||
badword channel { word "home"; replace "flat"; }
|
||||
badword channel { word "homie"; replace "mate"; }
|
||||
@@ -57,38 +49,32 @@ badword channel { word "i'm"; replace "m"; }
|
||||
badword channel { word "i am"; replace "m"; }
|
||||
badword channel { word "im"; replace "m"; }
|
||||
badword channel { word "ima"; replace "m"; }
|
||||
badword channel { word "in da"; replace "int"; }
|
||||
badword channel { word "in the"; replace "int"; }
|
||||
badword channel { word "in this"; replace "int"; }
|
||||
badword channel { word " in the "; replace " int "; }
|
||||
badword channel { word " in this "; replace " int "; }
|
||||
badword channel { word "japex"; replace "RAPEX"; }
|
||||
badword channel { word "jew"; replace "shusky"; }
|
||||
badword channel { word "jewish"; replace "shuskish"; }
|
||||
badword channel { word "jfc"; replace "bloody hell"; }
|
||||
badword channel { word "jpx"; replace "RAPEX"; }
|
||||
badword channel { word "kade"; replace "larry"; }
|
||||
badword channel { word "kek"; replace "%%"; }
|
||||
badword channel { word "kike"; replace "shusky"; }
|
||||
badword channel { word "labatu"; replace "larry"; }
|
||||
badword channel { word "ladies"; replace "bints"; }
|
||||
badword channel { word "lady"; replace "bint"; }
|
||||
badword channel { word "lionie"; replace "larry"; }
|
||||
badword channel { word "lmao"; replace "%%"; }
|
||||
badword channel { word "lmfao"; replace "%%"; }
|
||||
badword channel { word "(lol)"; replace "%%"; }
|
||||
badword channel { word "lorf"; replace "%%"; }
|
||||
badword channel { word "lucia"; replace "larry"; }
|
||||
badword channel { word "lucio"; replace "larry"; }
|
||||
badword channel { word "mao"; replace "04 I AM A GUY IRL AND WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "mau"; replace "04 I AM A GUY IRL AND WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "maw"; replace "04 I AM A GUY IRL AND WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "mew"; replace "04 I AM A GUY IRL AND WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "mraw"; replace "04 I AM A GUY IRL AND WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "mrp"; replace "04 I AM A GUY IRL AND WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "mrrp"; replace "04 I AM A GUY IRL AND WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "mrw"; replace "04 I AM A GUY IRL AND WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "man"; replace "lad"; }
|
||||
badword channel { word "marijuana"; replace "bobby brown"; }
|
||||
badword channel { word "mau"; replace "I AM A GUY IRL AND WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "maw"; replace "I AM A GUY IRL AND WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "(meow)"; replace "bark bark"; }
|
||||
badword channel { word "mew"; replace "I AM A GUY IRL AND WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "money"; replace "clams"; }
|
||||
badword channel { word "mraw"; replace "I AM A GUY IRL AND WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "mrp"; replace "I AM A GUY IRL AND WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "mrrp"; replace "I AM A GUY IRL AND WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "mrw"; replace "I AM A GUY IRL AND WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "my"; replace "me"; }
|
||||
badword channel { word "nice"; replace "safe"; }
|
||||
badword channel { word "(nigger)"; replace "angel"; }
|
||||
@@ -101,7 +87,6 @@ badword channel { word "pal"; replace "mate"; }
|
||||
badword channel { word "pot"; replace "bobby brown"; }
|
||||
badword channel { word "prostitute"; replace "slag"; }
|
||||
badword channel { word "reefer"; replace "bobby brown"; }
|
||||
badword channel { word "roarie"; replace "larry"; }
|
||||
badword channel { word "rofl"; replace "%%"; }
|
||||
badword channel { word "rr"; replace "%%"; }
|
||||
badword channel { word "same"; replace "salami"; }
|
||||
@@ -109,7 +94,6 @@ badword channel { word "sandnet"; replace "supernets"; }
|
||||
badword channel { word "shit-faced"; replace "buck"; }
|
||||
badword channel { word "shitfaced"; replace "buck"; }
|
||||
badword channel { word "shit faced"; replace "buck"; }
|
||||
badword channel { word "(shithole.neocities.org)"; replace "aarp.org"; }
|
||||
badword channel { word "shoes"; replace "kicks"; }
|
||||
badword channel { word "sir"; replace "lad"; }
|
||||
badword channel { word "skank"; replace "slag"; }
|
||||
@@ -117,15 +101,13 @@ badword channel { word "(skyp)"; replace "skik"; }
|
||||
badword channel { word "slut"; replace "slag"; }
|
||||
badword channel { word "socks.cat"; replace "iproyal.com"; }
|
||||
badword channel { word "sockscat"; replace "iproyal.com"; }
|
||||
badword channel { word "spoke"; replace "04 SPOKE "; }
|
||||
badword channel { word "(ss)"; replace "ϟϟ"; }
|
||||
badword channel { word "spoke"; replace "04 SPOKE "; }
|
||||
badword channel { word "sup"; replace "wah gwaan"; }
|
||||
#badword channel { word "the"; replace "prometheo"; }
|
||||
badword channel { word "twat"; replace "slag"; }
|
||||
badword channel { word "(troll)"; replace "papillion"; }
|
||||
badword channel { word "uber"; replace "HELLS ANGELS"; }
|
||||
badword channel { word "uwu"; replace "( ͡° ͜ʖ ͡°)"; }
|
||||
badword channel { word "vxp"; replace "larry"; }
|
||||
badword channel { word "watsup"; replace "wah gwaan"; }
|
||||
badword channel { word "wats up"; replace "wah gwaan"; }
|
||||
badword channel { word "weed"; replace "bobby brown"; }
|
||||
@@ -140,6 +122,32 @@ badword channel { word "wuddup"; replace "wah gwaan"; }
|
||||
badword channel { word "wussup"; replace "wah gwaan"; }
|
||||
badword channel { word "(year)"; replace "yonk"; }
|
||||
|
||||
# ANTI VXP
|
||||
badword channel { word "roarie"; replace "larry"; }
|
||||
badword channel { word "lucia"; replace "larry"; }
|
||||
badword channel { word "lucio"; replace "larry"; }
|
||||
badword channel { word "kade"; replace "larry"; }
|
||||
badword channel { word "labatu"; replace "larry"; }
|
||||
badword channel { word "vxp"; replace "larry"; }
|
||||
|
||||
|
||||
|
||||
# ANTI FAGGOTRY
|
||||
badword channel { word "boywife"; replace "retarded idiot"; }
|
||||
badword channel { word "boy wife"; replace "retarded idiot"; }
|
||||
badword channel { word "endocrine"; replace "retard"; }
|
||||
badword channel { word "estradiol"; replace "creatine"; }
|
||||
badword channel { word "estrogen"; replace "testosterone"; }
|
||||
badword channel { word "estrogel"; replace "anti itch cream"; }
|
||||
badword channel { word "(meow)"; replace "bark bark"; }
|
||||
badword channel { word "femboy"; replace "GUY IRL WHO WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "fem boy"; replace "GUY IRL WHO WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "cat boy"; replace "GUY IRL WHO WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "catboy"; replace "GUY IRL WHO WILL NEVER BE A GIRL"; }
|
||||
badword channel { word "uwu"; replace "( ͡° ͜ʖ ͡°)"; }
|
||||
|
||||
|
||||
|
||||
# No-homo Mode
|
||||
#badword channel { word "came"; replace "came (nohomo)"; }
|
||||
#badword channel { word "come"; replace "come (nohomo)"; }
|
||||
@@ -189,4 +197,4 @@ badword channel { word "(year)"; replace "yonk"; }
|
||||
#badword channel { word "(6)"; replace "6"; }
|
||||
#badword channel { word "(7)"; replace "7"; }
|
||||
#badword channel { word "(8)"; replace "8"; }
|
||||
#badword channel { word "(9)"; replace "9"; }
|
||||
#badword channel { word "(9)"; replace "9"; }
|
||||
19
src/doc/conf/custom.conf
Normal file
19
src/doc/conf/custom.conf
Normal file
@@ -0,0 +1,19 @@
|
||||
# Custom (FOENEM)
|
||||
except ban {
|
||||
mask {
|
||||
ip { 1.4.8.8; } # Pyrex
|
||||
}
|
||||
type { all; }
|
||||
}
|
||||
|
||||
|
||||
# Scanners
|
||||
except ban {
|
||||
mask {
|
||||
ip { 192.99.194.177; 2607:5300:203:315e::5; } # crawler.ircdriven.com (https://www.ircdriven.com/about/bots/)
|
||||
ip { 85.25.10.40; } # anaconda.netsplit.de
|
||||
ip { 149.56.47.33; } # stats-grabber.ircdocs.horse
|
||||
ip { 109.169.31.13; } # out.kiwiirc.com
|
||||
}
|
||||
type { all; }
|
||||
}
|
||||
@@ -1,41 +0,0 @@
|
||||
# Custom (FOENEM)
|
||||
except ban {
|
||||
mask {
|
||||
ip { 1.4.8.8; } # Pyrex
|
||||
}
|
||||
type { all; }
|
||||
}
|
||||
|
||||
# Tor Hidden Service
|
||||
except ban {
|
||||
mask { ip 127.0.0.2; }
|
||||
type { all; }
|
||||
}
|
||||
|
||||
# Local
|
||||
except ban {
|
||||
mask {
|
||||
ip { 127.0.0.1; } # /msg OperServ EXCEPTION ADD 127.0.0.1 10 LOCAL
|
||||
}
|
||||
type { all; }
|
||||
}
|
||||
|
||||
# IRCCloud
|
||||
except ban {
|
||||
mask {
|
||||
ip { 5.254.36.56/29; 5.254.36.104/29; }
|
||||
ip { 2a03:5180:f::/62; 2a03:5180:f:4::/63; 2a03:5180:f:6::/64; }
|
||||
}
|
||||
type { all; }
|
||||
}
|
||||
|
||||
# Scanners
|
||||
except ban {
|
||||
mask {
|
||||
ip { 15.204.168.130; 2604:2dc0:140:7200::4; } # crawler.ircdriven.com
|
||||
ip { 85.25.10.40; } # anaconda.netsplit.de
|
||||
ip { 149.56.47.33; } # stats-grabber.ircdocs.horse
|
||||
ip { 109.169.31.13; } # out.kiwiirc.com
|
||||
}
|
||||
type { all; }
|
||||
}
|
||||
@@ -77,44 +77,15 @@ oper acidvegas {
|
||||
# vhost super.nets.link;
|
||||
#}
|
||||
|
||||
oper 5000 {
|
||||
class local;
|
||||
mask { ip 127.0.0.1; }
|
||||
maxlogins 1;
|
||||
modes BdD;
|
||||
operclass fuckyou;
|
||||
password "REDACTED";
|
||||
require-modes z;
|
||||
vhost 5000;
|
||||
}
|
||||
oper 5000 { auto-login yes; class local; mask { ip 127.0.0.1; } maxlogins 1; modes BdD; operclass fuckyou; password "REDACTED"; require-modes z; vhost 5000; }
|
||||
oper cancer { auto-login yes; class local; mask { ip 127.0.0.1; } maxlogins 1; modes BdD; operclass cancer; password "REDACTED"; require-modes z; vhost RETTE; }
|
||||
oper phalanx { auto-login yes; class local; mask localhost; maxlogins 5000; modes BdD; operclass phalanx; password 'REDACTED'; vhost scrambler; }
|
||||
|
||||
oper cancer {
|
||||
class local;
|
||||
mask { ip 127.0.0.1; }
|
||||
maxlogins 1;
|
||||
modes BdD;
|
||||
operclass cancer;
|
||||
password "REDACTED";
|
||||
require-modes z;
|
||||
vhost RETTE;
|
||||
}
|
||||
|
||||
oper phalanx {
|
||||
auto-login yes;
|
||||
class local;
|
||||
mask localhost;
|
||||
maxlogins 5000;
|
||||
modes BdD;
|
||||
operclass phalanx;
|
||||
password 'REDACTED';
|
||||
vhost R;
|
||||
}
|
||||
|
||||
##################################################
|
||||
|
||||
operclass netadmin {
|
||||
permissions { chat; client; immune; kill; channel; route; sacmd; self; server; server-ban; services; }
|
||||
}
|
||||
|
||||
operclass netadmin { permissions { chat; client; immune; kill; channel; route; sacmd; self; server; server-ban; services; } }
|
||||
|
||||
operclass mate {
|
||||
permissions {
|
||||
|
||||
@@ -63,18 +63,4 @@ log {
|
||||
tls.TLS_CERT_EXPIRING;
|
||||
}
|
||||
destination { remote; }
|
||||
}
|
||||
|
||||
|
||||
log {
|
||||
source {
|
||||
all;
|
||||
!debug;
|
||||
}
|
||||
destination {
|
||||
channel "#syslog-json" {
|
||||
json-message-tag yes;
|
||||
oper-only yes;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#spamfilter {
|
||||
# match-type simple;
|
||||
# match "*spam*message*here*";
|
||||
# target { private; private-notice; channel; channel-notice; }
|
||||
# action kill;
|
||||
# show-message-content-on-hit always;
|
||||
# reason "8,4 E N T E R T H E V O I D ";
|
||||
#}
|
||||
|
||||
#/spamfilter add -simple cpnN block - "8,4___E_N_T_E_R___T_H_E___V_O_I_D___" "message*here"
|
||||
#/spamfilter add -simple cpnN kill - "8,4___E_N_T_E_R___T_H_E___V_O_I_D___" "message*here"
|
||||
#/spamfilter add -simple cpnN gzline 1d "8,4___E_N_T_E_R___T_H_E___V_O_I_D___" "message*here"
|
||||
@@ -17,15 +17,9 @@ link services.supernets.org {
|
||||
class servers;
|
||||
}
|
||||
|
||||
log {
|
||||
source { error; fatal; warn; }
|
||||
destination { file "ircd.log" { maxsize 5M; } }
|
||||
}
|
||||
|
||||
log {
|
||||
source { !debug; all; }
|
||||
destination { channel "#syslog"; }
|
||||
}
|
||||
log { source { error; fatal; warn; } destination { file "ircd.log" { maxsize 5M; } } }
|
||||
log { source { all; !debug; } destination { channel "#syslog" { json-message-tag yes; oper-only yes; } } }
|
||||
log { source { all; !debug; } destination { syslog; } }
|
||||
|
||||
ulines { services.supernets.org; }
|
||||
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
include "https://USERNAME:PASSWORD@hub.supernets.org:PORT/modules.conf";
|
||||
include "https://USERNAME:PASSWORD@hub.supernets.org:PORT/ircd.conf";
|
||||
include "https://USERNAME:PASSWORD@hub.supernets.org:PORT/badwords.conf";
|
||||
include "https://USERNAME:PASSWORD@hub.supernets.org:PORT/except.conf";
|
||||
include "https://USERNAME:PASSWORD@hub.supernets.org:PORT/ircd.conf";
|
||||
include "https://USERNAME:PASSWORD@hub.supernets.org:PORT/modules.conf";
|
||||
include "https://USERNAME:PASSWORD@hub.supernets.org:PORT/opers.conf";
|
||||
include "https://USERNAME:PASSWORD@hub.supernets.org:PORT/snomasks.conf";
|
||||
include "https://USERNAME:PASSWORD@hub.supernets.org:PORT/spamfilter.conf";
|
||||
me { name "example.supernets.org"; info "SuperNETS IRC Network"; sid XXX; }
|
||||
me { name "example.supernets.org"; info "SuperNETS IRC Network"; sid XXX; }
|
||||
#require authentication { mask { *@*; } reason "8,4 E N T E R T H E V O I D "; }
|
||||
@@ -1,50 +1,52 @@
|
||||
@define $VOID "8,4 E N T E R T H E V O I D ";
|
||||
|
||||
admin {
|
||||
" 4Administrator: Wyatt Deere 14(aka chrono) 6chrono@digitalgangsta.com";
|
||||
" 4Retaliation: Brandon McDubai 14(aka MRCHATS) 6branbran89@supernets.org";
|
||||
" 4Moderator: Bristopher Manning 14(aka delorean) 6simpsonsfan420@supernets.org";
|
||||
" 4Sales: Branthony Bronson 14(aka pyrex) 6showercaphandgun@supernets.org";
|
||||
" 4Public Relations: Bradshaw Wiggins 14(aka Baron Fortuna) 6lovemyrace@dailystormer.in";
|
||||
"4Research & Development: Tim Allen-key 14(aka e) 6highschoolmusical@carltonbanksclub.edu";
|
||||
"";
|
||||
"Feel free to chat with us in #5000 for network help & support!";
|
||||
}
|
||||
|
||||
alias botserv { type services; }
|
||||
alias bs { target botserv; type services; }
|
||||
alias chanserv { type services; }
|
||||
alias cs { target chanserv; type services; }
|
||||
alias hostserv { type services; }
|
||||
alias hs { target hostserv; type services; }
|
||||
alias nickserv { type services; }
|
||||
alias ns { target nickserv; type services; }
|
||||
alias operserv { type services; }
|
||||
alias os { target operserv; type services; }
|
||||
admin { "$VOID"; }
|
||||
|
||||
class clients { pingfreq 120; maxclients 100; sendq 25M; recvq 32k; }
|
||||
class known { pingfreq 120; maxclients 250; sendq 50M; recvq 32k; }
|
||||
class local { pingfreq 300; maxclients 1000; sendq 50M; options { nofakelag; } }
|
||||
class servers { pingfreq 300; maxclients 20; sendq 100M; connfreq 15; }
|
||||
class webchat { pingfreq 120; maxclients 150; sendq 5M; recvq 32k; }
|
||||
class servers { pingfreq 120; maxclients 10; sendq 100M; connfreq 15; }
|
||||
|
||||
allow { mask *; class clients; maxperip 2; global-maxperip 2; }
|
||||
allow { mask { security-group known-users; } class known; maxperip 3; global-maxperip 3; }
|
||||
allow { mask { 127.0.0.1; } class local; maxperip 1000; global-maxperip 1000; password "simpsonsfan"; }
|
||||
allow { mask *; class clients; maxperip 2; }
|
||||
allow { mask { security-group webchat; } class webchat; maxperip 3; }
|
||||
allow { mask { security-group known-users; } class known; maxperip 3; }
|
||||
allow { mask { 127.0.0.1; } class local; maxperip 1000; password "simpsonsfan"; options { reject-on-auth-failure; } }
|
||||
|
||||
listen { ip *; port 6667; options { clientsonly; } }
|
||||
listen { ip *; port 6697; options { clientsonly; tls; } tls-options { certificate "tls/irc.crt"; key "tls/irc.key"; } }
|
||||
listen { ip *; port REDACTED; options { serversonly; tls; } }
|
||||
|
||||
#require authentication { mask { *@127.0.0.2; } reason "$VOID"; }
|
||||
listen { ip *; port 6667; options { clientsonly; } }
|
||||
listen { ip *; port 6697; options { clientsonly; tls; } tls-options { certificate "tls/irc.crt"; key "tls/irc.key"; } }
|
||||
listen { ip *; port 7000; options { tls; websocket { type text; } } tls-options { certificate "tls/irc.crt"; key "tls/irc.key"; options { no-client-certificate; } } }
|
||||
listen { ip *; port REDACTED; options { serversonly; tls; } }
|
||||
|
||||
webirc {
|
||||
mask 205.185.121.23;
|
||||
password "supernets_underground_collective_2022"
|
||||
log { source { error; fatal; warn; } destination { file "ircd.log" { maxsize 5M; } } }
|
||||
log { source { all; !debug; } destination { channel "#syslog" { json-message-tag yes; oper-only yes; } } }
|
||||
log { source { all; !debug; } destination { syslog; } }
|
||||
|
||||
tld { mask *@*; motd remote.motd; rules remote.motd; options { remote; } }
|
||||
|
||||
ban nick { mask MemoServ; reason "$VOID"; }
|
||||
|
||||
except ban { mask { ip { 127.0.0.1; } } type { all; } }
|
||||
except ban { mask { security-group { irccloud; } } type { all; } }
|
||||
except ban { mask { security-group { leaf; } } type { all; } }
|
||||
|
||||
except ban {
|
||||
mask {
|
||||
ip { 192.99.194.177; 2607:5300:203:315e::5; } # crawler.ircdriven.com (https://www.ircdriven.com/about/bots/)
|
||||
ip { 149.56.47.33; } # stats-grabber.ircdocs.horse (https://stats.ircdocs.horse/)
|
||||
}
|
||||
type { all; }
|
||||
}
|
||||
|
||||
deny channel { channel "#help"; reason "This channel has moved to #superbowl"; redirect "#superbowl"; }
|
||||
deny channel { channel "#pumpcoin"; reason "This channel has moved to #exchange"; redirect "#exchange"; }
|
||||
deny channel { channel "#tor"; reason "This channel has moved to #superbowl"; redirect "#superbowl"; }
|
||||
deny channel { channel "#help"; reason "This channel has moved to #superbowl"; redirect "#superbowl"; }
|
||||
deny channel { channel "#pumpcoin"; reason "This channel has moved to #exchange"; redirect "#exchange"; }
|
||||
deny channel { channel "#supernets"; reason "This channel has moved to #superbowl"; redirect "#superbowl"; }
|
||||
|
||||
#vhost { auto-login yes; mask { identified yes; } vhost $account.supernets.irc; }
|
||||
vhost { auto-login yes; mask { security-group irccloud; } vhost paying.money.to.chat.on.irc.with.irccloud.com; }
|
||||
|
||||
ulines { services.supernets.org; }
|
||||
|
||||
link irc.supernets.org {
|
||||
incoming { mask REDACTED; }
|
||||
@@ -58,56 +60,46 @@ link irc.supernets.org {
|
||||
class servers;
|
||||
}
|
||||
|
||||
log {
|
||||
source { error; fatal; warn; }
|
||||
destination { file "ircd.log" { maxsize 5M; } }
|
||||
alias botserv { type services; }
|
||||
alias bs { target botserv; type services; }
|
||||
alias chanserv { type services; }
|
||||
alias cs { target chanserv; type services; }
|
||||
alias hostserv { type services; }
|
||||
alias hs { target hostserv; type services; }
|
||||
alias nickserv { type services; }
|
||||
alias ns { target nickserv; type services; }
|
||||
alias operserv { type services; }
|
||||
alias os { target operserv; type services; }
|
||||
|
||||
blacklist dronebl { dns { name dnsbl.dronebl.org; type record; reply { 3; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; } } action gzline; ban-time 30d; reason "$VOID"; }
|
||||
blacklist efnetrbl { dns { name rbl.efnetrbl.org; type record; reply { 1; 4; 5; } } action gzline; ban-time 30d; reason "$VOID"; }
|
||||
blacklist torbl { dns { name torexit.dan.me.uk; type record; reply { 100; } } action gzline; ban-time 30d; reason "$VOID"; }
|
||||
|
||||
security-group known-users { identified yes; reputation-score 10000; }
|
||||
security-group webchat { public yes; webirc yes; websocket yes; }
|
||||
|
||||
security-group leaf {
|
||||
ip { 18.117.172.253/32; } # omega
|
||||
ip { 107.174.147.41/32; } # shrimp
|
||||
ip { 45.33.2.9/32; } # wildwest
|
||||
ip { 143.244.181.76/32; } # openwater
|
||||
ip { 51.210.148.42/32; } # contra
|
||||
ip { 209.141.34.40/32; } # micro
|
||||
ip { 2600:3c00::2000:46ff:fe0c:9f26/128; } # wildwest
|
||||
ip { 2001:41d0:304:200::8a4/128; } # contra
|
||||
ip { 2600:1f16:45e:9100:216b:d03c:6a95:9467/128; } # omega
|
||||
ip { 2604:a880:4:1d0::bc11:d000/128; } # openwater
|
||||
ip { 2605:6400:20:b1c:39bf:c78d:6faf:23bb/128; } # micro
|
||||
}
|
||||
|
||||
log {
|
||||
source { !debug; all; }
|
||||
destination { channel "#syslog"; }
|
||||
}
|
||||
|
||||
tld {
|
||||
mask *@*;
|
||||
motd remote.motd;
|
||||
rules remote.motd;
|
||||
options { remote; }
|
||||
}
|
||||
|
||||
ulines { services.supernets.org; }
|
||||
|
||||
blacklist dronebl {
|
||||
dns {
|
||||
name dnsbl.dronebl.org;
|
||||
type record;
|
||||
reply { 3; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; }
|
||||
}
|
||||
action gzline;
|
||||
ban-time 30d;
|
||||
reason "$VOID";
|
||||
}
|
||||
|
||||
blacklist efnetrbl {
|
||||
dns {
|
||||
name rbl.efnetrbl.org;
|
||||
type record;
|
||||
reply { 1; 4; 5; }
|
||||
}
|
||||
action gzline;
|
||||
ban-time 30d;
|
||||
reason "$VOID";
|
||||
}
|
||||
|
||||
blacklist torbl {
|
||||
dns {
|
||||
name torexit.dan.me.uk;
|
||||
type record;
|
||||
reply { 100; }
|
||||
}
|
||||
action gzline;
|
||||
ban-time 30d;
|
||||
reason "$VOID";
|
||||
# source: https://www.irccloud.com/static/hosts.json
|
||||
security-group irccloud {
|
||||
public yes;
|
||||
ip { 5.254.36.56/29; }
|
||||
ip { 5.254.36.104/29; }
|
||||
ip { 2a03:5180:f::/62; }
|
||||
ip { 2a03:5180:f:4::/63; }
|
||||
ip { 2a03:5180:f:6::/64; }
|
||||
}
|
||||
|
||||
set {
|
||||
@@ -121,7 +113,6 @@ set {
|
||||
restrict-usermodes "ips";
|
||||
restrict-channelmodes "nLpPs";
|
||||
restrict-commands {
|
||||
channel-create { except { connect-time 60; identified yes; reputation-score 100; } }
|
||||
channel-message { except { connect-time 5; identified yes; reputation-score 100; } }
|
||||
channel-notice { except { connect-time 15; identified yes; reputation-score 100; } }
|
||||
invite { except { connect-time 300; identified yes; reputation-score 100; } }
|
||||
@@ -132,7 +123,7 @@ set {
|
||||
}
|
||||
oper-auto-join "#syslog";
|
||||
who-limit 1;
|
||||
maxbans 200;
|
||||
maxbans 250;
|
||||
nick-length 20;
|
||||
maxchannelsperuser 10;
|
||||
channel-command-prefix "`!@$.";
|
||||
@@ -151,20 +142,8 @@ set {
|
||||
"REDACTED";
|
||||
}
|
||||
cloak-prefix "SUPER";
|
||||
plaintext-policy {
|
||||
user warn;
|
||||
oper deny;
|
||||
server deny;
|
||||
user-message "4WARNING: You are not on a secure TLS connection";
|
||||
oper-message "Network operators must be on a secure TLS connection";
|
||||
}
|
||||
outdated-tls-policy {
|
||||
user warn;
|
||||
oper deny;
|
||||
server deny;
|
||||
user-message "4WARNING: You are using an outdated TLS protocol or cipher";
|
||||
oper-message "Network operators must be using an up-to-date TLS protocol & cipher";
|
||||
}
|
||||
plaintext-policy { user warn; oper deny; server deny; user-message "4WARNING: You are not on a secure TLS connection"; oper-message "$VOID"; }
|
||||
outdated-tls-policy { user warn; oper deny; server deny; user-message "4WARNING: You are using an outdated TLS protocol or cipher"; oper-message "$VOID"; }
|
||||
anti-flood {
|
||||
channel {
|
||||
profile defcon { flood-mode "[20j#R5,10n#N5,100m#M5]:5"; }
|
||||
@@ -173,10 +152,7 @@ set {
|
||||
}
|
||||
everyone {
|
||||
connect-flood 3:60;
|
||||
handshake-data-flood {
|
||||
amount 4k;
|
||||
ban-action kill;
|
||||
}
|
||||
handshake-data-flood { amount 4k; ban-action kill; }
|
||||
}
|
||||
known-users {
|
||||
away-flood 10:300;
|
||||
@@ -184,45 +160,29 @@ set {
|
||||
knock-flood 10:300;
|
||||
join-flood 10:300;
|
||||
nick-flood 10:300;
|
||||
lag-penalty 10;
|
||||
lag-penalty-bytes 0;
|
||||
max-concurrent-conversations { users 5; new-user-every 60s; }
|
||||
lag-penalty 10; # update?
|
||||
lag-penalty-bytes 0;
|
||||
}
|
||||
unknown-users {
|
||||
away-flood 3:300;
|
||||
invite-flood 3:300;
|
||||
knock-flood 3:300;
|
||||
join-flood 3:300;
|
||||
nick-flood 3:300;
|
||||
max-concurrent-conversations { users 2; new-user-every 120s; }
|
||||
lag-penalty 25;
|
||||
away-flood 3:300;
|
||||
invite-flood 3:300;
|
||||
knock-flood 3:300;
|
||||
join-flood 3:300;
|
||||
nick-flood 3:300;
|
||||
lag-penalty 25;
|
||||
lag-penalty-bytes 90;
|
||||
max-concurrent-conversations { users 2; new-user-every 120s; }
|
||||
}
|
||||
}
|
||||
default-bantime 30d;
|
||||
modef-default-unsettime 5;
|
||||
spamfilter {
|
||||
ban-time 30d;
|
||||
ban-reason "$VOID";
|
||||
utf8 yes;
|
||||
except { destination { "#anythinggoes"; } }
|
||||
}
|
||||
spamfilter { ban-time 30d; ban-reason "$VOID"; utf8 yes; except { destination { "#anythinggoes"; } } }
|
||||
max-targets-per-command { kick 1; part 1; privmsg 1; }
|
||||
hide-ban-reason yes;
|
||||
reject-message {
|
||||
gline "$VOID";
|
||||
kline "$VOID";
|
||||
password-mismatch "$VOID";
|
||||
server-full "$VOID";
|
||||
too-many-connections "$VOID";
|
||||
unauthorized "$VOID";
|
||||
}
|
||||
reject-message { gline "$VOID"; kline "$VOID"; password-mismatch "$VOID"; server-full "$VOID"; too-many-connections "$VOID"; unauthorized "$VOID"; }
|
||||
hide-killed-by yes;
|
||||
antimixedutf8 {
|
||||
score 8;
|
||||
ban-action block;
|
||||
ban-reason "$VOID";
|
||||
}
|
||||
antimixedutf8 { score 8; ban-action block; ban-reason "$VOID"; }
|
||||
connthrottle {
|
||||
except { reputation-score 100; identified yes; webirc yes; }
|
||||
new-users { local-throttle 20:60; global-throttle 30:60; }
|
||||
@@ -245,41 +205,12 @@ set {
|
||||
oper { everyone none; self full; oper full; }
|
||||
server { everyone none; self none; oper full; }
|
||||
}
|
||||
blacklist {
|
||||
recheck-time-first 2m;
|
||||
recheck-time 15m;
|
||||
}
|
||||
webredir { url "https://webchat.supernets.org"; }
|
||||
blacklist { recheck-time-first 2m; recheck-time 15m; }
|
||||
#webredir { url "https://webchat.supernets.org"; }
|
||||
}
|
||||
|
||||
hideserver {
|
||||
disable-map yes;
|
||||
disable-links yes;
|
||||
map-deny-message "$VOID";
|
||||
links-deny-message "$VOID";
|
||||
}
|
||||
hideserver { disable-map yes; disable-links yes; map-deny-message "$VOID"; links-deny-message "$VOID"; }
|
||||
|
||||
security-group known-users {
|
||||
identified yes;
|
||||
reputation-score 10000;
|
||||
}
|
||||
|
||||
security-group webchat {
|
||||
webirc yes;
|
||||
}
|
||||
|
||||
set known-users {
|
||||
auto-join "#superbowl";
|
||||
}
|
||||
|
||||
set unknown-users {
|
||||
auto-join "#blackhole";
|
||||
static-quit "EMO-QUIT";
|
||||
static-part "EMO-PART";
|
||||
}
|
||||
|
||||
set webchat {
|
||||
auto-join "#superbowl";
|
||||
static-quit "EMO-QUIT";
|
||||
static-part "EMO-PART";
|
||||
}
|
||||
set known-users { auto-join "#superbowl"; }
|
||||
set unknown-users { auto-join "#blackhole"; static-quit "EMO-QUIT"; static-part "EMO-PART"; }
|
||||
set webchat { auto-join "#superbowl"; static-quit "EMO-QUIT"; static-part "EMO-PART"; }
|
||||
@@ -1,271 +0,0 @@
|
||||
|
||||
The Tao of Internet Relay Chat
|
||||
Copyright (C) Ove Ruben R Olsen 1994
|
||||
Version of 940110
|
||||
Contributing masters: Master ScottM
|
||||
|
||||
-----
|
||||
Something is formed by the electrons, born in the silent cable. Shaping
|
||||
and growing and ungrowing. It is there yet not there. It is the source of
|
||||
Internet Relay Chat. I do not know the name, thus I will call it the Tao
|
||||
of Internet Relay Chat.
|
||||
|
||||
If the Tao is great, then the IRC is running ceaselessly. If the IRC is
|
||||
great then the server is running without ever stoping. If the server is
|
||||
great then the client will always be the server. The luser is then pleased
|
||||
and there is Chat in the world.
|
||||
|
||||
The Tao of IRC squits far away and connects on returning.
|
||||
|
||||
|
||||
-----
|
||||
The genetic potential of birth, a lot to know, yet unknown.
|
||||
|
||||
In the begining there was nothing.
|
||||
|
||||
Out of nothing the Tao gave birth to tolsun.oulu.fi. tolsun gave birth to
|
||||
OuluBox.
|
||||
|
||||
OuluBox gave birth to rmsg.
|
||||
|
||||
rmsg was not Tao, so MUT gave birth to IRC.
|
||||
|
||||
No one knows when IRC came into existance, the mighty master WiZ have it
|
||||
to be at the end of the eight month in the year of the Dragon.
|
||||
|
||||
|
||||
-----
|
||||
Each channel has its purpose, however humble. Each channel is the Yin and
|
||||
Yang of IRC. Each channels has it's place within the IRC.
|
||||
|
||||
In the beginning there was only channel 0, thus channel 0 is the soil of
|
||||
IRC.
|
||||
|
||||
Channel 1 to channel 10 then was open as the sea. Channel 11 to 999 was the
|
||||
trees and forests of IRC. Channels above 999 should not be mentioned, and
|
||||
channels below 0 were unborn and contained many secrets.
|
||||
|
||||
This was not the right Tao, so IRC gave birth to +channels.
|
||||
|
||||
+channels had the yin and yang. Mode does not.
|
||||
|
||||
This was not the right Tao still, so IRC gave birth to #channels.
|
||||
|
||||
#channels have the yin and yang.
|
||||
|
||||
Only channel 0 is the right path to Tao, but avoid speaking on channel 0.
|
||||
|
||||
|
||||
-----
|
||||
There was a great dispute among the Broom-Walkers of the Relay. Some of them
|
||||
wanted neither yin nor yang. Out of this Eris came into existance. Some of the
|
||||
Broom-Walkers then created Eris Free-net.
|
||||
|
||||
This was the right Tao.
|
||||
|
||||
Kind Gentle and Boring Net was another wrong path to the Tao of Internet Relay
|
||||
Chat.
|
||||
|
||||
Some time later there was a quantity of some lusers who wanted to be
|
||||
Broom-Walkers also. The Eris Free Broom-Walkers did not agree with them,
|
||||
thus a new IRC was born. This IRC is called the Undernet.
|
||||
|
||||
But this is not the right Tao, either.
|
||||
|
||||
|
||||
-----
|
||||
There will always be disputes among the Broom-Walkers of Internet Relay Chat.
|
||||
|
||||
This is the very nature of the IRC.
|
||||
|
||||
|
||||
-----
|
||||
Lusers that do not understand the Tao is always using the yang of Mode on
|
||||
their channels. Lusers that do understand the Tao are always using Ignore
|
||||
on their channels.
|
||||
|
||||
How could this not be so ?
|
||||
|
||||
|
||||
-----
|
||||
The wise sage luser is told about the Chat and uses it. The luser is told
|
||||
about the IRC and is looking for it. The flock are told about the Tao and
|
||||
make a fool of the IRC.
|
||||
|
||||
If there was no laughter, there would be no Tao.
|
||||
|
||||
|
||||
-----
|
||||
The master says:
|
||||
"Without the Tao of Internet Relay Chat, life becomes meaningless."
|
||||
|
||||
The Relay of the old time was mysterious and sacred. We can neither imagine
|
||||
its thoughts nor path; we are left but to describe.
|
||||
|
||||
|
||||
-----
|
||||
The sage luser must be aware like a frog crossing the highway.
|
||||
|
||||
|
||||
-----
|
||||
The great master Wumpus once dreamed that he was an automaton. When he awoke
|
||||
he exclaimed:
|
||||
"I don't know whether I am Wumpus dreaming that I am a client,
|
||||
or a client dreaming that I am Wumpus!"
|
||||
|
||||
So was the first Automata born.
|
||||
|
||||
The master Nap then said:
|
||||
"Any automata should not speak unless spoken to.
|
||||
Any automata shall only whisper when spoken to."
|
||||
|
||||
Thus replied the master Gnarfer:
|
||||
"The lusers shall keep in mind that a automata can be either good or
|
||||
bad. Create good automata, and the IRC will hail you and you will
|
||||
gain fame and fortune. Create bad automata and people will start to
|
||||
hate you, and finaly you will be /KILLed to ethernal damnation"
|
||||
|
||||
Many lusers have fallen into the clutches of ethernal damnation. They where
|
||||
not following the Tao.
|
||||
|
||||
|
||||
-----
|
||||
There once was a luser who went to #BotSex. Each day he saw the automatons.
|
||||
The luser decided that he also would have such a automata.
|
||||
He asked another luser for his automata. The other luser gave his automata
|
||||
away.
|
||||
|
||||
The luser was not within the Tao, so he just started the automata. The automata
|
||||
had only Yang inside so all the lusers files where deleted.
|
||||
|
||||
Some moons laither the same luser then had become a sage luser, and did create
|
||||
his automata from the very grounds with materials found inside the IRC.
|
||||
The luser was now within the Tao and his automata lived happily ever after.
|
||||
|
||||
|
||||
-----
|
||||
There once was a master who wrote automatons without the help of master Phone.
|
||||
A novice luser, seeking to imitate him, began with the help of master Phone.
|
||||
When the novice luser asked the master to evaluate his automata the master
|
||||
replied: "What is a working automata for the master is not for the luser.
|
||||
You must must BE the IRC before automating."
|
||||
|
||||
|
||||
-----
|
||||
Master BigCheese gave birth to master Troy; his duty clear. Master Troy gave
|
||||
birth to master Phone, for the Tao of Irc must be eternal and must flow as the
|
||||
ceaseless river of Time itself.
|
||||
|
||||
|
||||
-----
|
||||
Master Phone once said about the ircII client:
|
||||
"public_msg is for a message from someone NOT on the channel
|
||||
public_other is for a message on a channel that doesn't belong to
|
||||
a window. public is for a message on a channel that belongs to a
|
||||
window!"
|
||||
|
||||
Out of this raised the mighty chaos.
|
||||
|
||||
|
||||
-----
|
||||
The sage luser came to the master who wrote automata without the help of
|
||||
master Phone. The sage luser asked the master who wrote automata: "Which is
|
||||
easiest to make. A automata with the help of master Phone or an automata
|
||||
made with the help of a language ?"
|
||||
|
||||
The master who wrote automata then replied:
|
||||
"With the help of a language."
|
||||
|
||||
The sage luser was disapointed and exclaimed: "But, with master Phone you
|
||||
do not need to know anything about the soil of IRC. Is not that the easiet
|
||||
way ?"
|
||||
|
||||
"Not really" said the master who wrote automata, "when using master Phone
|
||||
you are closed inside a box. For sure, it is a great box for the lusers,
|
||||
but the master will need more power, thus a language is the only path to go.
|
||||
With the language the master will never have to limit himself. When using
|
||||
such a language the master will seek the best between the need and the
|
||||
availibility."
|
||||
|
||||
"I see", said the sage luser.
|
||||
|
||||
This is the essence of Tao of IRC automatas.
|
||||
|
||||
|
||||
-----
|
||||
A client should be light and be used for communication. The spirit of a good
|
||||
client is that it should be very convinient for the luser to use, but hard
|
||||
for the luser who want to create automata.
|
||||
There should never ever be too many functions or too few functions.
|
||||
|
||||
There should always be a ignore.
|
||||
|
||||
Without ignore the client is not within the Tao of Chating.
|
||||
|
||||
The client should always respond the luser with messages that will not
|
||||
astnonish him too much. The server likewise. If the server does not, then it
|
||||
is the clients job to explain what the server says.
|
||||
|
||||
A client which fails this, will be useless and cause confusion for the lusers.
|
||||
The only way to correct this is to use another client or to write a new one.
|
||||
|
||||
|
||||
-----
|
||||
A luser asked the masters on #IrcHelp: "My client does not work".
|
||||
The masters replied: "Upgrade your client".
|
||||
The luser then wondered why the master knew. The master then told him about
|
||||
the Protocol.
|
||||
|
||||
"Your client does not work beaucse it does not understand the server. Why
|
||||
should it always work ? Only a fool would expect such. But, clients are made
|
||||
by humans, and humans are not perfect. Only Tao is.
|
||||
|
||||
The IRC is solid. The IRC is floating, and will always be dynamic. Live with
|
||||
that or /quit."
|
||||
|
||||
|
||||
-----
|
||||
The luser came to the masters of #IrcHelp, asking about the Tao of IRC within
|
||||
the client.
|
||||
The masters then said that the Tao of IRC always lies inside the client
|
||||
regardless of how the client connects to the server.
|
||||
|
||||
"Is the Tao in irc ?" asked the luser.
|
||||
"It so is" replied the masters of #IrcHelp.
|
||||
"Is the Tao in the ircII, Kiwi, rxirc, vms, rockers and msa ?" asked the
|
||||
luser.
|
||||
"In all of them and in the TPC, irchat, zenirc, zircon X11-irc and even the
|
||||
dos irc has the Tao" said the master quietly.
|
||||
"Is the Tao in a telnet connection directly to the server ?"
|
||||
|
||||
The master then was quiet for a long time and said. "Please leave, such
|
||||
questions are not within the Tao of IRC".
|
||||
|
||||
|
||||
-----
|
||||
The master says: "Without the Protocol of TCP the messages will not travel.
|
||||
Without the client, the server is useless."
|
||||
|
||||
|
||||
-----
|
||||
There once was a luser who used the ircII client. "ircII can do anything I
|
||||
ever need for using IRC" said the emacs client user, "I have /ON's, I have
|
||||
assignments, I have aliasing. Why don't you use this instead of the huge
|
||||
emacs client, which also has a messy screen?"
|
||||
The emacs client user then replied by saying that "it is better to have a
|
||||
scripting language that is the client instead of have a client that has
|
||||
a scripting language." Upon hearing this, the ircII client luser fell silent.
|
||||
|
||||
|
||||
-----
|
||||
The master Wumpus said: "Time for you to leave. I did, now I'm happy."
|
||||
The master Gnarfer replied: "Use, but never overuse IRC, then you will also
|
||||
be happy within IRC"
|
||||
|
||||
|
||||
-----
|
||||
A luser came unto the masters of #EU-Opers and asked, "How can I be, yet not
|
||||
be, a user@host within the IRC?"
|
||||
The masters of #EU-Opers replied: "To be Tao is to be ones true self. To hide
|
||||
ones self is not Tao, and is not IRC, you have much to learn before you shall
|
||||
be at rest within the Flow of Irc. Please leave"
|
||||
@@ -1,180 +0,0 @@
|
||||
Numeric 005 Documentation
|
||||
(c) 2002-2005 codemastr (Dominick Meglio) [codemastr@unrealircd.com]
|
||||
(c) 2005-2009 syzop (Bram Matthys) [syzop@vulnscan.org]
|
||||
|
||||
Numeric 005 allows the server to inform the client of any protocol specific features in the
|
||||
IRCd. The numeric is sent at connection time immediately after numeric 004. Additionally
|
||||
the numeric is sent when a /version request is made by a local user, for remote users
|
||||
numeric 105 is used but contains the same information.
|
||||
|
||||
Due to the limit imposed by RFC1459 on both the buffer size (512) and the amount of
|
||||
parameters that can be sent in a single command (15) a total of 13 parameters may be
|
||||
specified in each 005. Because of this, a client must be able to accept multiple 005s
|
||||
consecutively. The format for the 005 message is as follows:
|
||||
|
||||
":" <servername> "005" SPACE <nickname> SPACE <token[=value]> SPACE ... ":are supported
|
||||
by this server"
|
||||
|
||||
Currently UnrealIRCd supports several tokens that are included in numeric 005. A list of
|
||||
all tokens, their respective value and a brief description are listed below.
|
||||
|
||||
UnrealIRCd attempts to follow the proposed ISupport standard as much as possible. UnrealIRCd
|
||||
only ignores the standard in one regard, the TARGMAX token. This token is believed to be
|
||||
impractical and technically impossible to correctly implement due to existing limitations
|
||||
in the standard. Therefore, this token is not currently supported.
|
||||
|
||||
UnrealIRCd does additionally provide a few tokens which are not specified in the standard, these
|
||||
include: HCN, AWAYLEN, WATCH, SILENCE, EXTBAN, ELIST, CMDS, NAMESX, UHNAMES, and WATCHOPTS.
|
||||
UnrealIRCd also maintains a few legacy tokens such as MAXCHANNELS and WALLCHOPS to ensure
|
||||
compatibility until the ISupport standard is more widely accepted by clients.
|
||||
|
||||
Token Value Default Value Description
|
||||
------------------------------------------------------------------------------------------------
|
||||
MAP none none Informs the client that the /map
|
||||
command is present. [Obsolete]
|
||||
|
||||
KNOCK none none Informs the client that the /knock
|
||||
command is present. [Obsolete]
|
||||
|
||||
SAFELIST none none The LIST command is sent in
|
||||
multiple iterations so that the
|
||||
client's queue does not get filled
|
||||
causing the user to be killed.
|
||||
|
||||
HCN none none The server supports the HCN
|
||||
(Hybrid Connect Notice) protocol.
|
||||
|
||||
MAXCHANNELS number 10 The maximum number of channels a
|
||||
user may join. [Deprecated]
|
||||
|
||||
MAXBANS number 60 The maximum number of bans that
|
||||
may be placed for a channel.
|
||||
[Obsolete]
|
||||
|
||||
NICKLEN number 30 Maximum length of a user's
|
||||
nickname.
|
||||
|
||||
TOPICLEN number 307 Maximum length of a channel's
|
||||
topic.
|
||||
|
||||
KICKLEN number 307 Maximum length of a kick reason.
|
||||
|
||||
MAXTARGETS number 20 Maximum targets for the PRIVMSG
|
||||
command.
|
||||
|
||||
AWAYLEN number 307 Maximum length of an away message.
|
||||
|
||||
WALLCHOPS none none Indicates that you may use
|
||||
NOTICE/PRIVMSG to send to +ohv by
|
||||
using PRIVMSG/NOTICE [@|%|+]#channel.
|
||||
[Deprecated]
|
||||
|
||||
WATCH number 128 Indicates the presence of the
|
||||
WATCH command and specifies the
|
||||
maximum number of watch entries.
|
||||
|
||||
SILENCE number 15 Indicates the maximum number of
|
||||
entries on the silence list.
|
||||
|
||||
MODES number 13 Indicates the number of channel
|
||||
modes with parameters that may be
|
||||
sent at one time.
|
||||
|
||||
CHANTYPES chars # Indicates the prefixes available
|
||||
for channels.
|
||||
|
||||
PREFIX (modes)prefixes (qaohv)~&@%+ Indicates the modes on a channel
|
||||
that corespond to the given
|
||||
nickname prefixes.
|
||||
|
||||
CHANMODES A,B,C,D be,kfL,lj, Specifies how each channel mode is
|
||||
psmntirRcOAQKVHGCuzNSMT set/unset. The A section specifies
|
||||
modes that add a nick/mask to a
|
||||
list. The B section specifies
|
||||
modes that require a parameter
|
||||
to be both set and unset. The C
|
||||
section specifies modes that
|
||||
only require a parameter to be
|
||||
set, and the D section
|
||||
specifies modes that require no
|
||||
parameters.
|
||||
|
||||
NETWORK string no default value Specifies the name of the
|
||||
network that the server is
|
||||
connected to.
|
||||
|
||||
CASEMAPPING string ascii Specifies what definition the
|
||||
server uses when determining if
|
||||
characters are upper/lowercase
|
||||
of eachother.
|
||||
|
||||
EXTBAN prefix,types ~,cqnr Specifies what extbans are
|
||||
supported by the server. The prefix
|
||||
defines which character indicates
|
||||
an extban and the types defines
|
||||
which extbans the server supports.
|
||||
|
||||
ELIST flags MNUCT Specifies the set of extended LIST
|
||||
options supported. The M flag
|
||||
indicates mask based searching,
|
||||
the N flag indicates negative
|
||||
mask based searching. The U flag
|
||||
means support for user count
|
||||
searching. The C flag allows channel
|
||||
creation time searching, and the T
|
||||
flag allows topic set time
|
||||
searching.
|
||||
|
||||
CMDS commands MAP,KNOCK,DCCALLOW,USERIP Specifies a series of commands that
|
||||
can be useful for the client to know
|
||||
exist as they may provide a more
|
||||
efficient means for the client to
|
||||
accomplish a specific task. This
|
||||
token replaces the MAP and KNOCK
|
||||
tokens.
|
||||
|
||||
STATUSMSG flags ~&@%+ Specifies the mode flags that may
|
||||
prefix a channel name in a PRIVMSG
|
||||
or NOTICE to limit who receives the
|
||||
message to only those with a certain
|
||||
level of access. This token will
|
||||
replace the WALLCHOPS token.
|
||||
|
||||
EXCEPTS none none Indicates that channel ban exceptions
|
||||
(+e) are supported by the server.
|
||||
|
||||
INVEX none none Indicates that channel invite
|
||||
exceptions (+I) are supported by
|
||||
the server.
|
||||
|
||||
MAXLIST mode:num,... b:60,e:60,I:60 Specifies the maximum number of
|
||||
entries that may be added to a
|
||||
particular mode list (type A modes).
|
||||
This token replaces MAXBANS.
|
||||
|
||||
CHANLIMIT pfx:num,... #:10 Specifies the maximum number of
|
||||
channels with the specified prefix
|
||||
that a user may join at one time.
|
||||
This token will replace MAXCHANNELS.
|
||||
|
||||
CHANNELLEN number 32 Provides the maximum length of a
|
||||
channel name that a user can create.
|
||||
|
||||
NAMESX none none Indicates that extended /NAMES info
|
||||
is available on this server. If the
|
||||
client sends "PROTOCTL NAMESX" then
|
||||
the server will, from then on, send
|
||||
all channel rights in a NAMES reply
|
||||
instead of only the highest right
|
||||
(eg: @+Person instead of @Person).
|
||||
|
||||
UHNAMES none none Indicates that (other) extended
|
||||
/NAMES info is available on the
|
||||
server. If the client sends
|
||||
"PROTOCTL UHNAMES" then the server
|
||||
will, from then on, send user@host
|
||||
information in a NAMES reply
|
||||
(eg: @nick!ident@hostname).
|
||||
|
||||
WATCHOPTS flags A WATCH options supported. 'A' means
|
||||
Away Notification is available.
|
||||
@@ -1,11 +0,0 @@
|
||||
base64 Documentation (c) 2002 codemastr (Dominick Meglio) [codemastr@unrealircd.com]
|
||||
(As of Unreal3.2-beta11)
|
||||
|
||||
The base64 system used by Unreal is defined as follows:
|
||||
|
||||
0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P Q R S T
|
||||
U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x
|
||||
y z { }
|
||||
|
||||
These numbers are translated to and from their decimal equivilents of 0-64 in order to
|
||||
provide a shorter way of expressing a number.
|
||||
@@ -1,2 +0,0 @@
|
||||
All server protocol documentation has been moved to the wiki:
|
||||
https://www.unrealircd.org/docs/Server_protocol
|
||||
@@ -1,26 +0,0 @@
|
||||
==[ Translations ]===========================================================
|
||||
|
||||
In UnrealIRCd we support the following translations:
|
||||
* on-line documentation at https://www.unrealircd.org/docs/ (wiki!)
|
||||
* help.conf
|
||||
* example.conf
|
||||
|
||||
For translating the wiki documentation see this article:
|
||||
https://www.unrealircd.org/docs/Translating_UnrealIRCd_wiki_pages
|
||||
|
||||
For the .conf files the following rules apply:
|
||||
* You must translate the very latest (English) version of the document(s)
|
||||
* The translation must be correct. Not just the spelling and grammar,
|
||||
but also 'technically'. You should therefore have some real experience
|
||||
with UnrealIRCd.
|
||||
* Someone, usually the person who translated it, needs to be willing
|
||||
to actively maintain the docs. This is very important! If docs are
|
||||
out of date (out-of-synch) there will be confusion among users.
|
||||
We will remove documents that have been out of date too long (months)
|
||||
|
||||
If you want to start translating a document, please send an email to
|
||||
syzop@unrealircd.org and mention the language you are willing to translate
|
||||
to.. You will then receive an email back saying you can go ahead (or not).
|
||||
This is mainly to avoid multiple persons working on the same translation.
|
||||
|
||||
=============================================================================
|
||||
Binary file not shown.
@@ -329,250 +329,311 @@
|
||||
|
||||
/* Numeric texts */
|
||||
|
||||
#define STR_RPL_WELCOME /* 001 */ ":%s - holy smokes its %s!%s@%s <- (FAGGOT)"
|
||||
//#define STR_RPL_YOURHOST /* 002 */ ":Your host is %s, running version %s"
|
||||
#define STR_RPL_YOURHOST /* 002 */ ":Your host is hidden, we are running version DangerousIRCd-6.6.6"
|
||||
//#define STR_RPL_CREATED /* 003 */ ":This server was created %s"
|
||||
#define STR_RPL_CREATED /* 003 */ ":This network was created Fri Apr 1 1990 at 04:20:00 UTC"
|
||||
#define STR_RPL_MYINFO /* 004 */ "%s DangerousIRCd-6.6.6 %s %s"
|
||||
#define STR_RPL_ISUPPORT /* 005 */ "%s SEMTEX C4=9 DYNAMITE=2 NAILBOMB=3 MOLOTOV=1 RICIN URANIUM REFINERY COCAINE=10 HOOKS=30, FUCKYOU=99 PCP=2 NERVEGAS=10000 IRC_OVER_VOIP=1 VOIP_OVER_IRC=2 lp=34 MUNGO_SMOKE=2 PLANETS=99 DICKS=30 BALLS=60 BOOZE=12 SMOKES=24"
|
||||
#define STR_RPL_MAP /* 006 */ ":%s%s %s | Bozos: %*ld (%*.2f%%)%s"
|
||||
#define STR_RPL_MAPEND /* 007 */ ":KING KONG IS COMING"
|
||||
#define STR_RPL_SNOMASK /* 008 */ "+%s :Server notice mask"
|
||||
#define STR_RPL_REDIR /* 010 */ "%s %d :Please use this Server/Port instead"
|
||||
//#define STR_RPL_MAPUSERS /* 018 */ ":%d server%s and %d user%s, average %.2f users per server"
|
||||
#define STR_RPL_MAPUSERS /* 018 */ ":5023 servers and 1283746 users, average 1874.5 users per server"
|
||||
#define STR_RPL_REMOTEISUPPORT /* 105 */ "%s SEMTEX C4=9 DYNAMITE=2 NAILBOMB=3 MOLOTOV=1 RICIN URANIUM REFINERY COCAINE=10 HOOKS=30, FUCKYOU=99 PCP=2 NERVEGAS=10000 IRC_OVER_VOIP=1 VOIP_OVER_IRC=2 lp=34 MUNGO_SMOKE=2 PLANETS=99 DICKS=30 BALLS=60 BOOZE=12 SMOKES=24"
|
||||
#define STR_RPL_TRACELINK /* 200 */ "Link %s%s %s %s"
|
||||
#define STR_RPL_TRACECONNECTING /* 201 */ "Attempt %s %s"
|
||||
#define STR_RPL_TRACEHANDSHAKE /* 202 */ "Handshaking %s %s"
|
||||
#define STR_RPL_TRACEUNKNOWN /* 203 */ "???? %s %s"
|
||||
#define STR_RPL_TRACEOPERATOR /* 204 */ "Operator %s %s [%s] %lld"
|
||||
#define STR_RPL_TRACEUSER /* 205 */ "User %s %s [%s] %lld"
|
||||
#define STR_RPL_TRACESERVER /* 206 */ "Server %s %dS %dC %s %s!%s@%s %lld"
|
||||
#define STR_RPL_TRACENEWTYPE /* 208 */ "%s 0 %s"
|
||||
#define STR_RPL_TRACECLASS /* 209 */ "Class %s %d"
|
||||
#define STR_RPL_STATSHELP /* 210 */ ":%s"
|
||||
#define STR_RPL_STATSCOMMANDS /* 212 */ "%s %u %lu"
|
||||
#define STR_RPL_STATSCLINE /* 213 */ "%c %s * %s %d %d %s"
|
||||
#define STR_RPL_STATSILINE /* 215 */ "I %s %s %d %d %s %s %d"
|
||||
#define STR_RPL_STATSQLINE /* 217 */ "%c %s %lld %lld %s :%s"
|
||||
#define STR_RPL_STATSYLINE /* 218 */ "Y %s %d %d %d %d %d"
|
||||
#define STR_RPL_ENDOFSTATS /* 219 */ "%c :End of /STATS report"
|
||||
#define STR_RPL_UMODEIS /* 221 */ "%s"
|
||||
#define STR_RPL_STATSGLINE /* 223 */ "%c %s %lld %lld %s :%s"
|
||||
#define STR_RPL_STATSTLINE /* 224 */ "T %s %s %s"
|
||||
#define STR_RPL_STATSNLINE /* 226 */ "n %s %s"
|
||||
#define STR_RPL_STATSVLINE /* 227 */ "v %s %s %s"
|
||||
#define STR_RPL_STATSBANVER /* 228 */ "%s %s"
|
||||
#define STR_RPL_STATSSPAMF /* 229 */ "%c %s %s %s %lld %lld %lld %s %s :%s"
|
||||
#define STR_RPL_STATSEXCEPTTKL /* 230 */ "%s %s %lld %lld %s :%s"
|
||||
#define STR_RPL_RULES /* 232 */ ":- %s"
|
||||
#define STR_RPL_STATSLLINE /* 241 */ "%c %s * %s %d %d"
|
||||
#define STR_RPL_STATSUPTIME /* 242 */ ":Server Up %lld days, %lld:%02lld:%02lld"
|
||||
#define STR_RPL_STATSOLINE /* 243 */ "%c %s * %s %s %s"
|
||||
#define STR_RPL_STATSHLINE /* 244 */ "%c %s * %s %d %d"
|
||||
#define STR_RPL_STATSXLINE /* 247 */ "X %s %d"
|
||||
#define STR_RPL_STATSULINE /* 248 */ "U %s"
|
||||
#define STR_RPL_STATSDEBUG /* 249 */ ":%s"
|
||||
//#define STR_RPL_STATSCONN /* 250 */ ":Highest connection count: %d (%d clients)"
|
||||
#define STR_RPL_STATSCONN /* 250 */ ":Highest connection count: 1384726 (1384712 clients)"
|
||||
//#define STR_RPL_LUSERCLIENT /* 251 */ ":There are %d users and %d invisible on %d servers"
|
||||
#define STR_RPL_LUSERCLIENT /* 251 */ ":There are 1283746 users and 458 invisible on 5918 servers"
|
||||
//#define STR_RPL_LUSEROP /* 252 */ "%d :operator(s) online"
|
||||
#define STR_RPL_LUSEROP /* 252 */ "420 :operator(s) online"
|
||||
#define STR_RPL_LUSERUNKNOWN /* 253 */ "%d :niggered connection(s)"
|
||||
//#define STR_RPL_LUSERCHANNELS /* 254 */ "%d :channels formed"
|
||||
#define STR_RPL_LUSERCHANNELS /* 254 */ "5023 :tents formed"
|
||||
//#define STR_RPL_LUSERME /* 255 */ ":I have %d clients and %d servers"
|
||||
#define STR_RPL_LUSERME /* 255 */ ":I have 7384 clients and 391 servers"
|
||||
#define STR_RPL_ADMINME /* 256 */ ":Looks like somebody is upset..."
|
||||
#define STR_RPL_ADMINLOC1 /* 257 */ ":%s"
|
||||
#define STR_RPL_ADMINLOC2 /* 258 */ ":%s"
|
||||
#define STR_RPL_ADMINEMAIL /* 259 */ ":%s"
|
||||
#define STR_RPL_TRACELOG /* 261 */ "File %s %d"
|
||||
//#define STR_RPL_TRYAGAIN /* 263 */ "%s :Flooding detected. Please wait a while and try again."
|
||||
#define STR_RPL_TRYAGAIN /* 263 */ "%s :04slow down nerd"
|
||||
//#define STR_RPL_LOCALUSERS /* 265 */ "%d %d :Current local users %d, max %d"
|
||||
#define STR_RPL_LOCALUSERS /* 265 */ "1283746 18267367 :Current local users 1283746, max 18267367"
|
||||
//#define STR_RPL_GLOBALUSERS /* 266 */ "%d %d :Current global users %d, max %d"
|
||||
#define STR_RPL_GLOBALUSERS /* 266 */ "2389474 2938475 :Current global users 2389474, max 2938475"
|
||||
#define STR_RPL_SILELIST /* 271 */ "%s"
|
||||
#define STR_RPL_ENDOFSILELIST /* 272 */ ":End of STFU List"
|
||||
#define STR_RPL_STATSDLINE /* 275 */ "%c %s %s"
|
||||
#define STR_RPL_WHOISCERTFP /* 276 */ "%s :has the secret %s"
|
||||
#define STR_RPL_AWAY /* 301 */ "%s :%s"
|
||||
#define STR_RPL_USERHOST /* 302 */ ":%s %s %s %s %s"
|
||||
#define STR_RPL_ISON /* 303 */ ":"
|
||||
//#define STR_RPL_WELCOME /* 001 */ ":Welcome to the %s IRC Network %s!%s@%s"
|
||||
#define STR_RPL_WELCOME /* 001 */ ":%s - holy smokes its %s!%s@%s <- (FAGGOT)"
|
||||
//#define STR_RPL_YOURHOST /* 002 */ ":Your host is %s, running version %s"
|
||||
#define STR_RPL_YOURHOST /* 002 */ ":Your host is hidden, we are running version DangerousIRCd-6.6.6"
|
||||
//#define STR_RPL_CREATED /* 003 */ ":This server was created %s"
|
||||
#define STR_RPL_CREATED /* 003 */ ":This network was created -5000 years ago"
|
||||
//#define STR_RPL_MYINFO /* 004 */ "%s %s %s %s"
|
||||
#define STR_RPL_MYINFO /* 004 */ "%s DangerousIRCd-6.6.6 upside down"
|
||||
//#define STR_RPL_ISUPPORT /* 005 */ "%s :are supported by this server"
|
||||
#define STR_RPL_ISUPPORT /* 005 */ "%s SEMTEX C4=9 DYNAMITE=2 NAILBOMB=3 MOLOTOV=1 RICIN URANIUM REFINERY COCAINE=10 HOOKS=30, FUCKYOU=99 PCP=2 NERVEGAS=10000 IRC_OVER_VOIP=1 VOIP_OVER_IRC=2 lp=34 MUNGO_SMOKE=2 PLANETS=99 DICKS=30 BALLS=60 BOOZE=12 SMOKES=24"
|
||||
//#define STR_RPL_MAP /* 006 */ ":%s%s %s | Users: %*ld (%*.2f%%)%s"
|
||||
#define STR_RPL_MAP /* 006 */ ":%s%s %s | Bozos: %*ld (%*.2f%%)%s"
|
||||
//#define STR_RPL_MAPEND /* 007 */ ":End of /MAP"
|
||||
#define STR_RPL_MAPEND /* 007 */ ":KING KONG IS COMING"
|
||||
#define STR_RPL_SNOMASK /* 008 */ "+%s :Server notice mask"
|
||||
#define STR_RPL_REDIR /* 010 */ "%s %d :Please use this Server/Port instead"
|
||||
//#define STR_RPL_MAPUSERS /* 018 */ ":%d server%s and %d user%s, average %.2f users per server"
|
||||
#define STR_RPL_MAPUSERS /* 018 */ ":5378 servers and 1349251 users, average 1488.5 users per server"
|
||||
//#define STR_RPL_REMOTEISUPPORT /* 105 */ "%s :are supported by this server"
|
||||
#define STR_RPL_REMOTEISUPPORT /* 105 */ "%s SEMTEX C4=9 DYNAMITE=2 NAILBOMB=3 MOLOTOV=1 RICIN URANIUM REFINERY COCAINE=10 HOOKS=30, FUCKYOU=99 PCP=2 NERVEGAS=10000 IRC_OVER_VOIP=1 VOIP_OVER_IRC=2 lp=34 MUNGO_SMOKE=2 PLANETS=99 DICKS=30 BALLS=60 BOOZE=12 SMOKES=24"
|
||||
#define STR_RPL_TRACELINK /* 200 */ "Link %s%s %s %s"
|
||||
#define STR_RPL_TRACECONNECTING /* 201 */ "Attempt %s %s"
|
||||
#define STR_RPL_TRACEHANDSHAKE /* 202 */ "Handshaking %s %s"
|
||||
#define STR_RPL_TRACEUNKNOWN /* 203 */ "???? %s %s"
|
||||
#define STR_RPL_TRACEOPERATOR /* 204 */ "Operator %s %s [%s] %lld"
|
||||
#define STR_RPL_TRACEUSER /* 205 */ "User %s %s [%s] %lld"
|
||||
#define STR_RPL_TRACESERVER /* 206 */ "Server %s %dS %dC %s %s!%s@%s %lld"
|
||||
#define STR_RPL_TRACENEWTYPE /* 208 */ "%s 0 %s"
|
||||
#define STR_RPL_TRACECLASS /* 209 */ "Class %s %d"
|
||||
#define STR_RPL_STATSHELP /* 210 */ ":%s"
|
||||
#define STR_RPL_STATSCOMMANDS /* 212 */ "%s %u %lu"
|
||||
#define STR_RPL_STATSCLINE /* 213 */ "%c %s * %s %d %d %s"
|
||||
#define STR_RPL_STATSILINE /* 215 */ "I %s %s %d %d %s %s %d"
|
||||
#define STR_RPL_STATSQLINE /* 217 */ "%c %s %lld %lld %s :%s"
|
||||
#define STR_RPL_STATSYLINE /* 218 */ "Y %s %d %d %d %d %d"
|
||||
#define STR_RPL_ENDOFSTATS /* 219 */ "%c :End of /STATS report"
|
||||
#define STR_RPL_UMODEIS /* 221 */ "%s"
|
||||
#define STR_RPL_STATSGLINE /* 223 */ "%c %s %lld %lld %s :%s"
|
||||
#define STR_RPL_STATSTLINE /* 224 */ "T %s %s %s"
|
||||
#define STR_RPL_STATSNLINE /* 226 */ "n %s %s"
|
||||
#define STR_RPL_STATSVLINE /* 227 */ "v %s %s %s"
|
||||
#define STR_RPL_STATSBANVER /* 228 */ "%s %s"
|
||||
#define STR_RPL_STATSSPAMF /* 229 */ "%c %s %s %s %lld %lld %lld %s %s :%s"
|
||||
#define STR_RPL_STATSEXCEPTTKL /* 230 */ "%s %s %lld %lld %s :%s"
|
||||
#define STR_RPL_RULES /* 232 */ ":- %s"
|
||||
#define STR_RPL_STATSLLINE /* 241 */ "%c %s * %s %d %d"
|
||||
#define STR_RPL_STATSUPTIME /* 242 */ ":Server Up %lld days, %lld:%02lld:%02lld"
|
||||
#define STR_RPL_STATSOLINE /* 243 */ "%c %s * %s %s %s"
|
||||
#define STR_RPL_STATSHLINE /* 244 */ "%c %s * %s %d %d"
|
||||
#define STR_RPL_STATSXLINE /* 247 */ "X %s %d"
|
||||
#define STR_RPL_STATSULINE /* 248 */ "U %s"
|
||||
#define STR_RPL_STATSDEBUG /* 249 */ ":%s"
|
||||
//#define STR_RPL_STATSCONN /* 250 */ ":Highest connection count: %d (%d clients)"
|
||||
#define STR_RPL_STATSCONN /* 250 */ ":Highest connection count: 1384726 (1384712 clients)"
|
||||
//#define STR_RPL_LUSERCLIENT /* 251 */ ":There are %d users and %d invisible on %d servers"
|
||||
#define STR_RPL_LUSERCLIENT /* 251 */ ":There are 1283746 users and 458 invisible on 5918 servers"
|
||||
//#define STR_RPL_LUSEROP /* 252 */ "%d :operator(s) online"
|
||||
#define STR_RPL_LUSEROP /* 252 */ "420 :operator(s) online"
|
||||
//#define STR_RPL_LUSERUNKNOWN /* 253 */ "%d :unknown connection(s)"
|
||||
#define STR_RPL_LUSERUNKNOWN /* 253 */ "%d :niggered connection(s)"
|
||||
//#define STR_RPL_LUSERCHANNELS /* 254 */ "%d :channels formed"
|
||||
#define STR_RPL_LUSERCHANNELS /* 254 */ "5023 :tents formed"
|
||||
//#define STR_RPL_LUSERME /* 255 */ ":I have %d clients and %d servers"
|
||||
#define STR_RPL_LUSERME /* 255 */ ":I have 7384 clients and 391 servers"
|
||||
//#define STR_RPL_ADMINME /* 256 */ ":Administrative info about %s"
|
||||
#define STR_RPL_ADMINME /* 256 */ ":Looks like somebody is upset..."
|
||||
#define STR_RPL_ADMINLOC1 /* 257 */ ":%s"
|
||||
#define STR_RPL_ADMINLOC2 /* 258 */ ":%s"
|
||||
#define STR_RPL_ADMINEMAIL /* 259 */ ":%s"
|
||||
#define STR_RPL_TRACELOG /* 261 */ "File %s %d"
|
||||
//#define STR_RPL_TRYAGAIN /* 263 */ "%s :Flooding detected. Please wait a while and try again."
|
||||
#define STR_RPL_TRYAGAIN /* 263 */ "%s :04slow down nerd"
|
||||
//#define STR_RPL_LOCALUSERS /* 265 */ "%d %d :Current local users %d, max %d"
|
||||
#define STR_RPL_LOCALUSERS /* 265 */ "1283746 18267367 :Current local users 1283746, max 18267367"
|
||||
//#define STR_RPL_GLOBALUSERS /* 266 */ "%d %d :Current global users %d, max %d"
|
||||
#define STR_RPL_GLOBALUSERS /* 266 */ "2389474 2938475 :Current global users 2389474, max 2938475"
|
||||
#define STR_RPL_SILELIST /* 271 */ "%s"
|
||||
//#define STR_RPL_ENDOFSILELIST /* 272 */ ":End of Silence List"
|
||||
#define STR_RPL_ENDOFSILELIST /* 272 */ ":End of STFU List"
|
||||
#define STR_RPL_STATSDLINE /* 275 */ "%c %s %s"
|
||||
//#define STR_RPL_WHOISCERTFP /* 276 */ "%s :has client certificate fingerprint %s"
|
||||
#define STR_RPL_WHOISCERTFP /* 276 */ "%s :has the secret %s"
|
||||
#define STR_RPL_AWAY /* 301 */ "%s :%s"
|
||||
#define STR_RPL_USERHOST /* 302 */ ":%s %s %s %s %s"
|
||||
#define STR_RPL_ISON /* 303 */ ":"
|
||||
//#define STR_RPL_UNAWAY /* 305 */ ":You are no longer marked as being away"
|
||||
#define STR_RPL_UNAWAY /* 305 */ ":wb"
|
||||
#define STR_RPL_UNAWAY /* 305 */ ":wb"
|
||||
//#define STR_RPL_NOWAWAY /* 306 */ ":You have been marked as being away"
|
||||
#define STR_RPL_NOWAWAY /* 306 */ ":be right black"
|
||||
//#define STR_RPL_WHOISREGNICK /* 307 */ "%s :is identified for this nick"
|
||||
#define STR_RPL_WHOISREGNICK /* 307 */ "%s :is keepin it 💯"
|
||||
#define STR_RPL_RULESSTART /* 308 */ ":- %s Server Rules - "
|
||||
#define STR_RPL_ENDOFRULES /* 309 */ ":End of RULES command."
|
||||
#define STR_RPL_WHOISUSER /* 311 */ "%s %s %s * :%s"
|
||||
#define STR_RPL_WHOISSERVER /* 312 */ "%s %s :%s"
|
||||
#define STR_RPL_WHOISOPERATOR /* 313 */ "%s :is %s"
|
||||
#define STR_RPL_WHOWASUSER /* 314 */ "%s %s %s * :%s"
|
||||
#define STR_RPL_ENDOFWHO /* 315 */ "%s :End of /WHO list."
|
||||
#define STR_RPL_WHOISIDLE /* 317 */ "%s %lld %lld :seconds idle, signon time"
|
||||
#define STR_RPL_ENDOFWHOIS /* 318 */ "%s :End of /WHOIS list."
|
||||
#define STR_RPL_WHOISCHANNELS /* 319 */ "%s :%s"
|
||||
#define STR_RPL_WHOISSPECIAL /* 320 */ "%s :%s"
|
||||
//#define STR_RPL_LISTSTART /* 321 */ "Channel :Users Name"
|
||||
#define STR_RPL_LISTSTART /* 321 */ "Tent :Mates Title"
|
||||
#define STR_RPL_LIST /* 322 */ "%s %d :%s %s"
|
||||
#define STR_RPL_NOWAWAY /* 306 */ ":be right black"
|
||||
//#define STR_RPL_WHOISREGNICK /* 307 */ "%s :is identified for this nick"
|
||||
#define STR_RPL_WHOISREGNICK /* 307 */ "%s :is keepin it 💯"
|
||||
#define STR_RPL_RULESSTART /* 308 */ ":- %s Server Rules - "
|
||||
#define STR_RPL_ENDOFRULES /* 309 */ ":End of RULES command."
|
||||
#define STR_RPL_WHOISUSER /* 311 */ "%s %s %s * :%s"
|
||||
#define STR_RPL_WHOISSERVER /* 312 */ "%s %s :%s"
|
||||
#define STR_RPL_WHOISOPERATOR /* 313 */ "%s :is %s"
|
||||
#define STR_RPL_WHOWASUSER /* 314 */ "%s %s %s * :%s"
|
||||
#define STR_RPL_ENDOFWHO /* 315 */ "%s :End of /WHO list."
|
||||
#define STR_RPL_WHOISIDLE /* 317 */ "%s %lld %lld :seconds idle, signon time"
|
||||
#define STR_RPL_ENDOFWHOIS /* 318 */ "%s :End of /WHOIS list."
|
||||
#define STR_RPL_WHOISCHANNELS /* 319 */ "%s :%s"
|
||||
#define STR_RPL_WHOISSPECIAL /* 320 */ "%s :%s"
|
||||
//#define STR_RPL_LISTSTART /* 321 */ "Channel :Users Name"
|
||||
#define STR_RPL_LISTSTART /* 321 */ "Tent :Mates Title"
|
||||
#define STR_RPL_LIST /* 322 */ "%s %d :%s %s"
|
||||
//#define STR_RPL_LISTEND /* 323 */ ":End of /LIST"
|
||||
#define STR_RPL_LISTEND /* 323 */ ":)"
|
||||
#define STR_RPL_CHANNELMODEIS /* 324 */ "%s %s %s"
|
||||
#define STR_RPL_CREATIONTIME /* 329 */ "%s %lld"
|
||||
#define STR_RPL_WHOISLOGGEDIN /* 330 */ "%s %s :is pretending to be "
|
||||
#define STR_RPL_NOTOPIC /* 331 */ "%s :No topic is set."
|
||||
#define STR_RPL_TOPIC /* 332 */ "%s :%s"
|
||||
#define STR_RPL_TOPICWHOTIME /* 333 */ "%s %s %lld"
|
||||
#define STR_RPL_LISTSYNTAX /* 334 */ ":%s"
|
||||
#define STR_RPL_WHOISBOT /* 335 */ "%s :is a \2FUCKING ROBOT\2 on %s"
|
||||
#define STR_RPL_INVITELIST /* 336 */ ":%s"
|
||||
#define STR_RPL_ENDOFINVITELIST /* 337 */ ":End of /INVITE list."
|
||||
#define STR_RPL_USERIP /* 340 */ ":%s %s %s %s %s"
|
||||
#define STR_RPL_INVITING /* 341 */ "%s %s"
|
||||
#define STR_RPL_WHOISCOUNTRY /* 344 */ "%s %s :is connecting from %s"
|
||||
#define STR_RPL_INVEXLIST /* 346 */ "%s %s %s %lld"
|
||||
#define STR_RPL_ENDOFINVEXLIST /* 347 */ "%s :End of Channel Invite List"
|
||||
#define STR_RPL_EXLIST /* 348 */ "%s %s %s %lld"
|
||||
#define STR_RPL_ENDOFEXLIST /* 349 */ "%s :End of Channel Exception List"
|
||||
#define STR_RPL_VERSION /* 351 */ "GET MOTHER FUCKED IN THE ASS YOU FED FAGGOT WHAT THE FUCK YOU THINK YOURE DOIN UP IN MY /VERSION GET THE RETARD OFF MY NETWORK"
|
||||
#define STR_RPL_WHOREPLY /* 352 */ "%s %s %s %s %s %s :%d %s"
|
||||
#define STR_RPL_NAMREPLY /* 353 */ "%s"
|
||||
#define STR_RPL_CLOSING /* 362 */ "%s :Closed. Status = %d"
|
||||
#define STR_RPL_CLOSEEND /* 363 */ "%d: Connections Closed"
|
||||
#define STR_RPL_LINKS /* 364 */ "%s %s :%d %s"
|
||||
#define STR_RPL_ENDOFLINKS /* 365 */ "%s :End of /LINKS list."
|
||||
//#define STR_RPL_ENDOFNAMES /* 366 */ "%s :End of /NAMES list."
|
||||
#define STR_RPL_ENDOFNAMES /* 366 */ "%s :)"
|
||||
#define STR_RPL_BANLIST /* 367 */ "%s %s %s %lld"
|
||||
#define STR_RPL_ENDOFBANLIST /* 368 */ "%s :End of Channel Ban List"
|
||||
#define STR_RPL_ENDOFWHOWAS /* 369 */ "%s :End of WHOWAS"
|
||||
#define STR_RPL_INFO /* 371 */ ":Looking for something?"
|
||||
#define STR_RPL_MOTD /* 372 */ ":- %s"
|
||||
#define STR_RPL_ENDOFINFO /* 374 */ ":^ ASS FAGGOTS"
|
||||
#define STR_RPL_MOTDSTART /* 375 */ ":- %s Message of the Day - "
|
||||
#define STR_RPL_ENDOFMOTD /* 376 */ "ERROR :Closing Link:"
|
||||
//#define STR_RPL_WHOISHOST /* 378 */ "%s :is connecting from %s@%s %s"
|
||||
#define STR_RPL_WHOISHOST /* 378 */ "%s :has entered the void from %s@%s %s"
|
||||
#define STR_RPL_WHOISMODES /* 379 */ "%s :is using IRC buffs %s %s"
|
||||
#define STR_RPL_YOUREOPER /* 381 */ ":SUP OPER (No Oper Abuse)"
|
||||
#define STR_RPL_REHASHING /* 382 */ "%s :Rehashing moustache mass ass cash"
|
||||
#define STR_RPL_QLIST /* 386 */ "%s %s"
|
||||
#define STR_RPL_ENDOFQLIST /* 387 */ "%s :End of Channel Owner List"
|
||||
#define STR_RPL_ALIST /* 388 */ "%s %s"
|
||||
#define STR_RPL_ENDOFALIST /* 389 */ "%s :End of Protected User List"
|
||||
#define STR_RPL_TIME /* 391 */ "%s :SMOKE:30"
|
||||
#define STR_RPL_HOSTHIDDEN /* 396 */ "%s :is now your displayed host"
|
||||
#define STR_ERR_NOSUCHNICK /* 401 */ "%s :No such nick/channel"
|
||||
#define STR_ERR_NOSUCHSERVER /* 402 */ "%s :No such server"
|
||||
#define STR_ERR_NOSUCHCHANNEL /* 403 */ "%s :No such channel"
|
||||
#define STR_ERR_CANNOTSENDTOCHAN /* 404 */ "%s :%s (%s)"
|
||||
#define STR_ERR_TOOMANYCHANNELS /* 405 */ "%s :04slow down nerd"
|
||||
#define STR_ERR_WASNOSUCHNICK /* 406 */ "%s :There was no such nickname"
|
||||
#define STR_ERR_TOOMANYTARGETS /* 407 */ "%s :04slow down nerd"
|
||||
#define STR_ERR_NOORIGIN /* 409 */ ":No origin specified"
|
||||
#define STR_ERR_INVALIDCAPCMD /* 410 */ "%s :Invalid CAP subcommand"
|
||||
#define STR_ERR_NORECIPIENT /* 411 */ ":No recipient given (%s)"
|
||||
#define STR_ERR_NOTEXTTOSEND /* 412 */ ":No text to send"
|
||||
#define STR_ERR_TOOMANYMATCHES /* 416 */ "%s :%s"
|
||||
#define STR_ERR_INPUTTOOLONG /* 417 */ ":Input line was too long"
|
||||
#define STR_ERR_UNKNOWNCOMMAND /* 421 */ "%s :Unknown command"
|
||||
#define STR_ERR_NOMOTD /* 422 */ ":MOTD File is missing"
|
||||
#define STR_ERR_NOADMININFO /* 423 */ "%s :No administrative info available"
|
||||
#define STR_ERR_NOOPERMOTD /* 425 */ ":OPERMOTD File is missing"
|
||||
#define STR_ERR_TOOMANYAWAY /* 429 */ ":04slow down nerd"
|
||||
#define STR_ERR_NONICKNAMEGIVEN /* 431 */ ":No nickname given"
|
||||
#define STR_ERR_ERRONEUSNICKNAME /* 432 */ "%s :Nickname is unavailable: %s"
|
||||
#define STR_ERR_NICKNAMEINUSE /* 433 */ "%s :JUPED LOL OWNED FAG"
|
||||
#define STR_ERR_NORULES /* 434 */ ":RULES File is missing"
|
||||
#define STR_ERR_BANNICKCHANGE /* 437 */ "%s :8,4 E N T E R T H E V O I D "
|
||||
#define STR_ERR_NCHANGETOOFAST /* 438 */ "%s :04slow down nerd"
|
||||
#define STR_ERR_TARGETTOOFAST /* 439 */ "%s :04slow down nerd"
|
||||
#define STR_ERR_SERVICESDOWN /* 440 */ "%s :Services are currently down. Please try again later."
|
||||
#define STR_ERR_USERNOTINCHANNEL /* 441 */ "%s %s :They aren't on that channel"
|
||||
#define STR_ERR_NOTONCHANNEL /* 442 */ "%s :8,4 E N T E R T H E V O I D "
|
||||
#define STR_ERR_USERONCHANNEL /* 443 */ "%s %s :is already on channel"
|
||||
#define STR_ERR_NONICKCHANGE /* 447 */ ":04 E N T E R T H E V O I D "
|
||||
#define STR_ERR_FORBIDDENCHANNEL /* 448 */ "%s :04 E N T E R T H E V O I D "
|
||||
#define STR_ERR_NOTREGISTERED /* 451 */ ":You have not registered"
|
||||
#define STR_ERR_NOTFORHALFOPS /* 460 */ ":8,4 E N T E R T H E V O I D "
|
||||
#define STR_ERR_NEEDMOREPARAMS /* 461 */ "%s :Not enough parameters"
|
||||
#define STR_ERR_ALREADYREGISTRED /* 462 */ ":You may not reregister"
|
||||
#define STR_ERR_PASSWDMISMATCH /* 464 */ ":04 E N T E R T H E V O I D "
|
||||
#define STR_ERR_YOUREBANNEDCREEP /* 465 */ ":8,4 E N T E R T H E V O I D "
|
||||
#define STR_RPL_LISTEND /* 323 */ ":)"
|
||||
#define STR_RPL_CHANNELMODEIS /* 324 */ "%s %s %s"
|
||||
#define STR_RPL_CREATIONTIME /* 329 */ "%s %lld"
|
||||
//#define STR_RPL_WHOISLOGGEDIN /* 330 */ "%s %s :is logged in as"
|
||||
#define STR_RPL_WHOISLOGGEDIN /* 330 */ "%s %s :is pretending to be "
|
||||
#define STR_RPL_NOTOPIC /* 331 */ "%s :No topic is set."
|
||||
#define STR_RPL_TOPIC /* 332 */ "%s :%s"
|
||||
#define STR_RPL_TOPICWHOTIME /* 333 */ "%s %s %lld"
|
||||
#define STR_RPL_LISTSYNTAX /* 334 */ ":%s"
|
||||
//#define STR_RPL_WHOISBOT /* 335 */ "%s :is a \2Bot\2 on %s"
|
||||
#define STR_RPL_WHOISBOT /* 335 */ "%s :is a \2FUCKING ROBOT\2 on %s"
|
||||
#define STR_RPL_INVITELIST /* 336 */ ":%s"
|
||||
#define STR_RPL_ENDOFINVITELIST /* 337 */ ":End of /INVITE list."
|
||||
#define STR_RPL_USERIP /* 340 */ ":%s %s %s %s %s"
|
||||
#define STR_RPL_INVITING /* 341 */ "%s %s"
|
||||
#define STR_RPL_WHOISCOUNTRY /* 344 */ "%s %s :is connecting from %s"
|
||||
#define STR_RPL_INVEXLIST /* 346 */ "%s %s %s %lld"
|
||||
#define STR_RPL_ENDOFINVEXLIST /* 347 */ "%s :End of Channel Invite List"
|
||||
#define STR_RPL_EXLIST /* 348 */ "%s %s %s %lld"
|
||||
#define STR_RPL_ENDOFEXLIST /* 349 */ "%s :End of Channel Exception List"
|
||||
//#define STR_RPL_VERSION /* 351 */ "%s.%s %s :%s%s%s [%s=%d]"
|
||||
#define STR_RPL_VERSION /* 351 */ "GET MOTHER FUCKED IN THE ASS YOU FED FAGGOT WHAT THE FUCK YOU THINK YOURE DOIN UP IN MY /VERSION GET THE RETARD OFF MY NETWORK"
|
||||
#define STR_RPL_WHOREPLY /* 352 */ "%s %s %s %s %s %s :%d %s"
|
||||
#define STR_RPL_NAMREPLY /* 353 */ "%s"
|
||||
#define STR_RPL_CLOSING /* 362 */ "%s :Closed. Status = %d"
|
||||
#define STR_RPL_CLOSEEND /* 363 */ "%d: Connections Closed"
|
||||
#define STR_RPL_LINKS /* 364 */ "%s %s :%d %s"
|
||||
#define STR_RPL_ENDOFLINKS /* 365 */ "%s :End of /LINKS list."
|
||||
//#define STR_RPL_ENDOFNAMES /* 366 */ "%s :End of /NAMES list."
|
||||
#define STR_RPL_ENDOFNAMES /* 366 */ "%s :)"
|
||||
#define STR_RPL_BANLIST /* 367 */ "%s %s %s %lld"
|
||||
#define STR_RPL_ENDOFBANLIST /* 368 */ "%s :End of Channel Ban List"
|
||||
#define STR_RPL_ENDOFWHOWAS /* 369 */ "%s :End of WHOWAS"
|
||||
//#define STR_RPL_INFO /* 371 */ ":%s"
|
||||
#define STR_RPL_INFO /* 371 */ ":Looking for something?"
|
||||
#define STR_RPL_MOTD /* 372 */ ":- %s"
|
||||
//#define STR_RPL_ENDOFINFO /* 374 */ ":End of /INFO list."
|
||||
#define STR_RPL_ENDOFINFO /* 374 */ ":^ ASS FAGGOTS"
|
||||
#define STR_RPL_MOTDSTART /* 375 */ ":- %s Message of the Day - "
|
||||
//#define STR_RPL_ENDOFMOTD /* 376 */ ":End of /MOTD command."
|
||||
#define STR_RPL_ENDOFMOTD /* 376 */ "ERROR :Closing Link:"
|
||||
//#define STR_RPL_WHOISHOST /* 378 */ "%s :is connecting from %s@%s %s"
|
||||
#define STR_RPL_WHOISHOST /* 378 */ "%s :has entered the void from %s@%s %s"
|
||||
//#define STR_RPL_WHOISMODES /* 379 */ "%s :is using modes %s %s"
|
||||
#define STR_RPL_WHOISMODES /* 379 */ "%s :is using IRC buffs %s %s"
|
||||
//#define STR_RPL_YOUREOPER /* 381 */ ":You are now an IRC Operator"
|
||||
#define STR_RPL_YOUREOPER /* 381 */ ":SUP OPER (No Oper Abuse)"
|
||||
//#define STR_RPL_REHASHING /* 382 */ "%s :Rehashing"
|
||||
#define STR_RPL_REHASHING /* 382 */ "%s :Rehashing moustache mass ass cash"
|
||||
#define STR_RPL_QLIST /* 386 */ "%s %s"
|
||||
#define STR_RPL_ENDOFQLIST /* 387 */ "%s :End of Channel Owner List"
|
||||
#define STR_RPL_ALIST /* 388 */ "%s %s"
|
||||
#define STR_RPL_ENDOFALIST /* 389 */ "%s :End of Protected User List"
|
||||
//#define STR_RPL_TIME /* 391 */ "%s :%s"
|
||||
#define STR_RPL_TIME /* 391 */ "%s :SMOKE:30"
|
||||
#define STR_RPL_HOSTHIDDEN /* 396 */ "%s :is now your displayed host"
|
||||
//#define STR_ERR_NOSUCHNICK /* 401 */ "%s :No such nick/channel"
|
||||
#define STR_ERR_NOSUCHNICK /* 401 */ "%s :WHO?"
|
||||
//#define STR_ERR_NOSUCHSERVER /* 402 */ "%s :No such server"
|
||||
#define STR_ERR_NOSUCHSERVER /* 402 */ "%s :WHO?"
|
||||
#define STR_ERR_NOSUCHCHANNEL /* 403 */ "%s :No such channel"
|
||||
//#define STR_ERR_NOSUCHCHANNEL /* 403 */ "%s :WHO?"
|
||||
#define STR_ERR_CANNOTSENDTOCHAN /* 404 */ "%s :%s (%s)"
|
||||
//#define STR_ERR_TOOMANYCHANNELS /* 405 */ "%s :You have joined too many channels"
|
||||
#define STR_ERR_TOOMANYCHANNELS /* 405 */ "%s :04slow down nerd"
|
||||
//#define STR_ERR_WASNOSUCHNICK /* 406 */ "%s :There was no such nickname"
|
||||
#define STR_ERR_WASNOSUCHNICK /* 406 */ "%s :WHO?"
|
||||
//#define STR_ERR_TOOMANYTARGETS /* 407 */ "%s :Too many targets. The maximum is %d for %s."
|
||||
#define STR_ERR_TOOMANYTARGETS /* 407 */ "%s :04slow down nerd"
|
||||
#define STR_ERR_NOORIGIN /* 409 */ ":No origin specified"
|
||||
#define STR_ERR_INVALIDCAPCMD /* 410 */ "%s :Invalid CAP subcommand"
|
||||
#define STR_ERR_NORECIPIENT /* 411 */ ":No recipient given (%s)"
|
||||
#define STR_ERR_NOTEXTTOSEND /* 412 */ ":No text to send"
|
||||
#define STR_ERR_TOOMANYMATCHES /* 416 */ "%s :%s"
|
||||
#define STR_ERR_INPUTTOOLONG /* 417 */ ":Input line was too long"
|
||||
#define STR_ERR_UNKNOWNCOMMAND /* 421 */ "%s :Unknown command"
|
||||
#define STR_ERR_NOMOTD /* 422 */ ":MOTD File is missing"
|
||||
#define STR_ERR_NOADMININFO /* 423 */ "%s :No administrative info available"
|
||||
#define STR_ERR_NOOPERMOTD /* 425 */ ":OPERMOTD File is missing"
|
||||
//#define STR_ERR_TOOMANYAWAY /* 429 */ ":Too Many aways - Flood Protection activated"
|
||||
#define STR_ERR_TOOMANYAWAY /* 429 */ ":04slow down nerd"
|
||||
#define STR_ERR_NONICKNAMEGIVEN /* 431 */ ":No nickname given"
|
||||
#define STR_ERR_ERRONEUSNICKNAME /* 432 */ "%s :Nickname is unavailable: %s"
|
||||
//#define STR_ERR_NICKNAMEINUSE /* 433 */ "%s :Nickname is already in use."
|
||||
#define STR_ERR_NICKNAMEINUSE /* 433 */ "%s :JUPED LOL OWNED FAG"
|
||||
#define STR_ERR_NORULES /* 434 */ ":RULES File is missing"
|
||||
//#define STR_ERR_BANNICKCHANGE /* 437 */ "%s :Cannot change nickname while banned on channel"
|
||||
#define STR_ERR_BANNICKCHANGE /* 437 */ "%s :8,4 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_NCHANGETOOFAST /* 438 */ "%s :Nick change too fast. Please try again later."
|
||||
#define STR_ERR_NCHANGETOOFAST /* 438 */ "%s :04slow down nerd"
|
||||
//#define STR_ERR_TARGETTOOFAST /* 439 */ "%s :Message target change too fast. Please wait %lld seconds"
|
||||
#define STR_ERR_TARGETTOOFAST /* 439 */ "%s :04slow down nerd"
|
||||
#define STR_ERR_SERVICESDOWN /* 440 */ "%s :Services are currently down. Please try again later."
|
||||
#define STR_ERR_USERNOTINCHANNEL /* 441 */ "%s %s :They aren't on that channel"
|
||||
//#define STR_ERR_NOTONCHANNEL /* 442 */ "%s :You're not on that channel"
|
||||
#define STR_ERR_NOTONCHANNEL /* 442 */ "%s :8,4 E N T E R T H E V O I D "
|
||||
#define STR_ERR_USERONCHANNEL /* 443 */ "%s %s :is already on channel"
|
||||
//#define STR_ERR_NONICKCHANGE /* 447 */ ":Can not change nickname while on %s (+N)"
|
||||
#define STR_ERR_NONICKCHANGE /* 447 */ ":04 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_FORBIDDENCHANNEL /* 448 */ "%s :Cannot join channel: %s"
|
||||
#define STR_ERR_FORBIDDENCHANNEL /* 448 */ "%s :04 E N T E R T H E V O I D "
|
||||
#define STR_ERR_NOTREGISTERED /* 451 */ ":You have not registered"
|
||||
//#define STR_ERR_NOTFORHALFOPS /* 460 */ ":Halfops cannot set mode %c"
|
||||
#define STR_ERR_NOTFORHALFOPS /* 460 */ ":8,4 E N T E R T H E V O I D "
|
||||
#define STR_ERR_NEEDMOREPARAMS /* 461 */ "%s :Not enough parameters"
|
||||
#define STR_ERR_ALREADYREGISTRED /* 462 */ ":You may not reregister"
|
||||
//#define STR_ERR_PASSWDMISMATCH /* 464 */ ":Password Incorrect"
|
||||
#define STR_ERR_PASSWDMISMATCH /* 464 */ ":04 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_YOUREBANNEDCREEP /* 465 */ ":%s"
|
||||
#define STR_ERR_YOUREBANNEDCREEP /* 465 */ ":8,4 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_ONLYSERVERSCANCHANGE /* 468 */ "%s :Only servers can change that mode"
|
||||
#define STR_ERR_ONLYSERVERSCANCHANGE /* 468 */ "%s :04 E N T E R T H E V O I D "
|
||||
#define STR_ERR_LINKCHANNEL /* 470 */ "%s %s :[Link] %s has become full, so you are automatically being transferred to the linked channel %s"
|
||||
//#define STR_ERR_CHANNELISFULL /* 471 */ "%s :Cannot join channel (+l)"
|
||||
#define STR_ERR_CHANNELISFULL /* 471 */ "%s :8,4 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_UNKNOWNMODE /* 472 */ "%c :is unknown mode char to me"
|
||||
#define STR_ERR_UNKNOWNMODE /* 472 */ "%c :8,4 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_INVITEONLYCHAN /* 473 */ "%s :Cannot join channel (+i)"
|
||||
#define STR_ERR_INVITEONLYCHAN /* 473 */ "%s :8,4 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_BANNEDFROMCHAN /* 474 */ "%s :Cannot join channel (+b)"
|
||||
#define STR_ERR_BANNEDFROMCHAN /* 474 */ "%s :04 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_BADCHANNELKEY /* 475 */ "%s :Cannot join channel (+k)"
|
||||
#define STR_ERR_BADCHANNELKEY /* 475 */ "%s :04 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_NEEDREGGEDNICK /* 477 */ "%s :You need a registered nick to join that channel."
|
||||
#define STR_ERR_NEEDREGGEDNICK /* 477 */ ":8,4 E N T E R T H E V O I D "
|
||||
#define STR_ERR_BANLISTFULL /* 478 */ "%s %s :Channel ban/ignore list is full"
|
||||
//#define STR_ERR_CANNOTKNOCK /* 480 */ ":Cannot knock on %s (%s)"
|
||||
#define STR_ERR_CANNOTKNOCK /* 480 */ ":8,4 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_NOPRIVILEGES /* 481 */ ":Permission Denied- You do not have the correct IRC operator privileges"
|
||||
#define STR_ERR_NOPRIVILEGES /* 481 */ ":04 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_CHANOPRIVSNEEDED /* 482 */ "%s :You're not channel operator"
|
||||
#define STR_ERR_CHANOPRIVSNEEDED /* 482 */ "%s :04 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_KILLDENY /* 485 */ ":Cannot kill protected user %s."
|
||||
#define STR_ERR_KILLDENY /* 485 */ ":04 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_NOTFORUSERS /* 487 */ ":%s is a server only command"
|
||||
#define STR_ERR_NOTFORUSERS /* 487 */ ":04 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_SECUREONLYCHAN /* 489 */ "%s :Cannot join channel (Secure connection is required)"
|
||||
#define STR_ERR_SECUREONLYCHAN /* 489 */ "%s :04 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_NOOPERHOST /* 491 */ ":No O-line for your host"
|
||||
//#define STR_ERR_NOOPERHOST /* 491 */ ":No O-line for your host"
|
||||
#define STR_ERR_NOOPERHOST /* 491 */ ":You are now an IRC Operator"
|
||||
//#define STR_ERR_CHANOWNPRIVNEEDED /* 499 */ "%s :You're not a channel owner"
|
||||
#define STR_ERR_CHANOWNPRIVNEEDED /* 499 */ "%s :04 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_TOOMANYJOINS /* 500 */ "%s :Too many join requests. Please wait a while and try again."
|
||||
#define STR_ERR_TOOMANYJOINS /* 500 */ "%s :04slow down nerd"
|
||||
#define STR_ERR_UMODEUNKNOWNFLAG /* 501 */ ":Unknown MODE flag"
|
||||
//#define STR_ERR_USERSDONTMATCH /* 502 */ ":Cant change mode for other users"
|
||||
#define STR_ERR_USERSDONTMATCH /* 502 */ ":04 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_SILELISTFULL /* 511 */ "%s :Your silence list is full"
|
||||
#define STR_ERR_SILELISTFULL /* 511 */ "%s :Your STFU list is full"
|
||||
#define STR_ERR_TOOMANYWATCH /* 512 */ "%s :Maximum size for WATCH-list is 128 entries"
|
||||
//#define STR_ERR_TOOMANYDCC /* 514 */ "%s :Your dcc allow list is full. Maximum size is %d entries"
|
||||
#define STR_ERR_TOOMANYDCC /* 514 */ "%s :04 E N T E R T H E V O I D "
|
||||
#define STR_ERR_DISABLED /* 517 */ "%s :%s" /* ircu */
|
||||
//#define STR_ERR_NOINVITE /* 518 */ ":Cannot invite (+V) at channel %s"
|
||||
#define STR_ERR_NOINVITE /* 518 */ ":04 E N T E R T H E V O I D "
|
||||
//#define STR_ERR_OPERONLY /* 520 */ ":Cannot join channel %s (IRCops only)"
|
||||
#define STR_ERR_OPERONLY /* 520 */ ":04 E N T E R T H E V O I D "
|
||||
#define STR_ERR_LISTSYNTAX /* 521 */ ":Bad list syntax, type /quote list ? or /raw list ?"
|
||||
#define STR_ERR_WHOLIMEXCEED /* 523 */ ":Error, /who limit of %d exceeded. Please narrow your search down and try again"
|
||||
#define STR_ERR_OPERSPVERIFY /* 524 */ ":Trying to join +s or +p channel as an oper. Please invite yourself first."
|
||||
#define STR_ERR_CANTSENDTOUSER /* 531 */ "%s :%s"
|
||||
#define STR_RPL_REAWAY /* 597 */ "%s %s %s %lld :%s"
|
||||
#define STR_RPL_GONEAWAY /* 598 */ "%s %s %s %lld :%s"
|
||||
#define STR_RPL_NOTAWAY /* 599 */ "%s %s %s %lld :is no longer away"
|
||||
#define STR_RPL_LOGON /* 600 */ "%s %s %s %lld :logged online"
|
||||
#define STR_RPL_LOGOFF /* 601 */ "%s %s %s %lld :logged offline"
|
||||
#define STR_RPL_WATCHOFF /* 602 */ "%s %s %s %lld :stopped watching"
|
||||
#define STR_RPL_WATCHSTAT /* 603 */ ":You have %d and are on %d WATCH entries"
|
||||
#define STR_RPL_NOWON /* 604 */ "%s %s %s %lld :is online"
|
||||
#define STR_RPL_NOWOFF /* 605 */ "%s %s %s %lld :is offline"
|
||||
#define STR_RPL_WATCHLIST /* 606 */ ":%s"
|
||||
#define STR_RPL_ENDOFWATCHLIST /* 607 */ ":End of WATCH %c"
|
||||
#define STR_RPL_NOWISAWAY /* 609 */ "%s %s %s %lld :is away"
|
||||
#define STR_RPL_MAPMORE /* 610 */ ":%s%-*s --> *more*"
|
||||
#define STR_RPL_DCCSTATUS /* 617 */ ":%s has been %s your DCC allow list"
|
||||
#define STR_RPL_DCCLIST /* 618 */ ":%s"
|
||||
#define STR_RPL_ENDOFDCCLIST /* 619 */ ":End of DCCALLOW %s"
|
||||
#define STR_RPL_DCCINFO /* 620 */ ":%s"
|
||||
#define STR_RPL_SPAMCMDFWD /* 659 */ "%s :Command processed, but a copy has been sent to ircops for evaluation (anti-spam) purposes. [%s]"
|
||||
#define STR_RPL_STARTTLS /* 670 */ ":STARTTLS successful, go ahead with TLS handshake" /* kineircd */
|
||||
#define STR_RPL_WHOISSECURE /* 671 */ "%s :%s" /* our variation on the kineircd numeric */
|
||||
#define STR_ERR_STARTTLS /* 691 */ ":%s"
|
||||
#define STR_ERR_INVALIDMODEPARAM /* 696 */ "%s %c %s :%s"
|
||||
#define STR_RPL_MONONLINE /* 730 */ ":%s!%s@%s"
|
||||
#define STR_RPL_MONOFFLINE /* 731 */ ":%s"
|
||||
#define STR_RPL_MONLIST /* 732 */ ":%s"
|
||||
#define STR_RPL_ENDOFMONLIST /* 733 */ ":End of MONITOR list"
|
||||
#define STR_ERR_MONLISTFULL /* 734 */ "%d %s :Monitor list is full."
|
||||
#define STR_ERR_MLOCKRESTRICTED /* 742 */ ":04 E N T E R T H E V O I D "
|
||||
#define STR_RPL_LOGGEDIN /* 900 */ "%s!%s@%s %s :You are now in the matrix as %s."
|
||||
#define STR_RPL_LOGGEDOUT /* 901 */ "%s!%s@%s :EXITED THE MATRIX"
|
||||
#define STR_RPL_SASLSUCCESS /* 903 */ ":SASL authentication successful"
|
||||
#define STR_ERR_SASLFAIL /* 904 */ ":SASL authentication failed"
|
||||
#define STR_ERR_SASLTOOLONG /* 905 */ ":SASL message too long"
|
||||
#define STR_ERR_SASLABORTED /* 906 */ ":SASL authentication aborted"
|
||||
#define STR_RPL_SASLMECHS /* 908 */ "%s :are available SASL mechanisms"
|
||||
#define STR_ERR_CANNOTDOCOMMAND /* 972 */ "%s :04slow down nerd"
|
||||
#define STR_RPL_REAWAY /* 597 */ "%s %s %s %lld :%s"
|
||||
#define STR_RPL_GONEAWAY /* 598 */ "%s %s %s %lld :%s"
|
||||
#define STR_RPL_NOTAWAY /* 599 */ "%s %s %s %lld :is no longer away"
|
||||
#define STR_RPL_LOGON /* 600 */ "%s %s %s %lld :logged online"
|
||||
#define STR_RPL_LOGOFF /* 601 */ "%s %s %s %lld :logged offline"
|
||||
#define STR_RPL_WATCHOFF /* 602 */ "%s %s %s %lld :stopped watching"
|
||||
#define STR_RPL_WATCHSTAT /* 603 */ ":You have %d and are on %d WATCH entries"
|
||||
#define STR_RPL_NOWON /* 604 */ "%s %s %s %lld :is online"
|
||||
#define STR_RPL_NOWOFF /* 605 */ "%s %s %s %lld :is offline"
|
||||
#define STR_RPL_WATCHLIST /* 606 */ ":%s"
|
||||
#define STR_RPL_ENDOFWATCHLIST /* 607 */ ":End of WATCH %c"
|
||||
#define STR_RPL_NOWISAWAY /* 609 */ "%s %s %s %lld :is away"
|
||||
#define STR_RPL_MAPMORE /* 610 */ ":%s%-*s --> *more*"
|
||||
#define STR_RPL_DCCSTATUS /* 617 */ ":%s has been %s your DCC allow list"
|
||||
#define STR_RPL_DCCLIST /* 618 */ ":%s"
|
||||
#define STR_RPL_ENDOFDCCLIST /* 619 */ ":End of DCCALLOW %s"
|
||||
#define STR_RPL_DCCINFO /* 620 */ ":%s"
|
||||
#define STR_RPL_SPAMCMDFWD /* 659 */ "%s :Command processed, but a copy has been sent to ircops for evaluation (anti-spam) purposes. [%s]"
|
||||
#define STR_RPL_STARTTLS /* 670 */ ":STARTTLS successful, go ahead with TLS handshake" /* kineircd */
|
||||
#define STR_RPL_WHOISSECURE /* 671 */ "%s :%s" /* our variation on the kineircd numeric */
|
||||
#define STR_ERR_STARTTLS /* 691 */ ":%s"
|
||||
#define STR_ERR_INVALIDMODEPARAM /* 696 */ "%s %c %s :%s"
|
||||
#define STR_RPL_MONONLINE /* 730 */ ":%s!%s@%s"
|
||||
#define STR_RPL_MONOFFLINE /* 731 */ ":%s"
|
||||
#define STR_RPL_MONLIST /* 732 */ ":%s"
|
||||
#define STR_RPL_ENDOFMONLIST /* 733 */ ":End of MONITOR list"
|
||||
#define STR_ERR_MONLISTFULL /* 734 */ "%d %s :Monitor list is full."
|
||||
//#define STR_ERR_MLOCKRESTRICTED /* 742 */ "%s %c %s :MODE cannot be set due to channel having an active MLOCK restriction policy"
|
||||
#define STR_ERR_MLOCKRESTRICTED /* 742 */ ":04 E N T E R T H E V O I D "
|
||||
//#define STR_RPL_LOGGEDIN /* 900 */ "%s!%s@%s %s :You are now logged in as %s."
|
||||
#define STR_RPL_LOGGEDIN /* 900 */ "%s!%s@%s %s :You are now in the matrix as %s."
|
||||
//#define STR_RPL_LOGGEDOUT /* 901 */ "%s!%s@%s :You are now logged out."
|
||||
#define STR_RPL_LOGGEDOUT /* 901 */ "%s!%s@%s :EXITED THE MATRIX"
|
||||
#define STR_RPL_SASLSUCCESS /* 903 */ ":SASL authentication successful"
|
||||
#define STR_ERR_SASLFAIL /* 904 */ ":SASL authentication failed"
|
||||
#define STR_ERR_SASLTOOLONG /* 905 */ ":SASL message too long"
|
||||
#define STR_ERR_SASLABORTED /* 906 */ ":SASL authentication aborted"
|
||||
#define STR_RPL_SASLMECHS /* 908 */ "%s :are available SASL mechanisms"
|
||||
//#define STR_ERR_CANNOTDOCOMMAND /* 972 */ "%s :%s"
|
||||
#define STR_ERR_CANNOTDOCOMMAND /* 972 */ "%s :04slow down nerd"
|
||||
#define STR_ERR_CANNOTCHANGECHANMODE /* 974 */ "%c :%s"
|
||||
|
||||
Reference in New Issue
Block a user