1
0
mirror of https://github.com/unrealircd/unrealircd.git synced 2026-06-20 03:44:47 +02:00

6799 Commits

Author SHA1 Message Date
Bram Matthys 779a427fc7 Updates for new repository name of test framework. 2019-08-18 09:58:24 +02:00
Bram Matthys 6044323d03 Add dot in UNREAL_VERSION_SUFFIX. 2019-07-07 15:39:23 +02:00
Bram Matthys e133b21703 UnrealIRCd 4.2.4.1 2019-07-07 15:05:59 +02:00
Bram Matthys 96ee7083c8 Customizing set::ssl::outdated-protocols and set::ssl::outdated-ciphers
was not possible since the configuration code was missing.
Reported by HeXiLeD in https://bugs.unrealircd.org/view.php?id=5327
2019-07-07 14:57:15 +02:00
Bram Matthys 755ef5b052 Debian 10 effectively overrides our set::ssl::protocols settings
causing UnrealIRCd to only accept SSL/TLS 1.2 and later connections.
We now use SSL_CTX_set_min_proto_version() to set the minimum
protocol version to fix this, only to disable specific SSL/TLS
versions later on via the old API.
It's great that they disabled SSL/TLS <1.2 by default and we have
already been considering doing the same in 2020, laying the
groundwork via set::ssl::outdated-protocols in February 2019.
However, such a chance is unexpected during UnrealIRCd 4.x.
2019-07-07 10:41:55 +02:00
Bram Matthys 8babe4db3f UnrealIRCd 4.2.4 2019-06-30 08:22:15 +02:00
Bram Matthys 58f8943069 More Windows fixes/workarounds.. 2019-06-30 08:10:17 +02:00
Bram Matthys 332135e5b3 Change set::ident::read-timeout from 30 to 15 seconds since otherwise
it exceeds set::handshake-timeout which would be very unfortunate for
those (few) poor users that are affected by this.
2019-06-29 18:49:36 +02:00
Bram Matthys eae47eac5f Fix bug where the Windows version only accepts very few clients. 2019-06-29 17:20:06 +02:00
Bram Matthys 12e1faf417 Fix m_sinfo not marked as an official module. 2019-06-29 16:26:01 +02:00
Bram Matthys f8de9ec78e Windows: duh, update version number there too. 2019-06-29 16:11:17 +02:00
Bram Matthys dc9880ce1e * The Windows version should warn and not error if using old-style regex. 2019-06-29 15:56:53 +02:00
Bram Matthys ac94ef3c85 Preparations for UnrealIRCd 4.2.4 2019-06-29 15:53:40 +02:00
Bram Matthys ce38423b42 Silently force a 'make clean' as otherwise part (or whole) of the
compiled source could be using different settings than the user
just requested when re-running ./Config.
2019-06-16 10:15:57 +02:00
Bram Matthys 06df7cba70 Add new ./configure option (last question at ./Config): --enable-asan
This will enable AddressSanitizer which can be used to catch bugs.
It's only meant for (3rd party module) developers or if you are having
crash issues. On production servers it is not recommended, as it
consumes 3-4 times more memory and incurs a slowdown of about x2.
2019-05-12 15:30:00 +02:00
Bram Matthys 4981bf472c Bump reputation version from 1.0.1 to 1.2 2019-05-11 14:17:45 +02:00
Bram Matthys 3a0d8fc06c Fix another reputation issue: reputation not showing in WHOIS when
a remote user has just connected (could take up to 5 minutes) and
a fix required for previous commit for connthrottle.
2019-05-11 14:15:52 +02:00
Bram Matthys 7a7266bc2f Bump connthrottle version from 1.1 to 1.2 2019-05-11 14:02:42 +02:00
Bram Matthys 64c8096361 Fix connthrottle module counting non-local connecting registered users
always as new users (regardless of reputation), causing the protection
to kick in too quickly for the poor new users. This was noticeable
after for example one server died and new users reconnecting massively
to the remaining servers. Reported by Lord.
2019-05-11 13:58:07 +02:00
Bram Matthys 9f8e73dca7 Make CAP commands case sensitive.
Suggested by Koragg in https://bugs.unrealircd.org/view.php?id=5263
2019-05-10 08:57:16 +02:00
Bram Matthys 872ebca6fa Don't forward PASS to services if the user is already logged in via SASL.
Reported by westor in https://bugs.unrealircd.org/view.php?id=5264
2019-05-10 08:49:40 +02:00
Vitor Luis 92ceb129da Helpop update (#81)
Update help.conf with soft actions and changed *:Lines to be *-Lines which goes more accordingly with the new rewording in UnrealIRCd IRC messages.
2019-05-04 14:45:33 +02:00
Bram Matthys b0d3476176 HELPOP: Update MKPASSWD documentation 2019-05-04 13:47:07 +02:00
Bram Matthys 09d31d8ded Enhance WHOX->WHO auto-conversion for +s serv.er.name, reported by k4be. 2019-05-03 13:15:17 +02:00
Bram Matthys 8a6cbfaaf0 Show linking error messages if these happen during the handshake and we
have already fully authenticated the server (but when it technically is
not fully linked as a server yet, eg post-EAUTH but pre-SERVER).

Also, send ERRORs to junk snomask from untrusted sources. After all,
the junk snomask is precisely there to enable briefly to debug issues.
In case of link errors we always advice to check BOTH sides of the link
as an IRCOp, and this advice still stands. This may just help a little
for people who do not follow our advice.
2019-05-02 09:30:15 +02:00
Bram Matthys 5b63d28e2a Improve error messages in case of failed server linking due to mixed
password types (eg: plaintext on one side, spkifp on the other side).
Refer to https://www.unrealircd.org/docs/FAQ#auth-fail-mixed

Also, unrelated to the above, don't say "Bad password?" if the
password type is not of type plaintext, since it would be confusing.
2019-05-02 08:55:22 +02:00
Bram Matthys 377fa25244 UnrealIRCd 4.2.3 2019-04-30 09:23:44 +02:00
Bram Matthys f9bbeaa6ca [nopost] Send these harmless kill messages to the junk snomask.
Nowadays these are pretty much never proxy attacks. Only scanners and
crawlers trying HTTP commands on IRC connections.. which isn't even that
weird anymore since people tend to open up port 443 for SSL/TLS IRC
to bypass firewall restrictions.
2019-04-28 12:12:53 +02:00
Bram Matthys d3f061bbd9 Updates to example.tr.conf and help.tr.conf by Serkan
[skip ci]
2019-04-28 11:48:11 +02:00
Bram Matthys 8bbc136a66 Updates to help.tr.conf by Serkan 2019-04-27 12:51:27 +02:00
Bram Matthys cc15cd63de [reputation] Disable benchmark, config error should be warning. 2019-04-25 09:56:35 +02:00
Bram Matthys 9bd4f25af5 Handle FLUSH_BUFFER gracefully (only matters in rare cases, such
as in the case of malformed server traffic).
2019-04-22 14:37:37 +02:00
Bram Matthys 15ea9a9347 UnrealIRCd 4.2.3-rc1 2019-04-22 08:25:26 +02:00
Bram Matthys d6e285bdfc AppVeyor: replace wget with curl, since wget mysteriously fails.
[skip travis]
2019-04-22 07:42:04 +02:00
Bram Matthys b1944284bd Trace appveyor issue...
[skip travis]
2019-04-22 07:33:16 +02:00
Bram Matthys 1ada6c09f1 Make clang happy 2019-04-22 07:28:05 +02:00
Bram Matthys 4234400e22 Add 'reputation' and 'connthrottle' modules to fight drones.
See https://www.unrealircd.org/docs/Connthrottle
2019-04-22 07:11:25 +02:00
Bram Matthys 81e2099f7b We already checked for the openssl library but if the openssl binary was
not found then this was not treated as a fatal error. Now it is, since
you will fail later in the installation process when a certificate file
is being made (resulting in mysterious 'req: command not found' errors).
Also, improve the error message both for the missing openssl library
and openssl binary case.
2019-04-15 18:56:11 +02:00
Bram Matthys f3bd95fa42 Create some preliminary release notes.
[skip ci]
2019-04-14 14:12:06 +02:00
Bram Matthys 2ba65ed35c Move previous release notes to doc/RELEASE-NOTES.old
[skip ci]
2019-04-14 13:47:11 +02:00
Bram Matthys 11c6604aeb Print out clear warning/error if using an old spamfilter.conf.
For example for Windows users, or for *NIX users where the automated
patching of the spamfilter.conf did not work.
I've tried to make the error message as clear and big as possible
and the wiki article as clear as possible as to what the user needs
to do. Not much more I can do.... :)
2019-04-14 13:45:11 +02:00
Bram Matthys 4e75af79fa 'make install' will now upgrade the spamfilter.conf examples from
'posix' to 'regex' if the user is using the exact same spamfilter.conf
that shipped with UnrealIRCd 4.x until now. Otherwise, we do not
update anything. Also, custom spamfilters in this file are not touched.
Let's hope this will apply to most of our users to ensure that they
will have no or less issues with the 'posix' to 'regex' conversion
process.
2019-04-14 13:01:31 +02:00
Bram Matthys 3ba5153362 Abort when using list functions on structs with incorrect order.
This is mostly to guard 3rd party module writers against making
such a mistake. Up to now such a mistake would silently corrupt
memory without warning or error. That is, until you crashed :D.
2019-04-14 11:01:20 +02:00
Bram Matthys 570c59b2b2 Bump UNREAL_VERSION_TIME.
[skip ci]
2019-04-12 11:01:15 +02:00
Bram Matthys 3aa5048300 Improve error message if someone uses set::something literally in the
configuration file.
Also, make (global)'unknown directive' errors fatal, as they should be.
2019-04-07 17:09:12 +02:00
Bram Matthys 9d7354147d Add two blacklist blocks in example conf: DroneBL and EFnet RBL. 2019-04-05 21:06:50 +02:00
Bram Matthys 5c30d1af6d * Badword blocks now use PCRE2 if using regex at all (rare,
usually the fast badwords system is used instead)
* Code deduplication in src/modules/{chanmodes,usermodes}/censor.c
  to src/match.c -- which may be moved later again to efuncs.
* Add --without-tre:
  This means USE_TRE will be enabled by default right now
  but if using --without-tre it will be undef'ed. This so we
  can prepare for the TRE phase-out in 2020.
* Remove include/badwords.h, put contents in include/struct.h
2019-04-05 18:19:23 +02:00
Bram Matthys 9e69cd722d Remove unused regex support in antirandom 2019-04-05 16:27:07 +02:00
Bram Matthys 422f76a723 Fix very minor memleak introduced about 2-3 weeks ago. 2019-04-04 19:24:23 +02:00
Bram Matthys f111b5c1ad Update spamfilter.conf: convert some to 'simple' matchers and make clear
that these are just old examples from the year 2005.
Also, no longer include spamfilter.conf from the example*conf by
default as they do not contain any useful spamfilters nowadays.
2019-04-04 18:31:59 +02:00
Bram Matthys 05c4cb5e8f Replace match-type 'posix' with 'regex' in example spamfilter.conf.
Note that I should probably check if they still work now.. ;)
2019-04-02 21:04:40 +02:00
Bram Matthys 83372cc2c8 Bump example.conf server sendq from 5M to 20M. 2019-04-02 20:34:39 +02:00
Bram Matthys bd05cf8e58 Stop accepting /SPAMFILTER add -posix. You should really use PCRE2 by now.
Similarly, raise a warning for spamfilter { } blocks in the configuration
with match-type 'posix'.
See: https://www.unrealircd.org/docs/FAQ#spamfilter-posix-deprecated
2019-04-02 20:33:03 +02:00
Bram Matthys ee342d9b84 Re-indent set_mode and use new paracount_for_chanmode(). 2019-03-27 16:59:42 +01:00
Bram Matthys 8b222a1ed2 -Wno-empty-body 2019-03-27 14:00:35 +01:00
Bram Matthys b2307af8ec Get rid of "unknown option -Wno-invalid-source-encoding" warning when there
is another warning being triggered.
-copy paste comment from configure.ac-
We check for the -Woption even though we are going to use -Wno-option.
This is due to the following (odd) gcc behavior:
"When an unrecognized warning option is requested (e.g.,
 -Wunknown-warning), GCC emits a diagnostic stating that the option is not
 recognized.  However, if the -Wno- form is used, the behavior is slightly
 different: no diagnostic is produced for -Wno-unknown-warning unless
 other diagnostics are being produced.  This allows the use of new -Wno-
 options with old compilers, but if something goes wrong, the compiler
 warns that an unrecognized option is present."
Since we don't want to use any unrecognized -Wno-option, we test for
-Woption instead.
2019-03-27 13:44:29 +01:00
Bram Matthys e7de6cf3a4 Fix compile issue and report error when unable to write to pid file
(data/unrealircd.pid by default).
2019-03-27 13:26:30 +01:00
Bram Matthys dd2af3b31c Enable additional compiler warnings. Update code to conform to these
new standards, possible to compile with -Werror with them.
2019-03-27 09:03:30 +01:00
Bram Matthys 5a38d8ed75 Fix misleading indentation. 2019-03-25 18:37:05 +01:00
Bram Matthys 6d3a98653e The maximum number of clients (MAXCONNECTIONS) no longer defaults to 1024.
The new question in ./Config now defaults to 'auto' (both for new installs
and for upgrades). You can still specify a manual limit but it is no longer
recommended.
A MAXCONNECTIONS of 'auto' means - at present - that UnrealIRCd will try
to set a limit of 8192. This is quite a bump from the original 1024.
On systems where this is not possible we will simply use the highest amount
possible, such as 4096 on many systems, or 1024.
In fact, we now no longer error when MAXCONNECTIONS is higher than the
'ulimit -n' limit but will adjust ourselves to the limit.
Only if the effective limit is below 100 we will print out a fatal error
since running in such a scenario is highly discouraged.
The reason for this change is that nowadays with drone attacks we may need
to be able to handle more concurrent sockets. Also, many Linux distro's
have a default setting of unlimited or 4096 nowadays, out of the box.

For people packaging UnrealIRCd (not end-users):
The ./configure --with-fd-setsize=xx option was removed and the
optional(!!) --with-maxconnections=xx option has been added.
We recommend you NOT to pass this option. Not passing it means that
the previously mentioned 'auto' mode will be used, which is likely
best for most users.

Module coders:
Although it is unlikely you accessed the 'MAXCLIENTS' variable,
if you did, it is now called 'maxclients' (lowercase) since it is
adjusted at runtime and no longer a macro.
2019-03-25 15:43:26 +01:00
Bram Matthys ad173cc5d0 Ignore join flood check in channel mode +f when the server just booted.
This new option is called set::modef-boot-delay (default: 75 seconds).
See https://www.unrealircd.org/docs/Set_block#set::modef-boot-delay
2019-03-25 13:27:28 +01:00
Bram Matthys 5b20716e9b [cleanup] floodprot: move set::modef-* handling from core to module. 2019-03-25 13:10:03 +01:00
Bram Matthys 6c837d3ce4 Cleanup _test_operclass config code. 2019-03-25 09:33:59 +01:00
Bram Matthys 9ca53369e7 Lots of config code checks for "if (!cep->ce_varname)" however this is a
condition that will never happen, as it is already handled by the parser.
2019-03-25 09:21:15 +01:00
Bram Matthys 15d77298fe Empty blacklist::dns::type could lead to a crash (config file error).
All the rest are things that "will never happen" or dead code.
2019-03-25 09:04:31 +01:00
Bram Matthys 4490b8744e Use HAVE_RLIMIT instead of FORCE_CORE. And get rid of error message. 2019-03-24 15:50:56 +01:00
Bram Matthys a9b3e05b0c Brain damage 2019-03-24 15:22:02 +01:00
Bram Matthys b3e9d391d8 More updates to api-command, remove old functions such as del_Command(). 2019-03-24 15:18:41 +01:00
Bram Matthys e19639a1bd Fix compile problem #ifndef DEBUGMODE 2019-03-24 15:13:34 +01:00
Bram Matthys 59e3a42304 For the function declaration of command overrides, module coders are now
encouraged to use CMD_OVERRIDE_FUNC(override_xyz) rather than declaring
the function themselves. This works similar to CMD_FUNC(somecmd).
Example:
/* Forward declaration */
CMD_OVERRIDE_FUNC(override_xyz);
[..]
MOD_LOAD(somemodule)
{
	CmdoverrideAdd(modinfo->module, "XYZ", override_xyz);
[..]
CMD_OVERRIDE_FUNC(override_xyz)
{
	/* Do something useful here */
2019-03-24 08:27:26 +01:00
Bram Matthys 60952328f0 Add function type checking in CommandAdd()
And, for aliases, now use AliasAdd(), CommandAdd() is no longer permitted
for it. Do any modules use this?
2019-03-24 08:16:45 +01:00
Bram Matthys f9db29b768 Smart.. moving code to a separate function resulting in the use
of sizeof() on a char *...
2019-03-24 07:48:08 +01:00
Bram Matthys cb60bf286d Get rid of this useless DLLFUNC junk. This is only needed for symbols
that need to be visible from the outside of the .DLL (symbol export).
Long story short: you never need to use this yourself in a module.
Where needed it is already handled by UnrealIRCd.
2019-03-23 19:53:12 +01:00
Bram Matthys edfc832aa8 Some minor code cleanups, use CMD_FUNC() where possible. 2019-03-23 19:45:34 +01:00
Bram Matthys 7bcf419eda Add references to the technical S2S documentation
@skip-ci
2019-03-23 19:39:56 +01:00
Bram Matthys e4ddc80c2a Code cleanup: m_protoctl. Has always been ugly, just was never bothered
enough to clean it up. Also, remove PROTOCTL -<option> support, which is
not used by anything and was only supported on a handful of options
anyway. Also remove some debugging and PROTOCTL_MADNESS.
Finally, add a reference to the technical documentation.
2019-03-23 19:23:10 +01:00
Bram Matthys a11ee2b1a2 Skip * in PROTOCTL SERVERS=. This probably caused a bug which could be
triggered by doing quick server connects (crossing requests), something
that the PROTOCTL SERVERS= code is supposed to prevent (it should be
safe to connect to X servers at the same time, even every second).
2019-03-23 19:04:59 +01:00
Bram Matthys 5992a759f7 return 0.. 2019-03-23 18:44:00 +01:00
Bram Matthys ab50bf2afc Communicate server featureset (and changes) across server links.
Previously various information was only available for directly attached
servers, since it is communicated via PROTOCTL.
Now, we will also communicate information about leafs behind us.
IRCOps can use the /SINFO command to see these server features.
Services codes don't need to do anything, or at least are not expected
to do anything. They can still receive the information and do something
with it, of course...
Read the following technical documentation for full information,
as it will outline very specific rules for using the command S2S:
https://www.unrealircd.org/docs/Server_protocol:SINFO_command
2019-03-23 17:56:59 +01:00
Bram Matthys 335a7569bb Bugs like this can keep you occupied for a while:
safestrdup(somevar, s+10);
..always caused somevar to be NULL :D.
2019-03-17 20:16:21 +01:00
Bram Matthys 7ad6b15e92 It would be nice if expired TKL's actually get removed (duh).
Caused by fac1e30b91 from March 3, 2019.
2019-03-15 16:34:30 +01:00
Bram Matthys 761ae02935 Change assert() to if..!...abort() so it produces proper core dumps.
Yeah, that's how it works, unfortunately.
2019-03-15 16:03:48 +01:00
Bram Matthys fd73739847 Handle SSL_ERROR_WANT_READ in a better way. 2019-03-10 15:00:45 +01:00
Bram Matthys 872830bdf2 I give up. Test framework will no longer run on Travis-CI, ruby is broken. 2019-03-09 15:38:08 +01:00
Bram Matthys b396dc3c20 .. 2019-03-09 15:33:31 +01:00
Bram Matthys f47dc78418 . 2019-03-09 15:31:48 +01:00
Bram Matthys 2c114d458e ............................... 2019-03-09 15:27:46 +01:00
Bram Matthys f039e08f0b Travis-CI + ruby = .... 2019-03-09 15:17:31 +01:00
Bram Matthys e0a4e7fe71 Travis-CI: :/ 2019-03-09 15:05:47 +01:00
Bram Matthys 2e79c34c11 Travis-CI: more diagnostics 2019-03-09 11:59:33 +01:00
Bram Matthys 99b379fca8 Travis-CI: :( 2019-03-09 11:47:18 +01:00
Bram Matthys 584f3e9d6d Travis-CI: argh argh 2019-03-09 11:32:27 +01:00
Bram Matthys 20550981f8 Travis-CI: argh! 2019-03-09 11:12:55 +01:00
Bram Matthys 5d69fe9d93 Missing return NULL in find_tkline_match_zap_matcher (due to commit from
a few days ago)
2019-03-09 10:23:19 +01:00
Bram Matthys ad063ba36a Fix ./unrealircd spkifp complaining that it could not find the certificate
file if you specified a relative path. Until now only absolute paths worked.
Bug reported by CrazyCat.
2019-03-08 09:32:05 +01:00
Bram Matthys fac1e30b91 Major TKL speed improvements. 2019-03-03 20:25:05 +01:00
Bram Matthys 87c81e7e9f This fsync() call slows things down too much at high connection rates. 2019-03-03 19:03:05 +01:00
Bram Matthys 41c1f01011 Bump version to 4.2.3-dev to make clear that this git version is under development. 2019-03-03 17:14:09 +01:00
Bram Matthys 16659de0b2 Changing set::anti-flood::invite-flood had no effect. It was always 4:60.
Reported by Betaman2k in https://bugs.unrealircd.org/view.php?id=5222
2019-03-03 14:16:49 +01:00
Bram Matthys 766055d5c0 Fix set::ban-setter and set::topic-setter being set to nick-user-host
out of the blue. The classic C mistake where = instead of == was written
in an if statement... duh.
2019-03-02 08:49:47 +01:00
Bram Matthys de1548de73 UnrealIRCd 4.2.2. 2019-03-01 14:38:44 +01:00
Bram Matthys f599ea02cb WHO(X) auto-conversion bug regarding 'a' and 'c' which no longer exist
in WHOX.
2019-03-01 14:34:43 +01:00
Bram Matthys d068cd41ca Fix crash in websocket module. 2019-03-01 14:10:06 +01:00
Bram Matthys d7e5ff82f0 Update curl-ca-bundle.crt (Wed Jan 23 04:12:09 2019 GMT) 2019-03-01 13:57:35 +01:00
Bram Matthys e16e2b36d8 UnrealIRCd 4.2.2-rc2 2019-02-11 09:19:38 +01:00
Bram Matthys c6f01aa3f1 Protect 2 more commands against rogue server to server traffic. 2019-02-11 08:47:51 +01:00
Bram Matthys 294560f944 KILL: Not sure if this fixes anything but at least it's less cryptic. 2019-02-10 17:30:39 +01:00
Bram Matthys 9a0bd31cf8 Fix unlikely crash if you had a spamfilter targetting away that was
only local (so in .conf) and it hit a remote user.
Also, re-indent this monster...
2019-02-10 17:09:48 +01:00
Bram Matthys 1dbef111fb Fix crash if receiving malformed server to server traffic (from an
authenticated server): TKL deleting a spamfilter with insufficient
parameters.
2019-02-10 17:08:47 +01:00
Bram Matthys 1f03dbdd05 CHGNAME and SETNAME: if a remote user used a realname that was banned
on this server then we could possibly crash. (Fortunately most networks
use the same ban realname blocks on all their servers)
2019-02-10 14:54:28 +01:00
Bram Matthys 3712fad891 When a server does not use SID's, set empty id as before.
This bug was post-rc1, caused by dde8f914fb.
2019-02-10 14:48:29 +01:00
Bram Matthys 7e444d3b9f Fix SJOIN bug in rc1: was using an incorrect buffer when SJSBY was
not used, such as in a mixed version scenario.
2019-02-10 14:43:34 +01:00
Bram Matthys 77d3e844dc Fix a bunch of REHASH memory leaks. 2019-02-10 10:36:20 +01:00
Bram Matthys 7d5c3a1b68 Fix hang/crash due to commit from yesterday, reported by k4be.
(cause: dde8f914fb)
2019-02-10 09:56:53 +01:00
Bram Matthys c7f00edd9d Quicker handshake when using many CAP requests and/or AUTHENTICATE.
I was wondering why the handshake took 4 seconds for a client which
authenticates using SASL. Turns out that fake lag was kicking in due
to the many "CAP req" commands combined with the other handshake stuff.
Now the first 15 (or so) "CAP" requests are "free", without fake lag.
2019-02-09 16:47:24 +01:00
Bram Matthys 78cd122a05 Allow SASL post-registration. Unfortunately the anope unreal4 protocol
module also requires an update to support this.
2019-02-09 14:39:34 +01:00
Bram Matthys dde8f914fb Internal: make UID available early (pre-auth). 2019-02-09 14:35:48 +01:00
Bram Matthys a740570710 Fix crash bug (in rc1 only) if ::ssl-options are being used and the
outdated SSL protocols/ciphers are being checked.
2019-02-08 12:02:52 +01:00
Bram Matthys 9c0f1f3505 Fix OOB read in m_whox.
Strange order for a compare, first the 2nd byte, then the 1st byte ;)
Anyway, this issue can only be triggered since rc1, no big issue.
2019-02-06 19:31:10 +01:00
Bram Matthys e443182573 UnrealIRCd 4.2.2-rc1 2019-02-06 16:00:38 +01:00
Bram Matthys 988f64e3b3 Fix crash when linking (caused by commit from 4 days ago). 2019-02-06 12:54:37 +01:00
Bram Matthys f92a6fec79 Release notes: clarify flood limit in older versions
@skip-ci
2019-02-06 12:17:47 +01:00
Bram Matthys 70a9a6f6b2 Added INVITE and KNOCK flood protection (command rate limiting).
set::anti-flood::invite-flood defaults to 4 per 60 seconds.
set::anti-flood::knock-flood defaults to 4 per 120 seconds.
2019-02-06 12:00:51 +01:00
Bram Matthys 57f97a5a43 Removed a debugging message and fixed TARGMAX being broken after a REHASH. 2019-02-06 09:24:31 +01:00
Bram Matthys 1e1f750b44 New set::max-targets-per-command which configures the maximum number
of targets accepted for a command, eg /MSG nick1,nick2,nick3,nick4 hi.
Also changed the following defaults (previously hardcoded):
* PRIVMSG from 20 to 4 targets, to counter /amsg spam
* NOTICE from 20 to 1 target, to counter /anotice spam
* KICK from 1 to 4 targets, to make it easier for channel operators
  to quickly kick a large amount of spambots
See https://www.unrealircd.org/docs/Set_block#set::max-targets-per-command

(actually still need to write the documentation)
2019-02-04 17:51:09 +01:00
Bram Matthys 1e6d8ea536 Fix compile problem due to previous commit. 2019-02-04 14:42:17 +01:00
Bram Matthys 9f4296d648 New set::anti-flood::max-concurrent-conversations which configures the
maximum number of conversations a user can have with other users at the
same time. Until now this was hardcoded at limiting /MSG and /INVITE to
20 different users in a 15 second period. The new default is 10 users,
which serves as a protection measure against spambots.
See https://www.unrealircd.org/docs/Set_block#maxcc for more details.
2019-02-04 09:52:08 +01:00
Bram Matthys 7153468081 UnrealIRCd will now warn if your ulines { } are matching UnrealIRCd servers.
See https://www.unrealircd.org/docs/FAQ#WARNING:_Bad_ulines
2019-02-02 08:44:14 +01:00
Bram Matthys be50ef4a1e Get rid of warning on-boot "Channel modes changed at runtime" 2019-02-02 07:53:07 +01:00
Bram Matthys f9415e1a91 m_whox: now accept and transform most classic UnrealIRCd WHO requests
such as "WHO +s serv.er.name" to "WHO serv.er.name s".
It also does advanced transformation such as "WHO -m z" to "WHO -z m"
**copy paste from comment in code**
Flag a: user is away                                            << no longer exists
Flag c <channel>: user is on <channel>                          << no longer exists
Flag g <gcos/realname>: user has string <gcos> in his/her GCOS  << now called 'r'
Flag h <host>: user has string <host> in his/her hostname       << no change
Flag i <ip>: user has string <ip> in his/her IP address         << no change
Flag m <usermodes>: user has <usermodes> set                    << behavior change
Flag n <nick>: user has string <nick> in his/her nickname       << no change
Flag s <server>: user is on server <server>                     << no change
Flag u <user>: user has string <user> in his/her username       << no change
Behavior flags:
Flag M: check for user in channels I am a member of             << no longer exists
Flag R: show users' real hostnames                              << no change (re-added)
Flag I: show users' IP addresses                                << no change (re-added)
**end of paste**
Of course we cannot convert 100% from classic UnrealIRCd WHO to WHOX-style
because things like "WHO +m r" could mean either "search for +m in realname" (WHOX)
or "search for +r in modes" (classic). In cases like this we assume WHOX, so to not
break any WHOX compatibility.

Added matchers: 'R' (show real host) and 'I' (show IP)

This code will need more testing, both by classic WHO and by WHOX users...
2019-02-01 17:46:59 +01:00
Bram Matthys eecd29bdc8 WHOX: adaptions for UnrealIRCd part 1:
* No longer require a ! prefix for ircops to see users
* "WHO *" is no longer different than the rest
  (previously in m_whox would only list users on 1st channel)
Neither is part of the WHOX specs.
2019-02-01 15:21:53 +01:00
Bram Matthys 52e72c2ed9 Update reference to RELEASE-NOTES.old (link used wrong branch) 2019-02-01 14:27:07 +01:00
Bram Matthys 1790efd05d The message sent to users upon *LINE can now be adjusted completely via
set::reject-message::kline and set::reject-message::gline.
See https://www.unrealircd.org/docs/Set_block#set::reject-message
Suggested by k4be in https://bugs.unrealircd.org/view.php?id=5198
2019-02-01 14:25:52 +01:00
Bram Matthys ff9ca3c8ef Add 005 token DEAF=d 2019-01-31 17:47:06 +01:00
Bram Matthys a999b305a5 Remove 005 CMDS= token, which was an unnecessary abstraction and was
not picked up by any other IRCd. The 005 tokens KNOCK MAP USERIP are
now used instead. We do not announce STARTTLS in 005 anymore as this
is way too late (post-handshake, sensitive info already sent and/or
received). Not to mention STARTTLS is not the preferred method to
setup a secure connection in the first place.
Module coders: this means CommandAdd() with M_ANNOUNCE should no
longer be used. If a 3rd party module does use it, then UnrealIRCd
will now raise a warning. In a later UnrealIRCd version the flag
is likely to be removed completely so would cause a compile error.
(I doubt any module uses this anyway... but still..)
2019-01-31 17:34:07 +01:00
Bram Matthys 6cbd2744d7 * The default maximum topic length has been increased from 307 to 360.
* You can now set more custom limits. The default settings are shown below:
  set {
      topic-length 360; /* maximum: 360 */
      away-length 307; /* maximum: 360 */
      quit-length 307; /* maximum: 395 */
      kick-length 307; /* maximum: 360 */
  };
* A new 005 token has been added: QUITLEN. Works similar to KICKLEN.

The ability to adjust the topic length in the configuration file was
requested by Amiga600 in https://bugs.unrealircd.org/view.php?id=4692
At that place is also additional information on why there is a
"maximum" for topic length.
2019-01-30 17:50:17 +01:00
Bram Matthys 41239119f8 Update release notes a bit. 2019-01-30 16:54:56 +01:00
Bram Matthys 88030c63fb 1) Simplify dealing with isupport (numeric 005) stuff from the config code.
There's now no longer a difference between a rehash or boot.
2) Other cleanups in s_conf.c as well. Looks better now.
3) Sort the 005 tokens alphabetically. Enforcing some other 'logical order'
   was futile and this makes things consistent between rehashes.

For module coders this adds some new functions, such as IsupportSet,
IsupportSetFmt and IsupportDelByName. I'll document them later.
2019-01-30 16:42:19 +01:00
Bram Matthys 98fca7979f Code cleanup: internally rename iConf.nicklen to .nick_length to match the
convention that set::some-name is called iConf.some_name
2019-01-30 10:49:44 +01:00
Bram Matthys 5eaa711969 Update release notes to reflect current state. 2019-01-28 16:06:59 +01:00
Bram Matthys d085fb09c1 Three new config items to make topic and ban setter nick!user@host and
to control synchronization of the +beI setter across server links
(that is, the feature just introduced one commit ago):
set {
     topic-setter [nick|nick-user-host]; /* nick = default */
     ban-setter [nick|nick-user-host]; /* nick = default */
     ban-setter-sync [yes|no]; /* yes = default */
};
This also means that --with-topicisnuhost / TOPIC_NICK_IS_NUHOST
is now removed, since this now goes via set::topic-setter.

Also, moved the "first" PROTOCTL from include/common.h to send_proto()
in src/s_serv.c so the bunch of PROTOCTL lines is all in one place
(and so I could conditionally send SJSBY).
Ok, it's not entirely all in one place, PROTOCTL EAUTH is still sent
at another place (early, duh), but still..
2019-01-28 15:41:44 +01:00
Bram Matthys 874d99e0eb For +beI lists the 'set by' and 'set at' information is now synchronized
when servers link. Thus, you can see the real setter and time also after
a netsplit (/mode #channel b). This, unlike before, when setby was
name.of.server and time was the time of the synch.
This requires the entire network to run UnrealIRCd 4.2.2 or later.
Suggested by k4be in https://bugs.unrealircd.org/view.php?id=5183
Technical details: the PROTOCTL token to enable this is "SJSBY" and see
https://www.unrealircd.org/docs/Server_protocol:SJOIN_command for more
information, in particular the last section there.
2019-01-28 14:36:41 +01:00
Bram Matthys 4aa2d47deb Run test framework with a hub in-between to test command propagation. 2019-01-28 09:29:44 +01:00
Bram Matthys ed1f47f80a Can't stand http:// URLs... 2019-01-25 20:50:05 +01:00
Bram Matthys 2a3dd0e350 what is this 'return 0' doing here... 2019-01-23 16:36:42 +01:00
Bram Matthys ac9463a83f Rename hook HOOKTYPE_CAN_SEND_SECURE to HOOKTYPE_SEND_CHANNEL, which is
more descriptive and AFAICT nobody uses this hook in a public 3rd party
module anyway.
2019-01-21 17:02:14 +01:00
Bram Matthys 083826ee94 modules/usermodes/noctcp (+T): 1) only block CTCP's and not CTCP REPLIES,
2) allow IRCOps to bypass user mode +T restrictions. Reported by St3Nl3y,
HeXiLeD and Koragg in https://bugs.unrealircd.org/view.php?id=5166
2019-01-21 16:55:29 +01:00
Bram Matthys ee20160bc3 Add another type for HOOKTYPE_CONFIGTEST and HOOKTYPE_CONFIGRUN
for CONFIG_LISTEN. This so a module can have custom options in
the listen block. Like all other CONFIG_* options you are supposed
to return 1 if your module handles this option and 0 if not.
From HOOKTYPE_CONFIGTEST you can also return -1 to indicate error
for an option that is handled by the module.
Note that 'cep' is passed, that is the option for the variable
that is being checked, and not the 'ce', the parent of the listen
block. If you want to access the parent, then use ce->ce_prevlevel.
2019-01-21 13:55:20 +01:00
Bram Matthys 7a3ba05c03 Similar to previous commit, fix resolving of temporary modules (.so files)
in crash reports as well... and make them in English, regardless of the
users' locale... better for us ;)
2019-01-21 13:37:52 +01:00
Bram Matthys 6fcacdf148 Fix './unrealircd backtrace' not working correctly in non-English environments.
The script symlinks any missing tmp/xxxx.so's to the real module name but
depends on English statements (ugly, yeah, but it works). With a non-English
locale this did previously not work so the backtrace was screwed.
2019-01-21 13:30:15 +01:00
Bram Matthys 41e6d5b7e9 Fix for strangely formatted 'creation date' if compiled with certain locales.
Reported by k4be.
2019-01-21 13:26:22 +01:00
Bram Matthys bcb667c59e New hook HOOKTYPE_WELCOME (aClient *acptr, int after_numeric): allows you
to send a message at very specific places during the initial welcome
https://www.unrealircd.org/docs/Dev:Hook_API#HOOKTYPE_WELCOME
2019-01-21 10:12:46 +01:00
Bram Matthys 25ede84a04 This makes more sense. Also testing announcement bot :D 2019-01-21 10:10:51 +01:00
Bram Matthys c726df5758 Travis-CI: The job exceeded the maximum log length, and has been terminated.
Fantastic. https://github.com/travis-ci/travis-ci/issues/1382
2019-01-18 15:31:14 +01:00
Bram Matthys 013dd06aee Travis-CI: End of argh. 2019-01-18 14:45:55 +01:00
Bram Matthys 3bacb28555 Travis-CI: no comment 2019-01-18 14:24:19 +01:00
Bram Matthys 8a9971618f Travis-CI: ..or without sudo..
I really love this..
2019-01-18 14:05:45 +01:00
Bram Matthys 3e3da94a41 Travis-CI: new image, have to install bundler again. 2019-01-18 14:00:00 +01:00
Bram Matthys 4d5e627b27 Update release notes: * New set::outdated-tls-policy which describes what to
do with clients that use outdated SSL/TLS protocols (eg: TLSv1.0) and
ciphers.  The default settings are to warn in all cases: users connecting,
opers
/OPER'ing up and servers linking in.  The user will see a message telling
them to upgrade their IRC client.  This should help with migrating such
users, since in the future, say one or two years from now, we would want to
change the default to only allow TSLv1.2+ with ciphers that provide Forward
Secrecy.  Instead of rejecting clients without any error message, this
provides a way to warn them and give them some time to upgrade their
outdated IRC client.
https://www.unrealircd.org/docs/Set_block#set::outdated-tls-policy
2019-01-18 13:38:14 +01:00
Bram Matthys 425571a8d2 Update UnrealIRCd version to 4.2.2-dev 2019-01-18 13:22:58 +01:00
Bram Matthys e82dbdce1a Update doc/RELEASE-NOTES.old. Now contains 4.2.0 and 4.2.1 release notes,
I forgot the 4.2.0 one earlier..
2019-01-18 13:20:28 +01:00
Bram Matthys 4681603c52 Fix bug where "link-security" was downgraded to level 1 if using 'spkifp'. 2019-01-18 13:10:51 +01:00
Bram Matthys 778be86c66 Update HELPOP EXTBANS on ~t (timed bans), ~m (msgbypass) and ~T (textban)
since these are loaded by default since UnrealIRCd 4.2.0.
2019-01-14 15:10:23 +01:00
Bram Matthys f4b432ae94 Add RC4 and 3DES to set::ssl::outdated-ciphers, in case anyone uses some
insecure custom ::ciphers setting, this so RC4 and 3DES still get flagged.
2019-01-12 11:29:16 +01:00
Bram Matthys 67d691fce9 * New set::outdated-tls-policy which describes what to do with clients
that use outdated SSL/TLS protocols (eg: TLSv1.0) and ciphers.
  The default settings are to warn in all cases: users connecting,
  opers /OPER'ing up and servers linking in. The user will see a message
  telling them to upgrade their IRC client.
  This should help with migrating such users since in the future, say one
  or two years from now, we would want to change the default to only allow
  TSLv1.2+ with ciphers that provide Forward Secrecy. Instead of rejecting
  clients without any error message, this provides a way to warn them and
  give them some time to upgrade their outdated IRC client.
  https://www.unrealircd.org/docs/Set_block#set::outdated-tls-policy
2019-01-12 11:08:18 +01:00
Bram Matthys 8e7a085474 AppArmor profile in extras/security/apparmor: no changes but make it
clear that this has been tested on Ubuntu 16.04 and Ubuntu 18.04.
2019-01-12 10:52:05 +01:00
Bram Matthys 5fd673d059 Rename PLAINTEXT_POLICY_* to POLICY_ (and similarly, the struct, etc) 2019-01-11 13:27:29 +01:00
Bram Matthys a1d2698ead Provide get_ssl_options_for_client() to get the SSLOptions * for a client. 2019-01-11 13:16:09 +01:00
Bram Matthys b0c8629284 Travis-CI: remove TLS test for libressl-25 (no longer supported)
[skip ci]
2019-01-11 12:34:43 +01:00
Bram Matthys 72a3a445ee Travis-CI: Update OpenSSL and LibreSSL versions
* Remove LibreSSL versions that are no longer supported (2.5.x and 2.6.x).
* Add LibreSSL 2.8.x (current stable) and 2.9.x (current dev)
* OpenSSL releases only had updates in their 'letter suffixes'
2019-01-11 11:54:13 +01:00
Bram Matthys 9668aaaade Travis-CI: Rename .txt files to match $BUILDCONFIG 2019-01-11 11:42:36 +01:00
Bram Matthys dbeb5af2ea Updates to SSL/TLS tests. 2019-01-11 11:30:40 +01:00
Bram Matthys 227abacdb5 Hm? 2019-01-11 10:52:16 +01:00
Bram Matthys 8e1af5f304 Update SSL/TLS tests and put them in extras/tests/tls 2019-01-11 10:45:20 +01:00
Bram Matthys 9873382e6b Add SSL/TLS tests. 2019-01-11 10:06:21 +01:00
Bram Matthys 7d68ea0570 Update default ciphers, or actually only the ones not providing PFS, by
preferring AES-256 over AES-128 (in contrast to the Mozilla "intermediate"
profile which prefers AES-128). Again, this only affects non-PFS cases, as
all modern clients with PFS already had CHACHA20 and AES-256 negotiated.
The portion of non-PFS clients should only be few percent, if any.
I was actually considering removing non-PFS ciphersuites but it seems a bit
early to do so, at least not without more research on affected clients.
2019-01-11 09:19:44 +01:00
Bram Matthys dbbe6e7248 Travis-CI: another attempt 2019-01-10 20:29:11 +01:00
Bram Matthys 981a5d44b2 Travis-CI: install specific bundler (wtf?) 2019-01-06 20:34:16 +01:00
Bram Matthys 2a9b20369b Travis-CI: use Ubuntu 16.04 instead of 14.04
...since 14.04 seems to fail due to an outdated ruby.
2019-01-06 20:14:04 +01:00
Bram Matthys 8c9e4b8668 Poison unused parv[] elements that code should never access.
The last parv[] array element will be NULL. Accessing any elements after
that is undefined, similar to reading past the nul byte of a string.
This poison will help catch such bugs. Without this poison your code
will also crash, now it just crashes more consistently.
2019-01-06 19:21:59 +01:00
Bram Matthys dbf7aeb386 UnrealIRCd 4.2.1.1: compile fix for Debian stretch if you have a version of
libargon2 installed that does not provide Argon2id.
2019-01-03 08:57:59 +01:00
Bram Matthys 4965fc6741 Fix for systems with libargon2 that don't have Argon2id (Debian 9.6).
Apparently Debian stretch has 20160821's version which just falls short.
20161029 already has it included. We'll now use shipped libargon2 for
versions below 20161029. Thanks to vectr0n for reporting the issue.
2019-01-02 19:20:42 +01:00
Bram Matthys c173b17064 Fix SAJOIN, SAPART and SAMODE not working due to operclass.default.conf
using the 'sacmds' permission, when it should actually be 'sacmd'.
Reported by Stanley.
2018-12-28 17:55:32 +01:00
Bram Matthys 5da3ef8889 UnrealIRCd 4.2.1 (will publish tomorrow) 2018-12-26 23:06:33 +01:00
Bram Matthys 8b0cad3845 Fix for 'require authentication' (duh)
.. yeah I and others were still using 'require sasl' :D
2018-12-22 10:36:48 +01:00
Bram Matthys 56568f4033 Update release notes. This may be final for 4.2.1-rc1. 2018-12-22 10:12:53 +01:00
Bram Matthys 43de2dd747 Update release notes 2018-12-21 18:05:06 +01:00
Bram Matthys 73502ca4b6 Update help.conf with new WHO status flag 's' (secure) 2018-12-21 18:03:57 +01:00
Bram Matthys bb7bc90612 Forgot to update c-ares version in extras/curlinstall.... 2018-12-21 15:59:51 +01:00
Bram Matthys ad9a1b0b94 Import settings from UnrealIRCd 4.2.0
[skip ci]
2018-12-21 15:57:08 +01:00
Bram Matthys e30712f3d4 Update Windows libraries and the Windows build command for build tests.
[skip travis ci]
2018-12-21 15:42:32 +01:00
Bram Matthys f3f397b066 Update shipped libs: c-ares to 1.15.0 and PCRE2 to 10.32 2018-12-21 15:32:23 +01:00
Bram Matthys f1844e40a5 Set version to 4.2.1-rc1. The release notes are still likely to change. 2018-12-21 15:24:12 +01:00
Bram Matthys 54c17aa65d Indicate 's' in WHO reply flags if the user is secure (SSL/TLS). 2018-12-21 14:21:19 +01:00
Bram Matthys bb0530f694 In the authprompt documentation point the user to (possibly) tweaking
the set::handshake-timeout setting as well.
2018-12-21 13:24:25 +01:00
Bram Matthys 7755d10829 [authprompt] Suggest /QUOTE AUTH .. instead of /AUTH .. 2018-12-21 07:58:38 +01:00
Bram Matthys 62e30ec342 Fix typo in config warning. 2018-12-21 07:58:12 +01:00
Bram Matthys 267c2f3e56 Make authprompt work for soft KLINE/GLINE and soft-xx ban actions
(in registration phase anyway), as promised earlier in the documentation.
2018-12-19 17:42:13 +01:00
Bram Matthys 7f8172faef Bump fakelag on failed authentication attempt (SASL, real or emulated) 2018-12-19 17:41:28 +01:00
Bram Matthys 7aaf5e9a42 Update release notes regarding a fix from today.
[skip ci]
2018-12-19 17:13:39 +01:00
Bram Matthys 88fadc134d Fix build issue on Windows
[skip travis ci]
2018-12-19 13:58:44 +01:00
Bram Matthys 0ac56e4444 Fix line number in error messages being off, as reported in
https://bugs.unrealircd.org/view.php?id=5169
caused by commit 51ed51dff1
2018-12-19 13:50:09 +01:00
Bram Matthys 56a964bba1 Hide remote includes auth information in error messages. Reported by Jellis
in https://bugs.unrealircd.org/view.php?id=5172
2018-12-19 13:02:36 +01:00
Bram Matthys 6b089dfcd6 The new module is now called authprompt. Also wrote an article:
https://www.unrealircd.org/docs/Authentication
And "require sasl" is now "require authentication"
(the old name will only raise a warning, not cause an error)

Note that authprompt currently only does the "require authentication"
stuff and not yet the soft-xx actions. That will be something for
later this week, but I've already documented it as such (here and
there anyway).
2018-12-17 17:32:43 +01:00
Bram Matthys b1e1b6d9d5 quick fix for build tests, will fix later. 2018-12-16 16:40:35 +01:00
Bram Matthys ce4aeff63f Add saslemulation to Windows makefile.
[skip travis ci]
2018-12-16 15:53:12 +01:00
Bram Matthys 2ed958f2ee Fix typo in modules.optional.conf. 2018-12-16 15:52:04 +01:00
Bram Matthys 9f3e060a3d This is a better one line description. 2018-12-16 13:56:17 +01:00
Bram Matthys 0254894368 Authentication prompt for non-SASL users:
We previously introduced the "require sasl" block which allows you to
force users from certain IP addresses to authenticate with their nickname
and password via SASL. We now offer a new experimental module called
'saslemulation' which will help non-SASL users by showing a notice and
asking them to authenticate to their account via /AUTH <user>:<pass>.
See https://www.unrealircd.org/docs/Set_block#set::sasl-emulation

Note that this is work in progress, although the functionality of
already works. Still need to do some cleaning and expand the scope.
And more testing...
2018-12-16 13:51:22 +01:00
k4bek4be c124f65027 fix IPv6 DNS blacklist (#78)
Fix IPv6 blacklist checking (DNSBL). Patch from k4be.
2018-12-15 19:53:33 +01:00
Bram Matthys 3774e5661f Fix for *-with-override operclasses. 2018-12-14 18:10:14 +01:00
Bram Matthys a0167c35c0 Major reorganization of operclass privileges:
* The operclass privileges have been redone. Since there were 50+ changes
  to the 100+ privileges it makes little sense to list the changes here.
  If, like 99% of the users, you use default operclasses such as "globop"
  and "admin-with-override" then you don't need to do anything.
  However, if you have custom operclass { } blocks then the privileges
  will have to be redone. For more information on the conversion process,
  see https://www.unrealircd.org/docs/FAQ#New_operclass_permissions
  For the new list of permissions, with much better naming and grouping:
  https://www.unrealircd.org/docs/Operclass_permissions
The inconsistency in the privileges was initially reported by webczat in
https://bugs.unrealircd.org/view.php?id=4771
The subsequent reorganization took two full days, so.. hopefully the
people who are using - or plan to use - custom operclasses will like the
new layout... except that they need to redo their work of course ;)
2018-12-14 17:05:32 +01:00
Bram Matthys e470541a8b Windows............ whatever. 2018-12-10 18:28:13 +01:00
Bram Matthys 267f6adc54 Tadah. Fix vs2017, reported by Gottem. 2018-12-10 18:15:22 +01:00
Bram Matthys 7dcb5a5bb1 The authentication types 'md5', 'sha1' and 'ripemd160' have been
deprecated because they can be cracked at high speeds. They still
work, but a warning will be shown on boot and on rehash.
Please use 'bcrypt' or (even better) the new 'argon2' type instead:
"./unrealircd mkpasswd argon2" or "/mkpasswd argon2 passwd" on IRC.

Also, not in release notes because it would take up too much text:
Unix crypt is a bit more complicated: most types are outright 'bad',
while other types have reasonable security similar to 'bcrypt'.
To be honest these people should probably use 'argon2' since it's
a lot better. Then again, warning about this when it's still such
a common hashing method (now, in 2018) may be a bit overzealous.
So: not warning about crypt types $5/$6 which use SHA256/SHA512
with normally at least 5000 rounds (unless deliberately weakened
by the user), but we do warn about other crypt() usage.

Also, mkpasswd support for those deprecated types has been removed since
there's no good reason to generate new password hashes with these.
2018-12-10 15:46:11 +01:00
Bram Matthys 02184fe3a0 Write release notes (reflecting current state, anyway).
[skip ci]
2018-12-10 09:00:35 +01:00
Bram Matthys b335f8c284 Remove -lrt and -ldl for systems lacking pkg-config and building with
system libargon2.
2018-12-10 08:49:30 +01:00
Bram Matthys 8bbcd94071 Set UnrealIRCd version to 4.2.1-dev 2018-12-10 08:24:57 +01:00
Bram Matthys 9fdd93f0e4 Fix libargon2 autodetection (system lib). 2018-12-10 08:19:41 +01:00
Bram Matthys 942da806dd Make build test compile with Argon2 lib 2018-12-09 17:56:04 +01:00
Bram Matthys a852b480d5 Add support for Argon2 password hashes (argon2id).
Also, make this the default for './unrealircd mkpasswd'.
The Windows version also works.. I just need to create a new library
package, will be done later today or tomorrow.
https://bugs.unrealircd.org/view.php?id=5116
2018-12-09 17:22:12 +01:00
Bram Matthys 459a55245a No longer require "};" in config files, from now on "}" will suffice.
Note that both }; and } forms are accepted now, even mixed, and this
will not raise a warning or error.
I've always found it odd that we required a ; after }. In a language
like C for typedef structs it has some meaning since there could be
an alias between the } and the ;, but in UnrealIRCd there's no such
thing.
2018-12-08 16:03:58 +01:00
Bram Matthys 51ed51dff1 Remove non-standard 'nested comments' features, also known as
"comments within comments are not ignored".
Reported by bekarfel in https://bugs.unrealircd.org/view.php?id=4075
FAQ entry: https://www.unrealircd.org/docs/FAQ#Nesting_comments
2018-12-08 15:51:50 +01:00
Bram Matthys 7cd0bbbcb9 On second thought, for m_whox the priority is not important,
so set it to zero (0).
2018-12-08 15:29:02 +01:00
Bram Matthys 9cfff2d07d In 4.2.0 we added support for priorities in CmdoverrideAddEx(),
however it turns out they were accidentally reversed.
This is now corrected: highest number = highest prioty.
Reported by Gottem in https://bugs.unrealircd.org/view.php?id=5162
2018-12-08 15:23:42 +01:00
Bram Matthys 8d1047d4e9 Remove old function is_irc_banned(). Ahhh, WebTV times.. 2018-12-08 13:06:41 +01:00
Bram Matthys 84686f02bb Fix checking for target nick bans (cannot change to a nick that is banned).
This was and still is the default, set::check-target-nick-bans 'yes', however
the feature was broken since UnrealIRCd 4.0.0 (-betaX) by commit
709c7e890e. Reported by PeGaSuS and St3Nl3y.
2018-12-08 13:01:27 +01:00
Bram Matthys 4bef3a5238 Nothing important. Update comments of place_host_ban() and add an explicit
'case BAN_ACT_SOFT_KILL', even though it is already handled by 'case default'.
2018-11-21 14:26:35 +01:00
Bram Matthys 4a0dcc5f13 Load antimixedutf8 from modules.optional.conf 2018-11-21 12:35:25 +01:00
Bram Matthys 9d5e46c43c Set default score to 10. Prevents innocent Russians from getting caught :D 2018-11-18 20:07:09 +01:00
Bram Matthys 9f7b8997f2 Fix stupid bug for <4.2.0, reported by PeGaSuS 2018-11-18 19:52:54 +01:00
Bram Matthys 112c5d922e Fixes for Cyrillic (false positives when speaking Russian, etc...) 2018-11-18 19:39:39 +01:00
Bram Matthys b89bd719a7 Compatibility... 2018-11-18 18:50:45 +01:00
Bram Matthys d0799a0f04 Build antimixedutf8 2018-11-18 18:28:28 +01:00
Vitor 6f3ef8e3a7 Update help.conf (#76)
Update help.conf with +Z and +D
2018-11-18 18:21:34 +01:00
Vitor 4b5e950ffd Update antimixedutf8.c (#77)
Fix credits in antimixedutf8.
2018-11-18 17:00:55 +01:00
Bram Matthys 793e827218 Add "anti mixed utf8" module (antimixedutf8):
This module will detect and stop spam containing of characters of
mixed "scripts", where some characters are in Latin script and other
characters are in Cyrillic.
This unusual behavior can be detected easily and action can be taken.

loadmodule "antimixedutf8"; /* or third/antimixedutf8 */
set {
        antimixedutf8 {
                score 5;
                ban-action block;
                ban-reason "Possible mixed character spam";
                ban-time 4h; // For other types
        };
};
2018-11-18 15:19:11 +01:00
Bram Matthys d11b3228e6 ** UnrealIRCd 4.2.0 ** 2018-09-29 21:31:35 +02:00
Bram Matthys 98a33f7485 Windows: modules.optional.conf missing 2018-09-29 20:08:26 +02:00
Bram Matthys 02d69e7d83 Update release notes / version 2018-09-28 15:32:31 +02:00
Bram Matthys 2509482e02 Update UnrealIRCd version 2018-09-28 09:31:35 +02:00
Bram Matthys 6acfa3404b UnrealIRCd version updates 2018-09-28 09:26:40 +02:00
Bram Matthys 02c5c8567a Fix rare crash if deleting spamfilter by id that isn't a spamfilter. 2018-09-23 18:41:47 +02:00
Bram Matthys b4b6ebbca3 Similarly, use sptr/acptr to conform to current style. 2018-09-22 12:44:03 +02:00
Bram Matthys 75e2ed38e2 Some re-indenting / codestyle changes, nothing fancy, mostly whitespace
and brackets.
2018-09-22 12:42:14 +02:00
Bram Matthys 1feeb86cd3 Fix crash bug in m_whox. 2018-09-22 11:38:08 +02:00
Bram Matthys 24ea77f507 Update release notes
@skip-ci
2018-09-21 09:32:59 +02:00
Bram Matthys a7af69b887 Use same ciphersuite as decided earlier. 2018-09-21 09:11:09 +02:00
Bram Matthys d56eddd69a 'timedban' and 'nocodes' were (still) marked 3rd party, even though
they are official modules.
2018-09-21 08:58:44 +02:00
Bram Matthys 7d38909126 m_whox: fix -Wparentheses warning 2018-09-21 08:50:04 +02:00
Bram Matthys fb0148a44a New set::ssl::options::ciphersuites option for TLSv1.3.
Since OpenSSL decided not to use the regular ciphers but make this a
separate option, we now make this a separate option as well.
So there is ::ciphers for <=TLSv1.2 and ::ciphersuites for TLSv1.3
More documentation will follow.
Patch from 'i' in https://bugs.unrealircd.org/view.php?id=5149
2018-09-20 20:14:18 +02:00
Bram Matthys bd0821fc41 Add m_whox to Windows build makefile 2018-09-20 20:06:19 +02:00
Bram Matthys c4eac1df0e Add initial version of m_whox from 'i'. This is to get it tested
by the buildfarm / autotesters. More commits will follow.
2018-09-20 20:04:29 +02:00
Bram Matthys 30da2ae553 Module devs: Add priorities for command overrides.
Use: CmdoverrideAddEx(module, name, priority, function)
Suggested by Gottem in https://bugs.unrealircd.org/view.php?id=5143
..and needed by some upcoming stuff.
2018-09-20 20:01:39 +02:00
Bram Matthys 886b67ca8a Merge pull request #73 from digitalcircuit/fix-strip-monostrike-format
m_message: Also strip monospace/strikethrough
2018-09-16 08:12:26 +02:00
Shane Synan dba2081641 m_message: Also strip monospace/strikethrough
Add the ASCII character codes for strikethrough (0x1E, 30) and
monospace (0x11, 17) to the _StripControlCodes function.  This
addresses those formatting characters not being filtered when the
"nocodes" module is loaded.

See https://modern.ircdocs.horse/formatting.html#characters
2018-09-15 16:25:05 -05:00
Bram Matthys 3f7ec605dd The away-notify CAP did not send AWAY status upon join, which is required.
Reported by digitalcircuit in https://bugs.unrealircd.org/view.php?id=5144
2018-09-15 08:46:18 +02:00
Bram Matthys 57a008b808 UnrealIRCd 4.0.19-rc2 2018-09-14 09:51:25 +02:00
Bram Matthys cd2f77defd Update release notes
@skip-ci
2018-09-14 09:45:19 +02:00
Bram Matthys 402958a3c6 Allow slashes in vhost/chghost/sethost/.. (but not through DNS) 2018-09-11 20:25:32 +02:00
Bram Matthys 8738c42b82 Update release notes
@skip-ci
2018-09-10 18:47:01 +02:00
Bram Matthys 05745124f1 Fix tld::options::ssl not detecting remote SSL users.
Reported by HeXiLeD in https://bugs.unrealircd.org/view.php?id=4952
2018-09-10 18:33:40 +02:00
Bram Matthys a4e076c08c Allow ASCII 0xa0 in channels / Fix truncated channel name.
Reported by capitaine in https://bugs.unrealircd.org/view.php?id=4538
2018-09-10 08:38:41 +02:00
Bram Matthys d610dfbe9f Duplicate error messages when trying to set channel modes +O/+P.
Reported by FwdInTime in https://bugs.unrealircd.org/view.php?id=4840
2018-09-09 18:03:54 +02:00
Bram Matthys 5445a009a3 Fix bug preventing (insecure) IRCops from overriding +z.
Reported by capitaine in https://bugs.unrealircd.org/view.php?id=5134
2018-09-09 17:49:32 +02:00
Bram Matthys 5921924297 Update release notes 2018-09-09 17:27:25 +02:00
Bram Matthys f876983cb3 Fix bug where halfops don't see users JOIN if chmode +D is set.
Reported by The_Myth in https://bugs.unrealircd.org/view.php?id=5123
2018-09-09 17:15:49 +02:00
Bram Matthys 681640024a Fix permission issues with minimal IRCOps.
Reported by capitaine in https://bugs.unrealircd.org/view.php?id=5130
2018-09-09 17:01:35 +02:00
Bram Matthys 2935385bf2 allow::options::sasl has been removed. Use the new and more flexible
require sasl { } block instead.
2018-09-09 09:49:03 +02:00
Bram Matthys 3f0d349e2b Update releasenotes: shorten text about compatibility.
@skip-ci
2018-09-08 17:51:43 +02:00
Bram Matthys a66373f74e Add header to release notes 2018-09-08 17:21:37 +02:00
Bram Matthys 77000795c7 Make ./Config import settings from 4.0.18 2018-09-08 17:18:24 +02:00
Bram Matthys bc139098c9 UnrealIRCd 4.0.19-rc1
(The actual release will be ~24hrs from now)
2018-09-07 18:20:04 +02:00
Bram Matthys 73f69ccb11 Fix clang warning 2018-09-07 18:14:14 +02:00
Bram Matthys 2cbcc29a0d Update release notes a bit 2018-09-07 12:20:09 +02:00
Bram Matthys 9ed6a9ae79 Found some more for #3973 2018-09-07 12:07:09 +02:00
Bram Matthys ab321f632b For outgoing server connection attempts there was no message to ircops
nor to the log about connection or handshake timeouts. Now there is.
2018-09-07 11:59:52 +02:00
Bram Matthys bd19e9c87a Log linking attempts and errors. Also report them to IRCOps in an uniform way.
Reported by Mr_Smoke in https://bugs.unrealircd.org/view.php?id=3973
2018-09-07 11:59:12 +02:00
Bram Matthys 8d05951298 Silence a warning 2018-09-07 10:50:55 +02:00
Bram Matthys 858aaa774a 'SVSMODE Nick -t' does not remove vhost (while MODE 'MODE Nick -t' does)
Reported by The_Myth in https://bugs.unrealircd.org/view.php?id=5111
2018-09-07 10:50:00 +02:00
Bram Matthys aa3e66bb5b We now use standard formatted messages for all K-Lines, G-Lines and
any other bans that will cause the user to be disconnected.
For technical details see the banned_client() function.

It's likely I made some mistakes somewhere => testing required!!
2018-09-05 16:24:08 +02:00
Bram Matthys 107d8ccf6a * A new require sasl { } block which allows you to force users on the
specified hostmask to use SASL. Any unauthenticated users matching
  the specified hostmask are are rejected.
  See https://www.unrealircd.org/docs/Require_sasl_block
Feature suggestion: https://bugs.unrealircd.org/view.php?id=5107
2018-09-05 11:34:48 +02:00
Bram Matthys ffcf85f409 Announce the soft bans in release notes. (Best to read that rather
than the million commits before it)
2018-09-05 10:03:42 +02:00
Bram Matthys c4760cc83c Add more soft actions. The full list is available on
https://www.unrealircd.org/docs/Actions
Also, some minor cleanups / simplifications.
2018-09-05 09:39:44 +02:00
Bram Matthys c8c0199095 Fix potential bug if there are both soft and hard tkl's matching the user.
Add soft-shun. Use IsLoggedIn() to detect logged in to services status
rather than repeating the more elaborate if ... isdigit...svid.. etc.. stuff.
2018-09-04 21:08:48 +02:00
Bram Matthys aa45ce11cc ..and the necessary stuff for softbans in the blacklist module. 2018-09-03 20:18:23 +02:00
Bram Matthys b2be1009a0 Second parameter to find_tkline_match() can now be used to skip
soft ban checking. Necessary for blacklist module.
2018-09-03 19:55:48 +02:00
Bram Matthys 1d42ccd973 DNSBL: Fix possible problem where multiple blacklists are not processed.
Also fix a memory leak triggered in some circumstances.
2018-09-03 19:31:27 +02:00
Bram Matthys 1eb09484f1 Add 'soft-kline' and 'soft-gline' to ban actions (more information soon)
If you don't know what ban actions are, they are listed here:
https://www.unrealircd.org/docs/Actions
2018-09-03 17:24:23 +02:00
Bram Matthys 5f116cc64e Part one of soft gline/kline (more information will follow) 2018-09-03 17:07:22 +02:00
Bram Matthys 2537fb5e1c extbans/textban was not working properly on words with dots
Reported by The_Myth in https://bugs.unrealircd.org/view.php?id=4909
2018-09-02 21:55:57 +02:00
Bram Matthys d3dba63f56 AntiRandom: The module will now (by default) exempt WEBIRC gateways
from antirandom checking because they frequently cause false positives.
This new behavior can be disabled via:
set { antirandom { except-webirc no; }; };
Suggested by The_Myth in https://bugs.unrealircd.org/view.php?id=5007
2018-09-02 12:34:03 +02:00
Bram Matthys 5f597c0b08 Sync 'webirc' status of a client with the rest of the network (via ModData).
Also necessary for upcoming commit..
2018-09-02 12:16:45 +02:00
Bram Matthys cab8ea7066 * Potential crash issue when concurrently checking DNSBL for the WEBIRC
gateway and the spoofed host.
2018-09-02 12:16:15 +02:00
Bram Matthys 883a5fe413 * The except throttle { } block now also overrides any limitations from
set::max-unknown-connection-per-ip. Useful for WEBIRC/cgiirc gateways.
Reported by KnuX https://bugs.unrealircd.org/view.php?id=5088
2018-09-02 11:40:15 +02:00
Bram Matthys b1b73e0e56 * Localhost connections are considered secure, so these can be used even
if you have a plaintext-policy of 'deny' or 'warn'. (This was already
  the case for servers, but now also for users and opers)
https://bugs.unrealircd.org/view.php?id=5108
2018-09-02 11:24:19 +02:00
Bram Matthys 3c801ced2e Load by default: extbans/textban, extbans/timedban, extbans/msgbypass.
https://bugs.unrealircd.org/view.php?id=5117
2018-09-02 11:17:14 +02:00
Bram Matthys bf08c5d121 Update instructions on customizing modules.default.conf now that
we have blacklist-module.
2018-09-01 21:08:58 +02:00
Bram Matthys 477694bd11 Update release notes: Add info on 'blacklist-module'. 2018-09-01 21:02:24 +02:00
Bram Matthys d86d4c7c71 Add new option: blacklist-module "<modulename>";
This is meant to blacklist modules that are in modules.default.conf (or
elsewhere). The 'loadmodule' line for any such module is effective ignored.
https://bugs.unrealircd.org/view.php?id=5118
Note: I had to move the loadmodule code. Previously this was done as each
config file (include) was loaded into memory. Now it is done after *ALL*
config files have been read into memory. This shouldn't matter for module
devs, though..
2018-09-01 20:31:14 +02:00
Bram Matthys cf97de890a These should be marked extern. 2018-09-01 19:37:25 +02:00
Bram Matthys c2f9df9e48 Update release notes (no we're not anywhere near a release at this point) 2018-07-15 18:30:52 +02:00
Bram Matthys 26c194d8db Update paths. Again.
Slashes in my editor are special so a replace with \u becomes..
ah well.. long story.
2018-07-15 18:19:11 +02:00
Bram Matthys 4900fb01df Remove Visual Studio 2012 leftovers.
[skip ci]
2018-07-15 18:11:49 +02:00
Bram Matthys 54a6e2f61f Update build command for vs2017 with new deps 2018-07-15 18:11:00 +02:00
Bram Matthys 8fc4f68bcc Make AppVeyor only build VS2017 version (and update library deps) 2018-07-15 17:58:07 +02:00
Bram Matthys 8150c6c237 Change default library paths for Visual Studio 2017 lib build.
Will upload the dependencies in a couple of minutes to:
https://www.unrealircd.org/docs/Windows_external_libraries_for_UnrealIRCd
2018-07-15 17:47:37 +02:00
Bram Matthys 1f4fcb9407 Set version to 4.0.19-dev 2018-07-15 17:40:18 +02:00
Bram Matthys 3bd83829e3 Work towards moving to Visual Studio 2017.
Compiling already works (this is already tested by AppVeyor for quite a
while), but the installer in git required VS 2015. The actual releases
up to now required VS 2012.
To be more precise, either VS 2015 Redist or VS 2017 Redist is enough,
the x86 version that is, as they are binary compatible and both provide
"version 14". So if one of those is installed, the installer just runs.
If neither of these is installed we tell the user to install the VS 2017
Redist package, not mentioning 2015 as it would only cause confusion.
2018-07-15 14:49:24 +02:00
Bram Matthys f3b9753460 Fix compile problem with clang if -Werror is active.
(introduced by previous commit, 98709beee2)
2018-07-08 14:52:43 +02:00
Bram Matthys 98709beee2 ./configure: -Wno-format-truncation 2018-07-08 13:35:53 +02:00
Bram Matthys bc8ac7c7f6 ./Config: For remote includes, suggest /usr when /usr/bin/curl-config
is found. This fixes an issue on Ubuntu 18 where the library is
stored in /usr/include/x86_64-linux-gnu and ./Config doesn't detect
it and thus reverts to using local-curl.
2018-07-08 13:31:23 +02:00
Bram Matthys 25f08d50ac UnrealIRCd 4.0.18 2018-06-23 16:06:12 +02:00
Bram Matthys c4d132c8f9 No longer permit 'require-sasl' or 'require-ssl', as introduced in rcX,
as it would be confusing with the current functionality.
Use 'sasl' or 'ssl' instead. See bug #5107.
2018-06-23 08:16:04 +02:00
Bram Matthys 05dcf18ea6 When importing ./Config settings from a previous UnrealIRCd, with
curl enabled but without system curl, the build could fail with
an libCURL configure error. This is is because it imported the
CURLDIR but it referred to an old UnrealIRCd directory.
Reported by The_Myth (#5106)
2018-06-23 08:13:02 +02:00
Bram Matthys f9f03190f8 ** 4.0.18-rc2 ** 2018-06-16 18:22:31 +02:00
Bram Matthys 14eda9638d curl-ca-bundle.crt: update to latest mozilla (Wed Mar 7 04:12:06 2018 GMT)
[skip ci]
2018-06-16 18:14:06 +02:00
Bram Matthys 0961b95ba9 Move setting of curves (duh) 2018-06-16 17:58:15 +02:00
Bram Matthys 52afbeee50 Travis-CI: cipherscan: it helps if you scan on the right port.. 2018-06-16 09:19:03 +02:00
Bram Matthys da98080860 Travis-CI: add cipherscan test
TODO: fail if certain criterea are not met
2018-06-16 08:40:39 +02:00
Bram Matthys 49bfb1e782 Fix ECDHE not working on 4.0.18-rc1 with older OpenSSL versions.
For example Ubuntu 16.04 LTS with OpenSSL 1.0.2g.
Especially in strict config it would error 'No shared ciphers'.
Had to do with #if(def) ordering. SSL_CTX_set_ecdh_auto() is
still required in 1.0.x even if SSL_CTX_set1_curves_list() is
used. Understandable.
2018-06-16 08:21:13 +02:00
Bram Matthys 18b793db9a UnrealIRCd 4.0.18-rc1 2018-06-11 10:46:44 +02:00
Bram Matthys a236eb0fc1 Update release notes
[skip ci]
2018-06-11 10:17:41 +02:00
Bram Matthys 3aec69192b Build with -Werror except on macOS 2018-06-11 10:11:16 +02:00
Bram Matthys 5461d24124 Update openssl test to 1.1.1-pre7.
[skip ci]
2018-06-11 09:57:49 +02:00
Bram Matthys 93957fc7ee blacklist module: also check the ip of WEBIRC users.
Suggested by jesopo (#0005098).
2018-06-11 08:53:34 +02:00
Bram Matthys cd6d7a2bb7 Add allow::options::sasl (or require-sasl) to require SASL authentication
as suggested in https://bugs.unrealircd.org/view.php?id=5098
The allow block documentation has been updated, including an example at
the end of the page - https://www.unrealircd.org/docs/Allow_block
2018-06-11 08:22:29 +02:00
Bram Matthys 46a60ec795 Fix OOB read (1 byte to the left) 2018-06-11 08:05:14 +02:00
Bram Matthys ad63a499e1 Remove invalid globally declared variables (should be externs). 2018-06-11 08:04:37 +02:00
Bram Matthys 8b988622cd Fix memory leak in channel mode +f 2018-06-11 08:04:10 +02:00
Bram Matthys e456f621ef Fix OOB read in extended bans handling.
(Bug caused by commit dd6f67a266)
2018-06-11 08:02:35 +02:00
Bram Matthys 21af7689c0 Fix memory leak in dead socket handling. 2018-06-11 08:02:07 +02:00
Bram Matthys af46d569f6 Updated Turkish translations from Serkan Sepetçi. 2018-06-09 15:08:00 +02:00
Bram Matthys aebf9691bd Convert example.tr.conf to UTF8 2018-06-09 15:07:03 +02:00
Bram Matthys 362033b73f Drop -xxxbits suffix in on-connect message (and elsewhere).
Change from this TLSv1.2 and TLSv1.3 message:
*** You are connected with TLSv1.2-ECDHE-RSA-AES256-GCM-SHA384-256bits
*** You are connected with TLSv1.3-TLS_AES_256_GCM_SHA384-256bits
To this:
*** You are connected with TLSv1.2-ECDHE-RSA-AES256-GCM-SHA384
*** You are connected with TLSv1.3-TLS_AES_256_GCM_SHA384
Since: 1) those bits are redundant (AES 256 is already mentioned),
and 2) Bits are also not an universal method to measure strength across
algorithms (think: elliptic curve).
2018-06-04 19:45:40 +02:00
Bram Matthys 686fc1b03d Convert /HELPOP translations to UTF-8. 2018-05-25 12:49:01 +02:00
Bram Matthys 8a73b96aee Revert 39e2d88f6c 2018-05-18 18:57:43 +02:00
Bram Matthys 2be4668d9b Travis-CI: 'apt-get update' is required 2018-05-18 18:56:24 +02:00
Bram Matthys 39e2d88f6c Fix Travis-CI 2018-05-18 18:52:40 +02:00
Bram Matthys b597999a34 Update release notes 2018-05-09 22:44:04 +02:00
Bram Matthys 5e8334a9be Use "macOS" in README rather than OS X.
[ci skip]
2018-05-02 19:53:09 +02:00
Bram Matthys 8ac5a49d9d Travis-CI: Swap gcc and clang in initial build matrix, simplifying
things for MacOS and making the LibreSSL/OpenSSL builds use clang.
2018-05-02 19:23:39 +02:00
Bram Matthys 85cfe2a779 Fix travis-ci 2018-05-02 19:19:08 +02:00
Bram Matthys d9c30aaeb8 Further reduce build matrix, since gcc links to clang on OS X anyway 2018-05-02 19:15:11 +02:00
Bram Matthys 53f7ee81b1 Attempt to reduce build matrix 2018-05-02 19:10:14 +02:00
Bram Matthys 717be3afcb Older OpenSSL versions (1.0.2) need an explicit -fPIC... wow. 2018-05-02 16:49:41 +02:00
Bram Matthys 201159c630 I forgot.. openssl is special :D 2018-05-02 16:12:10 +02:00
Bram Matthys cb4be97bdf Add various libressl & openssl versions to build tests. 2018-05-02 15:55:04 +02:00
Bram Matthys 3b0cb5c2a9 .. 2018-05-02 15:37:08 +02:00
Bram Matthys 53c1ea6226 Add libressl-27 to build test matrix. 2018-05-02 15:30:43 +02:00
Bram Matthys 923619ba30 Merge branch 'unreal40' of github.com:unrealircd/unrealircd into unreal40 2018-05-01 15:23:26 +02:00
Bram Matthys 8efcd684d3 Fix /SPAMFILTER add having the regex syntax check backwards.
(Not too surprising when add is 0 and delete is 1)
Not fatal, as error was still handled & send, but it went to
all opers instead of just the one person adding it..
2018-05-01 15:22:39 +02:00
Travis McArthur 83be1571ef Install correct gems on OS X environments 2018-04-28 20:01:02 -07:00
Travis McArthur 49394ed346 Update run-tests 2018-04-28 19:23:02 -07:00
Bram Matthys 04b3dd24f8 Set default ECDH(E) curves to be X25519:secp521r1:secp384r1:prime256v1 with
the following remarks:
* We only set these curves if SSL_CTX_set1_curves_list() is available
  (OpenSSL 1.0.2 or later, LibreSSL 2.5.1 or later)
* The X25519 curve is only added if it is available (OpenSSL 1.1.0+)
2018-04-27 20:08:47 +02:00
Bram Matthys fa9bdcd7df Move detection of SSL_CTX_set1_curves_list to autoconf (CHECK_SSL_CTX_SET1_CURVES_LIST) 2018-04-27 19:27:19 +02:00
Bram Matthys 3809168992 Improve comments in source code to better explain what's going on.
..and so nobody makes the same mistake.
2018-04-27 18:10:17 +02:00
Bram Matthys a6a4196af9 Add set::ssl::ecdh-curve so you can force one or more ECDH(E) curves.
This requires OpenSSL 1.0.2 or newer (released on 22 Jan 2015).
Also fix a bug with OpenSSL 1.1.0+ where - due to removal of an API
function - we accidentally forced curve P-256 rather than automatic
selection. That sucks because the automatic selection (since 1.0.2+)
allows supporting multiple curves and selecting the highest one.
2018-04-27 17:59:53 +02:00
Bram Matthys 3ea67268fc Travis-CI: OS X: try to make system-curl work 2018-04-26 15:17:09 +02:00
Bram Matthys df19b65a78 Travis-CI: system-cares + system-curl test wasn't run properly
because only the first argument was passed to the select-config script.
Also add 'set -x' in select-config for easier debugging.
2018-04-26 12:47:12 +02:00
Bram Matthys 66b2a036d8 Travis-CI: Of course, OS X doesn't have 'ldd' *sigh* 2018-04-26 10:58:16 +02:00
Bram Matthys 94c718dc3d Travis-CI: show 'ldd' output in build logs 2018-04-26 10:36:23 +02:00
Bram Matthys def588917a Travis-CI OS X improvements:
* Enable system curl, system c-ares and local curl tests
* Disable IRC test framework for now
2018-04-26 09:52:30 +02:00
Bram Matthys 40b0a5a9b2 Travis-CI: OS X build test attempt 101 2018-04-26 09:17:11 +02:00
Bram Matthys f615b6fa54 Travis-CI: more adjustments for OSX 2018-04-25 21:55:08 +02:00
Bram Matthys 64367d5d4c OSX: try find right packages to run test framework 2018-04-25 21:40:57 +02:00
Bram Matthys 568a808dbe temporarily disable -Werror to see OS X warnings 2018-04-25 21:21:13 +02:00
Bram Matthys d1d87d4d42 Apparently you need to use -Wl,-rpath,xx and not -Wl,-rpath=xx. Fix OSX compile problem? 2018-04-25 21:09:01 +02:00
Bram Matthys 7fe86ac1d8 Travis-CI: Show config.log on failure to trace osx build issue 2018-04-25 20:57:31 +02:00
Bram Matthys 3a97bc29da Fix bug 2 due to code cleanup yesterday... 2018-04-23 08:50:34 +02:00
Bram Matthys c342b432d1 OpenSSL detection: also check /usr/local/opt/openssl 2018-04-22 20:01:50 +02:00
Bram Matthys 34ae2cb0db OS X build-test: +brew install openssl 2018-04-22 19:49:43 +02:00
Bram Matthys 47e2975f01 Fix crash number 1 due to latest changes (TOPIC). 2018-04-22 19:38:29 +02:00
Bram Matthys 52b785cf4e Let's build (and fail) OS X via Travis-CI. 2018-04-22 18:58:41 +02:00
Bram Matthys 47bfcf7587 -Wno-format-zero-length 2018-04-22 18:58:30 +02:00
Bram Matthys d8c6201fbb Enable -Werror (via --enable-werror) in build tests 2018-04-22 18:36:49 +02:00
Bram Matthys 821a0464c7 Add --with-werror to enable -Werror 2018-04-22 18:35:50 +02:00
Bram Matthys 31409b19a5 Removed useless/unused * (pointer dereference) in increment 2018-04-22 18:06:10 +02:00
Bram Matthys 255223b308 -Wno-invalid-source-encoding:
+dnl This is purely for charsys.c... I like it so we can easily read
+dnl this for non-utf8. We can remove it once we ditch non-utf8 some day
+dnl of course, or decide to ignore me and encode them.
2018-04-22 17:44:11 +02:00
Bram Matthys ecf260dfc2 Only use -Wl,-export-dynamic while linking unrealircd or modules. 2018-04-22 17:36:04 +02:00
Bram Matthys 1c2da25573 Handle return value for truncate() - only for debugging anyway.. 2018-04-22 17:35:36 +02:00
Bram Matthys 33db0bf73e Get rid of a number of clang warnings. 2018-04-22 17:06:31 +02:00
Bram Matthys f535860670 Make check for -fno-strict-aliasing / -Wno-pointer-sign work with clang. 2018-04-22 16:50:51 +02:00
Bram Matthys 9e2f16db9e warn_unused was a good idea once, but doing more harm than good at this point.
Too many useless warnings and no easy way to ignore the result.
2018-04-22 16:11:27 +02:00
Bram Matthys 992bed3c7a Similar to previous commit, change: alter HOOKTYPE_MODE_DEOP function:
-int hooktype_mode_deop(aClient *sptr, aClient *victim, aChannel *chptr, u_int what, char modechar, long my_access, char **badmode);
+int hooktype_mode_deop(aClient *sptr, aClient *victim, aChannel *chptr, u_int what, int modechar, long my_access, char **badmode);
.. this to get rid of a compiler warning and potential problem.
2018-04-22 16:09:10 +02:00
Bram Matthys 4f0f8478cc Update HOOKTYPE_CHANNEL_SYNCED to get rid of compiler warning.
Can't safely use shorts with variable argument functions I think,
or maybe only with reduced type checking which is not what we want.
-void hooktype_channel_synced(aChannel *chptr, unsigned short merge, unsigned short removetheirs, unsigned short nomode);
+void hooktype_channel_synced(aChannel *chptr, int merge, int removetheirs, int nomode);
2018-04-22 16:02:13 +02:00
Bram Matthys bb4758f321 Add strldup() and safestrldup(), reducing ridiculous amount of code in
m_pass and m_topic.c when duplicating strings with a length limit.
+/* strldup(str,max) copies a string and ensures the new buffer
+ * is at most 'max' size, including nul byte. The syntax is pretty
+ * much identical to strlcpy() except that the buffer is newly
+ * allocated.
+ * If you wonder why not use strndup() instead?
+ * I feel that mixing code with strlcpy() and strndup() would be
+ * rather confusing since strlcpy() assumes buffer size including
+ * the nul byte and strndup() assumes without the nul byte and
+ * will write one character extra. Hence this strldup(). -- Syzop
+ */
2018-04-22 15:40:21 +02:00
Bram Matthys 6990b7d9a6 Mass-replace MyMalloc with MyMallocEx, even if it's unnecessary.
Replace century-old custom functions with C standard funcs,
such as AllocCpy -> strdup.
2018-04-22 14:55:07 +02:00
Bram Matthys 61f40a59a7 Remove unused events.h 2018-04-22 14:36:21 +02:00
Bram Matthys 9a1a4f13a4 Remove sjoin.h (was included but contents were unused) 2018-04-22 14:32:28 +02:00
Bram Matthys d5d446c38d More code cleanups to get rid of useless casts and other useless
structures such as:
-       lp->value.cp = (char *)MyMalloc(strlen(mask) + 1);
-       (void)strcpy(lp->value.cp, mask);
+       lp->value.cp = strdup(mask);
2018-04-22 14:28:22 +02:00
Bram Matthys 680715b1b5 Partially rewrite send_channel_modes() (+helper functions).
Although this is only used by servers lacking SJOIN/SJOIN3 so
is of limited use. Still.. got rid of the most ridiculous casts.
2018-04-22 13:51:37 +02:00
Bram Matthys 147ae3012b Get rid of about a million (now) useless casts and some re-indenting. 2018-04-22 10:29:36 +02:00
Bram Matthys 8d7d6d7c4c Get rid of compiler warning 2018-04-22 09:50:13 +02:00
Bram Matthys 6ef9a83c97 Surely this can use the generic #include "unrealircd.h" instead?
Avoids sendto_realops() warning.
2018-04-22 09:48:12 +02:00
Bram Matthys 5044013dd5 Make m_ircops use RPL_TEXT rather than conflicting numeric.
The output of /IRCOPS isn't meant to be client parsable anyway (which
can be seen by the use of bold text and such), so using a generic
numeric rather than wasting two others seems sensible.
Reported by The_Myth in #5066.
2018-04-22 09:42:14 +02:00
Bram Matthys a7bcb637b7 Fix small memory leak if not passing the weak cipher config test (DES/3DES..)
Reported by Sky-Dancer (#5078).
2018-04-22 09:37:06 +02:00
Bram Matthys a235b35633 This code can be a lot simpler, duh. Reported by Sky-Dancer (#5078). 2018-04-22 09:35:05 +02:00
Bram Matthys 04ca88cc1e Fix bug in blacklist module with multiple replies for the same IP.
We only parsed the first A record reply, so if the blacklist returned
multiple results /and/ you would not have all those types in your
blacklist { } block then you could miss a hit (false negative).
2018-04-22 09:04:14 +02:00
Bram Matthys ad9ca5e449 Add support for checking IPv6 addresses in blacklists.
Suggested by k4be (#5040).
2018-04-22 08:30:02 +02:00
Bram Matthys 9b1a79a191 And again a Windows compile fix (hm how did this happen.. :D) 2018-04-21 20:35:54 +02:00
Bram Matthys 4e1e7d6674 Fix windows compile problem due to previous changes. 2018-04-21 20:31:41 +02:00
Bram Matthys f0092fef4e Properly report failure of fork(). Reported by mbw (#5087). 2018-04-21 20:27:53 +02:00
Bram Matthys 74009b88ba Cleanup of init_sys(): remove old stuff for ancient OS's.
On *NIX now always redirect stdin, stdout and stderr to /dev/null for
safety and to prevent any ssh hanging as reported by mbw (#5087).
This code needs some testing on non-Linux though it should be all
POSIX, unless I missed something... :)
2018-04-21 20:12:23 +02:00
Bram Matthys 894491fa32 Change numeric 008 format which reports snomask.
This is for easier parsing of the "MODE yournick" response.
From:
:maintest.test.net 008 testuser :Server notice mask (+kcfjvGqSso)
To:
:maintest.test.net 008 testuser +kcfjvGqSso :Server notice mask
Reported by emerson in #5079.
2018-03-25 13:45:59 +02:00
Bram Matthys 2f4baddf0e Upd relnotes 2018-03-25 13:42:32 +02:00
Bram Matthys 15bf82d3c1 Fix segfault on set { hide-ban-reason; }; reported by Skizzerz (#5052) 2018-03-25 13:41:57 +02:00
Bram Matthys 8f2b77bb2e It's +e ~m:censor and not ~m:filter. Reported by acidvegas (#5054). 2018-03-25 13:31:06 +02:00
Bram Matthys 9f18118f76 Fix './unrealircd reloadtls' not reloading certificates/keys if
listen::ssl-options, sni::ssl-options or link::outgoing::ssl-options
are used. In short: it only reloaded the ones from set::ssl until
now. Bug reported by Mr_Smoke (#5072)
2018-03-25 13:22:19 +02:00
Bram Matthys 54947ed9b5 Add some initial release notes for 4.0.18 (not much..). 2018-03-07 10:40:03 +01:00
Bram Matthys 41b7e1b735 'set::cloak-method ip' not working properly with DNS resolving.
Reported by The_Myth (#5064).
2018-03-07 10:22:24 +01:00
Bram Matthys 386d2aaf8b Disable timesynch by default.
Built-in time synchronization was added in 2006 when many computers did not
do time synchronization by default. Nowadays nearly all operating systems,
including many Linux distro's, Windows and OS X have time synchronization
enabled out-of-the box.
You can still re-enable the built-in timesynch feature via:
set { timesynch { enable yes; }; };
..but you should really use NTP instead.
2018-03-07 09:40:13 +01:00
Bram Matthys afad280a1d Make NTP packet (used by timesynch) more in-line with existing implementations. 2018-03-07 09:39:20 +01:00
Bram Matthys f4b864c7b8 Update list of time servers 2018-03-07 09:38:19 +01:00
Bram Matthys 2bbdf22d76 Set git version to 4.0.18-devel 2017-12-29 09:34:31 +01:00
Bram Matthys 12848b7dae dead_link() was not sending the error message to the user.
This affected the following errors:
* Max SendQ exceeded
* Excess Flood
* Flood from unknown connection
* SSL Handshake flood detected
* Rejected link without SSL/TLS
* Various errors from the websocket module
* Other errors generated by 3rd party modules
2017-12-29 09:15:11 +01:00
Bram Matthys 6c1918bb77 Relnotes reflect 4.0.16.1->4.0.17. 2017-12-22 10:54:21 +01:00
Bram Matthys 3a67809140 Archive 4.0.16.1 release notes. 2017-12-22 10:16:28 +01:00
Bram Matthys 107424de9e Running ./autogen.sh helps when updating versions :D 2017-12-22 10:13:41 +01:00
Bram Matthys 3aa13d2bc3 UnrealIRCd 4.0.17 2017-12-22 09:52:24 +01:00
Bram Matthys 5609b36850 Fix crash with OperOverride 2017-12-22 09:48:42 +01:00
Bram Matthys 7808330176 Use ::mask style in example (even though the previous method still works) 2017-12-17 10:07:54 +01:00
Bram Matthys 0a9306ca5b CIDR support in set::antirandom::except-hosts
Or, to be more precise: converted code to use match_user() framework.
2017-12-17 10:06:39 +01:00
Bram Matthys 888b4f549c Be a bit more liberal, used for antirandom backward-compatible. 2017-12-17 10:06:09 +01:00
Bram Matthys 33ec662205 Remove a junk notice regarding SJOIN 2017-12-17 09:26:19 +01:00
Bram Matthys dc7cb17eff Fix linking problem if only using link::outgoing (and not link::incoming)
which is perfectly legal but caused a confusing error message about
a 'server name mismatch'.
2017-12-13 09:02:32 +01:00
Bram Matthys 079963cdc6 Set prio for HOOKTYPE_CHANNEL_DESTROY to -1mln so other hooks are
called later.
2017-12-06 17:53:26 +01:00
Bram Matthys 847d7d9f7d UnrealIRCd 4.0.17-rc1 2017-12-01 10:06:43 +01:00
Bram Matthys e4ce20466e Bump proto version to 4017. 2017-12-01 10:03:45 +01:00
Bram Matthys a07411217f Apparently individual PROTOCTL tokens were limited at 128 chars.
This posed a limitation with utf8 PROTOCTL NICKCHARS=... and
potentially PROTOCTL SERVERS=... if having more than 32 servers.
The limitation has now been removed (buffer length = 512)
2017-12-01 10:00:15 +01:00
Bram Matthys c603cc52b3 Reject link if we have any utf8 charset enabled and other side doesn't. 2017-12-01 09:56:08 +01:00
Bram Matthys 82659cfecc '/SPAMFILTER del <id>' was not working across servers.
This was actually a read-after-free bug (IRCOp-only)
2017-11-30 21:59:30 +01:00
Bram Matthys fa2afa8d0b vs2012.bat/vs2017.bat: Apparently %* should work on Windows.. 2017-11-27 19:42:44 +01:00
Bram Matthys cc6d7757fa Fix hang when linking servers. Reported by k4be and acidvegas. 2017-11-27 19:36:30 +01:00
Bram Matthys be0b499d94 Add ability to use vs2012/vs2017 command with CUSTOMMODULE:
Visual Studio 2012:
call extras/build-tests/windows/compilecmd/vs2012.bat CUSTOMMODULE MODULEFILE=xyz
Visual Studio 2017:
call extras/build-tests/windows/compilecmd/vs2017.bat CUSTOMMODULE MODULEFILE=xyz
2017-11-27 17:57:57 +01:00
Bram Matthys 7851742bc5 Does this work? ;) 2017-11-27 17:19:20 +01:00
Bram Matthys 40293aaaa7 Move charsys definitions from .h to charsys.c & add some fwd decl 2017-11-27 12:32:14 +01:00
Bram Matthys b923b57b35 Yeah, we need more room. 2017-11-27 12:22:42 +01:00
Bram Matthys 24a1f5ba9f Be more explicit about visually looking characters in Cyrillic script 2017-11-27 12:08:48 +01:00
Bram Matthys 62277dbccf Add note regarding CASEMAPPING and "visually identical character" checks.
Also call the UTF8 charsys support experimental. Not so much because
of issues in UnrealIRCd that are unique to utf8 but because of the many
"but's" such as lack of services support. And people suddenly waking up
and realizing there never was improved CASEMAPPING and "visually identical
character checks" in original charsys either.
2017-11-27 12:03:53 +01:00
Bram Matthys 330498c467 Update makefile.win32 for charsys move. 2017-11-27 11:50:36 +01:00
Bram Matthys abaacb6643 Permit 0xa0, if it appears inside UTF8 (via set::allowed-nickchars).
This is the "non breaking space" outside UTF8 and thus was previously
blacklisted. Keeping it blacklisted even if it appears in UTF8 is not
really an option as it means some UTF8 characters can never be used,
like the letter "nun" in Hebrew, and likely others.
2017-11-27 11:41:07 +01:00
Bram Matthys b5b01c5263 Modularize charsys (set::allowed-nickchars). It's still a mandatory
module but at least the code can be updated on the fly (or replaced
with some other secondary alternative module in the future).
src/charsys.c -> src/modules/charsys.c
This also means everyone needs to load the modules/charsys module.
2017-11-27 11:24:25 +01:00
Bram Matthys 05e289fc59 Make Windows version compile again? 2017-11-27 10:38:47 +01:00
Bram Matthys fb12e1beeb set::allowed-nickchars: added "hebrew-utf8". Supplied by Lion-O. 2017-11-27 10:30:32 +01:00
Bram Matthys e3b91f8b94 Added UTF8 support in set::allowed-nickchars
See https://www.unrealircd.org/docs/Nick_Character_Sets
Example: set { allowed-nickchars { latin-utf8; }; };
Important remarks:
* All your servers must be on UnrealIRCd 4.0.17 (or later)
* Most(?) services do not support this, so users using UTF8 nicknames
  won't be able to register at NickServ.
* In set::allowed-nickchars you must either choose an utf8 language
  or a non-utf8 character set. You cannot combine the two.
* You also cannot combine multiple scripts/alphabets, such as:
  latin, greek, cyrillic and hebrew. You must choose one.
* If you are already using set::allowed-nickchars on your network
  (eg: 'latin1') then be careful when migrating (to eg: 'latin-utf8'):
  * Your clients may still assume non-UTF8
  * If users registered nicks with accents or other special characters
    at NickServ then they may not be able to access their account
    after the migration to UTF8.

[!] Work in progress [!]
2017-11-25 21:12:41 +01:00
Bram Matthys 2a040b40a5 Improve "non-SSL client on SSL port" detection. 2017-11-25 16:01:56 +01:00
Bram Matthys 668e1241b0 Show additional information in SSL errors. Such as:
"SSL_accept(): Internal OpenSSL error or protocol error: tls_process_client_hello: unsupported protocol"
rather than just
"SSL_accept(): Internal OpenSSL error or protocol error"
Perhaps it can be shortened in a later version if this is acceptable.

This can help with tracing server linking errors, and/or
if using the junk snomask (MODE nick +s +j).
2017-11-25 15:48:28 +01:00
Bram Matthys f7df81fd24 Add AppArmor profile in extras/security/apparmor/unrealircd
See: https://www.unrealircd.org/docs/Using_AppArmor_with_UnrealIRCd
2017-11-25 09:54:47 +01:00
Bram Matthys 0d99670391 Update changelog 2017-11-23 07:56:11 +01:00
Bram Matthys 12df5a96ff Fix crash if using anope with old unreal32 mod w/SSL on non-localhost.
Sounds rare and you should really use a more recent version of anope
with the unreal4 protocol module. But, of course, we shouldn't crash.
2017-11-21 11:40:07 +01:00
Bram Matthys e68f31ba34 Update relnotes 2017-11-20 18:57:40 +01:00
Bram Matthys b7bdb1dc40 Move 4.0.16 release notes to doc/RELEASE-NOTES.old 2017-11-20 18:55:38 +01:00
Bram Matthys 87a42edd4b extbans/timedban automatic -e/-I fix (duh)
Should add a testcase for it, but the test would take 1 minute. Hmmm.
2017-11-20 18:50:02 +01:00
Bram Matthys 0cc5eddce2 extbans/timedban (~t): fix unset not working for +e/+I and reduce load
by spreading the unset event over multiple events (process roughly a
quarter each time). Not important for small networks but for big ones..
2017-11-20 16:48:48 +01:00
Bram Matthys e67d49112e Re-indent src/modules/m_mode.c (yuck...) 2017-11-20 13:48:18 +01:00
Bram Matthys e16dfdc6a6 Add release notes entry for timed bans support in +f. 2017-11-20 09:48:25 +01:00
Bram Matthys aa093f3e2b Timedban support in +f [5t#b2]:10 (set 2 minute ban on text flood).
Naturally this is only available if the extbans/timedban module is
loaded and you should do so on all your servers on the same network
if you want to avoid confusion/desynchs.
2017-11-20 09:44:25 +01:00
Bram Matthys d63bc7e187 Module API: New function is_module_loaded("name"): return 1 / 0 2017-11-20 09:43:43 +01:00
Bram Matthys 92afdb56b5 Timed bans: ~t:duration:mask
These are bans that are automatically removed by the server.
The duration is in minutes and the mask can be any ban mask.
=> Note that you need to load the extbans/timedban module!
Some examples:
* A 5 minute ban on a host:
  +b ~t:5:*!*@host
* A 5 minute quiet ban on a host (unable to speak):
  +b ~t:5:~q:*!*@host
* An invite exception for 1440m/24hrs
  +I ~t:1440:*!*@host
* A temporary exempt ban for a services account
  +e ~t:1440:~a:Account
* Allows someone to speak through +m for the next 24hrs:
  +e ~t:1440:~m:moderated:*!*@host
* And any other crazy ideas you can come up with...
2017-11-20 09:16:03 +01:00
Bram Matthys 8b0fd74c37 Bug: set::restrict-extendedbans did not have effect in stacked bans.
For example if you had:
set { restrict-extendedbans "a"; };
Then this would be rejected:
MODE #chan +b ~a:Account
However, you could still set:
MODE #chan +b ~q:~a:Account
Now this is properly rejected as well.
2017-11-19 20:43:15 +01:00
Bram Matthys 2e1e9a0b91 Load extbans/msgbypass from modules.optional.conf 2017-11-19 17:19:35 +01:00
Bram Matthys eb205e04cc Make types future-proof. Fix ~m case for +M.
BypassMessageRestrictionType -> BypassChannelMessageRestrictionType
BYPASS_MSG_* -> BYPASS_CHANMSG_*
2017-11-19 17:12:28 +01:00
Bram Matthys 1b2b28e6c6 New ban exception ~m:type:mask - allows bypassing of message restrictions.
Valid types are: 'external' (bypass +n), moderated (bypass +m/+M),
'filter' (bypass +G), 'color' (bypass +S/+c) and 'notice' (bypass +T).
Some examples:
* Let LAN users bypass +m: +e ~m:moderated:*!*@192.168.*
* Make GitHub commit bot bypass +n: +e ~m:external:*!*@ipmask
* Allow a services account to use color: +e ~m:color:~a:ColorBot
2017-11-19 16:40:39 +01:00
Bram Matthys dd6f67a266 Send errors regarding invalid bans (if available).
Fix case where conv_param() returns NULL (ban rejected)
causing is_ok() function not to be called so the user
never sees the error. We now try to call the is_ok after
conv_param returns NULL.
So not really an API change, more like a fix.
2017-11-18 19:15:44 +01:00
Bram Matthys b046b86a6e Way to customize the reject connection messages. 2017-11-17 11:13:11 +01:00
Bram Matthys e1af5ae6c5 Move AllowClient/check_client/check_init to m_nick module
(apparently one of the previous commits was partial)
2017-11-17 10:45:54 +01:00
Bram Matthys d13c7b20d0 Code cleanups in AllowClient and register_user 2017-11-17 10:37:45 +01:00
Bram Matthys 7b7f492b71 Move AllowClient/check_client/check_init to m_nick module 2017-11-17 10:10:28 +01:00
Bram Matthys cb6a118c4d antirandom sample conf: remove confusing phrase that doesn't apply 2017-11-15 11:49:46 +01:00
Bram Matthys 3c0db9c72f Move HOOKTYPE_SECURE_CONNECT hook and mode setting up a bit. 2017-11-13 17:02:05 +01:00
Bram Matthys cd7d3f0cc6 Rephrase. Still too long, though. 2017-11-13 17:00:36 +01:00
Bram Matthys 527fa9818c UnrealIRCd will no longer give +z to users on WEBIRC gateways, unless
the WEBIRC gateway gives us some assurance that the
client<->webirc gateway connection is also secure (eg: https).

This is the regular WEBIRC format:
WEBIRC password gateway hostname ip

This indicates a secure client connection (NEW):
WEBIRC password gateway hostname ip :secure

Naturally, WEBIRC gateways MUST NOT send the "secure" option if
the client is using http or some other insecure protocol.

https://github.com/ircv3/ircv3-ideas/issues/12
2017-11-13 16:47:22 +01:00
Bram Matthys 512c8fb000 Move the place where we set umode +z (secure). Needed for next. 2017-11-13 16:23:49 +01:00
Bram Matthys 31688fbae8 Update version to 4.0.17-devel to reflect development status. 2017-11-13 08:25:00 +01:00
Bram Matthys 07f056c1a4 Add reference to https://www.unrealircd.org/docs/IRCOp_guide 2017-11-13 08:17:28 +01:00
Bram Matthys d8470bb902 AppVeyor: needs both unrar and unzip 2017-11-12 08:08:41 +01:00
Bram Matthys f86cf68548 UnrealIRCd 4.0.16 2017-11-12 07:59:11 +01:00
Bram Matthys 1425583bed Zip file now. Does this work? 2017-11-11 11:06:48 +01:00
Bram Matthys 1070e43141 Windows: update dependencies (libs). 2017-11-11 11:04:51 +01:00
Bram Matthys 7d6d33a5bc Update c-ares to 1.13.0 (20-jun-2017) 2017-11-11 09:57:35 +01:00
Bram Matthys 67396c808d Update release notes 2017-11-10 19:48:32 +01:00
Bram Matthys 69264175e7 Update conf/ssl/curl-ca-bundle.crt (Wed Sep 20 03:12:05 2017 GMT) 2017-11-10 19:12:39 +01:00
Bram Matthys 1e059ca0e4 Update to PCRE2 10.30 (14-August-2017) 2017-11-10 19:05:36 +01:00
Bram Matthys 6b35aa35a8 Delete UnrealIRCd 3.2.x changelogs (they are in git anyway) 2017-11-10 18:58:21 +01:00
Bram Matthys c5e38b9272 UnrealIRCd 4.0.16-rc1 2017-10-29 12:16:43 +01:00
Bram Matthys 704487e124 Fix numerous crash bugs in server to server code.
In 3.2.x we didn't fix these bugs since servers are trusted and
should send correct commands. In 4.0.x we changed this so we would
fix them when we come across such issues at normal priority (not
consider them security issues). I now took it a step further and
actively checked/looked for these issues and a bunch of them were
found. Almost all are NULL pointer dereferences, with some exceptions.
* S2S: MODE: check conv_param return value (NULL ptr crash)
* S2S: MODE: floodprot: More checks (NULL ptr crash)
* S2S: MODE: OOB write of NULL (write NULL past last element in an array)
* S2S: NICK: old compat fixes (NULL ptr crash)
* S2S: PROTOCTL: Check for double SID=
* S2S: SERVER: require at least 3 parameters (NULL ptr crash)
* S2S: SJOIN: require at least 3 parameters (NULL ptr crash)
* S2S: SJOIN: Fix OOB read (read 1 byte past buffer)
* S2S: TKL: validate set_at and expire_at (NULL ptr crash)
* S2S: TKL: require at least 9 parameters for spamf, not 8 (NULL ptr crash)
* S2S: TKL: ignore invalid spamfilter matching type (remove abort() call)
* S2S: TOPIC: querying for topic is not permitted (NULL ptr crash)
* S2S: UID: require 12 parameters (NULL ptr crash)
* S2S: WATCH: this is not a server command (NULL ptr crash)
* Fix OOB read (1 byte beyond string) for timevals. This was reachable
  from config code, TKL (S2S) and /*LINE (Oper). In practice no crash.
* MODE: make code less confusing (effectively no change)
* TRACE: remove strange output in case of 0 lines of output
* Fix unimportant memory leak on boot (#4713, reported by dg)
* Fix small memory leak upon 'DNS i' (oper only command)
* Always work on a copy in clean_ban_mask(). This fixes a bug that could
  result in a strlcpy(buf, buf, sizeof(buf)). So, overlapping strings,
  which is undefined behavior.
2017-10-29 11:20:52 +01:00
Bram Matthys d574183825 Travis-CI: Use CPPFLAGS instead of CFLAGS 2017-10-23 16:52:28 +02:00
Bram Matthys 0dadba5482 Travis-CI: Use -DFAKELAG_CONFIGURABLE for tests. From 300 to 30s. 2017-10-23 16:37:22 +02:00
Bram Matthys 52a7478bd0 Comment it out like this so we can use -D 2017-10-23 16:37:00 +02:00
Bram Matthys 1dfcac9794 Travis-CI: Blah. 2017-10-23 14:14:58 +02:00
Bram Matthys 0318edbad0 Reinstall git during run-tests (may have been removed earlier in 'local-curl' test) 2017-10-23 13:42:16 +02:00
Bram Matthys cec74b0208 Use MAKE="make -j3" to make ./Config run faster as well. 2017-10-23 12:38:57 +02:00
Bram Matthys 13740a7d13 Travis-CI: Generate TLS certificate during test build (needed for testing further on) 2017-10-23 12:34:41 +02:00
Bram Matthys 821ad6ec06 Add some clear marker between compile tests and other tests 2017-10-23 12:05:33 +02:00
Bram Matthys 5f3f6aa827 Travis-CI: run-tests: install 'rake' 2017-10-23 12:02:52 +02:00
Bram Matthys e1590fc8bc Run make with -j3. Add +x to extras/build-tests/nix/run-tests (:D) 2017-10-23 11:53:50 +02:00
Bram Matthys 866a060533 Use 'set -e' and try to run test framework 2017-10-23 11:49:06 +02:00
Bram Matthys b23a3ff7b9 Travis-CI: path changes 2017-10-23 11:16:05 +02:00
Bram Matthys 4dc5324e57 Travis-CI: cleanup / new dir structure 2017-10-23 11:13:05 +02:00
Bram Matthys 77234b2b8d API change for HOOKTYPE_PRE_INVITE and fix #5023:
* API change for HOOKTYPE_PRE_INVITE:
  (aClient *sptr, aClient *target, aChannel *chptr, int *override)
  Modules must now send the error message instead of only returning
  HOOK_DENY. Also check for operoverride and set *override=1.

This so modules can send their own error messages instead of the
default message being sent ("channel is +V" - which is not true).

Reported by Gottem (#5023).
2017-10-23 10:07:33 +02:00
Bram Matthys d11484c2cf Add build status badge for Windows (AppVeyor) 2017-10-23 09:00:14 +02:00
Bram Matthys 8981b87c72 Update libressl paths for VS2017
(or actually current unreal w/o rollback for vs2012)
2017-10-22 18:11:24 +02:00
Bram Matthys 8a17f5aad2 I've stopped trying to understand this.
Apparently there's a difference between sed 3.x and sed 4.x
2017-10-22 17:11:45 +02:00
Bram Matthys a55aa2a39a 1) From double escaping to single escaping, such joy.
2) Use 'iscc' rather than 'compil32' since the latter pops up a
   dialog box which blocks the entire build process.
3) Apparently the VS2017 image has a broken VS2012 since it bails
   on winsock.h. So try to use different images for both builds.
2017-10-22 16:41:23 +02:00
Bram Matthys a9a94652ec Be consistent when setting WINVER. This fixes a compile issue
with Visual Studio 2017.
2017-10-22 16:23:52 +02:00
Bram Matthys 7527de3820 Silence rar extraction stuff - way too noisy 2017-10-22 16:18:50 +02:00
Bram Matthys 81e8ef3b49 Tell AppVeyor to use VS2017 image, apparently not the default. 2017-10-22 16:17:40 +02:00
Bram Matthys 1a434963b7 Duh 3 2017-10-22 16:11:24 +02:00
Bram Matthys b3480c3b42 Duh 2 2017-10-22 16:07:32 +02:00
Bram Matthys a6049add32 Duh. 2017-10-22 16:06:54 +02:00
Bram Matthys 99f9d1aa7c AppVeyor: restructuring, add vs2017 target, .. 2017-10-22 16:02:48 +02:00
Bram Matthys b941b184f0 Let's try an environment (build config) 2017-10-22 14:47:38 +02:00
Bram Matthys e505a4b99c Something tells me error checking won't work in batch files without this.. 2017-10-22 14:41:54 +02:00
Bram Matthys 5510f6dc0d Ah no. 2017-10-22 14:38:19 +02:00
Bram Matthys 25864b9cb6 Nevermind, use external batch file. 2017-10-22 14:34:41 +02:00
Bram Matthys 5ec84b1629 Try 5001 2017-10-22 14:31:54 +02:00
Bram Matthys 593cacbc90 Hm CRLF shit? 2017-10-22 14:28:23 +02:00
Bram Matthys 40d8fe9376 Initial appveyor file for automated Windows build. 2017-10-22 14:25:54 +02:00
Bram Matthys 6ab81ab7b4 Fix bug caused by 5124e60b7c a few days ago:
channel MODE without parameters being sent when force-rejoin is in use.
2017-10-18 17:39:54 +02:00
Bram Matthys d67de82786 Add extra 6 second fake lag penalty on /INVITE. 2017-10-18 15:56:06 +02:00
Bram Matthys 5bedeaa9bf Set cptr->name after EAUTH. Fixes bug #4915 reported by Eman:
missing server name in link rejection message (clock mismatch).
2017-10-18 15:43:13 +02:00
Bram Matthys f8cab0d093 isupport does not update maxbans. Reported by dyfrgi (#4882). 2017-10-18 15:22:33 +02:00
Bram Matthys a716e3ccaa The default oper snomask now includes 'S' (spamfilter notices). 2017-10-18 15:11:12 +02:00
Bram Matthys 70b64c2ad8 If you have any blacklist { } block then UnrealIRCd will set an
set::handshake-delay of 2 seconds by default. This will allow (most)
DNSBL checking to be finished before the user comes online, while
still allowing a smooth user experience.
If your DNS(BL) is slow then you could raise this setting slightly.
2017-10-18 15:03:12 +02:00
Bram Matthys e4f4336f15 Add set::handshake-delay https://www.unrealircd.org/docs/Set_block#set::handshake-delay 2017-10-18 14:57:35 +02:00
Bram Matthys b56c5b985f This check is already present in parse_client_queued() 2017-10-18 14:31:35 +02:00
Bram Matthys 3aa6adcbfc Rename 'draft/sts' to 'sts'. 2017-10-17 18:12:13 +02:00
Bram Matthys 98b4832b27 clarify 2017-10-12 20:18:24 +02:00
Bram Matthys c2d80028b3 Update release notes to reflect latest changes. 2017-10-12 20:16:42 +02:00
Bram Matthys 307243ff7a Show (previously hidden) umode -r to user on nickchange.
Reported by Mewsito (#4949).
2017-10-11 18:25:58 +02:00
Bram Matthys 1d659296c2 Fix Windows compile problem 2017-10-11 17:33:39 +02:00
Bram Matthys b7b8e41ac4 CAP chghost: also send CHGHOST message to "self" (impacted user)
https://github.com/ircv3/ircv3-specifications/issues/324
2017-10-11 10:29:00 +02:00
Bram Matthys df5ed0884e Use spkifp instead of sslclientcertfp in example conf.
Add example link block for services (but reject if user does not
change the default password)
2017-10-09 15:10:37 +02:00
Bram Matthys 9e1160b74f Add './unrealircd spkifp' which will output the SPKI fingerprint
along with the exact password section to use in the link block
on the other side of the link.
Also used in tutorial now at
https://www.unrealircd.org/docs/Tutorial:_Linking_servers
2017-10-09 14:59:19 +02:00
Bram Matthys 55e4c8ea03 Tell admins to verify the SSL/TLS certificates of their server links.
https://www.unrealircd.org/docs/Link_verification
This is only outputted if both sides are 4.0.16+ so we can use spkifp
and use the same instruction on both sides of the link.
(If we would do it for previous versions then we would only give
 half of the instructions to the users, which makes no sense)
2017-10-09 14:17:35 +02:00
Bram Matthys 16faccb777 Add support for 'spki' authtype. Example:
password "AHMYBevUxXKU/S3pdBSjXP4zi4VOetYQQVJXoNYiBR0=" { spkifp; };
This value will stay the same even for new SSL/TLS certificates,
as long as the key stays the same. This can be useful in case of
Let's Encrypt (if you use a tool that keeps the same key, that is,
certbot does not at the moment). Suggested by grawity (#5014).

Also make auth type 'sslclientcert' available as 'cert' and
make 'sslclientcertfp' available as 'certfp'.
2017-10-09 12:28:08 +02:00
Bram Matthys 75ab9a766c Dumdeedum 2017-10-08 18:21:43 +02:00
Bram Matthys f2603cdc49 When booting the IRCd and the log is full (log::maxfilesize), the IRCd
would not write the appropriate 'Max file size reached' message to the
old log file. Reported by NoMiaus (#4919).
2017-10-08 18:19:16 +02:00
Bram Matthys abd7354bbb A common complaint is that spamfilters are hard to remove. Well, no more!
There is now '/spamfilter del' which will output all spamfilter along with
the appropriate command to delete each spamfilter (by unique ID).
This way it should be easy for anyone to delete an existing spamfilter.

We also refer to this new feature from '/spamfilter', '/stats spamfilter',
etc.
2017-10-08 17:09:28 +02:00
Bram Matthys 16f71e8360 Add option: set { ban-include-username yes; }; which will make bans
places by spamfilters (and some other systems) to be placed not on *@ip
but rather on user@ip. Note that this won't work for ZLINE/GZLINE since
no ident/username lookups are done in such cases.
Bit of a niche feature but okay..
2017-10-08 15:44:42 +02:00
Bram Matthys 1b6d49a9dc Add set { cloak-method ip; }; which will make cloaking only be done
on the IP and thus result in an XX.YY.ZZ.IP cloaked host.
This so you can have "IP cloaking" without disabling DNS lookups.
GLINES on hosts still work and IRCOps (and yourself) can still see
the host in /WHOIS.
Requested in 4957 by Gottem and The_Myth.
2017-10-08 15:14:57 +02:00
Bram Matthys 66143927e0 In /STATS S display throttling as anti-flood::connect-flood, as that
is the new name (since about 2 years).
2017-10-08 09:12:46 +02:00
Bram Matthys b52b82f8a5 Tweaks 2017-10-07 21:42:41 +02:00
Bram Matthys ee2435689c Some initial work on release notes for 4.0.16. 2017-10-07 21:36:22 +02:00
Bram Matthys 87815ad397 Automatically discover SASL server if saslmechlist is sent by services
and set::sasl-server is not set by the administrator. Looks like this:
*** Services server 'services.test.net' provides SASL authentication, good! I'm setting set::sasl-server to 'services.test.net' internally.
Hopefully this will increase SASL availability significantly.
That is, once anope and atheme start sending the saslmechlist to us,
of course ;) (see commit d6e26d59e5)
2017-10-07 21:05:49 +02:00
Bram Matthys 7801dc888d Move CAP NEW "sasl" sending to after EOS (End Of Synch)
This so saslmechs are properly sent in case of services (re)connect,
otherwise the CAP NEW is sent too early when the saslmechs are
not known yet.
NOTE: This makes sending "EOS" mandatory for any SASL servers.
You should be doing this since 14 years ago (it was added
in 3.2beta18 in August 2003) so hopefully that is the case.
Anope is good anyway :)
2017-10-07 19:40:39 +02:00
Bram Matthys d6e26d59e5 Allow services to set the saslmechlist so it can be used by sasl v3.2.
Note to services coders: send something like this:
MD client your.services.server saslmechlist :EXTERNAL,PLAIN
2017-10-07 19:20:06 +02:00
Bram Matthys 5bd9878413 Only send CAP parameters (token=aaaaaa) to clients with CAP proto 302 or higher,
as per CAP specification. (So use "CAP LS 302" to see them)
2017-10-07 19:18:21 +02:00
Bram Matthys 5c7d89a642 Add support for "CAP extended-join". 2017-10-07 18:33:25 +02:00
Bram Matthys 2248699c60 Fix crash due to previous enhancements. 2017-10-07 17:25:37 +02:00
Bram Matthys 5124e60b7c Add "CAP chghost" support. Internal recode of userhost changes.
Fix force-rejoin not working if doing SVSMODE -x/+x (Koragg, #5015).

Note to module coders:
Please use the following procedure in case of an user/host change:
* userhost_save_current(acptr);
* << change username or hostname here (or both) >>
* userhost_changed(acptr);
This function will take care of notifying other clients about
the userhost change, such as doing PART+JOIN+MODE if force-rejoin
is enabled, and sending :xx CHGHOST user host messages to
"CAP chghost" capable clients.

Also, small note to everyone:
If force-rejoin is enabled we will not send the PART+JOIN+MODE to
"CAP chghost" capable clients. Doing so is just a hack to notify
people of a userhost change. "CAP chghost" users can thus benefit
from the reduced noise in this respect.
2017-10-07 13:31:30 +02:00
Bram Matthys 0fd265349a Remove HOSTILENAME config.h option since running without it is
and has never been supported.
2017-10-07 09:33:48 +02:00
Bram Matthys 23ce2eaabe It helps if you also update the *.h files to reflect those changes. Duh. 2017-10-07 09:32:09 +02:00
Bram Matthys 3d38adff4f Rename config.h setting CLIENT_FLOOD to DEFAULT_RECVQ since that is what
it is. You should simply set a class::recvq instead of changing this
in config.h.
2017-10-07 09:29:47 +02:00
Bram Matthys 885e474211 Removed option in config.h to disable NO_FLOOD_AWAY. You can already
tweak or disable this via set::anti-flood::away-flood.
2017-10-07 09:25:45 +02:00
Bram Matthys 1a80309314 Remove strange include/config.h option called CMDLINE_CONFIG which
would allow you to use -f even if the IRCd is suid or sgid.
This is not anything we or you ever want to permit since this is
a major security problem. This setting is now gone. I doubt
anyone used it.
2017-10-07 09:22:32 +02:00
Bram Matthys 08496ec47b Remove various #define's from config.h that don't actually do anything
(or are incorrectly documented).
2017-10-07 09:19:14 +02:00
Bram Matthys 7a33a2c019 Move CONNECTTIMEOUT to set::handshake-timeout and clarify the setting
at https://www.unrealircd.org/docs/Set_block#set::handshake-timeout
Requested by marco500 in #5011.
2017-10-07 08:45:48 +02:00
Bram Matthys d6acbf63b0 Move MAXUNKNOWNCONNECTIONSPERIP to set::max-unknown-connections-per-ip.
Rarely tweaked setting, but for those who need it it's easier in the conf.
Requested by marco500 (#5011). For documentation of this setting see:
https://www.unrealircd.org/docs/Set_block#set::max-unknown-connections-per-ip
2017-10-07 08:15:52 +02:00
Bram Matthys 37dbdfeee3 Bump version to 4.0.16-devel. This version is under development.
You should always use https://www.unrealircd.org/ for stable releases.
In case you wondered what happened with 4.0.15: that version consists
of cherry-picked / backports of the two crash fixes from this 'unreal40'
development branch. The current code simply wasn't ready yet for a
rushed security release.
2017-10-01 19:37:29 +02:00
Bram Matthys 6dd147b941 Fix 2nd crash bug. Found when searching for related crash issues. 2017-10-01 13:19:12 +02:00
Bram Matthys 47eebad53d Fix crash bug, reported by Joseph Bisch. 2017-10-01 13:18:45 +02:00
Bram Matthys 5399e060fa Send CAP DEL sasl if set::sasl-server squits and CAP NEW when it returns.
(Only to cap-notify and v3.2 clients, of course)
Also fix a "bug" where sts parameters were not shown in CAP NEW tls.
2017-09-30 15:19:29 +02:00
Bram Matthys ac65e32a26 Add CAP v3.2 support. Add 'cap-notify' support.
Delete CAP CLEAR as it's use is discouraged (too much trouble).
Delete CAP ACK (from client2server) as this is only for CAP's with
ack modifiers. This is something we don't use, and which has been
deprecated in v3.2 of the spec.
2017-09-30 14:34:06 +02:00
Bram Matthys 461fa9a48a Store CAP version in use in sptr->local->cap_protocol. 2017-09-30 12:50:36 +02:00
Bram Matthys 7d381086ad Remove CLICAP_FLAGS_CLIACK. Never understood this idea. Unused and deprecated it seems. 2017-09-30 12:35:56 +02:00
Bram Matthys 44052b86c0 Remove CLICAP_FLAGS_STICKY. We don't use this anyway. 2017-09-30 12:33:57 +02:00
Bram Matthys fbd4e74663 You can now have multiple webirc { } blocks with the same mask.
This permits multiple blocks like..
webirc {
    mask *;
	password "....." { sslclientcertfp; };
};
..should you need it.
In other words: we don't stop matching upon an authentication failure.
2017-09-30 09:53:04 +02:00
Bram Matthys 638b189804 Users connecting to the IRC server from the same machine could be seen as
"localhost", even though they were using an IP other than 127.0.0.1.
So, they were local but not using loopback. Reported by The_Myth (#5013).
2017-09-20 15:51:41 +02:00
Bram Matthys 838354f155 UnrealIRCd 4.0.14 2017-09-15 10:23:49 +02:00
Bram Matthys de9216a339 * Please do not use UmodeDel, CmdoverrideDel and any other *Del()
functions from MOD_UNLOAD. [..]
2017-09-15 10:19:55 +02:00
Bram Matthys 217ea69fe8 Use ircs:// link instead of irc:// 2017-09-15 08:24:30 +02:00
Bram Matthys 3de335ea0c Update curlinstall link to use https. Previously this wasn't done
because so many people had a broken system/wget/curl, that is: without
the appropriate trusted CA certificates installed.  If this is still
the case, then: too bad.  People who DO have a proper setup shouldn't
be held back with regards to security by such users.
2017-09-15 08:19:39 +02:00
Bram Matthys 91e108499e Convert remaining http:// links to https:// 2017-09-15 08:19:08 +02:00
Bram Matthys a20dc5f8c1 Use static buffer in cipher_check() like in verify_certificate() - duh. 2017-09-10 16:41:34 +02:00
Bram Matthys e7c7b1daff Don't show draft/sts and other unREQ'able CAP's in "CAP LIST" (only in "CAP LS"). 2017-09-09 12:37:50 +02:00
Bram Matthys 3cbf2536b2 Clarify 2017-09-08 08:26:53 +02:00
Bram Matthys 1f856745e5 4.0.14-rc1 2017-09-08 08:16:21 +02:00
Bram Matthys 366a494c00 Last update of release notes before -rc1? 2017-09-08 08:15:54 +02:00
Bram Matthys 2914695681 We can't prevent all user mistakes, but we can at least prevent some.. 2017-09-08 07:53:20 +02:00
Bram Matthys 461ce8016a Some modes in set::modes-on-connect gave an error. These were
old user modes such as +N and +A that were previously forbidden but
may nowadays be (re-)used by 3rd party modules.
Reported by marco500 (#4980).
2017-09-08 07:39:56 +02:00
Bram Matthys ea974ed018 Update Windows makefile (+SRC/OPENSSL_HOSTNAME_VALIDATION.OBJ) 2017-09-06 16:51:18 +02:00
Bram Matthys 296decf648 This code can be removed now that we have a working verify_certificate().
Also broke LibreSSL (SSL_CTX_get0_param undefined).
2017-09-06 16:49:25 +02:00
Bram Matthys a21222a672 Bump MODDATA_MAX_CLIENT from 8 to 12 and move MODDATA_MAX_* to include/config.h 2017-09-06 16:29:48 +02:00
Bram Matthys 05c6dfbb35 Update release notes 2017-09-06 16:22:13 +02:00
Bram Matthys edb144d570 Update cipher suite to include TLSv1.3 ciphers.
This so upcoming UnrealIRCd version will work with TLSv1.3 whenever it
becomes an official standard and is included in OpenSSL/LibreSSL.
(Verified to work with openssl git master branch)
2017-09-06 16:09:22 +02:00
Bram Matthys a5dbd3aa7c SSL/TLS: Use SNI in outgoing server link. 2017-09-06 14:32:21 +02:00
Bram Matthys b757d2eff0 Show set::sasl-server in '/STATS set'. Suggested by Gottem (#0004997). 2017-09-06 08:44:12 +02:00
Bram Matthys 08bc61ec00 We now refuse to enable SSL/TLS with weak ciphers: DES, 3DES, RC4. 2017-09-06 08:21:14 +02:00
Bram Matthys 959195e7d7 Update Windows makefile to match *NIX objects 2017-09-03 16:27:55 +02:00
Bram Matthys 58ebc9c6be Move previous release notes (4.0.13) to doc/RELEASE-NOTES.old 2017-09-03 16:23:05 +02:00
Bram Matthys 788f628403 Update release notes 2017-09-03 16:22:44 +02:00
Bram Matthys 3510a98e50 Shorten the set::plaintext-policy text. Content was good but it was too long. 2017-09-03 16:10:37 +02:00
Bram Matthys 8fad7c563d Add cap/link-security and cap/plaintext-policy modules. 2017-09-03 16:06:39 +02:00
Bram Matthys 1faa91ed0e Add helper function plaintextpolicy_valtochar(). 2017-09-02 15:49:02 +02:00
Bram Matthys 78695f3eea Permit attaching client moddata to servers (and synch properly, if .synch=1) 2017-09-02 15:47:58 +02:00
Bram Matthys 0da1fdb2d2 Fix possible crash in /STATS due to change from yesterday.
Other than that, some minor style and real things.
2017-09-02 08:27:55 +02:00
Bram Matthys 3ade6c7ecb :D 2017-09-01 18:15:47 +02:00
Bram Matthys 199a7e162d Make new functions more generic and use it from crash reporter so
people with older OpenSSL libraries (and LibreSSL) benefit from
the hostname validation code there as well.
2017-09-01 17:28:49 +02:00
Bram Matthys aa829bce12 New option link::verify-certificate [yes|no]. This will cause UnrealIRCd
to validate the certificate of the link, making sure that:
1) The certificate is issued by a trusted Certificate Authority (CA).
2) The name on the certificate matches the name of the link block.
Some things still need to be done: documentation, more testing, and
using the X509_check_host() function when available.
2017-09-01 17:10:29 +02:00
Bram Matthys ac66a0fe12 Add hostname verification code from ssl conservatory & curl
(will be used in next commit)
2017-09-01 17:02:36 +02:00
Bram Matthys 5ff4fb3f87 Remove old code.. this is already set in link->ssl_ctx by init_ctx().
(tested)
2017-09-01 09:32:51 +02:00
Bram Matthys 6d7be72f2b Remove ssl option 'no-self-signed'. Use 'verify-certificate' instead.
Nobody used this option and it only caused the following confusing
(and potentially insecure) behavior:
Previously if you had 'verify-certificate' enabled then the certificate
would be checked, BUT if it was a self-signed certificate (and thus
not passing verify-cert) it was STILL allowed unless you also
specified the 'no-self-signed' option. This might be correct as per
documentation but is way too confusing for the user.
Now you simply have to choose whether you verify the certificate or
not. No special handling for self-signed certificates.
2017-09-01 08:55:01 +02:00
Bram Matthys 08b621aa08 +Minor issues fixed 2017-08-25 20:38:30 +02:00
Bram Matthys 5cf28d0d46 It was possible to have a block named 'link irc1.test.net' and then get
connected to a server introducing himself as irc2.test.net. This
was rather confusing, of course. Wasn't much of a security issue since
this only happened in outgoing connects and naturally all authentication
need to pass as well.
2017-08-25 20:34:27 +02:00
Bram Matthys bfb3e0847b If you had an unknown link::someunknownitem then UnrealIRCd would not
throw an error. Now it does.
2017-08-25 17:48:54 +02:00
Bram Matthys 74466a4065 Consider any client with the same IP as a listen::ip to be loopback.
This is done for users on shared IRCd shells[*] which may be used to (or
forced to) connect services via their alias IP rather than 127.0.0.1
due to bind restrictions. This, in turn, to ease the transition to
set::plaintext-policy::server deny.
[*] Side-note: The UnrealIRCd team recommends using a VPS and not a
    shared shell, as the latter is considerably less secure.
2017-08-20 10:35:45 +02:00
Bram Matthys d490b0ee3e "No log { } block found -- using default: errors will be logged to 'ircd.log'"
Unfortunately it was then logging to tmp/ircd.log rather than logs/ircd.log
2017-08-19 12:12:06 +02:00
Bram Matthys efb344b9b2 duh. 2017-08-19 12:07:54 +02:00
Bram Matthys 6afbc4ee99 Relative paths for sslclientcerts did not work. This has been fixed
so password "ssl/something.crt" { sslclientcert; }; works OK now.
2017-08-19 12:02:25 +02:00
Bram Matthys bfa00e95b7 Set default plaintext-policy to be 'warn' for /OPER and 'deny' for
server linking. Write some draft release notes for later use.
2017-08-19 11:19:33 +02:00
Bram Matthys 361a354c4b If set::plaintext-policy::user is 'deny' and a non-SSL/TLS-user is
trying to connect then SASL is not advertised.
2017-08-16 19:45:17 +02:00
Bram Matthys d53d46fce4 Add set::plaintext-policy block by which you can warn or deny user connections,
ircop /OPER attempts and incoming server linking attempts from connections
that are not encrypted with SSL/TLS.
Documentation: https://www.unrealircd.org/docs/Set_block#set::plaintext-policy
2017-08-16 19:39:28 +02:00
Bram Matthys 40e3e11b61 UnrealIRCd 4.0.13 2017-08-15 12:12:10 +02:00
Bram Matthys 0b5e46cd23 Fix extban_conv_param_nuh not marked as extern. Reported by Gottem (#4975) 2017-08-15 12:08:11 +02:00
Bram Matthys c8a67f9436 Update curl-ca-bundle to Wed Jun 7 03:12:05 2017. Remove CACERT. 2017-08-15 11:48:48 +02:00
Bram Matthys c7457434c4 .. 2017-08-10 09:37:38 +02:00
Bram Matthys 77f8b9ed5a Build fix for cap/sts on Windows 2017-08-10 09:36:18 +02:00
Bram Matthys 74d5f380dd A /REHASH from a WebSocket connection would cause a crash (requires
IRCOp privileges). This is a rather technical issue, we now simply
reject the rehash. See comments in code for more information.
2017-08-10 09:02:05 +02:00
Bram Matthys 18202a0f73 Fix "ban too broad" checking. Reported by Gottem in #4961.
* The 'ban too broad' checking was broken. This permitted glines such
  as 192.168.0.0/1 being set. Now it rejects CIDR of /15 and lower.
  To disable this safety measure you can (still) use:
  set { options { allow-insane-bans; }; };
2017-08-10 08:30:54 +02:00
Bram Matthys f5b29ed7de Add modules/cap directory to Windows installer. 2017-08-10 07:54:01 +02:00
Bram Matthys 8ccf5700f1 Prepare for 4.0.13-rc1 2017-08-10 07:46:17 +02:00
Bram Matthys d222a18286 Fix "simple" spamfilters being synched as "posix" during server linking.
This was due to lack of TKLEXT2 support in the m_tkl_synch() code.
2017-08-10 07:07:37 +02:00
Bram Matthys 69a2e7d994 Whoops. This code cleanup screwed up STS. Should work now. 2017-08-09 19:11:28 +02:00
Bram Matthys 6c539c8566 Bump Websocket module version to 1.0.0 2017-08-09 18:12:03 +02:00
Bram Matthys 06aa2ad79a Websocket module: don't send CR/LF in outgoing frames and don't require
CR/LF in incoming frames (simply ignore them if they are present).
2017-08-09 18:00:44 +02:00
Bram Matthys ab3e65a76f Load cap/sts module by default (only active if set::ssl::sts-policy is set). 2017-08-09 15:49:03 +02:00
Bram Matthys 455420afc1 SNI-specific sts-policy is now possible. (As recommended by IRCv3 draft spec) 2017-08-09 15:39:52 +02:00
Bram Matthys 0f612a3b30 SNI: Fix for wildcard certificates 2017-08-09 15:20:38 +02:00
Bram Matthys 84776eeeb2 Add support for draft/sts http://ircv3.net/specs/core/sts-3.3.html
Docs: https://www.unrealircd.org/docs/Set_block#set::ssl::sts-policy::port
Example:
set {
    ssl {
        certificate "ssl/server.cert.pem";
        key "ssl/server.key.pem";
        sts-policy {
            port 6697;
            duration 180d;
        };
    };
};
IMPORTANT: Only use this if you know what STS is and what the
implications are. The most important things being A) set a correct
port and B) you need a 'real' SSL certificate and not a self-signed
certificate.

More documentation may follow at another place.
2017-08-09 14:16:03 +02:00
Bram Matthys 1cc6dd3d5b Add Makefile and placeholder module. 2017-08-09 13:30:52 +02:00
Bram Matthys 6500af6ba5 * Use free_ssl_options from generic conf.
* Actually free ssl_options in free_ssl_options.
2017-08-09 13:27:50 +02:00
Bram Matthys ea651384f8 Add groundwork for draft/sts (more to follow)
Module coders:
* The cap->visible(void) callback function is now cap->visible(aClient *)
* There is a new cap->parameter(aClient *) callback function.
* Various updates to subfunctions to pass 'sptr' (due to the above),
  including clicap_find(sptr, ...)
* New CLICAP_FLAGS_UNREQABLE flag
Other:
* There is a new (src/)modules/cap directory containing the sts module,
  well.. once I commit it :D
2017-08-09 13:21:36 +02:00
Bram Matthys b2129205f9 Added support for the "Server Name Indication" (SNI) SSL/TLS extension.
See https://www.unrealircd.org/docs/Sni_block
Requested in #4380 by Eman.
2017-08-09 12:00:04 +02:00
Bram Matthys 590e345b8d ./autogen.sh (see previous commits) 2017-07-07 18:15:47 +02:00
Bram Matthys e6a52ec919 Merge pull request #69 from binki/unreal40-moregitignore
Add src/Makefile (built) to .gitignore
2017-07-07 13:57:27 +02:00
Bram Matthys 0a8cd1347e Merge pull request #68 from binki/without-privatelibdir
Support --without-privatelibdir for packagers.
2017-07-07 13:57:06 +02:00
Nathan Phillip Brink 6591e6bcee Do not try to delete libcares when not using PRIVATELIBDIR. 2017-07-06 06:47:49 +00:00
Nathan Phillip Brink 4edcb9226c Add src/Makefile (built) to .gitignore 2017-07-06 06:19:58 +00:00
Nathan Phillip Brink 2b94733cbe Support --without-privatelibdir for packagers. 2017-07-06 06:11:21 +00:00
Bram Matthys 7b092f7aeb Verify certificate when submitting bug report. 2017-06-19 16:28:50 +02:00
Bram Matthys 0c1f299b0b UnrealIRCd 4.0.12.1 release 2017-06-02 08:56:24 +02:00
Bram Matthys d27d3760c7 CAP NAK not sent for unrecognised CAPs in all cases. Reported by
jwheare (#4958).
2017-06-02 08:22:19 +02:00
Bram Matthys 072d8537b8 Prevent /OPER for oper blocks with non-existant operclass, as doing so
would only be confusing. Reported by Gottem (#4950).
2017-06-02 07:41:44 +02:00
Bram Matthys 7b8f17ef5e Rename variable (no other changes) 2017-06-02 07:33:15 +02:00
Bram Matthys 6c3c55b4e5 Fix new user mode +Z (secureonlymsg) not working properly across
server links. Reported by HeXiLeD (#4953).
2017-05-28 09:41:11 +02:00
Bram Matthys ffc5f0ce44 Update modules.optional.conf 2017-05-13 12:33:37 +02:00
Bram Matthys 2838ef6266 Mark all shipped modules as official (non-3rd-party). 2017-05-13 12:29:05 +02:00
Bram Matthys 50801f5068 Add conf/modules.optional.conf. This loads all additional modules that
are not in modules.default.conf.
2017-05-13 12:24:55 +02:00
Bram Matthys 01687486f0 Bump MAXCONNECTIONS for Windows. Due to FD number assignments this
value needs to be much higher than the number of clients the IRCd
should be able to hold. The new value is 10k which should allow
at least 1-2k clients.
2017-05-12 17:12:18 +02:00
Bram Matthys b86419173a Compile secureonlymsg module on Windows 2017-05-12 17:10:53 +02:00
Bram Matthys bbf33b62dc UnrealIRCd will now refuse to run as root, as promised a couple of versions ago.
https://www.unrealircd.org/docs/Do_not_run_as_root
2017-05-12 11:42:01 +02:00
Bram Matthys 3dc27370a1 Prepare for UnrealIRCd 4.0.12 release. 2017-05-12 11:24:36 +02:00
Bram Matthys 5e378fb02b Since 95% of the crash reports are due to bugs in 3rd party modules we now
have to discourage people with 3rd party modules loaded from blindly
submitting crash reports.
2017-05-12 10:25:45 +02:00
Bram Matthys 0412c86d17 Update OpenFiles on listener close (not very common, but..) 2017-05-10 17:18:47 +02:00
Bram Matthys a6f5460ad8 Update OpenFiles upon failed SSL connect to remote server. Reported by Eman (#4948). 2017-05-10 17:03:45 +02:00
Bram Matthys ee9f8441bc Bump lag for remote MOTD requests. 2017-04-07 20:06:36 +02:00
Bram Matthys 0035cafdba Fix server setting +b even if the ban list is full when using +f.
Reported by NoMiaus (#4906).
2017-03-26 15:48:05 +02:00
Bram Matthys e62ea1dedd Module coders: added two functions to search for user modes:
has_user_mode(acptr, 'i'): returns 1 / 0
find_user_mode('i'): returns the user mode (as 'long')

extern int has_user_mode(aClient *acptr, char mode);
extern long find_user_mode(char mode);
2017-03-26 15:40:36 +02:00
Bram Matthys b6f8ddd456 Fix Jumpserver not working for SSL users due to old #ifdef USE_SSL.
Reported by NoMiaus (#4907).
2017-03-26 15:38:04 +02:00
Bram Matthys 0c6fb46704 Minor code cleanup 2017-03-22 16:32:59 +01:00
Bram Matthys fcaa69157b Fix crash when unloading (not reloading) module that uses ModData (#4903). 2017-03-22 10:51:29 +01:00
Bram Matthys e6a02003f5 Delayjoin (chanmode +D): When people are de-oped we now part 'hidden' users.
Prevents client desynch.
2017-03-22 08:25:03 +01:00
Bram Matthys 4c39648b03 Improve source code (setflags -> oldumodes) 2017-03-20 16:18:43 +01:00
Bram Matthys cd0836572f Fix /mode nick -t and force-rejoin. Reported by NoMiaus (#4901). 2017-03-20 16:17:23 +01:00
Bram Matthys ec9db8fd5f Move match_user() to module (efunc in m_tkl) 2017-03-18 15:00:34 +01:00
Bram Matthys 000f9e10fc 'nocodes' module: also strip/block italic. Suggested by The_Myth (#4898). 2017-03-18 14:50:49 +01:00
Bram Matthys af694e0cbd Fix crash in Windows GUI 2017-03-13 08:30:45 +01:00
Bram Matthys 0963cddd28 Vhosts were not synched correctly during linking. Reported by unic0rn (#4890).
This was not really noticeable on 2 server networks, but in A-B-C linking setups
a vhost of user A would not show on server C.
2017-03-11 10:50:00 +01:00
Bram Matthys abd4296d8e Add support for negative ip/hostmask matching in deny channel / allow channel
and at some other places (any place which uses the 'mask' system).
This allows things like:
deny channel { channel "#help*"; };
allow channel { channel "#help-nolan"; mask !192.168.*; };
allow channel { channel "#help-lan"; mask 192.168.*; };
Similarly in vhost blocks etc etc..
2017-03-10 09:20:15 +01:00
Bram Matthys f65d5fce8b Add new option: set { hide-list { deny-channel }; };
This will hide channels in /LIST that are denied by deny channel blocks
(and not exempt via allow channel blocks).
2017-03-10 08:48:08 +01:00
Bram Matthys 5c417b4235 Fix minor memleak on /REHASH (set::sasl-server) 2017-03-08 17:30:28 +01:00
Bram Matthys 176566962a Add support for 'mask' in allow channel { } and deny channel { }.
This so you can easily add allow/deny channel blocks for IP ranges.
Possibly not so useful for services-networks (ban/akick is very similar)
but has some use on serviceless networks.
2017-03-08 17:28:15 +01:00
Bram Matthys 9dc4e7d31b Windows: shut up warning on certificate generation during installation.
WARNING: can't open config file: c:/libressl/ssl/openssl.cnf
2017-03-08 09:03:03 +01:00
Bram Matthys cb59538309 Fix chanmode +f issue where unsetting parts were not effective.
For example: '+f [5j#i1,5m#m1,3n]:3' and then '+f [5j#i1,5m]:3'
In that case the '3n' was not removed and still effective, as
could be seen by a '/MODE #chan'. Reported by The_Myth (#4883).
2017-03-06 10:05:30 +01:00
Bram Matthys 9252ce30e9 Fix *NIX build (non Mac OS) by backing out all changes of past week. 2017-03-06 09:12:22 +01:00
Travis McArthur 2a4714ea73 Adjust curlinstall 2017-02-26 11:18:38 -08:00
Travis McArthur efdf290bd5 Update curl install run path 2017-02-26 10:30:42 -08:00
Travis McArthur 12aa3289b9 Update Makefile to remove dep on private libs 2017-02-25 16:16:58 -08:00
Travis McArthur 97467d2480 Use LD_RUN_PATH instead of rpath 2017-02-25 16:09:00 -08:00
Travis McArthur 67184f506c Support more mac build types, fix more linux build 2017-02-25 15:51:25 -08:00
Travis McArthur 6f90a0d5f9 Update test used for rpath 2017-02-25 14:11:56 -08:00
Travis McArthur d997ec0576 Update to support mac testing 2017-02-25 13:07:10 -08:00
Travis McArthur b1807ea399 Update Travis-Ci to build OSX and Linux 2017-02-25 12:31:47 -08:00
Travis McArthur fbf715af9b Fix configure script 2017-02-25 10:29:05 -08:00
Travis McArthur 0136ac3c83 Finalize check of rpath option 2017-02-25 10:20:10 -08:00
Travis McArthur d3518eb1ee Fix conditionals 2017-02-25 09:55:29 -08:00
Travis McArthur 9a6ef504d0 Update configure for mac/linux compat 2017-02-25 09:50:22 -08:00
Travis McArthur ca9f2ea82e Update make file 2017-02-25 09:34:48 -08:00
Travis McArthur d8b67e0afb Update configure for mac os compat 2017-02-25 09:30:38 -08:00
Travis McArthur 894ff20ddd Add testing submodules 2017-02-25 02:25:02 -08:00
Bram Matthys 7de81c7aa6 Credit 2017-02-18 14:42:14 +01:00
Bram Matthys c97a3e1903 Add user mode +Z: Only allows SSL/TLS users to private message you.
Based on +R, idea seen on the forums (from Stealth ?)
2017-02-18 14:39:32 +01:00
Bram Matthys 06485a07fb Windows: move service.log to logs\ folder. 2017-02-17 15:55:43 +01:00
Bram Matthys cded56f46a Add timestamp in service.log 2017-02-17 15:55:22 +01:00
Bram Matthys 43921b07ac re-indent this monster 2017-02-17 15:51:13 +01:00
Bram Matthys 2a83066f67 Channel modes were not working. 2017-02-10 22:14:41 +01:00
Bram Matthys 906ab61518 Updates to Windows installer for newer Inno Setup 2017-02-10 15:44:04 +01:00
Bram Matthys 1af75e775c Make Config import stuff from 4.0.10. 2017-02-10 15:35:43 +01:00
Bram Matthys e44fb1d355 UnrealIRCd 4.0.11 2017-02-10 15:34:05 +01:00
Bram Matthys 0b78fa71fc Last minute text addition 2017-02-10 14:40:45 +01:00
Bram Matthys e0130ab0b6 Fix silly crash issue. 2017-02-10 14:28:32 +01:00
Bram Matthys 5fcff0dd90 Make +z in set::modes-on-join work (and auto +Z setting). Reported by FwdInTime (#4841). 2017-02-10 14:24:10 +01:00
Bram Matthys a687ab022b Fix 'MODE yournick +r' being interpreted as 'MODE yournick +s' (#4846). 2017-02-10 13:11:12 +01:00
Bram Matthys 027826d451 Document channel mode +D and remove +u. Reported by FwdInTime (#4839). 2017-02-10 13:07:21 +01:00
Bram Matthys eed722a27c Change wording.. Don't just "consider adding" 6697/ssl. Just tell them to do it.
Also, take the IP from the 6667 port. May help some beginners on shell boxes.
2017-02-08 11:48:15 +01:00
Bram Matthys 84e405ebef Show a warning when there are zero listen { } blocks with SSL:
[warning] Your server is not listening on any SSL ports. It is recommended to listen on port 6697.
[warning] Consider adding this to your unrealircd.conf: listen { ip *; port 6697; options { ssl; }; };
2017-02-08 11:19:01 +01:00
Bram Matthys 35c9c08008 Fix crash if TOPIC_NICK_IS_NUHOST is enabled (crash upon TOPIC set by server) 2017-02-03 08:42:16 +01:00
Bram Matthys b9d84054fd Remote WHO requests have never been supported. Apparently some old or custom
services software send this which cause a crash. Now simply rejecting at
the start of the function.
To services coders: you must maintain client lists/state, not do silly things
2017-02-03 08:29:18 +01:00
Bram Matthys e09da031cc UnrealIRCd 4.0.10 release 2017-01-13 09:12:52 +01:00
Bram Matthys 8d0ac37604 Fix some compatibility handling of GLOBOPS. Reported by Jobe (#4836).
Note that you should actually use SENDUMODE instead.
2017-01-12 09:19:07 +01:00
Bram Matthys c7cb19b52c Whoops :D 2017-01-11 13:37:38 +01:00
Bram Matthys 7ade64385d Websocket: reject oversized pings. Version is now 0.9.3 2017-01-11 13:34:18 +01:00
Bram Matthys 08667134ba Fix lack of deadsock check and error flooding throttling. 2017-01-11 13:20:45 +01:00
Bram Matthys b0af3b71f0 More websocket module fixes. Version is now 0.9.2 2017-01-11 13:19:53 +01:00
Bram Matthys 341378008b Bump version number of websocket module to 0.9.1 2017-01-11 11:46:52 +01:00
Bram Matthys 229ceeb87d Fix a memory leak in websocket module and do some final cleanups. 2017-01-11 11:45:40 +01:00
Bram Matthys 8af0172300 Another delayjoin fix (chanmode +D). Duplicate JOIN for remote user (SJOIN). 2017-01-09 20:11:37 +01:00
Bram Matthys 90508c74ae UnrealIRCd 4.0.10-rc2 2017-01-06 13:35:31 +01:00
Bram Matthys 6067202cdf Rewrite SJOIN to fix a bug where modes were sometimes cut-off resulting
in incorrect bans being added.
2017-01-06 11:11:19 +01:00
Bram Matthys 00142f90e9 Give more clients(/services) a clear hint when they try to connect on an SSL
port but are speaking plaintext (non-SSL).
2017-01-02 16:31:01 +01:00
Bram Matthys e6aa557169 Drop useless 'inline' for textban_replace() 2016-12-31 12:28:02 +01:00
Bram Matthys 5d390811fd UnrealIRCd 4.0.10-rc1 2016-12-31 09:30:12 +01:00
Bram Matthys 61265ec226 Write release notes for 4.0.10-rc1 2016-12-30 21:11:58 +01:00
Bram Matthys 01a86a5133 Include url.h in url.c so DLL exports work on Windows 2016-12-30 20:09:03 +01:00
Bram Matthys bdbddfde97 Load jumpserver and usermodes/privdeaf by default 2016-12-30 20:02:12 +01:00
Bram Matthys 780f3d7637 All my 3rd party modules (from vulnscan.org) are in UnrealIRCd now.
Note that they are NOT loaded by default at this time.
The modules are:
* extbans/textban - +b ~T:censor:*badword*
* usermodes/privdeaf - user mode +D: cannot receive PM's
* antirandom - "randomness" detector against drone attacks
* hideserver - hide servers (not real security, but requested)
* jumpserver - redirect users to another server during maintenance
* m_ircops - show which ircops are online (/IRCOPS command)
* m_staff - show custom file (/STAFF command)
* nocodes - don't just strip/block colors, do the same for reverse/bold/..
The existing README and sample configuration files for these modules
will later be added to the official UnrealIRCd documentation on
https://www.unrealircd.org/docs/Main_Page (just search on the module name).
2016-12-30 19:36:59 +01:00
Bram Matthys bff5e39d67 Fix crash on PART if chanmodes/nocolor module is not loaded or loadmodule
line reordered so nocolor is above m_part. Reported by FwdInTime (#4783).
2016-12-30 16:27:35 +01:00
Bram Matthys 03b74f6163 Include string.h / silence warnings. 2016-12-30 15:30:59 +01:00
Bram Matthys d003f8bfe9 Merge pull request #64 from Adam-/unreal40+remove_unknown
remove_unknown: don't send squits for unknown uids and don't leak server ip in quit message
2016-12-29 21:44:51 +01:00
Bram Matthys 8237592f3e Merge pull request #67 from netjester/netjester-bugfix-4826
Fix (harmless) error message on './unrealircd stop' (#0004826)
2016-12-29 21:40:40 +01:00
netjester 1fc6a0efaf Fix #0004826
Fixes #0004826: ./unrealircd stop always says unrealircd.pid: No such file

https://bugs.unrealircd.org/view.php?id=4826
2016-12-29 17:47:11 +00:00
Bram Matthys 9da4c7e5d0 Added DNSBL check exemption: except blacklist { mask 1.2.3.4; }; 2016-12-29 11:38:49 +01:00
Bram Matthys 1b87d0a20e set::ssl::trusted-ca-file now defaults to conf/ssl/curl-ca-bundle.crt as expected 2016-12-29 11:14:12 +01:00
Bram Matthys cbcbdc656a The 'class' block is now always read before 'allow'. No specific order required anymore. 2016-12-29 10:38:10 +01:00
Bram Matthys aae0971cf4 Add the ability to set specific ssl options in listen blocks and link blocks.
This allows you to for example specify a specific certificate/key on an
serversonly port and in link block (a self-signed 10 year valid certificate)
and use a short-lived (XX day) Let's Encrypt certificate on the other ports.
And several other uses, of course.
2016-12-29 08:37:15 +01:00
Bram Matthys 806d80a947 Fix possible crash (very rare?) on Windows. 2016-12-28 13:29:25 +01:00
Bram Matthys 792ef7294e On Windows the first few lines of logging output always showed Jan 1 1970
(or at least close to it) because timeofday was initialized too late. Fixed.
2016-12-28 10:46:33 +01:00
Bram Matthys 1f1ac6c4ee Less duplicate code: add internal function invisible_user_in_channel()
and remove many calls to HOOKTYPE_VISIBLE_IN_CHANNEL + flag checking.
2016-12-27 20:22:12 +01:00
Bram Matthys 5ac4125c6f Use new user_can_see_member() function at two other remaining places 2016-12-27 20:10:22 +01:00
Bram Matthys 99e087d50c Remove temporary workaround and actually fix stuff in QUIT for delayjoin. Add new function user_can_see_member()... 2016-12-27 20:02:35 +01:00
Bram Matthys 70a6d8be94 Merge pull request #65 from Adam-/unreal40+delayjoin
Some delayjoin fixes
2016-12-27 19:40:21 +01:00
Bram Matthys a1ff9fe2c4 Fix crash if invalid crypt password present in configuration file. Reported by k4be. 2016-12-27 19:31:05 +01:00
Bram Matthys 15842b8290 Added "websocket" module. This module provides support for WebSocket (RFC6455)
so you can use IRC directly from HTML5/JS. It is still considered experimental
but feel free to test it out. To do so, add this to your unrealircd.conf:
loadmodule "websocket";
This module was sponsored by Aberrant Software Inc.
2016-12-24 13:35:37 +01:00
Bram Matthys df5ac9a76c Add some debugging option (NOREMOVETMP). 2016-12-24 13:29:32 +01:00
Bram Matthys 1927575bbd Merge pull request #66 from SaberUK/its-2016-ffs
Remove 'gay' from the bad words list.
2016-12-22 09:00:53 +01:00
Peter Powell 89e265e043 Remove 'gay' from the bad words list. 2016-12-22 01:55:13 +00:00
Adam c5af738273 Fix delayjoin 2016-12-19 17:39:25 -05:00
Bram Matthys 9a8645973c Added set::ssl::options::no-client-certificate
This is really NOT a recommended setting but may be necessary to work around
some browser issues for wss://.
2016-12-16 17:20:27 +01:00
Bram Matthys 1004f414aa Module developers: changed return value handling of HOOKTYPE_RAWPACKET_IN:
Previously <= 0 would stop processing. Now this has changed to:
>0: continue and parse as-is (this was already the case)
0: don't parse but continue reading next packet (if there's any data)
-1: stop parsing, don't read any packets (client may be killed/FLUSH_BUFFER)
2016-12-16 17:13:48 +01:00
Bram Matthys 658cbf04da Compile fixes for Ubuntu 16 LTS (gcc 5.4.x?) 2016-12-14 18:42:12 +01:00
Adam 10c038ffc0 remove_unknown: don't send squits for unknown uids, don't leak server ips in quit msg 2016-12-07 08:19:16 -05:00
Bram Matthys 728bd4ba15 Make WHO support multi-prefix (#4686) 2016-12-05 10:31:30 +01:00
Bram Matthys 6f85ec1452 Cleanup src/Makefile as per ohnobinki's suggestion in #3979. 2016-12-05 10:14:47 +01:00
Bram Matthys daa9260e12 Merge pull request #62 from Adam-/master+svsmoded
Services coders: you can now set "SVSMODE Nick +d" to set the 'deaf' user
mode.  Note that "SVSMODE Nick +d svsidhere" also still works.  This should
be a harmless change, unless some services packages are accidentally trying
to set emtpy svsids like "SVSMODE Nick +d "...  if you do, then the target
nick will be deaf now..
2016-12-05 09:46:34 +01:00
Bram Matthys 65caabbb97 Don't send UID's to old non-SJOIN clients (do we really want to support these? hmm..) 2016-12-05 09:33:13 +01:00
Bram Matthys 41bd7ad4b9 UnrealIRCd 4.0.9 2016-12-03 10:58:49 +01:00
Bram Matthys a3cdb49bc9 Another silly nenobug.. 2016-12-03 10:50:02 +01:00
Bram Matthys 79ed5694b2 split part of read_packet() off to new function process_packet().
This will later be used by a new feature.
2016-11-30 08:18:56 +01:00
Bram Matthys 05220642b3 Installer updates for visual studio 2015 2016-11-19 11:03:11 +01:00
Bram Matthys 32a6b7d4e6 Windows build: rename OPENSSL macros to LIBRESSL and make it that you
now need to specify SSLLIB in your nmake command. This because the
version numbers (libcrypto-38.. etc..) change each libressl version.
2016-11-19 10:30:26 +01:00
Bram Matthys 1e313b2e88 Make UnrealIRCd compile on Visual Studio 2015 (yes, 2012 also still works after this) 2016-11-18 21:00:16 +01:00
Bram Matthys 526de46c07 Travis CI: remove system curl prior to local-curl test. 2016-11-18 15:52:26 +01:00
Bram Matthys 7c8da13da5 . 2016-11-18 15:41:07 +01:00
Bram Matthys ffd661ac7f Travis CI 2016-11-18 15:40:47 +01:00
Bram Matthys 21d0af6e88 Fix protection for system curl without system cares. Was kicking in for local
curl due to use of an old path. At least the new autobuild notified me *just*
in time before I put 4.0.8.4 online.
2016-11-18 15:31:24 +01:00
Bram Matthys ac3a27029c Add FreeBSD to build tests (out of travis ci.. shame). 2016-11-18 15:07:09 +01:00
Bram Matthys 9763956f05 UnrealIRCd 4.0.8.4 2016-11-18 13:56:04 +01:00
Bram Matthys 02fec540a1 Apparently github does not permit irc:// links this way. Whatever. 2016-11-18 13:32:47 +01:00
Bram Matthys 6d541442e9 README updates for github site 2016-11-18 13:26:15 +01:00
Bram Matthys f521387cf6 And local-curl 2016-11-18 12:17:41 +01:00
Bram Matthys 2c83cd7dc4 Travis CI: Set CURLDIR for curl tests 2016-11-18 12:16:13 +01:00
Bram Matthys 6ea4c93324 Do more build tests. Now: defaults, system c-ares, system curl, local curl 2016-11-18 12:07:47 +01:00
Bram Matthys 5c1b742e4d Show build status on github 2016-11-18 12:06:52 +01:00
Bram Matthys 07d799fa51 Multiple build options for Travis CI 2016-11-18 11:46:36 +01:00
Bram Matthys 21f33064cd Re-enable hardening for travis build (disabling didn't work anyway, so..) 2016-11-18 11:21:34 +01:00
Bram Matthys 4fd616f940 Fix build problem on CentOS and others.
Only build main binary with -fPIE, not the modules. It's called Position
Independent EXECUTABLE after all. And apparently not all compilers or
linkers ignore the option if building shared objects (mine did..).
2016-11-18 11:13:50 +01:00
Bram Matthys aa7c60b91b Temp travis CI change to see if it builds at all 2016-11-18 09:35:51 +01:00
Bram Matthys d44f09d1a0 This helps. 2016-11-18 09:26:25 +01:00
Bram Matthys 0e44539853 Travis CI fixes 2016-11-18 09:25:55 +01:00
Bram Matthys 0d554284e7 4.0.8.3 - a release a day, keeps the doctor away. 2016-11-17 10:12:26 +01:00
Bram Matthys 60d14e7dcc Fix broken build --with-system-cares. Specifying this option is no longer useful
as it is the default in 4.0.8+. However, it shouldn't break the build if
specified. Fixed damn silly reversed logic at a few places that caused this...
2016-11-17 10:00:42 +01:00
Bram Matthys 3326af498c 4.0.8.2 (more build fixes) 2016-11-16 11:00:57 +01:00
Bram Matthys 63add50931 Make CARES_LIBS point to new location (was still "-L../extras/c-ares/lib")
(Would only affect people who use system tre and system pcre2 but not system c-ares.)
2016-11-16 10:26:39 +01:00
Bram Matthys c8125c33e1 Fix compile problem if remote includes are enabled and no system curl is available.
We now set LDFLAGS during configure with -Wl,-rpath=/home/xyz/unrealircd/lib so
the curl test won't fail (or more precisely, curl's c-ares test).
Could theoretically fix other issues as well, but could not reproduce.
2016-11-16 10:23:11 +01:00
Bram Matthys 223084858b "More and more and more" 2016-11-14 13:12:04 +01:00
Bram Matthys 1bb90bec50 Fixes for './Config -quick' 2016-11-14 12:50:25 +01:00
Bram Matthys 0733751730 Update relnote 2016-11-14 12:42:10 +01:00
Bram Matthys af4c245e4e Add release note 2016-11-14 12:41:43 +01:00
Bram Matthys 3b2cde48c6 No longer support /home/xyz/curl but use the following instead:
First of all, system-wide curl is much preffered, but if not available
then UnrealIRCd will offer to install curl for you during ./Config.
The prompt looks the same as before but we no longer install the curl
library in ~/curl but rather in ~/unrealircd/lib (or wherever you put
your installation).
Basically, it now behaves exactly the same as c-ares, TRE and PCRE.
Downside: curl will be re-compiled each time you re-run ./Config
Upside: curl will be re-compiled each time... :D.. will thus be kept
more up to date.
**
Also: complain if <curlinstall>/bin/curl-config cannot be found.
This ensures we error after ./Config rather than after the whole of
configure has been ran.
2016-11-14 12:34:45 +01:00
Bram Matthys 388497e592 Bump version to 4.0.8.1. 2016-11-14 11:03:42 +01:00
Bram Matthys 00ad832a59 Update TRE to git version because of FreeBSD build problems with clang 2016-11-14 10:40:39 +01:00
Bram Matthys 8c26cbe7f5 Print decent error if you do ./Config -quick but your settings are too old. 2016-11-14 08:35:25 +01:00
Bram Matthys 7bb6856709 Fix build if you install to somewhere other than $HOME/unrealircd. Reported by acidvegas. 2016-11-11 15:24:43 +01:00
Bram Matthys 094dde3c70 UnrealIRCd 4.0.8 2016-11-11 08:47:36 +01:00
Bram Matthys 84424aac06 Build shared, not static. (Or better, don't use this at all, use system curl) 2016-11-11 08:42:34 +01:00
Bram Matthys 72f7138cfb Make "don't run UnrealIRCd as root" warning even more annoying.
Add wiki link. Later versions will simply refuse to start as root.
2016-11-10 10:25:40 +01:00
Bram Matthys f0015ee639 Usermode +d (deaf) was broken. Clients were still receiving channel messages.
Reported by acidvegas, patch from Gottem (#4764).
2016-11-10 09:09:33 +01:00
Bram Matthys 02d000f051 Release notes: re-word things a little and mention Windows signing. 2016-10-30 14:52:36 +01:00
Bram Matthys 69e651aa40 Running ./autogen.sh helps. 2016-10-30 13:17:43 +01:00
Bram Matthys 2f3c34fe9f Lol. Duh :D 2016-10-30 13:16:45 +01:00
Bram Matthys 45545ac3d2 4.0.8-rc1 2016-10-30 13:04:03 +01:00
Bram Matthys d504fbe04c Send PREFIX= in PROTOCTL to servers (#4772). 2016-10-30 11:56:59 +01:00
Bram Matthys 8e149bd503 Fix potential crash in blacklist module if you have several DNSBLs (#4770). 2016-10-22 09:42:41 +02:00
Bram Matthys abb3e225aa Fix regression caused by 6e4cc3e235 2016-10-21 19:04:03 +02:00
Bram Matthys 23c14e56ad If system-wide cURL is OK for us and user has a previous setting of ~/curl
then change the default value to /usr (or similar) during ./Config and
output a warning.
We do this since system-wide cURL is under almost all circumstances
preferred as it is maintained by your OS/distro and hence receives bug
fixes and security updates on a regular basis (or should, anyway).
Experience shows that ~/curl is rarely kept up to date since "it works".

In the past, many years ago, system wide cURL did not have AsynchDNS.
Nowadays nearly all distros build cURL with some sort of AsynchDNS
which makes things much more useable.
2016-10-21 18:27:01 +02:00
Bram Matthys eabf436c2a Use has_system_cares (=reliable result) rather than with_system_cares (=merely requested). 2016-10-21 18:13:04 +02:00
Bram Matthys ebd6e8e1cd Delete libcares from private lib dir when using system-c-ares. 2016-10-21 17:57:13 +02:00
Bram Matthys f526a485c8 Update configure 2016-10-21 17:51:36 +02:00
Bram Matthys 8859cca6b2 Remove old cares/curl hack. 2016-10-21 17:51:08 +02:00
Bram Matthys c133dfd31e Use system c-ares when available (IOTW: --with-system-cares is the default
and hence we now have --without-system-cares if you don't want this)
2016-10-21 17:46:26 +02:00
Bram Matthys 770bb6ac98 Forgot to commit these files, they belong to the hardening patch. 2016-10-21 17:24:13 +02:00
Bram Matthys 6e4cc3e235 During ./Config when configuring with remote includes support for the first
time (and we need to suggest paths) we no longer suggest ~/curl if system-
curl already provides everything we need.
2016-10-21 17:21:42 +02:00
Bram Matthys d51d23e5cb Until now we refused a build with system-curl without --with-system-cares,
this on the basis that cURL may be using one c-ares version and UnrealIRCd
another c-ares version, something which obviously can lead to failure due
to ABI differences..
Many years have passed since then and cURL is now frequently build with
AsynchDNS support but without the help of c-ares (eg: on Debian). We can
support this configuration without requiring --with-system-cares since
c-ares is not used by cURL and there's no conflict.
2016-10-21 17:15:37 +02:00
Bram Matthys bae1dcf147 For increased security UnrealIRCd is now compiled with several hardening
options by default. This enables full RELRO (GOT and PLT being read-only),
stack protection and address space layout randomization (by enabling PIE,
the actual ASLR is left up to kernel).

Will cleanup some silly stuff later.. and have a go at the libs stuff..
2016-10-20 19:16:18 +02:00
Bram Matthys fd35f965a2 Use dynamic linking for our shipped private libraries (c-ares, tre, pcre2). Work in progress, may revert. 2016-10-20 19:02:55 +02:00
Bram Matthys 9be628450c Moved to https://www.unrealircd.org/docs/Compiling_UnrealIRCd_on_Windows 2016-10-20 09:55:48 +02:00
Bram Matthys 8b21562c37 Replace old reference to use md5, should be bcrypt. + some internal dev stuff (bin/unrealircd -s) 2016-10-19 18:38:07 +02:00
Bram Matthys 2d09d18135 Remove some unnecessary stuff to shave 1Mb off our download (PDF developers documentation in c-ares) 2016-10-09 09:40:46 +02:00
Bram Matthys 7e05a29aca ** 4.0.7 ** 2016-10-09 09:25:12 +02:00
Bram Matthys 4e71b31a29 Update curl-ca-bundle to certificate data from Mozilla as of Sep 14 03:12:05 2016 plus CACERT 2016-10-09 09:22:44 +02:00
Bram Matthys 338d874f75 Module coders: fix silly long-standing bug in MOD_LOAD/MOD_UNLOAD so you can use 'modinfo' again, just like you already could in MOD_INIT. 2016-10-03 16:01:23 +02:00
Bram Matthys b9c5254e2b Merge pull request #57 from binki/unreal40-gitignore
Add editor and ./autogen.sh-generated files to .gitignore.
2016-10-01 11:50:56 +02:00
Bram Matthys 11a510843b Import config settings/modules from earlier versions 2016-10-01 11:48:11 +02:00
Bram Matthys 6d63b39d93 +* Windows: remote includes now support IPv6 2016-10-01 11:29:07 +02:00
Bram Matthys 52df9937be Re-indent / conform to existing code style 2016-10-01 10:20:01 +02:00
Bram Matthys 5bc9b63855 Delayjoin (+D): JOIN user before message and not after. 2016-10-01 10:15:04 +02:00
Bram Matthys 2eafff6a51 On Windows cURL is now built with IPv6 enabled, so use updated library path 2016-10-01 09:46:48 +02:00
Bram Matthys e8272e28c2 Updates for LibreSSL 2.5.0 (hmm should be moved to build options I guess) 2016-10-01 09:45:34 +02:00
Bram Matthys 58f4690b03 Don't overwrite the conf files from #4755 on Windows either. 2016-10-01 08:54:01 +02:00
Bram Matthys 1cd0cdcd18 Use Windows' _stricmp/_strnicmp 2016-10-01 08:50:48 +02:00
Bram Matthys f2d21943fe Bump version to 4.0.7-rc1 2016-09-30 15:53:36 +02:00
Bram Matthys 7aaf14c138 Show PCRE2 version on ./unrealircd start and in /VERSION on IRC if oper. 2016-09-30 15:42:19 +02:00
Bram Matthys fbde68ef4a Update pcre2 library from 10.21 to 10.22 2016-09-30 15:31:08 +02:00
Bram Matthys 74ea7af9b7 Upgrade c-ares library to 1.12.0. Add CPPFLAGS support. 2016-09-30 15:23:34 +02:00
Bram Matthys ea3ac462d1 Don't overwrite spamfilter.conf, badwords.conf and dccallow.conf during
'make install'. Reported by ivanp (#4755).
2016-09-30 13:41:44 +02:00
Bram Matthys 64b5d89a98 Remove support for CHROOTDIR, IRC_USER and IRC_GROUP as these caused too much
code clutter and was broken anyway (especially CHROOTDIR)...
For a CHROOTDIR replacement we suggest using AppArmor, SELinux, FreeBSD jails, ..
For a IRC_USER/IRC_GROUP replacement you can use start-stop-daemon or similar.
2016-09-29 20:12:28 +02:00
Bram Matthys 603adb8ec2 Fix "dh" setting requiring absolute path. Reported by capitaine (#4738). 2016-09-29 19:17:49 +02:00
Bram Matthys a7f98af6ed ./Config may show an empty SSL prompt. Reported by ohnobinki (#4749). 2016-09-29 19:11:31 +02:00
Bram Matthys ee97298f4d Fix bug in duplicate ban detection. With +b ~r:xyz you could not set +b ~R:xyz,
reported by ShaneDiamond (#4712). We now have special handling for extbans.
2016-09-29 19:02:19 +02:00
Bram Matthys b4306842b2 Remove SOCALLEDSMARTBANNING config.h option which nobody uses anyway (for good reasons) 2016-09-29 19:01:48 +02:00
Bram Matthys 490abc76c1 Fix crash due to commit from yesterday 2016-09-27 07:37:09 +02:00
Bram Matthys 2de0c4ec80 Use server-side cipher selection and set a reasonable default ciphersuite list
taking into account compatibility with older clients. See the wiki/docs article
https://www.unrealircd.org/docs/SSL_Ciphers_and_protocols for more information
2016-09-26 16:03:24 +02:00
Bram Matthys 9203ee1748 set::ssl::server-cipher-list is now called set::ssl::ciphers (old name still works too) 2016-09-26 15:01:54 +02:00
Bram Matthys 4fe7203091 Use cipher list for connections to other servers as well 2016-09-26 14:58:16 +02:00
Bram Matthys 7f703d8991 Add the ability to enable/disable TLS versions via set::ssl::protocols
Accepted values are: All (enable all), TLSv1, TLSv1.1, TLSv1.2
You can use + and - modifiers, in fact you are encouraged to.
Example: set { ssl { protocols "All,-TLSv1,-TLSv1.1"; }; };
This will only allow TLSv1.2 at time of writing, and later whenever
TLSv1.3 is released it will allow TLSv1.2 and TLSv1.3.
Note that 'SSLv2' and 'SSLv3' do not exist, as UnrealIRCd 4.x never
supported these old versions (and never will).
2016-09-26 14:47:45 +02:00
Bram Matthys bbca690d48 Fix issue with instable SSL connections on FreeBSD (especially server links)
Reported by CoreDuo and weekend (#4720). Thanks weekend for providing a shell
to debug this issue.
2016-09-26 10:26:47 +02:00
Bram Matthys a9db5b8981 DEBUGMODE: improve freebsd kevent debug messages 2016-09-26 10:23:00 +02:00
Bram Matthys f71b173f07 Turn DEBUG_IOENGINE off by default (and move to include/config.h) 2016-09-17 10:06:33 +02:00
Bram Matthys 6a9b32344e Grr forgot a version bump at place nr two in configure 2016-09-03 23:27:57 +02:00
Bram Matthys 6a812924da UnrealIRCd 4.0.6 2016-09-03 20:12:05 +02:00
Bram Matthys f473e355e1 Fix AUTHENTICATE bug 2016-09-03 20:08:21 +02:00
Nathan Phillip Brink 3ab7eb23a0 Add editor and ./autogen.sh-generated files to .gitignore. 2016-08-14 03:14:31 +00:00
Bram Matthys ae0fc98a04 small note ;p 2016-07-28 20:02:32 +02:00
Bram Matthys 26d343861a Fix mass zlining due to "Flood from unknown connection". The limit was specified in Kb rather than bytes, so the pre-registration sendq limit was 4 bytes. Duh. Thanks Digerati & Gottem for the report :D 2016-07-28 19:58:35 +02:00
Bram Matthys e586b5457c * Prevent flood from unknown connection 2016-07-28 15:09:47 +02:00
Bram Matthys be02467b41 UnrealIRCd 4.0.5 release 2016-07-28 14:22:16 +02:00
Bram Matthys 73ec3e3305 Fix IPv6 ban bug + fix a crash bug 2016-07-28 14:15:09 +02:00
Bram Matthys 8873179974 4.0.4 release (:D) 2016-06-26 18:50:49 +02:00
Bram Matthys e26190f80b Fix-for-fix 762c39eb0d 2016-06-26 18:45:45 +02:00
Bram Matthys 0aea33a5a7 Initialize to zero please. Fixes valgrind warnings too. 2016-06-26 18:06:56 +02:00
Bram Matthys 265250bcc1 Fix crash if you try to listen on port 0. (#4707) 2016-06-26 15:19:49 +02:00
Bram Matthys b444116c12 Use exact struct type & remove unnecessary casts. 2016-06-26 15:08:55 +02:00
Bram Matthys 72e089f784 Remove space in KILL log message. 2016-06-25 09:33:34 +02:00
Bram Matthys f30251205f Fix #4702: Pre-Registration VERSION Duplicate Replies (005 AND 105) reported by Jobe. 2016-06-23 20:19:06 +02:00
Bram Matthys 5f232da4bb Fix bug where files { } block only worked with absolute paths. Reported by kwe (#4691). 2016-06-11 20:28:27 +02:00
Bram Matthys 7c1a192709 Prevent installing in the same directory as source (#4697). 2016-06-11 20:22:18 +02:00
Bram Matthys 60e10bb963 Fix possible problem with delayjoin not always JOIN'ing people on +vhoaq.
Tech: MODE_EXCEPT and MODE_INVEX and had a parameter=0 count in cFlagTab
causing parse_chanmode() not to eat the 'e' and 'I' parameters. Thus
causing the wrong parameter (target) to be returned by parse_chanmode().
2016-05-28 11:53:30 +02:00
Bram Matthys 993b5bc721 The HOOKTYPE_PACKET validation code is wrong, making the hook unusable. 2016-05-23 11:26:54 +02:00
Bram Matthys 12f61450d8 Update IT translation (by Francesco) 2016-05-23 11:25:45 +02:00
Bram Matthys 8ddf0a8762 Remove (now) confusing comment regarding local/remote struct members in aClient 2016-05-22 20:11:50 +02:00
Bram Matthys 762c39eb0d Windows: when UnrealIRCd fails to start due to a configuration error apparently some
users didn't read and close the error screen. Instead they hit the "rehash" command
from the sytem tray and this would crash UnrealIRCd. From now on if you do that a
messagebox will show up saying you should pay attention to the error screen ;)
2016-05-22 19:42:42 +02:00
Bram Matthys 2c25833e19 Change numeric 448 text from "Channel is forbidden: [reason]" to "Cannot join channel: [reason]". Inspired by PR from SketchNI. 2016-05-22 16:13:59 +02:00
Bram Matthys f2f63c29e5 Send error message when /SAMODE is used with a non-existent target. Reported by bonnedav (#4556). 2016-05-22 16:08:31 +02:00
Bram Matthys 12c739b806 Reindent 2016-05-22 16:03:56 +02:00
Bram Matthys e6d2fab103 Merge pull request #56 from dboyz/fix1
Fix SQUIT documentation, send ERR_USERSDONTMATCH when trying to change modes for other users, fix some typos, remove old HTM stuff. Resolves #2549, #3691 and more.
2016-05-22 16:01:36 +02:00
Bram Matthys 095330aa36 No infinite loop when operclass::parent is not found. Reported by Digerati and dboyz (#4683).
Should add code in config-tester for this to prevent this in the first place, though..
2016-05-22 15:56:51 +02:00
Bram Matthys ccf1d0e41c Re-indent only. No changes. 2016-05-22 15:54:01 +02:00
Bram Matthys 67c998dc9f Adding a GLINE or KLINE on usermask@ did not have any effect. Reported by soretna (#4680).
Tizen, DBoyz and Valdebrick helped tracing the issue.
Removed MATCH_USE_IDENT since it had no useful purpose.. for all cases one has to check identd first and then non-identd anyway.
2016-05-22 15:44:28 +02:00
Bram Matthys 6d14c95f77 Added help.it.conf 2016-05-19 09:06:08 +02:00
Bram Matthys 78f9c8cff4 Update header (UnrealIRCd 4!) and credits. 2016-05-19 09:05:34 +02:00
Daniel Tan 48e2d2aab3 Remove remaining Htm codes 2016-05-12 16:57:32 +08:00
Daniel Tan b2a00948a3 config.h: Minor typo fix 2016-05-11 16:01:37 +08:00
Daniel Tan d5c6c545cb m_mode.c: Send ERR_USERSDONTMATCH when trying to change modes for others (#3691) 2016-05-10 15:28:06 +08:00
Daniel Tan c16be8f431 help.conf: Fix syntax and example for SQUIT (#2549) 2016-05-09 17:28:25 +08:00
Bram Matthys 51b52f1767 Merge pull request #49 from grawity/ssl
Add an option to hide the notices about TLS parameters and fingerprint (set::options::no-connect-ssl-info)
2016-05-09 10:11:55 +02:00
Bram Matthys 64839a6304 Fix typos ("succes" -> "success"). Patch from GLolol. Original patch from theRoda. 2016-05-09 10:01:20 +02:00
Bram Matthys d1d4f6d430 Fix: when doing /VERSION on IRC as an IRCOp it showed the compile-time OpenSSL/LibreSSL version rather than the runtime version. 2016-05-03 19:32:10 +02:00
Bram Matthys e4d9a5dd43 Text changes 2016-04-24 10:28:54 +02:00
Bram Matthys 089009e121 Bump version to 4.0.3.1: fixes freebsd/openbsd compile problems. 2016-04-24 10:24:40 +02:00
Bram Matthys a886c1ebc6 Check for and include sys/wait.h. Fixes compile problem on OpenBSD (#4663). 2016-04-23 09:55:58 +02:00
Bram Matthys 4ec22ed37b Update release notes 2016-04-16 12:57:13 +02:00
Bram Matthys bcb66894ed 4.0.3 2016-04-16 11:41:40 +02:00
Bram Matthys 493cd647ee Make the upgrade thing actually work if you are upgrading from 4.0.1 & 4.0.2 too -- not just 4.0.0. 2016-04-16 11:38:43 +02:00
Bram Matthys d36988269d Remove RPING 2016-04-16 11:37:00 +02:00
Bram Matthys 8199b26137 Update PCRE2 from 10.20 to 10.21 2016-04-04 16:10:11 +02:00
Bram Matthys 0966e5f859 4.0.3-rc1 2016-04-04 16:03:27 +02:00
Bram Matthys ee79ccea45 Improve bind-ip error message @ link 2016-04-04 13:23:50 +02:00
Bram Matthys 820344f49f Fix crash on Windows upon bind error (eg: incorrect link::outgoing::bind-ip) 2016-04-04 13:23:15 +02:00
Bram Matthys 1474e5d7e2 Crash reporter on Windows: submit minidumps (~300k) 2016-04-04 13:02:40 +02:00
Bram Matthys 1a601bec83 Windows: More useful minidumps
(small one: MiniDumpWithIndirectlyReferencedMemory, big one: MiniDumpWithPrivateReadWriteMemory)
2016-04-04 12:29:39 +02:00
Bram Matthys 9f4496b6a6 Let crash reporter upload core files and binaries on *NIX. Should help
a lot since many people don't have gdb installed, which caused us to
receive reports with just 'gdb: command missing' as a stack trace.
(#4603)
2016-04-04 11:08:54 +02:00
Bram Matthys 2eda1cb285 Windows... 2016-04-03 20:13:58 +02:00
Bram Matthys 89eaa72a8e Windows: if we crash, produce a better stack backtrace. 2016-04-03 19:58:12 +02:00
Bram Matthys db62117f2b Windows: terminate more aggressively when you close UnrealIRCd. 2016-04-03 17:50:57 +02:00
Bram Matthys 67dfa094a7 Windows:
* Updates to make UnrealIRCd use LibreSSL
* Fix HTTPS support in cURL
* Forgot to ship curl-ca-bundle.crt
(Note: all 3 points from above only affect Windows)
2016-04-03 15:55:09 +02:00
Bram Matthys 8d562ededb Remove support for EGD (Entropy Gathering Daemon). Nobody uses this and it only causes issues with LibreSSL. 2016-04-03 15:15:12 +02:00
Bram Matthys 8527f8720b Updates to build with VS2012 / Windows SDK 7.1a 2016-04-03 14:13:24 +02:00
Bram Matthys f95aa13d5b Send RPL_SASLMECHS to clients (#4253, patch from grawity) 2016-04-03 11:53:59 +02:00
Bram Matthys 975996a702 Merge pull request #51 from grawity/sasl-external
Implement SASL EXTERNAL support
2016-04-03 11:44:58 +02:00
Bram Matthys 5d7d957246 Match new defaults with example conf. 2016-04-03 11:40:29 +02:00
Bram Matthys 54ebe14f99 Merge pull request #50 from grawity/defaults
Reduce required settings
2016-04-03 11:40:02 +02:00
Bram Matthys fb26d7ee12 Fix NULL pointer crash on invalid link block, such as link::port without value. (#4617) 2016-04-03 10:29:30 +02:00
Bram Matthys f98a5e69dc When: 1) IPv6 functionality is enabled, and
2) link::outgoing::bind-ip is an IPv4 address, and
3) link::outgoing::hostname is a hostname, and
4) this hostname has both A and AAAA records,
then connect by IPv4 only, which is what the user expects (#4615).
2016-04-03 09:55:51 +02:00
Bram Matthys 8da3e3e1bc Two small changes to improve crash reports from Windows users. 2016-03-11 15:44:08 +01:00
Bram Matthys 93afec781b UnrealIRCd 4.0.2 release 2016-03-11 14:30:58 +01:00
Bram Matthys eef1308888 Fix another Windows warning. 2016-03-11 14:25:00 +01:00
Bram Matthys 3389a99ae1 Get rid of some warnings on Windows (use more CMD_FUNCs & externs for it). 2016-03-11 14:22:07 +01:00
Bram Matthys 28a1fca8dc Move kevent errors to DEBUGMODE until Travis has time to debug these... 2016-03-11 14:07:43 +01:00
Mantas Mikulėnas e818ab1a16 Add an option to hide the notices about TLS parameters 2016-03-09 00:25:33 +02:00
Mantas Mikulėnas a3493a9e0c Provide a default set::maxchannelsperuser = 10
Based on what example.conf has.
2016-03-09 00:25:05 +02:00
Mantas Mikulėnas 5e9a74f0fd Do not require set::services-server
Some places were already treating it as optional.
2016-03-09 00:25:05 +02:00
Mantas Mikulėnas 1121172418 Provide a default set::hiddenhost-prefix = "hidden" 2016-03-09 00:25:05 +02:00
Mantas Mikulėnas 6c1e9fc63b m_sasl: Send user IP address to services
The user is not 'registered' yet at this point, so manually inform
services of their IP address (the syntax is "H <realhost> <ip>").

Services might use this when informing the user of failed auth attempts,
or when ratelimiting bruteforce.
2016-03-09 00:22:58 +02:00
Mantas Mikulėnas b68befc29a m_sasl: Send certfp for SASL EXTERNAL 2016-03-09 00:15:43 +02:00
Bram Matthys cafb08446f Fix ./Config script error caused by a change from January 24, 2016. 2016-03-07 11:16:32 +01:00
Bram Matthys 6f365747cb Permit multiple except throttle::mask's. Reported by blank (#4592). 2016-03-07 11:03:21 +01:00
Bram Matthys 1dacddc944 Interim update 2016-03-04 14:00:13 +01:00
Bram Matthys caa5eba30f Move blacklist hits to snomask +b (new) rather than notifying all ircops.
This snomask is set by default but this can be overridden via
set::snomask-on-oper or oper::snomask. Suggested by hayek (#4566).
2016-03-04 13:50:55 +01:00
Bram Matthys 4cad9cb0c5 SERVER parser error causing uplinks to show bad server description, reported by and patch from OUTsider (#4576).
Patch used only with minor changes: one %i should have been %s, some annoying (char *) casts removed which existed in the original code as well, moved 'tmp' variable, collapsed NULL initalization, ..
2016-03-04 13:27:42 +01:00
Bram Matthys 6307224d89 Update set::modes-on-join restrictions to reflect current status (and be a bit more liberal). Reported by dboyz (#4584). 2016-03-04 13:11:35 +01:00
Bram Matthys bf1e1502ba Use #include "unrealircd.h" in all modules (#4516). 2016-03-04 13:02:06 +01:00
Bram Matthys da9a1be85b set::prefix-quit was not working, reported by capitaine (#4586). 2016-03-04 12:40:26 +01:00
Bram Matthys 99c3fd3c36 Mistake caused by commit from yesterday, strlcpy arguments have always been very logical... 2016-03-02 14:12:30 +01:00
Bram Matthys fa7acafb78 Update release notes a little 2016-03-02 13:46:46 +01:00
Bram Matthys 2f7543f846 Fix NULL pointer crash if sending malformed server-to-server traffic,
in this case an incorrect IP in USER (#4553). Probably someone trying
to write their own services.
2016-03-02 13:44:56 +01:00
Bram Matthys 1e25578c42 Add ability to hide quit messages of *LINEd users. Suggested by Aubrey, patch mostly from Zoddo (#3993). 2016-02-29 14:22:49 +01:00
Bram Matthys d540d65251 Add include for badwords.h to unrealircd.h 2016-02-29 14:00:56 +01:00
Bram Matthys 942f87d886 Merge pull request #43 from fduchene/patch-1
Allow shunned users to use the PING command (not to be confused with CTCP PING)
2016-02-29 13:56:44 +01:00
Bram Matthys 8c53075c92 Merge pull request #47 from blank4/unreal40
Use #include "unrealircd.h" in more files (#4516)
2016-02-29 13:51:01 +01:00
Bram Matthys 9b84f057ab Merge pull request #48 from Adam-/unreal40+svsmodeuid
svsmode: Don't show user their uid in MODE
2016-02-29 13:48:29 +01:00
Adam 2ae7fc2ef6 svsmode: Don't show user their uid in MODE 2016-02-12 09:52:30 -05:00
Bram Matthys d8ffeefd92 Free moddata also for non-clients. 2016-02-03 11:33:40 +01:00
Bram Matthys f7dd3cedd8 Fix minor linking bug which permitted a server to link in which used me::name, IF you had a link block for it. Reported by vNode1 (#4559). 2016-01-31 20:46:52 +01:00
Bram Matthys 0905936622 Merge branch 'unreal40' of github.com:unrealircd/unrealircd into unreal40 2016-01-30 10:46:45 +01:00
Bram Matthys 9f4bd7228a Logging to "syslog" was broken. It was creating a log file called "syslog" instead.
Reported by magic000 (#4562).
2016-01-30 10:45:57 +01:00
Travis McArthur cbf8f9f265 Update Config to use Homebrew OpenSSL by default 2016-01-23 15:04:41 -08:00
Bram Matthys 4d0dbd40c4 Mention MOTD in example.conf and refer to new wiki article. 2016-01-20 10:55:15 +01:00
Bram Matthys 51ef387e89 Some services send SVSJOIN & SVSPART from a user source. Has no benefit in UnrealIRCd but we'll allow it since it was permitted before. 2016-01-15 18:08:12 +01:00
Bram Matthys c6a48bd6be Forgot to bump version number at one of the X places. 2016-01-13 18:33:59 +01:00
Bram Matthys 8357457b7e Fix m_uid not handling collissions of 'unknowns'. 2016-01-13 16:38:09 +01:00
blank4 a225a93800 use #include "unrealircd.h" in modules/usermodes 2016-01-13 11:39:46 +00:00
blank4 4153df7f8f use #include "unrealircd.h" in modules/chanmodes 2016-01-13 11:38:21 +00:00
blank4 c297237a1b Merge remote-tracking branch 'refs/remotes/unrealircd/unreal40' into unreal40 2016-01-13 11:32:31 +00:00
Bram Matthys c5620687c8 Grmpf. 2016-01-13 12:30:30 +01:00
Bram Matthys c9bd3b7982 Bump version to 4.0.1. 2016-01-13 12:11:09 +01:00
Bram Matthys 9fa1b0df43 upd notes 2016-01-13 11:48:40 +01:00
Bram Matthys b3c371ddf4 Add './unrealircd reloadtls' to reload SSL/TLS certificates and keys.
Suggested by Bob_Sheep (#4537) to aid the usage of Let's Encrypt.
Note that this is the same as doing '/REHASH -ssl' on IRC.
2016-01-13 11:37:17 +01:00
Bram Matthys 70a12d154d update notes 2016-01-13 10:36:23 +01:00
Bram Matthys 434e51f69d Fix crash when listen block was removed while it had connected clients on that port. Reported by AnGeLoCaDuTo (#4544).
There were a few flaws in the code: 1) it should close the listener on /rehash,
shouldnt't matter if there are clients or not, 2) then there was a bug where it
would properly close the listener but it would be re-opened by add_listener2.

Also added a "IRCd no longer listening on .." message if you remove a listen block.
2016-01-13 10:30:07 +01:00
Bram Matthys bf06e0825c Delete pidfile on shutdown (warg, #3994). 2016-01-11 18:22:12 +01:00
Bram Matthys 8aa655df3a Remove server wildcard examples from help.conf, reported by GLolol (#4482). 2016-01-11 18:15:25 +01:00
Bram Matthys 916407a453 Add a warning regarding possible allow block silliness. 2016-01-06 11:49:38 +01:00
Bram Matthys 92cf4b24fc Update release notes a bit for later.. 2016-01-04 19:36:27 +01:00
Bram Matthys 3ca644dc9a /MODULE will now only list 3rd party modules by default since that's what most people are interested in.
You can still see the full list of loaded modules by using "/MODULE -all".
Also fix /MODULE <server>, this was broken in earlier versions by nen.... you know who.
2016-01-04 12:54:06 +01:00
Bram Matthys ce7fd99019 Windows: if UnrealIRCd fails to start and an error window is displayed then right-clicking the tray icon can cause a crash. Reported by westor (#4509). 2016-01-04 11:21:31 +01:00
Bram Matthys 293af0bc21 Use #include "unrealircd.h" -- gets rid of warning. 2016-01-03 12:22:33 +01:00
Bram Matthys dd31542e2c Use UID's in MD commands. Add functions / remove duplicate code. Modularize various functions
in src/moddata.c (move them to src/modules/m_md.c as per TODO). Looks good but more testing warranted.
2016-01-03 12:18:55 +01:00
Bram Matthys 3a93c887e4 Use UID's in MD (ModData). 2016-01-03 10:39:25 +01:00
Bram Matthys 208f4a504b SSL Fingerprint wasn't broadcasted correctly to other servers. For Unreal this only affected WHOIS since
extban +e/+I ~S:xxx worked fine (only checked locally). But this also prevented services from being
informed, IOTW: services could not make use of this new certfp feature yet.
2016-01-03 10:28:15 +01:00
Bram Matthys b7a1d50d94 Fix MODE broadcast being screwed up if sender was a server and it contained a timestamp.
Someone changed an %s %lu to %s%lu so ':se.rv.er MODE #test +o Dummy 1444444443' became
':se.rv.er MODE #test +o Dummy1444444443' (missing space).
Re-indent code a little..
2016-01-02 10:51:21 +01:00
Bram Matthys 7610fbcea2 /STATS P (port): Show whether the listener is IPv4 or IPv6. Improve rest of the output as well. 2015-12-29 20:18:14 +01:00
Bram Matthys 655fafcf4e Update helpop on new UnrealIRCd 4 extbans: operclass (~O) and certfp (~S). 2015-12-29 19:51:48 +01:00
Bram Matthys 3ec4cfb2b8 *NIX: Fix ./unrealircd [rehash|stop|restart] not working if you install to somewhere other than ~/unrealircd/, it always said "UnrealIRCd is not running". Reported by Hawk and SmashingX (#4520). 2015-12-29 11:24:53 +01:00
Bram Matthys 34b9797ffc Add buildvarstring() function and make blacklist module support %ip and %server variables in reason field. Suggested by blank (#4507). 2015-12-28 19:03:05 +01:00
Bram Matthys 5ed4492db7 Fix /LIST not showing 0 user channels on mIRC ("LIST <10000"), reported by ctcp (#4517). 2015-12-28 17:36:39 +01:00
Bram Matthys a67d661d36 Fix server linking if link::outgoing::hostname is a CNAME. Reported by pchevee (#4518). 2015-12-28 17:23:29 +01:00
Bram Matthys d41d7bdc46 Suggest cron job in 'make install' 2015-12-28 15:11:51 +01:00
Bram Matthys db70f68f5e Fix module description. Reported by DBoyz. 2015-12-28 15:11:33 +01:00
Bram Matthys 75658591cd An incorrect set::anti-flood::nick-flood setting causes an error message regarding away-flood... rather confusing. 2015-12-28 14:42:19 +01:00
Bram Matthys 7fe85636cf Remove *NIX-specific line re upgrading from Windows version. 2015-12-26 17:03:41 +01:00
Bram Matthys ed082e6265 Remove configure references to old cron script/file 2015-12-26 16:06:14 +01:00
Bram Matthys 3428528684 Add "./unrealircd croncheck" which will start UnrealIRCd if it isn't running and bail out quietly otherwise. This can be used from *surprise!* crontab. The old broken cron script has been removed. (#4508) 2015-12-26 16:00:23 +01:00
Bram Matthys 01aa08c7af /CHGHOST resulted in multiple 'xyz is now your displayed host' messages. Reported by vNode1 (#4505). 2015-12-25 11:43:01 +01:00
Bram Matthys bf516646ec Final touch? 2015-12-24 18:03:14 +01:00
Bram Matthys 067e5bdfce Mention Modules forum in release notes. 2015-12-24 18:01:09 +01:00
Bram Matthys 1bde97174d Change wording re self-compiling windows version a bit. 2015-12-24 14:13:42 +01:00
Bram Matthys c9a21708b0 Update ./Config 2015-12-24 14:05:07 +01:00
Bram Matthys 98b13429a5 Update version to 4.0.0 2015-12-24 14:04:04 +01:00
Bram Matthys ce290f7a9a Remove 3.2.x stuff. Text will change post-release. 2015-12-24 13:04:41 +01:00
Bram Matthys 319f06f0b1 Some last changes to example conf: maxperip default 3, gencloak command, mention forums as support resource. 2015-12-24 13:03:03 +01:00
Bram Matthys d68f63b5fe If an oper whois'ed an oper who didn't use /OPER but OperServ to become oper then the IRCd would crash when trying to resolve the oper login name. Clear, right? 2015-12-18 11:29:30 +01:00
Bram Matthys 06b07e30dc Bump version to 4.0.0-rc6 2015-12-16 13:27:33 +01:00
Bram Matthys 829af871bf Fix empty hostname issue. This off-by-one was caused by "security enhancements" from nenofrienfrien. Thank you very much. 2015-12-16 13:13:09 +01:00
Bram Matthys 6178ca1c6f Fix memleak if you had swhois titles on oper / on vhost / .. 2015-12-16 11:30:19 +01:00
Bram Matthys 4c2323e1a3 Now at the right place.. 2015-12-16 11:22:58 +01:00
Bram Matthys b9a3e54eb7 Fix memory leak (~12 bytes per connect) 2015-12-16 11:13:36 +01:00
Bram Matthys 1ef38b242c Change expiry time of self-signed SSL cert generated by makecert.bat from 1yr to 10yrs to match *NIX Makefile. 2015-12-16 11:00:33 +01:00
Bram Matthys 49384b8903 The 'unrealircd' script was missing if you installed to a directory other than ~/unrealircd. Reported by staticfox. 2015-12-13 15:45:13 +01:00
Bram Matthys fd40bed05f Remove #define EXPERIMENTAL. I'm sure I'll forget about this later otherwise.. 2015-12-13 09:28:31 +01:00
Bram Matthys 3c2c66b168 Give OpenSSL <1.0.0 users a small hint. 2015-12-13 09:21:18 +01:00
Bram Matthys dd50463126 Make extban ~n (nickchange) not apply to voiced users, like in 3.2.x. This was an unintentional change. 2015-12-13 08:22:58 +01:00
Bram Matthys 377ce40ef8 Fix CAP REQ not working with multiple arguments. 2015-12-12 15:28:21 +01:00
Bram Matthys 200ea0e0b2 Channel mode +L and +f were missing in 005 CHANMODES=. Reported by DBoyz. 2015-12-11 12:15:06 +01:00
fduchene ca87684d7f Allow shunned users to use the PING command
When a user is shunned (eg /tempshun user ), the command PING cannot be used (PONG can so answer server PING).
Some clients like irssi are using PING  command to compute the server lag, so when an irssi user is shunned, the lag displayed in irssi start ton increase, giving a way ton know if he is shunned.
After 320 sec of lag, irssi will reconnect, bypassing automatically the tempshun.
2015-12-10 17:54:33 +01:00
Bram Matthys 7f07c3f71b Bump version to 4.0.0-rc5 2015-12-09 20:02:30 +01:00
Bram Matthys f04e95376b /LIST never finished if more than 50-100 channels (#4473). Oh neno... does it ever stop? 2015-12-09 19:42:50 +01:00
Bram Matthys 5b50f080dd Update curl-ca-bundle.crt to: Certificate data from Mozilla as of: Wed Oct 28 22:42:42 2015 (+CACERT) 2015-12-09 19:09:31 +01:00
Bram Matthys 76338b4780 For nick collision #define ASSUME_NICK_IN_FLIGHT. This (only) does a little better, the real fix is to run a 100% UnrealIRCd 4 network. Reported by Eman (#4472). 2015-12-09 18:27:59 +01:00
Bram Matthys 7d43bf1203 SAJOIN ignored set::level-on-join. Reported by blank (#4480). 2015-12-09 17:49:42 +01:00
Bram Matthys f6a58b60af Added workaround for "Cannot accept connections: Operation not supported" problem (#4469). 2015-12-09 17:44:54 +01:00
Bram Matthys a603898688 Fix opers not getting any error messages when they are unable to join a channel.
Remove OperOverride code from JOIN. This should be handled in INVITE, as in 3.2.x.
2015-12-09 16:51:17 +01:00
Bram Matthys 9ac8de5003 OperOverride didn't work (INVITE + JOIN) 2015-12-09 16:49:04 +01:00
Bram Matthys 46581f2bfb Windows: Fix possible crash on connect. Add error message on failed server connect (not perfect yet). Reported by Robben (#4485). 2015-12-09 11:45:31 +01:00
Bram Matthys d50f9468c6 third -> fourth 2015-11-25 19:23:40 +01:00
Bram Matthys 97fb9f1457 Bump version to 4.0.0-rc4 2015-11-25 19:05:30 +01:00
Bram Matthys 4280d57f60 Modes of permanent channels (+P) with 0 members and 0 bans/excepts/.. were not synched correctly. Reported by 'i' (#4459). 2015-11-25 15:37:38 +01:00
Bram Matthys 4dd6be721c Fix crash on linking (#4451). 2015-11-25 15:00:28 +01:00
Bram Matthys 9fbcfe7911 Remove debugging log entry regarding canceled blacklist requests 2015-11-23 21:41:51 +01:00
Bram Matthys c1c1c9b308 Update PCRE2 to 10.20 2015-11-15 16:56:31 +01:00
Bram Matthys b2da8251d8 Fix crash on boot if set::modes-on-join contains channel mode 'f'. Reported by LinkServ (#4461). 2015-11-11 10:23:56 +01:00
Bram Matthys f4d0b7b802 Upd release notes 2015-11-08 10:33:52 +01:00
Bram Matthys 2f2ee0ba03 Bump version to 4.0.0-rc3 2015-11-08 10:29:01 +01:00
Bram Matthys 78a778e3df Add some tracing for hostname setting bug (may never happen) 2015-11-08 09:44:13 +01:00
Bram Matthys c51ba70cc3 Move sptr->user->realhost initalization to make_user() 2015-11-08 09:43:51 +01:00
Bram Matthys 4653879474 Remove invite-notify as the implementation by our nenofriend is completely broken, as usual. Not a really interesting feature anyway. We can still add it properly post-4.0 if want. 2015-11-02 18:33:07 +01:00
Bram Matthys 122a9b6b46 upgrade-conf: in case of link::password-receive/password-connect mismatch try harder to pick the right one. 2015-11-02 14:51:58 +01:00
Bram Matthys 00d0822320 Don't crash on invalid IP from authenticated server link (eg: faulty services). (#4444) 2015-11-02 14:42:23 +01:00
Bram Matthys a45b03e0cc Remote includes: if you /REHASH with a down remote location twice, then the cached version was deleted. 2015-11-02 14:22:25 +01:00
Bram Matthys a5760351fe Remote includes: timeouts were not handled properly. An unresponsive DNS or HTTP(S) server could result in not being able to /REHASH ('rehash already in progress') 2015-11-02 14:04:27 +01:00
Bram Matthys 0dbeab6362 Update release notes a bit (interim?) 2015-11-01 17:02:45 +01:00
Bram Matthys 132d9ec2c5 Add "(SSL)" to SSL ports in bootup message. 2015-11-01 11:17:45 +01:00
Bram Matthys 9b4462f099 Fix incorrect help text in configure. Reported by Fersure (#4123) 2015-10-30 12:53:57 +01:00
Bram Matthys f07e1ae19e Update quarantine kill message. 2015-10-30 09:51:24 +01:00
Bram Matthys d67d9ab6cb link::options::quarantine didn't work anymore. Also fix missing quarantine notice, reported by vonitsanet (#3341). 2015-10-30 09:49:22 +01:00
Bram Matthys 9dc97a0324 Destroy channel when oper does (SA)MODE #channel -P on a channel with 0 users. Reported by blank (#4442). 2015-10-30 09:36:01 +01:00
Bram Matthys c06e3a7ef6 Files in the tld { } block were being loaded from the wrong location, resulting in errors/confusion. Reported by Manuel (#4440). 2015-10-30 09:25:10 +01:00
Bram Matthys e77ebaf26b Add 'map' to default operclass privileges so opers see ulines and the real map (not flat-map). Reported by blank (#4441). 2015-10-30 09:19:11 +01:00
Bram Matthys cdbdd2dce0 On windows replace the UnrealIRCd icon with a simple blue (U). May change later. 2015-10-28 19:38:22 +01:00
Bram Matthys cc54108400 Update Windows GUI at least a little bit for UnrealIRCd 4. 2015-10-28 19:16:25 +01:00
Bram Matthys 46e7e7bb42 No nenolod, arabic is not latin. Not quite. Fix #4437 reported by blank. 2015-10-28 16:18:22 +01:00
Bram Matthys d81c52c5aa Rewrite hunt_server. Our nenofriend made it hunt random users if not found, interesting. Rewrote/improved the function. I think this should fix #4415, #4438, #4439, and possibly more. 2015-10-28 11:16:29 +01:00
Bram Matthys 1533a296fe Update version to 4.0.0-rc2 2015-10-26 14:39:28 +01:00
Bram Matthys 67a9833104 Add notes 2015-10-26 14:36:38 +01:00
Bram Matthys b087f21482 Fix has_channel_mode() for 'k' (unused) 2015-10-26 11:08:59 +01:00
Bram Matthys 4ec8f772d8 Remove useless variable in windows makefile. Reported by warg (#4169). 2015-10-26 11:06:24 +01:00
Bram Matthys cce6eb7586 re-indent 2015-10-26 10:22:28 +01:00
Bram Matthys 243045a887 Workaround for libcurl bug. Fixes #4419. This caused an un-/REHASH'able server if you used remote includes (epoll_ctl error) and were adding new listen blocks at runtime, for example. 2015-10-26 10:17:47 +01:00
Bram Matthys c51c3800c3 Update IPv6 compile check. It should only check if compile-time IPv6 support is available. We can deal with missing IPv6 support at runtime nowadays. 2015-10-26 09:13:44 +01:00
Bram Matthys 10f56911c4 Another fix for #4431 & #4433. Yes, there were two bugs! This one was already pointed out by DBoyz, actually. 2015-10-25 19:44:34 +01:00
Bram Matthys 4d7e84b39a Seems "someone" forgot to include the sender prefix in the format string. Fix crash reported by dboyz (#4431) & Erik (#4433) in invite notify. 2015-10-23 18:43:11 +02:00
Travis McArthur eac9230931 Fix bug in when we set backend flags in kqueue 2015-10-19 10:55:31 -07:00
Bram Matthys 38dbede832 Windows build: fix nmake [..] custommodule to use src/modules/third/ rather than src/modules/ 2015-10-18 10:49:33 +02:00
Bram Matthys f6837d0202 Add has_channel_mode(chptr, 'X') for modules.
Since many channel modes are modular now you can't simply check chptr->mode.mode & SOME_MODE, instead use this function ;)
2015-10-17 19:51:59 +02:00
Bram Matthys 2de3fbf9d0 Remove MODE_NOCOLOR and MODE_STRIP leftovers. 2015-10-17 19:51:39 +02:00
Bram Matthys 240f550e4f Re-indent this damn file. Has been annoying for years.. 2015-10-17 12:35:14 +02:00
Bram Matthys c5ad32e909 Make /GLINE, /ZLINE, etc.. without parameters call /STATS .. internally so we can get rid of duplicate code.
Previously notices were missing if you used f.e. /SHUN without paramers, reported by Dodge_Ram (#2533).
2015-10-17 12:04:03 +02:00
Bram Matthys bc2f58e8dd /NOTICE $* did not work. Fix broken sendto_match_butone(). Reported by blank (#4422). 2015-10-17 11:39:20 +02:00
Bram Matthys 23e65d3ca0 Merge branch 'unreal40' of github.com:unrealircd/unrealircd into unreal40 2015-10-17 11:12:59 +02:00
Bram Matthys f1426e02ee Fix channel mode +P (Permanent) not working if you have set::modes-on-join, reported by blank (#4426). 2015-10-17 11:11:55 +02:00
Travis McArthur 4e8f954db6 Fix error handling in kqueue reload 2015-10-16 15:34:10 -07:00
Travis McArthur b747d00dea Fix kqueue behavior on fork 2015-10-16 15:32:10 -07:00
Travis McArthur c0eb5a1faf Fix removing things from kqueue before adding 2015-10-16 14:05:59 -07:00
Bram Matthys 7637517da2 In UnrealIRCd 4 channel mode j & A no longer exist, same for user modes O, a, A, N, C. Also oper flags no longer exist. 2015-10-14 22:00:29 +02:00
Travis McArthur f1e07feec7 Merge pull request #37 from blindsighttf2/typo
Fix error message in delayjoin
2015-10-13 22:58:10 -07:00
Matt Ullman cf34e4dbe8 Fix error message in delayjoin 2015-10-13 11:49:26 -04:00
Bram Matthys 8b45169f82 Get rid of $Id$ in /MODULE (version) output. Just report as "4.0" 2015-10-11 18:18:31 +02:00
Bram Matthys 14e90955bf Remove old stuff (never used / extra stuff that does not compile) 2015-10-11 18:12:41 +02:00
Bram Matthys 264b43f6a1 Remove crash test on /DIE 2015-10-11 18:03:06 +02:00
Bram Matthys 29e645874e Report properly as 4.0.0-rc1 (not 4.0-rc1) 2015-10-11 17:58:04 +02:00
Bram Matthys 681fd333cc name change 2015-10-11 17:46:41 +02:00
Bram Matthys b428f9b3a3 Windows: wircd.exe -> UnrealIRCd.exe. unreal.exe -> unrealsvc.exe. And some more name changes. 2015-10-11 17:44:49 +02:00
Bram Matthys a565a68f36 Unreal -> UnrealIRCd 2015-10-11 17:31:59 +02:00
Bram Matthys ac21d19daa Windows installer.. details.. 2015-10-11 17:09:48 +02:00
Bram Matthys cd7feca47f Windows installer: check if VC2012 Update 4 is installed. IOTW: remove unnecessary prompt about visual studio redistributable if already installed 2015-10-11 17:03:49 +02:00
Bram Matthys e337d8d526 Update version for Windows (*sigh*.. yet another file..) 2015-10-11 16:49:21 +02:00
Bram Matthys 30d5018c8e Fix URL displayed when no config file is available (Windows) 2015-10-11 16:44:28 +02:00
Bram Matthys 7cab2bd83d Fix crash on boot on Windows 2015-10-11 16:43:04 +02:00
Bram Matthys 01f3d7a03b Bump protocol version to a more appropriate number (3999) for RC series. Will later become 4000 for the 4.0.0 stable release. 2015-10-11 16:14:59 +02:00
Bram Matthys fb0709e0f1 Update libcurl path in windows installer 2015-10-11 16:10:13 +02:00
Bram Matthys 28d3c00805 Update README to reflect version and branch changes 2015-10-10 18:21:57 +02:00
Bram Matthys 0e42c1f5d3 Update release notes 2015-10-10 17:58:27 +02:00
Bram Matthys 537c9a2eea UnrealIRCd. Not Unreal. 2015-10-10 17:50:09 +02:00
Bram Matthys 507d88cf09 Bump version to 4.0.0-rc1 2015-10-10 17:44:52 +02:00
Bram Matthys ccdc948200 Improve epoll error message 2015-10-10 16:09:30 +02:00
Bram Matthys 75fb661361 Don't truncate error message (umode +q & umode +S) 2015-10-10 11:22:37 +02:00
Bram Matthys da7cd5f8cc Blacklist module will now no longer send server notices about users who have already been klined/glined (earlier). 2015-10-04 11:19:24 +02:00
Bram Matthys 792dd9a63c Merge pull request #36 from dboyz/3539
[#3539]: Prevent empty channel message when +S is set and the only text is a color code.
2015-10-01 21:01:16 +02:00
Daniel Tan 20c7e8d825 [#3539]: Validate if return string is NULL
We should send ERR_NOTEXTTOSEND too.
2015-10-02 02:00:56 +08:00
Bram Matthys ec3be52568 - 2015-10-01 18:14:52 +02:00
Bram Matthys d059505c33 return value, now this function has been fixed to return int rather than void 2015-09-22 10:45:31 +02:00
Bram Matthys 2f112c3efa Update hook prototypes (typechecking). Fix build. Forgot.. in 3.4 these return int now... 2015-09-22 10:43:26 +02:00
Bram Matthys bd7aebc81e upd hook prototypes 2015-09-21 13:40:36 +02:00
Bram Matthys 9ba9d65c7e Add GCC typechecking: we now validate HookAdd... calls, making sure the function (pointer) is as it should. This to avoid crashes and weird behavior in case of a mismatch.
This resulted in 5-10 changes in the existing code where parameters were off.
Hopefully I didn't make too many mistakes when writing the hook prototypes as it was a tedious job.
An (unintentional) benefit of this new system is that you can see the hook prototypes in include/modules.h like:
/* Hook prototypes */
int hooktype_local_quit(aClient *sptr, char *comment);
....
Though, the wiki is likely a better place: https://www.unrealircd.org/docs/Dev:Hook_API
2015-09-21 11:52:00 +02:00
Bram Matthys 3280c3639e Add runtime "listening on" message if listener is added. 2015-09-20 17:08:49 +02:00
Bram Matthys cd6f127cfd Split "UnrealIRCd is now listening on.." message into IPv4 & IPv6 lines. Only display on-boot. 2015-09-18 18:15:17 +02:00
Bram Matthys 331cdbc1d6 IRCd was applying set::restrict-usermodes to remote users, it shouldn't do that (#4418). 2015-09-13 09:29:09 +02:00
Daniel Tan ae34c3626b Merge remote-tracking branch 'unrealircd/unreal34' into unreal34 2015-09-13 09:12:41 +08:00
Bram Matthys d0b53a9b09 For non-SID-capable servers: fix nenolod ripping out CLK and NICKIP capability checking. 2015-09-12 11:25:31 +02:00
Bram Matthys 69a121278f De-duplicate code. Make sendto_serv_butone_nickcmd() use sendto_one_nickcmd(). Fixes bug reported by Adam. 2015-09-12 11:16:02 +02:00
Bram Matthys af88bc7e19 Make port ranges work again in the listen block. 2015-09-09 08:21:05 +02:00
Bram Matthys ada38f7ac3 Fix explicit password method in .conf no longer working, eg: password "....." { md5; }; 2015-09-07 16:44:08 +02:00
Bram Matthys 177f102d26 Update example conf translations on new listen block. 2015-09-07 15:45:04 +02:00
Bram Matthys 972ef43a81 Update listen block in example.conf to new format. 2015-09-07 15:40:01 +02:00
Bram Matthys a89d64869b Upd release notes 2015-09-07 13:48:11 +02:00
Bram Matthys 493ac9aec9 Add 'r' to flags if compiled with remote includes support. Suggested by katsklaw (#4002). 2015-09-07 12:59:00 +02:00
Bram Matthys 74f2c10e2e Remote includes cache was only written after the first /REHASH. Now also on-boot, as it should. 2015-09-07 12:37:54 +02:00
Bram Matthys 09191c47b2 Fix remote include caching for URL's that end in a / (#4409 too) 2015-09-07 12:24:19 +02:00
Bram Matthys c12d05182e Fix remote includes cache not working. Reported by Eman (#4409). 2015-09-07 12:14:15 +02:00
Bram Matthys ec8a7215bd Fix /GLINE 'ban too broad' error when the ban was perfectly OK. 2015-09-07 11:58:31 +02:00
Bram Matthys 926bbbcec9 Show remote server IP to ircops in outgoing connects, both on success and failure. Makes things easier to debug. 2015-09-07 11:45:38 +02:00
Bram Matthys 123b91cfe1 Server linking: fix crash on outgoing connect when link::outgoing::hostname is a.. hostname. 2015-09-07 11:42:26 +02:00
Bram Matthys 99fb8dbfd6 Use unrealircd.org and not unrealircd.com in e-mail addresses, URL's, etc.
Also use https://
2015-09-06 10:37:03 +02:00
Bram Matthys 208e93ce8e Update list of donators. 2015-09-06 10:29:21 +02:00
Bram Matthys 13d7da7a7b Update release notes and bump version to 3.4-beta4. 2015-09-06 10:09:19 +02:00
Bram Matthys 15469cae2e Send version information in SERVER command like before (VL). Expand PROTOCTL EAUTH.
PROTOCTL EAUTH=servername,protocolversion,flags,unrealversiontext
This makes deny link { } work again and gives a bit more information too.
Bug reported by GLolol (#4408).
2015-09-05 12:06:55 +02:00
Bram Matthys 8c9ddb4767 Server protocol documentation moved to the wiki at https://www.unrealircd.org/docs/Server_protocol 2015-09-05 09:43:00 +02:00
Bram Matthys 8e87a963a1 Not important, but.. when server linking, send password just once and not twice. 2015-09-04 12:30:07 +02:00
Bram Matthys 9b0bd01749 Fix crash on (outgoing) server linking attempt. 2015-09-04 12:22:39 +02:00
Bram Matthys 01244b1710 Fix OpenBSD compile problem regarding sys/timeb.h. Reported by cman351 (#4398).
More use of unrealircd.h.
2015-09-04 11:59:53 +02:00
Bram Matthys 67fe4479ec Fix (harmless) curl compile warning, reported by warg (#3987). 2015-09-04 11:32:04 +02:00
Bram Matthys 03616cb853 Fix UnrealIRCd hanging on SSL clients, thus freezing the IRCd. Reported by Eman (#4406). 2015-09-04 11:14:06 +02:00
Bram Matthys 237d22249b Apparently forgot to run ./autogen.sh - strange nobody noticed :D 2015-09-03 18:47:41 +02:00
Bram Matthys f44ad7e608 Fix possible crash on boot with bind/listen errors. 2015-08-31 09:30:59 +02:00
Bram Matthys 77e092573d Fix compile problem (without remote includes) caused by yesterday changes. 2015-08-31 09:19:49 +02:00
Bram Matthys 42cec683df Fix crash when you run './unrealircd mkpasswd bcrypt' on the command line. Reported by Eman (#4403). 2015-08-30 09:53:40 +02:00
Bram Matthys f211a5424a Accept relative path if you boot the binary with -f cfgfile 2015-08-30 09:50:47 +02:00
Bram Matthys 281ad03681 Remote includes were broken. Also set::ssl::certificate only worked with absolute paths. Both issues were reported by Eman (#4401, #4402). 2015-08-30 09:40:51 +02:00
Bram Matthys 452aa02737 SSL: use ECDHE key only once (per session) for better forward security. 2015-08-17 11:43:18 +02:00
Bram Matthys 37a6c078ff Disable SSL tickets to improve forward security. Isn't that useful on IRC anyway (hence session cache was already off). 2015-08-17 11:37:27 +02:00
Bram Matthys 4378667303 SSL: Add support for ECDHE for forward secrecy. 2015-08-17 11:10:25 +02:00
Bram Matthys f0bba94144 Disable SSLv3. 2015-08-16 21:10:53 +02:00
Bram Matthys c17d0291c9 Update release notes. 3.4-beta3 release now. 2015-08-16 15:09:30 +02:00
Bram Matthys 0256ea08df Fix SASL crash 2015-08-16 15:08:30 +02:00
Bram Matthys 5755721d5f Last minute change to ./Config 2015-08-16 15:07:17 +02:00
Bram Matthys 502e48bdfa Fix SVSMODE Servers only command. Reported by goXXip (#4391). Similar to previous issue. 2015-08-15 18:36:33 +02:00
Bram Matthys 974ccb1066 SVSKILL may be sent from pseudo user 2015-08-15 18:35:28 +02:00
Bram Matthys e4139a3c79 update release notes (crash reporter) 2015-08-15 18:19:10 +02:00
Bram Matthys 787563beef Change version to 3.4-beta3 (some fixes will follow though, before release) 2015-08-15 18:12:47 +02:00
Bram Matthys 6a5515d4dc Fix crash on outgoing server connect if ident checking was enabled (bug introduced a few weeks ago). 2015-08-15 14:52:39 +02:00
Bram Matthys ad23afc81f Improve (error) messages shown on console while booting. Fatal boot errors are now shown on the console, no need to check ircd.log. 2015-08-10 21:50:23 +02:00
Bram Matthys c5335a6866 Make all bind errors fatal. Log on which ports UnrealIRCd is listening on. 2015-08-10 17:45:55 +02:00
Bram Matthys 351c4a5107 remove debugging inetport() thingy 2015-08-10 17:23:17 +02:00
Bram Matthys 3d60e89e54 When log::maxsize is specified the ircd will now rename the log file to [nameoflogfile].old when it reaches the maximum size (any previous ircd.log.old will be overwritten). This is much more useful than just truncating the log file (= all contents are lost). 2015-08-09 17:26:33 +02:00
Bram Matthys 810feea66f Merge pull request #33 from dboyz/recvq,sendq
[#4382] Fix recvq and sendq unable to specify data size prefix (m,k,G)
2015-08-09 17:12:34 +02:00
Bram Matthys fb157899dc Implemented #1613: When doing a remote /REHASH show the rehash result (such as warnings and errors encountered). 2015-08-09 16:18:27 +02:00
Bram Matthys 54f30886d2 Fix server linking (outgoing) not working after IPv4/IPv6 split a week ago. 2015-08-09 16:12:38 +02:00
Bram Matthys a18596c9b5 Nowadays OpenSSL is using the following official binary compatbility policy: for version A.B.Cd as long as A.B is the same for both runtime & compiled time then it's compatible. 2015-08-09 15:24:20 +02:00
Bram Matthys 20d8f876c8 Fix crash on startup if using the dnsbl block with multiple replies. Reported by Hero (#4392). 2015-08-09 15:10:53 +02:00
Bram Matthys f985f21c54 even better 2015-07-29 18:48:17 +02:00
Bram Matthys ebc61fe603 Reject bans with ASCII < 32. There's no reason to allow these.. 2015-07-29 18:44:39 +02:00
Bram Matthys 13089a6958 Show IPv6 nameservers in '/QUOTE DNS i'. This requires c-ares >=1.7.1. Since 1.7.1 is from March 2010 that should be okay ;) 2015-07-29 17:53:43 +02:00
Bram Matthys a843cec6bc like I said 2015-07-29 17:41:14 +02:00
Bram Matthys 9b97e28ccd Remove unused settings. 2015-07-29 17:39:29 +02:00
Bram Matthys 09895c67f1 set::stats-server is optional, however if it was missing then if an oper did '/STATS S' the ircd would crash. 2015-07-29 16:03:45 +02:00
Bram Matthys e627d3682c pass by ref instead of pass by value for chmode_str() 2015-07-29 16:03:25 +02:00
Bram Matthys 8df16d5a83 kill some warnings (mostly bogus) 2015-07-29 15:55:31 +02:00
Bram Matthys 2bd5345eec quick fix for flood counters being reset on /REHASH. will use moddata later so we can reload ok again. 2015-07-29 13:13:09 +02:00
Bram Matthys 0bcc8494b7 Fix some FIXME's. Remove unused set::dns::nameserver (actually it was a fallback if /etc/resolv.conf etc failed but.. well.. not anymore!) 2015-07-29 13:09:26 +02:00
Bram Matthys 8a3d1b22f1 Move too broad ban checking to ban_too_broad(usermask,hostmask) function. TODO: more config shit. 2015-07-29 13:00:29 +02:00
Bram Matthys b12ee99ab2 like I said. 2015-07-29 12:42:06 +02:00
Bram Matthys 14aca6bcde Remove unused alloca stuff. Fix windows warnings. 2015-07-29 12:30:40 +02:00
Bram Matthys 8c86721c55 Fix some Windows compile warnings 2015-07-29 12:19:29 +02:00
Bram Matthys 49bb80901e Add './unrealircd upgrade-conf' code for upgrading the listen block to the new syntax. 2015-07-29 11:50:23 +02:00
Bram Matthys ff0b4aba75 New style listen block: listen { ip *; port 6667; };. Why? Mainly because the old style looks strange for IPv6 (brackets and stuff). 2015-07-29 11:37:51 +02:00
Bram Matthys 6410f82162 don't care. 2015-07-29 11:01:38 +02:00
Bram Matthys 4a890e3915 Add IPv6 info to release notes. 2015-07-29 11:00:20 +02:00
Bram Matthys c19165c8a6 Remove remaining INET6 defines and questions, as it's now always the default. 2015-07-29 10:42:40 +02:00
Bram Matthys ae23d99e07 Get rid of #if INET6 stuff, as all supported OS's support IPv6 at compile time. Use set::options::disable-ipv6 to disable IPv6 at runtime. Cleanup unused IPv6 structs/vars/functions/.. 2015-07-29 10:31:12 +02:00
Bram Matthys 3b217f083a Make IPv6 work on Windows 2015-07-29 09:50:36 +02:00
Bram Matthys c8a5bfd2b4 like I said.. 2015-07-28 22:26:24 +02:00
Bram Matthys a29baf96f6 upgrade some ipv4-only stuff. Also set::link::bind-ip was broken in multiple ways. 2015-07-28 22:24:17 +02:00
Bram Matthys fa87577918 and some more. 2015-07-28 22:14:58 +02:00
Bram Matthys 49fb284096 finishing up.. 2015-07-28 21:48:25 +02:00
Bram Matthys ea7a080154 remove more unused functions 2015-07-28 21:44:32 +02:00
Bram Matthys 47ec1da3f5 Remove unused functions 2015-07-28 21:42:40 +02:00
Bram Matthys 6f34a8203d Another interim commit for ipv4/ipv6 socket split. Compiles now, and client connects. Still plenty to fix.. 2015-07-28 17:56:40 +02:00
Bram Matthys b072a80638 get rid of local->ip stuff in throttle 2015-07-28 17:47:40 +02:00
Bram Matthys 46ee510da6 ipv4/ipv6 split. interim commit (does not compile) 2015-07-28 17:42:24 +02:00
Bram Matthys 63724c312b Use acptr->ip 2015-07-28 16:21:08 +02:00
Bram Matthys 3577583eaf ipv4/ipv6 split - phase 1 (unstable!!) 2015-07-28 16:20:00 +02:00
Bram Matthys d15701bced Make ident code more ipv4/ipv6 neutral. This will break things until we do the socket split. 2015-07-28 14:44:42 +02:00
Bram Matthys 3ffa547d2e Remove more acptr->local->ip stuff, and fix some code from minutes ago. 2015-07-28 14:19:18 +02:00
Bram Matthys a6a5e93524 We already check for 'too many unknown connections from your IP' in add_connection(). 2015-07-28 14:15:30 +02:00
Bram Matthys 8e30acda41 More local->ip & INET6 stuff removed. 2015-07-28 14:14:52 +02:00
Bram Matthys 80147b2914 Make throttling code work on aClient * structs. Other code may change later (makes it easier). 2015-07-28 14:05:41 +02:00
Bram Matthys 7d98523c48 Remove forward/revdns mapping check as we already do this in res.c. Convert stuff from acptr->local->ip (struct) to acptr->ip (string) 2015-07-28 14:01:01 +02:00
Bram Matthys 925de764ff Make auto-join code use Find_tld(). Guess this means tld::options::ssl was not working for tld-specific auto join channels. 2015-07-28 13:55:00 +02:00
Bram Matthys a049ef22e4 remove unused code due to previous changes 2015-07-28 13:52:17 +02:00
Bram Matthys a444964730 Convert TLD code to use match_user(): MOTD OPERMOTD BOTMOTD RULES etc.. 2015-07-28 13:50:47 +02:00
Bram Matthys 709c7e890e Use match_user() for is banned checking. This also makes CIDR work in bans/exempt/invex.
Remove ban_realhost, ban_virthost, ban_cloakhost and ban_ip stuff. Should be just as fast if you use match_user() now.
2015-07-28 13:39:56 +02:00
Bram Matthys 58b864edd5 Re-do CIDR and at the same time all the user matching stuff. Introducing match_user(mask, acptr, options): this should be used everywhere rather than the many DIY routines everywhere that create a nick!user@host and then run a match() on it.
The match_user() function is not been fully tested yet, at this point I'm happy we can compile again.
2015-07-28 13:26:03 +02:00
Bram Matthys 26bdea371e Start of "try to use IP strings rather than IPv4/6 specific code". Just a start, would do more but my pizza is ready. 2015-07-27 18:51:13 +02:00
Bram Matthys 012413313c fix loopback checking 2015-07-27 18:42:28 +02:00
Bram Matthys 5bfa5c701e Never understood why it's called get_sockhost() if it actually sets it. Renamed to set_sockhost() 2015-07-27 18:30:25 +02:00
Bram Matthys 55af91a4ce ensure acptr->ip is set (probably useless change, but better safe than sorry). fix incorrect comment. 2015-07-27 18:13:13 +02:00
Bram Matthys a613a29b02 Ensure people don't run 'make' from the wrong directory. Reported by hyperi0n. 2015-07-26 14:14:39 +02:00
Travis McArthur 91c6b0025e Fix compile failure on BSD/OSX 2015-07-25 19:52:13 -07:00
Travis McArthur 8597e78038 Fix #0004382 - config_checkval in sendq,recvq 2015-07-25 19:42:20 -07:00
Daniel Tan 8417ddf0b9 Another case of atol -> config_checkval 2015-07-26 09:00:40 +08:00
Bram Matthys 33f1322def Whoops. Back out m_user cleanup from an hour ago. We call m_user() at a few places (ugly ugly). Will take a look at this again another time I guess.. 2015-07-25 20:41:59 +02:00
Bram Matthys 40354d0459 Hmmm. This doesn't work. Look at it again later, I like the warning, just want the option to ignore it. 2015-07-25 20:38:52 +02:00
Bram Matthys 85dceb0bae mark some stuff with __attribute__((warn_unused_result)) 2015-07-25 20:29:04 +02:00
Bram Matthys 2a53499610 Get rid of useless DLLFUNC prefixes (at places where they were not needed) 2015-07-25 20:23:37 +02:00
Bram Matthys fd375ee284 Use CMD_FUNC() everywhere 2015-07-25 20:22:44 +02:00
Bram Matthys 4ad0ef4c65 use pclose after popen and not fclose .. :) 2015-07-25 19:41:15 +02:00
Bram Matthys 80d3205a72 blah. enough small things now. 2015-07-25 19:26:24 +02:00
Daniel Tan 19faef887d This one is supposed to use config_checkval too. Thanks for pointing out 2015-07-26 01:16:23 +08:00
Bram Matthys 35aff98d10 really don't care about return value 2015-07-25 19:13:34 +02:00
Bram Matthys c480ee5b91 fix silly warning. was safe, parv[1] can never exceed BUFSIZE (512), duh. 2015-07-25 19:12:29 +02:00
Bram Matthys b1a1c51f4e wow.. that's a lot of lines to do something simple @ m_vhost :D 2015-07-25 19:10:48 +02:00
Bram Matthys 4573a61518 cleanup m_vhost 2015-07-25 19:08:19 +02:00
Bram Matthys 83a2caea3e cleanup m_user. Remove very old code to deal with remote USER messages from servers 2015-07-25 19:02:42 +02:00
Bram Matthys 652795f2c0 Fix a bug in spamfilter TKL syncing with non-TKLEXT servers (non-unrealircd's). 2015-07-25 18:49:28 +02:00
Bram Matthys e1160a0260 Check FLUSH_BUFFER. 2015-07-25 18:36:47 +02:00
Bram Matthys 9a336fa53b cleanup 2015-07-25 18:36:23 +02:00
Bram Matthys ec504a2e49 parc wasn't decreased in a mode cutoff routine. 2015-07-25 18:29:31 +02:00
Bram Matthys fd3057a462 goto deny; continue; hmmmmm 2015-07-25 18:25:41 +02:00
Bram Matthys 13390250ec more of the same 2015-07-25 18:24:13 +02:00
Bram Matthys 4f8be613b9 cleanup & re-indent m_invite & remove old checks/ifdef's 2015-07-25 18:22:10 +02:00
Bram Matthys 55af9ec0a9 don't +b if banlist is full @ chanmode +f textflood kickban 2015-07-25 18:09:52 +02:00
Bram Matthys f7ba695625 Crash reporter is now working on Windows as well. 2015-07-25 12:31:03 +02:00
Bram Matthys 644ddd43ca Windows: use crash handler for abort() calls as well (this needs to be improved, but in the meantime...) 2015-07-25 10:53:12 +02:00
Bram Matthys 443a8bb734 Fix Windows core dump. Stack trace was broken. 2015-07-25 10:30:31 +02:00
Bram Matthys fb0662f67c crash reporter: use HTTPS 2015-07-24 22:10:26 +02:00
Bram Matthys 2cb395216a First version of crash reporter. TODO: Windows, SSL (HTTPS), prettify code, .. 2015-07-24 21:21:35 +02:00
Daniel Tan 271d116120 Use config_checkval instead of atol 2015-07-25 02:18:39 +08:00
Daniel Tan 8148d43f6e [#4382] Fix recvq and sendq unable to specify data size prefix (m,k,G) 2015-07-25 02:05:22 +08:00
Bram Matthys 8bea346263 In fix_timers(), called for time jumps, also deal with aconf->hold (outgoing autoconnects). Change throttling flush to a more conservative approach. 2015-07-24 11:57:09 +02:00
Bram Matthys 5fce302336 1) Make firsttime ("online since") the real online since (fixes #2174), 2) Reset fakelag when user comes online. 2015-07-23 22:19:28 +02:00
Bram Matthys 7072902844 Update version to 3.4-beta2. 2015-07-23 14:52:16 +02:00
Bram Matthys c088dd61e5 update release notes for 3.4-beta2 2015-07-23 14:48:26 +02:00
Bram Matthys 2164f9ee67 Windows version: fix timers not being called at the right time & incorrect time jumped .. seconds ahead warning. 2015-07-23 14:22:17 +02:00
Bram Matthys ac6fa87e2e Fix (likely) crash if using set::options::flat-map because it was missing an argument to the fmt string. 2015-07-23 14:00:42 +02:00
Bram Matthys ecf71f0d4f fix code <1hr back. duh. 2015-07-23 13:49:14 +02:00
Bram Matthys a83ef4eccf Fix oper::mask { one; two; three; }; not working (#4376). 2015-07-23 13:25:09 +02:00
Bram Matthys eedf7e1eb7 AFAICT all these cases are handled elsewhere (registration timeout, dns timeout, ident timeout) and this code is wrong anyway (and hopefully never triggered) 2015-07-23 13:03:55 +02:00
Bram Matthys 6be099d2b1 Actually wait for the ident response rather than just hope it to arrive in time (which it often won't). 2015-07-23 12:58:33 +02:00
Bram Matthys 5a63808741 Don't flood the auth daemon :D 2015-07-23 12:41:58 +02:00
Bram Matthys bdbca8a8dc Fix crash on certain kills. Interesting bug :D 2015-07-23 10:37:45 +02:00
Bram Matthys 6347b0ca95 Channel mode +O had the join check reversed (rejecting ircops, allowing regular users) 2015-07-22 08:51:41 +02:00
Bram Matthys 2ff4e7857f dumdeedum 2015-07-22 08:31:28 +02:00
Bram Matthys e4a3902d3e Fix OOB read in recurse_send_quits (eg: SQUIT). Hopefully I understand this nenobug and -intentions correctly. 2015-07-20 18:34:25 +02:00
Bram Matthys a8ff8ea18d Rewrite all nick collision code. Use separate function. Use UID for KILL when available. Also use UID for nick changes. 2015-07-20 17:28:26 +02:00
Bram Matthys 74c2ff8723 TODO 2015-07-20 16:48:02 +02:00
Bram Matthys a554984b8e 1) add some code for easy debugging, 2) change a sendto_server call in sendto_serv_butone_nickcmd: wasn't sending new nicks to non-SID servers after previous fix (wtf). 2015-07-20 16:44:14 +02:00
Bram Matthys c478d7d9ef Move some stuff to introduce_user() so we can use it. 2015-07-20 16:42:36 +02:00
Bram Matthys 6f6b713fce sendto_server() w/multiple (combined) caps or nocaps was broken. It matched on ANY cap instead of ALL caps. 2015-07-20 16:42:01 +02:00
Bram Matthys 1452a2821b sendto_server() w/multiple (combined) caps or nocaps was broken. It matched on ANY cap instead of ALL caps. 2015-07-20 16:39:47 +02:00
Travis McArthur 89e675e254 Add configure action 2015-07-19 12:40:31 -07:00
Bram Matthys 87c0bbed3c Send nick collision kill with a winner to the losing side only. Trust the NICK is in-flight to that server and that it will kill his own and assign ours the winner. This fixes a bug until now where it was killing the wrong user (reproduced locally) and prevents re-introducing of our client which we will never do correctly. (#1977). If you can present a legit case where this is wrong, let me know. 2015-07-19 19:47:41 +02:00
Bram Matthys 8b039335d6 set cptr->sockhost for incoming server connections too so you can use hostnames in link::options::incoming, if you wish.. 2015-07-19 19:08:54 +02:00
Bram Matthys 004fd24368 whoops.. wrong order. 2015-07-19 19:08:45 +02:00
Bram Matthys 390a4c2494 Remove "PROTOCTL HCN" as we now include the IP in HCN-alike connecting messages. 2015-07-19 18:20:40 +02:00
Bram Matthys 02c9b7baca Change client connecting/exiting message. Always show IP. Use HCN style with some minimal changes. 2015-07-19 18:18:13 +02:00
Bram Matthys c425952cd6 Textual changes 2015-07-19 17:42:05 +02:00
Bram Matthys b4f3a39af0 Fix SupportNAMESX() on remote client 2015-07-19 17:23:51 +02:00
Bram Matthys 9baffb1b30 done with ip move. 2015-07-19 13:20:56 +02:00
Bram Matthys 173b643412 iwantthisgone 2015-07-19 13:19:06 +02:00
Bram Matthys 6379956521 strip 2 useless args from sendto_connect & sendto_fconnect (maybe useful in the past, not anymore) 2015-07-19 13:14:37 +02:00
Bram Matthys 209a5a3762 Start with moving ip_str stuff 2015-07-19 13:09:51 +02:00
Bram Matthys be5163af31 Merge branch 'unreal34' of github.com:unrealircd/unrealircd into unreal34 2015-07-19 12:53:26 +02:00
Bram Matthys 13fffa4e1a split all the local client stuff to acptr->local. makes it a lot easier to catch bugs.
If the IRCd crashes then it's likely not by this change but rather an existing issue that was previously gone unnoticed.
2015-07-19 12:48:18 +02:00
Travis McArthur 0f1840da6d Propogate models throughout app 2015-07-19 03:30:52 -07:00
Bram Matthys 19ad342a73 Start with client/localclient split 2015-07-19 11:50:32 +02:00
Travis McArthur 32557d44e5 generalize observer pattern 2015-07-19 01:41:57 -07:00
Bram Matthys c25c9d8529 Fix OOB write (causing memory corruption). 2015-07-19 10:22:29 +02:00
Travis McArthur 7e23713ace Further revisions to MVC architecture 2015-07-18 23:18:29 -07:00
Travis McArthur 6b2fefeadc Update configuration window 2015-07-18 18:36:10 -07:00
Travis McArthur e60ace66b5 Update configuration window 2015-07-18 14:41:46 -07:00
Travis McArthur 23e68fe649 Add Quit Option 2015-07-18 14:23:57 -07:00
Travis McArthur bc02f47c06 Update UI for config window 2015-07-18 14:23:57 -07:00
Travis McArthur a336e887b9 Move to model based approach 2015-07-18 14:23:56 -07:00
Travis McArthur 1bf2124fa4 Wire up menus correctly 2015-07-18 14:23:56 -07:00
Bram Matthys 421b224d8e Fix SSL client certificate fingerprint authentication not working for server linking. Broken since May 23 already. 2015-07-18 22:05:22 +02:00
Bram Matthys 8b716f337d Get rid of this strange mass-closing stuff that only causes trouble. Fix nothing-being-logged-issue. 2015-07-18 19:24:46 +02:00
Travis McArthur ab4e4bd306 Update menu and hide window in app 2015-07-17 20:01:14 -07:00
Travis McArthur b67d4a0e64 Add temporary logo file 2015-07-17 20:01:14 -07:00
Travis McArthur db9dedace7 Fix .gitignore - only ignore unrealircd in root 2015-07-17 20:01:14 -07:00
Bram Matthys 64540d14aa smart.. 2015-07-17 21:00:13 +02:00
Bram Matthys da9bd09e76 deal with uppercase hex in link::password (and others) -> autodetect as sslclientcertfp 2015-07-17 20:56:34 +02:00
Bram Matthys 7153d8faa8 don't fd_setselect on -1 fd if ident check failed 2015-07-17 18:11:40 +02:00
Bram Matthys 6cf476ff8e crash on invalid fd usage if DEBUGMODE (so we can trace things) 2015-07-17 18:10:06 +02:00
Bram Matthys 5d25c36a6c Add doc/conf/examples/example.tr.conf, translated by Serkan. 2015-07-17 16:22:27 +02:00
Bram Matthys 0fb82352af improve style (no bug) 2015-07-16 21:32:41 +02:00
Bram Matthys 24f3644ecf getting rid of more useless casts 2015-07-16 21:31:02 +02:00
Bram Matthys 0698ba296c various stuff 2015-07-16 21:01:50 +02:00
Bram Matthys 88aa91eb94 rather than copying the string result, why not work on the buffer directly.. 2015-07-16 21:01:27 +02:00
Bram Matthys 03cb78543a hm invalid var used. only a problem if extban module does not provide conv_param() which is mandatory anyway, so no problem I guess, but still.. 2015-07-16 21:00:45 +02:00
Bram Matthys b7cbf108d8 pass by value -> pass by ref 2015-07-16 20:22:05 +02:00
Bram Matthys b3a7774dc1 didn't audit the code, but this seems more proper (heero: check? :p) 2015-07-16 20:18:31 +02:00
Bram Matthys d4d4f5180a useless check 2015-07-16 20:18:25 +02:00
Bram Matthys f8241cede6 not if (fd) but if (fd >= 0).. 2015-07-16 18:14:22 +02:00
Bram Matthys 252538272e Reduce nick@server complexity in m_message and (similarly) make hash_find_nickserver() easier and more tolerant, also accepts just 'nick' in addition to 'nick@server' 2015-07-16 18:09:26 +02:00
Bram Matthys c15d1f90ae Fix crash in do_read_motd(). Strange nobody reported this yet (then again.. this is beta..). 2015-07-16 17:36:54 +02:00
Bram Matthys 083ca38554 :D 2015-07-16 17:36:48 +02:00
Bram Matthys bad3cdbdeb Use MyMallocEx and not malloc/MyMalloc + bzero. 2015-07-16 17:29:24 +02:00
Bram Matthys c06dc9a142 Get rid of #ifdef CLEAN_COMPILE, along with some other shit 2015-07-16 17:22:51 +02:00
Bram Matthys cb18db026f blah 2015-07-16 17:15:09 +02:00
Bram Matthys dd3993008c small unlikely memleaks. and cptr->port being set to a random value (caused few weeks ago).. but we don't ever read it so not terribly important. 2015-07-16 17:13:57 +02:00
Bram Matthys 6ee1773fbe Not sure if this will ever happen as there's a lot of code called beforehand, but ah well.. (memleak). 2015-07-16 16:32:43 +02:00
Bram Matthys b33a461e9a re-indent 2015-07-16 16:28:14 +02:00
Bram Matthys f715ee37cc uninitialized read (won't actually happen as other routines check before this) 2015-07-16 16:27:53 +02:00
Bram Matthys 34d9f0946a Don't prompt to generate SSL certificate if running ./Config -quick (which is meant as a no-prompt mode) 2015-07-16 16:02:14 +02:00
Bram Matthys 3ccb297ba8 in various text: ./unreal -> ./unrealircd 2015-07-16 11:40:54 +02:00
Bram Matthys c6488bb50a Why would anyone want to know this.. got enough on-connect msgs already. 2015-07-16 10:57:55 +02:00
Bram Matthys 9bd211d46e Fix some ununitialized stuff 2015-07-16 10:56:46 +02:00
Bram Matthys 6eddc2685f Merge branch 'unreal34' of github.com:unrealircd/unrealircd into unreal34 2015-07-16 09:45:11 +02:00
Bram Matthys 00e028e6f7 alpha -> beta 2015-07-16 09:44:58 +02:00
Bram Matthys 727fdfbfbc Merge pull request #31 from Alef-Burzmali/unreal34+french-conf
Translate the 3.4.x example configuration file in French
2015-07-16 09:40:45 +02:00
Thomas Fargeix 591c322d0f Translate the example conf in French 2015-07-15 22:52:18 +02:00
Bram Matthys dcb0c63bd8 Spamfilter 'u' was broken by nenolod. Literally. snprintf(buf, sizeof(buf), .. where 'buf' is a 'char *'. Fantastic. 2015-07-15 18:34:25 +02:00
Bram Matthys f22cef97d4 Why do we have those unnecessary (SSL *) casts everywhere? Poof. Gone. 2015-07-15 15:54:36 +02:00
Bram Matthys dcb4e382a3 Apparently on newer OpenSSL versions (unreleased) you can't access the read buffer. So use this method instead. Ohh.. we are so helpful to our users.. 2015-07-15 15:48:00 +02:00
Bram Matthys 168ff802c4 Show a meaningful error when connecting to an SSL-only port with STARTTLS (iotw: if you forgot ssl in link::outgoing::options). 2015-07-15 15:09:01 +02:00
Bram Matthys f847d2c9e5 hmm. inconsistency. 2015-07-15 14:55:35 +02:00
Bram Matthys f265e9f970 re-indent without chgs 2015-07-15 14:52:22 +02:00
Bram Matthys 5778e53515 Print a helpful error when trying to link using an SSL-only port and the port isn't actually SSL-only (on the other end). 2015-07-15 14:41:40 +02:00
Bram Matthys 50d1b194df Linking: for outgoing connects, only support SSL/TLS by default (either 'directly' on an ssl port or via STARTTLS 'upgrading'). Set link::outgoing::options::insecure to disable. 2015-07-15 12:42:47 +02:00
Bram Matthys 1ba5f95ecb For ougoing server links, attempt to upgrade the connection via STARTTLS if not using SSL/TLS already. 2015-07-15 12:09:11 +02:00
Bram Matthys ceb04cc3eb CommandAdd(): require flags to be non-zero and fix a minor memleak on-boot 2015-07-15 10:20:07 +02:00
Travis McArthur 8ef62b9f34 Merge pull request #30 from SaberUK/unreal34+notice-auth
Use "NOTICE *" before registration instead of "NOTICE AUTH".
2015-07-14 12:32:51 -07:00
Bram Matthys ef341b1f6d Link to servers faster after boot. Check links for re-linking more often. Allow connfreq of 5 seconds. Set default to 15. Get rid of HANGONGOODLINK/HANGONRETRYDELAY stuff. 2015-07-14 15:23:28 +02:00
Bram Matthys 02645ac4d6 Make sure people use link::outgoing::options::autoconnect, fix code to use it. 2015-07-14 15:07:18 +02:00
Bram Matthys 1978077c79 Use SENDSNO sender in server notices and not me.name, to avoid confusion. 2015-07-14 14:46:58 +02:00
Peter Powell 53bb3c0fb3 Use "NOTICE *" before registration instead of "NOTICE AUTH".
AUTH is a valid nickname so sending notices to it is probably not
a good idea. Use * as the target instead as done with numerics
when the nick is not available.

This mimics the behaviour in Charybdis, IRCD-Hybrid, InspIRCd 2.2,
Plexus 4, etc.
2015-07-14 13:20:32 +01:00
Bram Matthys e9cc914449 Cleanup 2015-07-14 12:54:26 +02:00
Bram Matthys 2e7ad2f9f7 If you write things this way then it's easy to miss a parv[0] fetch.. 2015-07-14 12:48:35 +02:00
Bram Matthys d9756b8254 strange. 2015-07-14 12:40:29 +02:00
Bram Matthys 79c71ea490 'make install' did not install all 3rd party modules. 2015-07-14 12:37:30 +02:00
Bram Matthys 2662c6d1b1 upgrade-conf: for loadmodule, strip unnecessary modules/ prefix 2015-07-14 12:30:12 +02:00
Bram Matthys 3b50d32ec7 fix build-3rd-party-modules script 2015-07-14 12:27:20 +02:00
Bram Matthys 0028f6ad64 Change version to 3.4-beta1. 2015-07-13 20:17:18 +02:00
Bram Matthys 24cf11575d make Windows OK again (part 1?) 2015-07-13 19:57:09 +02:00
Bram Matthys f1a95ffd0b Remove IPList - unused 2015-07-13 14:35:36 +02:00
Bram Matthys cdc6042fa8 Remove example.xx.conf until they are re-translated to the 3.4.x format & example conf rewrites of past month(s). 2015-07-13 13:18:05 +02:00
Bram Matthys 3a8a0450c8 update example conf 2015-07-13 12:28:47 +02:00
Bram Matthys 9bcaac6ac6 oper modes were not broadcasted (bug caused <1wk ago I think), SETHOST may be sent over the wire before the +o so change permission check (caused 1-2d ago). 2015-07-13 10:21:18 +02:00
Bram Matthys fbfb310654 3.4.x code was missing a "Lost connection to ...." server message on disconnect (should be broadcasted to ircops) 2015-07-12 22:10:19 +02:00
Bram Matthys 920e260e89 crash on invalid fd close if in DEBUGMODE 2015-07-12 22:06:57 +02:00
Bram Matthys ec2a04c7a1 Fix OOB read ('i') 2015-07-12 21:03:40 +02:00
Bram Matthys 1eaa389140 Hmm. Missing IsServer() in ValidatePermissionsForPath() :D 2015-07-12 20:58:25 +02:00
Bram Matthys 46f6580171 try not to do too much at the same time 2015-07-12 20:20:15 +02:00
Bram Matthys afb4c7bebe Rip out remainder of HOOKTYPE_GUEST. Whoops.. were not sending "nick in use" errors (bug caused a few hours ago) 2015-07-12 20:02:00 +02:00
Bram Matthys 020bf7db2f this is probably a better idea. 2015-07-12 20:00:57 +02:00
Bram Matthys 9cafe21d8e remove wonderful nenologic 2015-07-12 19:34:14 +02:00
Bram Matthys fd0821bdc3 this is a better place 2015-07-12 18:27:26 +02:00
Bram Matthys 68ba94c136 Make './unreal backtrace' work again. Hmmm. 2015-07-12 18:07:10 +02:00
Bram Matthys 7e78f04058 add src/api-clicap.c and hide 'sasl' when needed (as before) via the clicap->visible callback function 2015-07-12 17:17:19 +02:00
Bram Matthys 372ce82335 Make client capabilities a modular sub-system, as it should have been since the beginning. 2015-07-12 17:10:48 +02:00
Bram Matthys e0a12b54af loosen some magic in isupport api 2015-07-12 16:30:08 +02:00
Bram Matthys d753714abe use enum for module object types 2015-07-12 16:08:28 +02:00
Bram Matthys ec61a75cf6 cleanup m_module 2015-07-12 16:02:06 +02:00
Bram Matthys 95b13123a3 and from sample conf 2015-07-12 15:54:01 +02:00
Bram Matthys 4e39c08a4d Nobody uses this.. 2015-07-12 15:53:12 +02:00
Bram Matthys c7974591b5 remove some comments regarding add_command 2015-07-12 15:48:50 +02:00
Bram Matthys 6221333bfe Use CommandAdd() everywhere, even in core. 2015-07-12 15:47:51 +02:00
Bram Matthys a0aa1032a5 get rid of m_dummy & m_chmodetst, we have wiki for such docs (wasn't compiled nor loaded anyway) 2015-07-12 15:36:09 +02:00
Bram Matthys d33f1ca8f6 Remove /ADDLINE: it's (too) easy to create a broken configuration file this way and then have an un-rehashable and un-bootable IRCd without having shell access. Use SSH or SFTP/SCP instead. Or even better: remote includes, of course :) 2015-07-12 15:34:08 +02:00
Bram Matthys bbb121383b Add who-may-execute-this in many CommandAdd()'s. Trying to remove all "unspecified" (0) ones... hopefully I made no mistake in this ;)
Update remote-permission check in ValidatePermissionsForPath to check at least IsOper.. may save us from some serious mistakes ;)
2015-07-12 15:32:11 +02:00
Bram Matthys da935b7e41 Remove /UNZLINE and /UNKLINE: all these commands did was tell you to use /ZLINE -xx and /KLINE -xx instead. 2015-07-11 11:21:42 +02:00
Bram Matthys 6c0ebb5bd3 Protection against linking race conditions is back again (IOTW: allow very rapid re-linking), but only if your network is fully 3.4.x (actually: current git unreal34 or later)
Re-implemented PROTOCTL SERVERS= which nenolod ripped out (#4355).
Add 2nd argument to PROTOCTL EAUTH=servername,unrealprotocol
Change UnrealProtocol from 2350 to 2351
2015-07-10 21:57:13 +02:00
Bram Matthys 5e23fadefb 26*26 != 36*36 2015-07-10 15:07:17 +02:00
Bram Matthys 2d11c132f8 Replace UID generator: random + counter. This because you can otherwise enumerate users (reported by Adam). 2015-07-10 14:58:53 +02:00
Bram Matthys 145e2880b5 Partially rewrite m_kill. Hope it's all okay. Use UID's too
(why wasn't it using it UID's already? this is like THE first candidate :D)
2015-07-10 13:49:25 +02:00
Bram Matthys e52545c107 update release notes a bit 2015-07-10 13:00:39 +02:00
Bram Matthys 6747653e90 update release notes on parv[0] (under MODULE CODERS) 2015-07-10 12:36:08 +02:00
Bram Matthys 0c516abc76 You can now no longer use parv[0]. Doing so will lead to a crash, this is intentional. Use sptr->name instead.
No UnrealIRCd code reads from parv[0] anymore.
Perhaps later, after a few stable versions, we'll turn this into something more useful. Or not. But not soon.
2015-07-10 12:29:07 +02:00
Bram Matthys e8dfb284a1 Replace parv[0] with sptr->name. Don't use parv[0] anymore.
I went through all 500+ of them by hand as to avoid introducing bugs... we'll see ;)
2015-07-10 12:17:05 +02:00
Bram Matthys 0b13883c69 Make swhois use AddListItemPrio. SWHOIS priorities should work now (untested) 2015-07-10 11:11:37 +02:00
Bram Matthys 71d3e8dbfa New function AddListItemPrio, since we now use priorities in two places already (swhois, hooks). 2015-07-10 11:10:10 +02:00
Bram Matthys 9ca6d10785 fix one more tiny (xx bytes) memory leak on /REHASH 2015-07-10 10:51:27 +02:00
Bram Matthys d542db2aaa Fix invalid /GLOBOPS format string call (introduced a few days ago) 2015-07-10 10:46:09 +02:00
Bram Matthys a9fc2243aa support multiple vhost::swhois items for consistency 2015-07-10 10:44:40 +02:00
Bram Matthys 3cfee0f384 fix a number of /REHASH memleaks 2015-07-10 10:40:07 +02:00
Bram Matthys 405ede44c2 ircfree -> safefree. ircstrdrup -> safestrdrup 2015-07-10 10:22:02 +02:00
Bram Matthys c2f4e0fb2a Support multiple oper::swhois items. 2015-07-10 10:15:36 +02:00
Travis McArthur de1c6330eb Add validation to operclass parsing 2015-07-09 15:44:36 -07:00
Travis McArthur 9241701b0d Update gitignore for 3rd party module makefile 2015-07-09 13:40:05 -07:00
Travis McArthur f9a7cdaeab Update security on register-only messages umode 2015-07-09 13:39:43 -07:00
Travis McArthur 0f84e1c417 Update m_userip security 2015-07-09 13:39:34 -07:00
Travis McArthur 900c51ed13 Add paranoid null check 2015-07-09 13:39:15 -07:00
Travis McArthur fc38b1336a Update security in m_stats 2015-07-09 13:39:08 -07:00
Travis McArthur 7ea4dc1486 Update security in m_setident 2015-07-09 13:39:00 -07:00
Travis McArthur 7caa82e868 Update security in m_nick 2015-07-09 13:38:53 -07:00
Travis McArthur 9e46255922 Update security in m_message 2015-07-09 13:38:44 -07:00
Travis McArthur 50a2eacd97 Update security in m_invite 2015-07-09 13:38:35 -07:00
Travis McArthur 14c4a19d18 Update security in squit 2015-07-09 13:38:25 -07:00
Travis McArthur 9e8f61b2a5 Update security in m_connect 2015-07-09 13:38:17 -07:00
Travis McArthur 925c3585f1 Update permissions in floodprot 2015-07-09 13:18:21 -07:00
Travis McArthur 83720d07d2 Update security in m_mode
Needs a lot more testing before we ship - I'll work on that
2015-07-09 13:12:22 -07:00
Travis McArthur 9cba20fd60 Remove locop/globop distinction 2015-07-09 12:51:15 -07:00
Travis McArthur 97b2bbc819 Add ACL checks to chgname 2015-07-09 12:51:05 -07:00
Travis McArthur 2450909c26 Change name of OperEval... 2015-07-09 12:31:45 -07:00
Bram Matthys a4cd12d932 Fix remote MOTD & RULES (#2103) 2015-07-09 20:04:04 +02:00
Bram Matthys 787cd7c221 Use remove_oper_privileges() 2015-07-09 19:08:36 +02:00
Bram Matthys f3199ec5e5 1) unset the swhois you got via a vhost upon MODE -t. 2) allow MODE yourself -t
which will unset your vhost & give you a cloaked host (#2613, suggested by Stealth)
2015-07-09 18:43:21 +02:00
Bram Matthys 2f8cb55e47 Add extended SWHOIS support. Allows multiple swhoises and tracking of who/what set the swhois.
Added swhois_add / swhois_delete functions which also take care of broadcasting
New remove_oper_privileges() function, will move the rest to use this (svsnoop svsmode etc)
Not finished yet...
2015-07-09 16:26:52 +02:00
Bram Matthys d59b7b4129 add sendto_umode_global() to h.h 2015-07-09 14:52:12 +02:00
Bram Matthys 3cb780bdb3 remove umodes g/h/v from help.conf as they are removed/moved 2015-07-09 14:41:19 +02:00
Bram Matthys f03d865e77 Remove /CHATOPS. We already have /GLOBOPS which does the same.
Update help.conf a bit, in a lazy way.
2015-07-09 14:22:33 +02:00
Bram Matthys abd68c6c9e only send RPL_HOSTHIDDEN for local clients (:D) 2015-07-09 14:16:43 +02:00
Bram Matthys 15977e011d remove umode 'g' (failops), we have snomasks and oper umode for this. 2015-07-09 14:09:02 +02:00
Bram Matthys 00dd10c744 transform more failops call 2015-07-09 14:05:06 +02:00
Bram Matthys 4c3fe8cfc8 make /GLOBOPS and /LOCOPS use sendto_umode(UMODE_OPER.. / sendto_umode_global(UMODE_OPER.. 2015-07-09 14:04:32 +02:00
Bram Matthys 19b06df164 remove sendto_failops, sendto_failops_whoare_opers, sendto_locfailops 2015-07-09 14:04:00 +02:00
Bram Matthys be863a2180 Add sendto_umode_global() - sends to all users with that umode on all servers 2015-07-09 13:48:53 +02:00
Bram Matthys af206b001b Remove strange and broken snomask handling from SENDUMODE. We have SENDSNO for that.
Make notice appear from original server/user, rather than me.name.
2015-07-09 13:48:05 +02:00
Bram Matthys 60356bd97c typo (l -> L) 2015-07-08 18:06:30 +02:00
Bram Matthys fe14e21175 Update all MOD_TEST/MOD_INIT/MOD_LOAD/MOD_UNLOAD calls to new format 2015-07-08 18:02:19 +02:00
Bram Matthys 7b02afb3e5 Make MOD_LOAD and MOD_UNLOAD have a useful argument: pass modinfo, just like in MOD_TEST and MOD_INIT.
Change MOD_TEST/MOD_LOAD/etc macro's (this breaks all modules). Now just use this:
MOD_INIT(modulename)
{
// you can access modinfo here.. or other stuff...
}

(Similar to the CMD_FUNC() macro)

Rather than:
DLLFUNC int MOD_INIT(name)(ModuleInfo *modinfo)
{
//...
}
2015-07-08 17:57:02 +02:00
Bram Matthys 0cad63a232 For some reason this file was in CRLF format 2015-07-08 17:20:23 +02:00
Bram Matthys 83268d31bb Convert all HookAddEx to HookAdd with new priority syntax (and same for HookAddVoidEx.. etc...) 2015-07-08 17:19:47 +02:00
Bram Matthys b37bab0521 Add priority argument to HookAdd... and rename all the ...Ex stuff to just ... 2015-07-08 17:10:37 +02:00
Bram Matthys 95e37a0bd3 Allow not to import any build settings (and 3rd party modules). 2015-07-08 16:11:37 +02:00
Travis McArthur 2ca5480dc0 Reove IsOper uses from m_invite.c 2015-07-07 12:48:26 -07:00
Travis McArthur e48b5207ef Merge branch 'patch-1' of https://github.com/grawity/unrealircd into m2 2015-07-06 18:22:17 -07:00
Travis McArthur 752a34011d Remove IsAnOper 2015-07-06 18:09:37 -07:00
Bram Matthys b52b7afabe Remove local irc operator (locop) 2015-07-06 20:14:02 +02:00
Travis McArthur 52d923b724 Fix typo 2015-07-05 12:17:46 -07:00
Travis McArthur 760fb261fb Update chatops perms 2015-07-05 12:04:40 -07:00
Travis McArthur ad4ab6c5f5 Update close permissions 2015-07-05 12:04:40 -07:00
Travis McArthur a14869cf21 Update lag permissions 2015-07-05 12:04:40 -07:00
Travis McArthur ab7912caf4 Update opermotd permissions 2015-07-05 12:04:40 -07:00
Travis McArthur 3059adf668 Refactor regonlyspeak permissions 2015-07-05 12:04:40 -07:00
Travis McArthur b6d0e23428 Refactor m_addline permissions 2015-07-05 12:04:40 -07:00
Travis McArthur b6ad7a8c0c Refactor m_dccdeny permissions 2015-07-05 12:04:40 -07:00
Travis McArthur 501469cc10 Refactor m_undccdeny permissions 2015-07-05 12:04:40 -07:00
Travis McArthur b971d8b81b Refactor m_rping permissions 2015-07-05 12:04:40 -07:00
Travis McArthur 5250913905 Refactor permissions m_away 2015-07-05 12:04:40 -07:00
Travis McArthur ab571eb7de Refactor m_lusers permissions 2015-07-05 12:04:40 -07:00
Travis McArthur 5a4f971f95 Refactor m_quit permissions 2015-07-05 12:04:39 -07:00
Travis McArthur 3387a7bdac Refactor setname permissions 2015-07-05 12:04:39 -07:00
Travis McArthur b4e353d6e2 Refactor m_stats permission 2015-07-05 12:04:39 -07:00
Travis McArthur e2674fd33a Refactor permissions on chghost 2015-07-05 12:04:39 -07:00
Travis McArthur 026befb6cd Refactor permissions in m_sethost 2015-07-05 12:04:39 -07:00
Travis McArthur 3a87459f91 Refactor permissions in secureonly 2015-07-05 12:04:39 -07:00
Travis McArthur a6075cfc47 Refactor permissions in chgident 2015-07-05 12:04:39 -07:00
Travis McArthur e342acb0a1 Refactor m_part permissions 2015-07-05 12:04:39 -07:00
Travis McArthur 5616f3acf9 Refactor setident permissions 2015-07-05 12:04:39 -07:00
Travis McArthur ee657857fe Refactor permissions in m_join 2015-07-05 12:04:39 -07:00
Travis McArthur 108d3eab9d Refactor permissions in m_topic 2015-07-05 12:04:39 -07:00
Travis McArthur 09386178b2 Fix jointhrottle permissions 2015-07-05 12:04:39 -07:00
Travis McArthur 5f6a09da00 Change permissions checks in message 2015-07-05 12:04:39 -07:00
Bram Matthys 60dd43c8f2 Prompt to import build settings and 3rd party modules from a previous UnrealIRCd installation. 2015-07-05 20:43:06 +02:00
Bram Matthys 1b2849d818 remove 'make custommodule' from other makefiles 2015-07-05 20:07:10 +02:00
Bram Matthys 133d75ebd0 Merge branch 'unreal34' of github.com:unrealircd/unrealircd into unreal34 2015-07-05 20:04:43 +02:00
Bram Matthys bd21ea902c Add (src/)modules/third directory for 3rd party modules. Automatically build any .c files in there. 2015-07-05 20:04:09 +02:00
Travis McArthur 95667ca9b8 Add short-circuit for remotes and U:lines 2015-07-05 10:57:58 -07:00
Travis McArthur c377a83657 Update ignore file for SSL & tags 2015-07-05 10:57:49 -07:00
Bram Matthys c5e176f1a8 Fix curlinstall script broken since alpha4. 2015-07-05 17:58:36 +02:00
Bram Matthys 999d530688 move ./curlinstall to extras/ 2015-07-05 17:56:28 +02:00
Bram Matthys f8448145af update release notes a bit 2015-07-05 14:10:36 +02:00
Bram Matthys f58402365c Moved jointhrottle from channel mode +j to set::anti-flood::join-flood
with a default of 3:90 (3 joins per 90 seconds). There's rarely any need
to configure this on a per-channel basis and this way it's enabled by
default for everyone (unless you decide not to load load the module)
2015-07-05 13:31:56 +02:00
Bram Matthys b04776dc3b Broadcast PROTOCTL CHANMODES= on change (eg: module loaded or unloaded) 2015-07-04 20:50:57 +02:00
Bram Matthys 45abd09ba7 Remove some hard-coded channel modes in CHANMODES=.. (duplicate M, S, etc... since alpha series) 2015-07-04 19:32:08 +02:00
Bram Matthys 422b339be1 In 2003 I added PROTOCTL CHANMODES= so other servers (and services) could
easily deal with "parameter eating" of unknown channel modes.
Now, 12 years later, finally added the code to do this.
This prevents some (serious) desynching if you have a parameter-eating
channel mode on one server and not on the other.
Obviously, you should always try to have the same featureset on all
servers, but sometimes this is not possible, like when upgrading..
2015-07-04 19:25:27 +02:00
Bram Matthys dac3c8c2e7 Default is link::hub * (unless you specify link::leaf or link::hub) 2015-07-04 19:11:06 +02:00
Bram Matthys 78c750fb7d memleak if no blacklist configured or they all failed early 2015-07-04 18:25:08 +02:00
Bram Matthys 564ef061bc remove silly bzero() call 2015-07-04 18:11:40 +02:00
Bram Matthys 06db0f250a hm. something isn't right here but.. ah well. this is safest. 2015-07-04 18:10:11 +02:00
Bram Matthys a90b7354b3 Add blacklist module for DNSBL checking. 2015-07-04 15:02:22 +02:00
Mantas Mikulėnas 9485e61102 m_addline: fix inverted ACL check 2015-07-03 23:24:03 +03:00
Bram Matthys 1dd5ebac07 extban ~a (account) and ~S (certfp) are supported in MODE #chan +I (Invite exceptions).
(And they are not "modifiers")
2015-07-03 21:25:19 +02:00
Bram Matthys ffa6e099d7 Updates to previous 2015-07-03 21:24:01 +02:00
Bram Matthys 36b9a84fb3 Merge pull request #28 from dboyz/certfp-extban
[#4358]: Introduce certfp extban
2015-07-03 20:57:45 +02:00
Daniel Tan 8473cc1b1c [#4358]: Introduce certfp extban 2015-07-04 00:39:52 +08:00
Daniel Tan 182879af95 Merge pull request #6 from unrealircd/unreal34
Merge from unreal34
2015-07-04 00:26:52 +08:00
Travis McArthur 847faeab26 Remove more IsAnOp/IsOp 2015-06-30 09:38:01 -07:00
Travis McArthur 54691d76c5 Move to IsOper 2015-06-30 00:46:59 -07:00
Travis McArthur a83be9eb82 Move places we should use IsOper off IsAnOper
These places are probably okay to use IsOper at since we really do want to know if someone is an oper, not grant permission per say.
2015-06-30 00:46:59 -07:00
Travis McArthur b884ed3e8d Remove more IsOp/IsAnOp 2015-06-29 01:55:22 -07:00
Bram Matthys d20c73fda5 Windows: "Unable to write tunefile". Create data/ directory ;) 2015-06-28 19:57:32 +02:00
Bram Matthys 5cdf8c7e8c Merge branch 'unreal34' of github.com:unrealircd/unrealircd into unreal34 2015-06-28 10:42:10 +02:00
Bram Matthys 1a1ef4d0d3 Fix MODVAR stuff on Windows. Fixes a crash. 2015-06-28 10:41:49 +02:00
Bram Matthys f0be219f98 forgot to mark 2 modules as official (so unreal runs always 'tainted') 2015-06-28 10:41:24 +02:00
Travis McArthur 7960503398 Fix config not saving paths (reported by Adam) 2015-06-27 17:29:53 -07:00
Travis McArthur e280d2a49f Fix bug in case where use was +o, now is not. 2015-06-27 17:11:19 -07:00
Travis McArthur fd5a79a16e Fix typos 2015-06-27 14:16:25 -07:00
Travis McArthur 58b61ab336 Remove old oper macros not used now 2015-06-27 14:14:01 -07:00
Travis McArthur a1e7fefe94 Remove IsPrivileged 2015-06-27 14:13:26 -07:00
Travis McArthur dc2b09a334 Remove more IsAnOp/IsOp 2015-06-27 14:06:34 -07:00
Travis McArthur 5943dd8c09 Remove some IsOper/IsAnOper 2015-06-27 11:25:22 -07:00
Travis McArthur f053eb62ad Update to run as system agent
Will still manage UnrealIRCd as a pref pane probably and system service, but should have an agent present so it's easier to admin when you're _logged in_
2015-06-27 10:07:54 -07:00
Bram Matthys 7b09e1ca97 Fix example.conf and upgrade spamfilter.conf 2015-06-27 18:29:27 +02:00
Bram Matthys 9161068098 remove some old sections from release notes. 2015-06-27 17:34:13 +02:00
Bram Matthys 7a96e647eb Update windows installer: use different group name by default (so 3.4.x doesn't get installed in Unreal3.2, and easy to remove afterwards) 2015-06-27 17:22:58 +02:00
Bram Matthys 13f4a8613e add stuff on new oper system in release notes 2015-06-27 13:22:25 +02:00
Bram Matthys f0d6f3f550 bump version to 3.4-alpha4 2015-06-27 12:59:00 +02:00
Bram Matthys 2f33ae6588 Total DNS timeout is 1500 + (max) 3000 = 4500ms now (4,5 seconds). 2015-06-27 09:56:52 +02:00
Bram Matthys 6facc2173e 1) If there is no client data, still run main loop a bit more often than once per 1-2secs.
2) Call DNS routines more often, not just once per second.
2) Slightly lower the DNS timeout, max 2500 + 5000 = 7500ms now. Previously was 3000 + 6000 = 9000ms.
2015-06-27 09:50:52 +02:00
Bram Matthys e52971946e delay processing of client data until DNS is resolved 2015-06-27 09:13:02 +02:00
Bram Matthys 7c99a8a5f8 fix DNS (the bug I created a week ago, anyway) 2015-06-27 09:07:33 +02:00
Travis McArthur 51326523cf Remove unnecessary UI elements 2015-06-26 17:30:38 -07:00
Travis McArthur 04ea335f12 Update code sign identity 2015-06-26 17:30:25 -07:00
Travis McArthur 87423247c2 Update to ignore build artifacts 2015-06-26 14:05:28 -07:00
Travis McArthur 2216e4f60a Update git ignore to ignore configure steps 2015-06-26 13:58:51 -07:00
Travis McArthur b0e951e472 Add Mac OSX Project 2015-06-26 13:50:34 -07:00
Travis McArthur 39607fbcde Update git ignore 2015-06-26 13:50:22 -07:00
Bram Matthys dc3eeacbd7 setting of time via TSCTL OFFSET uses the server:tsctl:set privilege 2015-06-26 22:23:35 +02:00
Travis McArthur 81cba1b12d Remove remaining OPCan*
Updates to default operclasses as well
2015-06-26 11:08:00 -07:00
Bram Matthys ae1870020f windows: fix (default) location of ssl keys. ah.. finally.. Windows boots now ;) 2015-06-26 18:17:06 +02:00
Bram Matthys 629a4b957a win32 installer: create conf\ssl or certificate generation will fail 2015-06-26 18:14:44 +02:00
Bram Matthys cebc8f240d win32 batch files & installer: make aware of new ssl certificate locations (conf\ssl rather than root) 2015-06-26 18:09:38 +02:00
Bram Matthys d28b4286cf win32 inst: fix examples\ destination 2015-06-26 18:06:06 +02:00
Bram Matthys 31f430459b temporarily(?) change the note on vstudio redist pkg. was also in alpha3. 2015-06-26 18:01:53 +02:00
Bram Matthys 93833af9a0 upgrade earlier 3.4.x oper blocks as well (we are too nice..) 2015-06-26 18:00:22 +02:00
Bram Matthys 9047ebd4fa typo & create 'logs' directory on windows 2015-06-26 17:56:16 +02:00
Bram Matthys 9def6847a8 fix win32 build (fwd declaration mismatch with actual function) 2015-06-26 17:50:41 +02:00
Bram Matthys 5b3237df8d update win32 makefile for new modules past 1-2wks 2015-06-26 17:49:04 +02:00
Bram Matthys 798da6c61a more conf file magic (otherwise windows doesn't load). show all loadmodule errors instead of stopping at the first one. 2015-06-26 17:45:11 +02:00
Bram Matthys 18524a4446 .. 2015-06-26 17:27:20 +02:00
Bram Matthys 908bdafb24 hm. silly win32 msg screen. 2015-06-26 17:25:01 +02:00
Bram Matthys 9de3516c8c give some hints on the modules.conf -> modules.defaults.conf transition. 2015-06-26 17:22:59 +02:00
Bram Matthys 39312a913d give windows users some more hints about the config file location 2015-06-26 17:15:02 +02:00
Bram Matthys f5b902894a (Windows installer) update innosetup file to reflect new file locations 2015-06-26 17:10:26 +02:00
Bram Matthys 3f29850851 C99 2015-06-26 17:10:12 +02:00
Bram Matthys 8df116f2f1 more win32 fixes 2015-06-26 16:56:59 +02:00
Bram Matthys 84a61c6d8e set PIDFILE on win32 2015-06-26 16:53:53 +02:00
Bram Matthys e5ec2a6487 Rename macro DATADIR -> PERMDATADIR. Windows SDK's.. just freaking amazing.... 2015-06-26 16:50:36 +02:00
Bram Matthys e8d75db5ed upgrade-conf: tell user it would be wise if they read the freshly converted configuration files :) 2015-06-26 16:41:03 +02:00
Bram Matthys eabbdac588 upgrade-conf: ensure operclass.default.conf is included 2015-06-26 16:30:48 +02:00
Bram Matthys aa7553abe2 new extban ~O:operclassname. Enables you to make a netadmin only channel like +iI ~O:netadmin*
&remove old adminonly (+A) channel mode a bit more
2015-06-26 16:08:50 +02:00
Bram Matthys ed4ed2a03d add some more comments in modules.default.conf in extbans section. 2015-06-26 16:08:26 +02:00
Bram Matthys d01ba1b3b6 remove adminonly (+A) channel mode. as there is no admin anymore. 2015-06-26 15:51:02 +02:00
Bram Matthys 15dbacb1b9 show operclass in /WHOIS (if local) 2015-06-26 15:48:47 +02:00
Bram Matthys 92bf3cd33d upgrade-conf: fix bug with oper::flags if using the old format (3.1.x... hmmmmm...) 2015-06-26 15:29:54 +02:00
Bram Matthys 14e6f115ea upgrade-conf: use xxx-with-override operclass if can_override is set (and globop or higher) 2015-06-26 15:25:41 +02:00
Bram Matthys 317f80cdea upgrade-conf: upgrade oper block to new syntax (and a little more to come), remove set::hosts, .. 2015-06-26 15:22:05 +02:00
Bram Matthys e52ab7e2c6 do make clean the official way ;) 2015-06-26 14:45:41 +02:00
Bram Matthys 329968a425 operclass: add map:real-map and map-ulines (show real map even if flat map, and show u-lined servers even if hide ulines is set)
grant map privilege to globop and higher in operclass.default.conf
2015-06-26 11:02:47 +02:00
Bram Matthys 734fd8ad5f grant override:see to globops and above in operclass.default.conf. 2015-06-26 10:58:18 +02:00
Bram Matthys a2a31951dc move 'see' type of overrides (things opers can see from other users because they are oper) to override:see.
Like override:see:names:invisible, override:see:whois, override:see:who:onchannel, etc.
2015-06-26 10:56:57 +02:00
Bram Matthys 2769e4860a default operclasses: allow globop and higher to override whois and names by default (to see users in channels) 2015-06-26 10:49:56 +02:00
Bram Matthys f981843672 add xxx-with-override operclasses. also to show inheritance. 2015-06-26 10:45:40 +02:00
Bram Matthys eca9a0e55e first version of doc/conf/operclass.default.conf. still testing... 2015-06-26 10:38:05 +02:00
Bram Matthys 19dd192bb6 all nested operclass acl's were not working (eg: server:rehash), hope this is the correct fix :) 2015-06-26 10:36:21 +02:00
Bram Matthys 88e52c85d6 server:motd -> server:addmotd, server:omotd -> server:addomotd. hmmmm.. I guess. 2015-06-26 10:16:10 +02:00
Bram Matthys f51d191751 trace:invisible_users -> trace:invisible-users 2015-06-26 10:08:18 +02:00
Bram Matthys 9de109b373 operclass privs: move kline/gline/(g)zline/shun to tkl:.. group 2015-06-26 09:43:19 +02:00
Bram Matthys bf56672249 remove set::hosts. use oper::vhost instead. 2015-06-26 09:22:33 +02:00
Bram Matthys 4e4efd2d38 make oper::vhost actually work 2015-06-26 09:18:18 +02:00
Bram Matthys e3f70594f2 Fix compile problem / upgrade op_can_override() 2015-06-26 09:17:24 +02:00
Travis McArthur 10bfb21321 Remove most of OPCan functionality - more later 2015-06-25 21:46:55 -07:00
Bram Matthys 8fc202a6a6 'make clean' did not clean src/modules/{usermodes,chanmodes,snomasks,extbans} 2015-06-25 22:44:37 +02:00
Bram Matthys 80362e0d9c Fix compile warnings (and possibly a crash in dcc deny code introduced a week or so ago) 2015-06-25 22:38:22 +02:00
Bram Matthys 0f2af3f506 current 3.4.x git is really bleeding edge now, come back in a day or so:
* remove netadmin, services-admin, admin, co-admin.
* remove all oper flags (there are some placeholders for the next... <24hrs..)
* ADMINCHAT and NACHAT are gone, since admin & netadmin no longer exist
* SVSO used oper flags, but this no longer exists, SVSO removed. maybe later we can add some sort of replacement.. maybe..
* re-style the m_oper code a bit
2015-06-25 22:26:53 +02:00
Travis McArthur 1e525cbf93 Update Config to handle directory creation 2015-06-24 17:31:38 -07:00
Travis McArthur 10d6fe2651 Remove old announcements based on "admin" perms 2015-06-24 19:25:45 -04:00
Travis McArthur 527a00dafa More ACL work, rip out *admin support (mostly...)
Not totally tested - I validated it built, I validated ACL validation worked, I validated that most of the ripped out functionality seemed to be absent, eg: we still set the modes (backwards compat w/ services?) but we don't actually check them anywhere, or add them to your whois.
2015-06-24 19:17:40 -04:00
Bram Matthys dfbc913013 The default set of modules (full functionality) is now called modules.default.conf
Added operclass.default.conf which I will later expand after I see more of Heero's work ;)
2015-06-24 18:54:05 +02:00
Bram Matthys bcc95f67d6 Give 3.2.x users some directory hints if they try to do things the 3.2.x way. 2015-06-24 17:57:12 +02:00
Bram Matthys 5d64a2ff43 Update release notes for alpha4 (unfinished) 2015-06-24 17:29:34 +02:00
Bram Matthys 5286b50c19 We already set the IP in add_connection, no need to do that in check_init again.
Fix bug where "insecure link" message was shown despite localhost.
2015-06-22 20:49:40 +02:00
Bram Matthys d7e9d00e57 Update help.conf to reflect the new modes that are available to halfops 2015-06-22 19:31:14 +02:00
Bram Matthys efc63dff81 Permit halfops to set more modes than before. The idea is halfops should be able to help out in case of a flood but not be able to change any 'policy decission' modes such as +G, +S, +c, +s.
The following modes are now permitted to halfops: +iklmntMKNCR (was: +ikmnt)
2015-06-22 19:29:32 +02:00
Bram Matthys 82d21bf2d9 Perhaps it would be wise to PING servers. Just an idea, mr nenolod. 2015-06-22 19:05:02 +02:00
Bram Matthys 2bbe696df9 example.conf: it's link::password and not link::outgoing::password. Reported by Micko_. 2015-06-22 16:59:36 +02:00
Bram Matthys 3a27176969 Fix compile problem on x86 (32 bit): undefined reference to `_BF_body_r', reported by Micko_. 2015-06-22 13:33:57 +02:00
Bram Matthys da8e60bd7e Set permissions on (built-in) UmodeAdd & SnomaskAdd correctly. 2015-06-21 21:04:35 +02:00
Bram Matthys f819004deb Make MODE SVSMODE SVSNOOP SVSO all use remove_oper_modes and remove_oper_snomasks. Much better now. 2015-06-21 20:58:51 +02:00
Bram Matthys dd3c4ac4f4 Insert an extra parameter in UmodeAdd and SnomaskAdd to indicate "unset this on de-oper". Safer and better than in XYZ places in the code. 2015-06-21 20:37:53 +02:00
Bram Matthys 329700f745 Make Snomask +s oper-only. Has always been confusing that it wasn't. 2015-06-21 20:15:26 +02:00
Bram Matthys c0f18b3e8e Replace user mode +v ("victim", receive infected DCC notices) with snomask +D (modules/snomasks/dccreject). 2015-06-21 19:48:13 +02:00
Daniel Tan 3eead2069c Merge pull request #4 from unrealircd/unreal34
Merge from unreal34 branch
2015-06-21 20:42:24 +08:00
Bram Matthys 7f5f26d0d8 Move user mode +R to usermodes/regonlymsg 2015-06-21 11:14:24 +02:00
Bram Matthys 9aa21c205f Whoops. Only hide channels if actually umode +p and not everyone :D 2015-06-21 11:01:39 +02:00
Bram Matthys 8866793bdb Move user mode +p to usermodes/privacy 2015-06-21 10:40:25 +02:00
Bram Matthys 4e748b7635 Make WHO use HOOKTYPE_SEE_CHANNEL_IN_WHOIS as well in first_visible_channel() 2015-06-21 10:37:05 +02:00
Bram Matthys c9523e962d Added HOOKTYPE_SEE_CHANNEL_IN_WHOIS. Make umode +S use it to hide channels.
Also make the '?' and '!' prefixes in channels in /WHOIS output more generic:
both mean you only get to see the channel because you are an ircop, but:
'?' means the channel is +s/+p too (so take extra care)
and '!' means the channel is public but for other reasons hidden in /WHOIS, like umode +p (later) or umode +S.
2015-06-21 10:22:16 +02:00
Bram Matthys 16367b7020 cleanup deop and can kick call code (and fix bugs) 2015-06-21 10:21:46 +02:00
Bram Matthys 8cb381cc8e Move user mode +S to usermodes/servicebot.
TODO: hide channels in /WHOIS and some more testing. Tomorrow.. ;)
2015-06-20 21:09:17 +02:00
Bram Matthys 489230cebf Move user mode +q to usermodes/nokick 2015-06-20 20:05:33 +02:00
Bram Matthys 0ed4171bcc helps if I add the showwhois.c file 2015-06-20 18:58:16 +02:00
Bram Matthys 10dd6267de Move user mode +W to usermodes/showwhois 2015-06-20 18:56:08 +02:00
Bram Matthys 69fa434a0c Removed helpop user mode (not the command) since nowadays it does nothing but add a title to whois. You can use swhois for that, like via vhost::swhois. 2015-06-20 18:42:53 +02:00
Bram Matthys 4ae1eb23f0 Move user mode +B to usermodes/bot module.
Also add HOOKTYPE_WHO_STATUS.
2015-06-20 18:30:57 +02:00
Bram Matthys 8ac3906e1f improve header in modules.full.conf 2015-06-20 15:16:04 +02:00
Bram Matthys 9213d7ca5f some more updates to modules.full.conf 2015-06-20 15:12:08 +02:00
Bram Matthys 35459eedbd modules.conf makeover: group modules a bit more 2015-06-20 14:57:29 +02:00
Bram Matthys bf02cfcc15 update with new conf locations & suggestions from dboyz 2015-06-20 14:10:23 +02:00
Bram Matthys 9e221caa85 remove mysterious keys/ directory 2015-06-20 13:54:07 +02:00
Bram Matthys ed9022b18b remove badword quit { } and simply use badword channel { } instead.
update upgrade-conf to handle the badwords changes
2015-06-20 13:51:21 +02:00
Bram Matthys d99d01e30b ship with modules.full.conf (rather than modules.conf) and add note as to not to edit this file directly.
add updconf stuff for new layout (badwords, help, etc)
2015-06-20 13:40:20 +02:00
Bram Matthys 2a0c806289 mass move doc/example*conf and doc/help*conf 2015-06-20 12:26:40 +02:00
Bram Matthys def73ee72f replace badwords.xxxx.conf with just one badwords.conf 2015-06-20 12:20:24 +02:00
Bram Matthys 7844f70775 make tmp and cache actually use TMPDIR and CACHEDIR 2015-06-20 12:13:08 +02:00
Bram Matthys b1b771c437 unrealircd script:
* detect "ircd not running" situations better
* ./unrealircd stop now kills the ircd in a more friendly matter.
* if you run './unrealircd restart' it will now also start the ircd even if it was not presently running.
2015-06-20 11:27:16 +02:00
Bram Matthys 12dfccf5d1 ircd.pid -> unrealircd.pid 2015-06-20 11:08:13 +02:00
Bram Matthys 0a0a62a9cc If we failed to listen on any IRC port then fatal error.
Apparently neno.. ripped out this code so you could like run './unrealircd
start' 5 times and would then have 5 ircds running, of which 4 were not doing
particularly useful things.
2015-06-20 11:02:18 +02:00
Bram Matthys e76d2fc3c5 ircd.tune should go in data/. debug.log in logs/. Update ./unrealircd failed to start message 2015-06-20 10:49:14 +02:00
Bram Matthys c17e7ef812 actually remember the new settings in config.settings. 2015-06-19 21:17:55 +02:00
Bram Matthys 71e5dba0b9 release notes filename 2015-06-19 21:12:30 +02:00
Bram Matthys 833f8c6a25 update link to docs, use *.unrealircd.org 2015-06-19 21:10:13 +02:00
Bram Matthys 2e9f6c9a6e remove unreal32docs*.html. This is in the wiki now. update translations.txt 2015-06-19 21:08:21 +02:00
Bram Matthys 31066ff480 detect ./Config -quick with old UnrealIRCd settings (incompatible) 2015-06-19 21:01:59 +02:00
Bram Matthys 8a7dda0f38 move ircdcron to extras/ in source tree. remove some old Makefile stuff. 2015-06-19 20:32:36 +02:00
Bram Matthys b7936be96e Move release notes to doc/ 2015-06-19 20:28:08 +02:00
Bram Matthys 9e7e94f7f2 delete/move more files 2015-06-19 20:26:50 +02:00
Bram Matthys cb0fadcba4 unused file 2015-06-19 20:26:04 +02:00
Bram Matthys 39bbab746f delete some files from the root. ./Config now better detects existing ssl certificates (=not prompt you to generate one) 2015-06-19 20:23:07 +02:00
Bram Matthys 3729d9a05a move some file(s) 2015-06-19 14:08:01 +02:00
Bram Matthys 122bb0ed84 old stuff 2015-06-19 14:06:50 +02:00
Bram Matthys 5e94fc9c72 Move to new directory structure, require 'make install'. (Not complete. Work in progress!) 2015-06-19 13:59:08 +02:00
Bram Matthys 9648589d49 fix small memleak on /REHASH 2015-06-18 18:43:27 +02:00
Bram Matthys 1b9915ffa4 Fix link::outgoing::options::autoconnect. 2015-06-18 17:39:06 +02:00
Bram Matthys 7258aa818e Allow '/VHOST loginname' without password (for SSL cert authentication) 2015-06-17 18:57:32 +02:00
Bram Matthys 2ca1784a7c Allow '/OPER username' without password (for SSL cert authentication) 2015-06-17 18:56:03 +02:00
Bram Matthys 249de11ec0 Fix compile issue 2015-06-17 18:55:50 +02:00
Travis McArthur 0a8e395823 Add ACL protection on nick Q:line and flood overrides 2015-06-15 23:54:16 -04:00
Travis McArthur 336892be0a Add who oper ACL 2015-06-15 23:45:06 -04:00
Travis McArthur a128246c65 Add ACL checks to m_trace 2015-06-15 23:39:16 -04:00
Travis McArthur 221bc2a92b Refactor auth ACL to remove superfluous param 2015-06-14 17:59:37 -04:00
Bram Matthys 67d80d84ba upgrade-conf code for cgiirc -> webirc. 2015-06-14 12:12:28 +02:00
Bram Matthys f80951a121 Add some more helpful configuration parse errors. 2015-06-14 11:52:01 +02:00
Bram Matthys 33b5df0a10 Merge branch 'unreal34' of github.com:unrealircd/unrealircd into unreal34 2015-06-14 11:39:57 +02:00
Bram Matthys 7e9802c54e * More helpful error messages on parse errors of the configuration file.
Rather than just stating the error, we now also tell the user what to do.
* Change many configuration parse warnings into errors as this is (much)
  more helpful to the user since the config file isn't going to load
  properly anyway. Any subsequent 'missing xyz block' errors are not
  shown on parse errors. That's good as they are often just missing
  because of the parse errors so such errors would be confusing.
* Fix upgrade-conf strange behavior on \\ and \" in spamfilters. Was
  actually caused by config parser (and not the updconf code).
* Remove .tmp file file which may be left if we crashed during upgrade-conf
2015-06-14 11:32:43 +02:00
Travis McArthur 8d8d069b6f Add ACL support to tsctl - may want to change namespace 2015-06-13 19:38:58 -04:00
Travis McArthur 3a83c0e747 Add ACL support to sdesc 2015-06-13 19:37:10 -04:00
Travis McArthur 81e7c05463 Add ACL support to wallops 2015-06-13 19:36:30 -04:00
Travis McArthur 421400f552 Add ACL to adminchat 2015-06-13 19:35:46 -04:00
Travis McArthur 9dffcf6885 Add ACL support to addomotd 2015-06-13 19:34:51 -04:00
Travis McArthur 6578b8bfaa Add ACL Protection to addmotd 2015-06-13 19:33:23 -04:00
Travis McArthur 8bb239bc88 Add ACL checks for sapart 2015-06-13 19:28:11 -04:00
Travis McArthur 2d622996ad Fix typo 2015-06-13 19:28:04 -04:00
Travis McArthur 95edb5aebb Add oper ACL permissions for samode command 2015-06-13 19:22:46 -04:00
Travis McArthur 6d67bc8e79 Add oper permissions for sajoin 2015-06-13 19:22:02 -04:00
Bram Matthys 26e0409c4e Generate larger cloak-keys by default (may not be terribly useful, but why not..). 2015-06-13 16:26:59 +02:00
Bram Matthys a0d3756a8b Removed set::pingpong-warning (warning is always off now) 2015-06-13 16:13:23 +02:00
Bram Matthys 556f40dd6c New syntax is now: webirc { mask 1.2.3.4; password "something"; };
And old style (todo: remove?) is: webirc { type old; mask 1.2.3.4; };
2015-06-12 20:28:51 +02:00
Bram Matthys 501daede0c move cgiirc block to webirc module and rename the block to webirc { } 2015-06-12 20:16:26 +02:00
Bram Matthys c256702c23 Update Donation file. 2015-06-12 10:24:15 +02:00
Bram Matthys e29ef414bd erase src\modules\extbans\*.dll on nmake .. CLEAN 2015-06-11 17:16:18 +02:00
Bram Matthys 66ae6f9f0e whoops.. almost forgot someone ;-) 2015-06-10 12:52:31 +02:00
Bram Matthys d4cd92f359 done now. i hope. 2015-06-10 12:29:20 +02:00
Bram Matthys 801910d916 print out a note to windows non-GUI users (running as a service) & old config file 2015-06-10 12:21:19 +02:00
Bram Matthys 0763355062 Merge branch 'unreal34' of github.com:unrealircd/unrealircd into unreal34 2015-06-10 12:14:57 +02:00
Bram Matthys da93d97325 rewrite the first part of release notes 2015-06-10 12:14:35 +02:00
Bram Matthys 7f675a8663 prepare for 3.4-alpha3 2015-06-10 11:52:44 +02:00
Travis McArthur d1b3cb96bc Merge pull request #27 from Zoddo/numeric-396
Send RPL_HOSTHIDDEN on host changes
2015-06-09 10:45:50 -07:00
Bram Matthys f91c87b25e bit more verbose conversion log 2015-06-08 11:05:03 +02:00
Bram Matthys dbda0eb419 Ask Windows users if they want to automatically upgrade the configuration file(s) [GUI mode] 2015-06-08 10:09:51 +02:00
Bram Matthys a3212e0f65 Make windows compile & install again. 2015-06-08 08:53:45 +02:00
Bram Matthys cb1cb2863c Fix Windows compile (C99..) 2015-06-08 08:40:58 +02:00
Bram Matthys e1b7c34c96 Fix various warnings, including one reported by Adam: possible crash in aliases (introduced 1-2wks ago) 2015-06-07 22:07:00 +02:00
Bram Matthys 0a1ce10e2f Detect possibly old 3.2.x style conf, tell user to run ./unreal upgrade-conf 2015-06-07 19:51:18 +02:00
Bram Matthys bd1747f5c4 Added './unreal upgrade-conf': this will upgrade your 3.2.x configuration files to 3.4.x syntax.
Original file is (of course) backed up as .conf.old.
Currently handled changes in this upgrade: loadmodule, me, link, throttle, spamfilter, allow, vhost, oper.
I think those are all right now. Please report any failures / strange issues on bugs.unrealircd.org
2015-06-07 19:34:21 +02:00
Bram Matthys 1dec4c5a98 remove old files: .hg* is unused as we use git,
update/.UPDATE/.CONFIG.RANT/etc is very old,
INSTALL.REMOTEINC is no longer necessary as ./curlinstall takes care of everything
2015-06-05 15:50:39 +02:00
Bram Matthys de59bf47ef Move all built-in extended bans to modules/extbans/... 2015-06-05 15:38:01 +02:00
Bram Matthys 0994c9431f I blame the name.. 2015-06-03 11:11:21 +02:00
Bram Matthys a48a7f81b6 Ensure nobody uses the oper block from the example conf as-is. 2015-06-03 11:10:21 +02:00
Bram Matthys cbc898b4c1 set::throttle has been moved. Use set::anti-flood::connect-flood <connections>:<period> instead. 2015-06-03 11:04:46 +02:00
Bram Matthys 45e46d9bdc blah 2015-06-03 10:41:39 +02:00
Bram Matthys 678268f2a3 Allow multiple masks in link::incoming::mask
Make linking code use unreal_mask functions as well. Some fixes.
2015-06-03 10:39:33 +02:00
Bram Matthys 6ef0069cd6 secure by default: set::oper-only-stats now defaults to "*" 2015-06-03 09:59:20 +02:00
Bram Matthys e49563fc7c Ugly oper::from::userhost is now oper::mask, vhost::from::userhost is now vhost::mask.
Coders: added generic mask functions: unreal_mask_match(), unreal_add_masks() and unreal_delete_masks().
These deal with one or multiple masks and do all the work for you ;)
2015-06-03 09:57:24 +02:00
Bram Matthys c107eeff85 Three allow block changes: 1) require just one of allow::hostname and allow::ip,
2) warn if using both allow::hostname and allow::ip (as in old 3.2.x confs),
3) require allow::maxperip as we don't want anyone forget setting this
2015-06-03 08:51:09 +02:00
Bram Matthys dc4ae019a3 new example conf (work in progress, actually) 2015-06-03 08:49:55 +02:00
Bram Matthys 5d8ffe2aa9 Merge branch 'unreal34' of github.com:unrealircd/unrealircd into unreal34 2015-06-02 21:36:36 +02:00
Bram Matthys 0e9bdce4b0 Initial work on 3.4-alpha3 release notes. 2015-06-02 21:35:59 +02:00
Travis McArthur c1a402c85e Add initial permission syste hooks for whois - more later 2015-06-01 22:53:42 -04:00
Travis McArthur 6cb5cbfc06 Remove unnecessary cptr in ACLs 2015-06-01 22:44:49 -04:00
Bram Matthys bb56b6acf2 config.sub & config.guess moved to autoconf/ in previous commit.
Now actually update them (from 2001-06-08 to 2015-03-08, hmm!)
2015-06-01 21:18:23 +02:00
Bram Matthys f81d22076c Add configure check and compile with pthreads 2015-06-01 21:16:44 +02:00
Bram Matthys 93c0521605 Fix silly bug in only-sending-to-3.4.x for 'posix'&'simple' spamfilters. Rename oper priv 'kline:global' to 'gline' 2015-06-01 16:42:02 +02:00
Bram Matthys b96c711aa6 Only send TRE spamfilters ('posix') to 3.2.x servers. Print out a warning if using the new 'regex' or 'simple' types if running a mixed 3.2.x/3.4.x network (or any version older than a few days, actually) 2015-06-01 10:49:04 +02:00
Bram Matthys 44dd384904 Fix /SPAMFILTER del 2015-06-01 10:24:30 +02:00
Bram Matthys 0eb9c9a36b PCRE2: enable JIT, free when no longer needed, fix & improve error message when an invalid regex is specified 2015-06-01 10:09:25 +02:00
Bram Matthys 2b5051710d Merge branch 'unreal34' of github.com:unrealircd/unrealircd into unreal34 2015-06-01 09:52:15 +02:00
Bram Matthys ecd06aa530 Now actually use PCRE2. 2015-06-01 09:51:33 +02:00
Travis McArthur 090faaccf9 Fix raw entry logic, fix descent logic 2015-06-01 03:29:24 -04:00
Travis McArthur 2cacfa1d27 Fix bug with one node paths for oper class 2015-06-01 02:34:25 -04:00
Travis McArthur a72ce0017e Add additional TKL checks 2015-06-01 02:34:13 -04:00
Travis McArthur b6329b3b44 Remove test statements, fix logic error 2015-06-01 02:24:52 -04:00
Travis McArthur d640ca84ee G:line uses operclass along-side classic system 2015-06-01 02:16:04 -04:00
Travis McArthur 1f9677a199 Fix several bugs in operclass system 2015-06-01 02:14:18 -04:00
Travis McArthur 574297054c Modify verification function calls 2015-06-01 00:38:50 -04:00
Travis McArthur 01f997f917 Allow opers to have oper-class 2015-05-31 23:41:57 -04:00
Travis McArthur adf8a61625 Add support for adding/removing validators 2015-05-31 23:19:08 -04:00
Travis McArthur 1726669f67 Fix memory leak 2015-05-31 22:31:55 -04:00
Travis McArthur 8db6d406a1 [0004326] - Fix by hyperi0n for chmode unload prob 2015-05-31 22:04:16 -04:00
Travis McArthur 3b98eac4a9 Remove unnecessary gotos 2015-05-31 21:46:32 -04:00
Travis McArthur 7ca84567fe Add oper ACL evaluation system
Still requires module and core hooks to be added, config test to be added, and to require these for perm validation - this enables core parser and querying of system though
2015-05-31 17:20:28 -04:00
Travis McArthur d4bb75cd39 Add oper class parser and structs 2015-05-31 17:20:28 -04:00
Bram Matthys 547b2d69d0 Build with PCRE2 (not used yet). Enhance SSL build error (may need more fixing). 2015-05-31 21:47:11 +02:00
Travis McArthur ffe6877fbe Clean up unnecessary stuff 2015-05-30 22:14:45 -04:00
Bram Matthys 58bd3cf60b Preparations for #4356 (experimental / on-going):
* add general matching framework (aMatch type, unreal_match_xxx functions)
* change spamfilter { } block syntax
* add support for simple wildcard matching (non-regex, just '?' and '*')
This is the initial commit so the new lib is not in yet, 'regex' is not
functional (but 'posix' and 'simple' are working), linking has not been
fully tested and no warnings are printed yet. IOTW: work in progress!
2015-05-30 21:11:11 +02:00
Bram Matthys 39c3a03d14 found some more old webtv stuff. 2015-05-27 18:05:04 +02:00
Bram Matthys a109bdb0f6 Rip out the final remains of WebTV (/MSG IRC ..) & change handling of VERSION replies for ban version { }. 2015-05-27 18:00:16 +02:00
Bram Matthys 542ef1acbb move aJFlood * stuff from core to jointhrottle module, using ModData. (as per TODO) 2015-05-27 17:33:53 +02:00
Bram Matthys 822f27f34c Remove "We will loose all flood counters!" message upon /REHASH. 2015-05-27 10:41:45 +02:00
Zoddo 9b9a35a155 Send numeric 396 on host changes 2015-05-27 00:15:29 +02:00
Bram Matthys 1f805a247b Add link to https://www.unrealircd.org/docs/Upgrading_from_3.2.x in (likely 3.2.x conf) errors. 2015-05-25 17:16:19 +02:00
Bram Matthys bcbc3fd082 Fix crash with new block (that's 1..). Reported by dg (#4353). 2015-05-25 16:59:48 +02:00
Bram Matthys efdefc4eb8 mute non-SSL warning for localhost (won't bother about other cases) 2015-05-25 13:14:44 +02:00
Bram Matthys 04727556c7 Show warning if non-SSL. Improve link error (on authentication failure). Auto-convert link::incoming::mask from like '1.2.3.4' to '*@1.2.3.4'. 2015-05-25 13:06:18 +02:00
Bram Matthys db97b23bcb move to a single password entry in link block:
"password in link block should be plaintext OR should be the SSL fingerprint of the remote link (=better)"
2015-05-25 10:54:05 +02:00
Bram Matthys a1b3b9e1b9 quickly fix ssl ;) 2015-05-25 10:27:39 +02:00
Bram Matthys 8049136379 Restructure the entire link { } block (#4032). Initial commit (missing autoconnect, ssl, etc). 2015-05-25 10:19:15 +02:00
Bram Matthys 0a42cedf77 Bounce links that have their clock too far out of sync (#4214). Currently set at 1 minute. TODO: make configurable.
This only works with newer servers as it relies on PROTOCTL TS=xyz very early in the synch.
2015-05-24 16:16:31 +02:00
Bram Matthys c2ca896dea Add new flag MOD_OPT_PERM_RELOADABLE. Can be used instead of MOD_OPT_PERM if
you want to permit re-loading but not complete un-loading of your module.
This way you get the benefits of being able to upgrade code on-the-fly but
can still disallow the user to do something potentially unwise.
2015-05-23 20:43:31 +02:00
Bram Matthys 1e8c2c0141 dead_link() can now deal with cases where it's called more than 1 time for the same (soon-to-be-dead) client 2015-05-23 20:08:34 +02:00
Bram Matthys d386650f49 set throttling to 3 per 60 seconds by default (in case you have no set::throttle block) 2015-05-23 19:08:37 +02:00
Bram Matthys 3623ebae05 Add protection against SSL Renegotiation attacks (#4046). Reported by seraph.
Also expose dead_link() to modules, IOTW: make it non-static.
2015-05-23 19:04:41 +02:00
Bram Matthys c66d213748 Module coders: HOOKTYPE_RAWPACKET_IN: third argument is now int * rather than int so you can change the length (and readbuf is of 8K size, so should be plenty). Requested by s0beit in #4250. 2015-05-23 17:47:47 +02:00
Bram Matthys c6fea92257 Port fix #4318 from 3.2.x:
For services who allow you to log in by account name but still allow you to
use a different nick: when you're logged in you are now considered
registered as far as channel mode +M (only registered users may speak and
+R (only registered users may join) are concerned. Same for user mode +R
(only allow private messages from registered users).
Tech: whenever services set SVID and it's not * and does not start with a
      number, then we consider this user to be 'logged in'.
      Whenever a user is set +r (s)he is also considered 'logged in'.
      This way it's compatible with both older and new services and doesn't
      introduce security issues with older services using servicetimestamp
      for nick tracking or other means.
This issue was reported by ShawnSmith (#4318).
2015-05-23 17:06:44 +02:00
Bram Matthys 29f4d5d540 './unreal mkpasswd' now has 3 possible syntaxes:
1) No arguments: UnrealIRCd will prompt you to enter a password and hash
   it with the bcrypt algorithm. This is the recommended method.
2) One argument: It will hash the provided password with bcrypt
3) Two arguments: It will use the hashing algorithm of your choice (1st arg)
   to hash the provided password (2nd arg)
We recommend to use syntax #1 as bcrypt is the best algorithm available and
by using the prompt the password won't end up in your bash history (or
whatever shell you use) and can't be snooped by other people with a shell
on the same machine (by looking at the process list)
2015-05-23 16:49:11 +02:00
Bram Matthys d5caf06ec5 bcrypt password hashing is now implemented (#4335). Not yet documented. 2015-05-23 16:38:48 +02:00
Bram Matthys 56911cad3c Fix windows packager: removed an #endif and removed references to Changes 2015-05-23 16:18:11 +02:00
Bram Matthys d8858458a4 fix win32 build now Changes is gone. Hmm. need to clean this up. 2015-05-23 16:16:32 +02:00
Bram Matthys 6e48ddf3f9 add autodetect for AUTHTYPE_SSL_CLIENTCERTFP 2015-05-23 15:19:44 +02:00
Bram Matthys 4a38d0c838 make auth-type optional for passwords in config (#4334).
Now you can just add password "$ZaJw56to$uSEc[etc..]"; to your configuration file without needing an explicit { md5; }; or { sha1; };.
Naturally you can still specify an auth-type if you want to, and for types like 'sslclientcert' it's still required.
2015-05-23 15:07:37 +02:00
Bram Matthys 10af800c43 ./createchangelog is no longer used 2015-05-23 14:20:58 +02:00
Bram Matthys d12b6962a5 convert to more understandable code 2015-05-23 09:50:45 +02:00
Bram Matthys 6e886d8dac whoops.. final cleanup. really. 2015-05-23 09:31:20 +02:00
Bram Matthys af551ba491 more cleanups in src/auth.c, and don't require 'para' in Auth_Check() if we don't use it (eg: client certs) 2015-05-23 09:27:21 +02:00
Bram Matthys 8e43418775 get rid of win32-dependent code, not needed anymore as we have (Open)SSL on Windows as well 2015-05-23 09:17:21 +02:00
Bram Matthys bd65916b5a more cleanups for AUTHENABLE_* 2015-05-23 09:15:24 +02:00
Bram Matthys 5c0e2b59e1 cleanup part I: remove #ifdef's for AUTHENABLE_*, as all of them will be available now we require (Open)SSL 2015-05-23 09:11:28 +02:00
Bram Matthys 4ca497ffef Merge pull request #26 from dboyz/auth-certfp
Do authentication using certfp obtained from moddata
2015-05-23 09:00:59 +02:00
Bram Matthys fd4acdc832 Document MD server command (module data / meta data). 2015-05-21 19:37:23 +02:00
dboyz a8f2e08ef8 Initialize variable and some fixes (don't blindly copy paste) 2015-05-21 11:00:06 +08:00
dboyz 0361248fc3 Provisional code to authenticate based on certfp based on moddata 2015-05-21 09:25:14 +08:00
Travis McArthur 2dc8cb9e84 Allow win32 SSL inconsistencies
Fix issue in previous commit
2015-05-20 02:57:14 -04:00
Travis McArthur aea09603a4 Remove USE_SSL macro and associated code
We no longer support non-SSL builds, remove related code
2015-05-20 02:48:34 -04:00
Travis McArthur 229bcca996 Remove Custom MD5 Implementation
We no longer support builds without OpenSSL - consequently we have no reason to keep our custom MD5 implementation, and probably shouldn't keep it around
2015-05-20 02:33:48 -04:00
Travis McArthur 68b4f42a52 Merge pull request #24 from dboyz/auth_findtype-fix
Make auth_findtype case insensitive (#4343)
2015-05-19 10:51:31 -07:00
Adam 6b7776cb1c Fix core from parse_v4_netmask parsing invalid cidrs 2015-05-19 13:41:59 -04:00
Adam bc02d95f33 Ignore svsnicks when the new nick is the same as the old one 2015-05-19 13:41:51 -04:00
dboyz 09c71fc5f9 Make auth_findtype case insensitive 2015-05-20 00:42:32 +08:00
Bram Matthys b17245d9a1 remove hate from Makefile 2015-05-19 17:41:51 +02:00
Bram Matthys cafaebff3f update release notes & delete Changes file 2015-05-19 17:41:23 +02:00
Bram Matthys 4b8d5ac3ba Always build with OpenSSL. NON-SSL builds are no longer supported. 2015-05-19 17:32:37 +02:00
Bram Matthys 32aeb1fa6c ModData: only broadcast changes if sync==1. Fix return value of moddata_client_set(). 2015-05-19 12:00:12 +02:00
Bram Matthys b7d11d3e0f Get rid of implicit declarations due to missing header file(s), now including unrealircd.h instead. 2015-05-19 11:57:04 +02:00
Bram Matthys 0391987147 update release notes for alpha2 2015-05-19 11:51:03 +02:00
Bram Matthys 9da1988375 change version to 3.4-alpha2 2015-05-19 11:27:44 +02:00
Bram Matthys 5ff5e01aa2 Rename moddata_client_XXX_string to moddata_client_XXX 2015-05-19 11:22:11 +02:00
Bram Matthys 7ad4b6db67 Module coders: introduce moddata_client_set_string() and moddata_client_get_string(). Will document later in ModData wiki page (which does not exist yet). 2015-05-18 17:15:02 +02:00
Bram Matthys 222c780d64 broadcast cert fingerprint on connect 2015-05-18 17:01:04 +02:00
Bram Matthys e8888bae53 Update windows makefile to build modules/certfp 2015-05-18 16:53:26 +02:00
Bram Matthys f9fb628aed Implemented certificate fingerprint: available through /WHOIS and synch'ed network-wide (via ModData system). Thanks to DBoyz and Nath (#4136) for the contributed patches. Initial commit (but it works). 2015-05-18 16:48:41 +02:00
Bram Matthys 28c2e83cc4 actually call moddata_free_client() :) 2015-05-18 16:48:24 +02:00
Bram Matthys fa38dbf9e6 Added HOOKTYPE_WHOIS. May later be replaced by a more advanced system. 2015-05-18 16:45:31 +02:00
Bram Matthys 6f4ea900c1 Fixed pointer confusing in ModData system and made UnrealIRCd free all client ModData structures on client exit. 2015-05-18 16:42:01 +02:00
Bram Matthys 347609d958 Fix uninitalized read @ censor 2015-05-18 16:26:57 +02:00
Bram Matthys d927dd3cd0 Delete old leftovers: newnet, ircdreg, rehash, killircd. Reported by katsklaw (#4342) and others. 2015-05-18 12:58:04 +02:00
Bram Matthys a5dc160024 Self-signed certificates generated with 'make pem' are now 4096 bits and valid for 10 years. Also use SHA256 for signing. 2015-05-18 12:24:55 +02:00
Bram Matthys 8f7886d9c7 init_ctx_client() was accidentally setting options on ctx_server. Reported by Jobe (#4346). 2015-05-18 12:12:24 +02:00
Travis McArthur 5d42ac844f [0004349] Fix OOB read - reported by dg
Verified it doesn't appear to be security issue
2015-05-17 12:24:02 -04:00
Travis McArthur fb58482c4b [0004348] Reported by janicez - Fix G:line cmd
Parsing of commands based on permissions was incorret - if a command was not a user facing command explicitly, it would be denied for a user, furthermore if it was a server issuing the command, and it also was an oper command, it would be denied for similar reasons - corret parsing now in place.
2015-05-14 02:06:50 -04:00
Travis McArthur 1ea14aa2ea Merge pull request #20 from asterIRC/unreal34
Fix hostmask not being sent as part of delayjoin
2015-04-30 12:28:30 -07:00
Travis McArthur dad74daf0e Merge pull request #18 from dboyz/patch-2
Add missing include, resolves compile error
2015-04-29 18:07:20 -07:00
Unreal3.4 a6403e09b3 Uh. Well, I noticed a compilation error in the Git alpha, decided to mess with permanent.c, noticed that delayjoin.c didn't really work properly, modified delayjoin.c to send hosts with unhiding users, and here you have, a pull request from your worst nightmare. 2015-04-29 20:14:45 +00:00
Bram Matthys 8caec780e4 modules can now simply include "unrealircd.h" rather than include various
files in a specific order and risk missing ones..
2015-04-25 13:34:29 +02:00
Daniel Tan 7be77080ea Add missing include, fixes compile error 2015-04-24 18:31:45 +08:00
Travis McArthur 4f59d6dbe7 Merge pull request #17 from dboyz/patch-1
Add missing permission error message as reported in rabbitircd
2015-04-22 00:27:18 -07:00
dboyz 42214ebdf3 Add missing permission error message as reported in rabbitircd
This is the exact commit I made to rabbitircd two years ago. Since the permission error is still missing, why not port it back to unrealircd. :)
2015-04-22 07:44:53 +08:00
Travis McArthur e535637621 Merge pull request #15 from Sp1l/unreal34
Fix build with LibreSSL
2015-03-10 07:51:36 -07:00
Bernard Spil 07e707ae5b Fix build with LibreSSL
LibreSSL has removed RAND_egd completely, this patch adds RAND_egd
detection to configure and adds HAVE_RAND_EGD checks to the code where
required.
2015-03-10 11:55:37 +01:00
Travis McArthur 6c159756b4 Merge pull request #12 from Adam-/unreal34+secureinitializers
Fix secureonly
2014-08-26 08:12:02 -07:00
Adam 996c084d6f Fix secureonly 2014-08-26 10:46:45 -04:00
Travis McArthur 8035168d5f Move TKL checking back into run loop 2014-08-24 09:43:40 -07:00
Travis McArthur 3c42268604 Fix typo in config - oops 2014-08-23 23:01:24 -07:00
Travis McArthur 496826f42c Make floodprot perm
Modules that take parameters to chanmodes cannot be unloaded at this time, we probably want to investigate adding this capability in the future so we can do dynamic updates of those modules
2014-08-22 21:36:15 -07:00
Travis McArthur b0f6a9e50c Add travis-ci config 2014-08-21 08:47:00 -07:00
Travis McArthur cea0a16bd0 Remove failure case if ircd not booted and logging fails
Modules or other resources could call ircd_log even if we are not fully booted, and we need to not fail in that situation, instead we should just emit the same warnings we usually do.
2014-08-18 08:25:35 -07:00
Travis McArthur 786b650f9c Add additional recursion checking/fix recursion checking 2014-08-18 07:52:04 -07:00
Travis McArthur c780691c43 Reported by Adam-, add recursion checking to ircd_log 2014-08-17 21:12:28 -07:00
Travis McArthur e365d9a721 Merge pull request #9 from hyperi0n/patch-1
Fix example.fr.conf defer-accept example
2014-08-01 11:16:57 -07:00
hyperi0n ef05be9430 add missing ; in listen block 2014-08-01 19:22:41 +02:00
Travis McArthur 5a7358a227 Merge pull request #8 from Adam-/unreal34+uid
Don't allow changing sid from rehash.
2014-08-01 07:41:56 -07:00
Adam 5a90859cee Don't allow changing sid from rehash.
Not sure how this was supposed to originally work, if the sid is changed
the uid generator is not re-initied, and even if it was it would allow
id collisions if it ever uplinked to another ircd with the old id it
had.

I see no reason for this.
2014-07-30 11:31:19 -04:00
Travis McArthur be37004c25 Merge pull request #6 from Adam-/unreal34+ssl
Fix build with no ssl
2014-07-29 15:05:52 -07:00
Travis McArthur 640961201d Merge pull request #7 from Adam-/unreal34+warning
Fix a couple of the worst clang warnings
2014-07-29 15:02:37 -07:00
Adam c25442901b Fix a couple of the worst clang warnings 2014-07-29 17:53:19 -04:00
Adam 7887c1bd60 Fix build with no ssl 2014-07-29 17:48:20 -04:00
Travis McArthur 54578a5287 Merge pull request #4 from Adam-/unreal34+starttls
Fix abort from STARTTLS
2014-07-29 13:02:49 -07:00
Adam 0920c1e160 Fix abort from STARTTLS 2014-07-29 15:58:38 -04:00
Bram Matthys 5428c5cab2 Merge pull request #3 from Adam-/unreal34+cap
Just build the cap list once, fix memory leaks
2014-07-29 21:56:32 +02:00
Bram Matthys f12d8627d0 Merge pull request #1 from Adam-/unreal34+exampleconf
Fix example.conf defer-accept example
2014-07-29 21:35:45 +02:00
Adam d540adbc7f Just build the cap list once, fix memory leaks
Not sure what this originally was supposed to do, but clicap_find is
normally called multiple times per cap request per client, so this makes
no sense at all.
2014-07-29 15:29:28 -04:00
Adam 0e2a15ddab Fix example.conf defer-accept example 2014-07-29 15:26:25 -04:00
Bram Matthys ebdbc91f63 update links 2014-07-29 11:44:29 +02:00
Bram Matthys 32ada3f932 Initial version, for use on github. 2014-07-29 11:43:00 +02:00
Travis McArthur 3f9aef57db Add documentation for set::link::bind-ip 2014-07-28 21:24:43 -07:00
Bram Matthys c3b35366e4 update version to 3.4-alpha1 -- even if docs are not updated, hmm :D 2014-07-26 17:26:48 +02:00
Bram Matthys f92034921e Update curl-ca-bundle from Dec 29 20:03:40 2012 to Tue Jul 15 08:33:20 2014 2014-07-26 17:25:55 +02:00
Travis McArthur 869014ed82 Merge initializer fixes 2014-07-22 06:35:24 -07:00
Travis McArthur f4c68a3a66 Fix initializers 2014-07-22 06:33:33 -07:00
Bram Matthys 20e9da6dff When users connect they will receive a message telling them this IRC Server
software is experimental and that they should report any bugs or problems
on http://bugs.unrealircd.org/
2014-07-22 14:08:05 +02:00
Bram Matthys 8b05f023fa fix no return value being returned from secureonly module: caused windows
version not being able to join any channel...
2014-07-20 21:36:06 +02:00
Bram Matthys 220e0c01e4 fix missing initializers 2014-07-20 21:29:07 +02:00
Bram Matthys ee00bb2801 oh come on... 2014-07-20 21:26:36 +02:00
Bram Matthys 7e1595dacb fix strange re-using of 'i' and uninitialized use of it. 2014-07-20 21:22:04 +02:00
Bram Matthys 4757156f26 mention chan mode +d in release notes 2014-07-20 19:18:59 +02:00
Bram Matthys 40a46f5019 prepare for alpha1 2014-07-20 19:16:17 +02:00
Bram Matthys 927b5f7bf8 update some documentation, but not much... add warning that docs are not up
to date with regards to 3.4.x development, and all translations are out of
date.
2014-07-20 18:57:42 +02:00
Bram Matthys b4519cf3d7 wording.. 2014-07-20 17:49:47 +02:00
Bram Matthys 94a6305880 Added config_report_ssl_error() which is now used when we failed to (re)initialize
SSL, may print a bit more meaningful errors (though rather long and obscure).
2014-07-20 17:45:58 +02:00
Bram Matthys a51479b614 Win32: Fix SSL error not showing up in dialog box (was logged to ircd.log, though..) 2014-07-20 17:31:15 +02:00
Bram Matthys f2db4e4598 Always (attempt to) write config warnings and errors to the log file. This
fixes issues like the IRCd mysteriously not being able to boot up without
any error message, both on *NIX and Windows.
2014-07-20 17:25:22 +02:00
Bram Matthys 9c2d59d99b inno setup: USE_SSL by default 2014-07-20 17:13:26 +02:00
Bram Matthys 1dba0bfc43 forgot to include one module in the win32 makefile (floodprot) 2014-07-20 17:12:44 +02:00
Bram Matthys 11d7b49130 Deny booting/rehashing if using SSL in listen or link blocks. 2014-07-20 17:08:54 +02:00
Bram Matthys 7ba2e3214c First attempt at allowing server to boot if SSL is enabled but the
server/client SSL context failed to load (eg: no cert/key file).
2014-07-20 16:50:29 +02:00
Bram Matthys 1a67489368 update win32 makefile so 3.4 actually compiles 2014-07-20 16:25:59 +02:00
Travis McArthur ec294b1373 Fix build for clang 2014-07-05 12:47:03 -07:00
Travis McArthur 63cb121130 Modularize secureonly (+z) 2014-07-04 21:13:08 -07:00
Travis McArthur 3710fb67c4 Modularize regonlyspeak (+M), slightly modify can_send hook 2014-06-29 12:12:36 -07:00
Travis McArthur fdeb6f06bf Modularize nokicks (+Q) 2014-06-29 00:52:40 -07:00
Travis McArthur 866c835a6f Remove unnecessary CMD_FUNC calls 2014-06-29 00:21:29 -07:00
Travis McArthur 2519f9d3ac Modularize nonickchange (+N) 2014-06-29 00:21:17 -07:00
Travis McArthur 2e10afdd9c Modularize channel mode +R, reg only - temporarily remove some logging 2014-06-29 00:01:50 -07:00
Travis McArthur 334763c21c Modularize nonotice (+T) 2014-06-28 23:34:14 -07:00
Travis McArthur aebab04b21 Fix missed renames 2014-06-28 22:52:33 -07:00
Bram Matthys 110a3f6bfe update coders 2014-06-28 22:28:06 +02:00
Travis McArthur 8169c34a64 Change error messages for bad access in modes 2014-06-07 21:09:49 -07:00
Travis McArthur d18f9ecfa1 Fix bug in module permissions 2014-06-07 20:56:50 -07:00
Travis McArthur f49d4286cf Update permissions to several modules 2014-06-07 20:47:29 -07:00
Travis McArthur 5e657e5985 Modularize adminonly (+A) 2014-06-07 20:35:19 -07:00
Travis McArthur 5924674c3f Remove unnecessary hook added (oops!) 2014-06-07 20:33:57 -07:00
Travis McArthur 74ab4f51c8 Fix permissions for +O 2014-06-07 20:25:17 -07:00
Travis McArthur df4597b869 Modularize operonly (+O) 2014-06-07 19:37:25 -07:00
Travis McArthur e2c40c7880 Mark delayjoin as official 2014-06-07 00:41:43 -07:00
Travis McArthur b91f683800 Modularize noinvite (+V) and noknock (+K) in one commit since they share functionality 2014-06-06 22:02:40 -07:00
Heero 8cc0724e76 delayjoin: fix issue with timing on join causing bug
added hook for after data creation, before channel join complete
2014-06-05 01:04:31 -07:00
Bram Matthys 71ffba5f3b delayjoin: internal: can store (in)visibility in integer with this module. 2014-06-04 21:01:53 +02:00
Bram Matthys 89a38f8eda Load delayjoin (chmode +D) by default.. good for testing ;) 2014-06-04 20:47:02 +02:00
Bram Matthys 9e7c77f84b rename module to delayjoin 2014-06-04 20:42:46 +02:00
Bram Matthys 8a45b22bad move src/modules/m_moded.c to src/modules/chanmodes/delayjoin.c 2014-06-04 20:41:12 +02:00
Heero 4956d01e34 Add +D/+d and remove +u
Permits users to add +D mode to hide join/part notifications except for +vohaq
until a user speaks
[#2906] Reported by Tranqer
2014-06-04 01:13:22 -07:00
Heero e75cb1709d [4246] Add set::link::bind-ip option to set default bind ip for link blocks 2014-06-03 23:39:30 -07:00
Bram Matthys cffca2c840 m_mdex.c: add calls to send_md_* function to show broadcast effect 2014-06-01 20:11:56 +02:00
Bram Matthys de3f9b9cc2 - Add server synching and broadcast functions for new ModData system.
- Also added an example module for coders (m_mdex), not compiled by default.
2014-06-01 20:06:28 +02:00
Bram Matthys 8af557a25c update win32 makefile for moddata 2014-06-01 17:38:27 +02:00
Bram Matthys 9215970b3a actually commit the moddata.c file ;) 2014-06-01 17:37:51 +02:00
Bram Matthys e21298ea71 - First version of ModData system that allows modules to attach data to
structs such as Client, Channel, Member and Membership.
- Modules that define channel modes no longer need to be permanent. This
  was already true for paramless chmodes, but is now true for all.
- Converted floodprot module (chmode +f) to use MoData. This means some
  remains could be purged from the core and the module is now fully
  reloadable (no longer permanent).
- This code is experimental, but seems to work...
2014-06-01 17:34:16 +02:00
Bram Matthys ec0b431e4f just one 'account-notify' in CAP is sufficient ;) 2014-05-31 16:11:14 +02:00
Bram Matthys d2db300fe8 Fix crash if SASL is enabled and ping-cookie is disabled (neither are the
default). Reported by fbi (#4307).
2014-05-30 11:32:18 +02:00
Bram Matthys 184d63094b re-run autoconf (./Config fix after port..) 2014-05-30 22:58:25 +02:00
Bram Matthys 5415c36407 compile fix after porting all the fixes/etc from 3.2.x. 2014-05-30 22:56:07 +02:00
Bram Matthys 2a2322c31a [Port from 3.2.x] Added set::spamfilter::stop-on-first-match -- 2nd part. 2014-05-30 22:55:07 +02:00
Bram Matthys 14c74561c7 Added set::spamfilter::stop-on-first-match [yes|no]:
By default this is set to 'yes' which means that once a spamfilter matches
UnrealIRCd will take action immediately and any additional (other)
spamfilters will not be processed.
When this is set to 'no' then after the first spamfilter match other
spamfilters will still be checked. All of these matches will be logged and a
message will go to IRCOps (snomask +S) for each one. The affected user,
however, will only see one spamfilter action (eg: block or kill) which will
be the spamfilter with the 'gravest action' (gzline is highest, block and
warn are lowest).
2014-01-20 22:10:27 +01:00
Nathan Phillip Brink bd1ec26a8d - Update the documentation about set::dns::nameserver to reflect reality (that the setting is only used if c-ares can’t read /etc/resolv.conf). 2013-01-27 05:59:50 +00:00
Bram Matthys bf3d8161a3 Added SVIDLEN so this value is now separate from NICKLEN. Previously if you
would lower NICKLEN to 9 then services timestamps would be cut off. Reported
by Jobe (#4248).
2014-01-12 16:40:55 +01:00
Bram Matthys 475a9a9c5f When you specified more than 4 servers in set::timesynch::server you could
experience weird issues such as a flood of 'Cannot accept connections:
invalid argument' messages. Reported by hyper_threader (#4242).
2014-01-12 11:26:29 +01:00
Bram Matthys ef17d28a57 Backport from 3.2.x: For silenced users we will now only check the current
nick!user@host, suggested by Stevie (#2226).
2014-05-30 22:37:32 +02:00
Bram Matthys 7d2dea9256 Fix compile problem on OS X 10.9, reported and patch provided by
JustinTArthur (#4251).
2014-01-12 10:20:04 +01:00
Bram Matthys d7c198cc82 Secure server to server links were previously hardcoded at SSLv3. This has
been fixed to be 'SSLv3 or later'.  In practice this means that you will now
see a lot more server-to-server links using TLSv1.2.
2014-01-09 21:39:36 +01:00
Nathan Phillip Brink 2f74d6bdec Describe how channel mode +d (Deaf) still intentionally allows bot commands through, thanks Dan39. 2013-12-05 05:20:51 +00:00
Nathan Phillip Brink 51dbf20dc2 Allow set::channel-command-prefix to be an empty string. 2013-12-05 05:19:45 +00:00
Bram Matthys 564eef1688 Fix './unreal backtrace': on more recent gdb versions or in languages other
than English not always all tmp/*.so files were added. Therefore the
backtrace was often (much) less informative. We now use a different method.
2014-03-30 15:57:16 +02:00
Nathan Phillip Brink 98f7a8a80c Update .hgignore to cover more of autotools and support testing unrealircd by running it out of the repository directory directly. 2013-12-05 05:14:06 +00:00
Bram Matthys f26f9ea6e0 Fix curlinstall script (updated c-ares version) 2013-11-25 20:35:16 +01:00
Bram Matthys 034d2b239d fixed typo preventing a compile, reported by rfrederick (#4245). 2013-11-24 20:22:56 +01:00
Bram Matthys 559bdcbc48 Fix for OS X so it can actually compile. Reported by QIXOZL (#4236). 2013-11-24 11:30:18 +01:00
Bram Matthys 3ac7306c90 Update curl-ca-bundle with a more recent version 2013-11-22 22:16:53 +01:00
Bram Matthys 81c82839cc Port from 3.2.x: Small watch fix 2014-05-30 22:28:52 +02:00
Bram Matthys 1074b18e1f Update c-ares library to 1.10.1 (tar.gz) 2014-05-30 22:27:17 +02:00
Bram Matthys 9da678af45 Update c-ares library to 1.10.1 2013-11-20 12:53:19 +01:00
Bram Matthys ba08bed3cd Port from 3.2.x: "Various fixes, more info later." 2014-05-30 22:26:19 +02:00
Bram Matthys 126795a3e3 Rejoining because of user@host change -> Changing host (Techman, #4232) 2014-05-30 19:31:16 +02:00
Bram Matthys 26b0c6f9e7 some updates for 3.4.x (the commit rules applied mostly to 3.2.x) 2014-05-30 17:59:06 +02:00
Bram Matthys 65d5569ef0 First attempt at parse_chanmode(), meant for 3rd party module coders.. and
who knows it may be useful for ourselves too.
2014-05-29 22:05:15 +02:00
Bram Matthys d4271a0c72 Fix for when DEFAULT_PERMISSIONS is set to 0. 2014-05-19 09:58:57 +02:00
Bram Matthys 101d2dd6a3 Big 3.4.x commit containing bug fixes and enhancements. Modularizing
user & channel modes. Fixing Windows build. Etc..
2014-05-11 20:56:02 +02:00
Thomas Fargeix 4008883f9c French doc:
- document SID config option (r0081b23f5e19)
- Add permanent channel mode.  (#4117) (r6a1cc53d377e)
- Remove AKILL/RAKILL commands. (#3662) (r5ec482aabf80)
2013-05-25 01:50:44 +02:00
William Pitcock 8944ebc093 - m_cap: fix nospoof bypass (#4222) 2013-09-21 06:08:00 +00:00
William Pitcock 1b9ced7332 - another pass at release notes for alpha1 2013-05-25 11:28:52 +00:00
William Pitcock a9415f39d3 - bump UnrealProtocol to 2312 for deny version blocks 2013-05-25 11:19:54 +00:00
William Pitcock 95137d435a - use SIDs and UIDs in server burst entirely if possible 2013-05-25 11:17:17 +00:00
William Pitcock e27e2db8e1 - m_sjoin: do not leak UIDs in netjoin to users 2013-05-25 11:04:35 +00:00
William Pitcock e39903554a - fix vmakebuf_local_withprefix() sizeof bug 2013-05-25 10:57:24 +00:00
William Pitcock 881d79e5b5 - more UID vs. non-UID translation 2013-05-25 09:52:35 +00:00
William Pitcock 8e450fccab - m_part: translate between UID and non-UID. 2013-05-25 09:47:42 +00:00
William Pitcock 56c6c504d1 - m_join: translate between UID and non-UID 2013-05-25 09:45:33 +00:00
William Pitcock cb35cfd306 - m_sjoin: translate between UID and non-UID. 2013-05-25 09:41:40 +00:00
William Pitcock 24363fd276 - fix typo 2013-05-25 08:20:53 +00:00
William Pitcock 91f4e1591d - sendto_message_one(): translate ID to nickname for non-SID servers 2013-05-25 02:03:49 +00:00
William Pitcock bdf6ecf552 - fdlist: do not update the backend if it is not actively tracking an FD 2013-05-25 00:30:38 +00:00
William Pitcock 349259eecb - remove check for -fno-strict-aliasing, we no longer need it 2013-05-24 23:32:55 +00:00
William Pitcock ff2b229663 - fix type-punning in decode_ip(). (#4205) 2013-05-24 23:21:17 +00:00
William Pitcock f5cfafb94e - ssl: include prototype for start_of_normal_client_handshake(). 2013-05-24 23:16:37 +00:00
William Pitcock 17f2ac31c5 - warning fixes 2013-05-24 23:13:32 +00:00
William Pitcock 7193b84876 - remove fdmaxcounter.c which seems not to be connected to anything 2013-05-24 22:54:22 +00:00
William Pitcock 7f01bc731d - use strlcat() instead of strncat() in send.c 2013-05-24 22:49:35 +00:00
William Pitcock 8e74fc64a5 - add valgrind suppressions file 2013-05-24 22:35:00 +00:00
William Pitcock 34cb24c62e - assorted warning fixes from clang 2013-05-24 22:15:20 +00:00
William Pitcock 2fb644e0ba - crule: evaluate currarg correctly 2013-05-24 22:05:18 +00:00
William Pitcock 3ba3e9d859 - GetIP() is used by strlcpy(), which must never be passed NULL. Cop out and use "255.255.255.255" if we don't know the IP. 2013-05-24 22:03:33 +00:00
William Pitcock 77c3cec8ce - sprinkle some asserts 2013-05-24 22:02:48 +00:00
William Pitcock 29027a21b6 - fix arbitrary write in sendto_common_channels(). 2013-05-24 21:50:32 +00:00
William Pitcock 5980dda3d1 - fix some various warnings 2013-05-24 21:02:55 +00:00
William Pitcock 63b56b04fb - clean up exit_client() more 2013-05-24 20:56:04 +00:00
William Pitcock 751306f3e3 - refactor exit_client() 2013-05-24 20:44:20 +00:00
William Pitcock 5cc6b4ae9b - move anUser struct over to memory pool, fix refcounting 2013-05-24 19:53:25 +00:00
William Pitcock c2a79026e2 - clean up an SID leak 2013-05-23 23:10:50 +00:00
William Pitcock 1f3cea4384 - fix UID handler 2013-05-23 23:08:33 +00:00
William Pitcock 85d4ff89b9 - burst: fix translation from UID to NICK message for UID clients 2013-05-23 22:45:42 +00:00
William Pitcock fcc4d96944 - if umodes is blank, send + 2013-05-23 11:00:46 +00:00
William Pitcock ae46850e2b - send UIDs on burst and new user to PROTO_SID servers. 2013-05-23 10:10:53 +00:00
William Pitcock 7297e91c71 - rewrite sendto_one_nickcmd_butone() to use sendto_server(). 2013-05-23 09:53:45 +00:00
William Pitcock b577128320 - Add UID command handler. 2013-05-23 09:19:21 +00:00
William Pitcock 5e11b7edd2 - update protoctl.txt removing numerics and adding SID token 2013-05-23 08:30:57 +00:00
William Pitcock 473a2dfbee - remove obsolete token.txt 2013-05-23 08:29:21 +00:00
William Pitcock c61d4c9079 - add ID() macro for SID vs UID 2013-05-23 08:18:09 +00:00
William Pitcock 37b6a3e919 - Simplify ircsnprintf(). Patch from FalconKirtaran. (#4211) 2013-05-23 03:42:01 +00:00
William Pitcock 3b29c325c6 - SASL: remove dead/unnecessary code found with coverity 2013-05-21 16:20:40 -05:00
William Pitcock bb93b10e67 - m_pingpong: since we manually hunt ourselves, check against ID too 2013-05-21 08:14:35 +00:00
William Pitcock 2ccaea07b5 - SID command: ensure we use non-SID name as origin on SERVER message (since it's for backwards compat) 2013-05-21 07:46:27 +00:00
William Pitcock 1853eaeeae - Quick attempt at cleaning up the mess for SIDs. 2013-05-21 07:17:39 +00:00
William Pitcock 7f156ad566 - add remote SIDs to ID hashtable 2013-05-21 06:52:45 +00:00
William Pitcock d4ea47eadd - do not send KILL to SIDs if they are unknown 2013-05-21 06:33:56 +00:00
William Pitcock afdf5d780a - Replace ircsprintf() with bounds-checking ircsnprintf(), patch from FalconKirtaran. (#4208) 2013-05-21 06:26:52 +00:00
William Pitcock 42a0071b2b - implement SID handler 2013-05-21 03:42:22 +00:00
William Pitcock 6d63a1b90f - fix regression caused by final stage of TOKEN removal 2013-05-21 02:22:39 +00:00
William Pitcock deeadee885 - find_person() and find_client(): make UID aware. if a Person is passed as the aClient ptr, do not check UIDs. 2013-05-21 02:10:14 +00:00
William Pitcock d7497ed79f - ensure callers of parse_client_queued() are aware of FLUSH_BUFFER 2013-05-21 01:49:54 +00:00
William Pitcock cea686b7fa - more reliably ensure we induce FLUSH_BUFFER on SID collision 2013-05-21 01:49:27 +00:00
William Pitcock f9259bf5a5 - avoid corrupting SID hashtable on collision. 2013-05-21 01:36:19 +00:00
William Pitcock 13351e550a - Add PROTO_SID, so that SID/UID messages can be sent with sendto_server(). 2013-05-21 01:16:01 +00:00
William Pitcock 7fa25a3e46 - display SID in MAP if available 2013-05-21 01:01:58 +00:00
William Pitcock 3c38cd42e3 - protoctl: parse SID= token 2013-05-21 00:58:46 +00:00
William Pitcock ef0b09e1f9 - m_nopost: log kills 2013-05-21 00:26:27 +00:00
William Pitcock ee739f4e46 - Include SID in handshake. 2013-05-20 22:01:41 +00:00
William Pitcock b02069f944 - Generate UIDs for local clients. 2013-05-20 22:00:24 +00:00
William Pitcock 01ff7c4a16 - document SID config option 2013-05-20 21:35:33 +00:00
William Pitcock 432afdef0f - initialize uid subsystem when ircd config is loaded 2013-05-20 21:33:18 +00:00
William Pitcock e338c318c3 - add UID generator 2013-05-20 21:14:48 +00:00
William Pitcock 5eac4b95f9 - chm_permanent: use static initializer 2013-05-20 20:08:26 +00:00
William Pitcock 0a1624e24a - m_cap: readd code to break a loop that i removed by accident 2013-05-20 20:03:40 +00:00
William Pitcock af1e9ebcbf - Add permanent channel mode. (#4117) 2013-05-20 19:55:47 +00:00
William Pitcock 01dffdfa46 - Extend HOOKTYPE_CHANNEL_DESTROY to allow cancelling the destroy event. 2013-05-20 19:37:43 +00:00
William Pitcock 06d9bd81ab - Introduce C99 stdbool.h. 2013-05-20 19:36:22 +00:00
William Pitcock b9eb1efd87 - Add missing module cap_invitenotify. 2013-05-20 18:23:48 +00:00
William Pitcock 93737c2f28 - Implement proposed invite-notify CAP. 2013-05-20 18:22:35 +00:00
William Pitcock 1698007836 - Add HOOKTYPE_INVITE 2013-05-20 18:07:25 +00:00
William Pitcock 5b32e5fa79 - m_sasl: take over cap_sasl implementation 2013-05-20 17:33:06 +00:00
William Pitcock c00350b760 - Move tls cap to m_starttls. 2013-05-20 17:28:53 +00:00
William Pitcock 9d78a92976 - Modularize the core of CAP. Now, we have HOOKTYPE_CAPLIST, which allows for ClientCapability
objects to be added to the list.
2013-05-20 17:22:01 +00:00
William Pitcock f5cc654a06 - Initial work on modularizing CAP. 2013-05-20 17:04:16 +00:00
William Pitcock d8d3156f43 - dbuf vestige cleanup: missed a spot 2013-05-20 16:39:34 +00:00
William Pitcock 5a0891a1f7 - Remove some old vestiges of the old dbuf code. 2013-05-20 16:30:10 +00:00
William Pitcock 27bdd21a4a - remove obsolete debug notice from evented i/o conversion 2013-05-20 16:17:01 +00:00
William Pitcock fda8377a02 - Remove AKILL/RAKILL commands. (#3662) 2013-05-20 07:41:51 +00:00
William Pitcock 468f1eddab - make modules loading relative to SPATH. 2013-05-20 07:35:20 +00:00
William Pitcock 37b13dd90c - LISTEN_SIZE should either be 5 or SOMAXCONN if defined. Nothing else. (#4204) 2013-05-20 07:26:34 +00:00
William Pitcock 42d8a95c2c - remove BUFFERPOOL, which is not used by the new dbuf code 2013-05-20 05:11:46 +00:00
William Pitcock 691503dc3e - remove 'trouble reporting system' used by old dbuf code. new dbuf code cannot have a malloc failure due to memory pooling. 2013-05-20 05:08:59 +00:00
William Pitcock 9a4bea10f8 - rewrite dbuf code to use memory pool and list framework
this probably has bugs, consider it to be less than resilient.
2013-05-20 05:07:00 +00:00
William Pitcock 6b9885e08a - mempool: use MyMallocEx() instead of MyMalloc(). 2013-05-20 04:02:27 +00:00
William Pitcock b9c9f9baa8 - Fix va_list usage warnings flagged by Purify. 2013-05-20 02:23:33 +00:00
William Pitcock df1b02adb9 - Allow the ircd to be started without a cloaking module. (#3726) 2013-05-20 02:07:51 +00:00
William Pitcock 61fe014771 - Remove sendto_server_butone() and friends, now everything uses sendto_server(). (#4202)
Patch from FalconKirtaran.
2013-05-20 01:21:45 +00:00
William Pitcock 67aacc7e9b - add memory pool code 2013-05-20 01:18:24 +00:00
William Pitcock b72fc723d9 - start up event manager immediately in main() 2013-05-20 01:16:11 +00:00
William Pitcock a7041c9294 - Clean up remaining minefield of va_start() misuse. (#3641) 2013-05-19 23:24:12 +00:00
William Pitcock 63e1786a7d - Remove no longer used sendto_serv_nickv2 functions.
These look like they were removed in Unreal 3.1!
2013-05-19 23:15:05 +00:00
William Pitcock 47e5ac9734 - Remove sendto_serv_sjoin() and sendto_serv_butone_sjoin(). 2013-05-19 23:12:27 +00:00
William Pitcock 109097b819 - Update m_template to live in a token-free world and clean up remaining deritus. (#4082) 2013-05-19 22:34:39 +00:00
William Pitcock d415c974b2 - Remove sendto_serv_butone_token_opt(). 2013-05-19 22:31:03 +00:00
William Pitcock d570031097 - Replace sendto_server_butone_token_opt() calls with sendto_server(). 2013-05-19 22:27:55 +00:00
William Pitcock 85ff3dd136 - Remove JOIN_INSTEAD_OF_SJOIN_ON_REMOTEJOIN config.h option. 2013-05-19 22:19:12 +00:00
William Pitcock c843ebe36a - Remove sendto_serv_butone_quit() from headers too 2013-05-19 22:17:06 +00:00
William Pitcock befbb8b691 - Replace sendto_serv_butone_quit() with 2013-05-19 22:16:34 +00:00
William Pitcock 1a27e5fc9b - Allow 0 for NOCAPS usage. 2013-05-19 22:02:14 +00:00
William Pitcock 65bbf390ce - Add sendto_server() to replace all the old sendto_foo() crap. 2013-05-19 21:59:45 +00:00
William Pitcock b413848524 - TOK_FOO removal pass 2 2013-05-19 21:40:45 +00:00
William Pitcock 40aeea3f0f - Remove token references from add_Command, msg.h 2013-05-19 21:36:11 +00:00
William Pitcock 8ad50de220 - Finish token removal from Command objects 2013-05-19 21:29:26 +00:00
William Pitcock ca86485927 - Remove token parameter from CommandAdd(). 2013-05-19 21:27:26 +00:00
William Pitcock 5238ce7df6 - Enable V6ONLY on ident sockets for ipv6 connections, patch from FalconKirtaran. (#4193) 2013-05-19 21:04:57 +00:00
William Pitcock a9ce94de9b - Remove sendto_channelprefix_butone_tok(). 2013-05-19 20:59:29 +00:00
William Pitcock ec440be9a3 - remove calls to sendto_channelprefix_butone_tok() in modules 2013-05-19 20:57:30 +00:00
William Pitcock f5adc61da5 - Remove sendto_channelprefix_butone_tok() usage from core. 2013-05-19 20:51:35 +00:00
=?UTF-8?q?Mantas=20Mikul=C4=97nas?= 5b66f7abe6 - Finally remove sendto_server_butone_token().
---
 include/proto.h |  2 --
 src/send.c      | 24 ------------------------
 2 files changed, 26 deletions(-)
2013-05-19 20:37:16 +00:00
=?UTF-8?q?Mantas=20Mikul=C4=97nas?= 3e47992755 - Remove remaining uses of sendto_serv_butone_token() from modules.
---
 src/modules/m_chatops.c    | 10 ++++------
 src/modules/m_chghost.c    |  4 ++--
 src/modules/m_chgident.c   |  5 ++---
 src/modules/m_chgname.c    |  4 ++--
 src/modules/m_globops.c    |  4 ++--
 src/modules/m_join.c       | 13 +++++--------
 src/modules/m_kick.c       |  5 ++---
 src/modules/m_mode.c       | 26 ++++++++++++--------------
 src/modules/m_nachat.c     |  4 ++--
 src/modules/m_nick.c       |  4 ++--
 src/modules/m_oper.c       |  9 ++++-----
 src/modules/m_part.c       |  9 ++++-----
 src/modules/m_sajoin.c     |  3 +--
 src/modules/m_sasl.c       | 20 +++++++++++---------
 src/modules/m_sdesc.c      |  3 +--
 src/modules/m_sendsno.c    |  3 +--
 src/modules/m_sethost.c    |  3 +--
 src/modules/m_setident.c   |  3 +--
 src/modules/m_setname.c    |  2 +-
 src/modules/m_svsfline.c   | 15 ++++-----------
 src/modules/m_svskill.c    |  3 +--
 src/modules/m_svsmode.c    | 12 ++++++------
 src/modules/m_svsmotd.c    | 10 ++++------
 src/modules/m_svsnick.c    |  3 +--
 src/modules/m_svsnline.c   | 15 ++++-----------
 src/modules/m_svssilence.c |  2 +-
 src/modules/m_swhois.c     |  3 +--
 src/modules/m_tkl.c        | 10 +++++-----
 src/modules/m_topic.c      | 14 +++++---------
 src/modules/m_vhost.c      | 12 +++++-------
 30 files changed, 97 insertions(+), 136 deletions(-)
2013-05-19 20:36:56 +00:00
=?UTF-8?q?Mantas=20Mikul=C4=97nas?= cecbf38775 - m_adminchat: Use the correct command.
---
 src/modules/m_adminchat.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
2013-05-19 20:35:24 +00:00
William Pitcock 0e0d4e2959 - Kill some more sendto_serv_butone_token() use. 2013-05-19 10:52:25 +00:00
William Pitcock 853ab1955f - config_warn() when server link block has deprecated/removed zip option (#4189) 2013-05-19 10:46:16 +00:00
William Pitcock 061c405172 - Remove base64enc() and friends, as they are no longer used. Patch from FalconKirtaran (#4199). 2013-05-19 10:36:38 +00:00
William Pitcock a3d24664ca - Ensure we pass a static format string to sendto_one(). Patch from FalconKirtaran (#4200). 2013-05-19 10:33:36 +00:00
William Pitcock 6085877aa7 - Remove TS2ts() and %B usage in formatter strings. Patch from FalconKirtaran (#4197, #4198). 2013-05-19 08:36:49 +00:00
William Pitcock b2214aba9f - Remove SJB64 stuff, patch from FalconKirtaran (#4190). 2013-05-19 08:09:02 +00:00
William Pitcock 9c857d1314 - Fix incorrect parameter use on sendto_serv_butone_token_opt(), reported and patch supplied by FalconKirtaran (#4195) 2013-05-19 08:06:08 +00:00
William Pitcock 55a169cd75 - Remove include/zip.h and src/zip.c 2013-05-19 08:05:11 +00:00
Thomas Fargeix 38888442fb French doc:
- Patch from FalconKirtaran to restrict /TSCTL OFFSET to can_tsctl permission (#2303) (r28f9e289d4df)
- Remove ziplinks support, patch from FalconKirtaran. (#4189) (r529b168ff8c1)
2013-05-18 01:51:59 +02:00
Thomas Fargeix 7c42c025dd French doc: example.fr.conf:
- Update example config for pending commands.so removal. (r0cb592422175)
- Implement support for TCP_DEFER_ACCEPT (synflood-hardening). (#4096) (r2ea87de39063)
- remove global flag from oper block as it is implied by netadmin. (#4092) (r491e69c8ede6)
2013-05-12 01:30:06 +02:00
William Pitcock 922aa6a4af - Fix typos in previous commit. 2013-05-16 08:00:44 +00:00
William Pitcock a1ad90bab4 - Use a unified counter instead of depending on Client.slot for sending 2013-05-16 07:53:19 +00:00
William Pitcock c41ca43145 - Remove ziplinks support, patch from FalconKirtaran. (#4189) 2013-05-16 06:36:13 +00:00
William Pitcock b4424fafb6 - m_adminchat: remove sendto_serv_butone_token() 2013-05-15 05:36:18 +00:00
William Pitcock e2b7389455 - Patch from FalconKirtaran to restrict /TSCTL OFFSET to can_tsctl permission (#2303) 2013-05-14 08:29:42 +00:00
William Pitcock 67669c0299 - core: remove references to sendto_serv_butone_token() and friends 2013-05-14 01:26:41 +00:00
William Pitcock fa4245546d - whois: honour multi-prefix capability (#4192) 2013-05-13 22:48:19 +00:00
William Pitcock 2076fd5023 - Remove hunt_server_token() as it is no longer used. 2013-05-13 22:05:34 +00:00
William Pitcock 4b9370b0a3 - Remove references to hunt_server_token() in modules. 2013-05-13 22:03:07 +00:00
William Pitcock befe488d14 - remove references to hunt_server_token() in core 2013-05-13 21:46:20 +00:00
William Pitcock 32776a4ad1 - remove hunt_server_token_quiet() as it is not in use by anything 2013-05-13 21:39:49 +00:00
William Pitcock 228cf4ae7b - Remove PROTO_TOKEN and IsToken(). 2013-05-13 05:39:00 +00:00
William Pitcock d7989a1b5b - Remove IsToken() references, pass 2. 2013-05-13 05:18:43 +00:00
William Pitcock d1da8aff73 - Remove IsToken() references from modules, pass 1. 2013-05-13 05:10:31 +00:00
William Pitcock 6ac8721c64 - core: remove all references to IsToken() 2013-05-13 05:03:28 +00:00
William Pitcock 6cde7c6ded - fix SO_ACCEPTFILTER build on freebsd 2013-05-13 04:37:12 +00:00
William Pitcock c47c75f103 - parser: remove TokenHash and related code 2013-05-13 04:35:00 +00:00
William Pitcock 04e9199934 - Remove ClearToken(). 2013-05-13 04:18:52 +00:00
William Pitcock 7e9cbe6ef8 - Fix typo, patch supplied by FalconKirtaran (#4175). 2013-05-12 05:28:34 +00:00
William Pitcock 2fafedf265 - squit: use find_server_quickx() 2013-05-10 22:42:32 +00:00
Bram Matthys e92dac1a6f This one is better, and actually compiles ;) 2013-05-10 19:32:14 +02:00
Bram Matthys af47365272 Fix strange issue where linking didn't work because UnrealIRCd would
bind to (for example) the loopback interface before connecting to the
remote server.
In addition to that, we now don't bind() at all when bind-ip is not
present or is set to "*".
2013-05-10 19:27:36 +02:00
William Pitcock 89d36ffbc8 - Fix bug with early ESVID implementations which use * instead of 0. 2013-05-09 01:50:45 +00:00
William Pitcock df65c4bc92 - Early pass at release-notes updating. 2013-05-09 01:45:20 +00:00
William Pitcock 2903ca4bad - Fix state corruption in NOQUIT code due to API changes. 2013-05-09 01:39:23 +00:00
William Pitcock 441c5743a8 - Remove old Servers list maintained by ALN code 2013-05-09 01:24:37 +00:00
William Pitcock 2dd9708699 - Remove me::numeric handling from config parser 2013-05-09 01:24:09 +00:00
William Pitcock f54e8dd3e8 - last pass of killing numeric code. 2013-05-09 01:11:56 +00:00
William Pitcock e73d9dc6cf - remainder of aln: use &global_server_list. 2013-05-09 01:07:16 +00:00
William Pitcock a3b869b80a - Remove numeric support, pass 2. 2013-05-09 01:03:21 +00:00
William Pitcock 2b54f0b617 - m_protoctl: ignore SERVERS= token 2013-05-09 00:56:02 +00:00
William Pitcock 41d5f93171 - send: remove leftover numeric rewriting stuff 2013-05-09 00:55:27 +00:00
William Pitcock bc2d0937f5 - /map: remove numeric stuff 2013-05-09 00:53:52 +00:00
William Pitcock 39c117a695 - Remove numerics from server protocol, part 1 2013-05-09 00:25:02 +00:00
William Pitcock 6d6edb3d43 - Remove MOTD line length limit as allowed by IRCv3. (#3724) 2013-05-07 05:34:58 +00:00
William Pitcock 6fa31c5624 - Add ability to sqline channels. (#3012)
Based in part on Trocotronic's patch in old UnrealIRCd CVS.
2013-05-07 05:02:15 +00:00
wolfsage 3f7577144e - #0003107 feature request by Sakkath regarding new WHO flag: +p <port> 2007-06-09 19:15:18 +00:00
William Pitcock cb775e1586 - Remove some config system vestiges. (#2677) 2013-05-07 04:35:08 +00:00
William Pitcock 6e6e7d1dc4 - Test that a log file can be created with write permissions. (#3075) 2013-05-07 04:19:59 +00:00
William Pitcock 2eb684000f - Add support for configuring a shorter nick-length. (#3042) 2013-05-07 04:12:19 +00:00
William Pitcock b9565cd2f2 - example config: remove global flag from oper block as it is implied by netadmin. (#4092) 2013-05-07 00:18:05 +00:00
William Pitcock a10f48d470 - Keep the log file open and track it on the FD list. (#2943) 2013-05-06 23:49:14 +00:00
William Pitcock 4c2f110e19 - Add fd_fileopen() which wraps open(2) but tracks the FD in the FD table. 2013-05-06 23:16:39 +00:00
William Pitcock 0c091e9434 - Add katsklaw's make distclean patch. (#3989) 2013-05-06 06:53:55 +00:00
William Pitcock 6c2ef637e5 - Fix thinko. 2013-05-06 06:37:44 +00:00
William Pitcock 0912de822f - Allow halfops to set mode +N (which is consistent with extban ~n:*!*@*). (#3728) 2013-05-06 06:07:38 +00:00
William Pitcock 5a4babdb9d - CHGHOST: Switch from part-join-mode to quit-join-mode like charybdis and ircu. (#3038) 2013-05-06 06:00:05 +00:00
William Pitcock daf6cba195 - Typo fix 2013-05-06 05:59:14 +00:00
William Pitcock 601d96e82e - Show usermodes and snomask on /whois self. (#3971)
This is useful for clients which do not track the snomask.
2013-05-06 05:34:17 +00:00
William Pitcock 885c7eba24 - make install: Install the example config as unrealircd.conf. (#4150) 2013-05-06 05:22:27 +00:00
William Pitcock b704ec74ec - Display server-only ports in /stats p only to IRCops. (#4010) 2013-05-06 05:14:24 +00:00
William Pitcock cd0d9af424 - Add documentation on ircd binary command-line options, patch from binki. (#3949) 2013-05-06 05:09:39 +00:00
William Pitcock 13bf48f3b3 - Implement full OperOverride on channel JOIN (#1403) 2013-05-06 05:04:36 +00:00
William Pitcock 7f1e31193b - Remove old vestigal code that is no longer connected to the OperOverride system. 2013-05-06 04:56:37 +00:00
William Pitcock f09c6ef567 - Implement support for TCP_DEFER_ACCEPT (synflood-hardening). (#4096) 2013-05-06 04:49:24 +00:00
William Pitcock 71c471fb33 - Display allow-userhost-change setting in /stats. (#3668) 2013-05-06 04:26:36 +00:00
William Pitcock 366b4bd612 - Show operator login name to other operators when whoising a local operator. (#2301) 2013-05-06 04:06:37 +00:00
William Pitcock 582496be70 - Split out servers into global_server_list.
Now client_list only includes clients, and global_server_list only includes servers.
2013-05-06 03:53:27 +00:00
William Pitcock 95370c6420 - ssl: Clean up no longer needed debug messages. 2013-05-06 02:42:26 +00:00
William Pitcock 595afafd28 - Finish up SSL linking support for evented I/O. 2013-05-06 02:39:18 +00:00
William Pitcock 5bbc40438f - Initial work at making SSL connects work with the evented I/O. 2013-05-06 02:14:31 +00:00
William Pitcock b3208f2332 - Fix STARTTLS replies when the user is unregistered. (#4184) 2013-05-05 17:02:40 +00:00
Bram Matthys c08628d42d Custom modules: move EXLIBS= so shared libraries are always linked.
Reported by DE_Glen (#4182).
2013-04-05 15:36:23 +02:00
Bram Matthys 61cfb5ac3e - Windows: Fix strange linking bug. Outgoing connects from a Windows
IRCd caused a garbled SERVER protocol message, causing 'cannot find
  server' errors and killing of users. Reported by Sunkat (#4183).
2013-04-04 23:07:04 +02:00
William Pitcock 9806ec28e9 - Remove support for negotiating TOKEN support.
At present, the TOKEN support is kept in place.
2013-02-22 02:48:47 -06:00
William Pitcock 9f19b41356 - Remove techadmin deritius. (#4173) 2013-02-22 02:42:07 -06:00
William Pitcock a92b7e0d78 - Fix hunting users when acptr is (nil). (#4165) 2013-02-22 02:36:14 -06:00
Bram Matthys 372ac909df - Don't remove oper-modes such as +S from non-local clients. Reported by
Magiobiwan (#4166). This caused an issue with bots from anope BotServ
  where user modes +Sq were stripped by the IRCd.
2013-02-19 19:31:30 +01:00
William Pitcock 87807ae81a - Replace 'his/her' with 'their' in various notices.
It is more gramatically correct, and looks less awkward while maintaining
political correctness.
2013-02-08 15:42:41 -06:00
William Pitcock 65881a9ae2 - Rework module loading to work like Atheme. Split out modules to modules.conf for brevity, though. (#4163) 2013-01-17 04:55:41 -06:00
William Pitcock cd52331cd0 - Kill IPV6_COMPRESSED. 2013-01-14 06:34:01 -06:00
William Pitcock 0b5fb5903e - SSL: fix some bitrot left over from evented i/o rewrite 2013-01-14 06:23:53 -06:00
William Pitcock 09e4eced35 - Remove resolv.h deritius which hasn't been used since we switched to c-ares a long time ago. 2013-01-14 06:22:06 -06:00
William Pitcock ad25d019b1 - Enable kqueue support on BSDs. 2013-01-14 04:32:39 -06:00
William Pitcock d96652dc84 - CAP: use case-insensitive command lookup. (#4154) 2013-01-14 04:00:50 -06:00
William Pitcock 3bdae5807d - Remove NEWCHFLOODPROT define and old +f code. (#3210) 2013-01-14 03:44:49 -06:00
William Pitcock 6b5d63c25c - WebTV removal, part 2. (#3948) 2013-01-14 03:24:49 -06:00
William Pitcock f9a78be185 - Remove WebTV code, part 1. (#3948) 2013-01-14 03:21:42 -06:00
William Pitcock 1678fc2013 - Revert parts of r5199 that shouldn't have been included yet 2013-01-14 02:41:47 -06:00
William Pitcock 3f2382befa - Implement an IsAnOper() check on M_OPER. 2013-01-14 02:41:09 -06:00
William Pitcock 1ac3413039 - Actually implement M_OPER flag. 2013-01-14 02:30:07 -06:00
William Pitcock 1affa56133 - Temporarily move BACKEND_POLL includes up until stdinc framework is in
effect.
2013-01-14 02:24:49 -06:00
Bram Matthys e1ebbf88ed allow channel: Permit multiple channel items in one block again, was broken by patch from #4125. 2013-01-11 19:05:36 +01:00
Bram Matthys e6f9504ded '/rehash -global' did often not rehash all servers. Reported by Cronus (#4143). 2013-01-09 19:41:18 +01:00
Bram Matthys 803a89151f Fix duplicate user@host in away-notify and account-notify, reported by grawity (#4153). 2012-12-28 17:01:05 +01:00
William Pitcock 424d7afba7 - Remove all references to add_Command(). (#3177) 2012-12-26 19:57:35 -06:00
William Pitcock cb5e155911 - Add support for ISO8859-6 character tables, as "arabic". (#4151)
While here, add a function to mark a range of characters as OK, and close
  a possible integer underflow bug in the character attribute code.
  Character tables derived from Atheme libguess.
2012-12-26 18:15:03 -06:00
William Pitcock f768abc2c2 - Fix typo in previous patch, pointed out by Wolfwood. (#4147) 2012-12-26 13:18:27 -06:00
William Pitcock 39919329f5 - Do not bother unsetting -l, -k, -L fields as they are changed or unset again later. (#3027) 2012-12-26 13:16:20 -06:00
William Pitcock 9532325a24 - Remove lusers.c again. (#2699) 2012-12-26 13:05:39 -06:00
William Pitcock 7641d85d2f - Remove arbitrary helpops messaging stuff like in 3.3. (#2095)
HelpOp usermode is kept around for vanity for right now.
2012-12-26 12:52:48 -06:00
William Pitcock d53e7613b6 - Clarify meaning of ERR_ERRONEOUSNICKNAME. (#2990)
This is technically in violation of RFC1459, however the general consensus
  at the IRC3 discussion meetings is that it's the numeric which actually matters.
2012-12-26 12:38:09 -06:00
William Pitcock 997aae03c4 - Require OPCanOverride to talk through channel bans. (#3410) 2012-12-26 12:31:36 -06:00
William Pitcock 3653d0148d - Clean up some old debug notices. 2012-12-01 23:32:28 -06:00
William Pitcock 0349b143d8 - Only update FD description on local clients (e.g. MyConnect returns true) 2012-12-01 23:23:28 -06:00
William Pitcock d522dbfef9 - Remove building of commands.so. 2012-12-01 23:18:00 -06:00
William Pitcock 8ec1f2245f Update example config for pending commands.so removal. 2012-12-01 23:16:18 -06:00
William Pitcock 614a006900 - Do not attempt to set up DH params if not requested. 2012-12-01 23:11:44 -06:00
William Pitcock 501d93d6ea - Add support for providing a DH parameters file. (#4147)
DH parameters files must be encoded in PEM format, and the path is
  set using the ssl::dh config setting.  This is based on a patch
  submitted by wolfwood, with some modifications to avoid using stdio
  unnecessarily and to avoid code duplication.
2012-12-01 22:49:19 -06:00
William Pitcock f80bfb6d74 - Typo fix in m_server_synch(). 2012-12-01 22:27:09 -06:00
William Pitcock cc4ac836b6 - SVSKILL was setting FLAGS_KILLED twice. 2012-11-25 17:58:43 +00:00
William Pitcock f55d5f0b0f - Allow local opers to CLOSE connections. (#2486) 2012-11-25 17:56:23 +00:00
William Pitcock ec09c447e5 - Remove defines FAST_BADWORDS_REPLACE, THROTTLING, EXTCMODE. (#2937)
The code does not compile without them anyway.
2012-11-25 17:45:45 +00:00
William Pitcock 4a58fd967c - Move TKL update notices to snomask +G, from snomask +j. (#3000) 2012-11-25 17:01:53 +00:00
William Pitcock 1f79ca142f - Remove channel masks. (#3281) 2012-11-25 16:59:27 +00:00
William Pitcock 19f899f1bb - Remove local[] and LastSlot. 2012-11-25 03:23:57 +00:00
William Pitcock 594ca76c00 - SASL: just decode the cookie part of the PUID and assume slot is 0 for now.
This will eventually be replaced with proper TS6-like UIDs.
2012-11-25 03:11:53 +00:00
William Pitcock fb21a87a4b - Compile fix. 2012-11-25 03:10:57 +00:00
William Pitcock aa617df36c - Remove last core dependency on local[]. 2012-11-25 03:05:59 +00:00
William Pitcock 4efcdfe090 - More refactoring related to local[] removal. 2012-11-25 02:59:48 +00:00
William Pitcock 56010d9fb5 - Missed a local[] reference in TRACE. 2012-11-25 02:49:15 +00:00
William Pitcock 2ea5301896 - Rework the listener system to not use Client table entries. 2012-11-25 02:46:39 +00:00
William Pitcock 562c30d58d - More conversion to lclient_list and friends. 2012-11-25 01:52:08 +00:00
William Pitcock 4f8c49d2fb - Stop iterating using LastSlot in m_server. 2012-11-24 23:24:30 +00:00
William Pitcock 5448462f5d - Typo fix. 2012-11-24 23:21:52 +00:00
William Pitcock 2b3a724524 - Use unknown_list instead of iterating local[] in PASS and CLOSE commands. 2012-11-24 23:04:58 +00:00
William Pitcock 8829e89f2e - Remove references to LastSlot and local[] in send.c 2012-11-24 22:47:17 +00:00
William Pitcock c2a9dd3273 - Remove local[] iteration in AllowClient(). 2012-11-24 22:32:00 +00:00
William Pitcock b7aa36e8d1 - Guard against improper use of Client structures, due to legacy dependency on local[]. 2012-11-24 22:28:13 +00:00
William Pitcock 6883909f2a - Split out unknown connection checking into it's own event. 2012-11-24 22:19:43 +00:00
William Pitcock 5e1b5a4dd9 - Be more paranoid about unlinking client entries from linked lists, by doing it
from free_client() which is called directly sometimes.
2012-11-24 22:19:13 +00:00
William Pitcock 90802ddafa - Add unknown_list for tracking unknown clients. 2012-11-24 21:55:37 +00:00
William Pitcock 33bffb336f - Use lists instead of looping on LastSlot in a few places. 2012-11-24 21:19:32 +00:00
William Pitcock 5d586cfc69 - All the remaining code in fdlist.c is mine since rev. 16a9ba0 2012-11-24 21:00:09 +00:00
William Pitcock bae7de47a0 - Remove some more vestiges of the old I/O system I previously missed. 2012-11-24 20:57:33 +00:00
William Pitcock 4ca0156f84 - Remove remainder of fdlist code. 2012-11-24 20:55:38 +00:00
William Pitcock 04362c8783 - Remove default_fdlist. 2012-11-24 20:48:59 +00:00
William Pitcock 275b4f507d - Replace oper_fdlist with oper_list. 2012-11-24 20:45:11 +00:00
William Pitcock 092d928b99 - Remove serv_fdlist. 2012-11-24 20:17:04 +00:00
William Pitcock 024ef23ec6 - Move serv_fdlist accounting over to new server_list. 2012-11-24 19:56:10 +00:00
William Pitcock 3b1984cdd8 - Add special_node to struct Client for iterating unknown / server / oper lists. 2012-11-24 19:52:56 +00:00
William Pitcock 35dcc7287d - Use safe list iteration with loops which may remove clients 2012-11-22 02:16:59 +00:00
William Pitcock 9a577aec61 - Move some things over to the lclient_list. 2012-11-22 00:23:25 +00:00
William Pitcock ffb4fc56f1 - Separate TKL checking from the check_pings event.
Instead, run check_tkls() when TKL changes are made directly.
  While this is technically slower when more than one TKL is placed
  at once, the value of getting it out of the check_pings event is
  greater.
2012-11-21 03:08:27 +00:00
William Pitcock bda05b6876 - Make it possible for nodes which have been delinked to be linked to other lists. 2012-11-21 23:18:18 +00:00
William Pitcock a35fe3ea3b - Add lclient_list and aClient.lclient_node, which iterates local clients. 2012-11-21 23:14:28 +00:00
William Pitcock f09b1ac4d4 - Rename aClient.client_list to aClient.client_node to avoid confusion 2012-11-21 23:03:28 +00:00
William Pitcock 9853fa54f4 - Rework the client management code to use a circular queue and set of
circular queues for hashtable.
2012-11-21 22:49:32 +00:00
William Pitcock d2ef4a9b10 - Add new circular-queue linked list macros based on the ones in the Linux kernel. 2012-11-21 22:48:26 +00:00
William Pitcock eba3b54459 Backed out changeset 67f0becf1fd9 2012-11-24 17:41:20 +00:00
William Pitcock c53dbb87fb - Update Changes file after first merge. 2012-11-24 17:39:20 +00:00
William Pitcock 6f7d41f5c6 - StrEq() macro has no users, so we can remove this too. 2012-11-21 03:35:08 +00:00
William Pitcock ab5e766d9c - Replace calls to strncpyzt() macro with more secure strlcpy().
This was done using Coccinelle, the semantic patch was:

  @@
  expression src, dst, len;
  @@

  - strncpyzt(src, dst, len);
  + strlcpy(src, dst, len);
2012-11-21 03:22:29 +00:00
William Pitcock dbe7039123 - Remove flush_connections(). It is now obsolete via the async i/o.
As a result of removing this, Unreal's CPU usage is reduced by 45% with
  10000 local connections.
2012-11-19 22:37:52 +00:00
William Pitcock 98ad590a7f - Remove nextping, nextconnect, nextblah stuff. Use proper events instead. 2012-11-12 09:35:11 +00:00
William Pitcock 856be31a8d - Exorcize HTM (heavy traffic mode) from Unreal.
This is partially for the sake of Stskeeps, even though he left the
  project long ago, but mainly so we can work towards dynamic ticks in
  the event loop while guaranteeing latencies for connected clients,
  even with fakelag.
2012-11-05 05:49:04 +00:00
William Pitcock 31c357bf76 - Kill busycli_fdlist with fire. 2012-11-05 05:30:34 +00:00
William Pitcock 3254f7ba4c - Kill read_message() and related deritius with fire.
The dreamforge event-loop is now fully exorcized from the codebase.
2012-10-26 02:38:08 +00:00
William Pitcock 054f39cc3d - Hook up remote includes code into the new event loop, and remove references to
url_do_transfers_async() which has been removed.
2012-10-25 23:31:25 +00:00
William Pitcock fb6da590fb - Simplify deliver_it(). 2012-11-05 05:27:23 +00:00
William Pitcock efd5c6ec1a - Removed broken VMS netwrite() code. 2012-10-26 04:10:03 +00:00
William Pitcock ac5d1b9979 - Remove IsBlocked()/SetBlocked()/ClearBlocked() and related deritius. 2012-10-08 16:16:05 +00:00
William Pitcock 25318ec24b - Port the SSL code over to the evented I/O subsystem. 2012-10-05 14:19:54 +00:00
William Pitcock 97b643aad7 - Fix autoconn with evented i/o loop. 2012-10-05 13:31:18 +00:00
William Pitcock 0b186e7622 - Add untested kqueue(2) backend. 2012-10-26 04:05:22 +00:00
William Pitcock 5e427e9f89 - Add eventloop implementation for select(2). 2012-10-26 03:33:26 +00:00
William Pitcock 6a210e34b1 - Add a polling backend that uses epoll(2). 2012-10-26 00:20:57 +00:00
William Pitcock b69b78de4b - Add support for tracking backend state for FD table entries. 2012-10-26 00:06:16 +00:00
William Pitcock 110aeceaec - Add support for oneshot I/O handlers. 2012-10-05 17:55:30 +00:00
William Pitcock ae7a3912e7 - Call fd_refresh() when closing an FD. This way events may be dequeued from the event system. 2012-10-05 13:07:51 +00:00
William Pitcock 38e6793da8 - Fix a socket event leak in the new resolver code by assuming requests that
are neither read nor write means that c-ares is no longer interested in the
  socket.  Thusly we unregister it.  This is probably wrong, but it seems to
  work fine.
2012-10-05 13:01:38 +00:00
William Pitcock 82854f41a6 - Clean up locking in the identd/dns checking subsystem. 2012-10-05 12:56:42 +00:00
William Pitcock 17aa93cf04 - Remove remaining listener-related deritius from read_message(). 2012-10-05 12:45:08 +00:00
William Pitcock 3dbc023245 - Disconnect client packet handling (non-SSL) and listener handling from read_message().
With this change, it is possible to completely disconnect read_message() from the mainloop,
  and have a fairly responsive ircd (noticably more responsive than what we had before I
  started on this).
  The "fakelag" stuff has been replaced with charybdis's deferred command processing logic,
  which is more efficient and does the same thing without punishing behaving clients.
2012-10-05 12:32:56 +00:00
William Pitcock c2eeeb40f2 - Do not invalidate data pointer in FD entry table, unless events are oneshot. 2012-10-05 12:22:12 +00:00
William Pitcock ea48a5db3a - Disconnect identd checking code from monolithic I/O system and port it to
the evented I/O system.
2012-10-05 11:03:00 +00:00
William Pitcock 436eb0030d - Port DNS resolver to run under new evented I/O system. 2012-10-05 10:41:40 +00:00
William Pitcock 3f09c1c459 - Assume all poll notification requests should persist, and that the caller will
deregister interest itself when it is done polling.
2012-10-05 10:36:46 +00:00
William Pitcock 7608e3716f - Give IO event subscribers information on whether or not they are getting read or write events,
or both.
2012-10-05 08:57:52 +00:00
William Pitcock dfe8206c8e - First cut at new evented I/O system. Right now, we only implement support for poll(2).
Nothing is hooked up to it yet, I will cover that in the next few commits.
2012-10-05 08:21:29 +00:00
William Pitcock b26207df50 - Add support for proper FD accounting (rewrite of the fdlist code).
This is the first step to adding evented I/O.  Infact, writing the evented I/O code
  should now be quite easy.
2012-10-05 03:42:44 +00:00
Bram Matthys b1b3f25278 test commit 2012-11-24 10:49:43 +01:00
Bram Matthys 06ea46eea1 Update ./createchangelog to make it only show changes on unreal34 branch. 2012-11-23 19:55:35 +01:00
Bram Matthys 6ddeb0ccb3 Some quick changes to make the IRCd report as version 4.0-dev 2012-11-23 19:45:34 +01:00
Bram Matthys 0772575e48 New branch 'unreal34' for Unreal3.4 development 2012-11-23 19:27:59 +01:00
Bram Matthys 7da12ba3bb - Rename Changes.old to Changes.older
- Rename Changes to Changes.old
- In the Mercurial repository the Changes file no longer exists (except
  for a dummy file). You now need to run ./createchangelog to generate it.
  Of course in official releases the Changes file will be present and
  contain all details.
- From now on, the Changes file is based on the history of the Mercurial
  repository. This means we no longer have to write text manually to the
  Changes file. This simple change helps a lot in future development
  because patches will no longer break when they are being ported from
  one branch to another.
2012-11-23 19:20:40 +01:00
Bram Matthys a831052f22 - Import unreal32docs Spanish translation by Karim Benzema. 2012-11-23 17:51:42 +01:00
Bram Matthys f412e7434f - Argh.. silly Windows symbol crap. 2012-11-12 15:29:38 +01:00
Bram Matthys 3c6f3bd029 - Use a more robust method of learning the server origin for a SASL
agent. Fixes crash reported by Adam.
2012-11-04 17:23:45 +01:00
William Pitcock 2cc9482e18 - Use a more robust method of learning the server origin for a SASL agent. 2012-10-27 22:42:32 +00:00
Bram Matthys 87f52e5939 - Use our own (v)snprintf if not available. 2012-11-04 17:20:31 +01:00
Bram Matthys f964828434 3.2.10-rc1 release was on 2012-10-17 (public on 2012-10-18) 2012-11-04 17:09:14 +01:00
serkan sepetci e7b18e80c9 Updated 3.2.10 and Add Authentication Types documentation 2012-11-02 00:32:22 +02:00
serkan sepetci 6fc134c919 Add allow channel and deny channel documentation. 2012-11-02 00:27:33 +02:00
serkan sepetci 5752aae6d6 Updated Version: 3.2.10 and Add Authentication Types documentation 2012-11-02 00:17:40 +02:00
Anton Samets fda25d1632 I idle hide from regular users in help.ru.conf 2012-10-19 12:34:45 +03:00
Anton Samets 660433ac35 update russian translate for 3.2.10 2012-10-18 19:36:37 +03:00
Bram Matthys 2b7915bfa7 Added tag unreal3_2_10rc1 for changeset 094646e391e6 2012-10-17 15:04:30 +02:00
Thomas Fargeix 3d9359608e French doc: some issues with accents. 2012-10-16 20:16:32 +02:00
Thomas Fargeix 0e39a183c7 French doc: documentation on the new sslclientcertfp
- Moved documentation about auth-types. (r64b3c4006702)
2012-10-16 19:47:10 +02:00
Thomas Fargeix 963872b401 French doc: Add 'class' option to allow/deny channel.
(r3a1f9e484676)
2012-10-16 16:21:57 +02:00
Bram Matthys 734c3c8cdc Added last donator before rc1 2012-10-16 18:49:21 +02:00
Bram Matthys 5a27a51a42 - Remove wircd.def, needs to be re-generated almost each build anyway.. 2012-10-16 18:44:20 +02:00
Bram Matthys d66a4dc14b update e-mail address 2012-10-16 16:12:12 +02:00
Bram Matthys 65b56f0b55 - Removed unreal32docs.es.html (outdated since 2006-12-22),
unreal32docs.gr.html (outdated since 2006-12-02), and
  unreal32docs.nl.html (outdated since 2009-01-18, possibly 2007-07-12).
  These translations are out of date for many years and are causing
  problems for the people who are reading this out of date information.
  If you want to update these translations, or (maybe better) redo
  the translation of unreal32docs in these languages, then send an
  e-mail to syzop@unrealircd.com.
  Note that for all these languages we have had people in the past
  offering to help out, but in the end we never heard back from them,
  so please ONLY contact us if you: 1) are serious, and 2) have
  sufficient time available to work on this project.
  That said, users in your language will greatly appreciate your work!
  Of course, if you want to translate documents in any other language
  then you are welcome to contact us as well.
2012-10-16 16:05:54 +02:00
Bram Matthys 8db9f96bb0 - Bump version number in all translated docs as well (did not change
the 'last update' date, though).
2012-10-16 15:27:04 +02:00
Bram Matthys f70a201715 - Update version to 3.2.10-rc1 2012-10-16 15:25:04 +02:00
Bram Matthys 3fdaf585a0 Added release notes 2012-10-16 15:00:14 +02:00
Bram Matthys 4c30008313 - Windows: fix MOTD file always showing a date of 1/1/1970, reported
by maxarturo (#4102).
2012-10-16 11:33:27 +02:00
Bram Matthys 451dca4522 - 2012-10-15 21:26:27 +02:00
Bram Matthys b600dffdc8 - Added auth method 'sslclientcertfp' which provides an alternative
method to authenticate users with SSL client certificates based
  on SHA256 fingerprints. This can be used instead of the already
  existing 'sslclientcert' so you don't have to use an external file.
  One way to get the SHA256 fingerprint would be:
  openssl x509 -in name-of-pem-file.pem -sha256 -noout -fingerprint
  Suggested and patch supplied by Jobe (#4019).
- Added documentation on the new sslclientcertfp
- Moved documentation on authentication types to one place and refer
  to it from each section (oper::password, vhost::password,
  link::password-receive, etc).
2012-10-15 21:25:38 +02:00
Thomas Fargeix 55a15008f4 French doc: Added set::options::disable-cap (r5066) 2012-10-15 17:54:36 +02:00
Thomas Fargeix 317daa7b79 French doc: use of iso-8859-1 encoding and accents. 2012-10-15 17:52:19 +02:00
Bram Matthys eb12f79ba3 - Added set::options::disable-cap, which can be used to disable the
new CAP support (#4104).
2012-10-15 15:29:52 +02:00
Bram Matthys 96eb692cc6 various win32 fixes:
- Disable USE_POLL on Windows, since it doesn't work with XP and has
  no advantage anyway. Reported by nenolod (#4129).
- Various updates to makefile.win32 and .iss file, found during
  building new versions of zlib, openssl, and curl.
2012-10-15 15:01:35 +02:00
Bram Matthys f1c5f88539 - Upgraded to c-ares 1.9.1. Updated configure & other files. 2012-10-14 12:13:53 +02:00
Bram Matthys e81cf14707 - Fix bug where recursive includes would hang the IRCd, patch from
binki with some minor modifications, reported by warg (#3919).
2012-10-14 11:47:26 +02:00
Bram Matthys 906814a31d - Use poll() in the remote includes functions when USE_POLL is
defined (#4091).
2012-10-14 11:23:14 +02:00
Bram Matthys 3e9d300086 - Add 'class' option to allow/deny channel so you can allow/deny
users based on their class. Patch from fspijkerman (#4125).
2012-10-06 12:48:21 +02:00
Bram Matthys 2c4c190c39 ? 2012-10-06 11:59:09 +02:00
Bram Matthys 7fb0fa1620 - Disable sending of UHNAMES when HTM (High Traffic Mode) is ON,
suggested by driew (#3900).
2012-10-06 11:57:55 +02:00
Bram Matthys aa15c4bfe7 - Disable sending of UHNAMES when HTM (High Traffic Mode) is ON,
suggested by driew (#3900).
2012-10-06 11:55:17 +02:00
Serkan Sepetci f38e3382cc Updated unreal32docs.tr documentation 2012-08-25 18:19:06 +03:00
Thomas Fargeix 3f84b46420 Updated French documentation :
- optional oper::require-modes (r5047)
- hiddenhost-prefix clarification (r5049)
- /silence (r5050)
- some typos
2012-08-23 18:13:28 +02:00
Bram Matthys a292196590 - Remove old reference to networks/ directory from Windows installer 2012-08-17 13:10:15 +02:00
Bram Matthys 2429ad557b - Added missing Mod_Header to m_sasl.c 2012-08-17 13:09:19 +02:00
Bram Matthys 1418ea873b - Install server.*.pem files, patch from katsklaw (#3988).
- The ./Config script will now ask whether to generate an SSL
  certificate when it does not exist (defaults to Yes), instead of
  always generating one.
2012-08-17 12:32:06 +02:00
Bram Matthys 74d519323f a bigger scratch buffer makes me sleep at night ;) 2012-08-17 10:55:40 +02:00
Bram Matthys b8a13305d3 - Show "Ping timeout: XYZ seconds" instead of just "Ping timeout".
Patch from darkex (#3960).
2012-08-17 10:52:40 +02:00
Bram Matthys 97909a4ac0 - Add /SILENCE to HTML documentation (reported by Severus_Snape in
#4072, patch from warg).
2012-08-17 10:45:19 +02:00
Bram Matthys 9e03c16e3a - Clarify that hiddenhost-prefix must be the same on linked servers for
bans to function properly (#4090, patch from warg, reported in #4043
  by maxb).
2012-08-17 10:40:23 +02:00
Bram Matthys d57f3c63cc Changes for #4008 patch. 2012-08-17 10:32:31 +02:00
Nathan Phillip Brink 14315463d1 Add optional oper::require-modes setting to the oper block. (#4008 by katsklaw)
Any attempt to /OPER by someone who doesn't have one of the listed
usermodes is rejected. This can be used to restrict oper blocks to
registered nicks (+r) or secure clients (SSL, +z).
2011-07-13 22:36:04 -04:00
AngryWolf 2d01d8a942 Translated doc changes up to Mon May 07 16:51:03 2012 +0200 (3 months ago). 2012-08-15 17:41:43 +02:00
AngryWolf c279572f22 Translated doc changes up to Sun Jan 22 16:32:28 2012 +0100 (6 months ago). 2012-08-15 10:17:10 +02:00
AngryWolf 91ed924134 Translated doc changes up to Sun Dec 25 13:15:49 2011 +0100 (7 months ago). 2012-08-15 01:13:55 +02:00
Bram Matthys 15667266ab - Module coders: added HOOKTYPE_AWAY (sptr, away-reason). 2012-07-10 16:15:14 +02:00
Bram Matthys 8b8490feb7 - Win32 installer: Latest InnoSetup no longer supports Windows 95/98,
so update Minversion to make the .iss compile.
2012-06-24 16:07:14 +02:00
Bram Matthys 1f8ba91b69 - Win32 installer (SSL): Uncheck 'create certificate' checkbox when
server.cert.pem exists, and check it if the file doesn't exist.
  You can still change the setting, just the default is correct now.
  The code for this was already there but was not working correctly
  causing users to go through the generation process upon each install.
2012-06-24 16:05:07 +02:00
Serkan Sepetci eb392387e7 set::sasl-server setting in the unreal32docs.tr.html documentation. 2012-06-12 01:18:14 +03:00
Thomas Fargeix 1eb1d1da5f - set::sasl-server setting in the documentation. (r5037)
- Fixing various typos.
2012-05-12 01:14:32 +02:00
Bram Matthys 3d8fd3f4be - Changed numeric 307 (RPL_WHOISREGNICK) to 'is identified for this nick',
reported by fbi (#3399).
2012-05-07 17:14:03 +02:00
Bram Matthys 982803a6b8 - SASL now needs to be enabled explicitly by setting a set::sasl-server.
If this is not set, then SASL is off and not advertised.
  If the specified server is not connected, then SASL is off as well.
  This prevents unnecessary delay (and the inability for some clients to
  get online) when SASL is not in use or when the SASL server is down.
2012-05-07 16:51:03 +02:00
Bram Matthys 4207b5e60f - Fixed another SASL crash bug. Always use HookAddEx, not HookAdd!
Crash occured after the first quit of a user after a REHASH.
  Reported by Dave (#4108).
2012-05-07 12:07:43 +02:00
Bram Matthys d439c8906b complete the previous patch (MLOCK).. mostly just bringing it up to date & code-style 2012-05-04 13:05:08 +02:00
William Pitcock 5360e2ffa5 - Add support for server-enforced mode locks (MLOCK).
This allows the IRCd to enforce MLOCKs that are set by services, which
  eliminates clashes between users setting modes and services enforcing
  it's mlock on channels. (#3055)
2012-05-04 12:47:59 +02:00
Bram Matthys 9d6e386f97 - Fix bug caused by new I/O engine (both with and without USE_POLL):
queued data on the receive queue (eg: due to fake lag) was not processed
  unless we got new data from the client.
  Now, better document this. Also, avoid calling dbuf_put with 0 length.
2012-05-02 19:20:52 +02:00
Bram Matthys 3f3b8975e0 - Moved sendto_connectnotice, and thus the call to HOOKTYPE_LOCAL_CONNECT,
so it gets called after the broadcast of NICK to other servers.
2012-05-01 12:10:14 +02:00
Bram Matthys aa206f667f Update donators 2012-04-28 16:00:25 +02:00
Serkan Sepetci 00ce957812 Remove old no-stealth, show-connect-info added. 2012-04-20 00:39:56 +03:00
Thomas Fargeix 2570955e4a - Remove old no-stealth directive from documentation (r5025) 2012-04-14 12:43:46 +02:00
William Pitcock adcb462788 - If set::options::dont-resolve is enabled, then use only the IP information
from a WEBIRC message, reported by Ismat (#4103).
2012-04-09 10:54:17 +02:00
William Pitcock 3563c26a93 - Add support for account-notify client capability (#4098). This capability
can be used to request passive notifications for accountname changes.
2012-04-09 10:48:51 +02:00
Bram Matthys 309dac4f2b - Added 'away-notify' client capability, which informs the client of any AWAY state changes of users on the same channel. Patch from nenolod (#4097). 2012-04-09 10:35:17 +02:00
Bram Matthys 3271ec3a23 - Remove old no-stealth configuration directive from documentation,
reported by katsklaw, patch from warg (#4036).
2012-04-09 10:25:53 +02:00
Bram Matthys 3d728f5f2e - Print out a warning when we can't write to a log file. When booting this
goes to the boot screen. When we are already booted it's sent to all
  IRCOps with a limit of max. 1 message per 5 minutes.
- Refuse to boot when we can't write to any log file.
2012-04-05 21:47:15 +02:00
Bram Matthys 374b79c084 - Win32 compile fix (nenolod) 2012-04-05 21:01:19 +02:00
William Pitcock ad2c969084 Fix Windows build. 2012-03-29 20:05:20 -05:00
Bram Matthys edcadc6c58 - Fix win32 installer: apparently it sometimes complained about not having
- the Visual C++ 2008 redistributable package installed when this was not true.
2012-03-30 20:02:32 +02:00
Bram Matthys 3ada59bc60 - Poll I/O engine: get_client_by_pollfd() may return -1 when there's a race
condition. Don't abort, instead just skip those clients.
  This fixes a crash I had on /SQUIT.
2012-03-26 11:16:10 +02:00
Bram Matthys 46372dc475 - Split up PROTOCTL line, since with the addition of ESVID we exceeded
MAXPARA when using ZIP links.
  This caused an odd charset warning upon link.
2012-03-26 11:08:19 +02:00
Bram Matthys a8000c2efb - Some more SASL fixes, and more... 2012-03-26 10:37:40 +02:00
Bram Matthys 04b68513f8 - Some more SASL fixes 2012-03-25 19:54:56 +02:00
Bram Matthys 40004ef1b3 - Tweak SASL code to conform to current coding style. 2012-03-25 12:32:41 +02:00
Bram Matthys 66b3a7fe6b - Fix crash in AUTHENTICATE (SASL commit from an hour or so ago). 2012-03-25 12:30:51 +02:00
Bram Matthys e88b6477bd Some really minor SASL tweaks 2012-03-25 10:24:40 +02:00
Bram Matthys 61610fe763 - Added support for SASL, patch from nenolod (#4079). 2012-03-25 10:15:28 +02:00
Bram Matthys 1e152a07c0 - Fix for speed optimization a few lines up, was accidentally using ident
username (which might have been 'unknown') instead of effective username.
2012-03-23 20:30:36 +01:00
Serkan Sepetci e40164dcf4 updated again in some places missing. 2012-03-21 14:02:54 +02:00
Serkan Sepetci bfdc7bae73 Updated doc/example.tr.conf - translated by Diablo 2012-03-10 02:32:27 +02:00
Thomas Fargeix 56c263269c - Add set::ping-cookie to French doc (r4995)
- some typos corrections.
2012-03-06 17:50:54 +01:00
Nathan Phillip Brink aa5fe1514d - Call m_cap_Init() when m_cap is loaded through commands.so. Reported by nenolod. 2012-03-06 06:16:53 +00:00
Serkan Sepetci d4d5d46822 Add Bantype ~a documentation and Add usermod +I and remote whois command documentation. 2012-03-06 02:14:55 +02:00
Nathan Phillip Brink 24f2f3b17e merge 2012-03-01 05:27:17 +00:00
Nathan Phillip Brink 72b36e893b - Minor documentation typos, thanks warg (#4094). 2012-03-01 05:12:52 +00:00
Nathan Phillip Brink 4640b4c9ca - Minor documentation typos, thanks warg (#4094). 2012-03-01 05:10:14 +00:00
Bram Matthys 1a76eb59e5 - Speed optimization: First, moved a large part of vsendto_prefix_one into
vmakebuf_local_withprefix. Then use this new function - which creates the
  buffer-to-be-sent - at the top of functions like sendto_channel_butserv
  and sendto_common_channels and send the prepared buffer in the loop that
  comes after it. This means we only prepare the buffer once and then send
  it many times, rather than both building and sending it XYZ times.
  Benchmarking connect-join-quit of 10k clients:
  100 users per channel: no noticeable speed improvement
  1000 users per channel: 18% faster
  10000 users in one channel: 50% faster
  As you can see, unfortunately, for a typical irc network there isn't much
  speed improvement. However, if you have a couple of 500+ user channels or
  get attacked by clones then you may see some improvement in speed and/or lower
  CPU usage.
2012-02-27 15:20:07 +01:00
Bram Matthys 245dea0a70 last change to poll patch for the day.. fixing my own fix ;) 2012-02-26 18:47:33 +01:00
Bram Matthys d1ad60990f changelog entry for all previous commits:
- UnrealIRCd now supports poll() instead of select().
  There are some minor speed benefits if you have more than 1K or 2K
  clients, however the main noticeable difference is that on Linux you can
  now easily enter a higher maximum connection count than 1024 in ./Config,
  without having to edit system header files.
  Of course, you still need to be allowed to use the # of sockets (type
  'ulimit -n' on the shell).
  Support for this is experimental at this stage, but enabled by default
  so it can receive all the testing it deserves. If all goes well, it will
  be the default for 3.2.10.
  Stress testing is very much welcomed!
2012-02-26 18:40:12 +01:00
Bram Matthys 8dd4160c78 make c-ares use 100% poll. and make sure we never deal with negative fds. 2012-02-26 18:25:49 +01:00
Bram Matthys 722064b6f7 Some more changes and fixes regarding poll patch:
* use get_client_by_pollfd() function instead of pollfd_to_client[]
  directly, so we can easily find and debug any mistakes.
* add some commenting
* add extra debugging and core dumping if fd or slot values are out of bounds
* fix race condition in read_authports() where send_authports() 2 lines up
  could have closed the socket, resulting in a read from fd -1.
  NOTE: I've updated the select (non-poll) code as well, should be harmless.
2012-02-26 16:16:06 +01:00
Bram Matthys 02ae61dd29 regarding poll patch:
* move all (re-)initalization to reset_pollfd(), i'm
much more comfortable with that as it aids debugging a lot.
* add parenthesis.

update my own fd check code for poll support
2012-02-26 15:43:02 +01:00
Bram Matthys 5dd1454489 - Added patch from Adam for poll() support (#1245). 2012-02-26 15:28:29 +01:00
Bram Matthys 9c12b0e896 - Even when 'M' was listed in set::oper-only-stats you could still do a
'/STATS m'. Unlike other stats characters, case insensitivity was not
  checked for this one. Reported by and patch from Apocalypse (#4086).
2012-02-26 10:29:20 +01:00
Bram Matthys 719c0f73ae - Moved nospoof to config file, suggested by and patch from nenolod (#4078).
This means ping cookies are now controlled by set::ping-cookie [yes|no].
  The default is 'yes' (enabled).
2012-02-26 10:22:19 +01:00
Bram Matthys c46024fa2d - Make the accept code check if the fd is within bounds instead of relying
on OpenFiles to be correct. This fixes a crash when f.e. 3rd party modules
  have files open but don't increase OpenFiles. Might also fix a curl crash,
  though nobody ever reported one.
2012-02-26 10:09:25 +01:00
Bram Matthys 2e2eea8146 - Added doc/example.es.conf, translated by Severus_Snape. 2012-02-08 18:44:37 +01:00
Bram Matthys 42a30007e7 Donators 2012-02-08 18:16:33 +01:00
Thomas Fargeix 61a94fb5bd - Add usermod +I and remote whois command documentation. (r4988)
- Get rid of networks/ references. (r4990)
2012-01-25 21:04:09 +01:00
Bram Matthys 7ad515fb38 - Get rid of networks/ directory, and all references to it. Suggested by
katsklaw and others (#4056).
2012-01-22 17:09:10 +01:00
Bram Matthys 60bad142e0 - Added remove_oper_modes(), which works just like remove_oper_snomasks(),
and ensures that the user does not have any ircop-only user modes after
  de-opering. This (only) fixes the just added +I umode case, but could
  also prevent future bugs.
2012-01-22 16:52:28 +01:00
Bram Matthys c597c90f4a - New user mode +I (IRCOp only) which hides idle times to other users,
suggested and patch supplied by Nath & binki (#3953).
2012-01-22 16:32:28 +01:00
Bram Matthys b9137af15c - Advertise 'tls' (STARTTLS) capability in CAP. Patch from nenolod (#4081). 2012-01-22 16:03:30 +01:00
Bram Matthys 2df00337d4 - Fix issue with CAP & NOSPOOF. Patch from nenolod (#4077). 2012-01-22 16:01:00 +01:00
Bram Matthys d530dbd43d - Add CAP support. Currently implemented are: multi-prefix (NAMESX), and
userhost-in-names (UHNAMES). Patch from nenotopia (#4018, #4066)
2012-01-20 21:25:59 +01:00
Thomas Fargeix 2b0d66498d - Add Bantype ~a documentation.
- Fix the snomask example.
2012-01-19 19:37:55 +01:00
Nathan Phillip Brink d8a6b6e512 Run ./autogen.sh per 6518968ca480. 2012-01-03 05:50:38 +00:00
Bram Matthys acc011337a - Ditch vsyslog() as it's only a waste of CPU, inspired by #4065. 2012-01-02 22:46:18 +01:00
Nathan Phillip Brink d9e83f70e3 - Fix misuse of stdarg.h macros when calling vsyslog() (#4065 by Jimini). 2012-01-02 20:20:07 +00:00
Bram Matthys 1adc59893d heh ;) 2011-12-28 18:48:46 +01:00
Bram Matthys 9ae963e1fe - Make default service stamp 0 (zero) again, instead of '*' which was
introduced by ESVID changes a few days ago. This makes anope happy,
  and also means nothing will change in a non-ESVID scenario.
2011-12-28 18:39:43 +01:00
Nathan Phillip Brink 23516d8e99 - Enforce matching of unrealircd version and PACKAGE_VERSION macros (#4014).
Now the UNREAL_VERSION_GENERATION, UNREAL_VERSION_MAJOR,
UNREAL_VERSION_MINOR, and UNREAL_VERSION_SUFFIX macros are
autogenerated from PACKAGE_VERSION.
2011-12-26 17:23:36 +00:00
Bram Matthys 9ed1e4fa02 - Throw up an error if a password in the configuration file is too long
(max 48 characters), reported by JasonTik, based on patch from
  WolfSage (#3223).
2011-12-25 16:58:18 +01:00
Bram Matthys 82f9cf54bb extban ~a = also allowed for invex 2011-12-25 16:42:17 +01:00
Bram Matthys 83527ba76d compile fix for just-checked-in patches. 2011-12-25 16:28:58 +01:00
Bram Matthys 3b6bbdc038 - Updated extended ban documentation in help.conf and unreal32docs:
new bantype ~a, and some text about extended bans & invex (+I).
2011-12-25 16:22:07 +01:00
Bram Matthys c1af7ca274 - Added extended ban ~a:<account name> which matches users who are logged
in to services with that account name. This works only on services that
  support ESVID. Patch from nenotopia (#3966).
2011-12-25 14:40:33 +01:00
Bram Matthys d512f79a6a - Show account name in /WHOIS, for ESVID-capable services packages, patch from nenotopia (#3966). 2011-12-25 14:29:03 +01:00
Bram Matthys d272d2d6a0 - Services coders: Added support for ESVID. Instead of a number you can
now store a string (of max NICKLEN size) as service stamp. See
  protoctl.txt and serverprotocol.html in doc/technical for more
  information.
  Patch from nenotopia (#3966).
2011-12-25 14:26:53 +01:00
Bram Matthys e8244902f8 - Tweak: send actual channel name and not user supplied channel in KICK, reported and patch by Stealth (#3298). 2011-12-25 14:06:19 +01:00
Bram Matthys 316828edf8 - Config parser failed to check for invalid set::ssl options, reported and patch by fbi (#4035). 2011-12-25 13:20:19 +01:00
Bram Matthys aa0af2ddd2 - Fix small error in oper block documentation, reported by Stealth (#2318). 2011-12-25 13:15:49 +01:00
Bram Matthys 0e4d604c04 - Added patch from nenotopia to use more modern LUSERS numerics (#3967). 2011-12-25 12:55:02 +01:00
Nathan Phillip Brink 5a57a8f496 - Include CMDS=STARTTLS in ISUPPORT/numeric 005 to let clients discover STARTTLS support through VERSION, before or after registration (#4064). 2011-12-20 22:27:16 +00:00
Nathan Phillip Brink 2ffa9a174f - Fix version string in configure.ac. 2011-11-14 03:40:27 +00:00
Nathan Phillip Brink 0ff0b04a56 - Fix compilation issues with bundled tre and ./curlinstall-ed curl caused by over-generic regexes. Reported by warg. 2011-11-12 06:58:34 +00:00
Nathan Phillip Brink 9299b781f6 - Attempt to make Makefile rules more parallelism friendly. 2011-11-10 05:37:16 +00:00
Nathan Phillip Brink b753c28bec - Fix compilation issue when disabling stacked extbans. https://bugs.gentoo.org/389949 2011-11-09 17:21:39 +00:00
Nathan Phillip Brink cc5e2bc414 - Automatically regenerate Makefile if ./config.status --recheck was run. 2011-11-09 17:16:55 +00:00
Bram Matthys ad81d0b049 Added tag unreal3_2_9 for changeset 9a1784c699d1 2011-11-05 10:24:37 +01:00
Bram Matthys 5298c36d64 some last-minute text fixes 2011-11-05 10:11:58 +01:00
Bram Matthys 095a52e630 Update wircd.def for 3.2.9 release 2011-11-05 10:05:25 +01:00
Bram Matthys 6ab9d06a6c Manually update UNREAL_VERSION_TIME to 201144 2011-11-05 09:58:17 +01:00
Bram Matthys d19bce6c42 ** 3.2.9 release ** 2011-11-05 09:54:12 +01:00
Bram Matthys 9b3e65c6e7 - Updated credits (supporters, coders) 2011-09-11 18:13:35 +02:00
Bram Matthys 879d32064c - Updated credits (donations) 2011-09-07 10:06:27 +02:00
Thomas Fargeix (Alef) deb00ef4ef Add a files {} block to example.fr.conf 2011-07-21 14:12:55 +02:00
Bram Matthys e1574bf1e3 Added tag unreal3_2_9rc2 for changeset 3ada0f7b2163 2011-07-18 21:08:33 +02:00
Bram Matthys 4008e3745f Update curl-ca-bundle.crt & prepare for retag 2011-07-18 21:08:17 +02:00
Bram Matthys ee447742c8 Removed tag unreal3_2_9rc2 2011-07-18 21:07:31 +02:00
Bram Matthys 618da4ab5e Added tag unreal3_2_9rc2 for changeset fa478da23916 2011-07-18 13:00:42 +02:00
Bram Matthys df6e300ecd ** 3.2.9-rc2 release ** + last-minute fix #0004028 2011-07-18 12:55:06 +02:00
Bram Matthys aa6ed2085f - Another fix-for-fix of zip links buffering from a few weeks ago.
Reported by fbi (#0004030).
2011-07-18 12:15:41 +02:00
Bram Matthys 24e14eb26f credits: undo irc2 donation 2011-07-17 23:33:05 +02:00
Nathan Phillip Brink 087b306429 Add a self-documented and commented files {} block to example.conf. 2011-07-13 23:32:05 -04:00
Nathan Phillip Brink 1157b77e5e Add .hgignore, removing replaced .cvsignore files. 2011-07-13 13:11:57 -04:00
Bram Matthys 59fbe14175 - Remove temporary message (Unreal3.2.1) regarding cloaking modules. 2011-07-06 23:41:34 +02:00
Nathan Phillip Brink 4d9482c92b Fix Changes to refer to help.fr.conf instead of help.ft.conf. 2011-07-05 00:23:42 -04:00
Nathan Phillip Brink 371ae17e1c - Add missing quotation to doc/help.ft.conf (#4026 by MewT). 2011-07-05 00:21:58 -04:00
Nathan Phillip Brink f8fbe5e4f0 - Support installing the ircd binary for people who set --with-spath=<dpath>/bin/ircd. 2011-07-05 00:15:23 -04:00
Serkan Sepetci 2cbb7a4a00 Translation of the title. 2011-06-16 00:33:27 +03:00
Serkan Sepetci 8e72ba376b Translation of the title. 2011-06-16 00:29:48 +03:00
Bram Matthys cb8e31af86 update credit in Changelog 2011-06-10 20:34:04 +02:00
Nathan Phillip Brink 7ddb51c09f Clean up Donation file, fixing URL, extraneous apostrophe, and donate URL. 2011-06-08 22:13:36 -04:00
Bram Matthys 5eb7e9eead - Added aliases/atheme.conf, provided by katsklaw and CuleX (#0003990). 2011-06-06 18:14:50 +02:00
Nathan Phillip Brink 80806af8bd Check that the automatically-generated cloak keys fit unrealircd's own criteria before printing them out. (#4017) 2011-06-05 23:03:36 -04:00
Nathan Phillip Brink ceba1d07c6 - Fix compile failure introduced by fdb2fd1f8963 when zip links are disabled. 2011-06-05 23:02:13 -04:00
Bram Matthys 143858cc5b - Zip links: once a link was zipped, the error message when closing the
connection was never actually sent (due to buffering). Hence, things like
  the /SQUIT reason was never seen on the other side (just 'server closed
  the connection'). This has now been fixed.
2011-06-05 21:36:53 +02:00
Bram Matthys 08871c1e6a - The unreal32docs translations in Greek, Spanish and Dutch are marked as out of date.
- CRLF conversion of unreal32docs.gr.html
2011-06-05 21:30:32 +02:00
Bram Matthys 1470edd1f7 - Updated doc/compiling_win32.txt a bit. 2011-06-02 18:17:56 +02:00
Bram Matthys c92df824a5 Add .h/.bat/.iss to LF<->CRLF conversion list 2011-06-01 11:35:03 +02:00
Bram Matthys 8ef4e93bc1 Added .hgeol to take care of LF<->CRLF conversion (for our poor windows users)... 2011-06-01 11:30:32 +02:00
Bram Matthys 57fcb26be2 test ;) 2011-06-01 11:25:16 +02:00
Bram Matthys 5dda9cb79d Convert line endings of doc/example.tr.conf from CRLF to LF. 2011-06-01 11:03:31 +02:00
Bram Matthys 3fe7955615 test ;) 2011-05-30 12:28:39 +02:00
Bram Matthys f72574ae22 Moved from cvs to hg: add big changelog item & update references to CVS. 2011-05-30 10:13:19 +02:00
Nathan Phillip Brink 29b319cb99 Merge all changes into default. 2011-05-23 22:39:05 -04:00
cvs2hg 10d8bd7ba8 convert CVS tags 2011-05-23 04:43:46 +02:00
autoupdate cfec5bb08a Automatic weekly version update: 201120 2011-05-15 23:00:03 +00:00
autoupdate 7ed4b2cac9 Automatic weekly version update: 201119 2011-05-08 23:00:02 +00:00
diablo 9a7ec92d48 Add id attribute for referring to set::anti-spam-quit-message-time. 2011-05-08 21:34:40 +00:00
bock a70e82c418 changes of 18 week 2011-05-07 17:49:16 +00:00
alef 1b60d7c763 Translation of the title. 2011-05-06 15:31:37 +00:00
alef b3398d709c Add id attribute for referring to set::anti-spam-quit-message-time. 2011-05-06 15:27:55 +00:00
autoupdate 1a1cb25c98 Automatic weekly version update: 201118 2011-05-01 23:00:02 +00:00
binki 5a847b490c Add id attribute for referring to set::anti-spam-quit-message-time. 2011-05-01 20:44:59 +00:00
autoupdate aac9b61d9c Automatic weekly version update: 201117 2011-04-24 23:00:02 +00:00
autoupdate 49ad2b388d Automatic weekly version update: 201116 2011-04-17 23:00:02 +00:00
autoupdate b0914f9a44 Automatic weekly version update: 201115 2011-04-10 23:00:03 +00:00
autoupdate 2f0cab1ac1 Automatic weekly version update: 201114 2011-04-03 23:00:02 +00:00
Bram Matthys 64776556a9 - Module coders: Added HOOKTYPE_HANDSHAKE which is called before the client
handshake, IOTW: as soon as the connection is established. This can be
  used to do things prior to accepting any commands, such as sending some text.
2011-04-03 07:45:57 +00:00
autoupdate 71102b1d41 Automatic weekly version update: 201113 2011-03-27 23:00:03 +00:00
autoupdate 0db5417b83 Automatic weekly version update: 201112 2011-03-21 00:00:03 +00:00
binki 34cab7caff - Fix empty/nonexistent short MOTD being shown instead of the full MOTD on user registration. Thanks WakiMiko (#4011). 2011-03-14 19:03:41 +00:00
binki 938b591358 Remove unused local variable. 2011-03-14 18:51:23 +00:00
autoupdate 8a39b26e56 Automatic weekly version update: 201111 2011-03-14 00:00:02 +00:00
autoupdate 26847b8692 Automatic weekly version update: 201110 2011-03-07 00:00:02 +00:00
alef 3acf7b2faa - Fix documentation about channel mode +t and halfops. 2011-02-28 22:32:33 +00:00
diablo 16bd395632 Fix documentation about channel mode +t and halfops. 2011-02-28 21:46:53 +00:00
autoupdate 39dd1eaca8 Automatic weekly version update: 201109 2011-02-28 00:00:02 +00:00
bock 17b5922cea Update of last update docs (about chanmode +t). 2011-02-26 22:13:48 +00:00
binki a5e7197daf - Fix documentation about channel mode +t and halfops, thanks warg (#4007). 2011-02-23 01:24:26 +00:00
autoupdate f1d9606b4f Automatic weekly version update: 201108 2011-02-21 00:00:02 +00:00
autoupdate c68c7918dd Automatic weekly version update: 201107 2011-02-14 00:00:03 +00:00
autoupdate 5a71b706c3 Automatic weekly version update: 201106 2011-02-07 00:00:03 +00:00
autoupdate abae8bad84 Automatic weekly version update: 201105 2011-01-31 00:00:02 +00:00
autoupdate 627bfd9cf7 Automatic weekly version update: 201104 2011-01-24 00:00:02 +00:00
autoupdate e67274fc69 Automatic weekly version update: 201103 2011-01-17 00:00:02 +00:00
autoupdate 7e24744601 Automatic weekly version update: 201102 2011-01-10 00:00:02 +00:00
Bram Matthys cf1a52a927 - Bump server protocol version to 2310, due to the various changes and so
you can use deny link { } blocks if you want to deny older versions than
  this release.
2011-01-08 10:51:58 +00:00
autoupdate 5268649357 Automatic weekly version update: 201101 2011-01-03 00:00:03 +00:00
binki 6c69183d5a - Fix pointer handling in remote MOTD code, fixing a crash on REHASH
reported by goldenwolf (#3992).
2010-12-30 21:05:18 +00:00
binki 6baddddc8e - Fix set::ssl::options::no-starttls not being recognized. 2010-12-29 18:38:28 +00:00
Bram Matthys 0414d09660 - Updated credits a bit (#3980). 2010-12-29 17:10:48 +00:00
Bram Matthys 2883eea6c7 - Update doc/compiling_win32.txt a bit (#3975). 2010-12-29 16:48:34 +00:00
Bram Matthys bcb97efdb3 - Windows installer: if an SSL certificate already exists, then don't check
the 'create SSL certificate' by default. Patch from goldenwolf (#3965).
2010-12-29 16:29:19 +00:00
autoupdate 751584bbcb Automatic weekly version update: 201052 2010-12-27 00:00:03 +00:00
angrywolf 4927abe5b4 Changes from 2010/09/15 to 2010/12/15. 2010-12-26 12:55:40 +00:00
binki 48bc3b2f74 - Fix remote MOTDs for URLs whose path components contain
subdirectories, in the process much simplifying my remote MOTD
  code. Reported by goldenwolf (#3986).
2010-12-25 15:33:01 +00:00
binki 91c3283cfa - Fix bundled TRE compilation error on OpenBSD with pkg-config-0.21
where pkg-config can't find 'tre.pc'. Reported by CuleX. (#3982)
  Also properly escape the sed expression used in the pkg-config call.
2010-12-24 02:29:53 +00:00
diablo f6c843d38f Last unreal32docs.tr.html update 2010-12-22 22:05:38 +00:00
binki df37d83f8b - Fix invalid use of 'wc -l' when detecting the AsynchDNS feature of
libcurl which breaks compilation on FreeBSD; instead use 'grep
  -q'. Reported by Jobe (#3981), solution proposed by satmd.
2010-12-22 16:02:39 +00:00
binki 9f710925f8 - Fix missing #include <stdint.h>. Fixes compile error on OpenBSD
reported by CuleX (#3977).
2010-12-21 04:53:05 +00:00
binki 7041116ec0 - Fix typo 'alias::spampfilter' in German docs, reported by seraphim (#3978). 2010-12-20 05:24:41 +00:00
autoupdate 311efc56b4 Automatic weekly version update: 201051 2010-12-20 00:00:03 +00:00
Bram Matthys 9c30f7b685 - Fixed bug with curl not finding libcares, reported by katslaw.
- Added workaround for 'curl-config' depending on 'bc'.
2010-12-19 16:38:07 +00:00
binki b994ad33bd - Enable parallel building of modules. 2010-12-15 18:45:31 +00:00
cvs2hg 6e837537a8 fixup commit for tag 'unreal3_2_9rc1' 2010-12-15 15:00:54 +00:00
Bram Matthys 4cb6ed06c8 credit 2010-12-15 15:00:53 +00:00
Bram Matthys 84007d4c16 nothing happened, no.. really ;) 2010-12-15 14:59:21 +00:00
Bram Matthys 0c8f523e1d ** 3.2.9-rc1 release ** 2010-12-15 12:50:48 +00:00
Bram Matthys 13a946d0e0 Update credits.. (hosters) 2010-12-15 12:25:23 +00:00
binki 805f1988ec Clarify wording in Makefile.in about how to set the FD_SETSIZE macro using the Makefile variables. 2010-12-15 01:31:16 +00:00
autoupdate aa0f869213 Automatic weekly version update: 201050 2010-12-13 00:00:03 +00:00
Bram Matthys cb60ae3442 compile fix 2010-12-12 21:13:43 +00:00
Bram Matthys dcb34f43f6 make it compile 2010-12-12 17:19:43 +00:00
Bram Matthys d603a53e4e - Win32: show missing /INFO in GUI 2010-12-12 17:08:23 +00:00
Bram Matthys baa7d5f4f3 -include win32/ares/setup.h, -HAVE_INET_PTON etc... ..... ... a r g h 2010-12-12 16:44:27 +00:00
Bram Matthys ef64b411c8 ... 2010-12-12 16:39:12 +00:00
Bram Matthys 1309531df8 forgot to remove an #ifndef 2010-12-12 16:37:34 +00:00
Bram Matthys 58260b3917 Major win32 build system cleanup:
- Win32: Attempt to move to 100% winsock2 (the include, to be precise),
  this means includes have to be in a very particular order (!)
- Win32: #define _WIN32_WINNT 0x0501 and force our own inet_ntop/pton,
  otherwise you get an ntop runtime error on XP and earlier.
- Win32: Get rid of c-ares includes and library in our tree, and use the
  DLL instead of static LIB, just like we do for ssl and zlib.
- Win32: Get rid of TRE lib and includes
- Win32: reorder includes to fix winsock errors with curl
2010-12-12 16:32:55 +00:00
Bram Matthys b8026bbc50 - Fix return values in src/auth.c on Win32. 2010-12-08 10:13:14 +00:00
Bram Matthys 6dab6c11b1 - Error on zero sendq in class::sendq, reported by jonbeard. 2010-12-06 12:47:25 +00:00
autoupdate f6e12c316b Automatic weekly version update: 201049 2010-12-06 00:00:03 +00:00
Bram Matthys 59e35dc066 +Better document 'sslclientcert' in the Oper Block documentation. 2010-12-05 16:49:42 +00:00
Bram Matthys 7f8009c4c1 corrected a typo in changelog x months ago 2010-12-05 16:31:33 +00:00
Bram Matthys 08d8c52885 minor edits 2010-12-05 15:08:24 +00:00
Bram Matthys e821be52d3 - Added release notes. 2010-12-05 14:51:14 +00:00
autoupdate 202318cb12 Automatic weekly version update: 201048 2010-11-29 00:00:03 +00:00
bock b36a576461 Update docs for Russian before 3.2.9 2010-11-22 19:56:12 +00:00
Bram Matthys 5a3e54c385 - Fixed Windows compile problem with current CVS due to m_issecure,
reported and fix provided by therock247uk (#3970).
2010-11-22 10:55:34 +00:00
Bram Matthys 292b6ae15c Bring donations up to date. Last donator: 2010-10-21 2010-11-22 10:51:44 +00:00
diablo 0ae8d7c075 - Added <REHASH -global> & <CHANMODE +Z> & <EXCEPT BAN> & <EXCEPT TKL> & <ALLOW-INSANE-BAN> 2010-11-22 02:24:26 +00:00
autoupdate 7c86c421c9 Automatic weekly version update: 201047 2010-11-22 00:00:02 +00:00
diablo e5502a3ca0 Added '/REHASH -global' command which will rehash all servers on the network 2010-11-21 23:50:43 +00:00
alef 196a4e323e Typo 2010-11-20 23:00:19 +00:00
alef f56639bff0 - mode +Z
- /rehash -global
- except tkl::type all & difference between except tkl and except ban
- set::options::allow-insane-bans
2010-11-20 21:19:23 +00:00
angrywolf c13ab74144 Doc changes from 2009/05/13 to 2009/12/22. 2010-11-20 11:50:46 +00:00
angrywolf c46205e79d Doc changes from 2009/12/06 to 2010/09/15. 2010-11-20 11:04:11 +00:00
Bram Matthys a4f69bee1a typo 2010-11-17 20:39:50 +00:00
Bram Matthys 07b2fbb35e - Windows: When trying to load a module (DLL) windows can give us the
mysterious error 'The specified module could not be found' even though the
  file exists. This usually means that it depends on another DLL, but
  apparently Microsoft decided not to mention that in the error message.
  We now append some small text when such an error happens, saying that it
  could be because of a missing dependency. Reported by Phil.
2010-11-17 18:25:56 +00:00
Bram Matthys 28c19679b2 changelog edit: one SHUN less ;P 2010-11-16 19:40:08 +00:00
Bram Matthys 643355b387 - Added set::options::allow-insane-bans which makes it possible to set
really broad bans such as *@*.xx. Needless to say this can be very
  dangerous. Reported and patch provided by Stealth (#0003963).
2010-11-15 16:23:02 +00:00
Bram Matthys 779444448c - Clarified the difference between 'except ban' (which exempts from KLINE
and ZLINE) and 'except tkl' (which can exempt from GLINE, GZLINE, SHUN,
  QLINE, GQLINE and SHUN). Reported by Digerati (#0002535).
- Added except tkl::type 'all', which exempts from all TKL types (except
  KLINE).
2010-11-15 16:14:20 +00:00
Bram Matthys d107a4a6a8 - Added '/REHASH -global' command which will rehash all servers on the
network. You can also specify options like '/REHASH -global -motd' to
  rehash only the MOTD/RULES/etc. Just like /REHASH <servername> this is a
  NetAdmin-only command. This command is fully backwards compatible with
  older UnrealIRCd version in the sense that it will also REHASH old
  Unreal's. Suggested by 'P' in #0001522.
2010-11-15 15:50:52 +00:00
Bram Matthys d5167c69ad update credits/bugid of install as service vs enccert 2010-11-15 14:11:46 +00:00
Bram Matthys da0d21fe57 - Little tweak to +Z: when the last insecure user parts and the channel is
set +Z (secure), the parting user saw the MODE too, which was silly.
  Reported by Robby22 (#0003720).
2010-11-15 14:00:57 +00:00
Bram Matthys 372fbe7af9 - Win32 installer: Make it so a user can no longer accidentally check both
'install as service' and 'encrypt SSL certificate', as they are
  incompatible (a service cannot ask a user to enter a password).
- Win32 installer: Fixed long outstanding problem with some Vista / Windows 7
  installations, which has to do with file permissions of the Unreal3.2
  folder. Symptoms were error messages such as:
  Unable to create file 'tmp/10D9D743.commands.dll': Permission denied
  But also failing to create SSL certificates, nothing being logged, etc.
  This is now fixed by setting write access on the Unreal3.2 folder to the
  user running the install, unless the user chooses not to use this new
  option (it can be unchecked), in which case the user is warned that he
  should take care of this himself.
  Reported by various persons, special thanks to Bock and goldenwolf for
  helping us to track down this issue (#0003943).
2010-11-15 13:41:04 +00:00
autoupdate d53d7156ae Automatic weekly version update: 201046 2010-11-15 00:00:02 +00:00
Bram Matthys 64dcfe6073 Forgot to remove a FIXME comment which was already fixed ;) 2010-11-13 19:26:59 +00:00
Bram Matthys a2137bda71 local chanmode, chan mode +Z, operoverride with key 'override', sorting HELPOP CHMODES, fishy timestamps:
- Some small updates to the extended channel mode system: it now has minimal
  support for 'local channel modes'. This is really only meant for channel
  mode +Z (upcase z), see next.
- Added Channel Mode Z which indicates if a channel is 'secure' or not.
  This mode works in conjunction with +z (lower case z).
  If +z is set ('only secure users may join'), then the IRCd scans to see
  if everyone in the channel is connected through SSL. If so, then the
  channel is set +Z as well ('channel is secure').
  Whenever an insecure user manages to join, the channel is -Z. And whenever
  all insecure users leave, the channel is set +Z.
  The 'insecure user being present in a +z channel' can be because:
  - An IRCOp joined the channel, and he's not secure
  - When servers link together and a user on the other side is not secure
    This only happens on net merge (equal time stamp).
    On different time stamp, we still kick insecure users on the new side.
  - At the time when +z is set, there are insecure users present.
  This feature was implemented after a heavy discussion in bug #3720 by fez
  and others, and was suggested by Stealth.
  Tech note: +Z/-Z is handled locally by each server. Any attempt to
  remotely set +Z/-Z (eg: by services) will be ignored.
- As mentioned above, +z can now be set even if any insecure users are
  present. Previously, this was not permitted. Now, as soon as the last
  non-SSL user leaves, the channel will be set +Z.
- An oper not connected through SSL previously had to /INVITE himself
  to a channel and then /JOIN the channel with the key 'override'.
  This 'override' key is no longer required, a simple JOIN will suffice.
- Sorted channel modes in /HELPOP ?CHMODES
- Re-enabled 'fishy timestamp' errors in MODE. For some reason this was
  commented out, even though the (more annoying and less useful) code in
  JOIN was enabled so that did not make a lot of sense. It also now logs to
  ircd.log (or whatever you configure). This enables people to easier find
  the cause of any timestamp issues (which usually is badly coded services).
2010-11-13 19:23:05 +00:00
autoupdate 6e8b77aa86 Automatic weekly version update: 201045 2010-11-08 00:00:04 +00:00
autoupdate a741b152c3 Automatic weekly version update: 201044 2010-11-01 00:00:04 +00:00
binki 4237409031 - And another m_nopost makefile.win32 fix. 2010-10-27 20:32:15 +00:00
diablo 820fae9054 *** empty log message *** 2010-10-26 18:35:28 +00:00
autoupdate 78952aed40 Automatic weekly version update: 201043 2010-10-24 23:00:03 +00:00
Bram Matthys 81dd721ed1 - Updated doc/compiling_win32.txt with current free MS SDK information,
patch from goldenwolf.
2010-10-24 12:43:21 +00:00
alef ba262c4a56 - fix typos 2010-10-22 21:16:17 +00:00
Bram Matthys 028f6ff83b - Fix missing OperOverride notices for +u and +L if not chanowner, reported
by Mareo (#0003358), partial patch from DJ.
2010-10-22 13:08:25 +00:00
Bram Matthys 73c2f8174d (interim) fix, not worth mentioning 2010-10-22 13:08:05 +00:00
autoupdate e089980d2a Automatic weekly version update: 201042 2010-10-17 23:00:02 +00:00
alef b09466c8ee - fix some accents issues
- connection -> connexion where needed
2010-10-17 10:20:28 +00:00
alef 639fc51d59 Translate spamfilter 'warn' action. 2010-10-17 09:48:04 +00:00
Bram Matthys 77bc5ab29d - Document spamfilter 'warn' action in unreal32docs. 2010-10-16 09:14:43 +00:00
diablo 6933245997 *** empty log message *** 2010-10-12 19:05:32 +00:00
autoupdate 4a66f658f7 Automatic weekly version update: 201041 2010-10-10 23:00:02 +00:00
alef 685517eadb Mistranslation of +G mode + set::allowed-nickchars 2010-10-09 20:18:48 +00:00
autoupdate 4cb8605d95 Automatic weekly version update: 201040 2010-10-03 23:00:02 +00:00
binki e95ef070d1 - Add m_nopost to makefile.win32 in the hopes that it may work (#3961). 2010-09-30 22:50:30 +00:00
diablo 64ef568a48 *** empty log message *** 2010-09-30 20:44:58 +00:00
autoupdate 492e30676c Automatic weekly version update: 201039 2010-09-26 23:00:02 +00:00
Bram Matthys ed8b8da20b - Fixed braindamage in stacked bans. 2010-09-25 11:21:37 +00:00
binki 08f86d9b2e - Always display the real host of successful OPERing up. Reported by Josh. (#3950) 2010-09-20 12:30:59 +00:00
binki 574ebf6eed - Fix ordering of `9. FAQ'' and `10. Modules'' in HTML docs. 2010-09-20 00:33:31 +00:00
autoupdate b19cb1dcae Automatic weekly version update: 201038 2010-09-19 23:00:02 +00:00
Bram Matthys bf40486341 reworded... as it was already showing the proper error in many cases... but not all :p 2010-09-19 14:34:20 +00:00
Bram Matthys 63dd326113 - SSL errors are now more descriptive. 'Underlying syscall error' is now
gone and shows the actual (surprise!) underlying syscall error.
  Reported by vonitsanet, patch from ohnobinki (#0003157).
2010-09-19 14:26:47 +00:00
Bram Matthys 17c97c8442 - Fixed notices to opers about server delinks not being broadcasted to all
other servers if they were on SSL links. Reported by chotaire (#0003957).
2010-09-19 14:10:43 +00:00
alef ef7a94164c Typo 2010-09-19 13:58:54 +00:00
alef 2d11cf09b9 Updating to r1.1.2.144.2.147 (Modules section, m_nopost + set options, badword block)
+ various html markup fixes
+ some mistranslation
2010-09-19 13:56:18 +00:00
alef 6ee99cde84 Mistranslation 2010-09-19 12:41:43 +00:00
Bram Matthys d717e0fc62 Clarify relationship between nopost and NOSPOOF (in Changelog) 2010-09-19 11:33:13 +00:00
binki a87f26d911 Add missing </b>. 2010-09-15 22:43:51 +00:00
binki 1a01e725c7 - Add the m_nopost module written by syzop and compile it into
commands.so. This module was written to help IRCd maintainers deal
  with some sort of ``XPS'' attack in which javascript-initiated HTTP
  POST form submissions were able to act as dummy IRC bots. These
  simple bots were the cause of much spam. (#3893)
- Add a modules section to the documentation. This was created to put
  all documentation specific to the m_post module in one, easy to find
  place. The documentation on m_post is likely incomplete, however.
2010-09-15 16:22:25 +00:00
binki 1605db3ced - Document the badword block more explicitly and clearly. (#3959) 2010-09-15 16:09:34 +00:00
autoupdate ae6415afa0 Automatic weekly version update: 201037 2010-09-12 23:00:03 +00:00
alef 3dc7f640b8 Updating example.fr.conf - new translator 2010-09-11 20:52:34 +00:00
alef 0bbd7a58cf Update of help.fr.conf - new translator 2010-09-11 18:25:29 +00:00
alef 7bb6728af4 rehash -flags and translation for "garbage collection" 2010-09-11 18:23:29 +00:00
alef c305b860b5 Fixing typos. 2010-09-11 15:30:20 +00:00
Bram Matthys bcd89f7db8 - Reverted an IPv6/Config fix I did on July 17. Reported by chotaire (#3958). 2010-09-08 15:17:46 +00:00
alef fface35935 Major docs update, new translator. 2010-09-08 13:23:50 +00:00
Bram Matthys b83f096e48 - Fixed another compile problem on QNX, reported by chotaire (#3955 too).
- Fixed incorrect messages regarding clock going backwards on QNX 6 and
  later, reported by chotaire (#0003956).
2010-09-08 11:07:22 +00:00
binki a744b9b212 - Don't use sys/errno.h, as it's not POSIX and breaks on QNX-6.5.0. (#3955) 2010-09-07 15:39:47 +00:00
autoupdate ffda323d9d Automatic weekly version update: 201036 2010-09-05 23:00:02 +00:00
diablo 27e4c6f3f7 New translator: diablo. Major update: documentation is now up to date again (week 33) 2010-08-30 09:05:01 +00:00
diablo 2c0e131dc7 changes of week 32 2010-08-30 09:03:04 +00:00
autoupdate 8895f1e60d Automatic weekly version update: 201035 2010-08-29 23:00:03 +00:00
binki 9643607334 - Fix segfault by checking if RESTRICT_USERMODES is NULL in the code for bug #3329. 2010-08-25 04:36:28 +00:00
binki c144008217 - Fix /msg IRC WHOIS response for persons with secure connections. (#3947) 2010-08-24 16:46:29 +00:00
autoupdate 35ec730f8b Automatic weekly version update: 201034 2010-08-22 23:00:02 +00:00
Bram Matthys 9a5c536cce hm :) 2010-08-20 12:16:40 +00:00
Bram Matthys da48cfc039 *** empty log message *** 2010-08-20 12:15:27 +00:00
binki 36c0bdde2e - Remove snomasks upon deopering when it seems like the user shouldn't have snomasks. (#3329) 2010-08-20 11:15:22 +00:00
binki 9f823be20b - Warn users against running UnrealIRCd as root without setting IRC_USER. (#3053 reported by Stealth) 2010-08-20 11:10:00 +00:00
binki 964bb656c7 - Prepend a `0' to the begining of --with-permission, working around a Mac OS X bug and hiding the fact that chmod()'s params are octal from users. (#3189) 2010-08-19 00:58:24 +00:00
bock 96da66cf7a Updated documentation to actual state. 2010-08-18 22:18:57 +00:00
binki d46bdd4841 - Update .cvsignore for Mac OSX's *.dSYM files. 2010-08-17 16:50:42 +00:00
binki e473fbc44c - Actually initialize m_starttls when it's included into commands.so. 2010-08-16 17:00:42 +00:00
Bram Matthys 6dcb276f8d - Get rid of any setsockopt(IPV6_V6ONLY) errors in ircd.log (#3944).
(oh and yeah I removed the prototype of our_crc32 which is totally unrelated...)
2010-08-16 09:31:04 +00:00
binki d012c49f1b - Install ircdcron scripts. (#2620)
- Autogenerate ircdcron/ircd.cron based on ./configure settings.
2010-08-16 02:29:34 +00:00
binki 7272715cec - Upgrade to tre-0.8.0, adding hack similar to the one for c-ares to ensure that the bundled tre is compiled against even when a system libtre is installed. (#3916) 2010-08-16 02:09:51 +00:00
autoupdate 30c5236f25 Automatic weekly version update: 201033 2010-08-15 23:00:02 +00:00
binki 2d10ab189d - IPv6 clones detection support (#2321). allow::ipv6-clone-mask determines the number of bits used when comparing two IPv6 addresses to determine if allow::maxperip is exceeded. This allows an admin to recognize that most IPv6 blocks are allocated to individuals, who might each get a /64 IPv6 block. set::default-ipv6-clone-mask defaults to 64 and provides default value for the allow blocks. 2010-08-15 04:44:16 +00:00
Bram Matthys fae4629c46 un-hi 2010-08-14 18:35:32 +00:00
Bram Matthys a71a1a394f teh hi 2010-08-14 18:35:05 +00:00
Bram Matthys 75d4fecb4b ..This is actually an update of earlier code from CVS, but now it works ok:..
- Added support for "stacked" extbans. Put simply this allows extban combinations
  such as ~q:~c:#test to only silence users on #test, for example. This feature
  is enabled by default, but can be disabled during ./Config -advanced.
  This feature was suggested by Shining Phoenix (#0003193), was then coded
  by aquanight for U3.3, and later on backported and partially redone by Syzop.
  Module coders:
  In an extban ~x:~y:something where we call ~x the 1st, and ~y the 2nd extban:
  Since stacked extbans only makes sense where the 1st one is an action
  extended ban like ~q/~n/~j, most modules won't have to be changed, as
  their extban never gets extended (just like ~c:~q: makes no sense).
  However, you may still want to indicate in some cases that the extban your
  module introduces also shouldn't be used as 2nd extban.
  For example with a textban extban ~T it makes no sense to have ~n:~T.
  The module can indicate this by setting EXTBOPT_NOSTACKCHILD in
  the ExtbanInfo struct used by ExtbanAdd().
  For completeness I note that action modifier extbans are indicated by
  EXTBOPT_ACTMODIFIER. However, note that we currently assume all such
  extbans use the extban_is_ok_nuh_extban and extban_conv_param_nuh_or_extban
  functions. If you don't use these and use EXTBOPT_ACTMODIFIER, then things
  will go wrong with regards to stack-counting.
  Module coders should also note that stacked extbans are not available if
  DISABLE_STACKED_EXTBANS is defined.
- Added extended ban ~R:<nick>, which only matches if <nick> is a registered
  user (has identified to services). This is really only useful in ban
  exemptions, like: +e ~R:Nick would allow Nick to go through all bans if he
  has identified to NickServ. This is often safer than using +e n!u@h.
- Added Extended Invex. This is very much like extended bans, in fact it
  supports some of the same flags. Syntax: +I ~character:mask
  Currently supported are: ~c (channel), ~r (realname) and ~R (registered).
  This can be useful when setting a channel invite only (+i) and then
  setting invite exceptions such as +I ~c:#chan (or even ~c:+#chan), while
  still being able to ban users.
  Because action modifiers (~q/~n/~j) make no sense here, extended invex
  stacking (+I ~a:~b:c) makes no sense either, and is not supported.
  Suggested by DanPMK (#0002817), parts based on patch from ohnobinki.
  Module coders: set EXTBOPT_INVEX in the ExtbanInfo struct used by
  ExtbanAdd() to indicate that your extban may also be used in +I.
- Invex (+I) now always checks cloaked hosts as well. Just like with bans,
  it checks them also when the user is not currently cloaked (eg: did -x, or
  is currently using some VHOST).
- Fixed client desynch caused by (un)banning, reported by Sephiroth (#2837).
2010-08-14 18:27:19 +00:00
binki a0b4fe90ec - Add a missing double-quote to help.conf. 2010-08-13 14:29:55 +00:00
Bram Matthys 0b54bd259e Usage example of +b ~j (from aquanight) 2010-08-13 13:11:28 +00:00
Bram Matthys d8b2069bce - Make extended bans documentation more clear by splitting the extbans in
two groups: one that specifies ban actions (~q/~n/~j) and one that
  introduces new criteria (~c/~r). Also added documentation for ~R which
  does not exist yet, but will soon...
2010-08-13 11:44:24 +00:00
Bram Matthys aaa52b3443 - Uniform naming for 'stacked extbans' in Changelog/etc. 2010-08-13 10:18:27 +00:00
binki f584875279 - Remove extras/c-ares before each time c-ares is compiled. 2010-08-11 03:53:46 +00:00
bock 14472ae09b release update 2010-08-10 20:54:27 +00:00
bock bea978de96 deleted "kline" from logging 2010-08-10 20:34:42 +00:00
autoupdate 58151df3b7 Automatic weekly version update: 201032 2010-08-08 23:00:02 +00:00
binki a6c7bb1043 - Force compilation with bundled c-ares to statically link using more sed hackery in configure.ac. 2010-08-06 03:59:57 +00:00
binki 901b9c272a Make that c-ares-1.6.0. 2010-08-04 01:38:30 +00:00
binki e540730751 - Upgraded c-ares to 1.7.3. API seems compatible with c-ares-1.6.3. (#3932) 2010-08-04 01:36:11 +00:00
binki 0a34af8720 - Define intptr_t in win32's setup.h. (#3939) 2010-08-04 00:03:40 +00:00
binki 94c2b58366 - Fix a few compiler warnings with some double-casting and another const. (#3939) 2010-08-03 23:57:44 +00:00
binki a1d076367e - Fix src/Makefile's lack of depencencies for module.c, related to #3938. 2010-08-03 17:06:05 +00:00
autoupdate eb1f41bd9c Automatic weekly version update: 201031 2010-08-01 23:00:03 +00:00
autoupdate 27c437c953 Automatic weekly version update: 201030 2010-07-25 23:00:02 +00:00
binki 889dd73f15 I forgot a bug number again; extban ~j is for (#3192). 2010-07-22 12:33:09 +00:00
binki 46668768cf - Add an extban of the schema +b ~j:*diff | less@* which _only_ prevents a user from joining a channel. 2010-07-22 12:32:06 +00:00
Bram Matthys 85904c2277 - Fix the detection for curl-without-c-ares a little (#0003940). ** fun.. autoconf 2.61** 2010-07-22 09:59:36 +00:00
Bram Matthys d0cb4dc5f5 Really really minor tweaks ;p 2010-07-22 09:41:56 +00:00
binki c4abef39cd - Remove browser compatibility listing from HTML docs.
- Added information about ``oper::password::auth-type sslclientcert'' and the same for link::password-receive::auth-type. (#3133)
- A little bit more of interlinking and using id="" instead of <a  name="" />
2010-07-21 23:19:53 +00:00
binki 7a3bf15558 - Now define _SOLARIS, USE_LIBCURL, and ZIP_LINKS in setup.h instead of the Makefiles. This means better automatic rebuilds if the latter settings change. 2010-07-20 16:09:10 +00:00
autoupdate 48b76358f4 Automatic weekly version update: 201029 2010-07-18 23:00:03 +00:00
Bram Matthys 48b270347a Signing of comments, removal of comment, not worth mentioning in Changelog 2010-07-17 11:19:48 +00:00
Bram Matthys 7c23a98292 - Same for IPv6 2010-07-17 11:15:37 +00:00
Bram Matthys 8b6967d8b9 - Fixed similar bug like nospoof with ./Config, but now with prefixaq. 2010-07-17 11:05:15 +00:00
Bram Matthys c40fc340b8 - Initialize ARG parameter properly in ./Config, otherwise everything fails. 2010-07-17 10:58:09 +00:00
Bram Matthys 35c30baace - The configure.ac change silently changed the nospoof parameter in
./configure. This meant that the answer to NOSPOOF in ./Config was ignored
  and it was always enabled.
2010-07-17 10:38:36 +00:00
binki b2e4cf82f8 - Support compiling with a bundled c-ares again, the hacky way. (#3931) 2010-07-16 13:14:44 +00:00
binki 45aeb1e61d - Give more clear error to users who use make custommodule'' without MODULEFILE. (#3935) 2010-07-16 12:04:34 +00:00
Bram Matthys 2510f2c94b - Added some checks in ./Config which (often) ensures that the self-compiled
curl version is new enough and is not using a c-ares which is binary
  incompatible. If the self-compiled curl version is (too) outdated, then we
  now suggest to rename it and have the installer re-download and compile
  it automatically. This avoids some potential crashes.
2010-07-16 10:55:45 +00:00
binki 4eff1e8493 - Remove extraneous `I' from configure.ac, run ./autogen.sh. (#3930) 2010-07-15 21:33:54 +00:00
Bram Matthys c9acb9d1c7 - The patch from #0003888 made ./Config favor the curl in /usr, even if it
was not compiled with c-ares, which is clearly a bad idea as then the
  entire IRCd can hang for several seconds or more...
  We now check if they support asynch DNS, and skip them if they don't.
2010-07-15 11:01:34 +00:00
Bram Matthys 6b3132e0c6 This file is out of date ;) 2010-07-14 18:54:52 +00:00
Bram Matthys c514288a0a - Fixed some odd behavior with SVSMODE and +z/-z, reported by TehRes (#0003498), fixed a strange SVSMODE +d <non-number> bug where it would act as a +x too. 2010-07-14 18:54:38 +00:00
Bram Matthys f4630c24e0 - Updated doc/coding-guidelines 2010-07-14 09:26:17 +00:00
binki f72ad19637 - helpop documentation for stacked extbans. 2010-07-13 22:14:45 +00:00
binki d09b68a942 - Prevent stacked bans (like +b ~q:~q:~n:~c:#chanel) from crashing unrealircd due to over-recycling a static buffer. Discovered by syzop. 2010-07-13 14:24:08 +00:00
binki c2279a9298 Added bug reference to changes for #0003918. 2010-07-12 05:02:10 +00:00
binki 4cc0244c58 - Remove remaining nameser.h references from Makfiles. 2010-07-12 01:25:14 +00:00
autoupdate 4238fff401 Automatic weekly version update: 201028 2010-07-11 23:00:02 +00:00
binki d421282cf5 - Remove include/nameser.h and reference to nameser.h from s_bsd.c. The associated functionality has been provided by c-ares for a long time. 2010-07-10 13:52:52 +00:00
binki 649818d4ad - Fix references to motd and friends in src/win32. 2010-07-09 17:46:38 +00:00
binki ac81a9cd9a - Fix references in src/win32 to aMotd to now be to aMotdFile. 2010-07-09 17:25:33 +00:00
binki bd636c4e6d - Attempt to make up for Windows not having mode_t and not complying to POSIX. 2010-07-09 15:40:58 +00:00
binki 7dbf154d04 - Move configure.ac to the project's root.
- Separate m4 macros into *.m4 files (it is much easier to run aclocal now).
- Remove unused DOMAINNAME macro and --with-hostname= options as the DOMAINNAME macro isn't used anywheres and its use shouldn't be encouraged.
- autogen.sh to bootstrap the buildsystem. We now maintain setup.h with autoheader.
- --disable-blah now does the opposite of --enable-blah. The same for --with-blah and --without-blah. (This makes Gentoo users happier).
2010-07-08 02:51:43 +00:00
autoupdate 5cf8ee21a0 Automatic weekly version update: 201027 2010-07-04 23:00:03 +00:00
binki 2a6a4b31ff - Fixed a few trivial compilation warnings. 2010-06-29 03:00:34 +00:00
autoupdate c3ea2568b2 Automatic weekly version update: 201026 2010-06-27 23:00:02 +00:00
binki 7fdd8cce96 - Fixed desynchronized prototype. 2010-06-26 04:36:56 +00:00
binki 11d84d8534 - Replaced some coders@lists.unrealircd.org references with bugs.unrealircd.org.
- Update/add some .cvsignore files.
2010-06-21 21:57:42 +00:00
Bram Matthys 1e5e60d635 - Fixed race condition / reference count issue where an outgoing server connect
would cause the IRCd to crash. Reported by Monk (#0003913).
2010-06-21 12:27:45 +00:00
Bram Matthys a523cec997 blah 2010-06-21 09:27:34 +00:00
autoupdate 2980fe011f Automatic weekly version update: 201025 2010-06-20 23:00:02 +00:00
binki 8ee34484b4 - When removing a SHUN, check if users who were blocked by this SHUN are still blocked by another SHUN. Previously, if multiple shuns covered a single user, removing one of these shuns would mark the user as un-SHUN-ed. (#0003906) 2010-06-20 06:28:38 +00:00
binki c1ca937861 Updated the correct Changes file. 2010-06-19 22:01:39 +00:00
binki aa0c706bff - Handle bad flags in set::ssl::options better (#0003896). 2010-06-19 22:00:05 +00:00
binki 2828e7f8b2 - Rename configure.in to configure.ac and modernize AC_INIT. 2010-06-19 03:22:51 +00:00
binki 9faa5a6d2b - Fix files::shortmotd to by accepted by unrealircd like the docs say it is.
- Fix remote includes download handling which I broke for remote includes ;-).
- Recursively add more consts.
2010-06-17 02:41:43 +00:00
binki d7835d959e - Fix typo 2010-06-16 14:14:08 +00:00
Bram Matthys 6e34938c59 - Forgot to commit the REMOTEINC_SPECIALCACHE stuff to config.h which means
it wasn't actually enabled until now...
2010-06-16 11:47:42 +00:00
binki 06e807130c - Added error message for unknown directives in the "files" block
- Remote MOTD support. Not adequately tested. Required restructuring of the asynchronous download callback and handler.
- Added some consts throughout url.c, etc.
- Fix segfault where the an include directive specifies a URL and cURL follows redirects, resulting in a different resultant URL. The remote includes code would look for the an include block using the resultant URL and assume that it would be found. The new code searches differently, has new checks, and ignores the resultant URL.
- Removed duplicated m_motd() and friends that were both in modules and s_serv.c. The copies in s_serv.c (core) were overriding the in-module functions.
2010-06-16 05:44:15 +00:00
binki fc1e848a2a - Throw out old USE_POLL code which 1. has no buildsystem support and 2. has comments which claim it doesn't work.
- Removed extraneous apostrophe from a module loader error message.
2010-06-15 02:37:50 +00:00
autoupdate 5cf1dc144a Automatic weekly version update: 201024 2010-06-13 23:00:02 +00:00
autoupdate 304e3ad0d4 Automatic weekly version update: 201023 2010-06-06 23:00:03 +00:00
autoupdate 6ab3862520 Automatic weekly version update: 201022 2010-05-30 23:00:02 +00:00
binki 9e64a0121c - More strict sockhost (hostmask) checking in m_nick.c:_register_user(). Fixed some bad string handling as well. See comments in bug (#0003907). 2010-05-28 21:31:36 +00:00
binki f1ec26a07c - Partially fixed bug where IPv4 addresses were randomly mishandled by the cgiirc code, resulting in the sockhost/hostmask being set to something like ::ffff:127.0.0.1, which confused the s2s protocol. Reported by tabrisnet (#0003907). Also, reject incorrectly formed hostnames from WEBIRC command. 2010-05-28 04:30:22 +00:00
Bram Matthys 625102cacd - Fixed bug in CVS where the ban exempt (+e) handling was reversed: if a
non-matching +e was present, one could walk through bans. Reported by
  tabrisnet (#0003909). Bug was caused by chained/stacked extbans.
2010-05-24 12:01:07 +00:00
Bram Matthys a9e547614b send people to the web, and scratch stskeeps ;p 2010-05-24 11:58:55 +00:00
autoupdate a4fc53fc3a Automatic weekly version update: 201021 2010-05-23 23:00:03 +00:00
Bram Matthys ab7957a6a8 docs: credit changes (permanent), the rest: interim credit changes -- needs to be finalized before 3.2.9 release, as always... 2010-05-17 10:01:08 +00:00
binki f4e4df6d6a - ./Config now remembers extra/custom ./configure parameters. 2010-05-17 04:36:43 +00:00
binki df9d102d98 - Added chmode +r to HTML documentation 2010-05-17 03:33:41 +00:00
binki 9f6492169b - SVSMODE now triggers HOOKTYPE_UMODE_CHANGE and HOOKTYPE_REMOTE_CHANMODE. 2010-05-17 02:41:43 +00:00
autoupdate fe33820f02 Automatic weekly version update: 201020 2010-05-16 23:00:11 +00:00
binki 1f89c2f6df Removed ugly ``files {} got initialized!'' message. 2010-05-15 21:23:29 +00:00
binki 38b7350f7c Remove m_addline from commands.so 2010-05-15 21:17:57 +00:00
autoupdate 80c21aac2e Automatic weekly version update: 201019 2010-05-09 23:00:08 +00:00
binki 046eb67100 - Fix -DDEFAULT_PERMISSIONS=0 support. Previously, support.c:unreal_copyfile() would create files with no permissions, breaking loadmodule. (#0003905) 2010-05-05 23:59:27 +00:00
binki 23f72648c4 - Clarify/expand alias block documentation, especially for alias::type=command; (#0003902) 2010-05-05 22:50:31 +00:00
binki c0790e90de - Remove the Compile as hub/leaf'' concept as I'm quite sure this doesn't actually do anything (#0003891) 2010-05-05 22:39:18 +00:00
binki 5f05b3c80b - Update Unreal.nfo with information about new support network setup (#0003904) 2010-05-05 21:55:13 +00:00
autoupdate 0c939fa194 Automatic weekly version update: 201018 2010-05-02 23:00:10 +00:00
autoupdate 24d0463d4c Automatic weekly version update: 201017 2010-04-25 23:00:15 +00:00
Bram Matthys 8e26c4b540 linking bug & ipv6 thing (the latter is completely untested):
- IPv6: it seems some recent Linux dists decided to make IPv6 sockets
  IPv6-only, instead of accepting both IPv4&IPv6 on them like until now.
  FreeBSD (and other *BSD's) already did that move a few years back,
  requiring server admins to sysctl.
  We now make use of a new option to explicitly disable "IPv6-only".
  This should work fine on Linux.
  Whether it provides a complete solution for FreeBSD, I don't know, testing
  is welcome! In theory setting net.inet6.ip6.v6only to 0 should no longer
  be needed, but you might still need to enable ipv6_ipv4mapping.
- Fix stupid issue where current CVS would no longer link TO an earlier
  Unreal server (eg: outgoing connect to a 3.2.8 hub). Reported by ohnobinki
  (#0003901).
2010-04-25 19:14:55 +00:00
autoupdate cd3dd80c54 Automatic weekly version update: 201016 2010-04-18 23:00:17 +00:00
autoupdate e3be08d5d1 Automatic weekly version update: 201014 2010-04-04 23:00:21 +00:00
autoupdate 84a19ab091 Automatic weekly version update: 201013 2010-03-28 23:00:16 +00:00
autoupdate e422f24d52 Automatic weekly version update: 201012 2010-03-22 00:00:10 +00:00
autoupdate a7ea2f49b3 Automatic weekly version update: 201011 2010-03-15 00:00:04 +00:00
Bram Matthys b245850fb0 update donators. 2010-03-08 16:24:22 +00:00
autoupdate 86d8796b77 Automatic weekly version update: 201010 2010-03-08 00:00:12 +00:00
Bram Matthys e47baea5da - Made '/REHASH -motd' really rehash *all* MOTD, OPERMOTD, BOTMOTD and RULES
files. Reported by bitmaster (#0003894).
2010-03-03 13:56:28 +00:00
autoupdate 982e5a82c0 Automatic weekly version update: 201009 2010-03-01 12:14:53 +00:00
Bram Matthys 1af446e5a3 clarify UNREAL_VERSION_TIME: the week # is ISO week. 2010-03-01 12:08:38 +00:00
Bram Matthys fb68c66f31 - Updated ./Config description for NOSPOOF, it already said it protects
against HTTP POST proxies, now added some extra text to say it also
  protects against the Firefox XPS IRC Attack. Also made NOSPOOF enabled by
  default on *NIX (this was already the case on Windows).
- Updated ./Config description for DPATH. Seems quite some people answer
  this question wrong, and when that happens, you only get some obscure
  error when running './unreal start'.
- Fixed 'unreal' script to give a better error if it cannot find the IRCd
  binary.
2010-03-01 11:49:30 +00:00
Bram Matthys a41384b37f - Removed old dgets() and crc32 function (code cleanup) 2010-02-13 13:09:46 +00:00
Bram Matthys ef745b3423 - We now no longer treat \ (backslash) in *MOTD and RULES files as special.
Previously this caused some really odd behavior. Backslashes are now
  treated as-is, so no special escaping is necessary. Reported by DelGurth
  (#0003002).
- Removed old dgets() function
2010-02-13 13:07:19 +00:00
Bram Matthys d4d58c1247 - Better document /REHASH flags. No longer document some flags as they are
redundant and confusing. Also removed an old statement saying k-lines would
  be erased on rehash which is not true. Documented '/rehash -dns'.
  Reported by ohnobinki (#0003881).
2010-02-13 12:48:33 +00:00
Bram Matthys bd999808d7 - Updated pkg-config m4 macro (now 0.23) for configure, patch from ohnobinki (#0003889). 2010-02-13 11:22:53 +00:00
Bram Matthys ee078bb165 Removed old coders, pretty outdated... 2010-02-11 17:38:41 +00:00
Bram Matthys ab2776eb6b - Another c-ares fix for Solaris 10, this time it had to do with
PATH_SEPARATOR, the exact error was: error: PATH_SEPARATOR not set.
  Reported by j0inty, patch provided by ohnobinki (#0003887).
2010-02-08 17:04:42 +00:00
Bram Matthys b2332556ac - Fix for --with-system-cares, reported and patch provided by ohnobinki (#0003890). 2010-02-08 16:59:06 +00:00
Bram Matthys 3bcb2fe524 - Reverted the revert and updated one line to fix the fix. 2010-02-08 16:50:35 +00:00
Bram Matthys d794786ec0 - Patch from above is (temp.) reverted, Unreal wouldn't compile without curl. 2010-01-27 09:13:20 +00:00
Bram Matthys 8171ea4fd8 - Added patch from ohnobinki (#0003888), only slightly edited, which improves
curl detection, added checks to see if curl actually works (print out a
  clear curl error during configure, instead of getting an error during
  'make'), and we now error when using --enable-libcurl without
  --with-system-cares if the system curl depends on c-ares. This is because
  this can cause ABI incompatability between curl's c-ares and our c-ares,
  which leads to odd issues such as:
  Could not resolve host: www.example.net (Successful completion)
  And possibly other weird issues, perhaps even crashes.
2010-01-25 20:23:59 +00:00
Bram Matthys 89e70ff23f woops.. set -x ;) 2010-01-25 10:55:21 +00:00
lowdigit a19e31dbd0 update doc 2010-01-23 12:59:54 +00:00
lowdigit 75ce9d27e7 again doc update 2010-01-18 14:05:04 +00:00
lowdigit 9c22c743c6 doc update 2010-01-18 14:03:38 +00:00
lowdigit 1defbfc962 *** empty log message *** 2010-01-18 13:56:16 +00:00
lowdigit 1d79699c0d another test 2010-01-16 19:13:55 +00:00
lowdigit 341bb11423 test 2010-01-16 19:13:34 +00:00
Bram Matthys 9259ddee06 - Added set::uhnames setting which can be used to disable uhnames by setting
it to 'no', the default is 'yes' (on). Requested by Robin (#0003885) as
  UHNAMES may increase the time of the nick list being loaded from 1 to 4
  seconds when joining several channels with more than 1000 users. As this
  problem is only present on some networks, we keep UHNAMES enabled by
  default.
2010-01-12 18:30:36 +00:00
Bram Matthys 9d3c5ce8e1 - Fixed a /RESTART issue on Linux: Unreal did not properly close all file-
descriptors. Because of this, Unreal did not restart properly as you would
  get an "Address already in use" error. This only seemed to happen when
  logging to syslog, or when there was something wrong with syslogd.
  Reported by Mouse (#0003882).
2010-01-04 13:22:34 +00:00
Bram Matthys 32ab3cba8b woops.. credit ;) 2010-01-04 13:12:29 +00:00
Bram Matthys 7ad6dcd977 - Fixed a /RESTART issue on Linux: Unreal did not properly close all file-
descriptors. Because of this, Unreal did not restart properly as you would
  get an "Address already in use" error. This only seemed to happen when
  logging to syslog.
- Fixed a similar issue with syslog (and debugmode) and closing fd's as well:
  the first port we listened on would not open up, ircd did not log any error.
2010-01-04 13:11:03 +00:00
Bram Matthys 6b28bfd1b7 curl auto-installation:
- Made ./Config description about remote includes a bit more clear.
- When you now answer Yes to Remote includes in ./Config and $HOME/curl does
  not exist, it now asks you if you want to automatically download and
  install curl (which is done by ./curlinstall).
  This has been tested on Linux, further testing on f.e. FreeBSD is
  required.
2010-01-03 16:24:48 +00:00
Bram Matthys cb7c1a821b test 2010-01-01 20:23:37 +00:00
Bram Matthys e3da8c7ebe test 2010-01-01 20:22:41 +00:00
Bram Matthys 55fbab833b test 2010-01-01 20:22:23 +00:00
Bram Matthys ee2f4f5f22 empty line 2010-01-01 20:02:15 +00:00
Bram Matthys dddc8f07e4 PROTOCTL EAUTH/SERVERS/new linking protocol:
- Server protocol: added PROTOCTL EATH=servername, which allows us to
  authenticate the server very early in the handshake process. That way,
  certain commands and PROTOCTL tokens can 'trust' the server.
  See doc/technical/protoctl.txt for details.
- Server protocol: between new Unreal servers we now do the handshake a
  little bit different, so it waits with sending the SERVER command until
  the first PROTOCTL is received. Needed for next.
- Server protocol: added PROTOCTL SERVERS=1,2,3,4,etc by which a server can
  inform the other server which servers (server numeric, actually) it has
  linked. See doc/technical/protoctl.txt and next for details.
- When our server was trying to link to some server, and at the same time
  another server was also trying to link with us, this would lead to a
  server collision: the server would link (twice) ok at first, but then a
  second later or so both would quit with 'Server Exists' with quite some
  mess as a result. This isn't unique to Unreal, btw.
  This happened more often when you had a low connfreq in your link blocks
  (aka: quick reconnects), or had multiple hubs on autoconnect (with same
  connfreq), or when you (re)started all servers at the same time.
  This should now be solved by a new server handshake design, which detects
  this race condition and solves it by closing one of the two (or more)
  connections to avoid the issue.
  This also means that it should now be safe to have multiple hubs with low
  connfreq's (eg: 10s) without risking that your network falls apart.
  This new server handshake (protocol updates, etc) was actually quite some
  work, especially for something that only happened sporadically. I felt it
  was needed though, because (re)linking stability is extremely important.
  This new feature/design/fix requires extensive testing.
  This feature can be disabled by: set { new-linking-protocol 0; };
2010-01-01 19:49:06 +00:00
autoupdate 080a2d6810 Automatic weekly version update: 200952 2009-12-28 05:00:05 +00:00
stylus740 cb385bc103 changes of week52: unreal3_2_fixes doc/example.de.conf doc/unreal32docs.de.html 2009-12-27 08:48:28 +00:00
Bram Matthys feb5d81406 update unreal-notify mailinglist link (old one 404'd), add forums link. 2009-12-24 09:30:50 +00:00
Bram Matthys 0039f7db25 - Removed log target 'kline' from documentation, as it didn't do anything
(use 'tkl' instead). Reported by nephilim and Stealth (#0003849).
2009-12-22 13:49:05 +00:00
autoupdate 75685b1684 Automatic weekly version update: 200951 2009-12-21 05:00:03 +00:00
angrywolf 1eb2a21b49 Typo correction in Files Block 2009-12-15 13:04:59 +00:00
angrywolf 8f1f47aece - Added missing section 'Files block' (for some reason I missed the diff mail for it).
- Grammar correction (removed the affix from irc.unrealircd.org so it's easier to update correctly).
2009-12-15 12:59:46 +00:00
angrywolf 20c00d3697 Changes of week 50 2009-12-15 12:23:15 +00:00
autoupdate 086d464c8a Automatic weekly version update: 200950 2009-12-14 05:00:03 +00:00
stylus740 49fa3ed3d8 unreal32docs.de.html changes of week 50 2009-12-12 11:45:00 +00:00
autoupdate 8b637e344b Automatic weekly version update: 200949 2009-12-07 05:00:04 +00:00
Bram Matthys f5d9a87f08 - Use RPL_STARTTLS/ERR_STARTTLS numerics 2009-12-06 16:59:15 +00:00
Bram Matthys 5a0a71de03 - Added support for STARTTLS. This allows users to switch to SSL without
having to use a special SSL-only port, they can simply switch to SSL on
  any port. This is currently only supported by few clients (such as KVIrc 4).
  This functionality can be disabled by setting set::ssl::options::no-starttls,
  for example if you don't want to offer SSL to your users and only want it
  to be used for server to server links.
  Naturally, the IRCd must be compiled with SSL support for STARTTLS to work.
- Fixed SSL_ERROR_WANT_READ in IRCd_ssl_write()
2009-12-06 16:52:52 +00:00
Bram Matthys a5bd782cdf - Made the timesynch log output more clear and understandable.
- Added an 'UnrealIRCd started' log message on startup.
2009-12-06 16:31:42 +00:00
autoupdate 829247a272 Automatic weekly version update: 200948 2009-11-30 05:00:07 +00:00
Bram Matthys 6aab6d748d hmmm... dilemma... 2009-11-29 16:12:44 +00:00
Bram Matthys 7dee0cdcf1 - Added support for "chained" extbans. Put simply this allows extban combinations
such as ~q:~c:#test to only silence users on #test, for example. This feature
  is enabled by default, but can be disabled during ./Config -advanced. Module
  support for this feature must note the following:
  - For is_ok function, the extban can either assign extban_is_ok_nuh_extban, which
    will deal checking a chained extban (including checking for restricted extbans),
    or it can call that function from its own is_ok routine. For the latter case,
    remember to pass only the mask part of your ban format (ie, don't just pass para as
    otherwise it'll just call your is_ok again).
  - For conv_param function, the extban can either assign extban_conv_param_nuh_or_extban,
    which will automatically call conv_param for a chained extban, or pretty up a n!u@h mask.
  - For is_banned, the extban should call ban_check_mask with the mask part of the parameter.
    This will automatically call is_banned for a stacked extban, or match against a n!u@h. n!u@h
    is checked against the current user (ie, with the info in the globals ban_ip, etc), so things
    can get weird if you call this outside a normal ban check.
  Modules must keep in mind that chained extban support is not available (and neither are the three
  functions above) if DISABLE_STACKED_EXTBANS is #defined (this is controled by Config). Modules will
  not compile/load if they try to use them anyway.
  This change should not break extban modules, and should need some more extensive testing.
- Misc fix for disabling extban chains, should've done stuff in our autoconf
  stuff instead of hacking configure directly :P .
2009-11-29 12:46:29 +00:00
Bram Matthys 0ebf84d100 this is not the way it should be done... but i have no time to fix the real issue. 2009-11-29 11:56:54 +00:00
stylus740 aceb72f52e doc/unreal32docs.de.html Last Chanes of week 48 2009-11-28 18:54:48 +00:00
stylus740 a28d62c5f0 doc/unreal32docs.de.html - Changes of week 48 2009-11-28 18:49:44 +00:00
Bram Matthys 236808d8b4 - set::level-on-join now also supports voice, halfop, protect and owner.
Requested by katsklaw (#0003852). Partial patch provided by katsklaw and
  morpheus_pl.
2009-11-23 15:11:20 +00:00
Bram Matthys 9c234ffdf8 - Added special caching of remote includes. When a remote include fails to
load (for example when the webserver is down), then the most recent
  version of that remote include will be used, and the ircd will still boot
  and be able to rehash. Even though this is quite a simple feature, it
  can make a key difference when deciding to roll out remote includes on
  your network. Previously, servers would be unable to boot or rehash when
  the webserver was down, which would be a big problem (often unacceptable).
  The latest version of fetched urls are cached in the cache/ directory as
  cache/<md5 hash of url>.
  Obviously, if there's no 'latest version' and an url fails, the ircd will
  still not be able to boot. This would be the case if you added or changed
  the path of a remote include and it's trying to fetch it for the first time.
  To disable this new behavior, check out REMOTEINC_SPECIALCACHE in
  include/config.h.
2009-11-23 09:43:10 +00:00
Bram Matthys 22bf17ddc7 - When an incorrect command line argument is passed, the IRCd will no longer
boot. Previously it said 'Server not started' but started anyway.
  Reported and patch provided by ohnobinki (#0003870).
2009-11-23 08:41:53 +00:00
autoupdate 355cc16d32 Automatic weekly version update: 200947 2009-11-23 05:00:04 +00:00
Bram Matthys 2ed84ed506 - Fixed bug reported by mut80r (#0003867) where locops didn't get a
proper vhost when set::hosts::local had a 'user@host' syntax instead of
  just 'host'. Also fixed a bug with regards to +x on-oper with locops.
2009-11-22 13:34:12 +00:00
Bram Matthys e92e2c22c3 - Applied patch from ohnobinki (#0003863) which makes run-time configuration
of files (tune, pid, motd) possible.
2009-11-22 12:23:00 +00:00
Bram Matthys 51d30af3fd - Applied patch from k4be (#0003866) which introduces a new packet hook
(HOOKTYPE_PACKET). Replacing the 'text to be sent' to a client is
  supported, which allows character(set) conversion in a module.
  Note that modifying an incoming message by the hook is not supported.
2009-11-22 12:10:56 +00:00
autoupdate 945bceb218 Automatic weekly version update: 200946 2009-11-16 05:00:03 +00:00
autoupdate 169f754f01 Automatic weekly version update: 200945 2009-11-09 05:00:04 +00:00
Bram Matthys c7ea6217e5 - Fixed IPv4 ip's in link::bind-ip on IPv6 builds. This caused issues ranging
from not binding to that ip when linking, to not being able to link at
  all. Also fixed a very small memory leak upon /REHASH. Bug reported by
  Mr_Smoke (#0003858).
2009-11-04 10:46:57 +00:00
autoupdate f60c2574d3 Automatic weekly version update: 200944 2009-11-02 05:00:04 +00:00
autoupdate c6c2cf9371 Automatic weekly version update: 200943 2009-10-26 05:00:04 +00:00
autoupdate 4d79d9f5d2 Automatic weekly version update: 200942 2009-10-19 05:00:03 +00:00
autoupdate 8bf078190e Automatic weekly version update: 200941 2009-10-12 05:00:04 +00:00
autoupdate 1922d94bf9 Automatic weekly version update: 200940 2009-10-05 05:00:03 +00:00
autoupdate 4ea0a642ff Automatic weekly version update: 200939 2009-09-28 05:00:04 +00:00
autoupdate 110b0aa9ac Automatic weekly version update: 200938 2009-09-21 05:00:03 +00:00
autoupdate d9a77b8112 Automatic weekly version update: 200937 2009-09-14 05:00:03 +00:00
autoupdate c6ca269538 Automatic weekly version update: 200936 2009-09-07 05:00:03 +00:00
autoupdate 2921b50e00 Automatic weekly version update: 200935 2009-08-31 05:00:04 +00:00
Bram Matthys 125102aad7 - class name 'default' is reserved. Using it caused the ircd to crash
on-boot, reported by Dragon_Legion (#0003864).
2009-08-26 10:27:04 +00:00
autoupdate a5deb6bb23 Automatic weekly version update: 200934 2009-08-24 05:00:04 +00:00
autoupdate 6319b36e2a Automatic weekly version update: 200933 2009-08-17 05:00:03 +00:00
Bram Matthys 660f7d97c4 #3865 -- reported by fbi 2009-08-15 15:10:57 +00:00
autoupdate 7ca4d97ae9 Automatic weekly version update: 200932 2009-08-10 05:00:03 +00:00
autoupdate 4558c380c5 Automatic weekly version update: 200931 2009-08-03 05:00:03 +00:00
autoupdate fa0060ed27 Automatic weekly version update: 200930 2009-07-27 05:00:03 +00:00
autoupdate 147b5013aa Automatic weekly version update: 200929 2009-07-20 05:00:04 +00:00
autoupdate 9b7033b9fe Automatic weekly version update: 200928 2009-07-13 05:00:03 +00:00
autoupdate cd19366da1 Automatic weekly version update: 200927 2009-07-06 05:00:04 +00:00
autoupdate 57618c1c6d Automatic weekly version update: 200926 2009-06-29 05:00:04 +00:00
autoupdate 698660b485 Automatic weekly version update: 200925 2009-06-22 05:00:03 +00:00
autoupdate dc6eebbe09 Automatic weekly version update: 200924 2009-06-15 05:00:03 +00:00
Bram Matthys b070d8805c - Fixed issue where a negative time offset (either caused by ircd.tune or
timesynch) made autoconnect not work for the duration of the offset
  (eg: -60 would make autoconnect wait 60 seconds after boot, instead of
  autoconnecting almost immediately). Reported by aragon (#0003853).
2009-06-08 08:49:07 +00:00
autoupdate 69b7a3c35d Automatic weekly version update: 200923 2009-06-08 05:00:03 +00:00
autoupdate dfcdaaa152 Automatic weekly version update: 200922 2009-06-01 05:00:04 +00:00
autoupdate 3fbec6bf4e Automatic weekly version update: 200921 2009-05-25 05:00:04 +00:00
angrywolf 8ebb8dfbd6 Updated my email address. (The old one discontinued working.) 2009-05-19 04:15:50 +00:00
autoupdate 2efc764311 Automatic weekly version update: 200920 2009-05-18 05:00:04 +00:00
stylus740 ec7429fb4b doc/example.de.conf doc/unreal32docs.de.html - changes of week 20 2009-05-16 16:50:57 +00:00
Bram Matthys 6ff6367008 - Fix /VERSION output on Windows, especially for Vista and newer Windows,
patch from BuHHunyx and Bock (#0003846).
2009-05-13 13:02:57 +00:00
Bram Matthys f3733c32ca - Comitted Windows Installer fix that was put in 3.2.8.1, fixing
#0003845 and #0003809 (MS Visual Studio Redistributable package automatic
  installation).
2009-05-13 12:54:50 +00:00
Bram Matthys 66e4674f3f - Comitted windows fix that was put in 3.2.8.1 for installer 2009-05-13 12:14:45 +00:00
Bram Matthys d45a18d7b2 - Fixed crash on Linux (with a 'new' dynamic linker) when a module has
been updated and then reloaded. From now on we just copy to a tempfile,
  and never hardlink. (bug #3557).
2009-05-13 10:33:52 +00:00
Bram Matthys 5d8532eb86 /* Prevent crashes due to invalid prototype/ABI.
* And force the use of at least the version shipped with Unreal
 * (or at least one without known security issues).
 */
this text is fcked btw.. whatever...
2009-05-13 10:30:57 +00:00
Bram Matthys 5f727eec74 - Applied another patch from ohnobinki which adds --with-system-cares
(#0003847).
2009-05-13 10:28:06 +00:00
Bram Matthys 70ec1b1ef8 - Added ./configure option called --with-system-tre by which you can specify
a path to the TRE library (instead of using the TRE we ship with Unreal).
  Patch provided by ohnobinki (#0003842).
2009-05-13 09:35:44 +00:00
Bram Matthys fb60748df2 - Update some urls 2009-05-13 09:25:23 +00:00
Bram Matthys 68ec992861 - Print out an error if a user uses standard ./configure stuff instead of
./Config. Won't catch all cases, but will definitely catch most problems.
2009-05-13 09:24:30 +00:00
autoupdate 433760a916 Automatic weekly version update: 200919 2009-05-11 05:00:04 +00:00
autoupdate 891daa18b4 Automatic weekly version update: 200917 2009-04-27 05:00:04 +00:00
Bram Matthys 76c107edba changelogupdate:- Fixed crash on Linux (with a 'new' dynamic linker) when a
module has
  been updated and then reloaded. From now on we just copy to a tempfile,
  and never hardlink. (bug #???????).
2009-04-22 11:50:29 +00:00
Bram Matthys cd30253ea2 - Fixed crash on Linux when a module has been updated and then reloaded.
From now on we just copy to a tempfile, and never hardlink. (bug #???????).
2009-04-22 11:42:38 +00:00
Bram Matthys c7b782693c changelog-only: - Don't do show-connect-info on serversonly ports 2009-04-22 11:14:14 +00:00
Bram Matthys f692661583 - Don't do show-connect-info on servers-only ports 2009-04-22 11:13:21 +00:00
autoupdate e794eaa393 Automatic weekly version update: 200916 2009-04-20 05:00:05 +00:00
Bram Matthys 16d9810740 - Fixed compile issue on Solaris regarding c-ares (-lrt), reported and
test shell provided by fraggeln (#0003854).
- Improved automatic SSL detection on Solaris (/usr/sfw), reported by
  fraggeln (also #0003854).
2009-04-15 11:10:06 +00:00
Bram Matthys 762bbd407b - Fixed (serious) security issue regarding allow::options::noident,
reported by meepmeep (#0003852).
** 3.2.8.1 release **
2009-04-12 12:40:36 +00:00
autoupdate 6df508b06a Automatic weekly version update: 200914 2009-04-06 05:00:03 +00:00
autoupdate 6687c3188d Automatic weekly version update: 200913 2009-03-30 05:00:03 +00:00
autoupdate c51039b750 Automatic weekly version update: 200912 2009-03-23 05:00:03 +00:00
autoupdate c811a925a4 Automatic weekly version update: 200911 2009-03-16 05:00:03 +00:00
stylus740 8c13a60907 Changes week 11 doc/unreal32docs.de.html 2009-03-14 12:34:02 +00:00
autoupdate 6dfb1a7847 Automatic weekly version update: 200910 2009-03-09 05:00:03 +00:00
autoupdate f6e1a74fca Automatic weekly version update: 200909 2009-03-02 05:00:06 +00:00
Bram Matthys ac00905029 last-minute change before real 3.2.8 rls 2009-03-01 16:26:20 +00:00
Bram Matthys be55051f44 ** 3.2.8 release ** 2009-03-01 15:00:32 +00:00
Bram Matthys 6196abbf7b UHNAMES & WATCHOPTS, other fixes, copyright 2009-03-01 14:49:03 +00:00
Bram Matthys a0e4982335 protover 2309 = Unreal 3.2.6, 3.2.7, 3.2.8 2009-03-01 14:48:38 +00:00
Bram Matthys bd4292e301 - Updated credits (donations) 2009-02-28 15:44:59 +00:00
Bram Matthys 0ae378c5ce stskeeps did contribute to 3.2.8, not with direct commits but by me using a few
backports. However, I think it would be confusing to list him in the active
coders list... so moved to 'past unreal3.2 coders/contributors'.
2009-02-28 15:08:01 +00:00
autoupdate a094103c67 Automatic weekly version update: 200908 2009-02-23 05:00:04 +00:00
Bram Matthys de4eb8ec75 - Fixed harmless (but silly) message which happened on every IRCd boot
(time jump message).
(correction)
2009-02-20 13:19:36 +00:00
Bram Matthys cc8a592557 - Fixed very silly 'time jumped .. seconds ahead (0 -> ..)' message which
happened on every IRCd boot.
2009-02-20 13:00:07 +00:00
Bram Matthys 529bd19465 - 'link xx with SSL option enabled on non-SSL compile' was incorrectly
printed out as a warning, when in fact it's an error (and was treated as
  such). Same for ZIP on non-zip compile. Reported by Stealth (#0003833).
..& updated credits..
2009-02-18 19:19:53 +00:00
autoupdate 7dced92085 Automatic weekly version update: 200907 2009-02-16 05:00:03 +00:00
angrywolf fc5f1c0042 Changes of week 04 2009-02-13 14:09:53 +00:00
autoupdate 4a4f518380 Automatic weekly version update: 200906 2009-02-09 05:00:03 +00:00
Bram Matthys d051624476 ** 3.2.8-rc2 *NIX downloads replaced ** 2009-02-08 12:26:55 +00:00
Bram Matthys 2fd46b9cd7 Update from Serkan of 2009-02-02 2009-02-08 10:47:43 +00:00
stylus740 0fba832934 Repaired help.conf.de 2009-02-02 22:10:48 +00:00
autoupdate 144d2dcd82 Automatic weekly version update: 200905 2009-02-02 05:00:04 +00:00
Bram Matthys 662af43a45 - Fix for compile problem on FreeBSD (and possibly other OS's):
- When pkg-config is present but does not recognize --static, use
    default c-ares library options.
  - Set default c-ares library options to -lcares on FreeBSD and others.
    Set to -lcares -lrt on Linux (previously was -lcares -lrt for all).
  Thanks to goldenwolf for the bugreport (#0003803) and providing a test-
  shell to trace this issue down.
2009-02-01 16:43:33 +00:00
Bram Matthys fd043453b9 - Some text fixes regarding time shift feature 2009-02-01 10:12:49 +00:00
stylus740 a62456b243 Changes week 05 doc/unreal32docs.de.html 2009-02-01 09:05:27 +00:00
bock 49f05da55c fixed typo. 2009-01-31 10:24:14 +00:00
autoupdate bccb8dba2a Automatic weekly version update: 200904 2009-01-26 05:00:05 +00:00
Bram Matthys 46deee2cdc - Smallll fix for time shift protection <- now hopefully rc2 for real.. 2009-01-25 11:25:15 +00:00
Bram Matthys 09cf365162 ** 3.2.8-rc2 release ** 2009-01-25 11:19:34 +00:00
stylus740 6426b73838 Changes of week 04: doc/unreal32docs.de.html 2009-01-25 07:49:11 +00:00
Bram Matthys 8918b99248 - Throttling time is now more accurate, especially with larger time values
such as 3 connections per 60 seconds. Previously that could result in 3
  per 90 seconds due to timer inaccuracy, now max 65 seconds (max 5s
  inaccuracy).
2009-01-24 15:38:20 +00:00
Bram Matthys 98db288079 - Added some big warnings regarding big timeshifts.
In the IRCd world correct time is very important. This means that time
  should be correct when the IRCd is booted, either by running ntpd/ntpdate
  on the system or some other synchronization software, or by using the
  built-in timesync feature.
  Whenever the clock is adjusted for more than a few seconds AFTER the IRCd
  has booted, it can lead to dangerous effects ranging from unfair
  timestamps
  for nicks and channels (and hence the possibility to takeover channels),
  to even completely stalling the IRCd (negative timeshift) or making it so
  nobody can connect anymore due to throttling (positive timeshift).
  We now try to 'fix' the worst effects such as the IRCd freeze and
  throttling. This does not fix the whole problem, so I've added some big
  warnings when the clock is adjusted, including an annoying one every 5
  minutes if the clock was set backwards, until the time is OK again
  (catches up with the original time).
  This fixes #0003230 reported by Stealth, and #0002521 reported by durrie.
2009-01-24 15:16:15 +00:00
bock 72c0cb09e9 changes of week 4 2009-01-24 12:37:37 +00:00
Bram Matthys 651add103b Updated credits to reflect coders, contributors and testers of this 3.2.8 release. 2009-01-20 20:49:21 +00:00
Bram Matthys 3aa9afefeb +operoverride fixes 2009-01-20 19:53:35 +00:00
Bram Matthys 8f00cf9dd1 - Updated regex documentation in unreal32docs, it had some incorrect
statements regarding wildcards. Reported by james2vegas (#0003800).
2009-01-19 10:03:24 +00:00
Bram Matthys 20b66249ca bump - too late 2009-01-19 10:03:06 +00:00
autoupdate c6661334a9 Automatic weekly version update: 200903 2009-01-19 05:00:03 +00:00
mark 4a431863c6 Changes of week 01/09 2009-01-18 19:19:02 +00:00
Bram Matthys df508ff00c - Added note to release notes regarding Suse 10.3 on amd64 causing a crash
on-boot. #0003725, #0003653, #0003791.
2009-01-18 13:21:02 +00:00
autoupdate ada0607eb7 Automatic weekly version update: 200902 2009-01-12 05:00:04 +00:00
angrywolf aedce0405f Changes of week 01 2009-01-10 17:48:52 +00:00
Bram Matthys c6b0eb6987 +- Remote includes (constant) crash with new curl/c-ares versions
..something like that... xref #3785
2009-01-09 19:59:26 +00:00
bock 90a548c310 3.2.8-rc1 2009-01-05 18:07:21 +00:00
Bram Matthys ffef7193bb ispell 2009-01-05 11:35:37 +00:00
Bram Matthys f982828981 - Fixed OperOverride bug: if you are halfop you couldn't -q/-a, reported
by Strawberry_Kittens (#0003758).
2009-01-05 11:31:23 +00:00
autoupdate d6aafe4a7b Automatic weekly version update: 200901 2009-01-05 05:00:04 +00:00
Bram Matthys eac36b6344 changelog edit:
from:
mac os x unconfirmed thing
to:
- Fix for Mac OS X compile problem (in setpgrp), reported by Bock / Jckf
  (#0003767).
2009-01-04 15:08:21 +00:00
stylus740 5674d8b607 Changes week 01 in doc/example.de.conf doc/unreal32docs.de.html 2009-01-04 11:24:39 +00:00
bock 2fe59ca280 Updates for 3.2.8 2009-01-03 23:52:06 +00:00
Bram Matthys f0367674e7 - Bump docdate.. 2009-01-03 15:32:45 +00:00
Bram Matthys 28872c4570 - (#0003761).
+  (#0003761). Patch provided by Stealth.
2009-01-03 15:15:07 +00:00
Bram Matthys 6539f0bb92 - Added documentation for set::spamfilter::slowdetect-warn,
set::spamfilter::slowdetect-fatal, set::ssl::server-cipher-list,
  set::ssl::renegotiate-bytes, set::ssl::renegotiate-timeout,
  set::watch-away-notification and ./unreal gencloak. Reported by Bock
  (#0003764).
- set::ssl::renegotiate-bytes: fix when specifying a value such as 10m.
- './unreal gencloak' now actually works
- Fix typo in user mode q notice, reported by Strawberry_Kittens and others
  (#0003761).
- Possible fix for MAC OS X compile problem - UNCONFIRMED.
2009-01-03 15:13:59 +00:00
bock 08e6b37957 Missed ";" in line 22. 2009-01-02 12:47:40 +00:00
autoupdate 734d37feda Automatic weekly version update: 200852 2008-12-29 05:00:05 +00:00
Bram Matthys 559376cbf1 ** 3.2.8-rc1 release ** 2008-12-28 14:31:34 +00:00
Bram Matthys e689ab0888 - A notice is now sent when listing spamfilters through /SPAMFILTER just
like /stats f. Bug #0003752 reported by Strawberry_Kittens, similar to
  #0002533.
2008-12-28 11:33:38 +00:00
Bram Matthys bd9c1afce3 - New HOOKTYPE_LOCAL_NICKPASS: the 2 parameters are: sptr (client) and nsptr
(NickServ client, NULL if not present). You can return 1 (HOOK_DENY) to
  make the IRCd not send IDENTIFY to NickServ. Suggested by tabrisnet
  (#0003739).
(sorry, previous half-commit to src/modules/m_nick.c was accidental)
2008-12-28 10:01:13 +00:00
Bram Matthys fa328676c6 update... 2008-12-28 09:55:56 +00:00
Bram Matthys 73114abc47 - Fixed crash which could happen when rehashing while linking to a server,
this could be #0003689 reported by Monk.
2008-12-27 12:19:38 +00:00
Bram Matthys 4c81ce30e8 - Added set::watch-away-notification which can be set to 'no' to disable
WATCH away notification. The default is 'yes' (=enabled).
2008-12-27 11:14:01 +00:00
Bram Matthys c7172fefd3 - Added release notes (not finished yet). 2008-12-24 17:08:58 +00:00
Bram Matthys 56eddc1547 - Win32: rebuild TRE for Vstudio 2008 (and ditch C++ / MSVCP... dependency). 2008-12-24 12:55:17 +00:00
Bram Matthys cc0641ee00 The following patch has been REVERSED - causes a 15s delay on-boot in non-service mode:
- Win32: Made UnrealIRCd run as a service under non-privileged accounts
  (ones that do not belong to the Administrator group). Reported by
  skyflash, Bock, zer, etc... Thanks to BuHHunyx for some hints on how to
  fix this.
2008-12-24 12:15:44 +00:00
Bram Matthys a77b8c4da2 - Win32: Made UnrealIRCd run as a service under non-privileged accounts
(ones that do not belong to the Administrator group). Reported by
  skyflash, Bock, zer, etc... Thanks to BuHHunyx for some hints on how to
  fix this.
2008-12-23 15:47:04 +00:00
Bram Matthys aaae2532ea blah 2008-12-23 15:43:27 +00:00
Bram Matthys 5daa5216ac - Added some countermeasures against crash-on-boot, #0003725 and #0003653,
reported by Ablom2008 and mist26.
2008-12-22 16:17:17 +00:00
Bram Matthys cdd38d79f4 - Fix OOB read caused by UHNAMES support. 2008-12-22 16:12:30 +00:00
Bram Matthys f17c5cc9e1 - Fix NAMES with UHNAMES support, screwed it up at 'Win32 compile fixes' a
few lines up...
2008-12-22 12:19:06 +00:00
autoupdate 5899dd9596 Automatic weekly version update: 200851 2008-12-22 05:00:04 +00:00
Bram Matthys 024a63587a - Fix crash if settime/expirytime is out of range in TKL, set by another
server.
  Should never happen except when using faulty services or when something
  else
  got horrible wrong (like a date which is 40 years ahead). Reported by
  Darth Android (#0003738).
2008-12-21 14:28:09 +00:00
Bram Matthys ac157694c5 - except ban { } is now also effective against Z:lines. It already protected
when the user was connected, but not once he/she tried to reconnect, this
  is now fixed. Reported several times, last by Stealth in #0003377.
2008-12-21 13:34:54 +00:00
Bram Matthys 62df06ea1a - Win32: build w/manifest. Looks like Unreal@Win32 now actually works again
:).
2008-12-19 16:51:30 +00:00
Bram Matthys 5cd7ab9f06 - Upgraded c-ares on windows to 1.6.0 as well. 2008-12-19 16:17:04 +00:00
Bram Matthys 5ce5d49c89 - Win32 compile fixes. 2008-12-17 16:46:20 +00:00
autoupdate 6e221c61c4 Automatic weekly version update: 200850 2008-12-15 05:00:04 +00:00
Bram Matthys fcbeeea502 - Win32 makefile: removed /MAPINFO:LINES, since visual studio 2005 and up
don't support this and will fail to compile UnrealIRCd. This fixes #3680,
  reported by therock247uk.
- Upgraded c-ares to 1.6.0 (also now using pkg-config).
  If you get a "undefined reference to `clock_gettime'" error, then you
  might consider installing 'pkg-config' on your system, and then simply
  re-run
  ./Config and make, should fix things.
__TODO__: win32 c-ares upgrade to 1.6.0 (and copy & fix header files).
__TODO__: testing! testing! i'd like to be sure this c-ares is stable!
2008-12-14 19:16:24 +00:00
Bram Matthys 58a2f012eb CRLF to LF? 2008-12-14 11:32:14 +00:00
autoupdate 3a3962e7ba Automatic weekly version update: 200849 2008-12-08 05:00:04 +00:00
autoupdate 7b6905b5a9 Automatic weekly version update: 200848 2008-12-01 05:00:04 +00:00
autoupdate c79642e840 Automatic weekly version update: 200847 2008-11-24 05:00:03 +00:00
autoupdate 111891aac3 Automatic weekly version update: 200845 2008-11-10 05:00:03 +00:00
autoupdate 6080f1da73 Automatic weekly version update: 200844 2008-11-03 05:00:03 +00:00
autoupdate 6f823465ef Automatic weekly version update: 200843 2008-10-27 05:00:03 +00:00
autoupdate 35baca56a6 Automatic weekly version update: 200842 2008-10-20 05:00:03 +00:00
autoupdate 38f1772942 Automatic weekly version update: 200841 2008-10-13 05:00:04 +00:00
autoupdate 8ed0a98738 Automatic weekly version update: 200840 2008-10-06 05:00:03 +00:00
autoupdate 69d733c02a Automatic weekly version update: 200839 2008-09-29 05:00:03 +00:00
autoupdate b8417a1e60 Automatic weekly version update: 200838 2008-09-22 05:00:03 +00:00
autoupdate 54c4c0960a Automatic weekly version update: 200837 2008-09-15 05:00:03 +00:00
autoupdate f7c87ee208 Automatic weekly version update: 200836 2008-09-08 05:00:03 +00:00
autoupdate c0d56f5aa2 Automatic weekly version update: 200835 2008-09-01 05:00:03 +00:00
autoupdate ced7d9ab6c Automatic weekly version update: 200834 2008-08-25 05:00:04 +00:00
Bram Matthys 638e557bee - /REHASH -all not case sensitive 2008-08-19 13:14:43 +00:00
Bram Matthys 693b5634d5 - #0003313 reported by Stealth, regarding not erroring/warning when me::name
is bigger than HOSTLEN, from now it will error on config read. [Backport, sts]
2008-08-19 13:09:49 +00:00
Bram Matthys c20f785012 - #0001924 - requested by syzop: Added ./unreal gencloak, which generates
random keys 10 ~ 20 characters in length (*NIX only). [Backport, aquanight]
2008-08-19 13:01:29 +00:00
Bram Matthys 291bc5c8c3 - #0002833 reported and patched by tabrisnet, implementing UHNAMES
[Backport, only slightly modified for speed]
2008-08-19 12:43:54 +00:00
Bram Matthys b52906461c - #0002172 reported by Stealth, patched by WolfSage, fixing if you have an
admin block, and forget a semicolon on a line, Unreal will proceed to use
  the block with no error, but the information will be incorrect/incomplete.
2008-08-19 11:45:17 +00:00
Bram Matthys b488517226 - #0002475 reported by aquanight on detecting \'s in module filenames on
win32 and not do ./module for it [Backport]
2008-08-19 11:38:49 +00:00
autoupdate 70d5d8ba51 Automatic weekly version update: 200833 2008-08-18 05:00:04 +00:00
Bram Matthys ebf40ab6e6 - Added set::ssl::server-cipher-list, #002368 requested by Beastie
[Backport, sts]
- Added set::ssl::renegotiate-bytes, set::ssl:renegotiate-timeout, #0002971
  suggested by tabrisnet. Gets activated when >0. Please set sane values.
  [Backport, sts]
2008-08-11 13:54:35 +00:00
Bram Matthys c48ea59940 - #0001740 reported by Trocotronic, making the IRCd send ERROR : to all
links with possible reason for RESTART; like /die does it. [BACKPORT]
2008-08-11 13:04:06 +00:00
Bram Matthys 450021dec8 compile fix for win32 2008-08-11 12:16:13 +00:00
autoupdate 637122b021 Automatic weekly version update: 200832 2008-08-11 05:00:04 +00:00
Bram Matthys cadd4230e9 - configure script is now generated by autoconf 2.61 (was: 2.59), hopefully
that won't cause any issues, perhaps it even helps to fix some bugs...
2008-08-10 13:18:08 +00:00
Bram Matthys d10223fc2e - The OS version output is now taken from uname() at runtime instead of
'uname -a' at compile time. This fixes bug #1438 and #3320 reported by
  Mouse and Monk, where because of previous behavior the IRCd sometimes
  would not compile in certain environments.
2008-08-09 14:56:34 +00:00
Bram Matthys 0af8ede2f1 + Reported by ash11. 2008-08-09 11:20:33 +00:00
Bram Matthys 6a641aa5f5 - Limit watch status requests to one per time, more will often flood you off
and is stupid/useless.
2008-08-09 11:17:50 +00:00
Bram Matthys b809428392 - Added another Mac OS X hack, such as one that should help against
'error setting max fd's to 9223372036854775807' which prevents the ircd
  from booting up. Reported by btcentral and Bock. This hack might not be
  totally correct though ;).
2008-08-08 10:14:14 +00:00
Bram Matthys 06c209ffce - Added slow spamfilter detection. For each spamfilter, Unreal will check,
each time it executes, how LONG it takes to execute. When a certain
  threshold
  is reached the IRCd will warn or even remove the spamfilter. This will
  prevent
  a spamfilter (regex) from slowing down the IRCd too much, though it's
  still not
  a guarantee that it will never go to a halt (eg: in case it takes several
  minutes to execute a regex or loops forever).
  Warning can be configured via set::spamfilter::slowdetect-warn (default:
  250 milliseconds) and automatic deletion of spamfilters if it takes too
  long is set through set::spamfilter::slowdetect-fatal (default: 500 ms).
  NOTE: slow spamfilter detection is currently not available on Windows.
  NOTE 2: to disable slow detection you can set the warn and fatal settings
  to 0 (zero). OR to really disable all code, remove SPAMFILTER_DETECTSLOW
  from include/config.h and recompile.
2008-08-08 09:19:03 +00:00
autoupdate 7b92553909 Automatic weekly version update: 200828 2008-07-14 05:00:04 +00:00
autoupdate f3a4e11355 Automatic weekly version update: 200827 2008-07-07 05:00:03 +00:00
autoupdate 3364e1fb47 Automatic weekly version update: 200826 2008-06-30 05:00:04 +00:00
autoupdate 36ca3f55bc Automatic weekly version update: 200825 2008-06-23 05:00:03 +00:00
autoupdate 330fcd4f82 Automatic weekly version update: 200824 2008-06-16 05:00:03 +00:00
autoupdate 686ad9e52b Automatic weekly version update: 200823 2008-06-09 05:00:03 +00:00
autoupdate 3c3fb28955 Automatic weekly version update: 200822 2008-06-02 05:00:04 +00:00
autoupdate c5b7417e39 Automatic weekly version update: 200821 2008-05-26 05:00:04 +00:00
Bram Matthys 99ba7c9acd - Upgraded c-ares to 1.5.1, thanks to aegis for the partial patch (#0003671).
This also fixed a curl compile/run issue, reported by static-x (#0003545).
2008-04-07 15:03:31 +00:00
autoupdate 747d84334a Automatic weekly version update: 200811 2008-03-17 05:00:03 +00:00
autoupdate 15b25a5afc Automatic weekly version update: 200810 2008-03-10 05:00:04 +00:00
autoupdate a698c401c7 Automatic weekly version update: 200809 2008-03-03 05:00:03 +00:00
Bram Matthys 7c400e7dc1 - Ok, finished away notification in WATCH. It now shows the away reasons too.
This new feature (away notify) is announced in 005 (ISUPPORT) as: WATCHOPTS=A

  Format is: WATCH A +UserOne +UserTwo

  New numerics to cope with away notification in WATCH are:
  RPL_NOWISAWAY: to indicate the user is away _when adding_ it to WATCH list
  RPL_GONEAWAY:  user was not away, but is now
  RPL_NOTAWAY:   user was away, but is no longer away
  RPL_NOWISAWAY: user was away, and still is, but the reason changed
  Example:

  WATCH A +Target
  Request to add user 'Target' to the watch list with away notification

  :maintest.test.net 609 MySelf Target ~blih test.testnet 1204309588 :not here atm
  Reply to watch add: user is online and away, reason is provided

  :maintest.test.net 599 MySelf Target ~blih test.testnet 1204309588 :is no longer away
  User is back (no longer away)

  :maintest.test.net 598 MySelf Target ~blih test.testnet 1204309722 :lunch
  State change: user is now away, reason is provided

  :maintest.test.net 597 MySelf Target ~blih test.testnet 1204309738 :shopping, bbl
  User is still away, but reason changed.

  The syntax for each numeric is:
  <nickname> <username> <hostname> <awaysince> :<away reason>
  In case of 599 (RPL_NOTAWAY) it is:
  <nickname> <username> <hostname> <awaysince> :is no longer away

  For the record, this is all based on a draft from codemastr from 2004, which was
  implemented in Unreal3.3 (devel branch) in 2006. Today, in 2008 it was updated
  with away reason support and backported to Unreal3.2. Because away notification
  hasn't been used until now (due to it only being in Unreal3.3) we felt it was
  safe to break some numerics.
2008-02-29 18:44:07 +00:00
Bram Matthys 635ab4858e - Backport from 3.3 away notification from Oct 2006, this is v0, a further
patch will follow soon and the numerics will be changed.
2008-02-29 13:58:59 +00:00
autoupdate 9a81a2a67f Automatic weekly version update: 200808 2008-02-25 05:00:03 +00:00
Bram Matthys 7cd21aa28a extending vl a bit.. 2008-02-23 16:15:24 +00:00
Bram Matthys 9635c45fd0 HOOKTYPE_RAWPACKET_IN: not very useful, it's not meant for packet manipulation but for inspection before stuff is even parsed. keeping undocumented for now... 2008-02-23 16:10:38 +00:00
autoupdate e80c63cf22 Automatic weekly version update: 200807 2008-02-18 05:00:03 +00:00
Bram Matthys 38fd630d9f - Fixed (G)ZLINE check.. it was incorrectly rejecting many IPv6 bans.
Reported by guigui (#0003572).
2008-02-11 16:05:12 +00:00
Bram Matthys f966682883 - So called 'smart' banning is now disabled by default, this means you can
now set a ban on *!*@*h.com and then later add one on *!*@*blah.com
  without
  any trouble. Previously the second one was rejected due to the former
  already matching it. To change it back edit the include/config.h setting
  SOCALLEDSMARTBANNING.
2008-02-11 16:00:13 +00:00
autoupdate 301452efb7 Automatic weekly version update: 200806 2008-02-11 05:00:03 +00:00
autoupdate 1cc2a6b355 Automatic weekly version update: 200805 2008-02-04 05:00:03 +00:00
autoupdate c81820b958 Automatic weekly version update: 200804 2008-01-28 05:00:03 +00:00
autoupdate 56eff93642 Automatic weekly version update: 200803 2008-01-21 05:00:04 +00:00
autoupdate 7eef11db14 Automatic weekly version update: 200802 2008-01-14 05:00:03 +00:00
babass 1c2fd041ae Correction syntaxique dans help.fr.conf 2008-01-13 15:18:03 +00:00
autoupdate a7c8428cc4 Automatic weekly version update: 200801 2008-01-07 05:00:04 +00:00
autoupdate 41ee204108 Automatic weekly version update: 200753 2007-12-31 05:00:03 +00:00
bock b9c4ba0d2f fixed, added, documented changes from original unreal32docs.html 2007-12-30 13:22:06 +00:00
Bram Matthys 10fd56d4e8 - ChanMode +S/+c: reverse is now stripped/blocked as well, because it's
similar to color, and is just as annoying (..if not worse).
2007-12-30 11:27:06 +00:00
autoupdate dd09869ef2 Automatic weekly version update: 200752 2007-12-24 05:00:04 +00:00
babass f4ff22b7d0 Clarirication 2007-12-21 16:45:02 +00:00
autoupdate 45d335a225 Automatic weekly version update: 200751 2007-12-17 05:00:04 +00:00
angrywolf 90fbe18a95 Changes of week 50 2007-12-15 14:47:40 +00:00
stylus740 7f22468f5f Changes week 50 of doc/unreal32docs.de.html 2007-12-15 13:57:00 +00:00
Bram Matthys 9881318847 - unreal32docs.html: doubt it will help much but at least this makes it a
little bit more clear (#3548), chatops vs globops.
2007-12-10 14:10:20 +00:00
autoupdate a26f959aad Automatic weekly version update: 200750 2007-12-10 05:00:04 +00:00
autoupdate 6220be843b Automatic weekly version update: 200749 2007-12-03 05:00:03 +00:00
angrywolf 8211dcfdb5 Changes of week 47 2007-11-26 10:47:16 +00:00
autoupdate d381a74959 Automatic weekly version update: 200748 2007-11-26 05:00:04 +00:00
babass 41696810a2 Doc pour set::level-on-join 2007-11-24 16:41:51 +00:00
stylus740 61f7edbf70 Update doc/unreal32docs.de.html week 47 2007-11-24 11:01:12 +00:00
Bram Matthys e3abcabdfb docs for set::level-on-join 2007-11-19 13:24:29 +00:00
Bram Matthys c97e538442 - Added set::level-on-join: which level should the user get when (s)he's is
the first to enter a channel. Currently only 'none' and 'op' are supported.
2007-11-19 13:19:28 +00:00
autoupdate 49fe2c12aa Automatic weekly version update: 200747 2007-11-19 05:00:03 +00:00
autoupdate 259e03dbcb Automatic weekly version update: 200746 2007-11-12 05:00:03 +00:00
autoupdate 949f96492f Automatic weekly version update: 200745 2007-11-05 05:00:04 +00:00
Bram Matthys 2a498427bf - Fixed bug (in all Unreal versions) with parameter channelmodes, any 3rd
party module which adds an extra parameter chanmode could cause crashes.
2007-11-04 18:03:47 +00:00
Bram Matthys 481c374af8 - Channelmode modules without parameters (like: +X, but not: +X 1) no longer
have to be permanent. Channelmodes with parameters still have to be PERM
  however, and there are currently no plans to change it.
2007-11-01 16:46:07 +00:00
Bram Matthys bcf6941b4b - Usermode modules now no longer have to be permanent (#3174), this was
simply a bug that was introduced when adding remote includes support years
  ago.
2007-11-01 13:40:26 +00:00
autoupdate 0609cc8ea1 Automatic weekly version update: 200744 2007-10-29 05:00:03 +00:00
Bram Matthys ba517c3f2c - Minor source cleanup in src/modules/m_map.c, suggested by fez (#0003540). 2007-10-24 15:44:36 +00:00
autoupdate 1f4279d417 Automatic weekly version update: 200743 2007-10-22 05:00:03 +00:00
autoupdate 383cce9bb6 Automatic weekly version update: 200742 2007-10-15 05:00:04 +00:00
Bram Matthys 75706516ab - Fixed set::modes-on-join: could crash or disfunction with certain
parameter mode combinations.
2007-10-13 13:24:27 +00:00
Bram Matthys 8cd5d09b16 copyright 2007-10-13 10:59:31 +00:00
autoupdate c1a2f7e185 Automatic weekly version update: 200741 2007-10-08 05:00:03 +00:00
Bram Matthys 5f60a0d949 - Remove part reason when user is banned, suggested by vonitsanet (#0003354). 2007-10-02 09:30:34 +00:00
Bram Matthys 48dc0d824a - Hopefully fixed 'Overflowed unzipbuf increase UNZIP_BUFFER_SIZE' issue,
reported by Monk (#0003453). It should be large enough now. Also changed the
  way we deal with this when it happens (if it ever happens again..): we now
  close the server connection, instead of trying to continue, because continueing
  is too dangerous.
2007-10-02 09:14:25 +00:00
Bram Matthys ce5c2b3800 - Hopefully fixed 'Overflowed unzipbuf increase UNZIP_BUFFER_SIZE' issue,
reported by Monk (#0003453). It should be large enough now.
2007-10-01 19:27:46 +00:00
autoupdate 409bb73a1d Automatic weekly version update: 200740 2007-10-01 05:00:04 +00:00
stylus740 0eb5980d15 Changes of week 38 unreal32docs.de.html 2007-09-27 15:51:13 +00:00
angrywolf 3dd887ec05 Changes of week 38 2007-09-27 09:22:43 +00:00
Bram Matthys 62af4dd7a0 - Fixed Mac OS X issue where "access denied" errors were encountered when
trying to read unrealircd.conf. All due to strange chmod() behavior. We now no
  longer try to set permissions on Mac OS X. Patch provided by Tibby (#3489).
2007-09-25 15:23:27 +00:00
babass ab3bc3d45a - Documentation de CHROOTDIR dans unreal32docs, rapporté par Beastie (#0002446) 2007-09-25 15:10:51 +00:00
autoupdate 3e24e69fa3 Automatic weekly version update: 200739 2007-09-24 05:00:04 +00:00
Bram Matthys 29680132b9 - Document CHROOTDIR in unreal32docs, reported by Beastie (#0002446). 2007-09-19 09:02:01 +00:00
Bram Matthys 75bf27a52b rephrase...
- CGI:IRC + IPv6: Fixed cgiirc block hostname never matching ipv4 cgiirc
  gateway properly (..again..), this was previously reported by pv2b.
2007-09-19 08:47:59 +00:00
Bram Matthys 9e3ae2b758 - CGI:IRC + IPv6: Fixed cgiirc block hostname never matching ipv4 gateway
properly (..again..), this was previously reported by pv2b.
- CGI:IRC + IPv6: Fixed issue where all cgiirc ipv4 clients were rejected with
  the message 'Invalid IP address', reported by stskeeps (#0003311), nate
  (#0003533) and others.
2007-09-19 08:46:45 +00:00
autoupdate 835b3779bf Automatic weekly version update: 200738 2007-09-17 05:00:05 +00:00
Bram Matthys 56d1bdfe67 - Fixed oper block bug where ip masks in oper::from::userhost did not always
work succesfully (ex: 192.168.* worked, but 192.168.*.* didn't). Issue was
  introduced in 3.2.7, reported by tabrisnet (#0003494).
2007-09-16 19:02:27 +00:00
Bram Matthys 3160f385a8 - Fixed CHROOTDIR, which was broken in 3.2.7: IRC_USER/IRC_GROUP did not work
properly when CHROOTDIR was in use (#0003454).
2007-09-16 16:18:54 +00:00
autoupdate 5d23e3ed71 Automatic weekly version update: 200737 2007-09-10 05:00:07 +00:00
Bram Matthys 68c5bf4f66 - Now allowing '1.2.3.4' ips again in IPv6 mode as well (instead of enforcing
'::ffff:1.2.3.4' ips in the conf, they are now auto-converted to that).
  Based on patch from tabrisnet.
- Fixed issue where the cgiirc block did not work with IPv6, reported by
  djGrrr, fixed by previous change.
2007-09-05 19:03:06 +00:00
Bram Matthys 15008285aa ok, I don't mind the new 'design' much, but don't rip codemastr completely out of credits! he did a substantial amount of work on UnrealIRCd. Added some other original credits back in as well (even though I don't know these people, they have been credited in 3.2* since the start). 2007-09-05 15:50:50 +00:00
autoupdate 08e6d2562b Automatic weekly version update: 200736 2007-09-03 05:00:05 +00:00
Bram Matthys a9069600c5 - Fixed bug in SJOIN, possibly causing things like odd bans showing up in
some circumstances. Reported by Hurga, patch provided by fbi.
2007-09-02 19:30:14 +00:00
autoupdate 9d7ab14167 Automatic weekly version update: 200735 2007-08-27 05:00:03 +00:00
autoupdate 4331a913cd Automatic weekly version update: 200734 2007-08-20 05:00:04 +00:00
autoupdate 30ad92ade3 Automatic weekly version update: 200733 2007-08-13 05:00:04 +00:00
autoupdate a167693904 Automatic weekly version update: 200732 2007-08-06 05:00:03 +00:00
autoupdate f7f5b203e3 Automatic weekly version update: 200731 2007-07-30 05:00:04 +00:00
autoupdate 43594c811c Automatic weekly version update: 200730 2007-07-23 05:00:04 +00:00
wolfsage fd84dc2c12 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2234.2.677
diff -u -r1.1.1.1.2.1.2.1.2.2234.2.677 Changes
--- Changes	17 Jul 2007 23:47:30 -0000	1.1.1.1.2.1.2.1.2.2234.2.677
+++ Changes	17 Jul 2007 23:54:24 -0000
@@ -1531,3 +1531,5 @@
 - Updated release notes
 *** 3.2.7 release ***
 - Fix aquanight's email
+- #0003351 reported by Mareo regarding m_addmotd.so and m_svslusers.so
+  not being created
2007-07-17 23:54:28 +00:00
wolfsage ba83f978fa Fix aquanight's email 2007-07-17 23:47:30 +00:00
autoupdate 2062bd4137 Automatic weekly version update: 200729 2007-07-16 05:00:06 +00:00
stylus740 3005cafeca Changes week 28 for doc/help.de.conf doc/unreal32docs.de.html 2007-07-14 08:42:15 +00:00
oepidus 302bb75217 *** empty log message *** 2007-07-13 23:02:47 +00:00
stskeeps d26692e6f8 done 2007-07-13 14:24:12 +00:00
stskeeps 3e5aba5117 version fix 2007-07-13 14:18:39 +00:00
stskeeps 3f0d91dc34 Unreal.nfo update 2007-07-13 13:29:19 +00:00
stskeeps 71fd0f0af6 Documentation update 2007-07-13 12:09:19 +00:00
oepidus 3320b9a150 *** empty log message *** 2007-07-13 11:55:53 +00:00
stskeeps 37a896df79 3.2.7 release 2007-07-13 10:43:04 +00:00
mark 7436ba747e Changes of week 24/07 2007-07-12 07:15:37 +00:00
babass 4cca75b0cb Préparation à la sortie de la release 3.2.7 2007-07-11 17:13:00 +00:00
stskeeps acda817d3d - Updated release notes 2007-07-11 17:12:11 +00:00
angrywolf 61b7a1277b Changes of week 28 2007-07-11 16:57:30 +00:00
stskeeps 06ea24e88b - Fixed wolfsage eff-up in c-ares.tar.gz, not running make distclean 2007-07-11 16:36:43 +00:00
bock 8cb6d662e1 Update for 3.2.7, added helpop for new commands 2007-07-11 07:33:37 +00:00
stskeeps 1ae33ddbfb - Fix, fix #0003421 patch 2007-07-10 19:35:25 +00:00
stskeeps d67697b7a2 - Entering 3.2.7 RC2 phase 2007-07-10 13:16:59 +00:00
stskeeps 7bc78fae1e - Applied #0003392 patch by Bock, adding some stuff to help.conf 2007-07-10 10:43:21 +00:00
stskeeps e1b48b7d3b - Applied #0003144 patch by Bock, fixing win32 install and such 2007-07-10 10:41:24 +00:00
stskeeps 686732b674 Applied 2999 2007-07-10 10:28:07 +00:00
stskeeps 20d84edaa5 - Applied #0003422 help.conf patches by Bock 2007-07-10 10:11:06 +00:00
stskeeps ddbb84682d - Fixed fixed #003244 fix. 2007-07-10 09:49:02 +00:00
stskeeps 74349aa334 - #0003429 reported by Bock about appearing to accept multiple auth blocks. 2007-07-09 19:46:28 +00:00
autoupdate 9987ec884e Automatic weekly version update: 200728 2007-07-09 05:00:03 +00:00
autoupdate 23d91c269f Automatic weekly version update: 200727 2007-07-02 05:00:04 +00:00
stskeeps d9fbd32352 More .hs 2007-06-27 15:51:47 +00:00
stskeeps e1e037c1b1 - Win32 library updates from Bock 2007-06-27 15:47:32 +00:00
stskeeps 8805dae525 - #0003405 repoted by Stealth regarding wildcards and autoconnect being an
||
- Fixed irc_uid|gid being defined on win32
2007-06-27 11:36:31 +00:00
stskeeps dad8477cb3 - Applied patch to fix some win32 problems reported by Bock, fixed by fez 2007-06-27 10:54:51 +00:00
stskeeps a705ceaa86 - Entering 3.2.7 RC1 phase 2007-06-26 11:27:07 +00:00
autoupdate 21a54860d3 Automatic weekly version update: 200726 2007-06-25 05:00:04 +00:00
stskeeps a9682b7ae2 - #0003244 reported by CuLpA about grammar errors in webtv outputs 2007-06-22 08:42:23 +00:00
autoupdate 0f0ffc9580 Automatic weekly version update: 200725 2007-06-18 05:00:05 +00:00
stskeeps 0e50f34167 - #0003363 patched by adrianp, changing IRC_UID and IRC_GID into
defines IRC_USER, IRC_GROUP which is a string specifiying what user name/
  group name that should be changed into, instead of a hardcoded gid/uid.
  This should make it easier for packaged binary releases to work (even
  though this probably means Debian will take us in, ick .. Can't we pull
  a new fight with debian-legal again?)

- #0003363 patched by adrianp, changing IRC_UID and IRC_GID into
  defines IRC_USER, IRC_GROUP which is a string specifiying what user name/
  group name that should be changed into, instead of a hardcoded gid/uid.
  This should make it easier for packaged binary releases to work (even
  though this probably means Debian will take us in, ick .. Can't we pull
  a new fight with debian-legal again?)
2007-06-17 12:43:52 +00:00
stylus740 121c4b73ab Canges week 24 for doc/example.de.conf doc/help.de.conf doc/unreal32docs.de.html 2007-06-16 14:01:57 +00:00
angrywolf 6ee7e51b40 Little grammar fix for the directive link::ciphers 2007-06-16 12:48:04 +00:00
angrywolf 465c9ed9ae Forgot the example.conf part of 'Changes of week 24' :) 2007-06-16 12:26:15 +00:00
bock 1fd1f3a7b2 Changes of week 24 2007-06-16 10:09:39 +00:00
angrywolf b3dbc78b8c - Changes of week 24
- Retranslated the whole CDIR section (3.15)
- According to http://forditas.fsf.hu/html/node3.html the Hungarian expression for 'Internet Service Provider' should be written with a hypen (all occurrences fixed).
2007-06-16 10:00:16 +00:00
babass b930545ae7 Correction typo 2007-06-16 09:21:12 +00:00
stskeeps 182df5db2d - #0003232 reported by vonitsanet patched by djGrr, regarding /map is not
shown u:lined servers to local opers and /links does
2007-06-15 19:58:45 +00:00
stskeeps f3fce00218 - #0003092 reported by tabrisnet, patched by WolfSage, regarding
documentation says
  link::bind-ip is optional, but not specifying it produces an error
2007-06-15 19:53:54 +00:00
stskeeps a3d2b68abd - #0003382 reported by stealth regarding nested C-style comments messing
up example.conf parsing
2007-06-15 19:50:22 +00:00
stskeeps f3a2d7f6a4 - #0001317 reported by thilo regarding removal of (username) being
appended to topics set by U:Lined servers.
2007-06-15 19:47:26 +00:00
babass 02da9dd0a3 Ajout de l'oper CIDR 2007-06-14 21:05:48 +00:00
stskeeps 451a05d951 - Added oper CIDR 2007-06-14 18:23:38 +00:00
stskeeps 0748ba0aa5 - #0002420 reported by KnuX fixed by WolfSage
- #0003147 reported by vonitsanet, fixed by djGrrr regarding making
  spamfilters work in case of /setname
2007-06-14 18:20:38 +00:00
stskeeps db04a13bbe #0003216 patched by djGrrr, regarding when you run ./Config for a second 2007-06-14 18:15:52 +00:00
stskeeps 797b6f428c - Fixed SVSKILL sending an illegal QUIT 2007-06-14 18:12:10 +00:00
stskeeps 92bd444ac2 - #0002040 reported by aquanight, removing dependancy on +l for +L. This
will be backwards compatible as well, SJOIN doesn't care (TM) and mode
  doesn't either in case of a server sending it. So this will be just a
  client protocol modification.
2007-06-14 18:10:34 +00:00
stskeeps 8cf43a9596 - #0003139 reported by vonitsanet, improving error messages on /connect
when trying to /connect to a server with wildcards (* and ?) in the link
  block. We also raise an error if link::options::autoconnect is used
  together with wildcards in hostname.
2007-06-14 18:06:04 +00:00
stskeeps d673c88159 - Now using #0003028, with more intelligent accept() handling. The IRCd
will now attempt to accept() up to LISTEN_SIZE (possibly saving CPU
  through this under load, and speeding up connection).
- IRCd now also sets the &me fd as being non blocking (wasn't before, that
  was odd..)
2007-06-14 18:02:30 +00:00
stskeeps ee24127381 - #0002533 reported by Dodge_Ram, patched by WolfSage, regarding notices
not being sent when /*line and /shun are used to request stats
2007-06-14 18:01:01 +00:00
stskeeps df0e2ac4de #0003368 patched by Stealth giving users access to do /module on remote
servers
2007-06-14 17:29:36 +00:00
stskeeps 48c9c21708 - #0003027 reported by Trocotronic, regarding doing -l <para> on SJOIN,
and not -l as supposed. This may have caused desyncs
2007-06-14 17:25:57 +00:00
wolfsage 2857f3efe9 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2234.2.644
diff -u -r1.1.1.1.2.1.2.1.2.2234.2.644 Changes
--- Changes	12 Jun 2007 00:06:32 -0000	1.1.1.1.2.1.2.1.2.2234.2.644
+++ Changes	12 Jun 2007 00:13:02 -0000
@@ -1468,3 +1468,4 @@
 - #0003264 reported by Robby22 regarding help.conf typo
 - Updated c-ares to version 1.4.0
 - Updated tre to version 0.7.5
+- help.conf updates. Missing some ;'s.
2007-06-12 00:13:07 +00:00
wolfsage b4a879621e Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2234.2.643
diff -u -r1.1.1.1.2.1.2.1.2.2234.2.643 Changes
--- Changes	11 Jun 2007 23:52:32 -0000	1.1.1.1.2.1.2.1.2.2234.2.643
+++ Changes	12 Jun 2007 00:06:09 -0000
@@ -1467,3 +1467,4 @@
 - help.conf updates... #0002420 reported by KnuX fixed by WolfSage
 - #0003264 reported by Robby22 regarding help.conf typo
 - Updated c-ares to version 1.4.0
+- Updated tre to version 0.7.5
2007-06-12 00:06:33 +00:00
wolfsage 4935dfa45e Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2234.2.642
diff -u -r1.1.1.1.2.1.2.1.2.2234.2.642 Changes
--- Changes	10 Jun 2007 12:25:06 -0000	1.1.1.1.2.1.2.1.2.2234.2.642
+++ Changes	11 Jun 2007 23:52:00 -0000
@@ -1466,3 +1466,4 @@
 - #0002844 reported by RandomNumber: make spamfilter actions case insensitive
 - help.conf updates... #0002420 reported by KnuX fixed by WolfSage
 - #0003264 reported by Robby22 regarding help.conf typo
+- Updated c-ares to version 1.4.0
2007-06-11 23:52:33 +00:00
autoupdate f97577ae76 Automatic weekly version update: 200724 2007-06-11 05:00:03 +00:00
wolfsage 2ff21308f9 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2234.2.641
diff -u -r1.1.1.1.2.1.2.1.2.2234.2.641 Changes
--- Changes	30 Apr 2007 19:47:15 -0000	1.1.1.1.2.1.2.1.2.2234.2.641
+++ Changes	10 Jun 2007 12:25:03 -0000
@@ -1465,3 +1465,4 @@
 - #0002560 reported and patched by w00t, regarding a typo in /SAMODE
 - #0002844 reported by RandomNumber: make spamfilter actions case insensitive
 - help.conf updates... #0002420 reported by KnuX fixed by WolfSage
+- #0003264 reported by Robby22 regarding help.conf typo
2007-06-10 12:25:07 +00:00
autoupdate e33a0d9a09 Automatic weekly version update: 200723 2007-06-04 05:00:03 +00:00
autoupdate 4762baa11a Automatic weekly version update: 200722 2007-05-28 05:00:03 +00:00
autoupdate fc714fc288 Automatic weekly version update: 200721 2007-05-21 05:00:03 +00:00
autoupdate b6ea1ab479 Automatic weekly version update: 200720 2007-05-14 05:00:03 +00:00
babass 9e5a922ca3 Correction de typo pouvant créer un problème à l'installation de l'help.fr.conf 2007-05-12 13:44:41 +00:00
angrywolf 25f5036c35 Changes of week 18 2007-05-12 00:38:49 +00:00
mark 7506b322a5 Changes of week 18/07 2007-05-11 14:35:29 +00:00
autoupdate 87134d99e7 Automatic weekly version update: 200719 2007-05-07 05:00:03 +00:00
Bram Matthys 9505a1f520 turkish doc updates (by Serkan) 2007-05-06 11:33:22 +00:00
babass 9be37f7979 Ajout de AddMOTD et AddoMOTD dans help.fr.conf plus correction syntaxique dans la doc. 2007-05-05 10:56:39 +00:00
stylus740 de9e60bc03 Changes week 18 doc/help.de.conf doc/unreal32docs.de.html 2007-05-05 10:49:04 +00:00
Bram Matthys 152283b769 - help.conf updates... #0002420 reported by KnuX fixed by WolfSage 2007-04-30 19:47:16 +00:00
Bram Matthys 1b587dcbff - #0002844 reported by RandomNumber: make spamfilter actions case insensitive 2007-04-30 19:45:44 +00:00
Bram Matthys 2b9dd64bb3 - #0002560 reported and patched by w00t, regarding a typo in /SAMODE 2007-04-30 19:43:24 +00:00
Bram Matthys 0e5206ea7d - #0003159 reported by aegis and Bock, regarding typos in documentation 2007-04-30 19:42:48 +00:00
Bram Matthys de1fea75f4 - xx reported and fixed by WolfSage (addmotd, addomotd in help.conf) 2007-04-30 19:41:42 +00:00
Bram Matthys e9bb00fec3 - Fixed SVSKILL sending an illegal (wrong direction) QUIT right after, #0003307 2007-04-30 19:37:30 +00:00
autoupdate cfdd3c2889 Automatic weekly version update: 200718 2007-04-30 05:00:05 +00:00
Bram Matthys 1eeae26719 - #3272 patched by w00t, regarding remove restrictions on NOTICE/PRIVMSG $* for opers. 2007-04-25 12:45:39 +00:00
Bram Matthys 043948990c - #0002846 reported by alex323, patched by WolfSage, regarding local ircop cannot issue CLOSE command 2007-04-25 12:43:20 +00:00
Bram Matthys 91391a46b5 - #0003212 patched by Grunt, regarding /userip <someone_else> seemingly
shows your own (cloaked) IP.
2007-04-25 12:36:42 +00:00
Bram Matthys 33bbe5ea8f - #0002932 reported by therock247uk, patched by WolfSage, regarding Local
opers can /chghost /chgident /chgname on someone thats on another server on
  the network.
2007-04-25 12:33:43 +00:00
Bram Matthys f6a0ef0cc2 - #0003146 reported by vonitsanet, regarding Modes O,S (etc) not rejected for modes-on-connect
fixed by djGrrr
2007-04-25 12:30:38 +00:00
Bram Matthys fe3eb0db7d - Fixed #0003171 reported by danieldg (typo) doc/technical 2007-04-25 12:20:13 +00:00
autoupdate 2f49eb5aaf Automatic weekly version update: 200717 2007-04-23 05:00:03 +00:00
autoupdate 2a7f21124f Automatic weekly version update: 200716 2007-04-16 05:00:03 +00:00
autoupdate e5a40f1045 Automatic weekly version update: 200715 2007-04-09 05:00:07 +00:00
autoupdate 48d766e308 Automatic weekly version update: 200714 2007-04-02 05:00:09 +00:00
autoupdate 1a694d14f5 Automatic weekly version update: 200713 2007-03-26 05:00:05 +00:00
autoupdate 996775f16d Automatic weekly version update: 200712 2007-03-19 05:00:04 +00:00
autoupdate fc58297eb0 Automatic weekly version update: 200711 2007-03-12 05:00:03 +00:00
autoupdate dba2097cdd Automatic weekly version update: 200710 2007-03-05 05:00:03 +00:00
autoupdate 3b0f6ea0ac Automatic weekly version update: 200709 2007-02-26 05:00:03 +00:00
aquanight 68595e2d22 Fixed serverprotocol.html typo. 2007-02-19 19:34:38 +00:00
autoupdate 5285c52084 Automatic weekly version update: 200708 2007-02-19 05:00:03 +00:00
Bram Matthys f00fd6eaef maths is teh hard 2007-02-16 14:09:39 +00:00
Bram Matthys 6b370c9c67 - Fixed file descriptor leakage on rehash. This resulted in [number of modules loaded]
file descriptors being leaked upon every /REHASH.
  So if you, for example, had 3 modules loaded and rehashed 30 times, it would cause
  the ircd to consume 60 useless file descriptors (which often means 60 less file
  descriptors being available to clients).
2007-02-16 14:05:44 +00:00
autoupdate 231d06c48d Automatic weekly version update: 200707 2007-02-12 05:00:03 +00:00
Bram Matthys 8c6bb314c5 - Changed password length from 32 to 48, is allocated dynamically anyway. 2007-02-06 15:33:12 +00:00
autoupdate fe34c10de2 Automatic weekly version update: 200706 2007-02-05 05:00:03 +00:00
autoupdate 1846da7c5a Automatic weekly version update: 200705 2007-01-29 05:00:04 +00:00
Bram Matthys 83dda85a6a - Fixed SAPART causing a flood of notices from all servers, fun. Reported and patch
provided by djGrrr.
2007-01-22 13:01:16 +00:00
Bram Matthys 9feef46dae - Fixed SDESC not messaging +s +s clients on local server when it is used, reported by
dre, patch provided by djGrrr.
2007-01-22 12:50:55 +00:00
Bram Matthys c88832d960 - Added ability to enable "no fake lag" for a user through through services via the
new commands SVSNOLAG/SVS2NOLAG (syntax: SVSNOLAG [+|-] NickName). Obviously, care
  should be taken when giving such access to a user since he/she will be able to flood
  at full speed and could possibly take down the entire IRCd (well, everyone on it).
  Suggested by avb, coded by djGrrr.
2007-01-22 12:46:54 +00:00
Bram Matthys d1827e1835 - /WHOIS now shows the ident of local users - if ident enabled and they had an ident -
instead of always "*" in the 'is connecting from' line. Suggested and patch provided
  by djGrrr (#0002888).
2007-01-22 12:36:51 +00:00
Bram Matthys 30bab73c03 - Fixed bug where SVSO was unable to give various operflags such as q, d, X, reported
by prodigy2k7 (#0003203).
2007-01-22 12:25:40 +00:00
autoupdate 35d668ad31 Automatic weekly version update: 200704 2007-01-22 05:00:03 +00:00
autoupdate 1053948bed Automatic weekly version update: 200703 2007-01-15 05:00:03 +00:00
autoupdate 686c7e2f21 Automatic weekly version update: 200702 2007-01-08 05:00:03 +00:00
autoupdate 3f47c89846 Automatic weekly version update: 200701 2007-01-01 05:00:03 +00:00
aquanight c834a47f32 italic fix in serverprotocol 2006-12-28 16:34:06 +00:00
oepidus d99b03660b Changes of week 51 2006-12-25 22:16:37 +00:00
autoupdate 4807a7330c Automatic weekly version update: 200652 2006-12-25 05:00:03 +00:00
stylus740 1e73667155 Correction: doc/help.de.conf 2006-12-24 09:37:08 +00:00
aquanight 42c3227864 Fixed STATS description for server senders 2006-12-23 22:19:53 +00:00
stylus740 6532706da0 doc/help.de.conf Change of week 51 2006-12-23 22:11:59 +00:00
aquanight f738943493 Added WHOIS (#) and STATS (2) to serverprotocol.html. 2006-12-23 20:05:20 +00:00
stylus740 9a5dbf345e Changes of week 51: doc/unreal32docs.de.html 2006-12-23 10:35:49 +00:00
Bram Matthys e5f921e186 - Updated release notes, mass-change of version number, no code changes.
** 3.2.6 release **
2006-12-22 20:19:39 +00:00
Bram Matthys c6c0345b36 Updated release notes (no version change yet) 2006-12-22 20:04:00 +00:00
Bram Matthys 1114003d93 hrmmhrmhrmmmmmm changed leaf-depth to leafdepth 2006-12-22 20:03:47 +00:00
Bram Matthys a34ecabee0 ** 3.2.6-rc3 release ** 2006-12-20 21:05:55 +00:00
Bram Matthys ef8ffdda04 - Showing even more SSL server errors now, hopefully all of them, also changed the
error notice a bit so it's much more like non-SSL server link errors. Reported by
  vonitsanet (#0003150).
2006-12-19 19:37:41 +00:00
Bram Matthys 0f53a33401 - Fixed possible crash with using quarantine, reported by Sephiroth (#0003151). 2006-12-19 12:52:53 +00:00
Bram Matthys 6373b83c39 Updates of week 50 2006-12-18 11:51:56 +00:00
autoupdate f7ca612817 Automatic weekly version update: 200651 2006-12-18 05:00:04 +00:00
babass c06f591878 Changements de la semaine 50 2006-12-17 20:07:02 +00:00
stylus740 72c6875a80 changes of week 50 doc/help.de.conf 2006-12-17 09:15:10 +00:00
Bram Matthys 6c193b7cbe ** 3.2.6-rc2 release ** 2006-12-16 13:36:02 +00:00
Bram Matthys 20603ada50 spellllllingggg 2006-12-16 13:26:26 +00:00
Bram Matthys 4e3745922e plok 2006-12-16 13:22:50 +00:00
mark 298d28940b Changes of week 48/06 2006-12-16 13:18:38 +00:00
Bram Matthys 4f54a7e982 - Post-3.2.5 CVS-only bug: Fixed spamfilter on user target not working properly when
changing nicks (was still trying to match on the old nick), reported by vonitsanet
  (#0003143).
2006-12-12 17:25:19 +00:00
bock c9e5cc23ff Updated SVSNLINE syntax in help.ru.conf (the remove-syntax). 2006-12-12 07:40:05 +00:00
Bram Matthys a314130ca6 - Updated SVSNLINE syntax in help.conf (the remove-syntax). 2006-12-11 12:13:20 +00:00
autoupdate 9fcd92d297 Automatic weekly version update: 200650 2006-12-11 05:00:04 +00:00
angrywolf 4212f96ebc One more little fix. :) 2006-12-06 18:30:43 +00:00
angrywolf e51ac78a93 Changes of week 48 + various grammar corrections 2006-12-06 18:25:53 +00:00
Bram Matthys 0537a49be6 - Fixed SSL bug where an outgoing connect (either autoconnect, or /connect), would not
show any error message when it failed. Error information has also been slightly
  improved. Reported by vonitsanet (#0003138).
2006-12-06 14:33:42 +00:00
babass a1016d0a8e Changements de la semaine 48 2006-12-05 16:11:03 +00:00
Bram Matthys bb265f6c41 - Improved detection of bad set::modes-on-oper and oper::modes, now rejecting things like
'o', 'z', and more.
- Fix from above fixes an /OPER announce problem reported by Bock (#0003135).
2006-12-05 13:50:57 +00:00
autoupdate c62d326a7a Automatic weekly version update: 200649 2006-12-04 05:00:04 +00:00
stylus740 f71fd34887 Changes of week 48 doc/help.de.conf doc/unreal32docs.de.html 2006-12-03 07:40:30 +00:00
Bram Matthys 41efaa9fd8 - Don't show silence list to others 2006-12-02 23:20:57 +00:00
trocotronic 590c7388cb Cambios semana 48 / 2006 2006-12-02 11:11:39 +00:00
gsf db03b6173e Week 48 Changes :) 2006-12-02 09:56:07 +00:00
Bram Matthys 3e134cbb0a - Setting set::pingpong-warning didn't work, reported by vonitsanet, patch supplied by
avb (#0003131).
2006-12-01 15:39:44 +00:00
Bram Matthys a6b8d8ff35 - Added donators since 3.2.5 2006-12-01 15:32:51 +00:00
Bram Matthys ba8cf14b9b - Get rid of some old stuff in release notes 2006-11-30 23:56:45 +00:00
Bram Matthys af0b379650 ** 3.2.6-rc1 release ** 2006-11-30 23:02:02 +00:00
aquanight 6a44b8c3e5 Backport serverprotocol.html updates from 3.3 + 3.2.6 info 2006-11-29 20:03:13 +00:00
babass 0390c6c64f Changements de la semaine 47 (help.fr.conf) 2006-11-28 16:08:44 +00:00
Bram Matthys 7c9ea959f4 updates 2006-11-28 12:04:18 +00:00
bock 974454764f Fixed typo 2006-11-27 14:58:16 +00:00
Bram Matthys 4faaf63e82 - Fixed help.conf typo 2006-11-27 14:39:45 +00:00
autoupdate 63635918f7 Automatic weekly version update: 200648 2006-11-27 05:00:04 +00:00
bock ace157556b Improved description of link::hub/leaf/leafdepth in unreal32docs.ru.html, also fixed typo (leafdepth, not leaf-depth) 2006-11-26 19:33:49 +00:00
Bram Matthys ef7344d586 - Added release notes for 3.2.6 2006-11-26 18:44:59 +00:00
Bram Matthys 8d68e6fa19 - fix for above (c-ares win32 lib) 2006-11-26 14:37:17 +00:00
Bram Matthys a3b32fdedb updated changelog comment, giving more credit
- Made SAPART work for mulitple channels, just like SAJOIN. Reported by Snake and
  SeigHart, patch provided by Bock (#0003064). This also fixes SAPART now being
  announced to all opers globally, just like SAJOIN.
2006-11-26 12:54:06 +00:00
Bram Matthys c29ad02587 - upgraded windows c-ares (areslib.lib) as well. 2006-11-25 22:57:45 +00:00
Bram Matthys 545c641fe8 - c-ares resolver: upgrade to 1.3.2. 2006-11-25 19:39:39 +00:00
Bram Matthys a962ad2877 backport from aquanight:
- Improved description of link::hub/leaf/leafdepth in unreal32docs.html reported by Bugz (#2623),
  also fixed typo (leafdepth, not leaf-depth), reported by monas (#3083).
2006-11-25 19:10:14 +00:00
Bram Matthys 628abf114c FIXFORFIX
- Fixed bug where omitting class::connfreq would result in a huge connection attempt
  flood when autoconnect was enabled. We now set class::connfreq to 60 if it's not
  specified. Reported by Milliways (#0003018).
2006-11-25 16:48:43 +00:00
Bram Matthys ea2b4a1698 spellllling.... (changelog only) 2006-11-25 16:43:23 +00:00
Bram Matthys d9098e44e3 - Fixed bug where ommitting class::connfreq would not give a config error, and would
cause a huge connection attempt flood when autoconnect was enabled. Reported by
  Milliways (#0003018).
2006-11-25 16:42:17 +00:00
bock 08e5ee49d1 Ooops, some more help staff info was added on last commit. Removed to correct. 2006-11-25 15:59:56 +00:00
stylus740 9b47129ad7 Chandes week47 doc/help.de.conf 2006-11-25 10:42:30 +00:00
Bram Matthys b6bed50471 - Fixed compile bug on Solaris due to missing INADDR_NONE, fix provided by Schak
(#0003125).
2006-11-24 21:20:48 +00:00
Bram Matthys c48ab26b0e - Fixed charsys config error message sometimes saying stuff about set::accept-language,
which should be set::allowed-nickchars (the former does not exist). Reported and
  patch provided by avb (#0003122).
2006-11-24 21:07:11 +00:00
bock 97c561715a Added information about extbans to help.ru.conf (/HELPOP EXTBANS) 2006-11-24 21:00:13 +00:00
Bram Matthys 803a67d4c7 - Fixed belarussian-w1251 charset.. accidently copied a "'" which caused an internal
error, reported by Bock (#0003114).
- Added information about extbans to help.conf (/HELPOP ?EXTBANS). Patch from Bock
  (#0003113).
- Made SAPART work for mulitple channels, just like SAJOIN. Patch provided by Bock
  (#0003064). This also fixes SAPART now being announced to all opers globally, just
  like SAJOIN.
- Finally fixed /RESTART issue on windows for good, should now always restart correctly.
  Patch provided by BuHHunyx and Bock (#0002734).
2006-11-24 19:34:05 +00:00
Bram Matthys 697eb2c3e4 - Changed some minor Makefile stuff
- Fixed belarussian-w1251 charset.. accidently copied a "'" which caused an internal
  error.
2006-11-22 15:37:34 +00:00
sinameki d3ca3fb0c4 changes of week 46 2006-11-20 23:28:48 +00:00
autoupdate 31c15ebb93 Automatic weekly version update: 200647 2006-11-20 05:00:03 +00:00
trocotronic 2126961b4b Cambios semana 46 / 2006 2006-11-19 12:35:15 +00:00
babass e50f9f92a4 Changements de la semaine 46 2006-11-19 11:00:48 +00:00
angrywolf cd1889ce93 Changes of week 36 & 46 2006-11-19 08:32:21 +00:00
mark b58fb7e859 Changes of week 46: doc/unreal32docs.html 2006-11-18 15:09:19 +00:00
gsf 38607d32ce Week 46 2006-11-18 12:52:56 +00:00
stylus740 003de86893 Changes of week 46 in: doc/example.de.conf doc/help.de.conf doc/unreal32docs.de.html 2006-11-18 09:04:31 +00:00
bock f4b75de32e Changes of week 46: removed some typo. 2006-11-18 08:54:39 +00:00
autoupdate 3c60bf826d Automatic weekly version update: 200646 2006-11-13 05:00:04 +00:00
bock 0910bdfd81 Corrected doc about set::dns behavior and added set::pingpong-warning 2006-11-12 22:43:14 +00:00
Bram Matthys f3d578f2ec - Fixed a couple of typos and other one-line-text fixes at various places: reported by
aegis (#3081), DanPMK (#2818), tabrisnet (#2974, #2970, #2467), penna (#2721),
  Brad (#2488), vonitsanet (#2467).
- Made OpenSSL version dynamic, reported by buildsmart (#0002975).
- Rejecting fake +z modes in conf, reported by rve (#0002532).
2006-11-12 21:49:52 +00:00
Bram Matthys 34e54c958b - /INVITE's from people on the silence list are now (silently) ignored, suggested by
White_Magic (#0002478).
2006-11-12 20:27:22 +00:00
Bram Matthys ed9e2ccd64 - Snomask N: Don't show nickchanges for U-lines, reported by seneces (#0002636).
- Fixed set::dns::bind-ip directive seen as duplicate, reported by aegis (#0003074).
- set::dns::* block is now no longer mandatory. All info has always been read from
  /etc/resolv.conf (*NIX) or the registry (Win32), and the set::dns block is ignored
  (except for set::dns::bind-ip, but that's a special case). Suggested by many including
  djGrrr to make things slightly more logical (#0003019).
- As a consequence of the above, set::dns blocks were removed from doc/example*conf.
- Added two more characters to Catalan charset, reported by rmh (#0002995).
- Added set::pingpong-warning [yes|no] which decides whether to send the "** If you are
  having problems connecting due to ping timeouts, please type /quote pong .." message
  to each client when NOSPOOF is enabled (usually on Win32). The default is NO.
  Previously this message was always sent if NOSPOOF was on, which often caused
  confusion among users. The message was intended for non-confirming clients, but these
  should be fixed by now, and those that were not fixed (self-made bots/etc) did often
  not understand the message anyway. Anyway, you can still turn it on ;). (#2680).
2006-11-12 19:38:17 +00:00
Bram Matthys f33a2c0d06 - Fixed 'SVSMOTD !' not deleting the services motd in memory, reported by avb (#0003110). 2006-11-12 18:58:18 +00:00
Bram Matthys c4adb49bbb extern int file_exists(char* file); 2006-11-11 20:34:10 +00:00
Bram Matthys 5c8e1da371 - loadmodule now reports proper errors when the actual file can't be found, instead of blaming
it on the temp file, reported in #3015.
(aquanight backport)
2006-11-11 20:33:41 +00:00
Bram Matthys 1d03d16fcb - Cutoff webtv whois at MAXTARGETS (#0003004). 2006-11-11 20:25:03 +00:00
Bram Matthys 0848c29f5e - Fixed set::allowed-nickchars causing a segfault for some unknown charsets, reported
by avb (#0003069).
(aquanight backport)
2006-11-11 20:15:42 +00:00
Bram Matthys 013c376c91 - Moved failed oper snotices to snomask +o, and are sent out to all servers. Also now shows
the uid attempted (like [FAILEDAUTH] does) for incorrect host or maxlogin.
2006-11-11 20:13:00 +00:00
autoupdate 313113cfbf Automatic weekly version update: 200645 2006-11-06 05:00:03 +00:00
Bram Matthys 0bc77f25f9 - Made win32 compile again, reported by Bock (#0003106). 2006-11-05 20:13:10 +00:00
Bram Matthys 3fa0b692ce #if defined(DEBUGMODE) && !defined(_WIN32) 2006-11-05 00:28:39 +00:00
Bram Matthys a7fbab3cb9 - Win32: Fixed a few compiler warnings, suggested by Zell (#0002890). 2006-11-05 00:21:12 +00:00
Bram Matthys 078e26b128 - If the 'crypt' algorithm is used, then passwords were/are truncated to 8 characters.
We now print a warning when this happens (both on the IRC command and command-line).
  Suggested by JasonTik (#0002953).
2006-11-04 23:53:41 +00:00
Bram Matthys ab7c44f251 - Services timestamps are now always treated as an unsigned long (0..2^32-1), instead
of accidently as signed long during netsynchs. This bug caused issues with values
  larger than 2147483647. Reported by avenger (#0002980).
2006-11-04 22:25:27 +00:00
Bram Matthys 45ec1c7c51 - Win32: we now no longer crash if no access to write to service.log, suggested and
patch by Xuefer (#0002886).
2006-11-04 21:40:57 +00:00
Bram Matthys fe77be7070 - Win32: SSL private key prompt should now no longer crash. Patch provided by Alexey
Markevich (#0002866).
2006-11-04 13:23:37 +00:00
Bram Matthys af598b644f - [internal] Made a spamfilter_build_user_string function that will build the spamfilter
user target string (nick!user@host:info), insteaf of doing it at like 5 places.
- Spamfilter target 'u' (user): the host field (nick!user@HOST:realname) is now escaped
  with brackets if it's an IPv6 address, eg: blah!blah@[1:2:3:4:5:6:7:8]:hello, reported
  by aquanight and others (#0003010).
2006-11-04 00:10:53 +00:00
Bram Matthys 691a5ef783 - Using SVSMODE (or SVS2MODE) to set -x will now actually remove the vhost from memory,
instead of letting it magically reappear whenever +x is set. This means services can
  now properly "unvhost" a user by sending a "SVSMODE User -x+x" (then any existing vhost
  will be removed and user will have a cloaked host). Reported by avenger and others
  (#0002933).
2006-11-03 23:32:24 +00:00
Bram Matthys 54c7b1f322 - Fixed m_names.so not being build (a problem for people not using commands.so),
reported by aegis (#0003085).
2006-11-03 22:40:30 +00:00
Bram Matthys f53a8e204d - Fixed deny link {} blocks being ignored by autoconnect. Reported by a couple people,
also see #0003084.
(backport from aquanight)
2006-11-03 20:36:27 +00:00
Bram Matthys 4ba5134d52 - Fixed SVSO - not removing coadmin (+C). Reported by Muisje (#0003077). 2006-11-03 20:33:56 +00:00
Bram Matthys 25684239fa - Fixed some unitialized pointer things for win32 w/ssl on keyprompt, no idea if it
helps, though. Would appreciate it if another code looks into this. -- Syzop
2006-11-03 19:31:21 +00:00
Bram Matthys fc3f121cf7 - Made it so that when 'java' is enabled for a listen block, then the 2nd parameter to
NICK is not seen as a password on this port. Patch from afolentes (#0003097).
2006-11-03 19:23:30 +00:00
Bram Matthys 4b3d9c126e - Updated ukrainian-w1251 and belarussian-w1251 charsets: some characters were previously
included that shouldn't. Reported by avb (#0003102), patch supplied by Bock.
2006-11-03 13:41:09 +00:00
autoupdate 61ebb53352 Automatic weekly version update: 200644 2006-10-30 05:00:04 +00:00
Bram Matthys b31f629d43 Update... Linebreaks fixed and all. 2006-10-28 17:17:15 +00:00
Bram Matthys 7c3fb9ee6b - Fixed a couple of add_Command/del_Command lines in m_chgname and m_helpop trying to
add the same token twice. Didn't cause any trouble, normally, though...
2006-10-28 14:10:31 +00:00
autoupdate 8c8938a88d Automatic weekly version update: 200643 2006-10-23 05:00:04 +00:00
autoupdate d4c9f5432a Automatic weekly version update: 200642 2006-10-16 05:00:05 +00:00
Bram Matthys 78ce3ffe4f updates.. ;p 2006-10-12 20:59:57 +00:00
Bram Matthys 57ec52f274 Updates 2006-10-10 12:18:59 +00:00
autoupdate 271a62162d Automatic weekly version update: 200641 2006-10-09 05:00:04 +00:00
autoupdate 765fc3bde1 Automatic weekly version update: 200640 2006-10-02 05:00:04 +00:00
Bram Matthys 9aed223b17 - Fixed zlib version check: 1.x is compatible with all 1.*, etc. (#0002966). 2006-09-28 20:43:52 +00:00
Bram Matthys 6ee4cf1ab5 credit.. Emre -> ironic ;P 2006-09-27 17:41:04 +00:00
Bram Matthys 38d5833c5b - Added doc/example.tr.conf (Turkish), translated by Emre. 2006-09-27 15:42:07 +00:00
Bram Matthys 1c1b90a801 - Added doc/help.tr.conf (Turkish), translated by Diablo. 2006-09-26 12:23:57 +00:00
autoupdate 9dc8f5fce1 Automatic weekly version update: 200639 2006-09-25 05:00:03 +00:00
Bram Matthys 1db0cc7dcd - Fixed cloak cutoff problem with long hosts. 2006-09-22 18:34:45 +00:00
Bram Matthys 262e2b2ca6 - Windows 2003: Fixed UnrealIRCd unable to boot if no DNS server is configured, we now
fallback to set::dns::nameserver in such a case. Thanks to Romeo (reporter, #0002802)
  and Bock for tracing this down.
2006-09-19 12:45:18 +00:00
autoupdate 4154d3ff5e Automatic weekly version update: 200638 2006-09-18 05:00:04 +00:00
Bram Matthys ac79932314 - Kick non-SSL users when the channel turns out to be +z during netmerge, reported by
Ron2K (#0002942).
(patch 90% by Trocotronic)
2006-09-15 12:29:01 +00:00
bock 45dd5b37f4 *Changes of week 36 2006-09-11 18:16:28 +00:00
autoupdate b30ff15c65 Automatic weekly version update: 200637 2006-09-11 05:00:05 +00:00
sinameki 6012a6e473 doc update of week 36 2006-09-10 20:19:59 +00:00
mark a138c0efb2 * Changes of week 36/06 2006-09-10 16:43:07 +00:00
trocotronic bffba7fc75 Cambios semana 36/06 2006-09-09 13:03:48 +00:00
stylus740 a3807a8d0a Changes of week 36 unreal32docs.de.html 2006-09-09 11:13:16 +00:00
babass 1adfad22f5 Ajout du support de FreeBSD 6.* 2006-09-08 15:46:45 +00:00
Bram Matthys 30dbdaa750 - Fixed small memory leak in resolver (~40 bytes when connecting to a server)
- Made Unreal use the original name in case of a CNAME, instead of the forwarded name,
  reported by jerrcsnet (#0003054).
- The "looking up your hostname" message was always sent, regardless of show-connect-info.
2006-09-06 12:24:05 +00:00
autoupdate 40d234d182 Automatic weekly version update: 200636 2006-09-04 05:00:03 +00:00
Bram Matthys c81b7595ab - Fix for channel mode +f: It incorrectly didn't eat a paramter on unset (ouch!), even
though it always acted like it did in the MODE line sent to the channel. This bug caused
  desynchs in some cases. Bug reported by Korfio (#0003048).
- Fixes to SVSNICK: case-change no longer causes a collision, don't return the value from
  exit_client (which would be FLUSH_BUFFER), fix QUIT not being sent back on collision.
- Fix for above so it doesn't -r the client.
2006-09-03 20:50:12 +00:00
Bram Matthys 31aaee7652 - Fixed bug in MODE #channel showing extended channel mode parameters when not in #channel.
- Made 'MODE #channel b' and friends show bans to ircops even when not in channel.
2006-08-29 13:22:58 +00:00
Bram Matthys 745dbfcfe0 - Module coders: Fixed CALLBACKTYPE_CLOAK_EX, it was not working properly at all. 2006-08-29 11:57:24 +00:00
autoupdate 198abda16c Automatic weekly version update: 200635 2006-08-28 05:00:04 +00:00
stylus740 4ae3b7071b doc/unreal32docs.de.html Changes of week 34 2006-08-26 08:27:05 +00:00
Bram Matthys 078915c8bd - Fixed some bugs in webtv code that could have caused trouble in the future (off by one),
reported by Ilja van Sprundel.
2006-08-23 11:15:23 +00:00
Bram Matthys 601eb71ba7 - Fixed SSL crash problem due to previous SSL change. 2006-08-23 10:43:02 +00:00
autoupdate 78d7291dcb Automatic weekly version update: 200634 2006-08-21 05:00:04 +00:00
Bram Matthys 1c993b2b24 - Fixed /SAJOIN able to join insecure users to +z channels, reported by phedny (#0002601). 2006-08-20 23:32:26 +00:00
Bram Matthys 38f4a154f3 - Small compile fix for above 2006-08-20 23:24:41 +00:00
Bram Matthys 05f5cfe02b - The server SSL certificate and private key can now be reloaded without requiring a server
restart, simply use: /REHASH -ssl
2006-08-20 23:05:55 +00:00
Bram Matthys c97cfd7a32 - Removed server numeric output from /MAP for normal users (still visible to ircops).
- Renamed unreal32docs.tk.html to unreal32docs.tr.html
- Module coders: Added HOOKTYPE_POST_SERVER_CONNECT (1 param: cptr) which is called when
  a server connects, just like HOOTYPE_SERVER_CONNECT but this is actually called *after*
  all clients and channels are synched. Obviously needed for some modules which must synch
  data that refers to clients/channels that would otherwise not exist yet on the other side.
2006-08-19 13:34:20 +00:00
autoupdate 30af83b7e3 Automatic weekly version update: 200633 2006-08-14 05:00:04 +00:00
autoupdate 06630b734d Automatic weekly version update: 200632 2006-08-07 05:00:04 +00:00
Bram Matthys c17fc7053d Mark 3.3* fork 2006-08-05 13:48:05 +00:00
Bram Matthys d57fda84df - Fixed SVSMODE -b [user] not always removing all bans (specificly, bans on the cloaked
host when you have a vhost), a code cleanup was also done. Based on patch from tabrisnet.
  Reported by Rob (#0002981).
2006-08-03 12:11:15 +00:00
Bram Matthys 9ea2326637 - Fixed operoverride message if oper is +h and -h's himself, reported by Bock (#2889). 2006-08-03 11:10:58 +00:00
Bram Matthys 4e26a3d494 - Fixed forgotten operoverride logmessage (kick if chan +Q), reported in #2889. 2006-08-03 10:51:05 +00:00
Bram Matthys 21eb4e5b5d - Fixed problem with oper as chanadmin kicking himself causing an operoverride notice,
reported by Bock (as part of #2889).
- Fixed desynch problem with +Q, reported by tabrisnet (#0002992).
- Updated doc/coding-guidelines
- Added bugs.* url to /info, was still showing some email address.
2006-08-03 10:44:55 +00:00
Bram Matthys f5b302c007 plok.. pre-commit. 2006-08-02 19:10:37 +00:00
Bram Matthys 9a804de95b Documented outdated for 69 days. Warning about document being out of date was sent 6 weeks ago. 2006-07-31 11:26:42 +00:00
autoupdate b2007fb08f Automatic weekly version update: 200631 2006-07-31 05:00:03 +00:00
gsf 85e36fda8d added OpenBSD 3.9 2006-07-28 09:50:14 +00:00
autoupdate 7ef365b991 Automatic weekly version update: 200630 2006-07-24 05:00:04 +00:00
Bram Matthys 78463e7d1d - Fixed tld::options:: not working properly, reported by DelGurth (#0003003). 2006-07-21 10:40:22 +00:00
sinameki 198e1c0dd1 doc update of week 27 2006-07-17 22:35:58 +00:00
autoupdate 909fda772b Automatic weekly version update: 200629 2006-07-17 05:00:03 +00:00
mark 18bbcb6dbe - Added a closing comment 2006-07-10 16:36:24 +00:00
autoupdate a4152ff15f Automatic weekly version update: 200628 2006-07-10 05:00:05 +00:00
babass 8eccfa7a33 Ajout du support de OpenBSD 3.9 2006-07-09 17:03:03 +00:00
mark f5a7d5e78b Changes week 27/06 2006-07-08 20:45:47 +00:00
stylus740 8e59f0c60e Changes of week 27: doc/example.de.conf doc/unreal32docs.de.html 2006-07-08 14:14:51 +00:00
angrywolf ed22d43bd2 Changes of week 27 2006-07-08 11:52:42 +00:00
trocotronic dbddfa8376 Cambios semana 27/06 2006-07-08 10:44:28 +00:00
bock 4e575921a1 changes of week 27 2006-07-08 10:28:17 +00:00
Bram Matthys e1dd8acd72 - Made it so undefining SHOW_SECRET (not the default) properly hides +s channels from ircops
(except netadmins), as it should. Reported and patch supplied by Jason (#0002965).
2006-07-04 10:05:18 +00:00
Bram Matthys 32495af164 - Added OpenBSD 3.9 to the supported OS list. 2006-07-04 10:03:27 +00:00
autoupdate b171bb498f Automatic weekly version update: 200627 2006-07-03 05:00:03 +00:00
Bram Matthys 1827f1d59b - Added HOOKTYPE_SILENCED: this is called whenever a message did not get delivered to a user
because the user was on the silence list.
2006-06-27 12:47:53 +00:00
autoupdate 401a8f7f97 Automatic weekly version update: 200626 2006-06-26 05:00:04 +00:00
Bram Matthys 11e6da7c3d - c-ares resolver: upgrade from 1.3.0 to 1.3.1. This mainly fixes compile problems,
including one reported by frigola on an old Sun Cobalt RAQ3.
  It will probably also fix an issue with the just released curl 7.15.4, if compiling
  with remote includes.
  TODO: Update win32 (not urgent)
2006-06-25 12:40:31 +00:00
mark 8953f00c1f -- Changed contact information (unreal32docs.nl.html) 2006-06-23 15:50:44 +00:00
mark 622dd2e02e Added end-comment on line 23, it wasn't there and giving errors 2006-06-22 13:42:42 +00:00
gsf ff8d65b110 Latest Update for 3.2.5 2006-06-21 21:46:42 +00:00
stylus740 c57310b809 corrected little mistake in doc/unreal32docs.de.html 2006-06-20 04:10:41 +00:00
babass 5f22c1acde Correction dans help.fr.conf 2006-06-19 17:26:44 +00:00
autoupdate 2c06dbc9d7 Automatic weekly version update: 200625 2006-06-19 05:00:05 +00:00
aquanight a8079fc9d0 Late commit on 2308. Ugh. 2006-06-18 21:55:20 +00:00
Bram Matthys e7595588d0 testest 2006-06-16 23:37:16 +00:00
Bram Matthys bf66d7d2df test2 2006-06-16 23:15:20 +00:00
Bram Matthys c42713b0de test ;p 2006-06-16 23:04:44 +00:00
Bram Matthys 2b3e89ab01 ** 3.2.5 release ** 2006-06-16 18:12:26 +00:00
Bram Matthys f7a0338e6c - Updated doc/technical/005.txt
- Mass version change
2006-06-15 19:20:39 +00:00
autoupdate 6c1273b311 Automatic weekly version update: 200624 2006-06-12 05:00:05 +00:00
stylus740 fd5d2342e0 unreal32docs.de.html : changes of week 23 2006-06-10 09:04:38 +00:00
angrywolf 21b8a31aec Use the right word for 'update'. 2006-06-08 16:25:22 +00:00
Bram Matthys 73ccaa0cf5 ** 3.2.5-rc3 release ** 2006-06-08 12:17:06 +00:00
Bram Matthys c0d8bf3330 then again, that didn't work 2006-06-08 11:10:28 +00:00
Bram Matthys 9d8854164f This is easier :P 2006-06-08 11:08:46 +00:00
Bram Matthys 4badd8fbd1 - On certain (newer?) FreeBSD's you get "make: Permission denied" after ./Config, but when
you do 'cd ..' and then 'cd -' again, make works just fine. This is going to be the most
  stupid workaround in history... Reported by vonitsanet and others (#0002926).
2006-06-08 10:56:42 +00:00
Bram Matthys c592701f91 - Disable /RESTART if running chrooted since that won't work anyway, reported by kayelem
(#0002956).
2006-06-07 11:31:52 +00:00
Bram Matthys 74c38ca2b5 - Made people with can_override able to change the topic again if not chanop and banned/+m-t,
reported by vonitsanet (#0002952).
2006-06-07 10:40:12 +00:00
Bram Matthys e70055008b reported -> reported and bugfix provided 2006-06-06 23:02:40 +00:00
Bram Matthys 7369f15b40 - Got rid of qline notice that could happen if using services holds (semi-race condition),
reported by tabrisnet (#0002950).
2006-06-06 22:57:07 +00:00
Bram Matthys 0a9cf5420e - Updated release notes, bleh.. I forgot :P 2006-06-06 19:30:06 +00:00
Bram Matthys bc90935c77 ** 3.2.5-rc2 release ** 2006-06-06 18:47:56 +00:00
Bram Matthys 5c53931125 - Removed PATCH5 from module version incompatibility system, so it can be used if we ever
need to update stuff and not enforce modules to recompile.. Might be useful one day ;p
- Updated list of donators
2006-06-06 18:41:56 +00:00
Bram Matthys d430eeb58e - Updated release notes a bit (will be updated more later): backrefs (\1) in regexes are
kinda scary, or at least at the moment.
2006-06-06 11:52:49 +00:00
Bram Matthys c65b46f966 - Fixed problem if c-ares library is already installed system-wide, reported by Trystan.
fix for fix
2006-06-05 23:16:34 +00:00
Bram Matthys d1b7ac4e40 - Fixed problem if c-ares library is already installed system-wide, reported by Trystan. 2006-06-05 23:10:01 +00:00
Bram Matthys 48c6df3558 - Fixed problem with IRCd using old link block settings if using a low connfreq, this made it
for example near-impossible to remove autoconnect for such a server. Reported by mixx941
  (#0002836).
2006-06-05 18:11:18 +00:00
Bram Matthys da44d389ab - Added translated Turkish docs (doc/unreal32docs.tk.html), translated by tt and Timaeus. 2006-06-05 12:59:42 +00:00
autoupdate 738cbdabc6 Automatic weekly version update: 200623 2006-06-05 05:00:04 +00:00
Bram Matthys 1d5742dbcf - Fixed compile (well, configure) problem on FreeBSD if compiling with remote includes
enabled. Reported by psadi (#0002941).
2006-06-03 21:52:59 +00:00
Bram Matthys f584c1f321 2>/dev/null plz 2006-06-03 21:43:52 +00:00
Bram Matthys 5a78c38632 try this ~ 2006-06-03 21:14:16 +00:00
stylus740 f49f6ed4dd unreal32docs.de.html - changes of week 22 2006-06-03 16:06:57 +00:00
Bram Matthys d6de099c2a commentaddedtoprevious: Saves some useless file reads. 2006-06-03 16:01:51 +00:00
Bram Matthys 72ce893ad4 - Made the resolver no longer check /etc/hosts, since that's how it used to be and should be.
and... config.h comment change..
2006-06-03 16:01:24 +00:00
Bram Matthys 329ce537ee it would help if I commit
- #undef STRIPBADWORDS did not work, reported by penna (#0002944).
2006-06-03 15:35:47 +00:00
Bram Matthys 429d6137e6 - #undef STRIPBADWORDS did not work, reported by penna (#0002944). 2006-06-03 15:15:32 +00:00
Bram Matthys abf11b8e66 - Made the "voice needed when channel is +m but -t" actually work, reported by Trystan and
Ron2K (#0002940).
2006-06-01 17:08:12 +00:00
Bram Matthys 41ac3a1907 - Deal with unsupported regexes added by remote servers (possible crash otherwise)
- Fixed crash problem on win32 if TKL times were <0. Obviously it's hard to protect from such
  invalid server traffic, but figured in this case it might be a good idea since *NIX does
  not crash.
- Made a note about possessive quantifiers, they are scary :P.
2006-05-31 23:42:18 +00:00
Bram Matthys b6baf5db33 - Added doc/example.ru.conf, translated by Bock. 2006-05-29 23:57:55 +00:00
angrywolf 91c49f0615 Changes of week 21 2006-05-29 12:43:45 +00:00
angrywolf 9d5b6e5a27 Changes of week 21 + grammar corrections 2006-05-29 12:38:34 +00:00
autoupdate 5d1487756f Automatic weekly version update: 200622 2006-05-29 05:00:04 +00:00
Bram Matthys 71dd4a775c ** 3.2.5-rc1 release ** 2006-05-28 20:57:36 +00:00
Bram Matthys d1626291ef - Win32 makefile/installer updates for new curl/ssl 2006-05-28 20:36:40 +00:00
Bram Matthys ad693eebcb - Fixed crash in /STATS Z (possibly rare), reported by yasinbey (#0002929). 2006-05-28 18:08:48 +00:00
stylus740 b78db0393e Changing of week21 and correcting some spelling mistakes doc/example.de.conf doc/unreal32docs.de.html 2006-05-28 07:52:43 +00:00
bock 6e256359c2 Changes of week 21: doc/unreal32docs.html
Äîáàâëåíà äîêóìåíòàöèÿ ïî "äåéñòâèòåëüíî ïñåâäîíèìàì" ("real alias").
Èñïðàâëåíû íåêîòîðûå íåòî÷íîñòè.
2006-05-27 15:00:25 +00:00
trocotronic 5d0d903809 Cambios semana 21/06 2006-05-27 12:06:13 +00:00
mark 94408ad5f3 -- Changes of week 21
-- Changed my contact information
2006-05-27 08:43:30 +00:00
babass e310ad6fc2 Ajout des 'vrais' alias 2006-05-25 13:19:33 +00:00
Bram Matthys 944f0880a7 - Updated release notes: more modulization and real command alias support.
+- Moved another 2K lines from core to modules, this means 31K lines are now in modules
+  and can be upgraded on the fly.
+- Real Command Aliases: This makes it possible to, for example, alias '/GLINEBOT' to
+  'GLINE <param> 2d Bots are not permitted on this network, etcetc'. For more information,
+  see the docs on the alias block and/or search for "glinebot" in doc/example.conf.
2006-05-25 00:55:18 +00:00
aquanight f46486ebc4 Fix NETINFO parameters. 2006-05-23 18:22:19 +00:00
Bram Matthys 25f0f2a069 - Fixed win32 compile problem cause by timesynch. 2006-05-22 18:30:23 +00:00
Bram Matthys e03b664abf win32 fix attempt 2006-05-22 18:24:11 +00:00
Bram Matthys 6fc5cb169b - Fixed compilation error on FreeBSD and others caused by timesynch, reported by tigra
(#0002921).
2006-05-22 18:15:04 +00:00
Bram Matthys a5dd4e6b77 notexttosend->needmoreparam @ aliases
added glinebot example @ real command aliases / updated description...
- Added 'real' aliases, this are aliases that map to real commands, so you can for example
  map the command '/GLINEBOT <x>' to 'GLINE <x> 2d Bots are not allowed on this server, blabla'.
  See the documentation on the alias block for more information. doc/example.conf contains an
  example as well (search for "glinebot").
2006-05-22 14:01:46 +00:00
autoupdate 206a2c62d6 Automatic weekly version update: 200621 2006-05-22 05:00:04 +00:00
Bram Matthys fdb256ddcb NOTE: WIN32 DOES NOT COMPILE AT THE MOMENT 2006-05-21 23:32:57 +00:00
Bram Matthys 5757c1a50e +extern MODVAR char modebuf[BUFSIZE], parabuf[BUFSIZE]; 2006-05-21 23:26:12 +00:00
Bram Matthys fe4c8b4a83 - Added 'real' aliases, this are aliases that map to real commands, so you can for example
map the command '/BLAH 5' to 'NICK idiot5'. More info in docs on alias block.
- Modulized: badwords system (src/badwords.c is now gone) and StripColors/StripControlCodes
  to m_message, multiple netsynch routines to m_server, send_list to m_list, a certain mode
  routine to m_svsmode, all /MSG IRC.. webtv stuff to src/modules/webtv.c which is compiled
  with m_message.
  This means another ~1500 lines of code are now in modules (and thus can be upgraded on
  the fly), which brings the total of modulized lines at 32K.
2006-05-21 23:16:53 +00:00
bock a0fc4bb5e3 Óñòðàíåíû íåêîòîðûå íåòî÷íîñòè è îøèáêè (íàïðèìåð ïåðåõîäû íà #). 2006-05-21 16:49:25 +00:00
bock c69121e001 Íåáîëüøàÿ êîððåêöèÿ âèäà html, èñïðàâëåíèå îïå÷àòîê è îøèáîê, äîáàâëåíèå
äîêóìåíòàöèè ïî ñèíõðîíèçàöèè âðåìåíè è cgiirc.
2006-05-21 13:49:48 +00:00
Bram Matthys 0625c384a2 - Updated windows compile instructions again.
- Updated release notes
2006-05-21 13:44:11 +00:00
Bram Matthys 8004d10a65 - Fixed some compile warnings for Windows 2006-05-21 00:38:46 +00:00
Bram Matthys d4c9e0af27 - Added MINIMAL time synchronization support. This is enabled by default and will try to
synchronize the IRCd clock (TSOffset) with a few good time servers. It currently only does
  this on-boot, but it will hopefully help a lot of people with most of their time differences.
  I still keep recommending anyone who can to run proper time-synchronization software such as
  ntpd/ntpdate on their servers.
  To disable time synchronization (eg: because you are already running ntp), you can simply
  set set::timesynch::enabled to no.
  The boot timeout for the timeserver response (=causes boot delay) can be configured via
  set::timesynch::timeout and is set to 3 seconds by default (range is 1s-5s), there should
  be no reason to change this.
  The time server can be configured by setting set::timesynch::server, the default is to
  use 3 time servers on 3 continents (US, EU, AU) which should be sufficient for anyone but
  if you got a good one near you you can use that one instead.
  The time protocol we use is (S)NTP v4.
2006-05-21 00:35:45 +00:00
Bram Matthys 0b0c06fa14 - Fixed oper count bug which happened on /mode, this was our fault (can't blame services in
this case ;p). Reported by KnAseN and many others (#0002581).
  There might still be other operator count bugs, but these are triggered by a different bug
  and may or may not be caused by services.
2006-05-19 11:49:35 +00:00
Bram Matthys e7e32993af - Made empty command aliases work (no more "no text to send" error) if the alias finds it ok,
which basically means if it allows .*. If you want to require a parameter, use .+ (or
  anything other in regex that requires at least one character). Suggested and patch provided
  by Nazzy (#0002722).
2006-05-17 12:46:26 +00:00
Bram Matthys 9c71708529 - Allow *lining of literalident@* such as clones@* (but not *clones@*), this is also as
far as we want to go with regards to relaxing "too broad" checking... Just continue to use
  services AKILL for (other) "too broad cases", as many people (correctly) do. Change
  suggested by salama (#0002911).
2006-05-17 12:12:03 +00:00
Bram Matthys 1ed25f94a6 - Fixed implicit declaration compiler warning if compiling for ipv6.
- Fixed some small memory leak on rehash.
- Removed spamfilter-oversized-checking when trying to REMOVE one.. duh.. reported by satmd
  (#00029160).
2006-05-17 11:46:24 +00:00
trocotronic 479e06e01e Revisión 2006-05-15 19:37:17 +00:00
trocotronic a43388c2b6 Revisión 2006-05-15 19:31:40 +00:00
autoupdate 93ed724447 Automatic weekly version update: 200620 2006-05-15 05:00:03 +00:00
aquanight 154bbc0ca3 Just one of those days... 2006-05-13 21:41:42 +00:00
aquanight 1654ced15d Format error + forgot PONG token. D'oh. 2006-05-13 21:14:22 +00:00
aquanight 346b947794 You know, maybe I should update the Update Date? 2006-05-13 21:07:33 +00:00
aquanight a8d421d3cc Added PING and PONG. 2006-05-13 21:06:27 +00:00
autoupdate 1efd22d161 Automatic weekly version update: 200619 2006-05-08 05:00:03 +00:00
Bram Matthys 98cd2c254e - Added error checking to (main) setuid/setgid calls. 2006-05-05 23:02:11 +00:00
Bram Matthys 6b6933c1b9 - (multiple?) IPv6 listen blocks could cause a crash in config parser. Reported by Robby22
(#0002868).
2006-05-04 12:08:59 +00:00
autoupdate 6a2e196acf Automatic weekly version update: 200618 2006-05-01 05:00:04 +00:00
Bram Matthys 6a5677c335 unreal.exe -> debugging symbols 2006-04-29 19:43:43 +00:00
Bram Matthys e679a6760b win32 service bugfix 2006-04-29 19:41:18 +00:00
Bram Matthys abfdc9050d - set::ssl::egd does not require a parameter per-se (bug caused few days ago), reported
by Trocotronic (#0002899).
2006-04-29 16:51:38 +00:00
Bram Matthys bdf968e11a - Made it so me::numeric can be changed (when not linked to any servers) so no server restart
is needed anymore (#0002896).
2006-04-29 15:17:39 +00:00
Bram Matthys acbcd3cdd3 - Fixed bug with chinese-* charsets not getting detected properly by config parser.
Reported and patch provided by Xuefer (#0002891).
2006-04-29 14:58:38 +00:00
Bram Matthys 1c4b21e129 - Updated sendnotice() so it sends a proper notice if the user is in pre-connect stage. 2006-04-29 14:51:37 +00:00
Bram Matthys e265c08729 - Module coders: For cloaking, added a new callback type CALLBACKTYPE_CLOAK_EX (which replaces
CALLBACKTYPE_CLOAK). This passes 'aClient *sptr, char *host' instead of only 'char *host'
  to the cloaking module, which can be useful if you need to cloak on something other than
  IP/host. Suggested by fez (#0002275).
  Module may still provide only CALLBACKTYPE_CLOAK though, in fact this is what the official
  cloaking module does. So no updating of cloaking modules needed.
  A side-effect of this "extra cloaking" callback is that we needed to change make_virthost()
  which now has an extra parameter in front, and another side-effect is that calling the
  CALLBACKTYPE_CLOAK may not work since only *_EX might be available. To my knowledge there
  are very few modules (only 1 I know) that will have a problem due to this, so sounds like
  an affordable tradeoff.
2006-04-29 14:49:36 +00:00
Bram Matthys 40f1ad1cfe - Added compiler version checking to "module binary incompatability"-check. This should fix
some more odd problems from people (eg: people switching from GCC 3.x to 4.x and wondering
  why they are crashing or getting other errors).
** actually, this was already comitted, but forgot to commit Changes :p **
2006-04-29 14:36:58 +00:00
Bram Matthys 46a65d553d - Added compiler version checking to "module binary incompatability"-check. This should fix
some more odd problems from people (eg: people switching from GCC 3.x to 4.x and wondering
  why they are crashing or getting other errors).
2006-04-28 14:08:06 +00:00
Bram Matthys 72b530c149 - Fixed null pointer config parser crash, reported by alkalinex (#0002894). 2006-04-28 13:07:15 +00:00
Bram Matthys f0e14f7847 credit zell for vc2005 thing for his help... -> Also thanks to Zell for his help. 2006-04-25 02:10:22 +00:00
autoupdate de2e10619d Automatic weekly version update: 200617 2006-04-24 05:00:04 +00:00
Bram Matthys cf6da5b6d0 "DEBUGEXTRA=0" -> "#DEBUGEXTRA=1": No idea if it's needed, but it's better I guess... 2006-04-19 12:48:47 +00:00
Bram Matthys dabbe786be - Fixed Microsoft Visual Studio 2005 (8.x) unable to compile, and, after fixing that, causing
a lot of crashes. Both are now fixed. Reported by Zell, Yamake, and others (#2875, #2704).
  Fix provided by Xuefer. This also gets rid of some annoying and useless compile warnings
  as well.
2006-04-19 12:38:47 +00:00
aquanight 76350e1319 Fixed a wrong compile flag info. 2006-04-17 06:16:51 +00:00
aquanight 49ee17db5d Updated protocol information about the new PROTOCTL CLK. 2006-04-17 06:02:10 +00:00
autoupdate fc4d4b8ec5 Automatic weekly version update: 200616 2006-04-17 05:00:05 +00:00
Bram Matthys bfb9b91467 - Fixed set::maxdccallow setting to <=0 still allowing one entry to be set, reported by
RSCruiser (#0002883).
2006-04-16 23:58:01 +00:00
Bram Matthys 8607d950b7 - Made the IRCd calculate the cloaked host only once upon connect, and store (cache) it.
- When checking if a user is banned, we always check the cloakhost too. Previously we could
  not do this if the user had a /VHOST (=a minority of the cases, but still...). In short,
  this is some extra protection to combat ban evasion.
- Performance of is_banned() *slightly* improved (just 1-2 usec, but 7 usec if no bans).
- [Module coders] For extban routines, we now offer a routine extban_is_banned_helper(buf)
  which can be used instead of the ban_realhost/etc static chars stuff, see
  extban_modeq_is_banned for a (real-life) example of how this is used.
- [Services coders!] Added PROTOCTL CLK (requires NICKv2) which adds an extra field in the
  NICK command (when a user connects) right before the infofield (gecos).
  The added field contains the cloaked host, that is: the masked host if +x would have been
  set. This field is ALWAYS sent, regardless of whether the user is actually +x or not.
  Services can then store this field in memory, to know the host of the user if the user
  is set +x (+x-t). This is a (better) alternative to PROTOCTL VHP, with no race conditions,
  and avoids some other VHP problems.
  VHP will stay supported though... so it's not mandatory to switch over.
2006-04-16 23:27:56 +00:00
mark e636820eba Added CGI:IRC sections 2006-04-16 20:59:58 +00:00
Bram Matthys f69fd6bf11 win32 changes for this commit:
- c-ares (currently, a forked off version) enhancements:
  - '/quote dns i' now shows the nameserver settings (which is taken from /etc/resolv.conf
    on *NIX, and from the registry on Windows)
  - We no longer depend on a C++ compiler (was useless c-ares dependency caused by libtool)
  - '/REHASH -dns' now rereads the resolver data from resolv.conf/registry, no IRCd restart
    needed anymore. It's currently kinda experimental however, but I *think* it will work ok.
  Unfortunately the above features required some ugly hacks if curl was enabled, so if you
  use curl (Remote includes), feel free to test on your OS (Linux, but especially FreeBSD
  and the other *NIXes) to see if things still compile (make clean; ./Config && make).
2006-04-11 22:27:35 +00:00
Bram Matthys 8ff913a2db - c-ares (currently, a forked off version) enhancements:
- '/quote dns i' now shows the nameserver settings (which is taken from /etc/resolv.conf
    on *NIX, and from the registry on Windows)
  - We no longer depend on a C++ compiler (was useless c-ares dependency caused by libtool)
  - '/REHASH -dns' now rereads the resolver data from resolv.conf/registry, no IRCd restart
    needed anymore. It's currently kinda experimental however, but I *think* it will work ok.
  Unfortunately the above features required some ugly hacks if curl was enabled, so if you
  use curl (Remote includes), feel free to test on your OS (Linux, but especially FreeBSD
  and the other *NIXes) to see if things still compile (make clean; ./Config && make).
2006-04-11 22:00:01 +00:00
Bram Matthys 4826668565 - Made doc/compiling_win32.txt a bit more ugly (mention that only vstudio 7.x actually works
at this moment).
2006-04-10 18:31:15 +00:00
Bram Matthys 97eff14af2 - Made the windows installer better compress things (SolidCompression=true), suggested
by Trocotronic (#0002877).
2006-04-10 14:06:45 +00:00
autoupdate 37e52ffa2d Automatic weekly version update: 200615 2006-04-10 05:00:04 +00:00
Bram Matthys 4530ee5219 - Made it so if the channel is +m but -t, you need at least voice (+v) to change the topic.
Reported by aquanight (#0002233).
[commit accidently happened earlier btw...]
2006-04-09 20:17:25 +00:00
Bram Matthys e0b116a663 - Hide stats request if requested by an U-lined client. Suggested by vonitsanet (#0002865). 2006-04-09 19:34:36 +00:00
Bram Matthys 3c529c7ee1 - Fixed CHROOTDIR compilation problem, reported by toshio (#0002854).
- Improved CHROOTDIR documentation in include/config.h
- Added error if CHROOTDIR is defined but IRC_UID isn't (in include/config.h).
2006-04-09 19:28:30 +00:00
Bram Matthys 5f6f296cac - Removed some odd code causing a 'my port is' message to appear in (f.e.) syslog, reported
by rsc (#0002853).
2006-04-09 18:40:42 +00:00
Bram Matthys eee6d3c8d1 - Local opers may now use /TRACE (local only), suggested by GSF19 (#0002365). 2006-04-09 18:37:38 +00:00
Bram Matthys ae03d2e4e8 - Added chained SSL certificates support, patch provided by justdave (#0002848). 2006-04-09 16:51:04 +00:00
Bram Matthys e88ee5180b tyoos 2006-04-04 19:54:26 +00:00
Bram Matthys a95f26b1c9 - Added minidump support for crashes to aid debugging a bit. 2006-04-04 19:46:22 +00:00
autoupdate d3fc59b08e Automatic weekly version update: 200614 2006-04-03 05:00:04 +00:00
Bram Matthys 6b982f7aae - Fixed (unimportant) DNS resolver problem if using some LAN domains with digits at end,
reported by Bock (#0002843).
2006-04-02 20:13:23 +00:00
Bram Matthys 17b201793c - Changed default PREFIX_AQ behavior to ON instead of OFF. Since basically all major IRC
clients support it now (mIRC, xchat, epic, eggdrop, Klient, PJIRC, irssi, CGI:IRC, etc).
  It has always been weird that win32 had it ON by default and *NIX OFF, anyway.
  Naturally this change will be mentioned clearly in next release notes.
2006-03-30 23:11:08 +00:00
autoupdate 82a65df46c Automatic weekly version update: 200613 2006-03-27 05:00:04 +00:00
mark 2cdfbe6530 - Added doc/example.nl.conf 2006-03-25 13:38:32 +00:00
bock 5f6e18d6a7 Changes since release 3.2.4 2006-03-21 14:46:32 +00:00
autoupdate f87bee6382 Automatic weekly version update: 200612 2006-03-20 05:00:04 +00:00
stylus740 0fc6e26be4 doc/example.de.conf doc/unreal32docs.de.html
Changes of week 11
2006-03-19 19:42:52 +00:00
mark a62cb8de7a Updated to 1.1.2.144.2.101 2006-03-19 11:27:48 +00:00
angrywolf 8c59e918b7 Changes of week 11 (+ grammar corrections) 2006-03-18 20:21:37 +00:00
Bram Matthys 2134f91309 updated credits (requested by Bock) 2006-03-18 19:25:54 +00:00
angrywolf 6c1df13565 Changes of week 11 2006-03-18 18:09:58 +00:00
trocotronic 66a4fb57d4 Cambios semana 11, 2006 2006-03-18 10:40:38 +00:00
babass 424520d2cf Réécriture de certains passages de example.fr.conf et unrealdocs.fr 2006-03-15 19:50:05 +00:00
Bram Matthys 54c2296dae - CGI:IRC: gzlines, zlines, throttling, and unknown connect floods are now all checked for
clients connecting trough a CGI:IRC gateway that is in cgiirc { }. This might also fix a bug
  where (g)zlines were not applied to CGI:IRC clients, reported by devil (#0002850).
2006-03-14 19:47:08 +00:00
autoupdate edaec98025 Automatic weekly version update: 200611 2006-03-13 05:00:03 +00:00
Bram Matthys 898ff7855d - Partially redid m_message, moved some stuff to a subroutine, etc to avoid duplicate code
- Rephrased/editted part of example.conf and unreal32docs to make it a littttttle bit easier
  for beginners / try to mention the FAQ a bit more explicitly.
2006-03-12 20:56:09 +00:00
autoupdate 9db31d4032 Automatic weekly version update: 200610 2006-03-06 05:00:03 +00:00
Bram Matthys 996381ec47 - Fixed possible netsplit problem (#0002790). 2006-03-05 23:35:48 +00:00
autoupdate 161624723c Automatic weekly version update: 200609 2006-02-27 05:00:04 +00:00
Bram Matthys 3109c877aa - Actually committed src/modules/m_names.c... This tends to help with the compiling process. 2006-02-26 13:29:21 +00:00
Bram Matthys bc0465ebfe - Updated win32 makefile due to m_names modulization, reported by Trocotronic (#0002838). 2006-02-26 13:15:22 +00:00
Bram Matthys 69dc0cfe91 changelog comment.. mirc 5.17 -> 6.17 2006-02-26 13:11:41 +00:00
Bram Matthys fd5c1f778f - Fixed bug in currently unused code, reported by DeadNotBuried (#0002835).
- Modulized NAMES command (can now be upgraded on the fly, if ever needed).
- Added NAMESX support, seeing both mIRC (5.17) and XChat support this. What this does is
  send all rights of all users on the channel in the NAMES reply (eg: @+Syzop if the user is +ov)
  instead of only the highest one (@Syzop in previous example). We only do so if the client
  explicitly requested this via a NAMESX in a PROTOCTL message (eg: 'PROTOCTL NAMESX').
  Note that there is a glitch: since most clients only send the PROTOCTL NAMESX after they
  see NAMESX listed in the 005 announce message this has the effect that if there are
  set::auto-join channels present (where users are automatically joined to by the server) the
  extended NAMES reply will not be sent for those channels, because from the IRC server' point
  of view the join happened before the PROTOCTL and hence it does not know the client wanted
  NAMESX at that point (the result is not catastrophic: the old-style NAMES is sent for those
  channels). Anyway, for all non-autojoin channels this works great. So still worth adding IMO.
  Originally suggested in #0000606.
  Side note: this does not mean we dropped the idea of (also) having a challenge-response
  system for good ;).
2006-02-26 01:06:10 +00:00
stylus740 404a5df740 Changes of week08: doc/unreal32docs.de.html 2006-02-25 08:41:20 +00:00
babass 7a7c5bebaa Refonte totale du support CGI:IRC 2006-02-21 19:17:59 +00:00
autoupdate a52dd18f85 Automatic weekly version update: 200608 2006-02-20 05:00:05 +00:00
angrywolf ae29de76d4 *** empty log message *** 2006-02-19 15:52:43 +00:00
angrywolf bd7520b12d Corrected the translation of the word 'feature', as it was pointed out in a radio show (http://www.modemidok.hu/mohh_3-20_050925.shtml, 2005-09-15) that 'featúra' is a weird, slangy and therefore wrong expression for that hard-to-translate word. 2006-02-19 15:31:31 +00:00
angrywolf 65383f4355 Changes of week 07 2006-02-19 12:55:00 +00:00
trocotronic 7ecabaeae3 Cambios semana 07, 2006 2006-02-18 19:38:30 +00:00
Bram Matthys 5d2dc222f2 BLAH! EHM I REMOVED SOMETHING !!1111 OK!!!? 2006-02-18 13:06:23 +00:00
trocotronic bdc18debdc Cambios semana 07, 2006 2006-02-18 12:51:22 +00:00
stylus740 67ea00419a unreal32docs.de.html - Changes of week 07 2006-02-18 10:13:45 +00:00
Bram Matthys d3fc895063 - Fixed (serious) bug in CGI:IRC code, IP's were often not right, reported by 3rror (#2824). 2006-02-16 20:34:09 +00:00
Bram Matthys aca2a5061d - Added error message if c-ares failed to initialize, might help in case something is buggy
(either with Unreal or the OS/environment).
2006-02-16 17:18:00 +00:00
Bram Matthys 6267898f3e REFIX 2006-02-16 16:33:16 +00:00
Bram Matthys 6623b10a16 socket.h? 2006-02-16 16:30:22 +00:00
Bram Matthys 3e0b0f2e18 - Fixed *BSD compile problem caused by changes of above, reported by 3rror (#0002823). <-- credit 2006-02-16 16:26:11 +00:00
Bram Matthys 13f99d6bc1 inet.h! 2006-02-16 16:24:50 +00:00
Bram Matthys ca069a7c88 'usually cgiirc.conf' -> 'cgiirc.conf' 2006-02-16 15:43:34 +00:00
Bram Matthys 07ccc74036 - Redid whole CGI:IRC support. Configuration is now moved to cgiirc { } blocks.
We now support the webirc ('webirc_password' in CGI:IRC) method, which is kinda superior
  to the older method ('realhost_as_password').
  See the Unreal documentation (section '4.36 - Cgiirc Block') for details on how to configure.
- Changed quoting color in unreal32docs.. looks better now IMO (only English docs updated).
2006-02-16 15:32:16 +00:00
Bram Matthys 3d3c59be40 - Fixed win32 compile problem due to CGI:IRC support, reported by therock247uk (#0002821). <-- changelog edit only 2006-02-15 11:29:08 +00:00
Bram Matthys 22921c1b1f - Fixed win32 compile problem due to CGI:IRC support (?) 2006-02-15 11:26:47 +00:00
Bram Matthys b6c75bf985 rephrased CGI:IRC talk 2006-02-14 17:02:47 +00:00
Bram Matthys a47df87139 slightly rephrased CGI:IRC host spoofing explanation 2006-02-14 17:00:16 +00:00
Bram Matthys 99b6f2ea38 - Added CGI:IRC host spoofing support. This means you can mark specific CGI:IRC gateways as
"trusted" and the IRCd will show the users' _real_ host/ip everywhere on IRC, instead of the
  _CGI:IRC-gateway_ host/ip.
  To do so you must set 'realhost_as_password' to 1 in your cgiirc.conf. And add the
  CGI:IRC gateway(s) you fully trust to set::cgiirc::hosts.
2006-02-14 16:58:43 +00:00
Bram Matthys 612c52c7a3 win32compile w/free --> mention it's untested. 2006-02-14 12:39:39 +00:00
Bram Matthys c8bc986778 - Updated win32 compiling instructions; mention the free MS stuff that can be used to compile
UnrealIRCd.
2006-02-14 12:38:51 +00:00
Bram Matthys 5f8bf556e1 - When set::options-show-connect-notice was enabled the "*** Looking up your hostname..."
message was not being shown (all others were). Reported by fbi (#0002820).
2006-02-14 12:36:21 +00:00
Bram Matthys 41bdfc3b29 - When set::options-show-connect-notice was enabled the "*** Looking up your hostname..."
message was not being shown (all others were). Reported by fbi (#0002820).
2006-02-14 12:19:18 +00:00
autoupdate e65c17e2e1 Automatic weekly version update: 200607 2006-02-13 05:00:03 +00:00
stylus740 8bdd8cb5a5 unreal32docs.de.html Changes of week06 2006-02-11 14:11:22 +00:00
Bram Matthys 2487621092 - Updated autoconf/configure.in again (does not produce different ./configure output) 2006-02-07 13:02:14 +00:00
Bram Matthys 545d087a99 - Updated autoconf/configure.in to make newer autoconf's work (developers only), reported
and patch provided by Xuefer (#0002798). Also rebuilt ./configure from configure.in with
  autoconf 2.59 from my own machine.
2006-02-06 19:35:38 +00:00
autoupdate 9422a9ffd1 Automatic weekly version update: 200606 2006-02-06 05:00:04 +00:00
Bram Matthys decce0d11f clarifications regarding fixed version 2006-02-05 17:43:19 +00:00
Bram Matthys 050846cd02 - Added unreal32docs.ru.html, translated by Bock. 2006-02-05 17:32:58 +00:00
Bram Matthys fa9cf506e7 - The '?' wildcard was completely broken in 3.2.4, reported by tabrisnet (#0002797). 2006-02-05 17:20:36 +00:00
Bram Matthys 5dcddc4404 - Updated example.bg.conf, the one shipped with 3.2.4 had several errors. 2006-02-04 21:17:36 +00:00
Bram Matthys d223da8a26 - Fixed amd64 problem regarding /*LINE always saying 'The time you specified is out of range',
reported and test shell provided by Tauop.
2006-02-04 20:30:02 +00:00
Bram Matthys 356c492c49 ** 3.2.4 release ** 2006-02-03 13:42:55 +00:00
Bram Matthys 8364783817 clarified some release notes text 2006-01-30 23:28:39 +00:00
Bram Matthys 43749211fe ** public 3.2.4-rc3 release ** 2006-01-30 21:52:33 +00:00
Bram Matthys dc19350c70 - Redid glob matching. Escaping is now ripped out for normal bans (as it should be), this
means no longer weird issues with +b *\* etc not banning nicks with \ in it.
  ExtBan ~c/~r get special treatment and will use our match_esc [match with escaping]
  routine, that way you can ban channels such as "#f*ck" via "+b ~c:#f\*ck".
  Fix triggered by bugreport of vonitsanet (#0002782).
2006-01-30 20:14:39 +00:00
autoupdate f21bbdadf5 Automatic weekly version update: 200605 2006-01-30 05:00:04 +00:00
aquanight 731b77f206 Minor formatting "whoops". 2006-01-28 21:54:18 +00:00
aquanight bd6979e842 More #2778 fun ;p . 2006-01-28 21:49:42 +00:00
aquanight a50455c225 Knew I forgot something... fixed JOIN 0 bit now. 2006-01-28 19:49:05 +00:00
aquanight 4b2da6f3d0 Base64 info added. 2006-01-28 19:31:18 +00:00
aquanight ca7f59a473 Most of #2778 (will do b64 table later :P) 2006-01-28 17:11:33 +00:00
stylus740 5298931dd8 Changes of week 04 in unreal32docs.de.html 2006-01-28 08:49:00 +00:00
Bram Matthys 08fbbff0f6 updated contact info 2006-01-27 22:00:35 +00:00
Bram Matthys 8a0ebfdab7 - Added unreal32docs.nl.html, translated/maintained by Mark. 2006-01-27 21:07:55 +00:00
Bram Matthys 0d05df5237 changelog-only text change:
- Updated help.ru.conf (corrections by CS-Help / Bock)
- Updated example.bg.conf (by Peace)
2006-01-27 15:47:48 +00:00
Bram Matthys 762e6c7050 changelog-only textfix 2006-01-27 15:46:18 +00:00
Bram Matthys f8194daa68 - Updated help.ru.conf (corrections by CS-Help) and example.bg.conf (by Peace) 2006-01-27 15:42:58 +00:00
Bram Matthys b30301ecfe - Sometimes if an oper was connected trough SSL and had the junk snomask (+s +j) set it
would cause a crash. Reported by chasingsol (#0002777).
2006-01-27 15:25:31 +00:00
cvs2hg dbd9932635 fixup commit for tag 'unreal3_2_4rc2' 2006-01-26 15:22:47 +00:00
Bram Matthys 6c8c7f36a3 - Fixed localhost crash (if no dns record for 127.0.0.1), reported by Trocotronic (#2773). 2006-01-26 15:22:46 +00:00
angrywolf f6ae3f8844 Changes of week 03 2006-01-26 15:03:18 +00:00
Bram Matthys 8dac61a435 ** public 3.2.4-rc2 release ** 2006-01-26 14:57:24 +00:00
Bram Matthys 6e70facb1e - Fixed(?) bug due to match() rewrite: we now use our old rules with escaping again, due to
the switchover we were accidently using different ones which caused funny kill messages
  like "You were killed by a.b.c (a!a.b.c (SOMENICK[N\A](?) <- d.e.f))." This also broke
  some bans in pre2/rc1. Bug reported by HERZ (#0002772).
2006-01-26 14:02:21 +00:00
Bram Matthys 35ce9949d9 added release candidate header to release notes 2006-01-25 20:40:41 +00:00
Bram Matthys 8b42fad320 ** public 3.2.4-rc1 release ** 2006-01-25 20:25:37 +00:00
Bram Matthys 242f66ed6c +- For users using remote includes w/ssl (https, ftps): the CA certificates are now stored
+  in curl-ca-bundle.crt (shipped with Unreal) which contains most major CA's plus CACert.
2006-01-25 16:26:26 +00:00
Bram Matthys 88da136dda copy curl-ca-bundle.crt 2006-01-25 15:10:50 +00:00
Bram Matthys c916651eb4 - Curl users using https/ftps/etc: UnrealIRCd now ships with a 'curl-ca-bundle.crt' which
contains the (root) certificates of most major Certificate Authorities. It is basically
  the default curl ca-bundle.crt plus cacert's certificates.
  The 'curl-ca-bundle.crt' will be copied to the installation dir if needed.
  It will from now on be used by Unreal for all remote includes (curl) related certificates.
  If you want to use https but don't want to buy a certificate, we suggest you to apply for
  a free certificate at CACert (www.CACert.org). Or, alternatively, add your own certificate
  (PEM encoded) to curl-ca-bundle.crt, see 'SSLCERTS' in the curl package for more info.
2006-01-25 15:08:55 +00:00
Bram Matthys 326a981c0a added... 2006-01-25 13:21:39 +00:00
Bram Matthys 6990888040 curl-ca-bundle.crt 2006-01-25 13:19:23 +00:00
Bram Matthys 4efd5e60f6 curl-ca-bundle.crt stuff 2006-01-25 13:17:14 +00:00
Bram Matthys 3c0309a98d Nazzy = supporter 2006-01-24 16:48:31 +00:00
Bram Matthys 93cb84f67c - Fixed SVS2SNO not always notifying the user of the snomask change, reported by decoder
(#0002767).
2006-01-24 13:29:13 +00:00
aquanight 1113088f1a More 3.2.3 -> 3.2.4 updates 2006-01-24 01:46:02 +00:00
Bram Matthys 1d70016ef8 - Made it so a set::maxbanlength and/or set::maxbans of 0 denies all bans properly, and
fixes the first-ban-can-be-as-long-as-you-want bug, both reported by Trocotronic (#2762).
2006-01-24 00:41:08 +00:00
Bram Matthys ea02baae7b Creditted Voodoohosting 2006-01-24 00:18:02 +00:00
Bram Matthys ddd6b8876f ** internal 3.2.4-pre2 release ** 2006-01-23 23:32:23 +00:00
Bram Matthys a73a12c898 - Removed some old config.h stuff + clarified some text, reported by Jason (#2765, #2766). 2006-01-23 23:20:19 +00:00
Bram Matthys 02227c7696 some changes/release notes text updates 2006-01-23 23:18:46 +00:00
Bram Matthys 5f272b56e7 - Switched over to an older match() routine based on hybrid, this one is a bit less optimized
but is actually understandable and has less bugs. This fixes +b ~c:#c\*t not properly
  matching #c*t, reported by Jason (#0002752). Initial results look good, but this needs
  some good testing ;).
2006-01-23 22:05:50 +00:00
Bram Matthys 950ba7c702 - Made set::maxbanlength also count the "to be set" ban in, otherwise you could exceed the
limit by (max) NICKLEN+USERNAME+HOSTNAME+2, reported by Trocotronic (#0002762).
2006-01-23 20:42:07 +00:00
Bram Matthys b38f4fce10 - set::maxbans / set::maxbanlength were reported as duplicates when they were not, reported
by Jason and trystanscott (#0002753).
- Made it so bans on normal users work with +mu, reported by Nazzy (?).
2006-01-23 20:32:30 +00:00
babass 4bf143993b Préparation pour la version pre-1 2006-01-23 20:27:57 +00:00
autoupdate 00933ef23b Automatic weekly version update: 200604 2006-01-23 05:00:03 +00:00
trocotronic 58872ce250 Cambios semana 03, 2006 2006-01-22 14:52:25 +00:00
aquanight e382a3ac95 3.2.3 -> 3.2.4 2006-01-21 17:01:34 +00:00
stylus740 7e2eb48cea unreal32docs.de.html - Changes of week 03 2006-01-21 09:12:24 +00:00
cvs2hg b0e527ec87 fixup commit for tag 'unreal3_2_4pre1' 2006-01-20 16:28:15 +00:00
Bram Matthys 6feeafa7bc bleh.. version -> pre1 2006-01-20 16:28:14 +00:00
Bram Matthys 66686bd310 ** internal 3.2.4-pre1 release ** 2006-01-20 16:09:18 +00:00
Bram Matthys a38b5ad538 updated... for help.ru.conf 2006-01-20 16:08:46 +00:00
Bram Matthys ea1ecd25ab - Added doc/help.ru.conf, translated by Slyder. 2006-01-20 14:49:52 +00:00
gsf 6499bc6a29 Latest Update 2006-01-20 12:14:38 +00:00
Bram Matthys 379fc66e8b bleh.. changes typo 2006-01-19 21:48:17 +00:00
Bram Matthys 9109d9a8a3 - Update wircd.def (for developers). 2006-01-19 21:47:31 +00:00
Bram Matthys 6f7cc9ba88 - Updated makefile.win32: apparently libcurl.dll is now libcurl_imp.dll (import library)
- Updated unrealinst.iss: made it easier for me to have 2 curl versions, this is so we can
  ship the SSL version of unreal with a curl that supports SSL (https, etc).
- Preperations for pre-1 (version change, etc)
2006-01-19 21:38:11 +00:00
Bram Matthys 53741c5c48 - Updated /CREDITS (forums/mainsite hosting and update of current active supporters). 2006-01-19 00:34:28 +00:00
Bram Matthys 383c2ef7c0 - Removed small comment from docs, which no longer applies (sorry translators ;p). 2006-01-17 22:06:29 +00:00
aquanight 8c8d89a763 Added a little blurb for SVSNICK. 2006-01-17 22:03:48 +00:00
Bram Matthys 055ab13080 - Nick Character System: Silently not advertising danish if using latin1, circumventing link
problems if using latin1.
2006-01-17 22:03:29 +00:00
angrywolf ee918eb576 Changes of week 01 & 02 2006-01-17 03:06:38 +00:00
Bram Matthys 443e9cdcd6 - Empty (but existing) include files no longer cause an error. Reported by w00t (#0002460). 2006-01-16 22:13:13 +00:00
babass deafe60ff4 Ajout du "Nombre de bans maximum" par salon 2006-01-16 22:06:44 +00:00
babass 0ab55be3d0 Nickchar update 2006-01-16 21:48:09 +00:00
Bram Matthys 1b690bb64a changelog text only edit...
- Changed the default maxbanlength from 1K to 2K, which means people can set more bans because
  in pracitce the 60 (maxbans) limit was never met because the maxbanlimit was set so low.
2006-01-16 21:32:24 +00:00
Bram Matthys ceb75b7a7a - Made the "max bans per channel" setting dynamic. This can be changed by setting
set::maxbans in the configfile, note that you probably also want to enlarge set::maxbanlength
  as well (see docs) or else you will hit that limit first.
- Changed the default maxbanlength from 1K to 2K, which in practice will mean people can set
  a lot more bans since in practice the 60 (maxbans) limit was never met because the
  maxbanlimit was set so low.
2006-01-16 21:30:07 +00:00
Bram Matthys c9648673fd - Made it so banned users cannot change the topic, suggested by aquanight and Stealth (#2233). 2006-01-16 21:11:48 +00:00
Bram Matthys 979eacdaf5 - Fixed complex command aliases not working properly, patch from Nazzy (#2722). 2006-01-16 20:53:03 +00:00
Bram Matthys 44375e1dd5 - Little /STATS v tweak: should display 'v' in output, not 'V'. Reported by Robby22 (#2700). 2006-01-16 20:46:48 +00:00
Bram Matthys be917865c3 - If you now use /(G)ZLINE usermask@something instead of /(G)ZLINE *@something you get
an error, since specifying usermask should not be done and is useless, since a (G)ZLINE
  takes place BEFORE ident lookups.
- Did the same for /(G)ZLINE *@hostmask (should be *@ipmask), this already was a warning
  in 3.2.3, and is an error now in 3.2.4.
2006-01-16 20:32:38 +00:00
Bram Matthys f24d4495a2 - Fixed (well, workaround) win32 /RESTART bug that caused it to popup a window instead
of actually restarting the server properly (#0002734).
2006-01-16 19:30:27 +00:00
autoupdate d7969a5272 Automatic weekly version update: 200603 2006-01-16 05:00:04 +00:00
codemastr 34f6b6b058 Updated the list of donators. 2006-01-15 18:33:38 +00:00
Bram Matthys 1c7c7573be - Fixed some more memleaks, thanks to valgrind. 2006-01-15 14:42:16 +00:00
trocotronic bb7f0d9261 cambios semana 2/06 2006-01-14 13:21:37 +00:00
Bram Matthys bc6445b8ad - Crashbug fix for above 2006-01-14 12:39:25 +00:00
stylus740 7eb7de369e Changes of week 02: unreal32docs.de.html 2006-01-14 09:50:39 +00:00
Bram Matthys 4d47acdbfd - Made the charsys mismatch during linking a warning instead of an error (temp. fix,
until a good solution is implemented without false positives).
2006-01-14 00:16:40 +00:00
Bram Matthys ec754b69c1 - Added new charsys languages: belarussian-w1251 and ukrainian-w1251. Patch provided
by Bock (#0002724).
- Fixed memory leak in new resolver.
[ATTEMPT II]
2006-01-14 00:02:02 +00:00
Bram Matthys f56080324a - Added new charsys languages: belarussian-w1251 and ukrainian-w1251. Patch provided
by Bock (#0002724).
- Fixed memory leak in new resolver.
2006-01-14 00:01:42 +00:00
autoupdate 1393a4c509 Automatic weekly version update: 200602 2006-01-09 05:00:04 +00:00
Bram Matthys db1f1aa3f8 - Fixed bug in chinese-* charset implementation that would cause crashes, reported
and patch supplied by Xuefer (#0002744).
2006-01-07 14:01:13 +00:00
Bram Matthys acad82bd3d - Fixed invalid servername in quarantine kill, reported by pinstrate (#0002743). 2006-01-07 12:41:50 +00:00
stylus740 d3b4892bb8 unreal32docs.de.html changes of week 01 2006-01-07 09:41:33 +00:00
babass 97f46cef5c Modification du principe de quarantaine 2006-01-06 22:32:22 +00:00
Bram Matthys 356f52c0f7 slight ./Config text change regarding prefixes 2006-01-06 21:57:48 +00:00
Bram Matthys 364bf0f605 - Fixes for an amd64 crash problem, reported by Peter Laur (OpenBSD.se).
- Redid some net synching code to make it more efficient (#2716).
- Fixed spamfilter crash problem: the action 'viruschan' is now no longer incompatible
  with target 'user'. Reported by Monk (#0002570).
2006-01-06 19:53:41 +00:00
aquanight 4f4fdccf3b Added table of contents. Fixed a few typos. 2006-01-06 19:27:09 +00:00
Bram Matthys 38692b1b4b - Made the link::options::quarantine actually do something... People that get global
oper privileges on quarantined servers will be instantly killed. Bit ugly perhaps, but
  then it actually does what it should (prevent opers on quarantine from getting GLOBAL
  oper privileges). This "fixes" #2510, #2163 and #1968.
[forgot docs commit]
2006-01-04 00:14:30 +00:00
Bram Matthys 054160a74a - Made the link::options::quarantine actually do something... People that get global
oper privileges on quarantined servers will be instantly killed. Bit ugly perhaps, but
  then it actually does what it should (prevent opers on quarantine from getting GLOBAL
  oper privileges). This "fixes" #2510, #2163 and #1968.
2006-01-02 19:44:33 +00:00
autoupdate d7865be511 Automatic weekly version update: 200601 2006-01-02 05:00:03 +00:00
autoupdate ad2b35ac0f Automatic weekly version update: 200552 2005-12-26 05:00:04 +00:00
autoupdate 30f6fc4cb3 Automatic weekly version update: 200550 2005-12-19 00:00:03 +00:00
babass 5d4c820ce3 Changements de la semaine 49 2005-12-13 19:50:32 +00:00
angrywolf 3f01c4d60c Minor fix to previous change 2005-12-13 07:36:57 +00:00
angrywolf 03d541bc7f Doc update (week 49) 2005-12-13 07:31:41 +00:00
autoupdate 3e6ca38667 Automatic weekly version update: 200549 2005-12-12 00:00:04 +00:00
stylus740 30eb0d1460 Changes of week 49 in: doc/unreal32docs.de.html 2005-12-11 08:01:46 +00:00
trocotronic 4cd3df56c0 Cambios semana 49 2005-12-10 12:55:49 +00:00
Bram Matthys 1ee84a198a - Made the "strict aliasing"-warning-disabler use $CC instead of gcc.
- Made ./Config better react to errors (no longer print a "everything is a big success"
  kind of message when in fact everything went wrong).
- Made ./Config (configure) exit on openssl or zlib not found errors, instead of
  silently continueing and then causing trouble later on. Also now printing _a bit_
  more helpful error message.
2005-12-09 21:15:57 +00:00
Bram Matthys fb5c4c7214 let's try this... exiting on zlib/ssl not found error. 2005-12-09 20:29:14 +00:00
Bram Matthys b930f9a2fc - Added option to apply spamfilters to aliases as well (such as /MS, etc). To do so,
you have to put 'spamfilter yes;' in every alias block you want to get filtered.
  This is so you can have for example /MS filtered (due to heavy spam), while keeping
  /NS and /CS unfiltered. Reported by Homer (#0002496).
- The memoserv aliases (/MS and /MEMOSERV) now have spamfiltering enabled by default.
2005-12-09 20:21:37 +00:00
Bram Matthys 704918754c - Reverting "Changed the way we build most of the .so's" feature, this caused m_*.so
to be build incorrectly. So now back at normal compile speed :p.
2005-12-08 23:42:35 +00:00
autoupdate a456bccf38 Automatic weekly version update: 200548 2005-12-05 00:00:03 +00:00
angrywolf 38abf2ef7f Doc update (week 46) 2005-11-23 05:54:04 +00:00
Bram Matthys 893ecd68e9 - [CVS Only] Refixed name<->ip mapping check in new resolver, reported by Darko. 2005-11-22 19:48:47 +00:00
autoupdate b70036ed0f Automatic weekly version update: 200547 2005-11-21 00:00:03 +00:00
trocotronic 8b06a451dd Cambios semana 46 2005-11-19 12:15:56 +00:00
stylus740 a7c177bbe3 Changes of week46 doc/unreal32docs.de.html 2005-11-19 09:23:08 +00:00
Bram Matthys 91ada621e6 - Added proper "not enough parameters" message for /SETNAME and cleaned up some whitespace
in the function, reported by Robby22 (#0002696).
- Fixed set::static-part set to 'no' not working properly. Reported by Robby22 (#0002698).
- Fixed crash in new resolver, reported by firstof9.
2005-11-16 23:58:02 +00:00
babass 9d6801b271 cvs:
Il est maintenant impossible de changer son pseudo pour un pseudo banni
2005-11-16 19:19:09 +00:00
Bram Matthys 7bda74183a - Fixed serious flood of notices to opers if link::options::dnscache was present.
Reported by firstof9.
2005-11-15 22:08:31 +00:00
angrywolf 27a993751a Doc update (week 45) 2005-11-15 20:59:44 +00:00
babass 5f34265ded Il est maintenant impossible de changer son pseudo pour un pseudo banni 2005-11-15 20:41:20 +00:00
autoupdate b7a7d63223 Automatic weekly version update: 200546 2005-11-14 00:00:04 +00:00
Bram Matthys 675ef5b54d - Made it so coadmins can use /ADCHAT (makes sense, since they already *received*
adchats). Reported by RandomNumber (#0002557).
2005-11-13 00:19:28 +00:00
trocotronic b5a8e0245f cambios semana 45 2005-11-12 11:12:35 +00:00
stylus740 fa49ef8cfa Changes of week 45 unreal32docs.de.html 2005-11-12 08:18:47 +00:00
Bram Matthys db0c18dd1e - Removed useless (unused) WATCH code that was still present in the core. 2005-11-11 16:07:34 +00:00
Bram Matthys a7e3aa01b7 - Made it so you no longer can change your nick to a banned one in a channel, suggested
by vonitsanet (#0002388), partial patch provided by Nazzy.
  This option can be turned off by setting set::check-target-nick-bans to 'no'.
2005-11-10 23:39:12 +00:00
Bram Matthys 184dedf72a - Couple of source code cleanups (svsnick, a *line msg, kill, and some useless l_commands
code), suggested by Nazzy and Requi3m.
- Fixed extbans no longer working properly in CVS, fix provided by Nazzy (#0002681).
2005-11-09 14:29:32 +00:00
autoupdate 82e437d366 Automatic weekly version update: 200545 2005-11-07 00:00:04 +00:00
Bram Matthys ee4860fd6c - Fixed OpenBSD crash on /REHASH. Thanks to Peter Laur (OpenBSD.se) for providing us
a shell account to trace this issue down.
2005-11-04 21:45:10 +00:00
autoupdate 32cad72182 Automatic weekly version update: 200544 2005-10-31 00:00:03 +00:00
Bram Matthys d313bec95b Added a check for idiots trying to update from 3.2.3 -> CVS/3.2.4 without running ./Config.. HA! 2005-10-29 01:18:29 +00:00
Bram Matthys e4d352f1f2 - Fixed issue that could cause an alias to be added that would override a command. 2005-10-25 15:28:00 +00:00
autoupdate 541e253598 Automatic weekly version update: 200543 2005-10-24 00:00:04 +00:00
Bram Matthys 4307ca8ade - Fixed crash bug (due to new resolver) if not using 1 general *@* / *@* allow block,
reported by Daniel.
2005-10-18 20:16:05 +00:00
autoupdate c60ea26271 Automatic weekly version update: 200542 2005-10-17 00:00:03 +00:00
Bram Matthys 8b741865c3 - Added 4 UNREAL_VERSION_* macro's that can be useful for 3rd party modules to find out the
unreal version that the user is using. I presume this can be helpful (although nobody ever
  suggested it ;p). The macros (#define's) are:
  UNREAL_VERSION_GENERATION    The generation version number        eg: 3 for 3.2.4
  UNREAL_VERSION_MAJOR         The major version number             eg: 2 for 3.2.4
  UNREAL_VERSION_MINOR         The minor version number             eg: 4 for 3.2.4
                               This can be negative for unstable,
                               alpha and beta versions.
  UNREAL_VERSION_TIME          Year + week of the day (starting     eg: 200541
                               on Monday), this is updated on
                               the CVS server every week.
  The first 3 are for nicely identifiying the version, the 4th can be useful in case
  you want to support CVS and/or want some more control.
2005-10-16 14:40:26 +00:00
Bram Matthys 35a8c00214 - When OPEROVERRIDE_VERIFY is enabled, we now allow opers to still join any channels listed
in set::auto-join or set::oper-auto-join, even if they are +s/+p. Suggested by ultrotter
  (#0002644).
2005-10-15 23:26:57 +00:00
Bram Matthys 607625bf91 - Fixed SSL + new resolver problem, would cause an "interesting flood" of messages / 100% CPU.
Reported by Trocotronic (#0002659).
- Fixed a problem with entries in the hosts file (such as, usually, localhost), this would
  cause an unresolved host and a 30s delay for the user, even though resolving succeeded.
2005-10-11 21:42:06 +00:00
Bram Matthys dc59ba4f5f re-commit include/win32/ares/*.h 2005-10-10 18:09:04 +00:00
Bram Matthys eddb406807 - Removed all old resolver code and switched over to c-ares (+our caching routines).
This should get rid of some annoying untracable (and usually rare) crashbugs in the
  old resolver. Besides that, it makes things look more clean and understandable.
  This should be the fix for the following bugids (all the same issue): #2499, #2551, #2558,
  #2559, #2603, #2642, #2502, #2501, #2618, #2616.
  Feedback and testing is very much welcomed (syzop@unrealircd.com).
2005-10-10 14:32:12 +00:00
angrywolf 6b1e7807ce Doc update (week 39) 2005-10-06 15:56:34 +00:00
babass 75ce361222 changements semaine 39 2005-10-03 17:45:50 +00:00
trocotronic c0f00df2c5 cambios semana 39 2005-10-01 09:08:14 +00:00
stylus740 38c1ad2eb7 Changes of week 39: doc/unreal32docs.de.html 2005-10-01 07:09:01 +00:00
Bram Matthys 62d8a8343f - Some m_restart cleanups, suggested by w00t (#2652). 2005-10-01 01:07:11 +00:00
aquanight 357b1879e9 syzop-undercover-test ;p 2005-09-30 19:56:38 +00:00
Bram Matthys b5fd4a816f - Documented set::channel-command-prefix a bit more, and also changed the default from
"" to "!." which seems much more reasonable / widespread :).
2005-09-28 21:34:40 +00:00
Bram Matthys beb891a24b - Added doc/technical/serverprotocol.html created by aquanight (updates will follow soon). 2005-09-27 16:16:49 +00:00
Bram Matthys dc7554e227 - Changed the way we build most of the .so's: the .o files of individual modules that were
generated (for linkage by commands.so), are now used to generate the .so files of the
  individual modules as well (eg: m_setname.o -link-> m_setname.so). This reduces compile
  time ('make') on my machine by 33%, so it's quite noticable ;).
2005-09-26 22:57:44 +00:00
Bram Matthys f535167cf9 - Added 'warn' target which is basically the same as 'block' except it does not block ;).
It also sends a numeric to the user saying the command has been processed, but a copy
  has been sent to ircops. I feel this is a good idea for privacy reasons (anti-spy),
  though I don't know how users will react to this. If you are using this on your network
  and get users bothering you about it (or before that ;p), it's probably a good idea
  to explain it somewhere on your site or FAQ :).
  Example usage:
   /spamfilter add p warn - Testing_mirc_decode_filter \$decode\(.*\)
  [WARNING] The numeric text is likely to change in the next few weeks (early-cvs-commit).
- If a class block was removed and any other blocks would be referencing the class block
  (such as: allow::class, oper::class, link::class), then this would cause a crash.
  Reported by Mike_ (#0002646).
2005-09-25 21:49:19 +00:00
Bram Matthys e31b23ee8a - Fixed an invalid badword block in the conf causing a crash, reported by Monk (#2639). 2005-09-13 22:43:51 +00:00
Bram Matthys 7ebd0debd7 - Fixed (important?) reference count bug regarding sptr->serv->conf. I don't know what
effects this caused (memory corruption?), but it didn't look good ;).
2005-09-12 16:33:46 +00:00
Bram Matthys 3cb4be0ad6 TYPO! 2005-09-05 18:24:18 +00:00
Bram Matthys 1be36fc0dd get rid of "please report!" in operator count bug thing.. we had enough responses :). The code itself still warns&corrects though... 2005-09-04 22:10:06 +00:00
Bram Matthys 61b3242013 - Fixed win32 makefile, now compiles fine. 2005-08-29 21:28:06 +00:00
Bram Matthys 1023df3cd3 CMDLINE_CONFIG change & FAKELAG_CONFIGURABLE added:
- CMDLINE_CONFIG behavior change: command line configuration is now still permitted
  if #undef'ed (which is the default) if uid==euid && gid==egid, since it doesn't make
  any sense to disable it then and is in fact just plain annoying.
- Added FAKELAG_CONFIGURABLE option in include/config.h, this enables an option called
  class::options::nofakelag, which disables "fake lag" for a certain class (that is:
  the artificial delay introduced by the ircd to prevent flooding is turned off,
  allowing the user to flood at full speed).
  IT'S USE IS DISCOURAGED UNLESS YOU REALLY KNOW WHAT YOU ARE DOING.
  Sorry, option is not in ./Config -advanced since I don't get autoconf working, but it's
  such a scary option that this might as well be a good idea to keep in config.h anyway.
  This feature has been suggested for several years (and refused), but the final
  suggestion (with implementation specific hints) came from Gilou in bug #0002207.
- changed a comment slightly in m_tkl.c to get rid of harmless warning ;)
2005-08-28 20:48:46 +00:00
Bram Matthys 4c3681afb9 another fix, for a slight variant 2005-08-28 19:13:51 +00:00
Bram Matthys 72910fafc9 - (5 minutes later..) Small update for above, fix was incorrect for ipv6. 2005-08-28 19:09:15 +00:00
Bram Matthys b1c4afdd41 - Fixed a bug where an invalid /*line could cause a crash, reported by Gilou (#2629). 2005-08-28 19:00:01 +00:00
Bram Matthys 0bc12e552c - Spamfilter: regexes (and reasons) are now more limited in size, this is to combat "I set
a spamfilter, but cannot remove it" problems. In practice this means - depending on the
  length of your spamfilter reason - regexes will be max ~300 characters.
  Spamfilters set in the .conf can be slightly longer (which still causes them to be
  truncated in '/stats f', but they don't have to be removed anyway so it's kinda
  acceptable if it's really needed). This should fix bug #2083, reported by White_Magic.
2005-08-28 16:28:40 +00:00
Bram Matthys 82d4c429da - Added Bulgarian example.bg.conf, translated by Peace. 2005-08-27 14:39:21 +00:00
Bram Matthys 5b444f173a LALalal 2005-08-26 19:38:25 +00:00
Bram Matthys aab5c3eb71 testtest 2005-08-26 19:37:45 +00:00
Bram Matthys b2115e868e aa 2005-08-26 19:37:12 +00:00
Bram Matthys a84350b9d0 - Fixed crash with invalid set::network-name (eg: high ascii), reported by galahad
(#0002584), now printing an error instead (the network name is limited by the 005 spec).
2005-08-19 19:12:21 +00:00
Bram Matthys 247e2ea6d5 - Temporary workaround for spamfilter bug: action 'viruschan' in combination with the
'u' (user) target can cause severe problems (crashes, etc). For now, we have disabled
  'viruschan' in combination with 'u'. A real fix will require quite some work, sorry.
2005-08-19 15:55:06 +00:00
Bram Matthys b340844aed - Fixed ~c not working properly with * and ?'s in channel names.. Now you just need to
escape them like in all bans (eg: to ban #* you need to +b ~c:#\*). As an additional
  bonus, real wildcards are now accepted and processed (eg: +b ~c:#*sex*, just don't
  forget to specify the #). Reported by PhantasyX (#2605).
- Sidenote on above: ~c:*chan* is not supported (use ~c:#*chan* instead) because it would
  cause "hidden bans", therefore it now prints a message (which is useful anyway), but
  does accept such remote bans. In 3.2.5 or so we could enable support for it, it's
  not that important though... ;)
- Added ifdefs for mass closing of file descriptors on start, can now be disabled by
  adding -DNOCLOSEFD as a compile option. Useful for valgrind w/--db-attach=yes, mpatrol,
  and some other debugging tools (not useful for anyone normally running a server).
- Fixed a read-after-free: sptr->serv->aconf was freed but not NULL'ed in exit_client,
  causing close_connection to read from it (when deciding on doing a quick reconnect).
  Could have caused a crash, although nobody ever reported one...
- Removed useless strncpyzt with dest==src.
2005-08-19 15:14:30 +00:00
codemastr df37fc9d5e Fixed a bug where allow channel::channel generated a warning when specified multiple times 2005-08-18 18:38:56 +00:00
Bram Matthys 0edd95dd2f removed useless var + forgot to give credit to ratbox for in6addr_any detection code. configure not rebuild because there are not exactly source code changes... 2005-07-25 21:33:34 +00:00
Bram Matthys 1e509d5dbf changelog comment slightly editted...
- Added -Wno-pointer-sign (if available) to get rid of those stupid warnings that are
  enabled by default even without -Wall (!?) on GCC4.
2005-07-25 21:25:43 +00:00
Bram Matthys ef43bedd03 blah.. that didn't work, this does. [seperate case/esac] 2005-07-25 21:24:57 +00:00
Bram Matthys 97cc076531 - Added -Wno-pointer-sign to get rid of those stupid warnings that are enabled by default
even without -Wall (!?) on GCC4.
2005-07-25 21:17:35 +00:00
Bram Matthys 3b84610599 - IPv6: Added configure check for in6addr_any to fix Fedora Core 4 compile problem,
reported by wheatie80 (#2594).
2005-07-25 21:11:27 +00:00
Bram Matthys 10458c06b9 - Fixed problem with crash-on-link if compiled with GCC 4, reported by jonneyboy (#2573)
and PHANTOm (#2590).
2005-07-25 19:16:16 +00:00
Bram Matthys 0a8e5e6a69 clarification on comment:
- Added -fno-strict-aliasing.. this might well be temporary, but we get tons of strict-
  aliasing warnings, so it sounds good to disable this type of optimization for now.
2005-07-22 23:44:39 +00:00
Bram Matthys 13b81da728 - Added -fno-strict-aliasing
..more on that later..
2005-07-22 23:40:07 +00:00
Bram Matthys bc0e3e9722 no-strict-aliasing.. 2005-07-22 23:30:57 +00:00
Bram Matthys 8a9bae11fa - Made '?*' work correctly in wildcard matches, reported by Bugz (#2585). 2005-07-05 20:26:18 +00:00
Bram Matthys 83cc82bbf2 typo in changelog 2005-07-05 19:16:22 +00:00
Bram Matthys 50ceda48d2 - Added some TSCTL logging (this reminds me we need to add new log levels for 3.3 ;p).
- Attempt to fix bug #2431: 3.2.2 broke CNAME delegation for reverse dns. I'm sorry it took
  so long, but this stuff just plain sucks...
2005-07-05 19:14:58 +00:00
angrywolf 570ba8e327 Doc update (week 23) 2005-06-25 21:52:45 +00:00
stylus740 5fae4f3bf7 Changes of week 23 doc/unreal32docs.de.html 2005-06-13 15:11:57 +00:00
Bram Matthys 08954beb0d -extern MODVAR int badclass; <-- unused var 2005-06-12 18:56:44 +00:00
babass b45a9c4e45 Changements mineurs 2005-06-12 16:54:01 +00:00
trocotronic 5b450e87fa Cambios semana 23 2005-06-11 09:22:55 +00:00
Bram Matthys 3efb800947 - Fixed 2 problems caused by TKL move: 1 windows crash, 1 problem with loading m_*.so,
reported by Trocotronic (#0002553, #0002554).
2005-06-07 14:06:48 +00:00
Bram Matthys d4f27c1183 - Fixed various major bugs due to TKL move from 13h ago. 2005-06-05 14:11:40 +00:00
Bram Matthys 4f40d73aa4 - Moved all TKL code and register_user to modules (using efuncs), that means 20 functions
and 2000 lines total that can be hotfixed if needed ;). The effort involved in moving all
  this sucks a lot though :/. This might need some more testing to make sure it doesn't break
  anything.
- Updated support OS list in documentation.
2005-06-05 00:58:36 +00:00
Bram Matthys 05f2bdfeab ok well, perhaps another time. 2005-05-26 20:45:37 +00:00
Bram Matthys 9d30ce5c75 - Removed quarantaine from all docs: this feature does not exactly add much security because
whenever a server is added to a network it has a lot of power that cannot simply be controlled
  by things like unsetting operflags remotely or anything else. I don't want to encourage
  anyone to use it.
2005-05-26 20:44:01 +00:00
Bram Matthys 24beac59c3 - Cosmetic bug in set::modes-on-join: now rejecting +I in it. Reported by Ron2K (#0002508). 2005-05-26 20:23:53 +00:00
Bram Matthys 5fcd80e11f - Fixed a TKL crash on incorrect *line, reported by nanookles1234 (#0002524).
- Redid include dependencies in Makefile, this makes things safer because on any .h change it
  would force a recompile of all files, but it could mean things will be a bit slower for us
  coders unless we tweak it later on.
- Changed whois a bit to print less useless results.
- Added several indicators to the "detect binary incompatible modules"-system such as detecting
  of a ziplinks module on non-ziplinks (on windows this is ok however), nospoof module on a
  a server without nospoof server, etc. Hopefully this will help some people preventing odd
  crashes because they did not recompile or (re)install modules properly.
- Added './unreal backtrace', so far this has only been tested on Linux and FreeBSD.
- Fixed a bug making ./Config not load the previously stored settings on Solaris 10 and
  probably other Unixes, reported by lion-o (#0002474).
2005-05-26 20:18:07 +00:00
Bram Matthys a58308d0d8 - Fixed chanmode G showing up twice in 005, reported by Snake (#0002466). 2005-04-18 19:30:09 +00:00
stylus740 481324ffef Corrected some spelling mistakes in doc/example.de.conf and doc/help.de.conf 2005-04-10 05:54:38 +00:00
stylus740 8b7a096bee Crorrected linking mistake doc/unreal32docs.de.html 2005-04-04 15:18:28 +00:00
Bram Matthys 1b0d97c5bd - Module coders: Added HOOKTYPE_LOCAL_SPAMFILTER: catches (local) spamfilter matches. 2005-04-02 20:42:15 +00:00
gsf 089ee0fca9 Week 12 Updates. 2005-03-29 01:35:12 +00:00
angrywolf 3a88cdbdc8 Doc update (week 12) 2005-03-26 18:37:36 +00:00
trocotronic d4144dd86c Cambios semana 12 2005-03-26 13:42:45 +00:00
stylus740 6868541b84 doc/unreal32docs.de.html Changes of week 12 2005-03-26 09:44:07 +00:00
stylus740 1f6ac63d4c doc/unreal32docs.de.html Changes of nickchar characters 2005-03-25 10:02:23 +00:00
Bram Matthys eae23edc62 watch clarification 2005-03-24 22:20:47 +00:00
gsf 56a694b1bb Week 10-11 Updates. 2005-03-23 21:46:55 +00:00
Bram Matthys 0a4c8ae419 - Added 'danish' nickchars, supplied by klaus (#0002436). 2005-03-23 21:45:22 +00:00
Bram Matthys c6f34c7de3 - spamfilter.conf Gaggle worm sigs were broken causing odd things to match, this is because
\\ now needs to be escaped as \\\\ due to the 3.2.3 conf change... didn't think of updating sigs.
2005-03-20 17:15:57 +00:00
stylus740 9407616a0e Changes of week 11 / crorrection of some errors: doc/unreal32docs.de.html 2005-03-19 09:30:09 +00:00
stylus740 cf7d113034 correction of errors in doc/help.de.conf 2005-03-14 20:55:42 +00:00
Bram Matthys fcc7ba12aa hm, nm 2005-03-14 16:51:50 +00:00
Bram Matthys e54a74eb52 - (repack) Fixed incorrect badword { } in conf causing a crash (should give an error). 2005-03-14 16:18:31 +00:00
Bram Matthys 4a69b08291 fixed incorrect badword { } causing a crash 2005-03-14 16:09:30 +00:00
Bram Matthys ca4bbb66eb ** 3.2.3 release ** 2005-03-13 20:24:39 +00:00
babass 352bb63b85 Petite correction de typo 2005-03-13 17:53:55 +00:00
Bram Matthys 4fb2a55374 - Corrected small doc typo in unreal32docs, reported by arbiter. 2005-03-13 17:35:55 +00:00
trocotronic a642574a97 Estas tildes... 2005-03-13 09:11:37 +00:00
stylus740 a7355b6ddb Changes 2005-03-13 of doc/example.de.conf doc/help.de.conf 2005-03-13 08:54:55 +00:00
angrywolf 1d0457a1b5 Doc update (week 10) 2005-03-13 02:14:57 +00:00
Bram Matthys c4aea6f0c8 ** internal 3.2.3-pre4 release ** 2005-03-12 21:17:59 +00:00
babass 8640d7da54 Remise à niveau du suivi de la mise à jour 2005-03-12 12:43:49 +00:00
trocotronic 9c2254ad27 Cambios semana 10 2005-03-12 10:00:08 +00:00
stylus740 597d1c2abc Chnges of week 10 for doc/example.de.conf doc/help.de.conf doc/unreal32docs.de.html 2005-03-12 09:04:53 +00:00
babass 6d754671a6 Quelques clarifications sur /RESTART, les redémarrages distants n'ont en fait jamais été supportés, la doc est donc modifiée (pas de modification du code) 2005-03-11 11:18:05 +00:00
Bram Matthys 66804a1cbc - Some clarifications on /RESTART, remote restarts were well never supported, so the docs
are now updated on that (no code changes).
2005-03-11 00:05:37 +00:00
Bram Matthys f92bf9e6d2 - Fixed an important channelmode +j memory corruption bug that would cause crashes, reported
by Bergee (#0002416).
2005-03-10 16:44:34 +00:00
Bram Matthys 34ec08348c - /SAMODE could cause 'fishy timestamp' if digit parameters were used (eg: SAMODE #chan +l 5),
this has now be fixed by sending an explicit TS 0.
2005-03-10 01:29:30 +00:00
codemastr 0fb95bd6ad Updated the list of donators 2005-03-09 15:32:10 +00:00
Bram Matthys 5e44f6b264 - Some spelling fixes in unreal32docs.html, reported by alex323 (#2412). 2005-03-08 23:20:18 +00:00
cvs2hg d4e480cebd fixup commit for tag 'unreal3_2_3pre3' 2005-03-06 21:22:39 +00:00
Bram Matthys 0d7e69803e version nr.. 2005-03-06 21:22:38 +00:00
Bram Matthys d0c6ee47c7 ** internal 3.2.3-pre3 release ** 2005-03-06 21:09:14 +00:00
Bram Matthys e9b536694b - Added doc/example.de.conf 2005-03-06 21:04:54 +00:00
Bram Matthys 6090928333 - Fixed /SAMODE with no can_override not always working with +G/+j/+T (extcmodes), reported
by Ron2K (#0002398).
2005-03-06 21:01:42 +00:00
codemastr 4e7f9c67ba Made it so the win32 version shows channel modes in /list 2005-03-06 19:53:55 +00:00
babass e84bb4b27b Retrait de l'ancien module de cloaking, tout le monde devrait utiliser le nouveau maintenant. 2005-03-06 16:54:34 +00:00
codemastr 7e83d6c150 Made +g get removed when an oper sets -o 2005-03-06 16:49:32 +00:00
gsf 71a2d3c316 Week 08-09 updates - fixed some markup stuff 2005-03-06 10:23:20 +00:00
stylus740 4c01089b10 corrected some mistakes in doc/help.de.conf (o3/06/2005) 2005-03-06 09:01:26 +00:00
Bram Matthys dc1fdb3f34 - Updated release notes (translated docs, zlib, doc\technical, sp/cS desynch). 2005-03-06 00:37:25 +00:00
Bram Matthys c0b6a97c04 - Removed oldcloak cloaking module, everyone should be using the new cloak one by now. 2005-03-06 00:29:20 +00:00
Bram Matthys 6ceb227f58 - Made windows installer also install doc\technical\* 2005-03-06 00:22:56 +00:00
Bram Matthys 20a7feba1f - Windows versions will now be compiled with zlib 1.2.2 and curl 7.13.1. 2005-03-06 00:17:38 +00:00
Bram Matthys f88cea7b45 - Fixed a bug where an unknown operflag would cause a crash. 2005-03-05 20:02:17 +00:00
Bram Matthys 24b9c466a2 - Fixed +s/+p and +c/+S desynch issue during netmerge, reported by Ron2K (#0002391). 2005-03-05 19:58:11 +00:00
babass 3e8f918aa9 Ajout de la documentation sur le mode de salon +j 2005-03-05 17:41:08 +00:00
Bram Matthys eba25738e8 - Added doc/help.de.conf and doc/example.hu.conf 2005-03-05 17:28:17 +00:00
codemastr 338e8497f3 Added documentation about channel mode +j 2005-03-05 17:13:42 +00:00
trocotronic 613544de5c Cambios semana 9 2005-03-05 17:00:25 +00:00
codemastr 0e927787e5 Fixed a couple of typos in doc/example.conf 2005-03-05 16:59:22 +00:00
stylus740 a58a263c67 Changes doc/unreal32docs.de.html week 08 + week 09 2005-03-05 13:02:59 +00:00
angrywolf f253237b1a Doc update (week 09) 2005-03-05 11:43:50 +00:00
cvs2hg 80ca78a285 fixup commit for tag 'unreal3_2_3pre2' 2005-03-04 23:35:31 +00:00
Bram Matthys ede8b13b44 ** internal 3.2.3-pre2 release ** 2005-03-04 23:35:30 +00:00
Bram Matthys 126c07c69f - Fix for above, also reported by Trocotronic. 2005-03-04 23:06:45 +00:00
Bram Matthys 1cec07250e - Fixed various (major) problems that the '-h yourself' caused, reported by Trocotronic
(#0002387).
2005-03-04 22:30:47 +00:00
Bram Matthys 2163d0dddf - Merged NICKCHARS= in PROTOCTL for now, since a seperate one is not (yet!) needed,
reported by SolutechUK and psadi (#0002386).
2005-03-04 21:00:52 +00:00
babass 25ac499c99 Traduction de la FAQ + modification de la partie charset 2005-03-04 20:13:47 +00:00
Bram Matthys 92f413f387 - Fixed a bug where /SAJOIN user 0 caused a desynch, reported by trystanscott (#0002384). 2005-03-04 19:18:25 +00:00
codemastr 137d136233 Fixed a bug with /invite with no parameters (accidentily broken when +I was added) 2005-03-04 17:17:37 +00:00
Bram Matthys 28efcdc65a ** internal 3.2.3-pre1 release ** 2005-03-03 19:50:23 +00:00
Bram Matthys 38a64f1c17 Version now really at 3.2.3-pre1 (not 3.2.2-pre1) ;p 2005-03-03 15:20:16 +00:00
Bram Matthys dabc42e0c3 - TRE mem corruption- & crash-bugs (eg: in backreferences). 2005-03-03 01:16:26 +00:00
Bram Matthys ee7961f31e - alias::format in combination with ::type 'command' caused a crash 2005-03-03 01:15:05 +00:00
Bram Matthys e68b82724a - Renamed version to 3.2.3-pre1, for Thursday. I'll keep the doc version numbers
at 3.2.2-CVS to avoid confusion with the online semi-realtime docs ;).
2005-03-03 00:13:24 +00:00
Bram Matthys cbbc35fae3 - Made some (incorrect) -Wall warnings dissapear. 2005-03-03 00:06:42 +00:00
Bram Matthys 3ae96d5eea typo 2005-03-02 15:41:22 +00:00
Bram Matthys f436f1ea51 - Made the (G)ZLINE warning only happen on add, as it should. Reported by crazy. 2005-03-02 15:40:10 +00:00
Bram Matthys 6a4878f7cd - Updated russian-w1251 (added 2 chars). 2005-03-01 23:54:06 +00:00
Bram Matthys 49ecd9c86f 3.2.3 -> 3.2.3-notyet :p 2005-03-01 22:57:33 +00:00
Bram Matthys 4eba81fa21 - Added 3.2.3 release notes (expected to be changed later on). 2005-03-01 22:56:52 +00:00
Bram Matthys 46fd5f27af - NickChars: Added 'romanian', supplied by crazytoon. 2005-02-28 22:19:03 +00:00
Bram Matthys 09dada415e - Updated doc/technical/token.txt, reported by webfox (#0002373). 2005-02-28 21:09:41 +00:00
Bram Matthys f5110bca31 - Made spamfilter 'u' also check nickchanges, reported by Gilou (#0002251). 2005-02-28 20:15:28 +00:00
Bram Matthys afcfabe8f6 - Made it so halfops can -h themselves, and chanadmins can -a themselves, reported
by fez (#0001503).
2005-02-28 19:50:19 +00:00
babass dc704bd1c0 Traduction de la FAQ + modification de la partie charset 2005-02-28 12:47:25 +00:00
Bram Matthys 6fdc15524b credit -> HERZ 2005-02-28 03:01:06 +00:00
Bram Matthys 0d3b7415ab typo in changelog 2005-02-28 00:28:22 +00:00
Bram Matthys 3597c4a135 - Fixed 'russian-w1250', was not ok at all. 2005-02-28 00:28:02 +00:00
Bram Matthys 19cc435119 - Made badwords (+G) now work with hardcoded word boundaries. Also made the fastbadwords
system accept more characters. Basically what this means is that the (fast) badwords
  system can now be used to properly block words with accents and things like that, just
  the way you block English words. Bug reported by MJ12Helios (#0002311).
2005-02-28 00:11:29 +00:00
Bram Matthys 914f6cceb3 - A warning is now sent to the oper if (s)he tries to add a (G)ZLINE on *@host.
(G)ZLINES should have an ipmask, not a hostmask, because they are processed BEFORE
  any dns lookups are done.
2005-02-27 22:39:51 +00:00
Bram Matthys 6afa0da62b - Fixed /(G)ZLINE [nick] placing the *line on *@host instead of *@IP, reported by
Snake (#0002246).
2005-02-27 22:25:17 +00:00
Bram Matthys 42b975a118 - Fixed various OperOverride issues:
- Opers with can_override can now +qa/-qa even if they are not netadmins,
    and they can also (un)set L/u.
  - Fixed several SAMODE bugs, such as not completely working for non-netadmins and
    not working if you were halfop'ed, etc.
  Bugs reported by pak, aquanight, niphler, Bugz, and more.
  If there are still any bugs left, please report them on http://bugs.unrealircd.org/
  NOTE: some of these enhancements will produce desynchs if your net is not 100%
        on current CVS / Unreal3.2.3 and an oper tries to use these 'new features'.
        So use with care on mixed-version nets.
2005-02-27 22:07:36 +00:00
Bram Matthys cc3a40c383 NICKCHARS:
- Added 'czech-w1250' and 'slovak-w1250' (both might miss a few characters).
  - Added 'windows-1250' group which contains czech-w1250, slovak-w1250, polish-w1250
    and hungarian.
  - Hungarian characters show both fine in w1250 and latin2, hence hungarian is included
    both in 'windows-1250' and 'latin2'.
  - Fixed bug: polish was not included in latin2
2005-02-27 19:41:21 +00:00
Bram Matthys de11702f2e - Added 'russian-w1251', supplied by Roman Parkin. There are like 3 main standards in Russia,
and 7 standards in total, so I didn't dare to call this one 'russian' ;).
2005-02-27 17:31:52 +00:00
Bram Matthys 03eb1935fd REVERT OF PREVIOUS 2, CHANGED TO AUTO-CONVERT:
- If a locop now has can_override/can_gkline/can_gzline we will print out a warning and
  convert it to globops. This is also what we always did for can_globalroute/can_gkill
  (well, except the warning). Giving such NETWORK (GLOBAL) privileges to a LOCAL operator
  does not make any sense and is therefore no longer allowed.
2005-02-27 16:22:24 +00:00
Bram Matthys d226a87522 - Made the can_override one an error since it makes 0.0% sense. 2005-02-27 16:07:31 +00:00
Bram Matthys f0718cc515 - Added warning on using can_override/can_gkline/can_gzline in combination with locops,
since these are global privileges they shouldn't be permitted (will be an error in 3.2.4).
2005-02-27 00:48:56 +00:00
Bram Matthys c01b0e1d0b typo in changelog 2005-02-27 00:02:03 +00:00
Bram Matthys 07d397b4ff - Changed the 'is a Secure Connection' msg/numeric in /whois from RPL_WHOISSPECIAL to
a slightly changed RPL_WHOISSECURE, namely: ':%s 671 %s %s :is using a Secure connection',
2005-02-27 00:01:36 +00:00
Bram Matthys 988a0eb0c2 - Fixed bug in +G where with not-really-matching-words color was needlessly stripped,
reported by SpeedFire (#0002375).
2005-02-26 23:40:54 +00:00
Bram Matthys 3b229d5d34 - Nicks with ~ are now also not cutoff anymore but rejected like any other illegal char (#0002074). 2005-02-26 23:31:07 +00:00
Bram Matthys 4887bb365b - Fixed halfop trying to set chanmode +G/+T/+j not getting an error message, reported
by Ron2K (#Ron2K).
- Module coders: using extcmode_default_requirechop is now depricated, check src/extcmodes.c
  ctrl+f extcmode_default_requirechop for more details (solution: copy+paste & fill in modechar).
2005-02-26 23:27:08 +00:00
Bram Matthys 7bad90fec1 - Made CHGIDENT, CHGHOST and CHGNAME use more numerics (where possible) (#0002358). 2005-02-26 23:10:14 +00:00
Bram Matthys 4788bc3f76 - Fixed bug where chanmode +f #t (per-user text kick[ban]) was also affecting halfops,
reported by seneces (#0002333).
- Fixed doc bug reported by Dukat (#0002374). Also fixed 2 error msgs related to
  the nickchars system printing out incorrect set:: directives.
- spamfilter.conf and dccallow.conf are now also copied upon make install, reported by
  TommyTheKid (#0002313).
2005-02-26 22:47:10 +00:00
Bram Matthys 4af12d14ea - Fixed a bug in mode-skipping (eg '+qk a b' if not +q) and error msgs, reported by brain2
(#0002372).
2005-02-26 17:42:24 +00:00
angrywolf c8a4857452 Doc update (week 08), I've also done some grammar corrections 2005-02-26 13:23:19 +00:00
trocotronic 78673b7228 Cambios semana 08 2005-02-26 10:21:05 +00:00
babass b8424dc50f Update support des caractères 2005-02-25 20:56:07 +00:00
codemastr 0b43d15d53 Fixed a bug where SAJOIN would list channels multiple times in the notices 2005-02-25 18:25:18 +00:00
codemastr d8fc8c0935 Fixed a bug causing SVSNICK not to send out a snomask +n notice 2005-02-25 18:14:35 +00:00
codemastr ab4a0a31b5 Updated wircd.def. Fixed a bug where USERIP would say USERHOST in the not-enough-parameters numeric 2005-02-25 18:09:09 +00:00
Bram Matthys b8c9e4fde5 - NickChars: Added 'icelandic', supplied by Saevar. 2005-02-25 16:28:39 +00:00
Bram Matthys eca350056c - NickChars: Updated polish a bit, and added polish-w1250 which is unfortunately more
common than real latin2 (iso-8859-2), supplied by k4be as well.
2005-02-24 00:09:57 +00:00
Bram Matthys 2a1bd9e244 - Fixed a doc typo, reported by SDF_of_BC. 2005-02-23 22:05:55 +00:00
babass 453d6b3fb6 Modifications de l'aide sur les charsets 2005-02-23 20:46:14 +00:00
Bram Matthys 0e811c403a - Added French example.fr.conf and help.fr.conf, translated/maintained by Babass. 2005-02-23 20:01:24 +00:00
Bram Matthys ad254b94c0 - Added hebrew (iso8859-8I / windows-1255), supplied by PHANTOm. 2005-02-23 19:54:43 +00:00
Bram Matthys 27396e9b26 - Added polish (latin2), submitted by k4be. 2005-02-23 16:32:59 +00:00
Bram Matthys 2c500fcf72 nickchars...
- Build in some additional checks (especially for Chinese).
  - Fixed a bug in chinese character range (affecting 3.2*)
  - Relaxed nick character checking from remote servers (rely on NICKCHARS= PROTOCTL
    to deal with problems). This is useful to prevent any kills in case we slightly
    change the characters that are allowed in a language.
2005-02-22 16:47:20 +00:00
Bram Matthys 8ba098a77a - NickChars:
- Got rid of 'latin7', tiny mistake ;)
  - Removed e' accent from German (used in borrow-words only), reported by Dukat.
  - Added 'swiss-german', which is just German without es-zett, reported by Dukat.
  - Added 'turkish', supplied by Ayberk Yancatoral.
2005-02-21 16:06:08 +00:00
Bram Matthys 97d4be791b - Added NICKCHARS= in PROTOCTL. This indicates which languages are accepted in nicks.
If 2 servers try to link and the allowed nick characters do not fully match, then
  the link will be rejected. Note that this will not prevent you from 3.2.2<->3.2.3/CVS
  charsets mistakes, but only with linking CVS/3.2.3+ servers. Suggested by Troco (#0002360)
  This might need some additional testing, but initial results are positive :).
2005-02-20 22:05:06 +00:00
gsf bff1caa482 Week 7 Doc Updates 2005-02-20 21:46:44 +00:00
babass cedddacbf1 Ajout sur les charsets plus qques autres modifications 2005-02-20 20:02:35 +00:00
Bram Matthys 01262aefd9 - Removed 2 unneeded characters from 'catalan'. 2005-02-20 19:20:15 +00:00
Bram Matthys 67bd44cb77 - set::allowed-nickchars:
- Renamed 'euro-west' to 'latin1' since that's more descriptive/fair ;)
  - Added 'hungarian' [supplied by AngryWolf]
  - Added category 'latin2': just Hungarian for now
  - Added 'catalan' [supplied by Trocotronic]
  - Added 'greek' [supplied by GSF]
  - Added category 'latin7': alias for 'greek'
  - Added category 'gbk': alias for 'chinese'
2005-02-20 17:24:44 +00:00
Bram Matthys 5b5b6ce919 - Various updates to unreal32docs from Ron2K (#0002354). 2005-02-20 16:07:49 +00:00
Bram Matthys c35947553f credit! 2005-02-19 21:58:45 +00:00
Bram Matthys 99d1d11676 - Added swedish support for nicks, supplied by Tank. 2005-02-19 21:58:26 +00:00
Bram Matthys 8650c97cd3 - No longer cutoff nick upon illegal character -- just reject the whole nick. The nick is
still cutoff if the nick is too long. Basically this is the same way as Hybrid does it
  so it should work ok :).
- Added nick character system. This allows you to choose which (additional) characters
  to allow in nicks via set::allowed-nickchars. See unreal32docs.html -> section 3.16
  for a list of available languages and more info on how to use it.
  Current list: dutch, french, german, italian, spanish, euro-west, chinese-trad,
  chinese-simp, chinese-ja, chinese.
  If you wonder why your language is not yet included or why a certain mistake is present,
  then please understand that we are most likely not experienced (at all) in your language.
  If you are a native of your language (or know the language well), and your language
  is not included yet or you have some corrections, then contact syzop@vulnscan.org or
  report it as a bug on http://bugs.unrealircd.org/
2005-02-19 20:47:41 +00:00
Bram Matthys 6128e121b3 - Some help.conf/005.txt updates, reported by Ron2K (#0002354). 2005-02-19 19:21:09 +00:00
angrywolf af5d1d7196 Doc update (week 07) 2005-02-19 14:39:21 +00:00
stylus740 e2ad6c059d Changes week 07 of doc/unreal32docs.de.html 2005-02-19 09:41:47 +00:00
trocotronic 44dad06890 Cambios semana 7 2005-02-19 09:36:34 +00:00
Bram Matthys 87557e0390 - Added greek docs, translator: GSF. 2005-02-17 19:42:02 +00:00
Bram Matthys db69e18e06 - Fixed a bug where shuns placed on IP's did not take effect to currently connected users.
- Fixed a small doc bug regarding shun in spamfilter, reported by KnuX (#0002338).
2005-02-14 15:28:13 +00:00
babass dcf50597e3 Quelques modifications mineures 2005-02-13 21:38:21 +00:00
Bram Matthys 11cb7a1136 - Fixed shuns not working as target in spamfilter and ban version { }, reported by Bugz
(#0002223).
2005-02-13 00:48:58 +00:00
Bram Matthys ab103a74cd - Docs: log { } from 'optional' -> 'recomended'
- If no log { } block is present a warning will be printed out and we will fallback
  to a default of logging errors to ircd.log. Suggested by w00t (#0002327).
2005-02-13 00:20:11 +00:00
Bram Matthys 9c38686f52 - Fixed SVSNOOP bug where remote servers still thought the opers had privileges, reported
by Zell (#0002185)
2005-02-13 00:01:31 +00:00
Bram Matthys 2665b9f04f updated docs on ~c 2005-02-12 23:40:12 +00:00
Bram Matthys 50520aee84 - Added a feature to +b ~c, ~c:[prefix]<#channel>, prefix can be +/%/@/&/~ and will
check if the user is voiced/halfoped/etc.. Especially useful for +e ~c. Idea from
  Bugz (#0002198). Obviously all servers need to be upgraded to make this work.
2005-02-12 23:33:26 +00:00
angrywolf 878777e642 - Doc update (week 06)
- Minor corrections again
2005-02-12 10:57:44 +00:00
trocotronic 9d541d8ed4 Cambios de la semana 6 2005-02-12 10:04:53 +00:00
stylus740 bfb3e15bce Update doc/unreal32docs.de.html Feb. 12. 2005 2005-02-12 10:04:43 +00:00
Bram Matthys b87e3f82fe made it a tad more clear that +j needs testing ;) 2005-02-12 00:11:12 +00:00
Bram Matthys d3a0bb92f6 - Added channelmode +j (jointhrottle), syntax: /mode #chan +j X:Y, and then it will
throttle the number of joins per-user to X in Y seconds. Idea from Angrywolf (who
  wrote a module that did this before). This might need some more testing :).
  It's enabled by default but can be #undef'ed in include/config.h (line 449).
2005-02-12 00:05:08 +00:00
angrywolf 0441305a3a Doc update (week 05) 2005-02-11 11:56:17 +00:00
codemastr e750d52f9e Made channel mode +S strip RGB color codes 2005-02-06 18:24:19 +00:00
codemastr 2d814ac488 Made channel mode +c block RGB color codes. Fixed a bug with channel alias{}'s where using the format syntax caused a crash. 2005-02-06 17:12:52 +00:00
stylus740 9654db70da changes doc/unreal32docs.de.html week05 2005-02-06 14:57:39 +00:00
Bram Matthys 432e3a3a6c - Win32 crash fixes due to modulizing 2005-02-04 20:03:46 +00:00
Bram Matthys 1790648081 plok 2005-02-04 19:08:26 +00:00
Bram Matthys 0945798211 [..] Also made loading m_*.so work again. 2005-02-04 15:49:29 +00:00
Bram Matthys 82d33e262c - Updated makefile to fix compile problem, reported by vonitsanet (#0002317) [?]. 2005-02-04 14:57:55 +00:00
Bram Matthys 3f46918f24 plok 2005-02-04 01:24:38 +00:00
Bram Matthys 1a655c11ca - Added spamfilter topic support ('t' in /spamfilter, or 'topic' in conf), suggested
by Z3l3zT (#0001929).
2005-02-04 01:05:42 +00:00
Bram Matthys be93950f40 - Fixed mode #chan +O set by locop causing a desynch, reported by Unim4trix0 (#0001946). 2005-02-04 00:42:19 +00:00
Bram Matthys 8eb88be500 - Made unreal_copyfile try hardlinking first, if that fails.. it will try to copy
(perhaps this should be a different function?). Anyway, this means less diskspace
  is needed (~1.5mb or more), and it also makes it a bit easier for RBAC (#2300).
- Made a new function DoMD5() which is ssl/non-ssl independent. Also made the cloaking
  module and the auth functions use it. Hopefully I didn't break anything ;). Suggested
  by Bugz (#2298).
2005-02-04 00:26:37 +00:00
Bram Matthys 3469211b62 plok 2005-02-03 18:33:47 +00:00
Bram Matthys e601339deb - Various (important) fixes to above, also made win32 compile work again. 2005-02-03 17:37:28 +00:00
Bram Matthys 4a3be9e58f .. 2005-02-03 17:13:53 +00:00
Bram Matthys bcfc9b85fb dumdeedum.. modulized fixes (timespan <2d) 2005-02-03 17:11:12 +00:00
Bram Matthys 9c979e4e04 join fixes? 2005-02-03 17:04:45 +00:00
Bram Matthys 3e1b7c0f47 bleh 2005-02-03 16:58:16 +00:00
Bram Matthys 03df91bbf3 opermotd tooooooo 2005-02-03 16:58:04 +00:00
Bram Matthys 4bf1758b89 ARGH botmotd GOOOONE 2005-02-03 16:57:42 +00:00
Bram Matthys b3257db161 - win32 makefile updates for above & more <= update 2005-02-03 16:56:02 +00:00
Bram Matthys 3b28ac0385 more modulized fixes 2005-02-03 16:53:29 +00:00
Bram Matthys 14879ae6f0 and another fix for modulized things 2005-02-03 16:51:32 +00:00
Bram Matthys b967f600df - win32 makefile updates for above. 2005-02-03 16:45:05 +00:00
Bram Matthys 6508c962f8 - Made m_template.c use CommandAdd() and CMD_FUNC()
- Modulized a lot of commands and related subfunctions: NICK (750 lines), USER (200),
  MODE (2300), WATCH (250), JOIN (600), PART (250), MOTD (100), OPERMOTD (100),
  BOTMOTD (100), LUSERS (100). More will follow soon (probably including more subfunctions
  related to existing commands).
2005-02-03 00:38:40 +00:00
Bram Matthys 74fdf83dcf copyright date updates 2005-01-31 14:54:28 +00:00
codemastr cee255cbe0 Fixed a win32 GUI problem where the tray menu's config submenu was not updated when new files were loaded or files were unloaded 2005-01-29 19:07:02 +00:00
babass 261c0f75c0 Ajout de corrections mineures 2005-01-29 18:19:17 +00:00
codemastr f43420a15c Fixed a problem when compiling Unreal with GUEST support 2005-01-29 18:07:12 +00:00
codemastr 7a37675909 Fixed a documentation inconsistency with me::numeric 2005-01-29 17:47:32 +00:00
codemastr 52fc709074 Corrected the help.conf documentation for /invite 2005-01-29 17:36:07 +00:00
codemastr a86c75bfb4 Fixed some problems with the /stats help and documentation 2005-01-29 17:22:54 +00:00
codemastr 839efd901a Added invite exceptions (+I) 2005-01-29 16:55:30 +00:00
Bram Matthys a557bc50d7 - Added debug code to trace proto-check bugs in DEBUGMODE [IsToken() etc]
- [Module coders] Added new function: do_cmd(cptr, sptr, cmd, parc, parv) which is an
  uniform method to call any other commands. For more info, see description in src/parcket.c.
  This will be used for any further modulization of commands that need to call other
  commands, like NICK (will be done soon).
2005-01-25 23:31:07 +00:00
codemastr 232b172256 Moved channel mode +G to extcmode to make room for invex 2005-01-23 21:45:49 +00:00
codemastr dd9e9417af Fixed a bug where specifying a reason to SVSPART would cause it to fail 2005-01-23 18:31:59 +00:00
codemastr 0258d13195 Added an options member to the ExtbanInfo structure. This currently supports one flag, EXTBOPT_CHSVSMODE. When set, this extban will be removed when an SVSMODE -b [nick] is executed 2005-01-23 18:24:34 +00:00
codemastr c2224bc5fd Made /stats E include tkl except stats as well 2005-01-22 18:39:33 +00:00
codemastr 64d8a67f4a makefile.win32 2005-01-22 18:34:09 +00:00
codemastr 3a052e213b Fixed a bug where /whois notices were not sent to users who are +R if the sender is -r and on a remote server 2005-01-22 17:59:23 +00:00
codemastr 282a5f3eab Reworded a cloak-key error message to make it clearer 2005-01-22 17:53:49 +00:00
codemastr cb1ca56cae Fixed a bug related to the sajoin recode regarding notices displayed 2005-01-22 17:51:17 +00:00
Bram Matthys 908387c024 ignore this ;p 2005-01-21 01:13:02 +00:00
Bram Matthys d0f4e86833 slight clarification + credit 2005-01-21 01:12:11 +00:00
Bram Matthys 68feb2ba64 - Fixed a resolver cache bug regarding CNAME's, this needs some more testing.
[this description will be updated after knowing if this indeed fixes #2229/#1236]
2005-01-21 01:04:17 +00:00
codemastr 8e0d1cd516 Fixed a problem with set::htm::incoming-rate being interpreted incorrectly 2005-01-18 16:50:53 +00:00
codemastr b9a516d664 Hopefully fixed the last of the alloca warnings 2005-01-17 20:41:27 +00:00
codemastr 107456853e Made it so +f notices are sent to %#chan, not @%#chan 2005-01-17 19:55:20 +00:00
codemastr 83fd8dfa11 Fixed a problem where doing ./unreal restart multiple times would not actually restart the ircd 2005-01-17 19:33:46 +00:00
codemastr 30c9781e72 Made /sajoin support multiple channels and using 0 2005-01-17 19:16:03 +00:00
codemastr 6c88aecf6c Made the win32 installer include the dccallow.conf. Made the win32 installer work with the latest version of Inno Setup (5.0.6) 2005-01-17 18:11:35 +00:00
codemastr 49a988c64f Fixed a couple of problems introduced with the ./Config -advanced changed 2005-01-17 18:04:39 +00:00
codemastr d3641acd7b Made SVSMODE -b and -e remove bans/excepts placed on IPs 2005-01-17 17:31:10 +00:00
codemastr 7e18fcd00e Fixed a minor typo in the "now an oper" announcement 2005-01-17 17:25:05 +00:00
Bram Matthys 7577ae774c clarification 2005-01-15 20:39:43 +00:00
Bram Matthys 3aeea5c63b - Fixed serious crashbug
- Fixed 'make install' error due to example.settings remove.
2005-01-15 18:37:15 +00:00
Bram Matthys 65024ce49e ouch! 2005-01-15 00:39:10 +00:00
trocotronic 4f93681c71 Informacion sobre las regexp 2005-01-08 11:22:21 +00:00
babass bb192d3016 *** empty log message *** 2005-01-06 11:56:38 +00:00
Bram Matthys 4a6f784e37 - Got rid of wma/wmv in dccallow.conf, better to require an explicit select here due to
recent DRM exploits (spyware etc).
- Fixed /restart reasons, reported by SouL-FoRTuNe.
- Partial (incomplete!) fix for alloca warnings during compile (especially w/SSL).
2005-01-05 01:44:42 +00:00
babass 1db7944c09 *** empty log message *** 2005-01-03 18:16:47 +00:00
angrywolf 0676d94ab1 Finished the translation of Appendix A (Regular Expressions). Also corrected some grammar mistakes in it. 2005-01-03 17:04:46 +00:00
stylus740 849205bb31 doc/unreal32docs.de.html week 53 2005-01-02 18:51:27 +00:00
stylus740 013b2de18f doc/unreal32docs.de.html week 53 patially Update (complete translation will follow soon) 2005-01-01 18:10:21 +00:00
codemastr 274230c55f Imported TRE 0.7.2 for *nix 2004-12-29 18:47:42 +00:00
codemastr 629825c6d9 Imported TRE to 0.7.2 for Windows 2004-12-29 18:35:36 +00:00
Bram Matthys d40fc31645 flatmap in /lusers 2004-12-29 04:58:59 +00:00
angrywolf 7c6a6332fc Continuation of the previous translation, part 3 2004-12-28 15:35:47 +00:00
angrywolf 854e64e253 Continued the translation of appendix A (Regular Expressions). 2004-12-28 00:16:24 +00:00
angrywolf 53b182a021 - Started working on the translation of appendix A (regular expressions).
- Corrected the grammar of all subtitles in section 4.
2004-12-27 02:04:44 +00:00
codemastr a07c13bdc2 Added some error checking to /sapart 2004-12-27 00:44:42 +00:00
codemastr 67470b474d Made the (?) kill message not show IP addresses 2004-12-27 00:21:08 +00:00
codemastr 7f8bcdb5b2 Made CIDR no longer accept bitmasks with less than 16bits for /*line commands 2004-12-27 00:14:07 +00:00
codemastr 77f8b18bad Added a basic regex tutorial to unreal32docs.html 2004-12-26 20:16:29 +00:00
Bram Matthys c251d4e198 - Some doc/ updates: removed: Unreal31_to_32.html & example.settings, updated: Authors &
translations.txt.
DEL: Unreal31_to_32.html & example.settings DUE TO outdated
MOD: Authors (added myself, updated griever end date), translations.txt (updated
     to mention that it takes a lot of time, and added a note on using word/frontpage).
2004-12-21 01:05:23 +00:00
Bram Matthys 5cf36dddca French docs update of week 49 (babass). Forgot to commit, woops ;p 2004-12-20 21:00:17 +00:00
Bram Matthys 3cbbaf125b - Fixed bug where servers behind ulines were not ulined, causing for example juped servers to
show up if flat-map was enabled, reported by GSF19 (#0002230).
2004-12-10 20:09:09 +00:00
Bram Matthys 02a00490ad - Fixed tkl except { } not working (post-3.2.2). 2004-12-09 17:15:52 +00:00
trocotronic 693f6e5183 *** empty log message *** 2004-12-04 13:49:14 +00:00
angrywolf 1d7b8bad06 Doc update (week 49) 2004-12-04 12:18:01 +00:00
stylus740 fbf2d2d394 Update unreal32docs.de.html week 49 2004-12-04 09:35:27 +00:00
Bram Matthys a76e4d4712 - Module coders: sendto_snomask* now only sends to opers, sendto_snomask_normal* can be used
to send to normal users w/the snomask set.
- Fixed dcc filtering a bit more.
- Made usermode 'g' operonly since it didn't do much, reported by DukePyrolator (#0002024).
2004-12-03 22:00:09 +00:00
Bram Matthys 54902b0285 - spamfilter.conf: fixed mIRC exploit sigs
- Fixed all spamfilters in configfile not working due to configrewrite (post-3.2.2).
2004-12-03 17:09:29 +00:00
Bram Matthys 4284c39307 - OperOverride INVITE notices are now also global (if you have the eyes snomask set) (#2212).
- Module coders: New function: sendto_snomask_global().
- Speedup sendto_snomask/sendto_connectnotice/sendto_fconnectnotice code.
2004-12-03 03:32:32 +00:00
Bram Matthys 6653e4ef3e help.conf: added long flags to OFLAGS. 2004-12-02 17:45:39 +00:00
Bram Matthys fd47548f55 added tiny note on how I generated indexes 2004-12-02 17:08:45 +00:00
Bram Matthys ecdb057111 - help.conf: Fixed a typo, updated *CMDS indexes a bit, reported crazy (#0002208). 2004-12-02 17:06:32 +00:00
Bram Matthys 55ece5e5e4 - Fixed Oper Override not giving a 'special join notice' if +z is set along with another mode
(eg: +i/+k), reported by tabrisnet (#0001487).
2004-12-02 16:47:55 +00:00
Bram Matthys 5b7e45545c - Fixed dcc spamfilter problem reported by TimeFX and Deadalus (#2177, #2204). 2004-12-02 04:51:29 +00:00
codemastr 9395e74143 Added missing documentation for spamfilter away target 2004-12-01 20:58:56 +00:00
codemastr afbf2070fa Added a set::gline-address which works like set::kline-address 2004-12-01 20:55:38 +00:00
Bram Matthys a6713f14cb - Fixed alloca warning @ Linux (post-3.2.2)
- Numeric audit: 15 small changes (int/long mismatches etc). This might have fixed some
  bugs on architectures where 'long' and 'int' have different sizes (eg: opteron).
2004-11-28 21:26:27 +00:00
codemastr bd142fc323 Added a config.h options, IPV6_COMPRESSED to make Unreal use compressed IPv6 addresses where possible 2004-11-28 17:53:43 +00:00
codemastr ad878b68c8 Changed the +z cannot join message to be a bit more descriptive 2004-11-26 23:28:48 +00:00
codemastr 78ff3fdd53 ... 2004-11-26 22:28:13 +00:00
codemastr 191127296a Rewrote some of the previous change to deal with some strange issues 2004-11-26 22:14:30 +00:00
codemastr 637a36a2af If a user is +b on a channel, and set::allow-userhost-change force-rejoin is used, a part/join is not sent in order to prevent flooding 2004-11-25 23:54:21 +00:00
codemastr 81de8345d2 Added some missing operflags to /stats O and SVSO 2004-11-25 19:22:13 +00:00
codemastr 45cee8f2bd Added the new /invite syntax to help.conf 2004-11-25 19:17:48 +00:00
codemastr a11e6df64b Using /invite with no parameters now lists the channels you are invited to but have not yet joined 2004-11-25 19:16:02 +00:00
codemastr 4c66f198c5 ... and set::hosts errors 2004-11-24 19:57:18 +00:00
codemastr 61f3c2cddf Fixed a minor bug in the new config system when displaying link {} errors 2004-11-24 17:48:31 +00:00
stylus740 aed701705a Update doc/unreal32docs.de.html week 47 2004-11-22 17:00:08 +00:00
angrywolf 84c5813bc4 Doc update (week 47) 2004-11-20 13:49:17 +00:00
trocotronic 174735967a *** empty log message *** 2004-11-20 12:55:41 +00:00
Bram Matthys d310864b43 - Added set::dns::bind-ip (rarely ever needed, but might be useful for paranoid people).
- Some unreal32docs->security section improvements.
2004-11-19 20:55:18 +00:00
Bram Matthys 30d0defdc0 - Fixed bug in remote version reply, reported by DukePyrolator (#0002180). 2004-11-19 20:42:43 +00:00
codemastr 1a035edc8c Fixed the crule parser to treat - and : as valid 'word' characters rather than separators 2004-11-19 20:12:10 +00:00
Bram Matthys ade0c0109d - Win32 installer: Apparently 'install as a service' was still not the default, reported
by fez (#0002191, #0002189).
2004-11-19 19:49:05 +00:00
Bram Matthys cb6bfc4d34 - Renamed some calls from report_error() to report_baderror() since otherwise the errors are
hardly ever seen (unless you have +s +j set). For example a bad link::bind-ip only caused
  "Couldn't connect to xxxxxx" without any meaningful error message. Additionally, errors
  sent to report_baderror() are now logged.
^^ way too long description for a small tweak :p
2004-11-17 17:38:54 +00:00
Bram Matthys bc809fd7aa French docs update of week 46 (babass). 2004-11-14 20:43:19 +00:00
stylus740 ce7bba8b5a doc/unreal32docs.de.html Changes week 46 2004-11-14 07:58:32 +00:00
codemastr dd2f5bedd8 Made typing /kline, /shun, /zline, and /gzline correctly report the correct /stats flag, and these commands now produce the same output as the respective /stats flag they emulate 2004-11-13 18:11:02 +00:00
codemastr 5439dddde5 Added documentation for set::options::fail-oper-warn, Removed an extra ) in the Throttle disconnect message, Fixed a bug where the "looking up your hostname" message could still be displayed even if hostname resolving was disabled 2004-11-13 17:51:26 +00:00
codemastr 77f898e985 Added support for using \\ in the config file to indicate a " 2004-11-13 17:40:49 +00:00
codemastr e964113964 Updated Donation file, Added a 'B' flag to /who output for bots, and allowed normal users to /who +m B 2004-11-13 17:15:17 +00:00
angrywolf fc78e50666 Doc update (week 46) 2004-11-13 10:44:05 +00:00
trocotronic 4e901fdd66 *** empty log message *** 2004-11-13 09:40:27 +00:00
Bram Matthys c3c29d38da - Fixed botmotd crash due to last change (post-3.2.2). 2004-11-10 16:48:24 +00:00
Bram Matthys c2d22329b9 - Fixed small memory leak on /rehash (post-3.2.2). 2004-11-09 20:50:37 +00:00
codemastr b213011ab9 Removed an excess space from the SAMODE notice when a mode without a parameter was set 2004-11-09 20:36:59 +00:00
Bram Matthys 4283702d2c - Fixed crashbug on /rehash due to config rewrite, also made DEBUGMODE working again.
Probably more fixes to come (small or not)...
2004-11-09 17:14:14 +00:00
codemastr 98cb02a410 Added the ability to specify a botmotd and opermotd in a tld {} 2004-11-08 19:40:29 +00:00
Bram Matthys 102d21855a Doc update - week 45 (babass) 2004-11-08 19:22:39 +00:00
stylus740 010d3275f2 unreal32docs.de.html update week 45 2004-11-07 08:05:54 +00:00
Bram Matthys 5af77f8779 - Small fix for above ($arg -> $ARG) 2004-11-06 19:18:46 +00:00
Bram Matthys f3cdcc72ab $arg -> $ARG 2004-11-06 19:17:14 +00:00
codemastr 1bb24f0515 Made ./Config better handle command line arguments, Removed NAZIISH_CHBAN_HANDLING as it didn't do anything, Added -advanced flag to ./Config to configure advanced options 2004-11-06 17:33:50 +00:00
angrywolf a69e979d3d Doc update (week 45) 2004-11-06 12:16:32 +00:00
trocotronic dc9d9dc62e *** empty log message *** 2004-11-06 09:41:29 +00:00
trocotronic 883ec36e8b *** empty log message *** 2004-11-06 09:38:33 +00:00
codemastr 2b3fda5a10 Documented the default behavior of snomasks when /mode nick +s is used and added 'const' to the functions in match.c 2004-11-05 21:26:38 +00:00
codemastr c52dff2da7 Fixed a bug with /rehash and classes due to the config parser rewrite and Modified the module symbol dependency code to do more accurate searching for the module hat contains the necessary symbol 2004-11-05 20:23:59 +00:00
codemastr fb0802a22b Corrected numerous -Wall warnings 2004-11-04 21:42:34 +00:00
codemastr e72b29f81c Recoded the config parsing code, faster, and duplicate config entry detection 2004-11-03 20:38:17 +00:00
Bram Matthys b4d7a60a72 - Added updated auspice.conf from Rocko since previous one was outdated (#0002147). 2004-10-30 15:18:48 +00:00
Bram Matthys aaabed6af2 - Some text updates... docs: now 3.2.2-CVS, lso got rid of double version to avoid
confusion. credits: fixed typo.
2004-10-30 12:21:24 +00:00
codemastr 43db020b75 Fixed a typo in the makefile for USERIP, Made the WATCH command work for WebTV users 2004-10-29 18:24:58 +00:00
Bram Matthys aaa29c02f8 ** 3.2.2 release ** 2004-10-27 18:27:40 +00:00
Bram Matthys f87a4fda13 - Changed version to 3.2.2 2004-10-27 18:18:06 +00:00
Bram Matthys 48bdcf92fc - Forgot to mention away spamfilter target in helpop, reported by Rocko. 2004-10-26 18:46:52 +00:00
Bram Matthys ed38124a1d notice->private-notice 2004-10-25 19:45:24 +00:00
Bram Matthys 50952ed629 REVERT 2004-10-23 21:24:29 +00:00
Bram Matthys cdecfbfedc clarifcation @ changes 2004-10-23 16:03:07 +00:00
Bram Matthys 2d3ca29a45 - Fixed bug where some ban ip { } masks didn't work. 2004-10-23 16:02:48 +00:00
angrywolf 3a9f8eee47 Doc update (week 43) 2004-10-23 09:33:29 +00:00
trocotronic 949de4f098 *** empty log message *** 2004-10-23 09:12:04 +00:00
stylus740 05b098396d Update doc/unreal32docs.de.html week 43 2004-10-23 08:25:26 +00:00
Bram Matthys f541d5f58f - French doc updates, hopefully synched now. 2004-10-22 20:37:00 +00:00
Bram Matthys 2ce551158a - Fixed some doc & release notes typos. Reported by Rocko, HiT. [release note correction was committed earlier] 2004-10-21 20:34:15 +00:00
Bram Matthys 64860fa6c3 Little typo @ release notes 2004-10-20 19:49:22 +00:00
Bram Matthys b434149c41 updated map, right before 3.2.2pre1:
+   IsupportStrings
+   Isupports
+   cmdstr
+   create_tkl_except
+   del_async_connects
+   find_spamfilter_user
+   gethost_byname_revquery
+   isupport_init
+   make_isupportstrings
2004-10-20 18:31:58 +00:00
Bram Matthys c333495b1b ** internal 3.2.2-pre1 release ** 2004-10-20 18:11:38 +00:00
Bram Matthys ea4db0c2fe - Updated version to 3.2.2-pre1 already. (well all the changes went with previous commit) 2004-10-19 18:26:08 +00:00
Bram Matthys 5133dcf755 Version number change -> 3.2.2pre1. Proto -> 2305. Some doc version updates (like Unreal3.2.tar.gz -> Unreal3.2.2.tar.gz). And a small note @ win32 compile instructions about no longer using /MDd but /MD. 2004-10-19 18:21:50 +00:00
Bram Matthys 9e855621e5 - Added some future SJOIN skip stuff. <= for future +I (invex) support. 2004-10-19 18:01:13 +00:00
Bram Matthys fbd7fa502a plok... 2004-10-19 15:30:41 +00:00
Bram Matthys f368a2ba04 this is supposed to be a better version... :p 2004-10-18 19:33:50 +00:00
stylus740 96582cb86e Update doc/unreal32docs.de.html week 42 2004-10-17 07:35:40 +00:00
Bram Matthys 2f42d44b74 - Fixed serious heap corruption bug if remote users were using qlined nicks, thanks to
Gilou and Trankill for making me able to trace this issue down (#0002032).
- Fixed qline notices again: now gives msg #1 for local qlined-nick attempts, and
  another msg in case of a remote client (eg: oper) using a qlined nick.
2004-10-16 19:32:04 +00:00
trocotronic bf829244b8 *** empty log message *** 2004-10-16 08:17:03 +00:00
Bram Matthys 5018dec02f - Windows version can now hold ~4096 connections instead of ~1024
- help.conf: clarified MKPASSWD documentation, reported by hypnetric (#0001926).
- Some modeskip handling for future versions
2004-10-13 18:30:41 +00:00
angrywolf 988f5ff9d6 - Made a few grammar corrections. 2004-10-12 15:10:00 +00:00
angrywolf c3b8d07de4 Update: except tkl::type 2004-10-12 14:44:47 +00:00
Bram Matthys e6156b4604 - Added spamfilter 'away' ('a') target (#0002057). 2004-10-11 18:46:53 +00:00
codemastr 6af767a885 Added file: include/macros.h and a new macro, ARRAY_SIZEOF, Added the ability to specify multiple types in a tkl except 2004-10-11 17:51:02 +00:00
Bram Matthys 681a0ce0c2 - Fixed OOB read/write on user quit (did no harm on Linux&FreeBSD).
- Fixed some tiny memory leaks (~100 bytes) on rehash.
- Updated chinese&japanese GBK nick code, fix supplied by Xuefer (#0002051).
- Added release notes (unfinished).
2004-10-10 23:37:25 +00:00
stylus740 31a7905c94 Update german doc/unreal32docs.de.html week 41 2004-10-10 08:51:44 +00:00
trocotronic 3716f12eee *** empty log message *** 2004-10-09 16:01:49 +00:00
angrywolf a0e3779f74 *** empty log message *** 2004-10-09 09:16:10 +00:00
angrywolf 2e9852c393 Update to the rest of the changes of week 41 (spamfilter target type clarifications). 2004-10-09 09:11:27 +00:00
Bram Matthys 2eadd2efa1 - IPv6: Fixed hostnames in link::hostname not working, reported by Jasmin (#0001990). 2004-10-07 23:52:46 +00:00
Bram Matthys 97ea680aec - Fix for too broad regex in badword::word causing the IRCd to hang, reported by Flop
(#0002101).
2004-10-07 20:45:18 +00:00
Bram Matthys 6f72b78d1b - Made docs a bit more clear on spamfilter targettypes. [sorry angrywolf ;pp] 2004-10-07 19:56:39 +00:00
angrywolf 4d7f9b5a5b - Doc update: alias::target, alias::format::target and spamfilter target 'user'.
- Also made a minor correction in the translation by request of groove-coverage.
2004-10-07 18:53:30 +00:00
Bram Matthys f6e36300bb - If a nick is qlined, the user is now lagged up to limit qline floods a bit (#0001335). 2004-10-06 22:03:11 +00:00
Bram Matthys fae77f21ec - Module coders: Added HOOKTYPE_REMOTE_JOIN, HOOKTYPE_REMOTE_PART, HOOKTYPE_REMOTE_KICK (all
work just the same as the HOOKTYPE_LOCAL_* variants).
- Module coders: HOOKTYPE_REMOTE_CONNECT is now also called during net-merge. You can use
  IsSynched(sptr->srvptr) to find out if it's called due to a net merge (0) or a connect (1).
- Added spamfiler 'user' (u) target. This regex is checked against nick!user@host:realname
  when a user connects. This makes it easy to ban drones with simple patterns.
  For example: '/spamfilter add u gzline 86400 Drone[0-9]+!.+@.+:Drone[0-9]'
  would kill any drones that have both a nick and realname with 'Drone' followed by digits.
2004-10-06 20:33:13 +00:00
codemastr d78acf841e Added channel alias {}'es and fixed an Isupport bug 2004-10-03 17:25:58 +00:00
Bram Matthys cf68fd7d41 - Fixed resolver not working in FreeBSD jail, reported & patch provided by urkel (#0002097). 2004-09-29 16:43:46 +00:00
Bram Matthys 33d9d1dbcd bleh 2004-09-28 18:56:45 +00:00
Bram Matthys d04b80dcc3 - Fixed a (useless) cloak typo / made it a few nanosec faster. Reported by Martin Brulisauer. 2004-09-28 18:56:12 +00:00
codemastr 3edac539d1 Updated Windows to TRE 0.7.0 2004-09-25 19:11:42 +00:00
codemastr 75b639af81 Fixed a +u problem and updated to TRE 0.7.0 2004-09-25 19:10:35 +00:00
Bram Matthys 188e7990ba - Temporary fix for ircsprintf %lu 1..6 issue. 2004-09-19 18:32:14 +00:00
Bram Matthys 47c5c36bda - Added salted passwords. Salts are useful because it "protects" against stored-plaintext
attacks (eg: rainbow) and prevents cracking of several passwords at once.
  This change means /MKPASSWD will now just generate a different string than before.
  Do note however, that the old syntax/encrypted passwords will still work and _will continue
  to work_ in the future, for at least the whole 3.2* series.
  If you are concerned with security and have some time, then converting your passwords
  is probably a good idea... Just in case your configuration file gets stolen one day ;).
- MD5 password encryption is now always available on *NIX, even if SSL is disabled.
2004-09-19 16:13:03 +00:00
Bram Matthys 9b882e5c6d - Fixed a bug regarding chanmode +mu where the <IRC> messages were not properly relayed
to all servers. Reported by Aenox (#0002079).
2004-09-18 22:31:08 +00:00
codemastr 9b86b48b81 Updated doc/technical/token.txt and resolved 2 token conflicts. 2004-09-18 17:49:42 +00:00
stylus740 cf760ad336 unreal32docs.de.html Changes week 37 2004-09-12 07:19:49 +00:00
Bram Matthys 19748e6f03 - Fixed prefix bug caused by previous 'fix'/behavior change. Reported by aquanight (#0002067). 2004-09-11 19:19:17 +00:00
trocotronic 3b6270056d *** empty log message *** 2004-09-11 16:26:55 +00:00
kolibot bbf0df59f1 *** empty log message *** 2004-09-10 12:01:26 +00:00
Bram Matthys 326f506cd9 - Updated installer for msvcr70.dll 2004-09-09 00:10:19 +00:00
codemastr f71bc9335e Changed some stuff to use the release version of MS libraries 2004-09-08 18:53:27 +00:00
kolibot dc77debaec test 2004-09-07 23:42:00 +00:00
Bram Matthys 1ee0f10401 - Added french docs, translated by Kolibot & Babass. 2004-09-07 23:20:42 +00:00
codemastr 18311db5bf Fixed a typo in the *nix Makefile 2004-09-05 23:17:37 +00:00
stylus740 edff4089c7 Update german Translation week 36 2004-09-05 06:46:02 +00:00
codemastr fea3b691b3 Added a USERIP command 2004-09-04 22:55:19 +00:00
angrywolf c88f698c88 - Update: snomask +o 2004-09-04 20:55:30 +00:00
codemastr 23ee49f602 Exported the isupport functions for use in Windows modules. Added a new snomask, +o to show oper-up notices (oper only) 2004-09-04 17:05:25 +00:00
codemastr 36a75d5b55 SVSO now removes +v 2004-09-04 15:53:02 +00:00
angrywolf 4896f37ed4 Some weird characters went into the description of link::ciphers. 2004-09-04 14:22:24 +00:00
angrywolf d8678f686c - Update to week 36.
- Many grammar corrections.
2004-09-04 14:11:11 +00:00
trocotronic 483570dc4a *** empty log message *** 2004-09-04 11:39:38 +00:00
codemastr cbc3eea61e Made it so WATCH will not respond with an erroneous reply if the parameter was simply + or - 2004-09-04 04:26:18 +00:00
codemastr 165386a44b Updated documentation to reflect that cmode +M allows voiced users to talk, not just registered users 2004-09-04 04:21:13 +00:00
codemastr a5a502c1d5 Added documentation for link::ciphers to unreal32docs.html 2004-09-04 04:18:01 +00:00
codemastr d18a82acfe Fixed a problem where a local TKL could be sent to remote servers when it is being changed 2004-09-04 04:08:07 +00:00
codemastr 53b8b86598 Fixed a bug with IP based except tkl {} lines did not validate the ident portion of the mask 2004-09-04 03:59:58 +00:00
codemastr b9558cebe4 ... 2004-09-04 00:00:49 +00:00
codemastr e1d088de41 Fixed a few compile warnings, made +b apply to IPs correctly 2004-09-03 23:48:15 +00:00
codemastr d4059fec92 Rewrote the 005 system to be dynamic and added an API to manipulate it 2004-09-03 21:46:32 +00:00
codemastr 2a1844812f Added a fix for installing unreal as a service under win2003 2004-08-24 16:18:05 +00:00
codemastr ed476aaf75 Added snomasks to /whois usermode output and made usermodes available to all opers not just +e 2004-08-22 18:05:04 +00:00
Bram Matthys 641b12bf00 - Some doc/example.conf clarifications, mainly for modules @ win32. 2004-08-08 15:06:36 +00:00
Bram Matthys 76cd27a028 - Made zip/non-zip modules on win32 binary compatible. Since it was nowhere documented
that you should pass the ZIP_LINKS etc options to 'nmake -f makefile.win32 custommodule'
  many people didn't do this which caused odd problems when reading certain clientstructs.
  Module coders: in the meantime, for 3.2.1 mods, use something like:
  nmake -f makefile.win32 USE_ZIPLINKS=1 ZLIB_INC_DIR="c:\dev\zlib"
   ZLIB_LIB_DIR="c:\dev\zlib\dll32" custommodule MODULEFILE=m_mymodule
  For 3.2.2+ these additional parameters will no longer be needed (but wouldn't harm either).
2004-08-07 21:20:22 +00:00
Bram Matthys 0a97b75bfb changed last comment -> - unbroke spamfilter not working for msgs/notices (oops..). 2004-08-02 03:33:13 +00:00
Bram Matthys acf99712e9 - Oops.. made spamfilter for msgs/notices not working ;p.. fixed. 2004-08-02 03:16:54 +00:00
Bram Matthys fa1c1d4db7 - Windows: the 'notice' parameter in the usermsg callback was always 0 due some windows/vc
weirdness, this also affected spamfilter (so any spamfilters added only at notice
  and not at msg on windows would not work). Now using the real 'notice' parameter.
2004-07-29 19:52:39 +00:00
Bram Matthys 1e743f80d4 forgot to change some paths (c:\openssl -> c:\dev\openssl) 2004-07-28 20:54:02 +00:00
Bram Matthys 1a8706a645 url change 2004-07-28 20:41:20 +00:00
Bram Matthys 85f88aa002 - Updated doc/compiling_win32.txt again with curl build instructions.
Also linked to a page with an unreal dev package which contains zlib+ssl+curl
  precompiled. This basically means many people no longer need to compile zlib/ssl/curl
  anymore themselves (which is a pain to do and takes a lot of time).
2004-07-28 20:40:10 +00:00
stylus740 9c2048f8cf Update unreal32docs.de.html for week 30 2004-07-26 06:25:32 +00:00
Bram Matthys d97c8de0b1 - Improved doc/compiling_win32.txt a lot: now VC7 only, and has instructions on:
compiling modules and their (binary) compatability, zip links (zlib), ssl (OpenSSL)...
  Remote includes (curl and c-ares) instructions still need to be added.
- Made 'Install as a service' unchecked by default, this should help beginners a lot.
2004-07-25 00:49:05 +00:00
trocotronic 743312fceb *** empty log message *** 2004-07-24 08:03:28 +00:00
Bram Matthys 6ce838a933 changelog typo: id -> if 2004-07-22 22:10:31 +00:00
Bram Matthys 1bd085164b - Fixed possible crash id /rehash'ing and a servername was just resolving (due to
/connect or autoconnect) and was not present in the cache. Reported and traced by sh0
  (#0001976).
- Fixed compile bug at *NIX caused by ModuleGetErrorStr fix.
2004-07-22 21:57:44 +00:00
Bram Matthys 0597307562 - Fixed bugs regarding HOOKTYPE_SERVER_QUIT: was sometimes called twice and could cause
crashes due read-after-free. Reported by SET (#0001988).
2004-07-22 21:29:48 +00:00
Bram Matthys c665636045 - Applied patch from slePP for bug #0001252: if IPv6 was enabled then in some cases names
were not properly resolved. Original bug reported by kormat.
2004-07-22 21:12:42 +00:00
Bram Matthys 7aad095b33 improved changelog msg 'Fixed an MacOS X crash-on-first-connect' -> also mention sun solaris [and possibly others] etc :) 2004-07-22 16:41:06 +00:00
codemastr e578ae4ad1 Added a missing message to ModuleGetErrorStr 2004-07-22 16:28:14 +00:00
Bram Matthys 9b9aa1d80f - Fixed a bug if me::info was set to "". 2004-07-21 20:57:22 +00:00
Bram Matthys c38621994b - Fixed an MacOS X crash-on-first-connect if SSL was enabled (#0001982), reported by bit. 2004-07-21 15:57:06 +00:00
angrywolf 827b5fa7e8 Doc update (oper::modes) 2004-07-19 17:42:41 +00:00
codemastr bdda1a6943 Made example.conf refer to unreal32docs.html for oper flags 2004-07-18 22:39:06 +00:00
codemastr 8440b94865 Added oper::modes 2004-07-18 22:35:55 +00:00
codemastr c0ea216165 Added a new modules makefile 2004-07-18 22:18:19 +00:00
codemastr ef85e44157 Fixed an NT service bug and a win32 lockup 2004-07-13 22:27:28 +00:00
codemastr 70b32d0164 Added sapart and svspart comments 2004-07-12 17:00:46 +00:00
trocotronic f73784de19 *** empty log message *** 2004-07-10 08:46:59 +00:00
stylus740 a6fac49452 German Update for doc/unreal32docs.de.html Week28 2004-07-10 06:57:44 +00:00
codemastr 7d1c6344bb Fixed some who ? flag bugs 2004-07-09 17:36:57 +00:00
codemastr 9bc2c3ffcc Added src/win32/editor.c 2004-07-09 16:34:20 +00:00
codemastr cad4c1d4b3 Win32 code cleanups 2004-07-08 21:54:40 +00:00
codemastr 72c94cb5c1 Fixed a whois bug when PREFIX_AQ is undefined 2004-07-07 20:57:24 +00:00
codemastr ec6dcdb573 Win32 code cleanups 2004-07-07 18:22:27 +00:00
angrywolf 567649106e - Made several non-translated texts appear as Hungarian and made a few
spelling corrections.
- Updated the description of set::hosts::* directives.
2004-07-07 13:43:27 +00:00
codemastr 8f196cd879 Removed the * and ^ flags from /whois if PREFIX_AQ is not enabled, Updated the /who docs to use correct English, Added documentation for the /who and /whois flags 2004-07-07 04:19:01 +00:00
Bram Matthys 582c487cff - Fixed defizzer module. Reported by Rocko and netrixtardis. 2004-07-06 22:28:09 +00:00
codemastr 3f9d00a84d Fixed a bug where an ident in a vhost {} was never sent out to other servers and added user@host support for set::hosts 2004-07-06 21:55:34 +00:00
Bram Matthys 791152587c - Fixed ban bug: halfops were also prevented from doing nickchanges if banned, plus..
+b ~n:*!*@* also made nickchanges impossible for voiced(&halfop'ed) people (so like half
  of the purpose of it was defeated @$#&@#). Reported by Rocko.
2004-07-06 14:56:53 +00:00
codemastr 08bd0aa006 Make allow-userhost-change force-rejoin apply to /oper, and removed /hs -> helpserv from anope.conf 2004-07-05 22:00:14 +00:00
angrywolf 562766ae07 Corrected the mIRC link 2004-07-05 20:01:50 +00:00
Bram Matthys b4c03ed74a docs typo (mIRC link pointed to irssi >;p) reported by angrywolf + added additional semi-requirement for translations to put the document-in-progress online somewhere... this seems to be needed since like half of the translators end up dead / not responding ;) 2004-07-05 19:01:57 +00:00
codemastr ce913cd127 Fixed a win32 module problem where file not found errors would display random characters 2004-07-05 16:54:29 +00:00
angrywolf 8f5ee7983f Minor doc corrections reported by Ryan 2004-07-04 13:46:36 +00:00
Bram Matthys 5cc04d4020 temporary -> temporarily 2004-07-03 18:41:51 +00:00
Bram Matthys fd11ec968b added 'cloaking has been cracked' to release notes @ major bugs too 2004-07-03 18:33:45 +00:00
codemastr bd9a57f90f Changed version to 3.2.1 and moved 3.2 changes to Changes.old 2004-07-03 18:28:20 +00:00
codemastr 52f76673c7 Release notes updates 2004-07-03 17:26:07 +00:00
Bram Matthys add996a92a - Made release notes a bit more scary + some other text updates (mainly english grammar/spelling) 2004-07-03 16:19:46 +00:00
stylus740 63e7fd12cc Update doc/unreal32docs.de.html week 27 2004-07-03 07:17:56 +00:00
angrywolf 3b92a1dd2a Updated the copyright info 2004-07-03 06:42:42 +00:00
codemastr 7b12465473 Updated /Credits and added a donator. 2004-07-03 05:00:36 +00:00
codemastr 67598ba37e Fixed a win32 installer bug 2004-07-02 17:43:12 +00:00
angrywolf d3cd57b767 Fixed a typo reported by Toxyc 2004-07-01 15:26:11 +00:00
trocotronic b306553b0a *** empty log message *** 2004-06-29 23:31:03 +00:00
trocotronic b6508ac6e0 write test 2004-06-28 21:51:28 +00:00
Bram Matthys c065f16db6 - Added hungarian docs, translated by AngryWolf. 2004-06-28 21:12:50 +00:00
Bram Matthys 1f1cdab0a6 ** internal 3.2.1-pre2 release ** 2004-06-28 20:10:19 +00:00
Bram Matthys 0b5524cf7b - Fixed serious crashbug due to quick-rehashing bug! Basically if you did a /REHASH and
the clientcount for a class reached 0 (due to quits) it would crash.
2004-06-28 19:47:09 +00:00
Bram Matthys 1fe71cab31 - Added spanish docs, translated by Trocotronic. 2004-06-28 18:48:46 +00:00
Bram Matthys c607eb43ef - Various (>15) small fixes for unreal32docs.html, reported by AngryWolf (#0001906). 2004-06-27 23:24:48 +00:00
Bram Matthys 6c0b8db670 wircd.def 2004-06-26 22:50:50 +00:00
Bram Matthys e3e5f5005c updated for pre1 2004-06-26 22:50:16 +00:00
Bram Matthys 6b2ee1cb4e ** internal 3.2.1-pre1 release ** 2004-06-26 22:18:08 +00:00
Bram Matthys ae9d78e845 - Changed version to 3.2.1-pre1 and updated protocol # to 2304. 2004-06-26 19:47:20 +00:00
Bram Matthys aa9ee31e4e - spamfilter.conf: Added sig for a mIRC decode worm, submitted by nexus.
- Some release notes updates.
2004-06-26 17:48:14 +00:00
stylus740 602c3b94ad Changes german Translation week 26 doc/unreal32docs.de.html 2004-06-26 06:40:24 +00:00
Bram Matthys 5877a32b3b - Fixed "quickly-rehashing + autoconnect linkblocks = crash"-bug. This involved fixing
multiple reference count bugs, one related to sptr->serv->conf, and another one related
  to sptr->serv->class. Both caused problems when someone did a /rehash when a server
  was in the process of connecting (so it might also happen when connfreq was hit and you
  did a /rehash). Original bug was reported by sh0 (#0001872).
2004-06-25 23:50:08 +00:00
Bram Matthys af3c66dea5 - Updated HOOKTYPE_TKL_ADD/HOOKTYPE_TKL_DEL to cptr, sptr, tk, parc, parv, else it was
impossible to tell *who* removed a *line. Again, parc/parv are 0/NULL for expires.
2004-06-25 20:17:18 +00:00
codemastr 638d17fbaa Fixed a problem where the tmp directory was created in the wrong place 2004-06-25 19:36:56 +00:00
codemastr 283014822d Made the new numerics use nicknames 2004-06-25 19:28:38 +00:00
Bram Matthys ad82656408 - Added new logtype 'spamfilter' to log spamfilter matches
- Updated example.conf: added all new flags we added in the example block, removed
  old confusing comment on SEGV logging, config.h: ripped out lPATH since that define
  isn't anywhere used and is only confusing.
2004-06-25 01:37:56 +00:00
Bram Matthys 9c51507d36 - Made IPv6 bans work the way they should again, reported by al5001 (#0001876). 2004-06-25 01:03:32 +00:00
Bram Matthys ec338581d9 - Fixed '/stats P' negative usercount bug (#0001691). 2004-06-25 00:15:37 +00:00
codemastr c4ee6e5114 Converted a bunch of notices to numerics 2004-06-23 19:47:40 +00:00
codemastr 1671c330bf Fixed a CIDR bug 2004-06-22 18:37:00 +00:00
Bram Matthys 22425b09d3 dumdeedum 2004-06-22 01:37:22 +00:00
Bram Matthys d75ca39f78 - Made Mod_Version required (this should be no problem since it's done automatically).
- Added HOOKTYPE_LOG [int type, char *timebuf, char *logbuf]
- Updated the release notes.
2004-06-22 01:20:31 +00:00
codemastr 8e5fb728a4 Added ELIST support 2004-06-21 18:40:02 +00:00
stylus740 7c7592eaa7 German Translation update for: doc/unreal32docs.de.html
week 25
2004-06-20 06:42:18 +00:00
Bram Matthys 5385bd3f89 - internal: Added GetIP() which we will now use instead of all the Inet_ia2p() stuff
because it's slightly faster (already replaced all of them in src/s_kline.c).
  GetIP(acptr) will return the ip for local users and remote users that support NICKIP,
  it returns NULL for remote users that are on non-NICKIP servers (or have non-NICKIP
  servers along their path).
- internal: tkl_add_line now returns aTKline *
- Added some more hooks:
  - HOOKTYPE_TKL_ADD [aClient *cptr, aClient *sptr, aTKline *tk]
  - HOOKTYPE_TKL_DEL [aClient *cptr, aClient *sptr, aTKline *tk]
    NOTE: 'NULL, NULL, tk' is used for *lines that are removed due to expiring
  - HOOKTYPE_LOCAL_KILL [aClient *sptr, aClient *target, char *comment]
2004-06-19 22:49:02 +00:00
codemastr 05a96a3b56 Fixed an SVSNICK bug that could lead to duplicate users in very rare circumstances 2004-06-18 17:02:01 +00:00
codemastr 54ff17f164 Fixed a CIDR bug when compiled without IPv6 support 2004-06-18 16:07:35 +00:00
Bram Matthys 0ca3733542 - Fixed find_qline crashes regarding except tkl 'type qline', reported by Gilou (#0001882).
- Fixed some CIDR bugs causing things not to match.
2004-06-18 15:49:10 +00:00
Bram Matthys 3b398af944 - To be able to use /ADDLINE you now need the (new) 'can_addline' operflag (oper::flags),
reason for this is that it's such a powerful/dangerous command.
2004-06-17 22:32:33 +00:00
codemastr 6316006acb ... 2004-06-17 21:45:36 +00:00
codemastr 58943b710c Added CIDR support 2004-06-17 21:16:58 +00:00
Bram Matthys 2f1da20208 - Fixed compile problem with debugmode + ipv6 2004-06-17 18:32:59 +00:00
Bram Matthys 42a8ab5a84 just correcting my english ;) 2004-06-17 18:18:07 +00:00
Bram Matthys c5d57689a0 - Win32: Readded /J compiler flag (was accidently lost in December). This could cause
some weird issues. Reported by Troco (#0001877).
2004-06-17 16:18:50 +00:00
Bram Matthys e3df6672c4 teh date --> 2004-06-17 2004-06-16 22:11:18 +00:00
Bram Matthys 1ebae10921 - Minor doc tweakers, reported by AngryWolf (#0001871). 2004-06-16 22:00:39 +00:00
stylus740 f0d9b5f66c unreal32docs.de.html Changes week 24 2004-06-15 17:05:44 +00:00
Bram Matthys 023cef1fb7 - Made extbans desynchs a bit more friendly: if a bantype is unknown for the server
it will just accept it if it's from a remote server, and also ops/etc will be allowed
  to REMOVE any unknown extbans (but not add new unknown ones).
- Added extended ban type ~n (nickchange ban), if a user matches this (s)he can not
  change nicks (eg: +b ~n:*!*@*.aol.com) unless (s)he has voice or higher.
  This can be useful as an overall measure for some +m chans (+b ~n:!*@*) or against
  specific 'good' people that are just nickflooding due to a wrongly configured script.
- Added set::restrict-extendedbans by which you can disallow normal users to use
  any extendedbans ("*") or disallow only certain ones (eg: "qc").
- Made the negative TS message a bit more annoying if time is off more than 10 seconds.
2004-06-12 01:26:23 +00:00
Bram Matthys 47f3c43295 - Various (non-critical) fixes for dccallow reported by Rocko (incorrect nick in deny msg,
added set::maxdccallow in docs, added bmp/vob/log/ to dccallow.conf).
2004-06-10 15:53:13 +00:00
Bram Matthys fe89b2e36b new one... includes NICKIP & dccallow changes. 2004-06-10 02:33:19 +00:00
Bram Matthys 6ec3822ce1 CmdoverrideAdd, DCCALLOW, allow dcc { }, umode +v change, register_user fix.
- Module coders: if CmdoverrideAdd() is called for an override that is already in place, it
  now sets MODERR_EXISTS as errorcode and returns NULL (previously it added duplicates).
  In the past module coders had many issues with PERM mods... you had to use weird tricks,
  but now you can (and should!) just override on INIT and on HOOKTYPE_REHASH_COMPLETE.
- Moved register_user declaration to h.h, updated call in m_pingpong.c (due new 'ip' field).
- Usermode +v ('receive dcc send rejection notices') is oper-only now for privacy reasons.
- Added dcc allow { }, which allows one to make exceptions over deny dcc { }.
- Added deny dcc::soft and allow dcc::soft item, if set to 'yes' it allows someone
  to explicitly override it per-person via /DCCALLOW (see next).
- Added DCCALLOW system, taken directly from bahamut.
  With this system you can block certain (or all) DCC SENDs and then allow the user to
  'override' this limit for every user he/she trusts via '/DCCALLOW +User'.
  This is an attempt to stop (or at least limit) the spreading of viruses/etc.
  See '/DCCALLOW HELP' for more info.
- Added example dccallow.conf which filters everything except some known
  'safe types' (jpg, jpeg, png, gif, etc). Note that the purpose of this file
  is NOT to get a complete list, rather to limit it to a few 'known safe' entries.
- Added set::maxdccallow: max number of entries of the DCCALLOW list (default: 10).
2004-06-10 02:26:32 +00:00
codemastr f90a4667bf Added a couple donators to /credits 2004-06-09 17:00:04 +00:00
codemastr 6ab3161969 /who +i added, /who help cleanups, and /who +m fix 2004-06-06 18:30:57 +00:00
stylus740 892cad788d Update week23:
doc/unreal32docs.de.html
2004-06-05 07:26:29 +00:00
Bram Matthys 2fc75d1352 - Fixed a synch bug, reported by Troco (#0001857). 2004-06-03 16:44:20 +00:00
Bram Matthys 3c436c02e7 - Added a doc/translations.txt which describes the (current) translation process
and requirements a bit.
2004-06-02 00:04:29 +00:00
codemastr 30f7b2c519 Made the win32 socket error reporting also handle regular system errors 2004-06-01 21:28:54 +00:00
Bram Matthys 55001ad74a - Seems I forgot to del_Command() SPAMFILTER and TEMPSHUN. 2004-06-01 21:11:08 +00:00
codemastr de1ad88442 Added /dns c to clear the DNS cache 2004-06-01 20:38:18 +00:00
codemastr a450365faa Made Unreal create the tmp/ dir at startup, rather than configure 2004-06-01 20:29:20 +00:00
codemastr 756a7de955 Made a bunch of TKL parameters case insensitive 2004-06-01 20:12:49 +00:00
codemastr ecd9ca0c5b Added snomask +S to the documentation 2004-06-01 20:03:03 +00:00
Bram Matthys 57a3465ef4 clarifcation on '*' @ NICKIP 2004-05-31 19:10:14 +00:00
Bram Matthys bfde79e41d - And another one, should be fixed now. 2004-05-31 18:49:26 +00:00
codemastr facf1d62ef Fixed win32 socket error reporting and a NICKIP bug 2004-05-31 18:18:55 +00:00
Bram Matthys 9ebd9e9bcf - And one more. 2004-05-31 00:32:52 +00:00
Bram Matthys 24c2b72e1a Added some $Id$'z 2004-05-30 23:22:43 +00:00
Bram Matthys a2a4576ca2 more! 2004-05-30 21:49:50 +00:00
Bram Matthys 8337447439 - Fixed SSL problem caused by a fix of 2 days ago. Reported by Fury (#0001842). 2004-05-30 21:43:24 +00:00
Bram Matthys 45e373d683 - Fixed some other win32 crashes due to modulizing: WHOWAS, STATS [some], SVSMOTD.
All caused by missing "MODVAR"s. Reported by Troco (#0001841).
2004-05-30 20:34:33 +00:00
stylus740 324aa0f593 Update geman doc week22 2004-05-30 08:31:40 +00:00
codemastr e5f16b777a Made the win32 version use a dynamically linked libc 2004-05-30 00:59:05 +00:00
Bram Matthys 44b2ae15fa - Imported TRE 0.6.8 for windows 2004-05-29 19:48:40 +00:00
codemastr e050009b51 Added NICKIP to doc/technical/protoctl.txt 2004-05-29 19:01:13 +00:00
codemastr a9fbc71459 Imported TRE 0.6.8 for *nix 2004-05-29 18:58:23 +00:00
codemastr 558c9ede6b Fixed a compile error regarding AF_MAX 2004-05-29 17:12:32 +00:00
Bram Matthys 843d4696ff the '*CVS*' mark should be at current version, not at major version. 2004-05-28 01:18:35 +00:00
Bram Matthys fc37449a9e - unreal32docs.html: added flat-map and set::restrict-usermodes "s"; security tips. 2004-05-28 01:14:15 +00:00
Bram Matthys 8702450af2 Various stuff:
- Added release notes (no, we won't release 3.2.1 anytime soon.. just updating ;p).
- Added various extra messages to make it a bit more easier for people who are
  upgrading (win32 commands.dll, cloaking mod).
- Made win32 ssl<->non-ssl modules binary compatible.
- Added ssl/non-ssl check in Mod_Version on *NIX.
- Added set::options::flat-map: This makes all servers look like they are linked
  directly to the server you are on (/map, /links), thus you cannot see which server
  is linked to which ("hopcount"). This can make it a bit harder for kiddies to find
  any 'weak spots' (which server to attack/[D]DoS). Obviously opers will always
  see the real map.
2004-05-28 00:44:07 +00:00
codemastr 8c89274d3d compile warning cleanups 2004-05-27 22:45:17 +00:00
codemastr 9e9390e57e Configure checks for inet_ntop/pton 2004-05-27 22:10:18 +00:00
codemastr c1af4a4516 Added NICKIP 2004-05-27 22:05:58 +00:00
Bram Matthys 2313035766 - Fixed a permanent modules bug: custom allow/except/ban/deny types were lost
after /rehash. Reported by AngryWolf (#0001837).
2004-05-27 01:57:44 +00:00
stylus740 34cfe19e44 Test/correction ;p 2004-05-23 22:15:04 +00:00
Bram Matthys 4a0c827879 - German doc updates (week 21) 2004-05-23 21:57:09 +00:00
stylus740 976c4a8281 test.. should work. 2004-05-23 21:43:16 +00:00
codemastr 8f2763fff1 Win32 module bug with strcasecmp 2004-05-23 18:30:05 +00:00
Bram Matthys 09d1dd87e4 - spamfilter.conf: Added yet another sig for a site that causes Backdoor.Delf.lq
infection (reported by nexus), also changed LOI trojan and Bloodhound.Exploit.6
  action to gline.
2004-05-21 23:15:33 +00:00
Bram Matthys 9bb3623c4d [vesioncheck] - Improved the above: made it work on windows and also added a check for curl. 2004-05-20 21:21:15 +00:00
Bram Matthys 1fc97c815e blah 2004-05-20 20:49:00 +00:00
Bram Matthys 443c529f9f cvs test + win32 ssl/zip library version check error msgdshfsdhsd 2004-05-20 20:37:01 +00:00
Bram Matthys 1a6e72c1b3 - Added zlib+SSL version check on boot to make sure the runtime version is the same
as the 'compiled for' (header) version. If they mismatch, UnrealIRCd could crash,
  so a big warning is posted if it happends.
2004-05-19 20:47:14 +00:00
Bram Matthys 8c20440e04 - Added optional parameter to SVSJOIN to deal with channel keys. Reported by
DukePyrolator (#0001822).
2004-05-18 21:17:31 +00:00
Bram Matthys 683fae7a38 - German doc updates (week 20). 2004-05-18 00:58:55 +00:00
Bram Matthys 76f0f87fdd - Added set::spamfilter::virus-help-channel-deny. This allows you to block any
normal joins to the virus-help-channel. This way you could prevent users into
  accidental (or tricked) joining of the virus-help-channel and becomming infected.
  This feature is disabled by default. Requested by bleepy (#0001811).
2004-05-18 00:39:45 +00:00
codemastr 6d09e29d0c Fixed a win32 module bug 2004-05-17 20:24:14 +00:00
codemastr 79c4cee4b7 Updated to TRE 0.6.7 2004-05-15 19:43:20 +00:00
codemastr e1cc540182 Upgraded to TRE 0.6.7 2004-05-15 19:42:24 +00:00
codemastr ee9ca0e01f Fixed a remote include bug and a /credits typo 2004-05-15 04:25:29 +00:00
Bram Matthys aab9bffe23 - Changed the way MSG/NOTICE <prefix>#chan works:
- It now goes to <prefix> and higher, so '/notice +#chan hi!' goes to +vhoaq
  - You need at least voice in order to be able to msg/notice +#chan, %#chan or @#chan
  - You need at least ops in order to be able to msg/notice &#chan or ~#chan
  - Any multi-prefix targets will be converted automatically (eg: ~&@#chan to @#chan).
  - internal: use of the CHANOPPFX macro is now deprecated.
  All of this was done to make it a bit more 'safe' and userfriendly (#0001812).
2004-05-14 22:34:17 +00:00
Bram Matthys af94fd243a - Local opers can now also join +O (operonly) channels (#0001694). 2004-05-14 19:55:12 +00:00
Bram Matthys 98bd61c179 - Changed 'Services operator' in /whois (back) to 'Services administrator', this was
requested by many people and seems to be the best after all (#0001634).
2004-05-14 15:53:29 +00:00
codemastr a49e227bd4 Win32 module fixes for ssl/zip/curl 2004-05-13 16:39:23 +00:00
Bram Matthys 45a5bd231f forgot to add this one. 2004-05-12 23:22:52 +00:00
Bram Matthys 2bee263234 try this? 2004-05-12 23:20:01 +00:00
Bram Matthys 130669c03b hidehost.. byebye 2004-05-12 23:09:53 +00:00
Bram Matthys 16a82b6aeb - Modulized cloaking 2004-05-12 23:05:40 +00:00
codemastr dd85bf150d ... 2004-05-12 22:32:11 +00:00
codemastr 257d386a1b ... 2004-05-12 22:16:31 +00:00
codemastr 99bd34fbb9 Added module support for Windows 2004-05-12 22:02:05 +00:00
Bram Matthys d9a6dd34b9 - Include openssl/md5.h and openssl/ripemd.h if compiled w/SSL, this seems how it
should be done and also makes unreal w/SSL able to compile on OpenBSD (3.5).
2004-05-09 18:59:11 +00:00
codemastr 0924b208e7 Fixed an empty set::ssl::options crash bug 2004-05-09 17:21:08 +00:00
Bram Matthys bb003e2583 - Changed int_to_base64() warning so it has less false positives (#0001797). 2004-05-08 19:40:48 +00:00
codemastr 4b2dec05e8 Made it so chg* commands are not logged from services 2004-05-04 19:18:06 +00:00
codemastr 133eac2700 Fixed a doc typo and fixed a ./unreal bug 2004-05-04 19:09:04 +00:00
codemastr 087e36a112 Fixed a problem when compiling with GUEST defined 2004-05-04 18:25:44 +00:00
Bram Matthys 116aaa17ea - Replaced tre.dll/tre.lib, previous versions caused a crash (eg: if you included
spamfilter.conf).
2004-04-25 21:39:02 +00:00
stskeeps 425dae8005 as written 2004-04-25 21:06:57 +00:00
cvs2hg ff898a5a9e fixup commit for branch 'unreal3_2_fixes' 2004-04-24 23:07:41 +00:00
Bram Matthys 335ff44a54 *** 3.2 release *** 2004-04-24 23:07:39 +00:00
Bram Matthys 019666b21f hmk, rephrased the "module support @ windows " sentence I added. 2004-04-24 20:37:38 +00:00
Bram Matthys 5e16df15a0 - Some doc/release notes updates on win module support. 2004-04-24 19:58:53 +00:00
Bram Matthys 533895722b - Added temporary fix for include "http://www.blah.com/"; crashbug...although I doubt
many people would use it. Reported by Angrywolf (#0001757).
2004-04-24 15:30:36 +00:00
Bram Matthys 45bf0ede3d TYPO.. just in time before pre2 :P 2004-04-23 22:26:35 +00:00
Bram Matthys ad9a40e7c4 - Changed version to 3.2 already
** internal pre2 release **
2004-04-23 22:25:38 +00:00
Bram Matthys 6199e0f98c - Fixed some remote includes issues and added a connect/transfer timeout, server should
now no longer be frozen if the site is unreachable. Reported by Ron2K (#0001751).
2004-04-23 22:05:36 +00:00
Bram Matthys 0eb09818c0 gzline user@host -> *@ipmask 2004-04-23 20:38:48 +00:00
Bram Matthys 12b538a6a8 - Docs/help.conf tweak on /connect syntax (#0001755).
- German doc updates (from April 18) + gzline docs tweak.
2004-04-23 20:37:46 +00:00
Bram Matthys 8b26ed3a2a BLALBSDJFsid 2004-04-16 22:44:31 +00:00
Bram Matthys deb07e14b3 ** internal pre1 release (testing only) ** 2004-04-16 22:43:09 +00:00
Bram Matthys 324bcc3cf9 - Minor sajoin/sapart ERR_NEEDMOREPARAMS tweak. 2004-04-16 22:41:46 +00:00
Bram Matthys ebcfe963a5 - Fixed SJOIN bug: it sometimes was setting too many modes at once. 2004-04-16 20:52:42 +00:00
Bram Matthys f032115d8a - Changed version to pre1 2004-04-16 19:20:25 +00:00
Bram Matthys 090589cfad update.. 2004-04-16 18:10:05 +00:00
Bram Matthys 0a790a5649 oh, forgot target quit... 2004-04-16 17:41:31 +00:00
Bram Matthys 376494f384 - spamfilter.conf: added signatures for Gaggle worm. 2004-04-16 17:30:59 +00:00
Bram Matthys ac7aa6ed03 fixed implicit declaration for reread_motdsandrules(). 2004-04-15 22:06:03 +00:00
Bram Matthys e53a688c7e - doc/unreal32docs.html and help.conf updates (#0001734 + other stuff). 2004-04-15 21:51:01 +00:00
Bram Matthys 8350a7958a - Fixed /rehash bug if an .so (or remote include?) failed to load properly,
reported by fez (#0001736).
2004-04-15 16:14:14 +00:00
Bram Matthys ab22a8bcb1 - Added some release notes already. 2004-04-15 01:30:57 +00:00
Bram Matthys 407f9af942 - Various doc/text updates 2004-04-14 23:09:16 +00:00
Bram Matthys fa6edb8c64 - Made ./unreal rehash (= kill -1 <pid>) also reread motd/rules/etc just as a
normal /rehash does, reported by superh (#0001699).
2004-04-14 18:51:14 +00:00
Bram Matthys e501f1b90f - Force a TRE recompile if ./Config is re-run, due to timestamp fun if you were
upgrading to CVS every time TRE was not recompiled even if you did make clean.
2004-04-14 18:21:49 +00:00
Bram Matthys d1bfc78a45 - Fixed /who +m bug for opers, reported by Bugz (#0001715).
- Fixed halfop mode code to not check remote halfop modes (desynch danger).
2004-04-13 22:22:50 +00:00
Bram Matthys 24336c6153 - Updated server<->server code for MODE so operoverride bug #0001704 and other
feature requests can be fixed/added in the future (3.2.1).
2004-04-13 19:04:41 +00:00
Bram Matthys c78a8c6110 - Fixed something if sptr->user->virthost was NULL (which is/should never be the case),
just to be sure... (#0001724).
2004-04-11 15:20:19 +00:00
codemastr 7399ad2cde Fixed a typo in /credits 2004-04-10 16:10:07 +00:00
codemastr 7ba09e3efd Made a note in example.conf about not using link::options::autoconnect for services 2004-04-07 22:22:20 +00:00
codemastr 23eddafaf7 Fixed /stats ? for Q and q 2004-04-07 22:18:27 +00:00
codemastr 7ebd0473b9 Updated /credits a bit more 2004-04-07 22:13:21 +00:00
Bram Matthys e9d96c267a - German doc updates (spelling+synch). // + moved language choose thingy to top 2004-04-07 20:51:28 +00:00
codemastr 1d140eff88 Updated credits 2004-04-07 02:33:13 +00:00
Bram Matthys 1103ffe636 - Windows: Updated makefile/unrealinst.iss/zip.h to use zlib 1.2.1. 2004-04-05 22:26:03 +00:00
codemastr 05c1c38d76 Fixed vhost::swhois not being shown remotely 2004-04-05 22:06:31 +00:00
codemastr a3a4158556 Patched win32 TRE 2004-04-05 21:47:15 +00:00
Bram Matthys d1982e4983 - Patched TRE 0.6.6 to fix known crashbug (#0001684), testing is welcomed. 2004-04-05 17:04:14 +00:00
Bram Matthys 0ac1676043 reference to translated doc (and vice versa) 2004-04-04 18:12:58 +00:00
Bram Matthys 829c102c7f typo ;) 2004-04-04 16:47:19 +00:00
Bram Matthys 2c8e443170 Added $Id$ thingy 2004-04-04 16:46:47 +00:00
Bram Matthys 5f9e2bff0b - Added german translation of unreal32docs (doc/unreal32docs.de.html), translated by Stylus740 which will also maintain it. 2004-04-03 21:46:24 +00:00
Bram Matthys 3a738a4c5d - Added german translation of unreal32docs (doc/unreal32docs.de.html), translated
by Stylus740 which will also maintain it.
2004-04-03 21:45:38 +00:00
Bram Matthys db7e75636d - spamfilter.conf: added signature for LOI trojan. 2004-04-01 03:57:11 +00:00
codemastr 602ea12b9f Fixed an SVSMODE #chan -qaohv bug 2004-03-29 23:18:26 +00:00
Bram Matthys ef942d39a2 - spamfilter.conf: changed a lot of rules from 'block' to 'gline', left some
on 'block' however if there was some (very low) chance on false positives (even though
  just like 0.01%).
2004-03-27 22:54:42 +00:00
Bram Matthys f6b0bf15b5 - Usermode 'r' (registered) was unset even in case of "case"-nickchanges (like:
'Syzop' -> 'syzop'). This affected f.e. ircservices. Reported by LoVeR (#0001679).
2004-03-27 20:13:27 +00:00
Bram Matthys a87a1688b6 - Made the setup script use the new compression method 'lzma' which makes the setup.exe
~300Kb smaller. Now also requires Inno Setup 4.1.6 (tested with 4.2.0).
2004-03-27 00:58:18 +00:00
codemastr 1ac0936d8a win32 installer changes 2004-03-26 23:12:22 +00:00
codemastr ec12bd4c05 Fixed a win32 GUI bug with rehash all not rehashing motd/rules 2004-03-26 21:25:45 +00:00
codemastr f095d6e9de Fixed a win32 resolver problem with detecting nameservers 2004-03-26 21:14:43 +00:00
codemastr a998fe14cc Fixed a /stats S modes-on-join extended mode problem 2004-03-22 21:35:56 +00:00
codemastr 6be3ab9291 Updated TRE to 0.6.6 2004-03-21 19:01:15 +00:00
codemastr 6c7a6b507f Imported TRE 0.6.6 for win32 2004-03-21 18:12:21 +00:00
codemastr cdaaa80c70 Made environment variables correctly work in Config 2004-03-20 04:23:58 +00:00
Bram Matthys d731cf04ab - Fixed /spamfilter reason field bug.. things were double escaped sometimes,
especially in post-RC2-cvs this was noticable. Reported by Fury (#0001670).
- help.conf: updated snomasks section.
2004-03-19 21:32:03 +00:00
Bram Matthys da9bd6e5e9 - Fixed /spamfilter removal problem... often the wrong entry was removed [!] or
nothing was removed at all. Reported by MiNdErAsR, RealCFC and others (#0001669).
2004-03-19 02:18:04 +00:00
codemastr 51704ca942 Fixed an SQLINE memory leak 2004-03-14 22:25:24 +00:00
codemastr 4e5ebba53f Added Nkie worm spamfilters to spamfilter.conf 2004-03-14 20:21:12 +00:00
Bram Matthys 2da3de60c4 - Added conf check for too large spamfilter regex + reason field. Reported by
Z3l3zT (#0001648).
2004-03-14 20:16:54 +00:00
codemastr c35aede803 Fixed a version.c.SH typo 2004-03-13 19:35:51 +00:00
Bram Matthys 6094f628eb - Fixed win32 compile problem. Reported by Troco (#0001644). 2004-03-13 15:48:49 +00:00
Bram Matthys 04177a8106 fixed win32 compile problem 2004-03-13 15:46:33 +00:00
Bram Matthys 8273643f88 - More Opteron fixes... sizeof() fun, %B fun (always use a 'long'!), etc..
- Added __attribute__ stuff for ircsprintf() to catch more warnings.
2004-03-11 21:59:08 +00:00
Bram Matthys 1c671a47bd SSsshht ;p 2004-03-11 20:39:58 +00:00
Bram Matthys 3294afe918 - Hide server IP in /stats z
- First Opteron crash bugfix. Thanks to Liverbugg for helping us trace this issue.
2004-03-11 20:34:36 +00:00
codemastr 017669dc40 Removed cp -f from curlinstall (non-portable) 2004-03-10 18:42:47 +00:00
codemastr 99a3c53703 Remote include installer changes and /credits updates 2004-03-10 17:11:27 +00:00
codemastr 2f64d946b4 Made set::modes-on-join work with extcmodes 2004-03-10 03:49:04 +00:00
Bram Matthys 6717b75911 minor adjustment. 2004-03-10 01:43:45 +00:00
Bram Matthys 80f397df6b changed version to 'RC2 *CVS*' 2004-03-10 01:25:30 +00:00
Bram Matthys 3a3ca8bac8 pjoink!!! 2004-03-10 01:24:55 +00:00
Bram Matthys 15b52e94b4 - Added '__' -> '_' decoding for spamfilter reason field. 2004-03-10 01:23:58 +00:00
codemastr dd6eb1bd34 Fixed a spamfilter memory leak 2004-03-10 01:00:22 +00:00
Bram Matthys f1bd72ffad pjoink 2004-03-09 23:14:20 +00:00
Bram Matthys 0f3204698b - spamfilter.conf: added soex trojan. Sig provided by Jay. 2004-03-09 20:47:10 +00:00
codemastr 25639df741 Documented except tkl qline/sqline 2004-03-09 00:31:10 +00:00
codemastr 248188cf54 Removed src/win32/version.c 2004-03-08 18:47:58 +00:00
codemastr 3d87f28751 Added check to detect broad /spamfilter masks 2004-03-08 03:38:16 +00:00
Bram Matthys 445a85871a - spamfilter.conf: fixed fyle sig (was bad!), some minor updates to the rest,
added mirc 6.12 exploit sig. Reported by PHANTOm.
2004-03-08 00:22:31 +00:00
Bram Matthys 84be2cf06f pjoink 2004-03-07 22:10:56 +00:00
Bram Matthys 63d7c6d04a *** RC2fix release *** 2004-03-07 22:10:19 +00:00
codemastr ddcec35e9f Fixed a compile problem on Solaris 2004-03-07 22:03:41 +00:00
codemastr 5b1be6a347 Fixed a HOOKTYPE_PRE_LOCAL_JOIN bug 2004-03-07 21:50:07 +00:00
Bram Matthys c1ca95b71f *** RC2 release *** 2004-03-07 18:51:29 +00:00
Bram Matthys 47aab8caaa - Changed version to RC2 2004-03-07 17:27:02 +00:00
Bram Matthys 9b242fd101 - And some more spamfilter.conf rules (aplore, gtbot, sdbot, spybot). <== this was already committed, just updating changes on it ;)
- Minor doc update.
2004-03-07 15:23:51 +00:00
Bram Matthys 61ab744d2a minor 'reason' adjustments (to make it more general) + . -> \. thingy 2004-03-06 22:18:11 +00:00
codemastr 7bc23b4279 More spamfilter updates 2004-03-06 20:26:24 +00:00
Bram Matthys 301dbe6e59 spybot .syn sig 2004-03-06 19:57:21 +00:00
codemastr c324f1455a GTBot detection filters 2004-03-06 19:20:12 +00:00
Bram Matthys 6e05e85dfb blank 2004-03-06 18:43:01 +00:00
codemastr 4f00918d7a Spamfilter.conf typo 2004-03-06 18:12:36 +00:00
codemastr 01cb63c745 Updated /credits with more donators 2004-03-06 17:41:17 +00:00
Bram Matthys 16802a8b6b - And some more spamfilter.conf rules (mirseed & fagot). 2004-03-06 04:22:31 +00:00
Bram Matthys 29eb81904a - Added first 2 rules to spamfilter.conf, update release notes and unrealinst.iss
for it too (also added missing badwords.quit.conf file @ win32).
2004-03-06 02:27:08 +00:00
Bram Matthys 41d7b0733b - Added rest of release notes. 2004-03-06 00:01:11 +00:00
codemastr 0fb0490262 Imported TRE 0.6.5 on Linux 2004-03-05 22:43:38 +00:00
codemastr 76fdc6505f Upgraded win32 TRE lib to 0.6.5 2004-03-05 22:29:39 +00:00
codemastr 2b19a70d31 Redesigned HOOKTYPE_PRE_LOCAL_JOIN 2004-03-04 23:06:54 +00:00
Bram Matthys 1854b50784 let's be nice and give credit.. 2004-03-04 19:48:08 +00:00
Bram Matthys 8a6619c0a8 - Fixed yet another fun remote includes memory corruption crash bug due
to curl strangeness (took me 2 hours to trace down, great!).
2004-03-04 19:33:59 +00:00
Bram Matthys c389dc58b5 - Minor doc updates on SSL (mIRC now supports SSL a bit). 2004-03-03 22:49:47 +00:00
Bram Matthys f58c46a334 - Updated SSL error for underlying syscall error a bit (#0001615). 2004-03-03 21:27:05 +00:00
Bram Matthys 9ba52eea92 - Added 90% of RC2 release notes.
- Cosmetic doc updates (#0001596) reported by HERZ.
2004-03-02 20:31:59 +00:00
Bram Matthys ad1a98523f a 2004-02-29 21:18:35 +00:00
Bram Matthys 7d2da2b910 - Q comes after P. Thanks to Rocko for remind us! (fixes /stats P bug ;p). 2004-02-29 21:15:45 +00:00
codemastr d48540a6d4 Fixed another remote include bug 2004-02-26 00:49:27 +00:00
codemastr 739feded92 More win32 remote include fixes 2004-02-25 23:17:32 +00:00
codemastr 19d843e650 Fixed a remote include problem with deleting files 2004-02-25 22:14:30 +00:00
Bram Matthys afc24e4fa8 - Made numerics 518-520 a bit more clear by mentioning the channelname in it.
Suggested by Zell (#0001589).
2004-02-25 21:39:04 +00:00
Bram Matthys 179e6dfe6d - Fixed a zero-terminate bug in remote includes: urls with '?' in it could
cause a crash, reported by Joolz (#0001587).
2004-02-25 21:21:49 +00:00
Bram Matthys 669cf6e189 - Fixed an issue where chanmode +f was often set by the server again
in a netjoin when there was no need to (nothing to synch).
- Added spamfilter::except which allows you to specify targets
  (eg: channels) where spamfilter should not take action. Requested by Fury
  (#0001586). Ex: set { spamfilter { except "#spamreport,#help"; }; };
2004-02-25 20:49:00 +00:00
Bram Matthys 0a166e3663 GRRR! bad/old module header! badbadbad m_template!! 2004-02-23 23:14:32 +00:00
Bram Matthys a573b29a0f - Fixed a bug in individual m_*.so loading, 39 new modules were affected. 2004-02-23 23:14:05 +00:00
Bram Matthys 2ae44c13b6 - '0' tkltime in spamfilter now really means 'perm', not '*line for
0 seconds' or something. Reported by Certus.
2004-02-23 22:20:02 +00:00
Bram Matthys a16533d0e9 - Improved dcc blocking support (both for spamfilter and deny dcc). 2004-02-23 17:28:07 +00:00
codemastr 1435dcb9fa Fixed a TKL update bug with sqlines 2004-02-22 22:30:59 +00:00
Bram Matthys 139e019e30 - Added some extra debugging for tkl update notice...
- Fixed a problem in 'tkl update': lowest expire time won instead of
  highest. Reported by Malcolm.
2004-02-22 22:14:00 +00:00
Bram Matthys a54752dd9e - Added a warning if your listen portrange affects >100 ports
(eg for idiots doing 6667-7000 which uses 333 sockets).
2004-02-22 20:43:59 +00:00
Bram Matthys 511ca1c3ec - Minor fix for previous.
- Improved 'viruschan' spamfilter target:
  - better msg after the forced join
  - +oaq's in set::spamfilter::virus-help-channel receive a notice about
    which filter the user matched.
  - it disables all commands except PONG, ADMIN, and msg/notices to
    set::spamfilter::virus-help-channel.
- Made snomask +S also show the spamfilter reason field.
- Added class::pingfreq checking, should be 30-600 now.. else you might
  get mysterious (mass) disconnect issues.
- Lol, I made /connect dissapear during modulizing ;).
2004-02-22 19:39:43 +00:00
Bram Matthys 8e0b0eb0fa in-between-commit 2004-02-22 19:34:44 +00:00
codemastr a09d36532e Moved qlines to TKL 2004-02-22 18:41:06 +00:00
Bram Matthys ce850c8317 really.. 2004-02-22 03:23:31 +00:00
Bram Matthys 86e58f58ba now? 2004-02-22 03:21:51 +00:00
Bram Matthys 9bd077b7cd no it's not fixed syz, CHAOS chaoooos 2004-02-22 03:20:06 +00:00
Bram Matthys d071464264 - Fixed a bug which prevented "/spamfilter del[..]" from working.
Reported by Fury (#0001575).
2004-02-22 03:08:43 +00:00
Bram Matthys 790a69a402 compile fixes 2004-02-22 02:56:28 +00:00
Bram Matthys 2a8252d0c0 - Modulized: connect... should be the last one till 3.2final.
- Fixed some compile warnings/problems caused by modulizing.
2004-02-22 02:53:07 +00:00
Bram Matthys 3f14551bc2 pjoink 2004-02-22 02:52:12 +00:00
Bram Matthys 346dc05818 - Modulized: svsfline, dccdeny, undccdeny, whowas 2004-02-22 02:40:13 +00:00
Bram Matthys 6ca03d0922 win compile fix 2004-02-22 02:02:05 +00:00
Bram Matthys f47d14342c winfix 2004-02-22 01:59:50 +00:00
Bram Matthys 7b3fe6a13d - Modulized: server, stats 2004-02-22 01:57:47 +00:00
Bram Matthys 01143520c6 made it compile on win32 again 2004-02-22 00:33:54 +00:00
Bram Matthys 5afdd3139f removed m_eos... win compile fun 2004-02-22 00:31:12 +00:00
Bram Matthys 1612b284be GRRR 2004-02-22 00:28:30 +00:00
Bram Matthys efa91d73b4 removed wallops 2004-02-22 00:25:15 +00:00
Bram Matthys 809b19743e - Modulized: netinfo, links, help, rules, close, map, eos and made it compile on win32 again. 2004-02-22 00:21:58 +00:00
Bram Matthys f997b16918 - Modulized: addline, addmotd, addomotd, wallops, globops, locops, chatops,
admin, trace.
- Removed: gnotice, goper
2004-02-21 23:40:58 +00:00
Bram Matthys 8ebf5b9a18 - Updated docs on tempshun and new spamfilter features. 2004-02-21 15:50:15 +00:00
Bram Matthys bbda4bcc6b - Added /tempshun, temporary shuns the current session of specified nick
(just like the 'tempshun' in spamfilter and ban version). Suggested by
  Cnils (#0001526). [docs/help.conf will be updated later]
2004-02-21 04:24:21 +00:00
codemastr 6016b57f1d ... 2004-02-21 01:10:58 +00:00
codemastr f8a13c22b2 Remote include fixes for Windows 2004-02-21 00:52:54 +00:00
Bram Matthys 81a1431665 - Fixed a bug in 'Flood from unknown connection' (#0001566). 2004-02-20 23:47:07 +00:00
Bram Matthys 648d73556c spamfilter improvements
- Fixed a few wrong macro's (ircstrdup/ircfree) in s_conf.c causing
  very weird behavior... This also fixes a bug where set::spamfilter::ban-reason
  would have the value of ban-time.
- Improved spamfilter again.
  - The new syntax is:
    /spamfilter [what] [type] [action] [tkltime] [reason] [regex]
    [tkltime] specifies the duration of any *lines placed by this rule.
    [reason] specifies the *line, kill and/or block reason.. no spaces
    allowed, but '_' will be escaped to a space.
    In both cases you can simply use '-' to skip and use the default.
    Ex: /spamfilter add p block - - Come watch me on my webcam
        /spamfilter add p gline 3h Please_go_to_www.viruscan.xx/
        nicepage/virus=blah Come watch me on my webcam
  - A message is now shown if the msg/notice/dcc is blocked.
  - There are 2 new spamfilter action types:
    'dccblock' will mark the user so (s)he's unable to send any files by DCC.
    'viruschan' will part the user from all channels and join
     set::spamfilter::virus-help-channel (default: #help).
     this action might be improved to do more later.
  - Internal: added EXTTKL PROTOCTL, this determinates if 10 parameters
    instead of 8 are supported for m_tkl (used by spamfilter add).
  This new system needs some testing... :)
2004-02-20 23:28:57 +00:00
codemastr 389c51c212 Fixed a problem with setting +qaohv on a +S user 2004-02-20 04:16:53 +00:00
codemastr fc4649781c Remote include fix to deal with memory corruption bug 2004-02-20 03:51:01 +00:00
codemastr 110bc140c6 Made PATH_MAX get found under Solaris 2004-02-19 23:11:38 +00:00
codemastr 05030fa603 Fixed allow::options::noident 2004-02-19 00:16:26 +00:00
codemastr 1d9301b73a Fixed a VHP problem causing SETHOST to be sent before NICK or not at all 2004-02-18 22:30:45 +00:00
Bram Matthys 145bf5dc1d - Fixed a bug in the unreal_checkregex() routine which could cause a crash
if you added an invalid regex. Reported by Tony (#0001556).
or... 'freeing a buffer on the stack is not exactly good!' ;)
2004-02-18 00:27:30 +00:00
Bram Matthys 8992874efa - Added support for single-target specifiction like spamfilter { regex "blah";
action kill; target private; }; previously it didn't warn/error on this
  but it didn't work either.
2004-02-17 21:09:56 +00:00
Bram Matthys 4769908543 - Added some set::throttle::* checking if insane values were supplied.
Reported by Troco (#0001555).
2004-02-17 20:47:43 +00:00
stskeeps 9cfc83d98d Changes 2004-02-17 20:45:03 +00:00
Bram Matthys d6e0d8ba0e - Module coders: for extended channelmodes the EXCHK_ACCESS* the return
value should now be one of EX_*:
  EX_DENY        : disallowed, except for oper override
  EX_ALLOW       : allowed
  EX_ALWAYS_DENY : disallowed, even in case of operoverride (eg for
                   operlevel modes like +A).
  Note that it's backward compatible since TRUE/EX_ALLOW=1 and FALSE/EX_DENY=0.
- Fixed a few bugs with oper override & extended chanmodes, for example
  chanmode +T could not be set by a globop w/can_override and non-+hoaq.
2004-02-17 20:37:26 +00:00
codemastr 6696331f66 Slightly changed extcmodes access control 2004-02-17 01:15:16 +00:00
Bram Matthys 9c8a1047f4 more more more! 2004-02-17 00:52:24 +00:00
Bram Matthys 4ab6fe18e4 abc! 2004-02-17 00:47:21 +00:00
Bram Matthys bb936d21f6 pjoink 2004-02-17 00:46:31 +00:00
codemastr 6648072334 Modulized knock, umode2, squit, protoctl 2004-02-17 00:40:42 +00:00
Bram Matthys f775b3cf91 sjoin, pass, userhost, ison, silence modulized... 2004-02-17 00:20:24 +00:00
codemastr a306586071 ... 2004-02-16 23:20:24 +00:00
codemastr 38adc8e08a Modulized time and svskill 2004-02-16 23:17:13 +00:00
codemastr ee54d529b2 Added HOOKTYPE_REHASH_COMPLETE 2004-02-16 23:03:42 +00:00
Bram Matthys 376fecbf18 TYPO 2004-02-16 22:21:10 +00:00
Bram Matthys 3e9ea217fb boink 2004-02-16 22:18:51 +00:00
Bram Matthys 01c5b99faa - Added [OLD?] flag in /module so you can easily spot old beta* modules.
- Modulized: samode, sajoin, sapart, kick, topic, invite, list
2004-02-16 22:10:39 +00:00
codemastr 1fd40599ce Fixed an ircsprintf problem with SJB64 2004-02-16 22:06:37 +00:00
codemastr 1f7a1dfb2b Docs typo fix 2004-02-16 16:58:10 +00:00
Bram Matthys 8789c6860a HMM!!! 2004-02-16 15:11:00 +00:00
stskeeps 43cc8b4875 Renamed HOOKTYPE_LOCAL_TOPIC to HOOKTYPE_TOPIC and made it actually work. 2004-02-16 10:58:44 +00:00
stskeeps f33bfea7b2 - Added HOOKTYPE_UMODE_CHANGE (sptr, oldflags, newflags) - this may
not be accurate as umode changes are done manually many places.
2004-02-16 10:03:32 +00:00
codemastr 794ce094a4 Removed reference to svstime in help.conf 2004-02-16 04:59:33 +00:00
Bram Matthys 3c9f54fb45 - Fixed a bug in "unkickable users" (umode +q), they could still be kicked
by non-netadmin ircops in some (many) cases, reported by Zell (#0001541).
note: this fix is still "wrong", because the whole override/whatever
system is flawed ;p.
2004-02-15 16:14:16 +00:00
codemastr f8a2359f62 Fixed a tmp/ bug on Linux 2.2 and updated /Credits 2004-02-15 05:06:59 +00:00
Bram Matthys da86427258 *** RC1 release *** 2004-02-14 19:48:12 +00:00
Bram Matthys 46ed9c2ef7 pjoink! 2004-02-14 19:26:43 +00:00
codemastr 36673fe643 Changed version to RC1 2004-02-14 19:16:09 +00:00
Bram Matthys 476e2ce72b - Fixed fdlist bug/warning if a local operator /oper'd up twice. Reported by DukePyrolator (#0001539). 2004-02-14 17:09:33 +00:00
Bram Matthys 28174f6e44 this should be it.. hopefully... 2004-02-14 16:37:52 +00:00
Bram Matthys cc91e5fde3 - Ouch!! Fixed a severe bug which caused opers not being recognized on remote
servers causing various problems... This was caused by a change 1-2 days ago.
  Reported by Rocko (#0001537).
2004-02-13 20:49:43 +00:00
codemastr b8c0185563 setup.h.in cleanups 2004-02-13 04:52:07 +00:00
codemastr 865ac6f8a5 Added a new Donation file 2004-02-12 23:03:41 +00:00
Bram Matthys f7bc069ef7 typo :p 2004-02-12 01:23:28 +00:00
Bram Matthys f1be169364 - We are having fun with Makefiles... 2004-02-12 01:17:33 +00:00
Bram Matthys 1d9168e957 - Added 80% of release notes, rest will be added a day before release or so :). 2004-02-12 00:25:32 +00:00
codemastr 0a1822a628 Added m_svssno 2004-02-12 00:19:10 +00:00
codemastr a607cc8b19 Added svssno/svs2sno 2004-02-11 23:04:36 +00:00
codemastr 8e55a798fa Made mknod deal with umask settings 2004-02-11 03:51:47 +00:00
codemastr 176ce7b047 Removed remote restart 2004-02-11 03:47:59 +00:00
codemastr e4dddbe7c0 Fixed a problem with config loading and module errors 2004-02-11 03:44:31 +00:00
Bram Matthys 3f4eb6ab46 - Started using the umode->allowed stuff a bit ourselves, just to be sure. 2004-02-10 23:28:43 +00:00
Bram Matthys 0bc26457b1 - Fixed a snomask bug reported by Cat / HERZ (#0001531). 2004-02-10 15:51:21 +00:00
Bram Matthys f916c64422 - Added a section "Security tips/checklist" to unreal32docs.html, this is something
I worked on a few months ago... It tries to explain how to get a server/network
  secured, what the potential risks are, etc... Of course security is a complex topic
  so I cannot talk about everything in it, but I tried to mention the main risks and
  what you can do about it in a (hopefully) simple and understandable language ;).
2004-02-10 01:21:26 +00:00
Bram Matthys bfa00c8626 - Fixed minor compile warning. 2004-02-07 22:51:13 +00:00
Bram Matthys ebbeddf969 - Forgot to add src/modules/m_sendsno.c to CVS, also fixed 2 compile warnings
and a crashbug related to previous commit.. bug hunting will continue ;).
2004-02-07 17:05:44 +00:00
Bram Matthys 3671a765cb this should be the last "big commit" before release :p.
- Added snomasks 'S' (Spamfilter) which notifies you of any spamfilter matches.
- [internal] always return after spamfilter match, don't continue looping trough
  targets list (eg in case of: /msg #a,#b,#c spamspam), otherwise you would get
  duplicate notification msgs.
- Added SENDSNO server command, similar to SENDUMODE but for snomasks, this is
  used by the spamfilter snomask (+S) so you get network-wide notifications.
- Added "compiled for.." versioning system, this way a beta17 module can't be loaded
  on beta18, etc... People often forgot to recompile their modules or had old ones
  somewhere by mistake, therefore crashing after upgrades... this should fix this
  (in the future). Module coders don't have to do anything for making this work,
  it's done automatically (via modules.h).
2004-02-07 15:49:37 +00:00
Bram Matthys a29dc83e69 - Ripped out fast (bad)words support out of spamfilter to avoid confusion, also renamed
spamfilter::word to spamfilter::regex to make it even more clear (since we match
  on the whole line and have nothing to do with words.. 'word' doesn't make sense).
- Updated docs with some better regex examples, reported by AngryWolf (#0001520).
2004-02-06 21:37:28 +00:00
codemastr 45c557f0ec Made -qaohv on +S require +N 2004-02-05 22:58:24 +00:00
Bram Matthys 4d2de582f1 doc updates on snomask N 2004-02-05 19:52:55 +00:00
Bram Matthys e52cf2119a - [internal] cleaned up snomask removal after deoper, now remove_oper_snomasks() is
called which might look a bit ugly, but is better than before (scattered on 3 places).
- Added snomasks 'N' which allows you to see nick changes of clients on other servers,
  requested by several people (#0001323).
2004-02-05 19:47:37 +00:00
Bram Matthys 1d12b2b0f9 - Made blocked dcc notices (sent to umode +v) global, suggested by neothematrix (#1513). 2004-02-05 02:12:01 +00:00
Bram Matthys 781cce98cb - '/rehash -all' had bugs and is now considered depricated, just use '/rehash' instead.
On '/rehash' we reload everything already so the '-all' option was useless anyway.
  Reported by fez (#0001516).
2004-02-05 01:52:09 +00:00
Bram Matthys d4723ee2e2 - Added can_dccdeny operflag so you can give your local/global opers access to this too.
Co-admin, admin, sadmin and netadmin get it by default. Suggested in #0001247.
- Updated operflag docs.
2004-02-05 01:34:59 +00:00
Bram Matthys 43b5886b7e - Limited 'All Connections in Use' message to max 1 every 15s, this DOES NOT mean we will
introduce throttling of other msgs (or making this configurable)... this is just
  an exception because this msg is sent to _all opers_ and you cannot disable it by
  unsetting certain snomasks. Anything lower than 15s would be bad anyway since this
  is a very serious error condition. Requested by LoVeR (#0001412).
2004-02-05 00:50:40 +00:00
Bram Matthys d7967cc004 - Modified 404 numeric a bit (#0001515).
- Fixed 'no server notice on /restart or /die', reported by Lx (#0001062). This was caused
  by a bug in flush_connections(&me), hopefully there won't be any side effects.
- Fixed file owner problems when IRC_UID/IRC_GID is used (eg: when running chrooted).
- Fixed crashbug if we were unable to write a remote include file to disk.
2004-02-04 23:11:02 +00:00
codemastr 425a4e57ee Fixed a remote include cached file bug 2004-02-04 01:58:48 +00:00
Bram Matthys 7b4ef15606 - Fixed invalid nameserver info when chrooted (nameserver was always localhost). 2004-02-03 22:42:27 +00:00
Bram Matthys a65906bc5e - Fixed issue when 2 servers link with identical user@host *:lines but with different
expire times, reason field, etc... Entries are now fully synced between servers.
  Reported by Cnils (#0001448).
- Added umode +T to help.conf
- Fixed an issue with add/del/remove in /spamfilter being case sensitive.
2004-02-03 21:13:02 +00:00
codemastr 165da0c5bd Some setuid/setgid and chroot changes and sajoin changes 2004-02-03 19:02:53 +00:00
Bram Matthys 094acdf25c - Cosmetic 'stats /zip' output change (#0001435).
- Made services admins able to see on which channel services bots are, just
  like a netadmins can, suggested by EviL_SmUrF (#0001481).
2004-02-01 19:52:47 +00:00
Bram Matthys 96925ef9b4 - Fixed possible compile bug (caused by HOOKTYPE_TKL_EXCEPT). 2004-01-31 21:05:41 +00:00
Bram Matthys 5d4e4339ff - Added HOOKTYPE_TKL_EXCEPT (arg: cptr, tkline) which is called from find_tkline_match
and find_tkline_match_zap. This can be used to add custom TKL exceptions.
2004-01-30 21:48:41 +00:00
codemastr 4ce745ca37 SSL fix and added can_setq 2004-01-30 21:13:32 +00:00
codemastr 66700cf631 Prevent multiple spaces in a MODE message 2004-01-30 00:50:42 +00:00
codemastr 0d70cd81d7 Fixed a problem with the snprintf checking code 2004-01-29 22:57:20 +00:00
codemastr 10aa5e9978 Made ./Config remember libcurl directory 2004-01-29 22:38:40 +00:00
Bram Matthys 3821d5c558 - Fixed '/SetHost Error' flood from all servers in some circumstances like re-opering, reported by blotter45 (#0001400). 2004-01-29 16:58:05 +00:00
Bram Matthys 6ef85abc6f - updated /stats help and docs on '/stats f' 2004-01-29 16:50:02 +00:00
Bram Matthys be83c94c68 - added set::spamfilter::* to docs 2004-01-28 00:57:43 +00:00
Bram Matthys 8f4dd07074 - win32 compile fix (typo) 2004-01-28 00:24:57 +00:00
Bram Matthys d2c6bb5ad5 spamfilter etc... *pray* 2004-01-28 00:16:33 +00:00
codemastr bd5b7ee6b8 Fixed a bug with HOOKTYPE_CONFIGTEST with perm modules 2004-01-27 00:25:03 +00:00
Bram Matthys 3aef23eecf added HOOKTYPE_REMOTE_CHANMODE 2004-01-22 22:47:19 +00:00
Bram Matthys a68898df22 - Changed NOSPOOF msg in ./Config a bit since this can also be effective against
"blind proxies" (like HTTP POST proxies).
- WebTV updates: made it so (user generated) channel notices are now displayed as
  privmsgs in the channel. Also made the /knock channelnotice a privmsg for webtv.
2004-01-22 22:03:04 +00:00
Bram Matthys 7c4418113b - Changed random number generator to use arc4random-alike routines so we can get "secure"
random numbers. We will also no longer be using rand()/random() anywhere.
  Thanks to dek\ for pointing out this is potentionally dangerous, especially on
  win32 with NOSPOOF enabled.
2004-01-19 19:49:28 +00:00
codemastr dc11242795 Made the configure script not add -I or -L for /usr/include and /usr/lib 2004-01-18 21:58:01 +00:00
codemastr de40c73a20 Updated /module docs 2004-01-18 21:41:41 +00:00
codemastr 560af0ec1b Added set::silence-limit 2004-01-18 20:27:38 +00:00
codemastr 80dc3a80bc Updated /stats docs 2004-01-17 20:56:20 +00:00
codemastr 3185d8c23b Added HOOKTYPE_PRE_LOCAL_QUIT 2004-01-17 20:37:52 +00:00
codemastr c07e1f96e1 Renamed FAKE_LAG_FOR_LOCOPS and made chanops override chmode +V 2004-01-17 20:13:48 +00:00
codemastr e406e0d99a Added EXBCHK_PARAM and some noew logging flags 2004-01-17 19:30:46 +00:00
codemastr f6ed927791 Made permanent modules receive HOOKTYPE_REHASH 2004-01-17 19:01:25 +00:00
codemastr e7c7909d66 Various minor changes 2004-01-17 18:38:40 +00:00
Bram Matthys 3980a7f7f6 - internal: Ok, I'm committing this in parts... did most of the TKL spamfilter
integration now, no.. it doesn't work at all yet but most of the internal stuff
  has now been done (but I temporarely need to work on other things now).
   moved/added a lot of regex stuff, banaction/spamfilter helper functions, etc
  into s_misc.c. [note: current code has some bugs but since the stuff isn't
  used that's no problem... it's also a bit ugly, do NOT mail me about these things ;p]
- Enabled talk-trough-+M for opers (just like +m)
- Disabled talk-trough-+m/+M for opers if NO_OPEROVERRIDE is defined
- Display zlib/SSL version in /version (oper only)... will prolly be improved later.
- updated doc/compiling_win32.txt
2004-01-16 21:40:18 +00:00
codemastr cfa469a940 Doc change 2004-01-11 21:36:57 +00:00
codemastr cbf7f33bf1 /who fixes 2004-01-11 21:01:53 +00:00
codemastr 58d2882fb5 Fixed a /kick bug 2004-01-11 15:38:24 +00:00
codemastr 11877f5270 Various fixes 2004-01-10 16:33:26 +00:00
codemastr ccd8318cd4 Extban fixes 2004-01-10 05:53:36 +00:00
codemastr aeff467a36 Made extbans use the module objects system 2004-01-09 00:56:15 +00:00
codemastr 5ce3fcc1e3 Fixes for TRE under win32 2004-01-08 19:00:44 +00:00
codemastr 973ac25a4a Made CmodeAdd return MODERR_EXISTS if the mode already exists 2004-01-08 16:51:29 +00:00
codemastr 1da0b9a540 Bug fixes and EXTBAN 005 token 2004-01-08 16:39:35 +00:00
codemastr 759be00efe Fixed a compile bug regarding TRE 2004-01-07 00:28:46 +00:00
codemastr 3dd67bf248 Integrated TRE into Unreal 2004-01-04 20:12:31 +00:00
codemastr ce14fdec61 Added TRE compiling 2004-01-04 19:11:50 +00:00
codemastr ab919886b5 More work on TRE 2004-01-03 17:43:29 +00:00
codemastr 57dcbd80f7 Operoverride fixes 2004-01-03 05:01:00 +00:00
codemastr decc5ba107 Remove FLAGS_TS8 stuff 2004-01-03 01:23:08 +00:00
codemastr d274d493fd ... 2004-01-02 23:12:27 +00:00
codemastr 43070cde48 More TRE stuff 2004-01-02 21:15:35 +00:00
codemastr 5de605d767 Made the TRE library get compiled 2004-01-02 20:30:41 +00:00
codemastr be84de8bde Updated the TRE library source to 0.6.4 2004-01-02 20:14:15 +00:00
codemastr 7c0620eae8 Updated the win32 TRE lib to 0.6.4 2004-01-02 20:04:35 +00:00
codemastr 1ff17b798e Updated the TRE library source code to 0.6.3 2004-01-02 04:32:35 +00:00
Bram Matthys 56cb95f189 - internal: Modified TKL system (getting ready for anti-spam system):
Instead of 1 big list of *lines, it's now an array to easily distinct between types.
  Also made tk->usermask static (USERLEN+2) instead of dynamic.
  These changes should give enough speed improvement to make the new anti-spam/anti-ads
  feature fast enough.
2004-01-01 22:53:50 +00:00
codemastr 081056522e More remote include fixes 2003-12-31 21:24:23 +00:00
Bram Matthys 0e0015a77a - Added some additional warnings for insane large values for allow::maxperip, and class::* stuff. Reported by Erik_Rana (#0001463). 2003-12-31 17:22:10 +00:00
codemastr 042ce07691 Various remote include fixes 2003-12-30 18:45:40 +00:00
codemastr 829a3c8a1f Made remote includes work with SSL protocols 2003-12-26 00:51:25 +00:00
codemastr 3be92d0201 added configure checks for libcurl and other various changes 2003-12-26 00:29:36 +00:00
codemastr f8e916d356 Fixed a bug with unloading modules on Mod_Load failuer 2003-12-23 22:28:42 +00:00
codemastr 084d57cef1 Updated TRE dll and fixed a MAX_PATH problem 2003-12-23 01:47:02 +00:00
codemastr 99d1b1e0d1 Made it possible to use remote includes in win32 2003-12-23 00:25:04 +00:00
codemastr 5daa253210 Added join_channel 2003-12-21 20:22:50 +00:00
Bram Matthys 41f81b2643 - internal: changed is_banned() again: cptr,sptr -> sptr (dropped cptr). It was too
confusing (and thus causing bad code/bugs) and was never used anyway.
2003-12-21 15:10:13 +00:00
Bram Matthys 93e187f4a3 - As expected, fixed a crashbug in extended bans system. Reported by Rocko (#0001444). 2003-12-21 14:48:48 +00:00
codemastr da3afb3420 Made the extban stuff compatible with the module API 2003-12-20 21:21:10 +00:00
Bram Matthys 240f7fbd04 minor fix 2003-12-19 23:50:11 +00:00
Bram Matthys 6ad735364f - Updated win32 makefile... 2003-12-19 23:43:25 +00:00
Bram Matthys 426fbd9663 - Added "extended bans". An idea from SorceryNet ircd.
These bans look like ~<type>:<stuff>. Currently the following bans are available:
  ~q: quiet bans (ex: ~q:*!*@blah.blah.com). People matching these bans can join
      but are unable to speak, unless they have +v or higher.
  ~c: channel bans (ex: ~c:#idiots). People in #idiots are unable to join the channel.
  ~r: gecos (realname) bans (ex: ~r:*Stupid_bot_script*). If the realname of a user
      matches this then (s)he is unable to join.
      NOTE: an underscore ('_') matches both a space (' ') and an underscore ('_'),
            so this ban would match 'Stupid bot script v1.4'.

  These bantypes can also be used in the channel exception list (+e).
  +e ~r:*w00t* makes anyone with 'w00t' in their realname able to join,
  and +e ~c:#admin makes anyone in #admin able to join, etc..

  This system allows modules to add extended bantypes too.

  This feature requires some additional testing, also the module interface will
  probably be changed in the next few weeks, and perhaps more extended bans will
  be added before next release.. we'll see...
2003-12-19 23:39:30 +00:00
codemastr cd5567a02a Merged the win32 makefiles into one file 2003-12-19 20:18:37 +00:00
codemastr 3439f9f02b Added include/url.h 2003-12-17 19:19:10 +00:00
codemastr f8486ab94b Added a patch to make hide-ulines apply to /who, /whois and /whowas 2003-12-17 03:24:47 +00:00
codemastr af289c8687 Various fixes and changes 2003-12-16 19:39:38 +00:00
codemastr 53f0297b8c Started some work on the remote include system 2003-12-14 04:49:46 +00:00
Bram Matthys 105dd3c092 - Added set::static-part: similar to static-quit, default 'no' (static-part disabled).
If set to 'yes' or '1' it will strip all part comments,
  if set to something else it will use that as a part comment.
- Partial cleanup of m_part (hopefully I didn't destroy anything).
- Minor stats compile warning fixed
2003-12-11 21:27:33 +00:00
Bram Matthys 6c4e63656b - Made it compile at windows again 2003-12-10 03:28:40 +00:00
Bram Matthys c3d09408e9 - Added error checking/error messages to new module reloading system, to catch errors like
insufficient hd space, permission denied, etc..
2003-12-10 03:16:16 +00:00
Bram Matthys cb6b67e586 - Made "chanop notices" only go to @#chan on non-prefixaq servers (and to ~&@#chan otherwise),
internal: added ugly macro CHANOPPFX which is "~&@" if prefix_aq, else "@".
2003-12-10 02:28:12 +00:00
codemastr f2a2fa77c8 New module rehash system fixes 2003-12-07 04:58:39 +00:00
codemastr 3a5a4947f0 Made it so modules can be reloaded (new image) on /rehash 2003-12-06 01:09:32 +00:00
Bram Matthys 5a6e957a9d docs.. 2003-12-06 00:27:59 +00:00
Bram Matthys 5a48671691 - Added channelmode +T: no notices allowed in channel. 2003-12-05 22:43:48 +00:00
Bram Matthys 6d497a9ae6 - '/rehash <server>' didn't reload motds&rules files, reported by w00t (#0001409). 2003-12-05 14:55:11 +00:00
Bram Matthys 5cec9564f6 kine-address to kline-address 2003-11-30 23:25:46 +00:00
Bram Matthys b537553d2e - example.conf: added +i in modes-on-connect.
- Temporarely added fdlist debugcode, please report any bugreports it gives,
  it would especially be helpful if you know _what_ triggered the error :).
2003-11-30 23:17:33 +00:00
codemastr b27e04b7a1 Fixed a bug with SVSNLINE - 2003-11-30 00:48:37 +00:00
Bram Matthys 1f0e883094 documented E version flag... 2003-11-26 19:57:43 +00:00
codemastr 5eafc5a1bc Fixed a problem with the rehashflag hook 2003-11-26 19:52:13 +00:00
codemastr 957e72dd98 Added HOOKTYPE_PRE_LOCAL_PART 2003-11-26 19:51:02 +00:00
codemastr abef160bce Changed the callback for HOOKTYPE_REHASHFLAG 2003-11-24 21:28:46 +00:00
Bram Matthys 7571387422 - A last-minute fix, lalala... 2003-11-24 15:32:02 +00:00
Bram Matthys 039a9753cd - A last-minute fix, omg... 2003-11-24 15:04:48 +00:00
Bram Matthys e43e1e1799 got everything ready for sts to tag :p 2003-11-23 17:33:57 +00:00
Bram Matthys 364c4a879c - Changed version to beta19 2003-11-22 23:52:01 +00:00
Bram Matthys 9eedf89ea5 typo, gr! 2003-11-21 20:43:52 +00:00
Bram Matthys 044d01e1d7 - Added stuff that will easy the transition to extended bans next release.
- Added beta19 release notes
- Made USE_ZIP the default again in src/win32/unrealinst.iss
2003-11-21 20:30:53 +00:00
Bram Matthys 948b4e61ad - Added comment regarding MLOCK and set::restrict-chanmodes in unreal32docs.html.
- Made PREFIX_AQ a ./Config question at *NIX and enabled it by default at Win32.
2003-11-21 15:13:45 +00:00
Bram Matthys fd5579dbde - Fixed a compile problem on alpha, reported by Hyperi (#0001374).
- Made "operator count bug" not notice all opers (log only), unless in debugmode.
2003-11-20 19:33:03 +00:00
Bram Matthys 3897fa417b - Made OperOverride work for chanmode +Q (#0001370).
- A few example.conf changes.
2003-11-20 17:28:40 +00:00
Bram Matthys b462450293 - Made /rehash reread botmotd and opermotd (#0001291). 2003-11-20 02:22:01 +00:00
Bram Matthys dee0370ced - Fixed remote BOTMOTD bug reported by Angrywolf (#0001365).
- Workaround for "special ban makes it impossible to add other bans" bug
  reported by wilkie, SerialKillinNinja, etc.
2003-11-20 01:37:42 +00:00
Bram Matthys 37a93b5502 - Added oper::maxlogins which allows you to limit the number of concurrent session
with the same oper block. Suggested by kain.
- Made /dns oper-only (the ircd command, not your client /dns command :p).
- Various help.conf fixes. Reported by nukie (#0001373).
2003-11-19 23:41:34 +00:00
Bram Matthys eacfd5eb5c - Fixed a snomask issue reported by Magnet (#0001354). 2003-11-11 23:22:53 +00:00
Bram Matthys dc73bd3a2d - Made win32 work again (broke it by /module patch 35 minutes ago). 2003-11-11 20:20:23 +00:00
Bram Matthys d6fd665ede - Multiple /module changes (the command):
- Normal users can now get a list, versioninfo will be hidden however.
  - Opers get some additional details like hooks and commandoverride's.
  - Opers can use /module <servername> to get a remote list of loaded modules.
  - Added flag [3RD] to show it's a 3rd party module
  This was requested by by quite some people because serveradmins started to load
  "spy modules" without clearly mentioning it in the MOTD (which is highly unethical
  and in some countries even illegal due to privacy law). Also the remote module
  list was requested by quite a few opers.
  Sure, this isn't a 100% guarantee but at least if someone goes hiding stuff
  then it's clear what their intentions are (and thus will be refused support, ..).
- Changed emailaddr in help window at windows to unreal-users mailinglist.
- Made the cloak mismatch msg during linking a bit more scary.
- Added comment to 'Install as a service' option in installer to help n00bs a bit.
2003-11-11 19:45:09 +00:00
Bram Matthys 58f0749fa3 - Fixed desynch bug regarding extended channelmodes. Reported by AngryWolf (#0001347) 2003-11-09 02:52:43 +00:00
Bram Matthys 9d33644df1 - Fix for permanent modules w/ config hooks (they were not called). 2003-11-06 17:34:46 +00:00
codemastr 17104a0d9e Removed references to tkline/tzline from help.conf 2003-11-05 23:47:02 +00:00
Bram Matthys b4f5788c8f - (Internal) Moved most valid-host checking into 1 function, valid_host(),
which checks for invalid characters.
- Added hostname check for me::name since this could cause mysterious trouble.
2003-11-04 01:38:01 +00:00
Bram Matthys c3dd8d08d5 - Made it so chanmode +f flood detection doesn't apply to u-lined servers. This was
already indirectly the case because services don't support the EOS command, but
  now some (homemade) services do :p. Reported by Troco (#0001337).
2003-11-04 00:27:31 +00:00
Bram Matthys 448ad3839a - Fixed a UMODE2 bug. 2003-11-03 17:10:20 +00:00
Bram Matthys ae87101170 - Added insane OperOverride system for joining +z channels (#0001189).
This seems better than just allowing the insecure oper trough +z.
2003-11-03 01:06:23 +00:00
Bram Matthys 3b37b0927f - Fixed a bug where link::options::autoconnect wasn't working after rehash, ircd
had to be restarted to make it work. Will now try to connect on /rehash to
  servers with autoconnect enabled. Bug was reported by Rocko (#0001321).
2003-11-03 00:05:47 +00:00
Bram Matthys 1e162381ac - Fixed some other weird remote PING/PONG stuff as well. 2003-11-02 20:05:12 +00:00
Bram Matthys c25223913c - (Internal) Added __attribute__ format checking for most format string functions,
this will currently produce a lot of warnings with -Wall.
- Fixed 159 of 184 warnings detected by the above, the other warnings are false.
  Most warnings had to do with long vs int, and thus the format strings (%d->%ld)
  or the vars (int->long) have been changed (many of these were time_t/TS vs int).
  Only a few rare crashbugs were discovered.
- Module coders: for HOOKTYPE_LOCAL_CHANMODE the 'sendts' parameter was changed
  from type 'int' to 'time_t', while in most circumstances (like on ia32)
  you won't notice, I suggest you to update your callback functions anyway.
- Possibly fixed an issue with set::modes-on-join and mode +f, it could have
  set random remove-chanmode times in the default chanmode line.
2003-11-02 02:58:11 +00:00
Bram Matthys e52956fd77 - Don't allow remote pongs if unregistered. 2003-11-01 13:58:44 +00:00
Bram Matthys 79bc20a994 - Minor doc updates regarding snomasks reported by Stoebi (#0001324).
- Fixed two OperOverride kick bugs:
  - If ircop is +h and victim is +h it would deny it, reported by Special (#0001308)
  - Ircops (all except netadmin) had trouble kicking +q people, if the ircop isn't
    op'ed he can kick them, but if he has +o he can't. Reported by Michi (#0001012).
  If you use mixed unreal versions you can get desynch problems if you use those
  fixed things (like kick a +h if you are +h) because older servers will still block
  the kick. You will receive a 'You cannot kick channel' message from every older
  server so you'll at least be notified ;p.
2003-10-31 19:08:47 +00:00
stskeeps 5a32b8dc7e foo 2003-10-31 17:13:34 +00:00
stskeeps ba0dd97653 foo 2003-10-31 16:50:10 +00:00
Bram Matthys 2c00dd0546 added set::ban-version-tkl-time to /stats S and updated docs. 2003-10-30 21:38:45 +00:00
Bram Matthys 84d32b5378 - Fixed bug where color quits were stripped when they shouldn't be >:).
- Added 'action' field to ban version { } which can be: kill: kills the user (default),
  tempshun: shun the specific connection only, kline/zline/gline/gzline/shun: place
  a ban on *@IP. Time of those bans can be specified in set::ban-version-tkl-time.
  It's up to the admin to take a good decision, sometimes zlines are best (=won't use
  much sockets but will reconnect quite quickly), sometimes tempshun (=will use 1 socket
  but generates nearly no network traffic), sometimes klines/glines, etc..
2003-10-30 19:08:50 +00:00
Bram Matthys 5baebf692b - Moved it a bit too far (outside the loop), should be fixed now. 2003-10-28 18:47:05 +00:00
Bram Matthys 60f7aadf05 - Module coders: Moved call to HOOKTYPE_LOCAL_JOIN down to where the JOIN, NAMES, etc
are already sent... this seems to make more sense since we have a prejoin hook now.
2003-10-28 02:00:28 +00:00
Bram Matthys 9f4ce0d91d Added set::options::allow-part-if-shunned, is that name long enough? god.. 2003-10-27 00:44:41 +00:00
codemastr 4fcae4f1a1 Made DCC deny work with files with spaces 2003-10-26 20:39:47 +00:00
Bram Matthys 4264082420 - Fixed a bug regarding +f and bounce modes, would cause a crash, reported by Rocko. 2003-10-26 20:05:38 +00:00
Bram Matthys ff85a1f7b4 - Added HOOKTYPE_REMOTE_NICKCHANGE (called like: cptr, sptr, newnick). 2003-10-25 18:51:49 +00:00
Bram Matthys d64fb8dbab Multiple changes...
- Changed some useless stuff.
- Enabled EXTCMODE by default, I presume it's stable but can't promise anything.
- Module coders: changed 'allowed' callback function for umodes&snomasks,
  from 'aClient *sptr' to 'aClient *sptr, int what'.
  'what' will be MODE_ADD if trying to add and MODE_DEL if trying to remove.
2003-10-25 16:39:23 +00:00
Bram Matthys 2a469b1942 - Fixed a problem regarding module hooks, if a hook was called within a hook it could cause
problems (like pre connect hook -> exit_client -> quit hook).
2003-10-23 22:15:52 +00:00
Bram Matthys be86f0db32 - Fix for +L without +l desynch on serverlinking. 2003-10-23 17:30:32 +00:00
Bram Matthys ea7aca9a66 "typo"... not all *lines are glines :p 2003-10-19 20:11:33 +00:00
Bram Matthys 7efd5e8cda - Fixed gline with weird value causing a crash at windows, reported by Spectre (#0001309). 2003-10-19 20:03:23 +00:00
Bram Matthys ad9d0370fa Added remove-chanmode-after-X-minutes in +f & checks for /sethost&/chghost to same host.
- Added checks for /sethost&/chghost to same host.
- Added remove-chanmode-after-X-minutes in +f.
  The format is +f [30j#R5]:15, where 5 is the "do -R after 5 minutes". For a default
  action like +i you would have to do the same: +f [30j#i5]:15 (remove 'i' after 5 minutes).
  Additionally, 2 config items are added:
  - set::modef-default-unsettime, if this is set to for example '5' then things like
    +f [30j]:15 will be transormed into +f [30j#i5]:15. It's just a default, the user can still
    override it. By default this feature is not used.
  - set::modef-max-unsettime, specifies the maximum amount of time for the <time> parameter,
    by default this is set to 60 (=1 hour), the value should be between 0 and 255.
  I didn't do the extended tests I usually do but it seems stable, also the docs are updated
  but are probably updated again later to make it a bit more readable.
  Feel free to report any bugs as soon as you discover them.
  The only thing I could think of is: _usually_ only 1 server will have the -i/-R/.. timer
  running, so if that server splits (or even worse dies) it will only be -i/-R/.. at that server
  and when they sync back they merge chanmodes so +i/+R is set again.
  I don't consider this a huge problem but maybe it can be inconveniently, if people have
  a lot of trouble with this I'll have to consider a 50% recode of the +f system :/.
2003-10-18 18:44:54 +00:00
Bram Matthys 2b9f88c6d2 - Optimized send code re-enabled, I disabled it 6h ago due a bug-triggering-a-bug (see next).
- Fixed a PING bug resulting in 'trying to send .. to myself' msg.
- Some spelling corrections in unreal32docs.html.
2003-10-14 19:43:07 +00:00
Bram Matthys e02aab8d41 temporarely rollback... have some crashbug somewhere. 2003-10-14 14:01:07 +00:00
Bram Matthys b189e632c9 - Now it would be even better if it actually compiles... 2003-10-14 04:26:27 +00:00
Bram Matthys 3ef5ae6a80 - Yet another code audit:
- (Just for the record, this audit has nothing to do with the ircnet buffer overflow,
     unrealircd is not vulnerable)
  - Various fixes
  - Visual bug regarding +f & server synching, it was sometimes setting mode +f multiple
    times depending on the ban-/userlist.
  - Fixed a possible desynch regarding chmode +L.
  - Fixed possible client confusion regarding bans.
2003-10-13 17:56:49 +00:00
codemastr f3f2390615 Added umode +T (no ctcp) 2003-10-04 20:13:10 +00:00
codemastr 0e22126286 Added the ability to limit /who replies 2003-10-03 23:36:39 +00:00
Bram Matthys 5a65bcac20 blah... useless change. 2003-10-03 20:01:15 +00:00
Bram Matthys 8359ab9c76 - Fixed even more negative oper count bugs... 2003-10-03 19:52:12 +00:00
codemastr 97402c11a6 Fixed a negative oper count bug in SVSNOOP 2003-10-02 22:32:53 +00:00
codemastr 573dc68378 Documentation fixes 2003-09-28 21:08:52 +00:00
codemastr 59d73bf18c Added a command override system for modules 2003-09-28 19:43:15 +00:00
Bram Matthys 7d95c02ed1 - Minor botmotd-on-mode+B fix (was causing some useless servertraffic). 2003-09-28 02:06:03 +00:00
codemastr db445c0faf Sped up the message searching functions 2003-09-27 00:29:24 +00:00
codemastr 6612642d47 ... 2003-09-24 00:15:34 +00:00
codemastr 55ce8f9356 fixed a problem with tre.dll 2003-09-24 00:06:00 +00:00
Bram Matthys b0705fb7c5 - Changed version to 'beta18' 2003-09-21 22:19:38 +00:00
codemastr 3e4cfea3da Updated modules to use the new macros 2003-09-21 19:59:50 +00:00
Bram Matthys 7646a3735c - Minor doc update. 2003-09-21 18:09:14 +00:00
cknight 138923af18 Added ref link to section 4.9 from section 4.34 2003-09-21 18:04:54 +00:00
cknight 6b5adc7fe8 Updated .CHANGES.NEW to read Beta18 2003-09-21 17:23:54 +00:00
cknight b1338a1b41 Very Very small change to doc/example.conf 2003-09-21 16:46:25 +00:00
Bram Matthys 1b719f393f - Fixed hunt_server* bug 2003-09-21 16:40:54 +00:00
Bram Matthys 59a417e369 - Fixed a win32 resolver lockup bug 2003-09-21 14:31:17 +00:00
codemastr d803c716d6 Added some macros for modules 2003-09-20 23:39:45 +00:00
codemastr d051786f5c Channel hook changes 2003-09-20 19:57:46 +00:00
Bram Matthys 729689a4cd - Fix for HOOKTYPE_REMOTE_QUIT (was called for local quits too) 2003-09-20 14:47:47 +00:00
codemastr af2834d5e9 Added HOOKTYPE_REHASHFLAG 2003-09-20 00:20:36 +00:00
Bram Matthys 7aa7ea31b8 - Added beta18 release notes (might be changed) 2003-09-19 23:00:38 +00:00
codemastr b72b10d5ae TRE 2003-09-19 21:24:47 +00:00
Bram Matthys a316e4af6f - Added HOOKTYPE_REMOTE_QUIT 2003-09-18 23:41:32 +00:00
Bram Matthys 2d4f52665c - Added HOOKTYPE_LOCAL_PASS and HOOKTYPE_REMOTE_CONNECT 2003-09-18 01:31:10 +00:00
Bram Matthys d722051fb6 - Added set::default-bantime. It allows you to set the default time for a gline/kline/gzline/shun/etc when the time is not not specified (like with /gline *@*.stupid.net). 2003-09-18 00:08:48 +00:00
Bram Matthys 36392a485e +f regarding -R/-M blalbalba docs etc, grr commit plz! 2003-09-15 19:25:24 +00:00
codemastr 4ec62271c8 Made the win32 version use libtre for regex instead of GNU regex 2003-09-14 23:35:33 +00:00
codemastr 142f037fd2 Linux PPC fix 2003-09-14 16:43:02 +00:00
Bram Matthys 3c96db4e4d - Added HOOKTYPE_UNKUSER_QUIT (disconnects of unregistered clients). 2003-09-14 16:17:38 +00:00
codemastr 192556763f Fixed a win32 resolver bug 2003-09-12 21:33:11 +00:00
Bram Matthys 04f934d04c - Finished some of the extcmode code (memleaks). 2003-09-12 01:58:11 +00:00
Bram Matthys b63c1d2399 - Added checks for ipv4 listen lines on ipv6 compile. 2003-09-12 00:05:55 +00:00
Bram Matthys 7e2ca393ad - Minor +f code tweaks. 2003-09-11 19:33:20 +00:00
Bram Matthys 8f5fcc1704 - Fix-for-fix-for-+mu-fix (it was still crashing)... don't ask. 2003-09-08 00:29:02 +00:00
Bram Matthys 217c9ee30d there was no newline at end :p 2003-09-07 23:17:28 +00:00
Bram Matthys 6057b5749a - Fixed a SVSMOTD crashbug (removing of motd). 2003-09-07 22:55:15 +00:00
Bram Matthys 9e23c67a61 - Fixed Q:lined nickname msgs during linking and a debug fix. 2003-09-07 21:05:42 +00:00
Bram Matthys 632e0cbf88 - Improved SSL error msg sent to junk snomask. 2003-09-07 18:14:19 +00:00
codemastr d0a632a7b1 Fixed a typo 2003-09-07 16:07:41 +00:00
Bram Matthys 6237ee2239 - Fixed a crashbug introduced by +mu fixes 3 days ago (#0001237). 2003-09-07 15:50:11 +00:00
Bram Matthys da6eceef41 - Added official-channels block. These channels are listed in /list even if they have 0 users. 2003-09-06 23:16:18 +00:00
Bram Matthys 06cdd686de - Added clientsonly/serversonly/ssl/java flags to /stats P (#0000992). 2003-09-06 19:46:43 +00:00
Bram Matthys 7aa1ff0f78 - Added warn option to deny channel, this will send a notice to the eyes snomask when a user attempts to join. Suggested by Joolz (#0000992). 2003-09-06 19:27:37 +00:00
Bram Matthys 1eabf58160 Made it so that with +M and user not +r and not voice/halfop/ops/etc the part message isn't shown, just like with +m. 2003-09-06 00:39:07 +00:00
Bram Matthys e42336433c - Temporarely added trace code for hunting down negative operator counts (#0001155). 2003-09-05 23:06:17 +00:00
Bram Matthys 8899e0b366 - Will now strip/block color codes in quits if any channel the user is in has mode +S/+c. 2003-09-05 22:19:09 +00:00
Bram Matthys 4975d04299 - Badwords filtering is now only done for local clients, previously every server was filtering the message. This will reduce CPU usage, especially at hubs (#0001022). 2003-09-05 21:53:19 +00:00
Bram Matthys 4128d32eab - Fixed a chroot bug, reported by iceblade (#0001112). 2003-09-05 21:13:36 +00:00
Bram Matthys 153a3eea53 blah 2003-09-05 21:00:25 +00:00
Bram Matthys 8bfcc56c9e - Fixed an old bug where allow::hostname localhost (or *@localhost) didn't work (#0001115). 2003-09-05 20:38:52 +00:00
Bram Matthys 0475c6b874 - Fixed a /rehash crash regarding badword all & regex badwords, reported by Angrywolf (#0001230). 2003-09-05 20:11:48 +00:00
Bram Matthys 5c1225fc71 - Doc fixes/updates reported by Angrywolf (#0001163, #0001176). 2003-09-05 19:56:46 +00:00
Bram Matthys fb1ad02810 - Fixed a double OperOverride notice bug reported by DukePyrolator (#0001180). 2003-09-05 19:39:05 +00:00
Bram Matthys 49f5e68768 - Made anti away flood system work just like anti nick flood (#0001205). NO_FLOOD_AWAY is now enabled and away-flood is set to 4 per 120s by default. 2003-09-04 23:20:52 +00:00
Bram Matthys bc5a744312 - And another +f + modes-on-join one... 2003-09-04 20:33:20 +00:00
Bram Matthys 09178f3a0c - Fixed a crashbug with +f and services, reported by Rocko (#0001227). 2003-09-04 20:04:49 +00:00
Bram Matthys c9f03422e7 - Fixed a bug in +f + modes-on-join + 't' subfloodtype, reported by Rocko (#0001228). 2003-09-04 19:22:33 +00:00
Bram Matthys b140156778 - Probably fixed a bug regarding 'setting mode' notice with +f (was sometimes sent to non-chanops).
- Fixed multiple chmode +u bugs: remote join, netjoin, +mu relay between servers, kick and
  a part bug. Most of them reported by Lx (#0001097).
2003-09-04 19:04:43 +00:00
Bram Matthys aee400a104 extra +f action support: c#m c#M j#R m#M 2003-09-01 15:33:33 +00:00
Bram Matthys 8c5246bc25 - Fixed problem with opers having both 'admin' and 'coadmin' causing double-notices (#0001043). 2003-08-31 21:11:13 +00:00
Bram Matthys 7efe268c3b - Made SSL users unable to -z themselves, also added 2 flags to /stats S, reported by Joolz (#0001200). 2003-08-31 20:52:37 +00:00
Bram Matthys 331d10b5a4 - Fixed bug regarding hidden opers + m_whois cleanup (#0001208). 2003-08-31 20:04:00 +00:00
Bram Matthys 51b15e583c - Fixed minor config parser memleak reported by AngryWolf (#0001214). 2003-08-31 18:36:01 +00:00
Bram Matthys dc1a5a3e04 - Fixed a channel sync bug reported by thilo&Rocko (#0001218). 2003-08-31 18:10:16 +00:00
Bram Matthys 372814470f - Fixed ~5 compiler warnings at *NIX and ~20 at windows. Some of them _could_ have caused problems. // - Moved EOS debugging code to DEBUGMODE. 2003-08-31 00:36:31 +00:00
Bram Matthys 2f38c277f0 major channelmode +f change... oh-oh... I really hope this works ok :p 2003-08-30 20:23:49 +00:00
codemastr 09377cf3a0 Module system error reporting support 2003-08-24 19:41:51 +00:00
codemastr 23cdfb4597 ... 2003-08-24 15:53:22 +00:00
codemastr e741087ce4 extcmode changes 2003-08-24 00:56:31 +00:00
codemastr a450522052 *nix resolver for Windows 2003-08-21 16:11:08 +00:00
Bram Matthys bf156f47b6 - Allow opers to talk in channel even if +m (#0001109). 2003-08-17 19:39:30 +00:00
Bram Matthys e484db317d Allow o/a/q'd users to nickchange if banned (#0001150), Added badword all { }, config.h cleanup
==
- Allow o/a/q'd users to nickchange if banned (#0001150).
- Added badword all { }, this will add the badword to the badword channel, badword message
  and badword quit lists... could be useful :p.
- Little config.h cleanup (removed obsolete non-working defines).
2003-08-17 01:28:04 +00:00
Bram Matthys da18f18fa3 Minor oob read; someone forgot a parameter in sendto_one ;p 2003-08-17 00:05:38 +00:00
Bram Matthys 7f9841b01d Internal code cleanups, changed away flood configthing, added nickflood protection
===
- Internal code cleanups: EOS var rename, got rid of old UnknownUser structs, moved
  anti away flood to new flood struct.
- Changed away flood configuration to set::anti-flood::away-flood <count>:<period>.
- Added nickflood protection, can be set in set::anti-flood::away-flood <count>:<period>
  to allow max 'count' nickchanges per 'period' seconds. The default is 3 per 60s.
  As usual, the nickchange limiting does not apply to ircops.
2003-08-16 22:49:51 +00:00
Bram Matthys fe63f8476a - Fixed minor /WALLOPS bug reported by Praetorian_ (#0001195). 2003-08-16 16:11:52 +00:00
Bram Matthys 57f337a738 *just commit da crap* 2003-08-16 15:56:50 +00:00
Bram Matthys 1681fce504 multiple changes...
- Updated example.conf with a more strict default oper-only-stats.
- Made '/stats S' and '/stats Z' oper only again (always).
- Hopefully fixed incoming/outgoing rate in /stats T. Only the stats of the first
  listener was counted instead of the total. This also explains why on some (many?)
  ircd configurations it always showed 0.00 kb/s and why HTM (high traffic mode)
  was never kicking in.
2003-08-10 20:53:09 +00:00
codemastr 61fed28198 ... 2003-08-06 23:55:34 +00:00
codemastr 392fad7d3a Fixed a stats l/L bug 2003-08-06 23:55:13 +00:00
Bram Matthys 64eb8a9aa5 - A few documentation updates/fixes
- 005 CHANMODES= set back to original value before extcmode merge
- made some functions in channel.c non-static so module coders
  can use them (they are not defined in the header files [yet] however).
- fixed 2 minor oob write issues
2003-08-04 21:38:33 +00:00
codemastr c5643f70c3 Fixed a +k/+L bug with using the same parameter 2003-08-04 21:32:30 +00:00
codemastr f2ee326b4c ... 2003-08-04 20:54:51 +00:00
codemastr 73469bfea0 ... 2003-08-04 20:43:18 +00:00
codemastr 06b63be683 Added ModuleGetOptions and ModuleSetOptions 2003-08-04 20:40:32 +00:00
codemastr 78e9f881db Fixed a snomask and umode bug 2003-08-04 18:02:51 +00:00
codemastr 4db7542ee1 Recoded the usermode module system 2003-08-03 23:30:12 +00:00
codemastr c8bfc594cd Fixed a /stats bug 2003-08-03 18:05:49 +00:00
codemastr 4ac2e2ce6b /stats fixes 2003-08-03 00:00:56 +00:00
Bram Matthys 3eb5f121ef - stats bugfixes: a null pointer crash and a '/stats k' bug. 2003-08-02 00:00:21 +00:00
codemastr 83c2567d34 ... 2003-08-01 19:43:08 +00:00
codemastr 161e62ccc0 Added a new stats system 2003-08-01 19:13:46 +00:00
codemastr 313aa1e26c Fixed a problem with Sleep 2003-08-01 16:53:21 +00:00
Bram Matthys 6f2d85fbb6 - Fixed bug in /silence regarding cloaked hosts, reported by kuwatog (#0001157). 2003-07-31 16:37:25 +00:00
Bram Matthys 89ddc95c72 - minor m_kick tweak. [could help us in the future] 2003-07-29 19:13:36 +00:00
Bram Matthys 81035a2c3e - Fixed bug with SWHOIS: oper::swhois wasn't broadcasted correctly which made it only show up in local (or server) /whois, reported by format (#0001141). 2003-07-29 18:52:28 +00:00
Bram Matthys 41a0896d6d - First big part of modulized extended channelmodes system 2003-07-29 17:07:17 +00:00
Bram Matthys ded7f11727 - Some minor text/documentation fixes. 2003-07-28 15:43:30 +00:00
Bram Matthys b73de3c497 - Will now error at too large cloak keys (2147483647 and greater) because it's dangerous
and could cause cloak key differences (ex: mixed ia32&ia64 networks).
2003-07-22 17:01:58 +00:00
codemastr 6e45d6ccd3 Fixed a PPC problem 2003-07-18 22:02:14 +00:00
codemastr 4bda94acf3 Crontab fixes 2003-07-16 21:13:25 +00:00
codemastr 550ec43931 Documentation updates 2003-07-15 19:08:44 +00:00
codemastr 523c2fe815 Fixed a +b/+e bug 2003-07-15 18:31:53 +00:00
codemastr ecc53cc37a Fixed numerous logging bugs 2003-07-15 18:21:53 +00:00
codemastr d6f59a90c7 Various fixes/cleanups 2003-07-15 14:52:44 +00:00
codemastr 5732a799bd Made unreal work under Linux PPC 2003-07-15 14:35:46 +00:00
codemastr 51462f5ee1 ... 2003-07-14 22:23:32 +00:00
stskeeps f3f3703273 - Fixed ircd.c compile error discovered by Ravage 2003-07-14 15:33:43 +00:00
codemastr 822db16d91 Cleaned up some /die code under Window 2003-07-13 19:39:37 +00:00
codemastr 9df80388a7 various bug fixes and updates 2003-07-13 16:43:26 +00:00
Bram Matthys f574385475 - Fixed problem with make custommodule and multiple EXLIBS arguments (EXLIBS="-la -lb -lc"). 2003-07-07 18:27:47 +00:00
Bram Matthys 460a61a6d6 - Fixed ban version crash and another read-after-free. 2003-07-06 22:13:01 +00:00
codemastr 5ac4bae7ef Added a system to allow modules to create snomasks 2003-07-01 19:22:24 +00:00
codemastr d2187a72e1 Added a find text feature to the win32 editor 2003-06-26 15:15:27 +00:00
codemastr eed7f9c62d Made the win32 editor maximizable 2003-06-25 20:43:11 +00:00
codemastr 71c691ed0b Added a goto button on the win32 editor toolbar 2003-06-25 16:08:42 +00:00
codemastr 2d0e78cb02 Win32 editor changes 2003-06-25 00:27:06 +00:00
Bram Matthys 7a82d28b19 - Updated docs a bit (how-to-get-support/FAQ link style). 2003-06-22 21:49:04 +00:00
Bram Matthys f6cd86a00a added readme and fdlist bounds checking. 2003-06-22 21:33:50 +00:00
codemastr 9c713f7aa7 Added set::channel-command-prefix 2003-06-22 17:12:39 +00:00
Bram Matthys 507559b6be - IPv6: added warning if a ::ffff:a.b.c.d type addr doesn't work since this "feature" is disabled by default at newer *BSD versions. Also improved another warning. 2003-06-22 00:23:45 +00:00
codemastr b7c02898fe Fixed some SVSMODE/SVS2MODE bugs 2003-06-19 14:44:44 +00:00
Bram Matthys b4dbc4dc72 - Fixed bug with /list and '?' wildcard, reported by maGGus. 2003-06-18 23:32:36 +00:00
Bram Matthys 909bc03521 ./update will now refer user to the docs on upgrade instructions. 2003-06-16 19:24:58 +00:00
cvs2hg 1d04e380a2 fixup commit for tag 'unreal3_2_beta17' 2003-06-15 17:01:50 +00:00
codemastr 31f2e23e30 temporarily disabled TRE 2003-06-15 17:01:49 +00:00
codemastr 4535a0d008 Minor crontab fix and docs update 2003-06-15 16:52:04 +00:00
Bram Matthys 0c56bf9ad2 lalala 2003-06-15 16:17:34 +00:00
Bram Matthys d927eef7dd blah 2003-06-15 14:16:41 +00:00
stskeeps 5b8ca94431 *** Unreal3.2-beta17 release *** (god save us) 2003-06-15 09:10:02 +00:00
Bram Matthys 953d70ba28 - Fixed PRIVMSG bug with multiple targets. 2003-06-14 20:31:26 +00:00
codemastr 153b7c284a Added an experimental (disabled by default) prefix system for +a and +q 2003-06-14 00:05:26 +00:00
codemastr 9661a1a713 Made ./Config setup TRE 2003-06-13 15:11:57 +00:00
codemastr 41c3d206c5 Added the TRE regex library 2003-06-08 19:55:48 +00:00
codemastr c5489b186d Added some WebTV stuff 2003-06-04 22:50:48 +00:00
codemastr 40157a056b Added short motds 2003-06-03 22:38:46 +00:00
codemastr 3af1172dce Recoded some resolver mutex stuff 2003-06-01 19:18:57 +00:00
codemastr d478ad75c2 Fixed a win32 resolver bug 2003-06-01 19:05:03 +00:00
Bram Matthys 50911f28e9 - Minor oob fix for parse_v4_netmask 2003-06-01 19:00:48 +00:00
Bram Matthys 00f857ae99 - Resolver fix nr #1 (prolly not "the real problem"). 2003-06-01 18:49:46 +00:00
codemastr a6d33b3841 Win32 editor fix 2003-05-31 19:26:41 +00:00
Bram Matthys f7d2e7a972 - Fixed _some_ gcc3.3 + -Wall warnings. 2003-05-31 02:12:44 +00:00
Bram Matthys bb53b0be8c - Fixed some MOTD problems: remote MOTD gone after rehash (#0001007) and motd time, etc... 2003-05-31 01:28:14 +00:00
codemastr 88af97045e Changed /whois 'secret channel' flag to '?' 2003-05-30 21:02:15 +00:00
codemastr 825ee732bf ./Config fixes for Solaris 2003-05-30 20:31:07 +00:00
Bram Matthys b3576b29db - Removed "Duplicate user entry in SJOIN" notice because the problem has been traced down. 2003-05-29 19:23:12 +00:00
Bram Matthys cf91b1d89a - Doc updates 2003-05-29 14:35:33 +00:00
Bram Matthys 2cc542f427 added some helpop/docs stuff stating username in /oper is case sensitive. 2003-05-28 22:44:11 +00:00
Bram Matthys fce9f6463a multiple patches:
- Module coders: new hooks: part, kick, chanmode, topic. changed: quit (added 'comment' param).
- Enlarged REPORT_* vars a bit.
- IPv6: UnrealIRCd can now lookup ip6.arpa addresses too (original IRCnet patch modified for
  UnrealIRCd by Onliner).
2003-05-27 22:38:17 +00:00
codemastr 11b0c97e85 Changed some wording in TKL 2003-05-23 17:31:35 +00:00
Bram Matthys 187ef2996d - Fixed bug in HOOKTYPE_LOCAL_JOIN which could cause 0-member-channels if a hook returned 1 and the channel was new. 2003-05-22 18:52:11 +00:00
luke 83bf47452d Fixed /map 2003-05-21 14:21:40 +00:00
codemastr 0d33d9a412 Fixed a win32 editor bug 2003-05-20 18:43:57 +00:00
Bram Matthys 2dc82a43cc - Probably fixed server-notices bug (duplicates, to non-opers) caused by a few SVS* cmds, reported by _loco_ (#0000991). 2003-05-20 17:57:25 +00:00
codemastr a4a447e788 Made /whois slightly faster 2003-05-19 20:39:39 +00:00
codemastr d7efc09cef Removed a reference to pthreads 2003-05-18 17:30:56 +00:00
codemastr 225a84e300 Removed TSP 2003-05-18 17:27:51 +00:00
Bram Matthys 33b1fb5d41 set::options::mkpasswd-for-everyone + Added error messages if not oper for: sdesc, mkpasswd, htm, rping, opermotd 2003-05-17 17:52:24 +00:00
Bram Matthys 96720abeda - Fixed regex detection problem (introduced by a change 2 days ago). <- i added that () comment so ppl don't think it was in beta16 ;p 2003-05-17 15:48:57 +00:00
codemastr 23248c91e6 Changed who flag & to ? 2003-05-16 20:01:22 +00:00
Bram Matthys 83d19d60e4 - Updated src/win32/unrealinst.iss a bit 2003-05-15 18:52:53 +00:00
codemastr 730c302c72 Made regex use extended regexps, and fixed a Sun compile problem 2003-05-15 18:40:08 +00:00
codemastr 2c3eb0339c Solaris compile fix, and deny channel::redirect 2003-05-14 22:34:44 +00:00
stskeeps 878a0f899b - Check in autoconf for MacOS X that will make compiling and running on it
to work
2003-05-13 12:35:52 +00:00
stskeeps 9e70767b8d little fix 2003-05-13 09:50:08 +00:00
stskeeps 7ea0e34f85 - Committed little de-Fizzer module to extras/ 2003-05-13 09:12:59 +00:00
codemastr 7589b92df7 Fixed an SVSMOTD bug 2003-05-12 19:14:03 +00:00
Bram Matthys 99dbe995c0 - Code cleanup (sys_errlist[]) 2003-05-12 18:45:21 +00:00
Bram Matthys 9d377150a1 forgot to change date!!!~~~ 2003-05-11 22:52:28 +00:00
codemastr 2e03a27b15 Fixed a bug in del_throttling_bucket 2003-05-11 21:38:30 +00:00
codemastr 847a2f4944 Resolver changes 2003-05-11 21:33:30 +00:00
Bram Matthys 374a7d5950 Added set::ident::connect-timeout and set::ident::read-timeout, updated example.conf: added throttle block. 2003-05-11 21:08:13 +00:00
Bram Matthys b780fc9347 - Updated flags in /version (and greeting), added 'Z' for zip links support, updated tech doc. 2003-05-11 19:12:57 +00:00
Bram Matthys fb5ea7d873 channelmode +f fix /// IPv6: Fixed unable-to-resolve-bug if both a A/AAAA record and NS/MX/etc records were present 2003-05-11 16:26:58 +00:00
Bram Matthys 0e4a8945e6 - And another minor +L fix. 2003-05-10 23:19:51 +00:00
Bram Matthys 4e74bbac1e - Code cleanup/merge m_join/channel_link: fixed multiple channelmode +L problems. 2003-05-10 21:56:31 +00:00
codemastr 370acc2abe Made it so it is no longer necessary for modules to copy the ModuleInfo structure 2003-05-10 18:53:50 +00:00
Bram Matthys f0a5ab1310 - Moved /stats zip from NOTICE to RPL_TEXT, updated stats documentation. 2003-05-10 00:27:29 +00:00
Bram Matthys dc3f546925 - Fixed numeric checking... someone was really drunk when he coded this "if ((l < 0) && (l > 254))" ;p. 2003-05-09 23:44:11 +00:00
Bram Matthys f46494f02f /WHO code cleanup + partial recode + bugfixes /// Updated example.conf about U-lines since many people set them wrong. 2003-05-09 20:02:20 +00:00
stskeeps c7366d942f Added CASEMAPPING=ascii as per request 2003-05-09 08:29:41 +00:00
Bram Matthys e0a4cf5100 - Misc /whois and webtv whois fixes 2003-05-09 00:41:25 +00:00
Bram Matthys 66d64a62c5 Fixed minor ban_version undeflow, no risk.
No risk coz a 0 len can only happen by a "\1version :" and in that case the -1'th char would be ':'... ;p.
2003-05-08 23:43:55 +00:00
codemastr f3e2f1c524 NETINFO * for cloak-keys 2003-05-08 23:32:38 +00:00
codemastr 012ba4da76 made ban version {} also listen to CTCP SCRIPT 2003-05-08 19:09:31 +00:00
codemastr a9f06266b7 Made the command loop slightly faster 2003-05-08 17:43:31 +00:00
codemastr ed7a06f1e5 Renamed channel mode +a to 'channel admin' 2003-05-08 17:37:25 +00:00
Bram Matthys 54f35ce6a5 added include "help.conf" to example.conf, not worht mentioning in Changes ;p 2003-05-08 02:12:04 +00:00
codemastr 740e86e4b9 Added a CommandExists function 2003-05-06 22:26:48 +00:00
Bram Matthys c6be4ee44f - Removed some leftover TECHAT references (#0000953). 2003-05-06 21:55:21 +00:00
Bram Matthys 906f4dd0b7 - Little find_client() audit. 2003-05-06 18:42:52 +00:00
Bram Matthys eb6b8f89bb - Fixed ripemd-160 vs ripemd160 confusion, reported by thelight (#0000949). 2003-05-06 03:48:17 +00:00
Bram Matthys 1557bab74a - Fixed a local /kill bug during connection phase, reported by Gilou (#0000952). 2003-05-06 00:18:02 +00:00
codemastr 114cec45b1 New version flag system 2003-05-04 21:30:38 +00:00
codemastr 69f0e97c9e Fixed a SVSMODE bug 2003-05-04 18:50:24 +00:00
codemastr c7de811b78 Fixed an operoverride bug with +aq 2003-05-04 17:37:25 +00:00
Bram Matthys 337d05a43d - Fixed unprecise RPING output at windoze, reported by pak (#0000945). + useless code cleanups 2003-05-04 16:44:40 +00:00
Bram Matthys 0a74098238 Fixed a badword::action block bug with regex. 2003-05-04 14:10:13 +00:00
Bram Matthys 0c0faa05af - Removed some leftover +I code (can_stealth/^). 2003-05-03 22:28:31 +00:00
Bram Matthys d1fc8bff14 - Fixed "make install" error caused by bugreport file removal. 2003-05-03 22:00:51 +00:00
codemastr 8d6e18d086 Fixed a /topic operoverride bug and vhost::vhost verification added 2003-05-03 18:18:07 +00:00
cvs2hg 95762dff6d fixup commit for tag 'unreal3_2_beta16' 2003-05-03 15:37:06 +00:00
stskeeps 526cd8ba65 beta16 release 2003-05-03 15:37:05 +00:00
stskeeps 5023f55bc9 fooo 2003-05-02 15:55:39 +00:00
stskeeps ae68ad4994 blah 2003-05-02 15:54:28 +00:00
stskeeps d20f17fa8b Removed credits.potential 2003-05-02 15:44:04 +00:00
stskeeps f637e456d7 - Removed some more html files. 2003-05-02 15:40:53 +00:00
Bram Matthys 88cc0b6d96 BOPM windoze URL 2003-05-02 00:45:22 +00:00
Bram Matthys e91c2a8eed - Made SVSNOOP work. Reported by Lx (#0000933). [not dangerous to fix ;P] 2003-05-01 19:52:06 +00:00
Bram Matthys 09f74a9b11 Added warning if set::scan exists with a nice BOPM url etc. 2003-05-01 19:44:11 +00:00
Bram Matthys e244c24a26 release notes, moved REMOVED thing to top... will save us a few users screaming for help... 2003-05-01 19:29:54 +00:00
Bram Matthys 9f4d4e674e docs, module hook, blablabla. 2003-05-01 19:23:00 +00:00
stskeeps 40f4bb7e6c - Mm, let's see what this checkin brings:
* Removed thread questions from Config, and autoconf code from
    configure.in, leaving in the old macros though, but inactive
    --enable-standardthreads is dead as of now
  * Undefined HOOKTYPE_SCAN_INFO
  * Removed CONF_EXCEPT_SCAN
  * Removed locking in events, Lock/UnlockEventSystem still active for other
    possible uses.
  * Removed scanners, web server module
  * Removed except scan {}
  * Removed SCAN_API stuff from l_commands.c, win32 makefiles, etc
  * Removed basically any mentions of threads in source tree, excepting
    threads.h which Resolver uses on win32
  * Documentation changes not done yet
2003-05-01 18:31:58 +00:00
codemastr e385747451 Removed +I reference from help.conf 2003-04-29 22:28:15 +00:00
Bram Matthys 68a589daf5 Updated docs on +p 2003-04-29 18:45:57 +00:00
codemastr 0bdb6a2e78 Docs updates 2003-04-28 17:26:04 +00:00
codemastr b4e8b60973 release preparations 2003-04-27 21:40:22 +00:00
Bram Matthys ebc9d6242f - Preparing beta16: release notes ready, version updated in docs/text (except version.h). 2003-04-27 18:57:04 +00:00
Bram Matthys 9f1c81541d - Usermode +q can now be set by services admins, as stated in docs (#0000923). 2003-04-27 15:00:27 +00:00
Bram Matthys 59b1217a94 w00t ;P 2003-04-27 14:26:32 +00:00
codemastr d35810e819 Fixed a bug with ban version {} 2003-04-26 23:31:56 +00:00
codemastr a6f56a6121 ... 2003-04-26 18:52:29 +00:00
codemastr 69ac5a529b Allow Ulines to use a TS in the past for topics 2003-04-26 18:49:54 +00:00
codemastr a25630a958 module umode changes 2003-04-26 16:37:14 +00:00
Bram Matthys 31978ef74f Friendly IPv6 msg.. 2003-04-24 14:58:07 +00:00
Bram Matthys eed1a83d78 - Some documentation improvements regarding link::hostname. 2003-04-24 14:20:42 +00:00
Bram Matthys 9a56a16ee2 - Added link::options::nohostcheck which makes Unreal not to validate the incomming host/IP against the link::host field, usefull for dynamic DNS hosts. 2003-04-24 14:09:38 +00:00
Bram Matthys 8aefa6cdce - Fixed minor badwords /rehash memleak. 2003-04-24 02:13:28 +00:00
Bram Matthys d202cc0868 - Some code cleanups (s_conf.c, now has a config_setdefaultsettings()). 2003-04-24 01:42:16 +00:00
Bram Matthys 2d0abfa787 - Enabled throttling support by default, you need to have a (correct) set::throttle block to make it work, otherwise it's just turned off. 2003-04-24 01:21:52 +00:00
Bram Matthys fbabd2bd1e Additional SJOIN debug info in case of fishy timestamp 2003-04-20 20:34:09 +00:00
Bram Matthys 4a679b34c4 - Fixed usermode +S: was accidently a local usermode (#0000909) 2003-04-20 20:22:33 +00:00
Bram Matthys 01c8f8bdc7 - Added IP bans like *!*@194.109.* (#0000474). 2003-04-19 20:48:52 +00:00
Bram Matthys 4b066b3347 - Fixed far connect (+s +F): connects from U-lined servers are now hidden again. 2003-04-19 20:25:29 +00:00
Bram Matthys 3c5e7ff5e7 - Fixed a PRIVMSG channelprefix bug reported by aragon (#0000902) 2003-04-18 15:30:35 +00:00
Bram Matthys a63eee5ee9 I won the fight... 2003-04-17 18:13:01 +00:00
Bram Matthys 201c0e39bc Fix-for-fix (debug stuff), sendto... real... opers... 2003-04-17 18:01:55 +00:00
Bram Matthys 9691748a7e - Added some temporarely SQLINE debugging/trace code 2003-04-17 16:58:38 +00:00
Bram Matthys f13b9b539e - Fixed a compile error with openssl enabled at redhat 9. 2003-04-16 22:28:19 +00:00
codemastr d7f20fb507 Docs update 2003-04-16 19:28:39 +00:00
codemastr 8409ff6234 Fixed a bug where /nsg and /notice didn't use tokens for nick@server forms 2003-04-16 18:49:00 +00:00
codemastr f866ce40df Fixed a bug with reporting invalid set::dns directives 2003-04-16 18:12:32 +00:00
Bram Matthys 6ebcf46459 - Minor error msg improvements
- Fixed a bug with wrong hub/leaf settings ("non-hub introduced leaf") causing a crash (#0000732).
2003-04-16 17:05:00 +00:00
codemastr dd1364321a Fixed a ban version {} bug, added an aliases/anope.conf, and updated some docs 2003-04-15 21:56:24 +00:00
codemastr c2a4509d9c Made the channel be hidden from /who if you are +p 2003-04-13 23:46:04 +00:00
Bram Matthys 3c6ecbcbb2 - Fix for set::restrict-channelmodes (eating parameters). 2003-04-13 20:05:54 +00:00
codemastr bf0b2a98cd Docs update 2003-04-13 19:10:42 +00:00
Bram Matthys 3618b2a2fa - badword::action::block should now be ok 2003-04-13 19:04:46 +00:00
codemastr 8732330e38 Cleanups and /chgident fix 2003-04-13 18:10:56 +00:00
codemastr c8477ddb6a Made except ban override ban ip 2003-04-13 17:42:23 +00:00
codemastr a38c76dd44 ... 2003-04-13 17:13:01 +00:00
codemastr 7000658c42 Fixed some /stats b stuff and added badword::action 2003-04-13 16:51:08 +00:00
Bram Matthys e7672e9027 - Updated channelmode +f "algoritm", much better now. Reported by JimmyZ, Rocko, and others. 2003-04-13 16:39:40 +00:00
codemastr 87d89c721c Throttling fixes and changes 2003-04-13 00:43:04 +00:00
Bram Matthys 3ef30832cf Improved throttle hashing (both IPv4 and IPv6)... prime numbers are fun ;) 2003-04-12 21:46:58 +00:00
Bram Matthys 4c59392caa That's better... should be ok now ;). Not mentioning in Changes, no visual change. 2003-04-12 20:43:51 +00:00
Bram Matthys fa19910694 blah 2003-04-12 20:30:51 +00:00
Bram Matthys fca6689a19 fix-for-fix 2003-04-12 20:30:27 +00:00
Bram Matthys f473314312 - Improved IPv6 throttle hashing 2003-04-12 20:21:38 +00:00
codemastr 2c53187cad Fixed another throttling bug 2003-04-12 19:50:09 +00:00
Bram Matthys 7d88957dd6 Another code cleanup for -Wall.. added some functions to h.h etc. 2003-04-12 17:21:44 +00:00
Bram Matthys 406ba755d6 - code cleanup / misc minor bugfixes (MyMalloc, oper msgs) 2003-04-12 15:56:25 +00:00
codemastr 3a368be7e5 Fixed an SQLINE bug 2003-04-11 23:57:15 +00:00
codemastr 705c24399c docs update 2003-04-11 21:08:15 +00:00
Bram Matthys 3b56433320 - Added allow::options::ssl and allow::options::nopasscont, requested by iguy and Scytale. 2003-04-11 18:26:20 +00:00
Bram Matthys 498d82f5fe Added set::restrict-channelmodes and very minor speedup in restrict-usermodes handling. 2003-04-11 16:05:02 +00:00
Bram Matthys e21d4aceba - Fixed cloaking bug reported by Rocko (#0000869) 2003-04-11 14:29:35 +00:00
Bram Matthys fbd413549f blah 2003-04-11 02:30:26 +00:00
Bram Matthys 6f5683242a - Added tld::options::ssl so you can have different motd/rules files if the user is using SSL.
Also there's tld::options::remote but that's currently not used :P.
2003-04-11 02:19:29 +00:00
Bram Matthys 0778c391b6 Some useless BUFFERPOOL changes, only affects users manually running ./configure (do they exist? ;P)... 2003-04-11 00:57:48 +00:00
Bram Matthys f4c5418326 Let's be nice and give some thanks ;P. 2003-04-11 00:19:35 +00:00
Bram Matthys 8a4856fa8b Fixed MAJOR "messages are lost" caused by BUFFERPOOL being to low and bad return checking of dbuf_put.
If BUFFERPOOL dbuf_put would return -1, but at some places !dbuf_put was used,
I've changed it so it will return 0 (so use !dbuf_put now, don't use dbuf_put(...) < 0 :P).
I also added some nice warning thing. I couldn't send from the send routine because that's risky ;).
And...... I also doubled the default BUFFERPOOL, so if you leave everything the default then
BUFFERPOOL is now 52Mb instead of 26Mb, which should be ok for now.
2003-04-11 00:09:46 +00:00
codemastr d41d26a163 SQLINE/UNSQLINE and SVSNLINE fixes 2003-04-10 21:13:36 +00:00
Bram Matthys 7c9ba1feda - Added SSL quit error messages 2003-04-10 19:58:30 +00:00
Bram Matthys 49aa8d9921 - Changed throttling errormsg so mIRC recognizes it and waits a while. 2003-04-10 18:48:38 +00:00
Bram Matthys 152be25b08 - Fixed opermode bug which could cause the ircd to crash a while later (#0000823). 2003-04-10 17:59:17 +00:00
codemastr 27928952dd Possibly fixed an SSL crash 2003-04-08 23:49:01 +00:00
codemastr 318cd17c06 example.conf typo 2003-04-08 23:15:06 +00:00
codemastr f21a9758cf Fixed a bug with precedence in TKL 2003-04-07 21:46:47 +00:00
codemastr 6a990f2b05 Fixed a bug with ban version {} with NOSPOOF 2003-04-07 18:42:48 +00:00
Bram Matthys 5e95ab5595 - Fixed a fast badword replace crash (#0000834) reported by orga 2003-04-07 00:20:13 +00:00
codemastr b190794a4b Docs typo fix 2003-04-06 22:12:41 +00:00
Bram Matthys 94adac199e - Fixed yet another oob read in config parser (ie: #0000841).
Boring.. boring..
2003-04-05 22:37:20 +00:00
Bram Matthys 3348c84048 - Fixed 2 other oob reads in config parser (parsing of size and time). 2003-04-05 22:16:14 +00:00
Bram Matthys daf80ca716 - Fixed an oper bug with /names on a +s channel (#0000816). 2003-04-05 21:26:18 +00:00
Bram Matthys 629d0d59f7 - Fixed a set::modes-on-join bug and fixed an oob read in config parser.
(1st=someone forgot a bzero)
2003-04-05 21:16:21 +00:00
stskeeps c1dd98ece4 - Made throttling use DelListItem and fixed some confusing regarding
undeffing of THROTTLING
2003-04-01 12:25:59 +00:00
codemastr 4c23c4eeae Fixed some set::allow-userhost-change problems 2003-03-29 00:06:12 +00:00
codemastr 68fac1298d ... 2003-03-25 01:03:36 +00:00
codemastr 7424fa2904 Moved the 'missing user in SJOIN' notice to snomask +j 2003-03-24 17:36:27 +00:00
codemastr b71c11416a Away flood stopper patch 2003-03-24 01:07:57 +00:00
codemastr 8d950fbe2e ... 2003-03-23 20:22:08 +00:00
codemastr 21416a3a14 Added set::modes-on-join and fixed some docs typos 2003-03-23 17:27:04 +00:00
codemastr b6f456471e docs typo fix 2003-03-22 17:21:58 +00:00
codemastr f006ffe3c9 Added usermode +p 'hide channels in whois' 2003-03-21 21:43:38 +00:00
codemastr fe1dcfb6c2 Docs update 2003-03-21 17:23:55 +00:00
codemastr a2f68d0ae3 Docs updates 2003-03-21 00:49:08 +00:00
codemastr dc7564d5b8 Zip links fixes 2003-03-18 17:45:26 +00:00
codemastr df15fa62e1 Documentation update 2003-03-18 16:48:26 +00:00
codemastr ead651585e Rewrote the unknown connection flood system 2003-03-18 00:19:00 +00:00
codemastr 45a1b02ec2 Added ban version {} 2003-03-17 19:30:57 +00:00
codemastr 149a544fcf Fixed a bug where +x made hosts lowercase 2003-03-15 19:49:01 +00:00
codemastr e01932f2ba Added chmode +M to numeric 005 and a /restart and /die cleanup 2003-03-15 19:06:34 +00:00
Bram Matthys 631bf5823c - Fixed a restrict-usermodes bug reported by Rocko (#0000796)
Also some additional cleanups
2003-03-12 17:37:19 +00:00
Bram Matthys 1afff0c681 - Fixed compile error 2003-03-12 05:05:03 +00:00
codemastr 3e5953bfff Moved 'unknown connection flood' to snomask +f 2003-03-11 22:10:01 +00:00
Bram Matthys 0690d9bf2f - Fixed "proxyscan on quit" bug (#0000788) 2003-03-10 19:44:26 +00:00
codemastr 4ab745e0eb Updated some docs 2003-03-10 17:31:19 +00:00
codemastr 5250f5907e Added set::throttle::period 2003-03-10 17:09:51 +00:00
codemastr 6f78df5776 help.conf updates 2003-03-10 00:25:12 +00:00
Bram Matthys 3ff5f281a9 - Improved previous /version bugfix 2003-03-09 22:09:02 +00:00
Bram Matthys 9d6afdb321 - Improved fake lag stuff 2003-03-09 17:17:07 +00:00
Bram Matthys 9223dec1ee - Fixed a version bug. 2003-03-09 15:35:19 +00:00
Bram Matthys 45e2b69a07 - Fixed a match() bug
In case of a mask like '*\' it was trying to read out of bounds data.
2003-03-09 03:07:59 +00:00
Bram Matthys fa1f8c3d0f - Fixed a /who big which could make the server crash (oper only). 2003-03-08 20:53:15 +00:00
codemastr f5baa63cce Fixed a /list bug with +s channels and opers 2003-03-08 17:41:04 +00:00
stskeeps 853c27be84 bah 2003-03-07 14:47:30 +00:00
stskeeps 53f30bda07 - Fixed a buffer overflow that could be used against setuid setups,
found by rave@dtors.net, reported by kokanin
- Disabled CMDLINE_CONFIG(-f) by default
2003-03-07 14:37:26 +00:00
Bram Matthys 577125079e - Doc updates (SSL/stunnel example was wrong) 2003-03-04 21:08:47 +00:00
stskeeps 8ad07e6a5e h
:q
h
:q
2003-03-04 08:48:07 +00:00
stskeeps 849487df98 beta15 release 2003-03-03 18:37:55 +00:00
Bram Matthys 93a2477f3b - Fixed /setident bug 2003-03-02 23:13:33 +00:00
stskeeps 2271adf889 bah 2003-03-02 21:07:03 +00:00
Bram Matthys b231cf713d Improved story about SSL (links to xchat and stunnel, stunnel.conf example). 2003-03-02 02:17:06 +00:00
Bram Matthys 5957da083d Blah... layout
- bla
to
* bla
2003-03-01 23:10:27 +00:00
Bram Matthys dda16e5ef5 Integrated my unreal_beta15.txt into .RELEASE_NOTES, original release notes
still at end of the file. Most stuff about features has been integrated into
the documentation, so probably pretty much of it can be removed...
2003-03-01 23:08:13 +00:00
Bram Matthys 4d5987adee Documentation updates, and some replaces beta14->beta15 already (not yet
the version.h thing)
2003-03-01 21:33:41 +00:00
Bram Matthys d435c5becf - WebTV fixes 2003-02-28 14:40:11 +00:00
Bram Matthys a28a349eb2 - Documentation/text updates. 2003-02-28 01:00:36 +00:00
Bram Matthys def6483548 - Added SVSWATCH: allows U-lined server to modify the watch list of a user.
- Added SVSSILENCE: allows U-lined server to modify the silence list of a user.
2003-02-27 23:23:24 +00:00
Bram Matthys 06eaede3f2 - Added allow-userhost-change checks to /vhost.
Fixed Changes typo from me (forced-rejoin -> force-rejoin)
2003-02-27 18:41:26 +00:00
Bram Matthys 41e06cba28 - Made set::allow-userhost-change forced-rejoin work.
- Fixed chmode +u bug when chanop was parting but wasn't sent to normal users.
2003-02-27 17:13:04 +00:00
Bram Matthys b9ec2de0cb - Added feature that if the chan is +m AND +u (so both!) and you ban IRC!*@* then ops
will no longer see the "relayed" message from IRC.
2003-02-26 22:07:11 +00:00
Bram Matthys 60b77d4485 - Added EventMarkDel which marks an event for deletion for the (next) DoEvents() call.
- Fixed /rehash stall caused by delayed unloading of the scan module (deadlock).
2003-02-24 03:04:23 +00:00
codemastr 99ee86c9c9 NS cleanups 2003-02-23 21:47:56 +00:00
codemastr 931d78cd9b ... 2003-02-23 17:23:46 +00:00
Bram Matthys 28d355f649 - Code cleanup (gcc 3.2 warnings with -Wall).
Compile tests done: Linux, Linux SSL, Linux SSL+ZIP, Windows, Windows ZIP, Windows SSL+ZIP.
This might also have fixed some (or 1) bug(s) :P.
2003-02-23 03:41:39 +00:00
Bram Matthys 8fbb67818b - Added set::options::dont-resolve (=hostnames of incomming clients won't be resolved).
This is more usefull than the no nameserver + useip solution since with this no resolving
is done for incomming clients, but connecting to other servers (with hostnames) still works fine ;P.
2003-02-22 22:34:40 +00:00
Bram Matthys 4795a45150 - Fixed two ident bugs (multihomed&connect), both resulted in ident not working.
multihomed issue:
Instead of binding cptr->listener->ip it now uses getsockname(), otherwise it
won't work if you have a listen *:6667 thing + multihomed (it will connect for
example from 33.33.33.1 while the client connected to 33.33.33.5.
connect issue:
there was some kind of file descriptor race condition because of the way our
whole read_message() thing is coded... an ident socket might have been closed
+ a new might have been accepted... blablabla ;)
I wonder if anyone reads these CVS logs lol :).
2003-02-22 21:16:30 +00:00
codemastr 2a90309216 Added badword quit {} to replace CENSOR_QUIT 2003-02-22 19:41:00 +00:00
Bram Matthys 2cc2a89e5b Again. 2003-02-21 20:09:55 +00:00
Bram Matthys 76fd66d27f - Documentation updates (unreal32docs.html, example.conf).
Againnnnnn
2003-02-21 19:22:59 +00:00
Bram Matthys 64dab7821a - Fixed remote /rehash bug (#0000600). Actually rewrote 20/25% ;).
Also minor doc fixes, not worth mentioning in Changelog.
2003-02-21 02:44:48 +00:00
Bram Matthys 775378a410 - Documentation updates (added a section about features).
Also colour -> color ;P.
And... removed doc/Unreal31_to_32.html because it's no longer needed now
since I have integrated it in the features section / unreal32docs.html.
2003-02-20 23:51:25 +00:00
codemastr ca9a7a1e89 Fixed a TKL bug 2003-02-20 23:12:07 +00:00
Bram Matthys 2f10a46e1e - Fixed chmode +u again. 2003-02-19 16:02:29 +00:00
Bram Matthys 0d1e674fcf - Fixed win32 compile error 2003-02-19 02:59:50 +00:00
Bram Matthys aa44d4d728 - Updated win32 compile instructions
- Fixed set::dns error messages
2003-02-19 02:37:23 +00:00
Bram Matthys eb7333c874 - Added /who *.host.com support (ircop only), this was already possible via /who -h <host>
but most ppl expect it to work this way too.
2003-02-18 22:29:40 +00:00
Bram Matthys 4a7cef66dd - Fixed bug with channel mode +u: Quits/nick changes of other users were shown. 2003-02-18 18:59:37 +00:00
Bram Matthys 08eb667db8 - Fixed some case insensitive checks in configfile parsing, fixed to be case sensitive.
- Module changes: added two hooks: HOOKTYPE_USERMSG and HOOKTYPE_CHANMSG, changed umode_get.
The HOOKTYPE_USERMSG has been tested with a +D (deaf for private msgs except for opers)
module, the channel thing not yet...
added global/local mode flag to umode_get, or use umode_lget (local) / umode_gget (global) :P.
Blah.
2003-02-18 18:29:07 +00:00
Bram Matthys 7a4d7df866 - Fixed some case insensitive checks in configfile parsing, fixed to be case sensitive.
if someone used LoadModule instead of loadmodule no warning was shown. This issue is
known to cause negative psychological effects on some users.
2003-02-17 21:11:48 +00:00
codemastr d729d2a0e4 Fixed an alias bug 2003-02-17 20:03:55 +00:00
Bram Matthys 5a1bdba209 - Removed some debugging messages 2003-02-17 19:03:34 +00:00
codemastr 0c5ef6def4 Removed some more +I code, and fixed a /who bug 2003-02-16 22:36:07 +00:00
codemastr 8569877110 Fixed a TKL rehash bug and recoded aliases to be much faster 2003-02-16 21:57:31 +00:00
Bram Matthys e116c095f2 - Fixed MyConnect()/MyClient() bug causing memory leak. 2003-02-16 21:12:32 +00:00
Bram Matthys 9b38176f98 List options were not correctly freed when /list was completed.
The bug was it did free the yeslist/nolist elements but not the data in it (lp->value) :PP.
Changed to use free_str_list() instead, just like in exit_client.
2003-02-16 04:59:26 +00:00
Bram Matthys 36d7d271cc - set::services-server is now required to be set (#0000730). 2003-02-15 23:41:23 +00:00
Bram Matthys f2eb5f48b6 - Zip links: Added link::compression-level so you can set the compression level per link 2003-02-15 21:13:37 +00:00
codemastr 4606d94e27 +I stuff removed, and other stuff 2003-02-15 20:20:35 +00:00
Bram Matthys 0c12e70d59 - Fixed compile warning in ssl.c. 2003-02-15 18:16:57 +00:00
codemastr bf116f1f6c Removed cmode +H, coadmins can use /rehash -flags, added cmode +M 2003-02-15 01:27:48 +00:00
codemastr 8e3272ba0b Fixed a win32 bug 2003-02-14 23:20:05 +00:00
Bram Matthys f014032901 - Fixed link::port bug reported by AngryWolf: was signed so ports >32767 had problems 2003-02-13 17:12:54 +00:00
Bram Matthys 1901911405 - Removed usermode +I (invisibility) 2003-02-12 21:44:09 +00:00
Bram Matthys 5f772f0457 this helps... 2003-02-12 20:45:48 +00:00
Bram Matthys addd54c38f Revert set::options::owner-gets-dot patch. 2003-02-12 20:44:14 +00:00
Bram Matthys 71a7e91363 - Added set::options::owner-gets-dot which will give chanowners a . prefix. 2003-02-12 02:12:13 +00:00
Bram Matthys 82201421eb Made ".. did a /whois on you" always show the real host (#0000705). 2003-02-10 00:56:58 +00:00
Bram Matthys 934b898914 Fixed a bug in coadmin: global flags were not added (#0000716). 2003-02-10 00:41:19 +00:00
Bram Matthys 954ccf7265 added set::restrict-usermodes 2003-02-09 20:51:25 +00:00
Bram Matthys efc2c8f326 Updated docs. 2003-02-07 23:08:01 +00:00
codemastr 8070b2397e Fixed an except ban {} problem 2003-02-07 16:21:23 +00:00
Bram Matthys a127469d42 Added USE_ZIP stuff to win32 installer script. 2003-02-07 00:08:32 +00:00
Bram Matthys 09013995f6 Updated protoctl.txt (added ZIP). 2003-02-06 23:55:56 +00:00
Bram Matthys bd8cbf6713 * don't send SHOWCONNECTINFO if the link is (known to be) a server.
* same for scan message
* don't say "you have not registered" on NOTICE in unregistered state.
* made a send_prot(aClient, ConfigItem_link) for sending PROTOCTL message,
  takes care of sending ZIP in token in case of a ziplink (indeed, I don't
  send "ZIP" if it's not marked as a ziplink).
* added automatic fallback tot uncompressed link in case one of the sides
  has zip turned off or not compiled in.
* added configcheck for link::options::zip turned on when not compiled
  in (just like we do with ssl).
2003-02-06 01:09:17 +00:00
Bram Matthys af988ce74d Added config error if link::options::zip was enabled at a non-zip compiled server. 2003-02-05 22:14:39 +00:00
Bram Matthys 1c0860e841 - Fixed an ident bug, maybe it actually works now.. (#0000709) reported by marviiin. 2003-02-05 21:32:37 +00:00
Bram Matthys c177eb2580 Code (comments) cleanup. Yes very usefull.. ahem ;). 2003-02-05 20:15:28 +00:00
Bram Matthys 0dde38dd6a ZIP_LINKS fixes/debugging. 2003-02-05 01:28:31 +00:00
codemastr 0ca9f4c2c5 ... 2003-02-05 00:59:51 +00:00
codemastr 06dc8646a4 added ziplinks support to ./Config and updated SSL support in ./Config 2003-02-05 00:44:14 +00:00
codemastr da33a9e646 Fixed a bug when compiling with SSL ZIP_LINKS 2003-02-04 22:50:56 +00:00
Bram Matthys 1bea78bd0e - Fixed a bug in m_part reported by Angrywould, cause unknown (yet).
- Currently it's not possible to compile with ZIP_LINKS _and_ SSL without changing zlib.h :(.
It really sucks... it's because zlib.h has a typedef for 'free_func' and this is also used
in openssl header files as a (useless) name... :((. I did some updates to allow future zlib
changes, dunnow if they will because it can break other zlib programs. It compiled fine at
windows, but not at Linux... you need to replace free_func to zlib_free_func in zlib.h in
order to get ZIP_LINKS + SSL to work... but like I said, that may break programs (ARGH!).
2003-02-04 21:23:47 +00:00
Bram Matthys 6ceb9cb6f7 Code cleanup (in many files heh)... I replaced all:
IsHidden(sptr) ? sptr->user->virthost : sptr->user->realhost
stuff to a simple GetHost(sptr) macro (defined in struct.h).
Smaller and less error phrone :). Also fixed the if IsHidden -> if (IsHidden
found by codemastr .
2003-02-04 19:40:38 +00:00
Bram Matthys d98e7d3112 Fixed bug in ISON. 2003-02-04 18:50:55 +00:00
Bram Matthys 0b2d842d55 Code cleanup in m_umode. 2003-02-04 18:02:44 +00:00
Bram Matthys c0a3cd9c14 Fixed minor memleak with zip links (a few k per server link). 2003-02-04 16:54:53 +00:00
Bram Matthys 24f36c846c Documentation updates for nodnscache. 2003-02-04 02:13:35 +00:00
Bram Matthys 7ad5f10d76 - Fixed a resolver bug where cache entries didn't timeout correctly.
- Made async resolve-and-connect work
- Added link::options::nodnscache which means Unreal will not cache the host forever for
  outgoing server connections, you could for example enable this if you are linking two servers
  with an often changing host (like dyndns.org).
2003-02-04 02:09:40 +00:00
codemastr 1efcc56dce Fixed a throttling bug 2003-02-03 21:38:02 +00:00
Bram Matthys 39be4901df Added recvq column to /stats y reply. 2003-02-03 21:32:51 +00:00
Bram Matthys c5369043c7 Added better (specific) link error messages (only on the "incomming" side)
so you can easily see whether servername, hostname/ip or username is wrong.
2003-02-03 21:05:50 +00:00
Bram Matthys 6f9060ce4e Minor doc updates (mainly example.conf) 2003-02-03 20:27:33 +00:00
Bram Matthys 6f2be400c3 Major unreal32docs.html documentation update:
* Changed layout
* Removed text, split up 3.1.x->3.2.x upgrade info to Unreal31_to_32.html
  (actually that's just .RELEASE.NOTES, need a bit more explanation and
   stuff about converting configs etc).
* Improved Me, Class, Allow, Listen and Set block text/layout/etc.
* Removed typo's
2003-02-03 20:14:16 +00:00
Bram Matthys d7b0c619bd Fixed /topic for opers when not in +s-channel 2003-02-03 18:52:06 +00:00
Bram Matthys ded0df0b31 Don't encrypt SSL certificate by default @ win32. Why would we encrypt by default
at windows and not at *NIX? Also it's incompatible with running as a service.
AFAIK it doesn't increase security very much: if you own the box you can easily
snif the keyboard, read the certificate from memory, etc..
2003-02-03 17:44:33 +00:00
Bram Matthys 19960bf7de Fixed bug in ipv6 + unknown connection flood. 2003-02-03 17:27:21 +00:00
Bram Matthys 7e3664afe5 Bugfix for crash with STRIPBADWORDS_CHAN_ALWAYS (null pointer). 2003-02-03 16:33:05 +00:00
Bram Matthys 138fcd19e7 Added (optional) class::recvq so you can dynamically/per class set the recvq (flood control).
CLIENT_FLOOD in config.h is still used as a default value if recvq is not specified.
2003-02-03 01:51:26 +00:00
Bram Matthys 8d329b611a enabled FAST_BADWORD_REPLACE by default 2003-02-02 23:13:26 +00:00
Bram Matthys ef150daae7 Two tiny text fixes: missing space and an CRLF in 'sending to me' thing,
and some probably impossible oob read but just in case added a length check,
blahhh (sending empty line).
2003-02-02 23:05:03 +00:00
codemastr 56da92cab9 Added set::snomask-on-connect 2003-02-02 22:53:59 +00:00
Bram Matthys 0131baaf5b - Fixed bug which made opers unable to do -a/-q (#0000654).
- Fixed bug in +q/+a list (/mode #chan q) <= lol this was some historic
bug by DrBin or something ;). In case you wanna know.. the whole loop logic
was wrong... initalisation vs null pointer check... ;).
2003-02-02 03:39:52 +00:00
Bram Matthys 463a2b29c5 memleak bugfix for my previous improved-write/buffer-errors-patch.
Additionally, I've increased my life chances with 100% thanks to _this_ patch.
2003-02-02 01:09:43 +00:00
Bram Matthys 84596e0fc5 Redesigned "Dead socket" error msg thing. Added a error_str to client struct,
which is set if dead_link is called. You will now see "Write error",
"Max SendQ exceeded" etc error messages in the quit reason instead of just
the "Dead socket" message. Changed "notice" parameter of dead_link, now just
the reason and not a format string, maybe rename that var.
2003-02-02 00:48:02 +00:00
codemastr 47dabe4c36 Aliases updates 2003-02-01 19:18:06 +00:00
codemastr ab5ff5cdea Started work on set::allow-userhost-change 2003-02-01 19:14:31 +00:00
codemastr 0004c00d7a Documentation updates 2003-01-29 20:41:04 +00:00
codemastr 33cb958615 Fixed a channel mode +A bug 2003-01-29 20:27:02 +00:00
Bram Matthys 0a1aacda89 Fixed missing 's' flag in oper::snomask causing not receiving any server notices (attempt II) 2003-01-29 01:15:09 +00:00
codemastr 12a5746d47 Rechanged 'a Services Administrator' back to 'a Services Operator' 2003-01-29 00:56:01 +00:00
Bram Matthys a5ea13adc9 Added '/stats zip' 2003-01-29 00:19:16 +00:00
Bram Matthys 637867bc6d Added makefiles to compile with zip links @ windows (zlib needed). 2003-01-28 23:13:49 +00:00
Bram Matthys 95c0add864 Fix for error msgs flood at (at least) Linux 2.4.x and FreeBSD caused by
socket already disconnected when getpeername() is done.
2003-01-28 22:14:56 +00:00
Bram Matthys bcac798a99 Fixed whois: "a Services Operator" -> "a Services Administrator" 2003-01-28 20:32:21 +00:00
Bram Matthys 007d0c1d32 Added STRIPBADWORDS_CHAN_ALWAYS (a define, disabled by default) for always
censoring badwords from all channels (+G or not).
2003-01-28 20:24:55 +00:00
Bram Matthys f6333714a2 Fixed some minor sending-1-byte-too-much bugs when all connections where in use. 2003-01-28 19:06:56 +00:00
Bram Matthys 92fe4e04a3 Removed unnecessary #ifdef blocks added by previous ZIP_LINKS patch 2003-01-28 03:27:48 +00:00
Bram Matthys 482df3dce3 Added ZIP_LINKS: using flag FLAGS_ZIP (0x1000000, was FLAGS_UNOCCUP2),
instead of using a 2nd flag here for the special case of "the first zip msg"
like in hybrid/etc I use cptr->zip->first to flag that. Except for the many
#ifdef ZIP_LINKS blocks added I also had to do some stuff outside it, like
crc32->our_crc32 because zlib defines it, made a READBUF define (8192),
added a msg var to parsing/send functions.. blah.. etc ;P.
I've also put the patch online at www.vulnscan.org/tmp/zip_links.diff so you
can easily look what I've changed.
TODO: ask in ./Config if ziplinks should be enabled and let ./configure check
for zlib + add the library to IRCDLIBS in Makefile if enabled.
TODO: some little code cleanups
2003-01-28 02:50:19 +00:00
Bram Matthys d0dc13faa5 Little fix for previous throttling fix (accessing just free()d memory). 2003-01-27 21:25:27 +00:00
Bram Matthys 09776ff03f Fixed triple WATCH reply bug (#0000632) when USER was send before NICK. 2003-01-27 21:00:21 +00:00
codemastr 00698d9fd4 Fixed an SVSO bug and a throttling bug 2003-01-27 19:54:00 +00:00
codemastr 1db740e154 Fixed an HCN bug with client exiting notices 2003-01-27 19:30:34 +00:00
Bram Matthys e070a40353 Fixed crash when link::leaf (and some other link:: things) was empty. (#0000610) 2003-01-26 21:58:29 +00:00
Bram Matthys 9d48eee701 Tweaked fix for 2-bans-needed-trick a bit. I was checking against last virthost,
now always checking against cloaked host... Just feels better :P.
2003-01-26 15:20:06 +00:00
Bram Matthys deb038730a Minor documentation update for SVSNLINE. (#0000651) 2003-01-26 03:18:36 +00:00
Bram Matthys 74a984da48 Fixed 2-bans-needed-trick (#0000626). If a user got banned while having mode +x,
then does a -x virthost gets freed and the user can join again/circumvent the ban.
virhost should probably be moved in to the User struct like char virthost[HOSTLEN+1]
but in the meantime I've just removed the free() when someone does -x.
I noticed we already do make_userhost at connect even if mode +x isn't set, and also
is_banned checks if virthost exists.. if so -> check if that's banned... so this
patch won't decrease performance much.
2003-01-26 02:18:30 +00:00
Bram Matthys 117ec38808 Channel msging optimization by 10-30%. 2003-01-25 21:26:53 +00:00
Bram Matthys 423a8c2739 Fixed yet another bug in new badwords replace system (should be almost finished now! ;P). 2003-01-25 18:44:23 +00:00
Bram Matthys c4c87fb803 Blah... forgot to remove some debugging code in badwords.c (new fast replace system) 2003-01-25 01:32:17 +00:00
Bram Matthys efaf9d6709 Fixed halfop bug, ex: /mode -o+b user *!*@blah.com will get +b user!*@*. (#0000653)
The bug was we forgot to return wheter a parameter was eaten or not (returned always 0).
2003-01-24 23:37:33 +00:00
Bram Matthys 1dfdeb42f0 Temporarely added user-already-in-chan check in m_sjoin to help tracing user-twice-in-chan bug
which has been reported by two users (#0000594). About speed: I think it'll just use a few usec
so that's <100ms for X.000 users ;P.
2003-01-24 22:47:37 +00:00
Bram Matthys 3fc6734e65 Fixed minor bug in resolving of IPv4 names if IPv6 is enabled (#0000659).
We were doing: T_AAAA, if that fails then T_A. But in that case when a host
has both T_A and T_AAAA entries, the reverse lookup will fail for ipv4.
Now using T_ANY to fetch both T_A and T_AAAA addresses at once.
2003-01-24 20:34:11 +00:00
Bram Matthys 73810a4f82 Cleanups in badwords.c: removed duplicate code, now one big stripbadwords() function which
is called by stripbadwords_channel()/stripbadwords_message().
2003-01-24 02:49:41 +00:00
Bram Matthys e8d8a27cbc Added a much faster (>100x) badwords replace routine which will be used for easy replaces like
"blah", "*blah", "blah*" and "*blah*"... otherwise regexp is used. Disabled by default until
it's really finished and fully tested.
2003-01-24 02:18:33 +00:00
Bram Matthys 3a546fb04c Cleanup of m_userhost / my previous patch screwed things up ;P 2003-01-23 21:05:44 +00:00
Bram Matthys 358a00e90c Fixed some formatting issues. 2003-01-23 20:47:06 +00:00
Bram Matthys e333890b0f Fixed SSL session cache bug, symptoms were: stunnel can only connect the 1st time,
reconnecting etc fails with (in stunnel log) "SSL_connect: Peer suddenly disconnected".
This happends with OpenSSL 0.9.7.
2003-01-23 17:03:53 +00:00
Bram Matthys 78dc344785 Added much better checking for weird characters in hostnames.
We were doing "deny known bad characters" instead of "only allow known good characters", this was REALLY bad...
This patch limits hostnames to alphanumeric, '-', '_' and '.'.
2003-01-22 19:37:42 +00:00
Bram Matthys a79e26deff Fixed major (?) bug in resolver (affects ipv4 only), could cause long stalls / crashes.
for (i = 0; &HE(cp)->h_addr_list[i]; i++) was used in ipv4 mode, but should be
without the &... this caused some stalls (like 11 seconds) at my machine because the
loop was executing >1 million times (I don't understand why it didnt crash however).
2003-01-21 23:01:44 +00:00
Bram Matthys 735b011f3e (added to Changelog this time:) Added win32 compile instructions in doc/compiling_win32.txt 2003-01-21 22:47:45 +00:00
Bram Matthys e9b96afef8 Added win32 compile instructions in doc/compiling_win32.txt. 2003-01-21 22:46:48 +00:00
Bram Matthys d932cf0220 Fixed bug in channel mode +L #aaaaaaaaa<etcetc>. 2003-01-20 21:17:24 +00:00
Bram Matthys e71f39ea62 Fixed bug in non-working channel mode +H. There was a #ifdef ENABLE_INVISOPER
block around +H checking, but this #ifdef is only at this place and is also
never defined... Removed #ifdef because that's now in module...
2003-01-20 20:48:59 +00:00
Bram Matthys d944643010 Minor documentation fixes reported by Jollino (LUSERS, OFLAGS mode h) 2003-01-20 20:00:57 +00:00
Bram Matthys 1e51112790 Fixed win32 compile error because of report_error patch (oops, lalala :P).
Added P_ECONNABORTED and P_ECONNRESET.
2003-01-20 19:33:18 +00:00
stskeeps 56a0d8adf7 removed ircdreg 2003-01-20 16:08:35 +00:00
Bram Matthys 6a9579930a Fixed crash when +x is in modes-on-oper, user has -x and then /oper's. 2003-01-20 15:21:38 +00:00
Bram Matthys 9c31edf6e7 Made netadmins able to see users in all chans by using /who #chan or /names #chan. 2003-01-20 03:44:13 +00:00
Bram Matthys d7e7562626 I love ugly code!! I fixed an out of bound memory read a week ago in the
time function, however my fix was wrong / usually the out of bounds memory
reading went well so the function worked... now it didn't... patched ;P.
Some examples: 4s = 8, 1m = 61, 1h = 3601, 1h2m = 3722.
2003-01-20 01:38:59 +00:00
Bram Matthys 2a266829e3 Fixed SVSMODE bug in handling of non-qaohvbe modes. (#0000631)
*parabuf wasn't set to '\0' so previous modes were applied in some cases...
2003-01-20 00:46:27 +00:00
Bram Matthys 86021bdd9b Fixed shun: ADMIN and PONG are allowed if shunned, also manually removing
a SHUN from a user affects connected clients immediatly. Moved ~45 lines of
code to a seperate function for this.
2003-01-20 00:30:51 +00:00
Bram Matthys 87b22510c0 Fixed some of the FreeBSD warnings, like 'Cannot accept connections' and
'getsockopt(IP_OPTIONS)' reported in bug #0000616. There's still one around
somewhere, but it's a start. Also modified report_error so it reports both
the socket error AND the system error if they are different.
2003-01-19 23:46:16 +00:00
Bram Matthys 1c1f135f8d useless change: &me.name -> me.name in my previous patch, doesn't change
anything but it was annoying my eye ;P.
2003-01-19 23:29:22 +00:00
Bram Matthys 1d0936d07a Added RPL_ENDOFSTATS after tkl_stats output if called by /kline, /gline, etc
without parameters.
2003-01-19 22:58:07 +00:00
Bram Matthys 22f60e47c8 Fixed compile error in src/random.c at win32. Also added some nice #ifdef's
so we don't get unused var warnings in non-SSL mode...
2003-01-19 22:41:03 +00:00
Bram Matthys 5e2cf7b90f Fixed compile error in makefile.win32.ssl (added src/random.c) 2003-01-19 22:29:02 +00:00
Bram Matthys d5faf64581 Added message if '/helpop' is used without parameters by helpops. (dont panic!) 2003-01-19 21:26:34 +00:00
Bram Matthys f97b537b09 Fix for missing mode 'S' in 005 CHANMODES= message 2003-01-19 20:30:30 +00:00
Bram Matthys 193265ef69 Added access level required for chmodes, documented +G, changed USERCMDS layout 2003-01-19 20:21:35 +00:00
Bram Matthys 0c74c5cd11 Fixed example.conf set::dns::retries, 2s -> 2 2003-01-19 20:05:57 +00:00
cvs2hg 5ad7468aa1 fixup commit for tag 'unreal3_2_beta13' 2003-01-18 09:01:53 +00:00
stskeeps c5991fc8da fixed crypt on win32 2003-01-18 09:01:52 +00:00
stskeeps a05c61042b BAH FUCK 2003-01-17 22:20:48 +00:00
stskeeps e42a63972e ** beta14 released ** 2003-01-17 22:03:13 +00:00
stskeeps e5dc32a0d0 - Compile fixes regarding throttling
- Fix when you use another make than make
2003-01-17 20:32:49 +00:00
stskeeps 5289be076a - Preperations for beta14. Will be a recommended upgrade 2003-01-17 17:10:11 +00:00
luke f83daf4607 stupidity 2003-01-17 15:23:51 +00:00
codemastr eb1e4f000b Resolver bug fix 2003-01-16 22:10:06 +00:00
stskeeps 381350618f - One more fix to the above 2003-01-16 15:19:25 +00:00
stskeeps 1aabd39d27 - Fixed a bug where helpop would pass on a null pointer 2003-01-16 13:45:26 +00:00
stskeeps ea2f1c6fc7 - Fixed a bug where helpop would pass on a null pointer if it was a remote
client (this needs more investigating, could someone find out how the fuck
  it can get a remote helpop that's blank anyhow?).
2003-01-16 06:19:12 +00:00
mcskaf 3ff374d811 We were writing a null to the log file when we reached max size. Bug #0000613 reported by AngryWolf 2003-01-15 23:16:15 +00:00
mcskaf 0349a1d1d8 We were writing a null to the log file when we reached max size. Bug #0000613 reported by AngryWolf 2003-01-15 23:10:13 +00:00
stskeeps 7601cbcf12 - Adding throttling, read config.h for more info. For the uneducated,
throttling is to reconnect way too fast repeatedly. Thanks to [Real] for
  the idea
2003-01-15 18:32:25 +00:00
codemastr c02033f3ca Fixed a bug when leaving off a parameter for a password config entry 2003-01-15 16:40:15 +00:00
codemastr 3095782cfd Various fixes 2003-01-14 21:25:04 +00:00
codemastr fed61efcdb Misc. fixes 2003-01-11 19:33:42 +00:00
mcskaf fe9dc6d3c4 Fixed bug 601 - ipport_seperate() used strtok() to separate ip:port but when
just :port was specified it skipped the leading : and assigned the port to ip
and null to the port causing the calling routine to seg fault.
2003-01-07 02:30:21 +00:00
codemastr 8523a7554b Fixed a random bug and added link::password-connect encryption error 2003-01-05 16:51:15 +00:00
codemastr d47e956c5b Fixed a bug in the empty channel fix 2003-01-05 01:28:23 +00:00
codemastr b455704e7f Added a patch by Syzop to increase randomness of the random numbers 2003-01-05 01:26:28 +00:00
luke 909c5843cb Fixed bug with whole bunch of users in an empty channel (codemastr found it) 2003-01-04 21:42:03 +00:00
codemastr 286115c256 Fixed some conf3 bugs 2003-01-03 17:44:02 +00:00
codemastr 91b9fa2281 Removed USE_LONGMODE 2003-01-03 17:05:58 +00:00
codemastr a123023350 Added the ability to specify port ranges 2003-01-02 20:49:44 +00:00
codemastr d7c59f9961 Fixed a few bugs 2003-01-02 19:32:58 +00:00
codemastr efa61e7ec0 Fixed a bug in the binary searching routines 2002-12-29 17:34:51 +00:00
codemastr 2270e37dca Added pretty_time_val 2002-12-20 22:09:38 +00:00
codemastr 31171c09b4 Fixed a bug where setting umode -o didn't set -h 2002-12-19 21:59:22 +00:00
codemastr 67b1118abb Added set::snomask-on-oper 2002-12-19 21:49:37 +00:00
griever 24cd9ff5ef TKL fix and shit 2002-12-19 20:40:40 +00:00
mcskaf a94f2e208f Fix bug 552 2002-12-17 20:08:00 +00:00
mcskaf ab66342581 Fix bug 552 2002-12-17 19:56:36 +00:00
mcskaf c3f23435d5 Detect include file error. 2002-12-17 19:53:41 +00:00
stskeeps e1b22ca767 bah src/umodes.c 2002-12-16 13:36:50 +00:00
stskeeps 3c99989a07 fuck it all 2002-12-16 13:36:18 +00:00
codemastr 0fc5b50258 Docs updates 2002-12-15 16:30:47 +00:00
codemastr 5196094ca7 Added chmode +u to help.conf 2002-12-15 01:43:16 +00:00
codemastr 140eed6b4c Fixed a win32 bug with showing included files on the config menu 2002-12-15 01:35:07 +00:00
codemastr f5e278fac7 Fixed a +/-f bug when using values > 65535. Now limits to 500:500 2002-12-14 18:22:20 +00:00
codemastr 5a4e05a429 Fixed a crash if oper::flags is missing 2002-12-14 18:14:59 +00:00
codemastr 7c0bc3f0be Fixed a tsctl and a make install bug 2002-12-14 17:29:39 +00:00
codemastr a15d1337c0 ... 2002-12-13 22:35:07 +00:00
codemastr 696533a163 Rewrote some +G code 2002-12-13 22:06:17 +00:00
codemastr ef5f1c354b Added set::htm for htm options 2002-12-11 17:35:18 +00:00
stskeeps a76476371e *** beta13 released *** 2002-12-09 20:02:25 +00:00
stskeeps 04be404c6c - Changed base version name to Unreal3.2, instead of Unreal3.2-Selene
- Made McSkaf part of core coder team
2002-12-09 19:54:35 +00:00
mcskaf 997cb99faf Changed DWORD to u_int32_t. 2002-12-08 20:32:56 +00:00
mcskaf c609e0bbb1 IRCCreateThreadEx() was causing exception on Windows. 2002-12-08 20:09:27 +00:00
codemastr 2783e635b6 Fixed a typo 2002-12-08 18:44:30 +00:00
codemastr 5f9285e139 Updated version number in win32 installer 2002-12-05 20:09:27 +00:00
cvs2hg 2eef007c8a fixup commit for tag 'unreal3_2_beta13_rc1' 2002-12-05 19:51:26 +00:00
stskeeps d2e87700c3 - Added back the commands check that didn't get added in conf3 (lamers
beware)
2002-12-05 19:51:25 +00:00
codemastr 1c74c7458f docs updates 2002-12-05 16:54:05 +00:00
mcskaf 9102ebacf7 Use P_EWORKING in connect(). 2002-12-01 19:44:12 +00:00
mcskaf 2d9186c7a3 Fixed a dumb mistake. 2002-12-01 19:13:47 +00:00
mcskaf c28b3db527 Changed connect() success/fail checking in scanners for all OSs. 2002-12-01 19:10:26 +00:00
mcskaf 28fbd0bafe Added P_EWORKING define. Indicates a socket call is in progress on all OSs. 2002-12-01 18:53:06 +00:00
codemastr 2182c90be5 Release preparations 2002-12-01 18:23:11 +00:00
codemastr 6c167e3590 Documentation updates and misc. fixes 2002-12-01 17:50:08 +00:00
mcskaf b148656164 Change resolver to use our IRCMutex macros. 2002-12-01 17:42:56 +00:00
codemastr 5d31e2ac68 Changed the thread API to fix some win32 crashes 2002-12-01 17:11:34 +00:00
codemastr 1a64c71e7f Added a patch for logging vhosts in connect/disconnect notices 2002-11-30 21:11:05 +00:00
codemastr 48fb658531 Removed m_kline.c and m_zline.c they are now implimented as part of m_tkl.c 2002-11-30 21:01:12 +00:00
codemastr 211e930a1e Fixed an oper count bug with SVS2MODE 2002-11-30 19:22:43 +00:00
stskeeps f7d349e60a - Changed .SICI to point to cacert.org instead (patch by evilbunny) 2002-11-29 07:23:04 +00:00
stskeeps a5547b65f4 - Made config actually add listeners when rehashing (...) also you can now
change listener flags using /rehash
2002-11-28 17:34:19 +00:00
codemastr d21fc4bcca Fixed some logical module rehash problems 2002-11-28 16:21:05 +00:00
mcskaf b39615e26a Fixed doc: Changed set::scan::ban-time to set::scan::bantime. Added set::scan::timeout. 2002-11-27 22:05:59 +00:00
mcskaf a3c6b57a70 Changed set::scan::ban-time to set::scan::bantime. Added set::scan::timeout. 2002-11-27 22:03:47 +00:00
mcskaf ebed8efde7 Fixed typos in set::scan::bind-ip and set::scan::ban-time 2002-11-27 21:05:20 +00:00
codemastr 84fe71337e Docs fixes 2002-11-27 20:45:42 +00:00
stskeeps 8bf8eff75a - Removed makeconf 2002-11-27 20:40:30 +00:00
codemastr 9dd4b699b8 Cleaned up module code 2002-11-27 17:40:28 +00:00
codemastr 24eac63abd Changed the conf3 return values 2002-11-27 17:19:33 +00:00
stskeeps 4b738b28e2 - Small typo in config validation found by ins4ne 2002-11-27 15:23:35 +00:00
stskeeps c43a4d35c4 stuff 2002-11-27 14:55:47 +00:00
stskeeps fcfbf1cdaf serious who bug 2002-11-27 14:53:51 +00:00
codemastr dd2bf9e926 Fixed a bug where chmode +q users could not kick chmode +a users 2002-11-26 23:07:13 +00:00
codemastr 6750bca21c ... 2002-11-26 20:23:23 +00:00
codemastr 736474aa5f Finished module rehashing 2002-11-26 20:15:17 +00:00
codemastr 0ba49b9c4e Made modules rehash under dynamic linking 2002-11-26 19:52:02 +00:00
codemastr b87f79a271 Made alias{}'s get rehashed 2002-11-24 23:32:25 +00:00
mcskaf a21df7fcf5 Fixed sendto_ functions to use slot number as index into sentalong array. 2002-11-23 00:09:48 +00:00
codemastr 7ce89318f8 conf3 fix 2002-11-22 23:25:49 +00:00
mcskaf 3d945f5b1d Fixed sendto_ functions to use slot number as index into sentalong array. 2002-11-22 23:25:20 +00:00
mcskaf eba7f5ffe0 Fixed sendto_ functions to use slot number as index into sentalong array. 2002-11-22 23:07:35 +00:00
codemastr 387565717f Converted deny {} to conf3 2002-11-22 22:25:19 +00:00
codemastr 6a65111f12 Fixed several conf3 errors 2002-11-22 21:46:31 +00:00
stskeeps cd83b8a845 - Fixed win32 compile error with default: ; 2002-11-22 21:04:40 +00:00
stskeeps e4bd382898 - /rehash for conf3 (that works) :) 2002-11-22 16:16:33 +00:00
codemastr ce64bf6f6c Changes to the module config system 2002-11-18 20:04:36 +00:00
codemastr 594f8646d3 Made modules able to have config directives 2002-11-18 00:54:05 +00:00
codemastr e392d1435f Fixed a bug when set::help-channel is missing 2002-11-17 20:00:43 +00:00
codemastr d1e0d459c5 Added can_override oper flag 2002-11-17 17:31:30 +00:00
codemastr 1b17b5c0be Fixed a win32 debugger bug 2002-11-17 01:49:22 +00:00
codemastr 5e9107815e Added SVSLUSERS 2002-11-16 20:52:16 +00:00
codemastr 45590c3b5d Made alias {} work in conf3 and recoded the way aliases work somewhat 2002-11-08 21:26:44 +00:00
stskeeps 808acb8e57 - Finished up conf3, still needing some directives added but it sortof works. Rehash doesn't yet.
-  Fixed some idiotic lack of src/modules/Makefile.in changes for the sake of commands.so when
  /zline /kline etc was moved to a module
2002-11-05 19:25:21 +00:00
stskeeps f99caaa2bd Fixed alphabeticalising of named oper flags, added _conf/test_link 2002-11-05 13:52:44 +00:00
codemastr d75ffab485 Fixed some configure problems with gcc3 2002-11-02 20:32:47 +00:00
codemastr 16dd1804be Converted log and help to conf3 2002-11-02 17:24:54 +00:00
codemastr 85598d17ce Conf3 cleanups 2002-11-01 20:31:08 +00:00
codemastr b28ad5f76c Changed config flag parsers to use a binary search 2002-11-01 20:11:36 +00:00
codemastr 6dae920358 Made the main conf3 searching routine use a binary search 2002-10-27 20:31:02 +00:00
codemastr 9a280f3e14 Possible win32 resolver fix, conf3 fixes 2002-10-27 17:32:33 +00:00
stskeeps 402f031da1 bug 2002-10-26 21:42:36 +00:00
stskeeps 09bacf360e - Made CLIENT_FLOOD more customizable
- Fixed some conf3 compile errors and block-modded _*_tld
2002-10-26 19:55:24 +00:00
codemastr 6d77b60387 Added some additional NT Service options to the win32 installer 2002-10-26 19:20:52 +00:00
codemastr 1e23915986 Merged unrealinstssl.iss into unrealinst.iss 2002-10-25 17:37:53 +00:00
griever 391098a197 kline has been replaced with tkline 2002-10-24 15:58:44 +00:00
stskeeps 553c66eae6 . 2002-10-20 20:33:29 +00:00
stskeeps 34287cb733 f 2002-10-19 17:40:23 +00:00
stskeeps 6ad5b43fb5 - Fixed conf3 bug with _conf_except tkl 2002-10-19 17:37:52 +00:00
stskeeps 613c78924d conf3 2002-10-19 17:33:05 +00:00
cknight ab5c9b3a0a - Documentation - Corrected several HTML formating problems 2002-10-17 11:11:13 +00:00
cknight de97efbd21 - example.conf - Corrected incorrect set::services-services statment in alias block - reported by mcskaf (#0000401)
- Documentation - Corrected Spelling mistake in HTM mode - Reported by CoNfOuNd (#0000387)
- Documentation - Added coadmin to table of oper types - Reported by FrostByghte (#0000359)
2002-10-17 10:45:57 +00:00
cknight 479a6cf6c3 - Documentation - Updatet sec2.0 - list of Supported OS's for Win32 Version
- Documentation - Updated sec1.1 - Instructed to use bugs.unrealircd.org to report problems with docs
- Documentation - Updated misc hyperlinks - doc/unreal32docs.html
- Documentation - Updated sec3.31 - Added better description to the format we present set:: settings
- Documentation - Updated sec3.31 - Added more details to set directives
- Documentation - Updated sec3.25 - Added option vhost::swhois to section 3.25 Vhost block
- Documentation - Replaced text vair {} with <> to prevent confusion.
- Documentation - Documented that lusers now supports remote servers
- Documentation - Corrected vhost::from example as reported by joolz #329
- Documentation - Corrected set::scan:messages, currently listed as set::messages - as reported by joolz (#329)
- Documentation - Added channel mode t & description as reported by stfcs (#315)
2002-10-16 15:31:41 +00:00
codemastr 806701ac23 Scanner win32 fixes 2002-10-13 21:47:57 +00:00
codemastr 0a1a2e217f Fixed an htm bug with reporting no such server 2002-10-13 17:56:19 +00:00
codemastr 8d87ef6194 Added /lusers server.name support 2002-10-13 17:39:18 +00:00
codemastr 612751abde Fixed an samode bug 2002-10-13 17:15:29 +00:00
codemastr 1977439e27 Fixed another tkl bug 2002-10-05 00:27:22 +00:00
stskeeps 1c81b72a4f - Fixed crash bug in m_tkl_line 2002-10-04 18:35:40 +00:00
stskeeps 62b7acc6be dd 2002-09-28 14:28:14 +00:00
stskeeps 1d3c41ef75 Removed some IPv6 resolver specifics that seemed illogical (reference to Jollino's IPv6 crashes) 2002-09-28 12:47:59 +00:00
stskeeps bb6711691b - Fixed bug #0000342 reported by James LiGate about tokens leaking through from clients 2002-09-28 12:32:18 +00:00
stskeeps 379a8ccc3b Fixed bug with all TKL commands not accepting nicks anymore (#0000370 reported by Ravage) 2002-09-28 12:16:10 +00:00
stskeeps 979f96ca3a Fixed bug #0000371 reported by havlaz about an extra \n slipped in with the TKL notice 2002-09-28 11:59:01 +00:00
stskeeps 8f7455d423 - Fixed bug #0000377 reported by MorPheus where IPs of servers were shown in nick collision notices 2002-09-28 11:48:25 +00:00
stskeeps ce0ae3a46d - Fixed bug #0000372 reported by MorPheus where Killed (<everything-but-the-first-char-in-killer-letter-got-shown> (reason)) 2002-09-28 11:40:10 +00:00
stskeeps 4bc07b8789 +- Added set::ssl::options, with three options:
+    fail-if-no-clientcert   - If SSL client connects and doesn't provide a client certificate, abort connection immediately
+    verify-certificate      - Check the certificate's validity using X509 methods, check if we trust CA's, etc.
+                              It however does slip self signed certificates through UNLESS
+    no-self-signed          - Don't allow self-signed certificates through (requires verify-certificate)
+- Made conf parser mention if we make a link->options with CONNECT_SSL if we don't support SSL (and remove the CONNECT_SSL flag)
+- Made conf parser mention if we make a SSL listener and we don't support SSL
+- Added set::ssl::trusted-ca-file, if enabled, it will point the SSL stuff to use that file as trusted CA's (for verify-certificate)
+- Made conf _not_ bitch that it doesn't know set::ssl
+- Removed some leftover client certificate stuff
2002-09-28 11:02:05 +00:00
stskeeps 9d43770bd0 doc shit 2002-09-27 18:51:12 +00:00
stskeeps 282cc51768 - Changed auth method sslpubkey into sslclientcert, which means it will check the X509 certificate of the
user using X509_cmp. Also needing is some policy/conf setting to adjust if to reject invalid client certificates or whatever..
2002-09-27 16:08:03 +00:00
codemastr 519b491c1b Fixed a bug with /who -h 2002-09-20 20:06:33 +00:00
stskeeps c8c316c56d - Made channel keys be case sensitive 2002-09-07 09:26:45 +00:00
stskeeps 6926cca1bb - Added Syzop's various zero-terminate patches and fixes for crashes when
you send commands like JOIN from a server directly
2002-09-07 01:32:00 +00:00
codemastr 9f4f72d2af Now using unsigned chars 2002-09-02 15:30:03 +00:00
codemastr 13b2ebc773 ... 2002-09-01 18:55:19 +00:00
codemastr ff14d5d0bf Compile warning cleanups 2002-09-01 18:33:47 +00:00
codemastr 227563a13d removed some old win32 debugger debug code 2002-09-01 14:41:12 +00:00
stskeeps 6aa5b7a341 - Made the IRC_UID stuff more proper.. 2002-09-01 14:39:41 +00:00
stskeeps 9d35460488 bah 2002-09-01 09:27:23 +00:00
stskeeps e1872e1231 - Added Nugget's setuid patch 2002-08-31 16:30:29 +00:00
codemastr b5827fd1de Fixed some /who bugs 2002-08-31 15:33:05 +00:00
codemastr 528238f541 Fixed a bug in TKL that would allow *@* bans 2002-08-31 12:49:28 +00:00
codemastr 3ce3b10e04 Fixed a win32 editor bug with chars > 128 2002-08-28 20:50:09 +00:00
codemastr 478970ed36 Made alias {} use tokens where available 2002-08-28 17:40:17 +00:00
codemastr b89c6a8cd1 Added oper login to the 'is now an operator' notice 2002-08-28 12:12:21 +00:00
codemastr 12264cfa1b Fixed a bug with installed Unreal as a service under WinNT4 2002-08-28 12:06:23 +00:00
stskeeps a1e5a746e3 - A minor fix in SSL_is_inited stuff in s_bsd 2002-08-27 13:16:15 +00:00
stskeeps 4aff4a0376 - More SSL debugging stuff.. 2002-08-27 12:34:43 +00:00
stskeeps 9251a76f63 Added some more debugging stuff, made check_pings a little more readable 2002-08-27 05:04:30 +00:00
stskeeps a5809bba80 bah 2002-08-26 15:13:43 +00:00
stskeeps 9b597033ef bah 2002-08-26 15:10:19 +00:00
stskeeps a15ce8eb54 bah 2002-08-26 14:55:14 +00:00
stskeeps 012bad26c7 SSL debuggin stuff 2002-08-26 14:53:12 +00:00
stskeeps 709d9b87dd - Added a newline in dynconf.h 2002-08-26 10:16:44 +00:00
stskeeps 36e88f1364 - Fixed a problem with set::ssl::certificate and set::ssl::key that used
+  ->ce_varname instead of ->ce_vardata. Found by badSol
2002-08-26 01:02:29 +00:00
codemastr e1c7eead30 ... 2002-08-25 16:54:00 +00:00
codemastr cebae72da4 Fixed a win32 password encryption bug in NT service mode 2002-08-25 16:35:17 +00:00
codemastr 1f2e1a8bcf Added vhost::swhois 2002-08-25 16:10:09 +00:00
cvs2hg a44e23dcfe fixup commit for tag 'unreal3_2_beta12_fixes' 2002-08-25 14:09:01 +00:00
stskeeps 065b111e22 - Compile fix regarding above fix 2002-08-25 14:09:00 +00:00
stskeeps f62b8718aa Fixed problem where SSL handshakes weren't unknown--'ed on remove reported
by Alzirr
2002-08-25 12:57:45 +00:00
cknight f363332faa - Updated docs to include ripemd-160 encryption option 2002-08-25 11:48:04 +00:00
cknight 30efe19cbd - Added set::static-quit to unreal32docs.html 2002-08-25 11:38:27 +00:00
stskeeps 63ece5f2bc - Made so every join is a SJOIN to prevent TS0 problems. Read config.h to disable this if it causes problems 2002-08-25 05:04:58 +00:00
stskeeps 154860ee3a TOPIC_NICK_IS_NUHOST 2002-08-25 04:49:37 +00:00
stskeeps 5785860f71 - Make makecert.bat and encpem.bat show their use in titlebar when run 2002-08-25 04:33:16 +00:00
stskeeps e1b478909e - Made set::static-quit - check doc/example.conf for documentation - but
this allows the admin to decide a standard custom quit for users. so they
  won't be able to make their own quits. This affects set::prefix-quit and
  ANTI_SPAM_QUIT_TIME - it simply replaces it with the message if enabled
2002-08-25 04:26:45 +00:00
stskeeps 21d8c88e2c - Made standard-threads default, and made a Config option if to use FSU
pthreads or not
2002-08-25 03:03:11 +00:00
stskeeps a6776a30a2 - Removed ssl.rnd as it was not supposed to be provided by CVS 2002-08-25 02:08:13 +00:00
cknight 9074722d4b - Corrected release date in doc/unreal32docs.html 2002-08-24 19:21:56 +00:00
cknight 96f0f8274a *** empty log message *** 2002-08-24 18:31:59 +00:00
cknight b4ef73ca7c *** empty log message *** 2002-08-24 16:25:53 +00:00
cknight afc784ddb4 - - Reformated unreal32docs.html in something other than MS Word. 93k now! 2002-08-24 16:20:09 +00:00
luke f851f61b15 +O/+A ban implementation 2002-08-24 15:54:37 +00:00
cknight 751e14cbe2 - Made minor changes to help.conf 2002-08-24 15:48:52 +00:00
stskeeps 5fafec8555 .k
CVS
: ----------------------------------------------------------------------
2002-08-24 14:40:42 +00:00
stskeeps aff113dab8 - Added src/win32/gplplusssl.rtf for ssl-install script to show during
install in license - GPL + the notes from openssl
2002-08-24 13:13:21 +00:00
stskeeps a6c1bdacfb win32 install script changes to deal with version switchover 2002-08-24 12:24:27 +00:00
stskeeps ffbddddb8c Some install script win32 changes to deal with unreal32docs.html 2002-08-24 10:17:19 +00:00
codemastr 477ae217ab Made it so the win32 version of Unreal can't be reinstalled/uninstalled while it is currently running 2002-08-24 01:01:30 +00:00
codemastr 9fbe091509 Made /die exit nicely in service mode 2002-08-23 22:40:36 +00:00
codemastr b2efdf1fe4 unreal service utility changes and win32 resolver fixes 2002-08-23 21:26:02 +00:00
stskeeps 0f9fd774f4 - Changed version to beta12 2002-08-23 17:44:27 +00:00
stskeeps f2fd20d29d - Stripped the docs. 100kb down, but a reformat in something other than MS
word would really really help.
2002-08-23 17:33:25 +00:00
codemastr a29a242639 Made it so clicking wircd.exe when in NT service mode still starts Unreal 2002-08-23 16:48:41 +00:00
codemastr 8550484118 Fixed a set {} memory leak at /rehash 2002-08-22 16:21:40 +00:00
codemastr be5de25086 Recoded /helpop to work correctly 2002-08-21 20:35:22 +00:00
codemastr e898770e64 Fixed a host cloaking bug involving non-dot hosts 2002-08-21 17:23:17 +00:00
codemastr 9950600bcd ... 2002-08-21 17:16:28 +00:00
codemastr 96f407770c Fixed a /invite bug where remote invites didn't work 2002-08-21 17:12:51 +00:00
stskeeps 275d304475 - Added set::ssl::certificate and set::ssl::key to point to where we got the certificat
PEM and the private key PEM
2002-08-21 17:10:46 +00:00
codemastr 8c42cec638 Fixed a typo in /akill and /rakill 2002-08-20 20:20:03 +00:00
luke 18d25aa3e6 grammar bug + halfop kicking halfop bug 2002-08-20 18:58:11 +00:00
stskeeps 7c386cfe5a - FAKE_LAG_FOR_LOCOPS define added in config.h - enables local ops to
override RFC1459 flood control
2002-08-20 18:01:41 +00:00
griever 593b611a11 Added o and O flags for oper override verify and oper override. 2002-08-20 15:46:24 +00:00
griever f8bf69302c Removed LEAST_IDLE 2002-08-20 15:13:05 +00:00
codemastr 20b250b98c Removed .NEW_CONFIG references from the win32 installer scripts 2002-08-20 00:00:28 +00:00
codemastr fbbf54bd9d Fixed a bug where set {} info wasn't cleared out at rehash 2002-08-19 22:47:57 +00:00
codemastr b2752c2ffb Changed cr/lf to just lf in doc/unreal32docs.html 2002-08-19 18:56:46 +00:00
codemastr e72710e0e8 Fixed an oper::swhois bug where the swhois was not propagated 2002-08-19 17:55:03 +00:00
cknight 13a7293f34 - Removed old docs and added new docs to Makefile.in
- Updated .CHANGES.NEW with new version # and link to docs
- Updated .RELEASE.NOTES with new version # and link to docs
- Added NEW doc/unreal32docs.html Docs
2002-08-19 00:42:15 +00:00
cknight f6aa7cdcf6 - Removed ./Setup - No longer supported (read the docs!)
- Removed .NEW_CONFIG - No longer needed
- Removed INSTALL - Refer to NEW docs Unreal32docs.html
- Removed doc/commands.txt - Refer to NEW docs Unreal32docs.html
- Removed doc/faq - Refer to NEW docs Unreal32docs.html
- Removed doc/conf.doc - Refer to NEW Docs Unreal32docs.html
- Removed doc/unrealircd.doc - Refer to NEW docs Unreal32docs.html
- Removed doc/Elite.Changes - Out Dated
- Removed doc/services-install-guide - Refer to NEW docs Unreal32docs.html
- Modfied Unreal.nfo to include ref. to new docs
2002-08-18 21:33:45 +00:00
codemastr cc5258fe8a Added EGD support 2002-08-18 20:28:33 +00:00
cknight e73cb3dac5 Removed /doc/faq not needed included in new docset 2002-08-18 19:21:58 +00:00
stskeeps 330d102bad Fixed some installer problems wrt SSL compile, and added makefile.win32.ssl 2002-08-18 11:16:42 +00:00
stskeeps a1f707ef63 - Added some somewhat path specifics to unrealinstssl.iss 2002-08-18 10:42:49 +00:00
stskeeps 2d074be8fc - Removed GNU malloc totally from the FSU pthreads distribution 2002-08-18 10:33:17 +00:00
codemastr 90fff06b2b Fixed a win32 installer problem with dbghelp.dll installation 2002-08-17 00:57:16 +00:00
stskeeps 566e03e5b2 - Fixed problem with DEBUG ERROR when SSL handshaking (reported by some people) 2002-08-14 20:47:07 +00:00
codemastr 8f883d65b7 Fixed a win32 ssl installer problem 2002-08-14 17:42:51 +00:00
stskeeps 68794a3ffc - Fixed problem where the parameters of the RAKILL aliasing to TKL were switched,
and a missing return for normal users.
2002-08-13 17:41:00 +00:00
codemastr 1fa5ed84e6 Fixed invite 2002-08-12 18:16:01 +00:00
codemastr efb54b62f3 Fixed a bug where MAXCONNECTIONS is shown as 0 when it is too high 2002-08-12 17:51:49 +00:00
stskeeps 6901d27508 - Module load fix for a minor fuckup in SQLINE/UNSQLINE 2002-08-12 17:03:03 +00:00
stskeeps 7f3096ee6b - Allowed SQLINE/UNSQLINE to come from a U:lined client as well 2002-08-12 15:45:46 +00:00
stskeeps 6b51c2d53b .. Fixed a problem with normal unix source compiling as codemastr had
#ifdef _WIN32 'ed find_match_server, causing me to believe it was gone.
2002-08-12 15:18:32 +00:00
codemastr 272b7dd892 ... 2002-08-11 00:40:24 +00:00
codemastr 43e470f898 make install fix 2002-08-11 00:38:03 +00:00
stskeeps 9eede48af4 - Added note about Linux and FD_SETSIZE > 1024 in release notes
- Made IRCd bitch properly when MAXCONNECTIONS>FD_SETSIZE
2002-08-10 17:49:52 +00:00
stskeeps 41a69863d6 bay 2002-08-10 17:08:35 +00:00
stskeeps 07eb941a58 arg 2002-08-10 16:51:44 +00:00
stskeeps f8f829840d FD_SETSIZE crap 2002-08-10 15:40:08 +00:00
codemastr bb95bdfa7c Removed some useless code and added more modules 2002-08-09 20:26:04 +00:00
codemastr 1aa70c7b77 Removed src/s_unreal.c 2002-08-09 18:21:59 +00:00
codemastr 333499a98c Win32 installer 2002-08-07 21:35:51 +00:00
cvs2hg c51b8fe5dd fixup commit for tag 'unreal3_2_beta11' 2002-08-07 21:10:50 +00:00
stskeeps 7af962ecf7 SSL fixes 2002-08-07 21:10:49 +00:00
stskeeps 133ba46362 Operoverride_verify stuff. 2002-08-07 20:52:51 +00:00
luke 608963e031 blah 2002-08-07 20:40:49 +00:00
luke 081b1cd12e sts sucks with grammar 2002-08-07 18:44:45 +00:00
stskeeps 7c4f43b36e --CVS: ---------------------------------------------------------------------- 2002-08-07 17:28:23 +00:00
stskeeps 1db6a86254 - Cleaned out Credits (i'll fix the web part of it later), made doug lea malloc default
+  on Linux FSU Pthread installs. (When we got a better way, we will have full doug lea malloc..)
2002-08-07 17:23:52 +00:00
codemastr 6096b9844e Removed some useless things in include/config.h 2002-08-06 16:28:25 +00:00
luke 85fa5c5bd9 Updated config.h for operoverride_verify 2002-08-06 13:59:58 +00:00
codemastr 6b44a0d643 .RELEASE.NOTES change 2002-08-06 01:26:51 +00:00
codemastr 80d837fa8b Removed support for SSLv2 2002-08-05 17:54:52 +00:00
stskeeps 31d2224b2c - Made +x send out a SETHOST to VHP servers, requested by PreZ@DarkerNet 2002-08-04 08:41:55 +00:00
stskeeps b4f0d0fc9d - Compile error fix regarding version.h 2002-08-03 20:20:14 +00:00
stskeeps 8236faeaf6 Removed doc/Etiquette 2002-08-03 20:13:37 +00:00
stskeeps bf1ccab9a9 +- Removed doc/features.txt, doc/unrealircd.conf.txt, include/relinfo.h,
+  include/stamp.h, src/buildm4, src/chkconf.c, src/conftool.c
2002-08-03 20:12:35 +00:00
stskeeps c2b48d3ce4 - Fixed SSL compile error wrt to /trace 2002-08-03 19:01:26 +00:00
codemastr ba26cc59a9 updated .RELEASE.NOTES 2002-08-03 18:45:51 +00:00
codemastr 6e076ba67b installer fixes and version number change 2002-08-03 18:31:11 +00:00
stskeeps f99d6689ca RELEASENOTES stuff 2002-08-03 18:24:29 +00:00
stskeeps 66eb6fa848 SSL stuff 2002-08-03 16:10:25 +00:00
stskeeps 959c5b0188 Added some OpenSSL version showing 2002-08-03 13:47:23 +00:00
stskeeps 0c730e8931 bah 2002-08-03 11:52:01 +00:00
stskeeps 7d7d4aafca fix 2002-08-03 11:49:37 +00:00
stskeeps 385d9f3ada - SSL compile error fix in s_bsd.c 2002-08-03 11:25:40 +00:00
stskeeps ff4bc60486 Fixed SSL linking, again.. 2002-08-03 11:09:20 +00:00
ejb 7bb73b5e6f - send +f and +L correctly in CHANMODES 005. 2002-08-03 08:53:41 +00:00
codemastr 4897441259 Added some technical documentation 2002-08-02 22:35:20 +00:00
codemastr dc27e6470d Fixed some SJ3 bugs that could cause desync 2002-08-02 20:40:09 +00:00
stskeeps 4d410f5982 - Seemingily we can't do SSLv3 only for ctx_server? 2002-08-02 11:54:03 +00:00
stskeeps c9be3fbac8 +- Fixed some SSL errors. read() returns -1 on error, so ircd_SSL_write and
+  ircd_SSL_read must emulate the same. codemastr: could you check what the
+  win32 equiviant of EIO is? I don't think my WSAEIO or whatever I called it
+  in sys.h is correct.
2002-08-02 11:45:31 +00:00
stskeeps 51539ee85b - Fixed some compile errors found by Zerwas and fixed some implementation problems of
the not able to set +z when there's non +z users (ULines not counted) in channel
2002-08-02 09:22:58 +00:00
luke f448495e3a Made notices pretty 2002-08-01 23:15:12 +00:00
luke f45917c16c New operoverride system...hope it works 2002-08-01 19:53:30 +00:00
luke b22f4c890b fixed modebuf, parabuf sizes 2002-08-01 17:56:54 +00:00
stskeeps 9e205fe3d5 - Made the win32 installer have the option of installing as a service under NT and fixed a
+  shortcut bug
+- Fixed sptr->user->realhost becoming lowercase upon a +x
+- Fixed +bbbbb lots of crap desynch bug
+- Fixed OperOverride snotice bugs with halfop
+- Standardized OperOverride notices
2002-08-01 16:39:05 +00:00
stskeeps ba60adb833 fixed no nssl compile error 2002-07-25 18:35:48 +00:00
stskeeps c0af661c77 More SSL horror and fixed a missing , in m_who 2002-07-24 17:59:26 +00:00
codemastr 54ed370fb3 Fixed a /who hop count bug 2002-07-24 17:49:39 +00:00
codemastr 5b32996538 Some config changes and documentation updates 2002-07-24 17:00:37 +00:00
stskeeps 5af8478d67 moo 2002-07-24 10:22:22 +00:00
stskeeps 2336498e9d blah 2002-07-24 10:11:35 +00:00
stskeeps d7c8623438 . 2002-07-24 10:00:17 +00:00
stskeeps 4e84c85ceb - Added ircd/safe_SSL_read/write from bahamut+inet6/azzuranet. This can be done much nic
when newio is done.
2002-07-23 19:04:18 +00:00
stskeeps 775f3fe272 Fixed some ./configure errors 2002-07-23 17:55:02 +00:00
stskeeps 8aabac59e9 Credits changes 2002-07-23 16:12:16 +00:00
stskeeps 4f1345c350 Removed mutex.c 2002-07-23 15:35:39 +00:00
stskeeps f69335e62b - Made ./configure check if it has parameters, and error if it don't. 2002-07-23 13:11:52 +00:00
stskeeps 13f23e478d - Changed ./update to use update.unrealircd.com 2002-07-23 12:45:58 +00:00
stskeeps c4908cb4fd Added some release notes with regards to scanners 2002-07-23 12:33:44 +00:00
stskeeps f19ebceee6 Fixed a silly bug with regards to matching against compressed IPs in link {} checking 2002-07-22 20:39:58 +00:00
stskeeps f0564193ba - Added a #ifdef _WIN32 for extern BOOL IsService; in ircd.c that made compile break
on non WIN32 systems
- Depricated AKILL/RAKILL and made them alias to TKL G +/- - for normal users they
  just reply that the commands are depricated. Server compatiblity is maintained.
  Eventually it will just be removed. Thank god for modules.
2002-07-22 20:33:49 +00:00
codemastr 36e4b65c45 Made the win32 uninstaller remove dbghelp.dll if it was installed 2002-07-22 00:50:49 +00:00
codemastr a1456aa107 Added an installer script to generate the SSL win32 version 2002-07-21 21:40:24 +00:00
codemastr a799e48f82 Removed StackTrace and implimented a home-grown debugger for win32 2002-07-21 21:31:44 +00:00
codemastr dce6edf333 Removed a TechAdmin reference in makeconf 2002-07-19 20:26:03 +00:00
codemastr 33403f2c3c Added an installer for win32 2002-07-19 18:15:53 +00:00
codemastr ec47a030fb Added WinNT Service Support 2002-07-19 17:31:51 +00:00
luke 02d7d80eb6 Secure channel only (+z) ERR_BANNEDFROMCHAN fix 2002-07-19 00:27:48 +00:00
stskeeps 1dbd3b42d5 - Fixed compile problem with non-glob/win32 systems (sunos 4.1) found by rshurr 2002-07-18 18:05:18 +00:00
luke 6336f7706f Added s_join fix to changes 2002-07-17 16:51:49 +00:00
luke 2fa495de1f Added self to /info 2002-07-17 16:49:31 +00:00
luke 7003df9aaf m_sjoin bugfix to resolve banlist problems 2002-07-17 16:42:11 +00:00
codemastr a0d6f168eb Fixed a makeconf bug that would make it not work after make install in some cases 2002-07-13 17:39:26 +00:00
codemastr 3c11cbb999 Fixed an oper bug where locops didn't get a hidden host 2002-07-13 16:56:01 +00:00
codemastr c5572fa6d5 Fixed a +sp bug 2002-07-12 18:00:45 +00:00
codemastr 032b8c523c ... 2002-07-12 15:51:33 +00:00
codemastr 188fa47e73 Fixed an alias {} prefix bug 2002-07-12 00:52:00 +00:00
stskeeps a1a299b9ff - Added extras/channeldumper.c 2002-07-03 11:25:41 +00:00
codemastr fdfdbd993e Added MD5 and SHA1 encryption to the win32 version 2002-07-01 21:09:01 +00:00
codemastr e81ca7b87c Added support for RIPEMD-160 encryption of passwords 2002-07-01 16:32:15 +00:00
codemastr 65729501ed More WinXP IPv6 fixes 2002-06-30 16:03:38 +00:00
codemastr 6353f10f82 Started WinXP IPv6 2002-06-29 23:28:14 +00:00
codemastr 305d71e552 Removed some obsolete docs 2002-06-29 23:25:10 +00:00
codemastr 17eb4e57d1 Updated INSTALL 2002-06-22 15:39:15 +00:00
codemastr 15e00b6dff made set::scan::bind-ip work in win32 and added AWAYLEN= token to 005 2002-06-22 00:43:22 +00:00
stskeeps 110c1b4fe4 - Fixed minor problem with former patch 2002-06-21 10:41:46 +00:00
stskeeps 7bef381cc6 - Added set::scan::bind-ip, set::scan::message, on request of RaYmAn, documented
in example.conf
2002-06-21 10:23:16 +00:00
ejb f38f758639 - Added /who +R which shows real host to opers. 2002-06-20 19:49:44 +00:00
ejb 539f218fce - Fix a minor stupid in m_quit.c. 2002-06-19 03:50:53 +00:00
codemastr 6282bc7180 more count bug fixes 2002-06-19 00:06:51 +00:00
codemastr 7b39825bb1 Fixed an oper count bug 2002-06-18 23:44:43 +00:00
codemastr cedb574f89 Fixed a bug that could cause an incorrect oper count 2002-06-18 17:07:13 +00:00
codemastr 2b769d576d Updated install to tell the user to use make install 2002-06-18 16:27:06 +00:00
ejb 5d9a49587c - couple of updates to INSTALL. 2002-06-17 20:45:05 +00:00
ejb 6466d1ed3f - Changed m_quit.c slightly, removed a redundant strlen, made prefix-quit of
"no" not use one at all, since this is in example.conf and is sensicle..
2002-06-17 03:42:25 +00:00
ejb 145d3dfb7e - Rewrote m_who.c from scratch. It's slightly different, help.conf explains exactly how. 2002-06-17 03:00:37 +00:00
codemastr 8dd7b3efee Documentation changes 2002-06-16 20:39:22 +00:00
ejb d27f817403 - Added myself to s_info.c:m_info(). 2002-06-16 19:48:02 +00:00
stskeeps 2d2dcbd93a moo 2002-06-15 20:40:56 +00:00
stskeeps b5ae2f7fc8 crack 2002-06-15 20:12:13 +00:00
stskeeps ed34721f16 Failsafe 2002-06-15 19:46:55 +00:00
codemastr a92c041b88 ... 2002-06-09 22:43:59 +00:00
stskeeps 4761f302f6 Included larne's /who patch, adding a multitude of symbols? :P 2002-06-08 19:53:54 +00:00
codemastr b59cead0b2 Fixed a /who bug where + wasn't displayed for voices 2002-06-07 23:40:38 +00:00
codemastr 560155275b Fixed a win32 bug where the tray config menu didn't display anything 2002-06-07 23:29:11 +00:00
codemastr 8694c3ffbe Converted the status window to a modeless dialog 2002-06-07 19:47:30 +00:00
codemastr 562397aa87 Fixed a hidehost bug where ABC.com would generate a different key than abc.com 2002-06-07 16:28:02 +00:00
codemastr 6f5590934f Made module load failure non fatal 2002-06-07 16:14:06 +00:00
codemastr 6fd5101305 Fixed a module bug when there is an include between a module-config-directive and the loadmodule 2002-06-06 21:42:54 +00:00
codemastr 9d1c5c2ceb Fixed a scanner bug causing it to never timeout 2002-06-06 21:31:32 +00:00
codemastr c27a3229c7 Fixed a maxperip and maxunknownconnectionsperip bug in IPv6 2002-06-04 16:46:45 +00:00
codemastr 18892b6446 ... 2002-06-04 16:23:58 +00:00
codemastr 542ecdc7fb Fixed a bug in the new allow system 2002-06-04 16:21:21 +00:00
codemastr a510d024d6 Added allow::options 2002-05-31 21:53:33 +00:00
codemastr ac1c9232bf Fixed some /stats Z problems 2002-05-29 19:53:34 +00:00
codemastr b2ec3ec1a7 Fixed a typo in doc/example.conf (and a few cleanups) 2002-05-29 16:26:21 +00:00
stskeeps 3699932d77 - Fixed some stuff to deal with #136 - Please note that we do NOT compress our addies
- reason for this is because for example ::ffff:192.168.1.5 would really fuck up stuff
  in the IRC protocol
2002-05-28 23:55:07 +00:00
codemastr 2b68123854 Fixed some typos and hostilename problems 2002-05-28 22:03:52 +00:00
codemastr 636aa8352b Fixed a stats l/L bug 2002-05-27 19:28:42 +00:00
stskeeps e0048f7525 - Made ident checking work on IPv6 as well 2002-05-27 17:44:10 +00:00
stskeeps f8865a5aa1 - Fixed a openssl+ipv6 bug, pointed out by Aragon .. This probably breaks some other crap, but what
the heck..
2002-05-25 16:56:59 +00:00
stskeeps 1f75896d56 - Added OpenIRC-CA in .SICI 2002-05-23 09:31:36 +00:00
codemastr 870289c2fd Finally REALLY fixed the scanner (note to Stskeeps: bcmp returns 0 when there IS a match) 2002-05-21 20:54:14 +00:00
codemastr 037b2e6434 Removed some SOCKS scanner debug code 2002-05-21 20:20:17 +00:00
codemastr a6ddaba35b Added gethostbyname_r config check 2002-05-21 18:52:27 +00:00
griever 2484153b70 ... 2002-05-21 01:06:14 +00:00
codemastr 49bb821199 Network file additions/deletions 2002-05-19 22:59:09 +00:00
codemastr 99db84be8c Updated docs and changed version to beta10 2002-05-19 15:18:12 +00:00
griever 8d1ff52f0d Fixed various bugs 2002-05-18 22:41:16 +00:00
codemastr e53e4a93db Credits changes 2002-05-10 22:04:30 +00:00
codemastr e77382c196 Fixed an OpenBSD bug 2002-05-10 21:27:18 +00:00
stskeeps d90d0f52f6 - Fixed a number of bugs in the upper patch. 2002-05-10 17:29:49 +00:00
stskeeps f19f945836 mm 2002-05-10 16:09:26 +00:00
stskeeps 8833852342 :src/ircd.c 2002-05-10 16:02:25 +00:00
stskeeps c343bf91f7 . 2002-05-10 15:59:06 +00:00
stskeeps 1ccd58d2a2 - Rewrote check_pings and the whole way banning people are handled. Do loop.do_banch
to provoke a bans check. This possibly fixes #00001702, #0000137 and other
  funny bugs.
2002-05-10 15:50:54 +00:00
codemastr e1f991f196 Fixed a config parser bug 2002-05-08 23:44:16 +00:00
stskeeps 60a2ebc493 - Fixed a bug with \r\n being mistakenly parsed wrong. Thanks to John_z 2002-05-07 20:59:47 +00:00
codemastr a88f70518c Fixed some free call typecasting 2002-05-01 20:13:37 +00:00
codemastr 29454d1c56 Fixed a socks scanner bug 2002-04-30 22:13:33 +00:00
codemastr f31620b194 Fixed a bug where except ban didn't work 2002-04-28 19:37:23 +00:00
codemastr 3bd9fbcccf Fixed a typo after make is done 2002-04-28 18:45:14 +00:00
codemastr 9834eb7566 Fixed some typos 2002-04-28 18:37:23 +00:00
codemastr ac6f01c0df Fixed another memory leak with the scanners 2002-04-28 18:28:49 +00:00
stskeeps d2db682c97 . 2002-04-26 12:42:33 +00:00
stskeeps 49c8a45728 . 2002-04-26 11:55:31 +00:00
stskeeps 0322db7ebd g 2002-04-25 19:58:45 +00:00
stskeeps 8d35c56efb - Some fixes with connect(). Knowing my luck this will fuck up to hell 2002-04-25 19:55:55 +00:00
stskeeps 9cf9781698 - Memory leak fixes with scanners 2002-04-25 14:28:32 +00:00
griever de9b9854b9 Fixed some stuff 2002-04-23 01:12:45 +00:00
codemastr 640404a4d5 Fixed some 64bit int cloak problems and updated credits 2002-04-19 20:24:41 +00:00
codemastr 13597dc40d Fixed some problems with sykper's patch 2002-04-19 19:43:39 +00:00
stskeeps 5d401a394e - Some more of skyper's security audit patch. Some of them were simply
unfair in regards to performance or blindly added strlcats/strlcpy
2002-04-18 19:05:22 +00:00
stskeeps b95b9d9e27 compile fix 2002-04-18 15:20:39 +00:00
stskeeps 491d6f70c2 First part of skyper's security audit patch 2002-04-15 20:17:36 +00:00
stskeeps f18eb925c4 - Documentation bug #0000152 reported by Tony at sexnet.org fixed regarding
example.conf being wrong about set::socks
2002-04-15 07:31:37 +00:00
codemastr 296b085008 Fixed a bug involving +H and oper counts 2002-04-02 21:28:43 +00:00
codemastr b0178e83bd Fixed a +c bug involving locops 2002-03-28 21:37:27 +00:00
codemastr 4a49f9b21f Fixed a /stats q bug causing a crash with sqlines with no reason 2002-03-26 22:50:27 +00:00
codemastr c20d8fb8f8 Fixed a win32 editor bug causing a crash when you click save multiple times 2002-03-25 21:10:51 +00:00
stskeeps e478bced2e .. 2002-03-25 07:57:46 +00:00
griever 0ce08bb11a blah 2002-03-25 04:48:01 +00:00
codemastr a7851a2b95 Made +I work under win32 2002-03-24 17:25:43 +00:00
codemastr e65a717cf4 Changed version to beta9 and updated documentation 2002-03-24 17:17:26 +00:00
codemastr 430121770f Added EXLIBS= to make custommodule 2002-03-24 17:11:24 +00:00
codemastr e55a6611c8 conf_unknown bug fix 2002-03-23 20:14:44 +00:00
stskeeps 1937f8c742 . 2002-03-23 19:32:21 +00:00
codemastr b516697885 Dynamic hook type system 2002-03-20 19:45:20 +00:00
stskeeps 94306ba8a5 - Cosmetic fix for /setident, found by juli .. 2002-03-20 16:38:37 +00:00
stskeeps c695ee4bcf - One little patch for humanity, one giant step for science.. 2002-03-19 21:14:24 +00:00
stskeeps ba08714e66 - Fix for desynch problem with the fix in /mode system, Thanks to Luke 2002-03-19 19:57:26 +00:00
codemastr 0f9d6e71e8 Updated doc/conf.doc 2002-03-19 16:49:36 +00:00
codemastr 9237ce85cf ... 2002-03-19 16:48:09 +00:00
codemastr f10832a977 Changed HOOKTYPE_JOIN to HOOKTYPE_LOCAL_JOIN 2002-03-19 16:41:43 +00:00
codemastr 7523a30430 Updated all modules to use 3.2-b8 format 2002-03-19 16:00:34 +00:00
codemastr 7587d594da Added HOOKTYPE_JOIN 2002-03-19 15:19:34 +00:00
codemastr 65a2668ede Added log {} syslog support 2002-03-18 23:26:12 +00:00
stskeeps ffea432f5a cfrap 2002-03-17 23:06:56 +00:00
stskeeps e679134624 - Fixed bug with mode buffer overflow .. I'm not 100% positive it works..
Thanks to larne, Luke, SciFi, panda, ^Tux^.. Syzop .. and the countless
  people bitching about their servers going down.
2002-03-17 22:39:06 +00:00
griever 12869627e6 This really should be in all changes files 2002-03-16 20:54:37 +00:00
griever 7819ffae6c Fixed m_oper +Oo bug. 2002-03-16 20:34:17 +00:00
stskeeps 73b7a8be1e - Fix with status needed for remote clients too. Found by
Craig/FrostyCoolSlug <Craig@e-tidalwave.org>
2002-03-16 18:09:15 +00:00
codemastr 0b632d5e71 Fixed a Chinese nick bug 2002-03-16 17:10:17 +00:00
stskeeps 0576528af0 Mroe shit 2002-03-16 16:54:55 +00:00
stskeeps ef43f0f2ca Fix with debugmode 2002-03-16 16:51:56 +00:00
codemastr 0c540e883f Converted commands to use module objects 2002-03-15 23:35:55 +00:00
codemastr 0131d9f325 /mkpasswd typo fix and doc/unrealircd.doc update 2002-03-14 01:24:20 +00:00
stskeeps 2399936a6a - Fixed leftovers of non- char *configfile compliance. Thanks to ace and
various other people ..
2002-03-13 22:03:42 +00:00
codemastr b4a6f24f80 Fixed a listen::options::serversonly bug 2002-03-13 21:18:09 +00:00
codemastr 2f449e0918 Module Insanity Prototype Fix 2002-03-13 20:45:06 +00:00
codemastr fd925b3c28 Module Insanity v1 2002-03-13 20:42:40 +00:00
codemastr 5753585026 Fixed a win32 editor line count bug 2002-03-12 23:36:25 +00:00
stskeeps 1c73d5ae45 . 2002-03-12 20:40:42 +00:00
stskeeps 1a9b9ccf1a more shit 2002-03-12 20:39:16 +00:00
stskeeps ce580bbe09 - Small release tricks 2002-03-12 20:29:17 +00:00
stskeeps 1c22a8257c - Compile fix for TS2ts 2002-03-11 14:17:56 +00:00
griever 335e30513c Fixed -Wall warnings for TSTime 2002-03-11 04:26:27 +00:00
codemastr 38c48fef75 Fixed an IPv6 problem 2002-03-10 20:25:09 +00:00
codemastr 662f6398f3 Release preparation 2002-03-10 19:24:16 +00:00
codemastr 420991af6a Removed my_name_for_link (unused) 2002-03-08 22:13:51 +00:00
codemastr 0f2ae3c278 Win32 fix with u_int16_t 2002-03-06 21:45:04 +00:00
codemastr 4823908acb Removed src/cio_main.c, src/cio_init.c, include/cio.h, include/ciofunc.h extremely old unused code 2002-03-06 21:43:59 +00:00
codemastr 03aa90bc43 ... 2002-03-05 23:22:21 +00:00
codemastr bef880aa6a Removed all remnants of PROTO() 2002-03-05 23:09:39 +00:00
codemastr b8fecd310f ... 2002-03-05 19:34:10 +00:00
griever 104e7200f5 FOO! 2002-03-05 00:49:03 +00:00
codemastr eaecb8c42a Win32 -Wall cleanup 2002-03-04 23:34:13 +00:00
codemastr c4d3ae9df1 Clean compile with -Wall 2002-03-04 21:31:01 +00:00
codemastr b60eb8f989 Readded examples to doc/conf.doc 2002-03-03 19:25:35 +00:00
codemastr 8de39f6dc5 Made extraflags be checked by deny version and fixed a +I bug 2002-03-03 16:04:51 +00:00
codemastr a46ebe1f38 Added various patches by Syzop 2002-03-02 17:18:11 +00:00
griever 78fa804531 blah 2002-02-25 19:56:49 +00:00
stskeeps 2b6390daa3 fixed problem with wrong moved cptr passwd 2002-02-19 16:19:36 +00:00
stskeeps 4aa8f59611 - Fixed #undef STRIPBADWORDS problem, patch by light 2002-02-18 15:37:52 +00:00
griever 3debe8680a -Wall -Wno-implicit 2002-02-16 21:31:51 +00:00
griever 1c9ee5c817 -Wparentheses 2002-02-16 20:54:51 +00:00
griever e5d74b9ae0 -Wformat 2002-02-16 20:40:12 +00:00
griever 6f8aca82f3 -Wunused 2002-02-16 20:15:41 +00:00
griever dbaab6e026 Fixed ugly code 2002-02-16 19:24:42 +00:00
codemastr d3e7ab8006 Credits update and htm fix 2002-02-16 16:48:40 +00:00
codemastr 3a4c06ffd3 Fixed a typo in the docs 2002-02-15 23:00:05 +00:00
stskeeps 73af1fd6e0 . 2002-02-15 22:50:37 +00:00
stskeeps 4fd3ec7525 . 2002-02-15 22:48:51 +00:00
stskeeps 19cd68a204 - lack of time sucks. openbsd problem 2002-02-15 22:46:33 +00:00
codemastr 2d7eb2c1b1 Possibly fixed the /who flags bug 2002-02-12 20:06:20 +00:00
stskeeps c5d855eb10 - Fixed m_rawto.c problem found by TheDarkOne 2002-02-11 20:41:25 +00:00
codemastr d29b6498fb Modified the _ fix to work on all OSes that need it 2002-02-11 17:08:18 +00:00
stskeeps 1f8489a471 . 2002-02-11 16:23:02 +00:00
stskeeps 02acda1628 - Fixed an issue with -x and /quit and whowas, found by RaYmAn 2002-02-11 16:16:25 +00:00
stskeeps fccb560c67 . 2002-02-11 14:34:46 +00:00
stskeeps 376e3d3d6f - Fixed a problem with Mod_Handler being **, found by andi 2002-02-11 13:29:11 +00:00
stskeeps f92fcae257 - Added SJOIN fix so it won't accept NULL channels 2002-02-11 12:48:27 +00:00
stskeeps 7c54ce70c9 - Added andi's OpenBSD fix for the symbol issue with prefix _ 2002-02-11 12:24:15 +00:00
stskeeps 0206d844e9 +- Added tainted variable. 3rd party modules must ++ this upon load,
+  -- upon unload. Will show a 3 in flags.
+- Added extras/m_rawto.c - 3rd party module. Fixed some documentation
2002-02-11 11:03:05 +00:00
stskeeps afcb0b2a03 - Made makefile ability to "make custommodule MODULEFILE=m_zline"
if m_zline.c is in src/modules/, it will get compiled. This SHOULD
  help 3rd party modules atleast
2002-02-11 10:24:11 +00:00
stskeeps 9194aece63 Various 2002-02-06 19:38:30 +00:00
stskeeps a9f1838c3e - Various fixes to virthost system, may fix some memory corruptions
and potential exploits.
2002-02-06 19:35:42 +00:00
stskeeps 78ef8effe9 - Various fixes to virthost system, may fix some memory corruptions
and potential exploits.
2002-02-06 19:33:21 +00:00
stskeeps 90d56ef4e5 fix broken 2002-02-06 15:03:15 +00:00
griever ae0f7643dd Fixing broken tokens 2002-02-05 23:47:44 +00:00
codemastr 30b0175a39 ... 2002-02-03 17:25:52 +00:00
codemastr bd6729ad93 More -Wall cleanups 2002-02-03 17:15:37 +00:00
stskeeps 51d0d59ced slight compile error 2002-02-03 15:11:55 +00:00
stskeeps 9daf3d0b73 - BEFORE you use event functions, LockEventSystem(), after,
UnlockEventSystem(). In EVENT() functions, the system _is_ locked.
  This might fix the double recursion mutex problem we got.
2002-02-03 15:09:49 +00:00
stskeeps 7805566ceb - Fixed loadmodule invisibility.so: undefined symbol:
get_umode bug, reported by James-Bond, #0000060)
2002-02-02 16:50:51 +00:00
griever c7fbfa3e92 Yeah yeah, blah blah shit 2002-02-02 02:24:44 +00:00
codemastr 8e7b926c31 Made the win32 version set read only log files to writable 2002-01-31 21:11:29 +00:00
codemastr 887a003b98 Added a shutdown confirm message box when you click the X in win32 2002-01-31 20:32:38 +00:00
codemastr 5a0d13d9fa Fixed a umode system error with unknown modes 2002-01-31 17:50:56 +00:00
codemastr 164869dca5 Documented the new set::scan::* directives in doc/conf.doc 2002-01-30 22:10:54 +00:00
codemastr 538c318eb6 Fixed win32 scanner bugs, and added a menu option to view log files in win32 2002-01-29 22:45:17 +00:00
stskeeps fa2e9760f9 - Changed some m_ functions into CMD_FUNC(m_*) 2002-01-29 13:48:00 +00:00
codemastr 5a366beda7 Scanner config changes 2002-01-29 00:21:57 +00:00
codemastr 0f6d91091e ... 2002-01-28 00:39:32 +00:00
codemastr 8be7cbab05 Made all functiosn use new-style parameter lists 2002-01-28 00:38:02 +00:00
stskeeps 112d928f11 - Fix for /version crash, reported by RaYmAn 2002-01-27 23:18:32 +00:00
stskeeps 6d239e28ec - -Wall cleanup cleanup with SSL AUTH problem 2002-01-27 22:40:11 +00:00
codemastr d10bc57b74 ... 2002-01-27 20:31:56 +00:00
codemastr 6b8c83ba85 Cleaned up a bunch of -Wall warnings 2002-01-27 20:28:41 +00:00
stskeeps 93f759f200 - Changed umode +I behavoiur to you have to be loading invisibility.so to ha
the +I functionality. Code is still in IRCd, but isn't used until module
  is loaded. Loading of this will cause an R to be added to /version
  flags. Hopefully this will satisify some people's thoughts about a so
  called spy tool being enabled by default. Also added flag_add(char *)
  and flag_del(char) for modules to add to flags string. -Sts
- Removed -win32 postfix for wircds, look in /version for W instead
- Removed ircnetwork part of /version
2002-01-27 18:07:20 +00:00
codemastr dc3f1ba227 Documented link::cipher and except tkl in doc/conf.doc 2002-01-26 20:47:42 +00:00
codemastr b549340657 Added except tkl 2002-01-26 20:38:12 +00:00
codemastr 8f68a64363 Made SHOW_SECRET defined by default 2002-01-26 18:16:02 +00:00
codemastr 15c765449b Fixed a t.next recode typo and added -pipe check for gcc 2002-01-26 17:54:14 +00:00
stskeeps ec5231f565 - Fixed some t.next's and replaced with codemastr method(tm) 2002-01-26 00:20:20 +00:00
stskeeps db060a11b8 - Fixed some minor issues with dialog interface for .pem SSL passwords
- Added makecert.bat / encpem.bat to src/win32, which are used in SSL release
2002-01-26 00:17:35 +00:00
stskeeps f52f030346 fix 2002-01-26 00:12:32 +00:00
codemastr 58c667c7c3 Added a win32 dialog for the SSL .pem passwords 2002-01-25 23:11:29 +00:00
stskeeps a3a04d9797 - Added link::cipher for #define USE_SSL, use this to select
ciphers, read example.conf for more. Closes #000016. Suggested by narf
2002-01-25 22:22:11 +00:00
codemastr 3e89146e19 Fixed a listener bug 2002-01-24 21:11:19 +00:00
codemastr ce009a31ba Fixed a win32 bug that causes the editor to cut text at 32KB 2002-01-24 21:00:09 +00:00
stskeeps e39a1f9884 zogg socks fix 2002-01-24 18:29:19 +00:00
stskeeps 7a7e2de05c - Added patch in #0000053 by |savage|, speedup in can_send 2002-01-24 17:48:04 +00:00
stskeeps 59084e02a1 +- Fixed #0000046 regarding Module_free memory leak 2002-01-24 17:44:03 +00:00
codemastr 6fda3150a6 Removed some useless tkl code 2002-01-22 20:19:40 +00:00
codemastr 6db9156993 Fixed a listener bug reported by Dragon974 2002-01-22 20:03:54 +00:00
codemastr e306a6e55c Recoded hooks to work like events 2002-01-21 18:25:20 +00:00
codemastr e72587c252 ... 2002-01-20 20:19:40 +00:00
codemastr eca91bee1f Fixed a module object bug involving static linking 2002-01-20 16:04:13 +00:00
codemastr 0b873a2b6b Recoded hooks to use module objects 2002-01-20 15:42:48 +00:00
griever c78c669fdd wtf.. 2002-01-20 00:01:36 +00:00
stskeeps 863e32a3d9 Problem with sendto_ops and null aclient->user fix 2002-01-19 18:12:22 +00:00
codemastr de2c5e6cc7 Various changes to the module system 2002-01-19 17:04:04 +00:00
griever 84c70bdd2f Blah... 2002-01-15 20:07:30 +00:00
griever aedfae229a Fixes about stuff 2002-01-15 04:32:00 +00:00
griever f65e857d4e sendto_ops is SNO_SNOTICE now 2002-01-15 04:27:14 +00:00
griever 587f4c4281 fix for stuff... made kline-address error easier to understand 2002-01-15 03:50:24 +00:00
griever f5f4e4500f Blah de poop! 2002-01-15 00:39:04 +00:00
codemastr dbda73fa56 Fixed various bugs and some cleanups 2002-01-14 20:01:36 +00:00
griever 0dd1483fc3 example.conf and m_oper fixes 2002-01-13 22:00:27 +00:00
griever 96d2cf936b MAXPARA removal 2002-01-12 22:18:48 +00:00
griever f7ab73f82e stupid error 2002-01-10 20:22:46 +00:00
stskeeps 12cdefe981 . 2002-01-09 13:52:25 +00:00
griever 8b6f528b54 *prays* 2002-01-08 02:17:05 +00:00
griever f512f9b901 now does a NOQUIT type thing for SQUITs 2002-01-08 02:14:49 +00:00
griever 819e0c98ea uh? 2002-01-08 01:14:28 +00:00
codemastr 2f67e63456 Updated INSTALL because people don't read channel topics 2002-01-08 00:22:55 +00:00
griever c2649c5438 Code cleanups 2002-01-07 22:42:45 +00:00
griever b34268dad0 Fixed gline bug 2002-01-07 22:35:12 +00:00
codemastr e20e9dfd85 Added Tkline, Tzline, and Gzline to the docs 2002-01-07 22:08:24 +00:00
codemastr 455d732636 Changed version to beta6 2002-01-07 19:19:47 +00:00
codemastr ba01670af2 Updated release notes 2002-01-07 19:12:37 +00:00
codemastr 9e42107355 Converted all calls to hunt_server to hunt_server_token 2002-01-07 19:01:07 +00:00
codemastr d25d7900df Added the ability to go to a specific line in the win32 editor 2002-01-07 18:41:57 +00:00
codemastr d48edbdf5c Added hunt_server_token 2002-01-07 16:07:02 +00:00
griever b1fce6bb63 omg... 2002-01-06 04:24:57 +00:00
griever ff4517fa8a ... 2002-01-06 04:09:44 +00:00
griever 2ed3bf18df Fixed compile bug with me not knowing structure stuff 2002-01-06 04:08:04 +00:00
griever 3a49482363 Fixed target limits 2002-01-06 03:50:07 +00:00
griever 1055c2b73c Yay, sts was drunk 2002-01-06 02:01:34 +00:00
codemastr 29f53a13c4 More editor changes 2002-01-05 20:32:30 +00:00
codemastr 40a014a66e Fixed a token error 2002-01-04 22:18:56 +00:00
codemastr 393217392f Removed some // comments 2002-01-04 00:30:05 +00:00
codemastr 711b771b39 Made a few cleanups to the win32 code 2002-01-02 21:35:26 +00:00
codemastr 0f93326707 ... 2002-01-02 21:21:30 +00:00
codemastr bdd52d3eb8 Made the win32 editor use a toolbar, and added XP GUI support 2002-01-02 21:20:29 +00:00
griever 8b753d84eb Moved some stuff to the local section of aClient
stuff is still commented out (don't whine about //comments
as the lines are gonna be removed anyway)
in case this makes it core
2002-01-02 04:21:21 +00:00
griever 70a129aac4 Doh, forgot to comment the & too... 2002-01-02 04:12:21 +00:00
griever f0ddd37c49 Removed archaic useless stuff 2002-01-02 03:46:14 +00:00
stskeeps d20059ea7d +- Removed some ancient debugging code (num - %s) 2002-01-01 16:40:00 +00:00
stskeeps bebebf6cdf +- Made support in *nix for encrypted SSL private keys,
+  "make encpem" to make an encrypted server key if you already have one
2002-01-01 16:25:29 +00:00
codemastr 3bdee011e9 Fixed a typo in example.conf 2001-12-31 16:29:09 +00:00
stskeeps 259b1a5eeb +- Fixed .1081 problem, see bug #0000020 for more information about how
+  it REALLY should be fixed
2001-12-31 00:55:48 +00:00
codemastr 49780c8113 Fixed a editor bug where it always says the file was modified 2001-12-30 20:55:51 +00:00
codemastr 9aeeca3ee8 Fixed svsnoop 2001-12-30 20:52:14 +00:00
stskeeps be3f21edd7 +- Fix for svsnoop symdep problem 2001-12-30 20:43:53 +00:00
stskeeps 407aa55e58 +- Fixed problem with EventDel, doing eventptr instead of eventptr->name
+- Fixed bug #0000019 reported by Syzop, and bug found by same to deal with
+  individual module loading
2001-12-30 19:51:31 +00:00
codemastr 08ad7f0816 Made tld::mask user user@host instead of just host 2001-12-30 17:39:33 +00:00
stskeeps 0f9b578baa +- Crash in scan_http fixed, h->in instead of &h->in = bad 2001-12-30 11:41:25 +00:00
stskeeps 976aa0cb77 +- doh, missing a ! in m_tkl.c that allows us to do bad things(TM)
+- Fix for nested comments, found by lnxgk
+- C++ comment fix, lnxgk again.
2001-12-30 08:48:41 +00:00
griever 929dd62144 *cant enter a commit log because he's too busy laughing at himself* 2001-12-30 07:54:22 +00:00
codemastr 4df1253ab3 Removed set::hosts::techadmin from all network files 2001-12-30 00:34:23 +00:00
griever 662ad36275 Fixed makenet so techadmin-host is gone 2001-12-29 23:40:46 +00:00
griever 75b989d67a added mutex.c 2001-12-28 23:10:30 +00:00
codemastr 5b5ed53edb Fixed a major events bug caused by drunken coding 2001-12-28 22:44:24 +00:00
codemastr 009a3d498c Fixed a /chgname bug where you needed a : to have spaces 2001-12-28 22:25:57 +00:00
codemastr 9b8b45099f Fixed a bug causing weird things to happen after /rehash 2001-12-28 22:14:13 +00:00
griever 5d0f93255b Grr.... 2001-12-28 21:38:52 +00:00
codemastr b4091f77ff Fixed an editor bug under WinXP 2001-12-28 17:47:38 +00:00
stskeeps 4934786273 +- Reversed freeze bug fix, _NP means NON PORTABLE
+- Fixed a freeze problem with conf_deny_link
2001-12-27 13:01:00 +00:00
griever 0d0a632f51 Fixed (I think) freeze bug in m_htm, this might not work on all pthread implementations 2001-12-27 06:01:15 +00:00
griever 3594f2ee45 Made it so "modulename.so" -> "./modulename.so"` 2001-12-27 05:59:05 +00:00
stskeeps c07e8962e5 +- Small fix for #427583 mode bug 2001-12-26 23:35:25 +00:00
griever 9c947f140e Duh... 2001-12-26 22:38:10 +00:00
codemastr 86206ed51c Fixed a win32 editor bug 2001-12-26 17:03:27 +00:00
stskeeps 836be977eb +- Actually enabled MD5, SHA1 methods when SSL was defined. (fix for drunk
+  coding)
2001-12-25 18:13:34 +00:00
codemastr 3859340b2a Fixed a bug in new-style oper flags making it ignore some flags 2001-12-25 18:10:39 +00:00
stskeeps b2ef3ec1b6 crypt fix 2001-12-25 13:29:50 +00:00
griever 5c0894e57c fixed bug in /stats o causing classless oper{} blocks to possibly core 2001-12-25 05:23:33 +00:00
griever 12cee06bf1 Fixed /map bug that allowed users to find U:Lined servers 2001-12-25 02:24:24 +00:00
stskeeps c753c7adc1 +- Fixes for ->user structures 2001-12-24 22:43:14 +00:00
codemastr 897a8cec60 Fixed a DEFAULT_PERMISSIONS bug 2001-12-24 22:34:02 +00:00
codemastr 548c108ecb Fixed a last minute win32 bug 2001-12-24 18:51:40 +00:00
stskeeps 7ec691c0ed +- make install fix 2001-12-24 13:54:59 +00:00
stskeeps 129bc36adf +- Fixed some slave work.. return MOD_SUCCESS; in all command modules.. 2001-12-24 11:19:49 +00:00
stskeeps 23bc0b40e6 +- Changed to beta5 2001-12-24 09:02:00 +00:00
stskeeps 6ccda4cc95 +- Added back good old error reporting in ./unreal start 2001-12-24 08:16:58 +00:00
codemastr 8480b860cf Updated /info 2001-12-23 23:29:51 +00:00
codemastr 8505657eab Final Release Cleanups 2001-12-23 23:08:27 +00:00
stskeeps 9dd3367f72 +- Credits fixes 2001-12-23 22:51:58 +00:00
stskeeps e888024e63 +- CIDR IPv6 fixes, scan_* fixes 2001-12-23 22:27:10 +00:00
codemastr 41f65241a4 Added a few network files 2001-12-23 21:26:52 +00:00
codemastr 77e03b3c91 Credits updates 2001-12-23 19:17:27 +00:00
codemastr 1a0131e9a9 Made a few updconf changes 2001-12-22 21:25:35 +00:00
codemastr cd2b8186e7 Documentation updates 2001-12-22 21:09:33 +00:00
codemastr 64ee79c5f5 Fixed a /time bug in win32 2001-12-22 20:51:06 +00:00
stskeeps f387fbbd4f +- Auth_Make fix for crypt method 2001-12-22 16:59:08 +00:00
stskeeps 3981a679c5 +- Changed SERVICES-NAME warning to error 2001-12-22 16:07:48 +00:00
stskeeps e65e01ddff +- Config parser fixes (bugs found by Souleh) 2001-12-22 15:42:21 +00:00
codemastr 68615a398f Fixed a typo in s_misc.c 2001-12-22 01:50:47 +00:00
codemastr c6266dc19c Fixed some other scanner bugs 2001-12-21 23:08:03 +00:00
codemastr dae5b893d1 Scan API cleanup, goto = evil 2001-12-21 22:58:00 +00:00
stskeeps a4de9ac1e2 +- Added #undef SECURECHANMSGSONLYGOTOSECURE - send only channel msgs to +z
+  people on +z channels
+- win32 fixes
2001-12-21 17:40:43 +00:00
stskeeps ea1e7b3f70 win32 fixes, again 2001-12-21 17:18:16 +00:00
stskeeps edd0b08139 win32 fixes 2001-12-21 15:05:59 +00:00
griever d9d5cdc910 m_sendumode done 2001-12-20 21:54:09 +00:00
griever 343f193e7b ...misspelling 2001-12-20 21:07:45 +00:00
griever a1b3eb1331 Fixed some errors 2001-12-20 20:55:45 +00:00
griever 3a482d26ca Dumbass bug... 2001-12-20 20:33:16 +00:00
griever 68bfeffa70 Slightly working m_sendumode recode, nits:
it will send to people only with ALL umodes, but with ANY of the
snomasks

blame it on sendto_umode and sendto_snomask for being wierdass
2001-12-20 03:46:00 +00:00
griever 6e42d09c50 beginning of new SMO code, testing to make sure it worky
new command format:
SMO modes :message
OR
SMO modes snomasks :message

if you want to use JUST snomasks, put "+" as the mode

the modes parameter accepts a snomask as long as there
isn't a mode with same name
2001-12-20 00:07:38 +00:00
griever 567f3b8fcb Compiles and works fine now :D 2001-12-19 00:53:36 +00:00
griever f8d1e81206 now lets see if it will compile 2001-12-19 00:04:32 +00:00
griever 6c6130fab6 Untested, not sure if it even compiles TKL shits, testing on t2n as soon as this is committed 2001-12-18 23:57:13 +00:00
stskeeps 7695fb209d +- Made link::hubmask and link::leafmask actually work properly 2001-12-18 17:39:10 +00:00
griever 2cc3eb2266 Changes modified 2001-12-17 20:34:39 +00:00
griever 4fca682f8c Error is getting really annoying... 2001-12-17 00:51:31 +00:00
griever 6e67d9dea0 added set::modes-on-oper (modes all opers get when they op up)
made Aa oflags include O
modified docs to reflect such
2001-12-17 00:43:51 +00:00
griever 5d2092858d Made +N give you +OaA as well, since everyone used it that way
Grr, it seems like such a hack to me but ok :(
2001-12-17 00:13:37 +00:00
codemastr 4291191149 Help system recode 2001-12-16 00:35:57 +00:00
griever d2a90a5101 *#($&@#(*$! 2001-12-14 22:48:20 +00:00
griever 5d5ffa3f06 !*@*$^%! I reported this bug MONTHS ago people! 2001-12-14 22:44:08 +00:00
stskeeps e881a256f4 +- Some scan unloading stuff 2001-12-14 14:29:21 +00:00
stskeeps 5171e9e08a +- Made "Module already loaded" a non fatal error (funny msg on rehash)
+- Fixed typical codemastr "Let's delete this from a list we haven't even
+  added it to yet *giggles and twirls around*" bug, do to with config_set_unknown
+- Fixed events bug, added recoded scan module, got a lot of stuff to fix so
+  far. Problems, unloading, (delay), tkl doesn't always sweep it all,
2001-12-13 21:59:37 +00:00
codemastr 2b2f767ca5 Added more HP-UX code 2001-12-12 21:19:30 +00:00
codemastr c4a8e970d3 Module v3 changes 2001-12-11 23:02:58 +00:00
griever 4e32d3a5dc Corrected credits, moved the #ifdef for NO_FDLIST 2001-12-11 21:24:18 +00:00
codemastr ccaa0f444b .. 2001-12-11 20:48:00 +00:00
codemastr c2420f2eee ... 2001-12-11 20:45:45 +00:00
codemastr eb4eb7a8c6 ... 2001-12-11 20:38:17 +00:00
codemastr b15292c980 Removed umode +T and oflags fue 2001-12-11 20:37:30 +00:00
griever 37f6ff3a10 Reflects m_oper recode and tkl oflags 2001-12-11 03:39:56 +00:00
griever 7689d54b8e +T is on its deathbed, expect it to be gone soon
m_oper mostly recoded
Various oflags now silently ignored by m_oper although kept in the oflags
var.
expect TEChat, the T oflag, and hosts::techadmin to be removed shortly
2001-12-11 02:37:32 +00:00
codemastr 0171967e18 Moved the mkpasswd program into the ./unreal script 2001-12-10 22:02:47 +00:00
stskeeps db82fc23b5 +- Module v3 bugfixes. cause: codemastr lack find n replace skill 2001-12-10 14:35:15 +00:00
codemastr 39562944c3 ... 2001-12-10 00:30:00 +00:00
codemastr 28af208a1b More module v3 fixes 2001-12-10 00:26:38 +00:00
codemastr 3b52789751 More module v3 fixes 2001-12-09 23:47:46 +00:00
codemastr 3d564a403f Fixed some more module v3 problems and upgrade all modules 2001-12-09 20:19:35 +00:00
stskeeps 26dff4eeba +- Small v3 fix with no dependency problem 2001-12-09 16:40:03 +00:00
codemastr 38588ba0b5 Fixed a win32 module v3 bug 2001-12-09 16:38:31 +00:00
stskeeps 07adb99680 +- Added module v3 code. Needs testing, and NO MODULES DOES NOT COMPILE 2001-12-09 10:44:11 +00:00
codemastr 89caaab24c Added HOOKTYPE_SERVER_CONNECT and HOOKTYPE_SERVER_QUIT 2001-12-05 23:02:33 +00:00
codemastr 573328e4e1 Added snomask +q for Q:line notices 2001-12-04 20:13:03 +00:00
codemastr 19c649fb90 snomask changes 2001-12-03 22:42:53 +00:00
griever 923624c784 Bug that caused m_oper to core randomly if oper was -x 2001-12-03 01:17:53 +00:00
griever 44be34875f Changelog.. 2001-12-02 20:51:49 +00:00
griever 1612ed7411 added can_gkline and can_gzline (for soon-to-come gzline module), old
flags are t and Z. Someone change docs accordingly
2001-12-02 20:45:17 +00:00
codemastr e872aa28a9 Converted a bunch of structures to use ListStruct 2001-12-02 17:57:24 +00:00
stskeeps abea394dc6 ---------------------------------------------------------------------- 2001-12-02 14:50:58 +00:00
stskeeps 528d82b219 +- Added ssl-pubkey auth method (parameter = pem file for public key) 2001-12-02 14:39:59 +00:00
codemastr 6d9cef9f03 ... 2001-12-02 02:06:54 +00:00
codemastr eb38fa93a3 Added cidr.c and ssl.c to the win32 makefile 2001-12-02 01:47:17 +00:00
stskeeps d7889e777e moo 2001-12-01 23:55:30 +00:00
griever fd638b155b *gets smacked by sts* 2001-11-29 21:12:06 +00:00
griever 503bf841fb *gets smacked by sts* 2001-11-29 21:00:20 +00:00
griever 69647bba3b Argh, no newline notices getting annoying now 2001-11-29 04:51:23 +00:00
griever b4bfa43e5b Added list of ppl I would like to thank :D 2001-11-29 04:49:43 +00:00
griever 67059bd3ae Changed the way ipv4 IPs are cloaked, you now need to crack all three
cloak keys to break ipv4 IPs. ip6 ips and hostnames are too ambiguous to
be susceptable.

#define COMPAT_BETA4_KEYS undoes this fix, and is required for ipv4 bans
to be interoperable between pre-beta4 and post-beta4 servers. This should
be defined on all win32 compiles at least until the first rc or final for
3.2
2001-11-28 20:39:20 +00:00
griever eb038e2938 added ANNOYING_BAN_THING to config.h, disabled by default
previous functionality: mode +b would check match() both
ways, but chanserv AKICK and bot auto-bans would break w/
this, as they would try to set for instance *!*@*.mrrmnh.adelphia.net
but if *!*@rox-1B7EB386.mrrmnh.adelphia.net were set (for example)
chanserv/the bot would flood kick them, over and over and over. No
real point to this one, so I just diked it out.

Modified Files:
 Tag: devel
 	include/config.h src/channel.c
2001-11-28 03:43:58 +00:00
codemastr 1780862cfc Added some functions for generic linked list modifications 2001-11-26 19:37:41 +00:00
codemastr 9d26bac09f ... 2001-11-26 15:56:44 +00:00
codemastr 0d2753331a ... 2001-11-26 15:50:04 +00:00
codemastr dcd9969537 Started some work on CIDR support (added some functions from hybrid7) 2001-11-26 15:40:43 +00:00
codemastr 5eea2a9daf ... 2001-11-26 15:39:13 +00:00
codemastr 893f67668f Fixed a FSU Pthreads bug on Slackware (thanks to Frank Mueller) 2001-11-24 00:34:26 +00:00
codemastr e43ac717cd Added host54.net to /credits 2001-11-22 16:18:58 +00:00
griever 9fdf9cd9e9 Typo fixes &stuff 2001-11-22 05:47:26 +00:00
codemastr e57336c9c7 Changed some function names 2001-11-19 20:30:30 +00:00
codemastr 28b8a0ef9b Fixed a minor events issue 2001-11-18 22:28:01 +00:00
codemastr 0a7e518e6f Redid the event system to be more accurate 2001-11-18 22:13:04 +00:00
stskeeps 62b2de07a7 +- Made delayed module unloading possible, make a int mod_delay() adding
+  an event, for e_unload_module_delayed
2001-11-17 14:54:32 +00:00
stskeeps 535aa4456a +- Made Events do thread locking (so we can do funny things and kill small
+  furry animals in the attempt for the perfect scanning module) .. yes, this
+  is drunken coding
2001-11-16 21:47:35 +00:00
codemastr abedc78b8b Fixed a make install problem and added some Auth support 2001-11-15 22:29:23 +00:00
stskeeps 197378a364 . 2001-11-15 22:00:37 +00:00
stskeeps c980e53fad . 2001-11-15 21:48:44 +00:00
stskeeps e9123b12db +- Added new auth.c API and a lot of different crap .. will document later 2001-11-15 20:26:52 +00:00
stskeeps 4f18b48a57 +- Fixed password crash bug, found by \dev\NULL-Z-[Zap] 2001-11-15 15:13:13 +00:00
griever 6bb18c87e5 Removed the three lines of code (!!) that caused the SSL freeze-on-connect
bug, gonna fix that error handling.
2001-11-14 20:28:13 +00:00
griever ca70706ad6 <----- Head coder 2001-11-14 20:16:49 +00:00
codemastr f6a3b1f399 Fixed the last of the font and editor-cutting-text bugs (hopefully) 2001-11-13 22:21:48 +00:00
codemastr 1a1a4ebd65 Fixed a codemastr(TM) drunk-coding win32 bug 2001-11-13 19:38:15 +00:00
codemastr aed84e3bf0 Win32 editor changes 2001-11-13 00:40:19 +00:00
codemastr 706c911fc3 Win32 GUI changes 2001-11-11 21:14:02 +00:00
codemastr 621793b491 ... 2001-11-11 00:36:24 +00:00
codemastr 0693a8dd27 Added the ability to edit tld {} files from the win32 editor 2001-11-11 00:34:24 +00:00
codemastr 5e14382326 Added hscroll to the win32 editor if it is needed 2001-11-10 23:45:31 +00:00
codemastr 4b8042603a Fixed a win32 bug where pasting text into the editor would use the wrong font 2001-11-10 20:55:11 +00:00
codemastr ab9db56291 Added support for PS_STRINGS and pstat 2001-11-10 18:13:05 +00:00
codemastr 2a595d3a87 ./unreal updates 2001-11-10 17:37:08 +00:00
codemastr 670c9ee653 Made the /kline hostmask checker work like the G:line checker, (it was too easy to K:line *@*) 2001-11-09 22:17:24 +00:00
codemastr c83f79a44a Fixed a bug that made the G:line host checker ignore ? 2001-11-09 19:32:03 +00:00
stskeeps e2ef04d112 +- VERSION M_SERVER fix by skold
+- Fixed connecting with IPv6
+- Ident requests now orgin with the listener that the user connected on
+- More IPv6 fixes, DNS resolving actually works now too.. (crackhead IRCnet
+  coding)
+- Webserver caching fix
2001-11-08 16:40:34 +00:00
codemastr 327f15d17c Fixed a win32 typo 2001-11-07 21:35:11 +00:00
stskeeps 0b01bc3852 Linux IPv6 Fixes 2001-11-07 13:48:42 +00:00
stskeeps 2c6726c95d .. 2001-11-07 13:29:06 +00:00
stskeeps 053cbcaae4 gr 2001-11-07 13:27:49 +00:00
stskeeps f8756691a5 . 2001-11-07 13:26:37 +00:00
stskeeps 2a55293bcc , 2001-11-07 13:25:54 +00:00
codemastr 2d21f6055d Added aliases/auspice.conf, and added a /register command to aliases/aliases.conf 2001-11-05 22:02:22 +00:00
codemastr afebe1568a Changed the setproctitle check to also check in -lutil (some OSes have it there) 2001-11-05 21:38:27 +00:00
stskeeps be48165fb6 +- Added some setproctitle(.., me.name) for extra l33tness :P~ 2001-11-05 21:30:23 +00:00
codemastr b960288402 Added autoconf check for setproctitle 2001-11-05 21:26:50 +00:00
codemastr cad8d53264 - Made ./unreal generated by configure to make sure it has the correct path of the exe 2001-11-05 20:47:39 +00:00
stskeeps 44a48a2dc0 +- IPv6 fixes for IP_OPTIONS (disables under IPv6, i mean .. IRC multicast.
+  WTF?)
2001-11-05 15:06:13 +00:00
stskeeps cca85ebe57 +- IPv6 fixes to make dual ipv4/ipv6 work 2001-11-05 14:33:18 +00:00
stskeeps 8e2cc100ce +- IPv6 fixes to Inet_si2p & Inet_si2pB 2001-11-05 14:11:36 +00:00
codemastr d11cc14a12 Fixed a bug where the win32 help dialog links were plain text 2001-11-05 00:07:10 +00:00
codemastr 29b7ea7ee8 Added make install and ./unreal utility 2001-11-04 22:09:30 +00:00
codemastr 9c49d0d3b1 ... 2001-11-04 20:12:38 +00:00
codemastr 8382e074e1 Fixed a win32 bug where the editor would cut off text 2001-11-04 17:55:10 +00:00
codemastr 49cf99c68a Updated module dependancies to allow a module to load the module containing the symbol 2001-11-01 20:57:19 +00:00
codemastr a5e31d042d Fixed a typo in makenet 2001-10-29 21:29:44 +00:00
codemastr 56fee9b881 Made some nameser.h changes to work win win32 2001-10-28 16:47:07 +00:00
cvs2hg a5d191e5ac fixup commit for tag 'unreal3_2_beta4' 2001-10-28 16:18:49 +00:00
stskeeps b9d034d6bd +- Preperation for beta4 2001-10-28 16:18:48 +00:00
stskeeps 9a97f7e249 +- Made the missing commands error a little more.. tardfriendly 2001-10-28 16:11:47 +00:00
codemastr d537da4058 Fixed a snomask bug found by Rob 2001-10-28 15:55:31 +00:00
stskeeps 58d81ad35f +- Fixed a DEBUGMODE problem with umodes.c 2001-10-27 13:18:49 +00:00
codemastr 6e17ab11f1 Fixed a nickserv password bug found and fixed by Mathieu 2001-10-23 21:25:34 +00:00
codemastr 0f2be18a1f Added M_RESETIDLE to fix a /privmsg bug 2001-10-17 20:04:23 +00:00
codemastr 22d5b9bee8 Changed the size of umodestring 2001-10-16 19:06:07 +00:00
stskeeps 6b10bee66d +- Made umode_delete(flag, mode); 2001-10-16 17:09:51 +00:00
codemastr 493697bbdf Added new umode system to the win32 makefile 2001-10-16 00:03:01 +00:00
stskeeps 66d3c85d23 +- Added umodes.c, long val = get_umode('c'); 2001-10-15 23:01:31 +00:00
stskeeps 3f9849b5fd +- Added a hell lot of DNS debugging code, and fixed the BIGENDIAN problem
+  with resolver. Thanks to dawn and Trash.net for shell on a sparc
2001-10-14 21:54:25 +00:00
codemastr 85ce15ddf7 Added a utility to auto create version.c for win32. 2001-10-14 19:49:48 +00:00
codemastr 7a9b14634b Removed tokens for /users, /summon, and /samode 2001-10-13 23:19:40 +00:00
codemastr 6b9b8a6da9 Fixed the Win32 Z:line bug 2001-10-13 19:32:05 +00:00
codemastr 7193f9615f Hopefully fixed the weird Z:line bug on win32? 2001-10-13 17:05:18 +00:00
codemastr e516af9535 Fixed a win32 bug where the http scanner didn't get loaded 2001-10-13 16:48:23 +00:00
stskeeps 9fc7398b87 +- Fixed codemastr-on-crack bug regarding oflag 2001-10-11 16:53:52 +00:00
cvs2hg 4e2a05f99a fixup commit for tag 'unreal3_2_beta3' 2001-10-08 17:29:47 +00:00
stskeeps 8b6e1d7166 Bugreport stuff 2001-10-08 17:29:46 +00:00
codemastr 19c8f1b7dc Final changes to prepare for beta3 2001-10-08 17:24:56 +00:00
codemastr 74d080b3fc Fixed a typo in config.h 2001-10-08 17:11:16 +00:00
codemastr 6bad7c8dfa Added headers to all the new modules 2001-10-08 17:06:32 +00:00
codemastr a274714cfa Made changes so the new modules compile on win32 2001-10-07 21:54:14 +00:00
stskeeps 79b4805745 +- Added in Fish's patches
+- Added bitching when you lack needed IRC commands
+- Removed REMGLINE
2001-10-07 20:28:15 +00:00
codemastr a05ec38409 updated makefile.win32 with all the new modules 2001-10-07 16:50:08 +00:00
stskeeps f9a92827ae +- Fixed a /who bug, found by IXpfah 2001-10-07 10:28:06 +00:00
stskeeps 2ac54ecc8b *** empty log message *** 2001-10-07 08:56:11 +00:00
codemastr f331b6919e Added aliases/ which contains aliases for popular services, and made makeconf load scan_http.so 2001-10-07 00:07:24 +00:00
codemastr 8bfbd374c3 Added some stuff that should fix the bug in Windows when including files in other directories 2001-10-05 23:21:04 +00:00
codemastr 3c9327788e Fixed a bug where /userhost would report oper status regardless of +H 2001-10-05 20:02:29 +00:00
codemastr 029c43afd1 Made the http scanner work on win32 2001-10-02 22:01:39 +00:00
codemastr 3b5b9db44f Fixed a win32 bug in scan.c 2001-10-02 21:52:02 +00:00
codemastr d24030d129 Made some changes to allow Unreal to compile on win32 2001-10-01 19:53:13 +00:00
stskeeps 3c633f425b +- Made port default to 6667 when options autoconnect in link {} 2001-10-01 13:24:11 +00:00
stskeeps 0d1a1e42d0 .. 2001-10-01 13:08:35 +00:00
stskeeps b571a80006 +- Made Link denied error a little more descriptive 2001-09-27 14:42:48 +00:00
stskeeps e38b645d11 . 2001-09-17 13:17:36 +00:00
stskeeps 8d3f493976 +- Fixed a #undef INET6 bug 2001-09-17 12:59:42 +00:00
stskeeps 1e438f3560 + fixing a IPv6 bug
+- Made Inet_si2p (sin to presensation), fixing the "*", bug, some debugging
+  fixes, fixed a lot of IPv6 bugs, hopefully - thanks to JK for borrowing
+  his box
2001-09-09 20:09:59 +00:00
stskeeps ee9f9d9af0 +- Removed bsd.c and made socket.c, moving signal stuff to ircd.c, possible
+  fixing a IPv6 bug
2001-09-09 09:43:56 +00:00
stskeeps a19ea15bd6 +- Fixed a IPv6 bindip problem 2001-09-07 12:22:31 +00:00
stskeeps 4ece596b39 +- Some more VFS/PHTML fixes, it actually works now, thanks to butter 2001-09-06 16:24:07 +00:00
stskeeps 09c6afc43e +- modulize documentation, some web server fixes, preparation for uabr 2001-09-06 13:54:31 +00:00
codemastr 5c86649f70 win32 makefile changes 2001-09-02 23:58:09 +00:00
codemastr 82ae1cbf63 Moved /svso and /svsnick to modules 2001-09-02 23:39:16 +00:00
codemastr 6a7e82d048 Made the config file a bit more sturdy 2001-09-02 20:16:10 +00:00
codemastr 3a815c775f Fixed a typo in the win32 makefile 2001-09-02 17:05:40 +00:00
codemastr 87b4e4e268 Updated updconf.c to use except scan 2001-09-02 16:21:38 +00:00
stskeeps 43e77f77bf +- HTTPd VFS fixes 2001-09-01 14:33:07 +00:00
stskeeps 614e22400a +- Made except socks become except scan, and made it actually WORK, and some
+  bugreport fixes
2001-09-01 13:27:17 +00:00
codemastr e04c12a2ea Win32 Cleanup 2001-08-31 21:23:11 +00:00
codemastr e4eec40d91 Removed some missed win32 debug code 2001-08-30 23:40:53 +00:00
stskeeps 1e1e1cdbb6 +- Added a bug reporting tool (still alpha) 2001-08-29 20:05:02 +00:00
codemastr aa98a583be Added the ability to add aliases like /identify 2001-08-29 19:28:52 +00:00
codemastr 0385ce8152 Module additions 2001-08-24 22:17:26 +00:00
codemastr 5cd4cb01f8 Fixed a log::maxsize bug where it would screw up when the file didn't exist 2001-08-24 20:44:33 +00:00
codemastr 2386f8d835 log::maxsize now supports 1MB, etc 2001-08-24 00:58:20 +00:00
codemastr 37e54912c3 Fixed a possible /oper bug 2001-08-23 23:39:53 +00:00
codemastr e7695b3920 Fixed a oper host bug 2001-08-23 23:24:31 +00:00
codemastr d365f0d165 Cleaned up /oper a lot 2001-08-23 20:20:59 +00:00
codemastr d8ba78a6c1 Added a bunch more webtv support, send PRIVMSG instead of NOTICE if +V 2001-08-23 17:44:46 +00:00
codemastr 08caa076ed aClient memory cleanups 2001-08-22 20:02:19 +00:00
codemastr d26b59a9e2 Started work on usermode +V 2001-08-22 16:59:03 +00:00
stskeeps a8f79f88db +- Added support for nested comments in the configuration file (by chasm)
+- Added chasm to /info
2001-08-22 13:06:06 +00:00
codemastr d5b5fa710c Moved SHOWCONNECTINFO define to set::options::show-connect-info 2001-08-21 18:23:43 +00:00
codemastr f24eba8c0d Fixed another alias {} bug 2001-08-20 20:09:37 +00:00
codemastr 823e638f0c Moved FAILOPER_WARN define to set::options::fail-oper-warn 2001-08-20 19:08:59 +00:00
codemastr 461d65148b Added bahamut usermode +R 2001-08-20 16:29:37 +00:00
codemastr ceb76ae6da Fixed another alias {} bug 2001-08-19 22:36:13 +00:00
codemastr 85a0944914 Fixed a bug in alias {} found by RaYmAn 2001-08-19 22:02:26 +00:00
codemastr 9417c9af8e Added alias {} to doc/example.conf 2001-08-19 21:30:27 +00:00
stskeeps 816b24afa5 +- Fixed some credits, recoded httpd (still in progress)
+- Disabled #undef PROPER_CORE
2001-08-19 20:16:18 +00:00
codemastr e7a8ad621e Added config directive alias for dynamic services commands, ex /nickserv 2001-08-19 17:45:57 +00:00
codemastr 07c95cff3f /mode cleanups 2001-08-18 19:11:03 +00:00
codemastr f8697288ec Fixed up http proxy scan and added SOCKS5 scanner 2001-08-17 17:29:42 +00:00
codemastr effda4c445 Fixed a /gline crash bug 2001-08-17 16:26:44 +00:00
stskeeps 769a2e42e3 +- Added scan_http, scans on 80, 3128, 8080 in a threaded manner 2001-08-12 15:07:04 +00:00
stskeeps 27c1195bac +- Some httpd stuff and a #define CHROOTDIR problem found by Zhadum 2001-08-12 11:54:34 +00:00
codemastr ffdf227cbc Fixed a win32 bug that caused crashes in the editor 2001-08-08 21:13:33 +00:00
codemastr 145cc3f7d3 Fixed a win2000 bug causing a crash 2001-08-08 19:31:58 +00:00
codemastr 5b6c60798e Removed some win32 stuff 2001-08-08 16:04:22 +00:00
cvs2hg 4fc33756f4 fixup commit for tag 'unreal3_2_beta2' 2001-08-07 17:12:30 +00:00
stskeeps 8e4abdfd2a +- Preparation for beta2 2001-08-07 17:12:29 +00:00
stskeeps 4ee2331d5c .. 2001-08-07 17:10:17 +00:00
stskeeps 44443c260c +- /who fixes regarding +I +H and crap 2001-08-07 16:39:53 +00:00
codemastr 9c41b1d76d Fixed a bug where operflag eyes didn't work 2001-08-07 16:01:46 +00:00
stskeeps 041f0f910f +- /who fix
+- Another /who fix, what crashed it I assume - helped by narf to find this
2001-08-07 15:19:37 +00:00
stskeeps 0e2ac061b8 +- Fixed vhost bug that forgot to add a \0 in the end of the string
+- /who fix
\ No newline at end of file
2001-08-07 12:29:23 +00:00
codemastr f766d70414 Fixed a umode2 bug that crashed the server 2001-08-06 17:28:29 +00:00
stskeeps 8665f36abc +- Fixed a SNOMASK problem found by Arantis 2001-08-06 15:02:07 +00:00
stskeeps 62939b2033 +- /who fix .. removed nick matching functionality.. 2001-08-06 09:51:10 +00:00
stskeeps ec7b2bc247 *** empty log message *** 2001-08-06 09:20:43 +00:00
stskeeps b1714abad9 . 2001-08-06 07:24:49 +00:00
codemastr 74bad8673a release notes changes 2001-08-05 23:41:33 +00:00
stskeeps 667d52199d +- Using bahamut /who now, this needs some testing.. 2001-08-05 23:38:17 +00:00
codemastr 409f1a95ab Fixed a major snomask bug found by narf 2001-08-05 23:08:59 +00:00
stskeeps ce54560b19 +- Docs prepare 2001-08-05 17:50:38 +00:00
codemastr 21d6293f4c Updated documentation 2001-08-05 17:37:28 +00:00
codemastr fb4525ab19 Fixed an oper-only-stats bug 2001-08-05 17:24:12 +00:00
stskeeps c64debf500 +- Fixed bug with SSL, detected properly and fixed by Chawmp 2001-08-05 16:43:13 +00:00
codemastr 871948d23a Added config check to determine the order to specify the ssl libraries 2001-08-04 18:28:37 +00:00
codemastr 90d9c1df8c Implimented snomask 2001-08-04 17:17:54 +00:00
stskeeps e158540a37 +- Fixed some more IPv6 stuff in httpd 2001-08-04 14:01:46 +00:00
stskeeps decae969ee +- Fixed a codemastr-on-crack /version bug, and fixed some IPv6 stuff in
+  scan*
2001-08-04 13:52:04 +00:00
codemastr bdeda461ed Added log::maxsize 2001-08-03 17:10:40 +00:00
stskeeps 9e3151a79e . 2001-08-03 14:24:49 +00:00
stskeeps d8eb70490a +- Fixed Osiris's example.conf
+- Fixed IPv6 bindip error found by Madkiss
2001-08-03 13:05:06 +00:00
stskeeps 9a089dd8bf . 2001-08-03 06:09:11 +00:00
stskeeps 3b4fe7b347 . 2001-08-03 06:06:53 +00:00
stskeeps a4c2faf453 +- Fixed Osiris's broken example.conf 2001-08-03 06:06:16 +00:00
codemastr c1edf8265f Fixed a win32 bug where /restart didn't remove the tray icon 2001-08-02 20:11:58 +00:00
codemastr 87296d9c89 Fixed some typos in s_conf.c 2001-08-02 19:46:14 +00:00
codemastr a6d3abb12f fixed some config stuff and added more network files 2001-08-02 00:36:35 +00:00
stskeeps 7ce43de8f7 +- Fixed bindip problem with it not being made 2001-08-01 19:53:53 +00:00
codemastr 739139d71e Fixed some config issues and added /stats r to stats help 2001-08-01 19:42:38 +00:00
codemastr 8c39ccec5e made the config recognize several values for a yes/no option 2001-08-01 18:06:34 +00:00
codemastr 082c2bfb1c Added set::anti-spam-quit-message-time idea from hybrid7 2001-08-01 17:01:59 +00:00
codemastr 1af13d4588 added set::oper-only-stats 2001-08-01 00:22:13 +00:00
codemastr 30039008df Removed some obsolete code 2001-07-31 21:29:32 +00:00
codemastr a2e17ca2fe Made the Win32 version report the actual OS to opers in /version rather than just say 'Win32' 2001-07-31 21:09:56 +00:00
stskeeps ff8bc65911 +- Fixed fence post marker overwrite in /vhost, found and fixed by tgf 2001-07-31 21:07:27 +00:00
codemastr 943436a1de Rewrote Addit, hopefully it fixes the SJOIN problems? 2001-07-31 17:39:41 +00:00
codemastr 64962b0ce7 Fixed a typo in the win32 makefile 2001-07-31 17:07:35 +00:00
codemastr e1167a2b2e Various win32 fixes and /restart cleanup 2001-07-31 17:00:45 +00:00
codemastr b0536af4e9 Fixed a possible restart/die bug 2001-07-31 16:37:11 +00:00
codemastr af87d2c18b Added more network files 2001-07-30 16:52:30 +00:00
stskeeps 5067013a80 +- Added tgf's patches for these bugs:
+   * if you dont have a rules file and do "rehash -motd" then the server
+   segfaults.
+   * setgid has to be called before setuid... cos if you change to a non-priv
+      uid first then you are not allowed to setgid!
+
+
2001-07-30 16:50:46 +00:00
stskeeps d7baf33ec3 +- Fixed SVSMODE compile error 2001-07-30 13:04:48 +00:00
codemastr e3a23bdbd1 Added SVSMODE # -e 2001-07-29 22:07:54 +00:00
codemastr ed9ead415c Added wildcard support to include and loadmodule in win32 2001-07-29 21:10:43 +00:00
codemastr 664f148366 Fixed a bug affecting /oper and /vhost caused by IP checking 2001-07-29 16:33:14 +00:00
codemastr 9861da3f1e added more network files 2001-07-28 17:40:53 +00:00
stskeeps 3d8f9eea24 +- Fixed SQLINE bug, FINALLY. (forgot to set type ..oops..) 2001-07-28 17:32:19 +00:00
codemastr 16d16095c7 Added 2 more network files 2001-07-28 01:03:27 +00:00
codemastr 9317a83683 Made a bunch of config errors non fatal 2001-07-28 00:51:35 +00:00
codemastr 7a5cd21953 SVSMODE # flags added 2001-07-27 20:45:39 +00:00
codemastr ae2b0cdf8b Added SVSMODE #channel -b nick to remove matching bans 2001-07-27 17:28:54 +00:00
codemastr d4af2c0207 Made my_itoa use _itoa on win32 2001-07-26 16:23:14 +00:00
codemastr 887f71760c Win32 code cleanup 2001-07-25 16:42:19 +00:00
stskeeps 682d1f26f8 . 2001-07-25 14:35:20 +00:00
codemastr bd3d626cdb network file updates 2001-07-25 00:26:50 +00:00
stskeeps 72512f54db +- More SQLINE fixes.. does it work now? 2001-07-24 22:13:33 +00:00
stskeeps 5132528ca4 sqline 2001-07-24 17:11:59 +00:00
stskeeps 96b14ad6c5 +- Fixed SQLINE problem 2001-07-24 16:58:56 +00:00
codemastr 2ca9d3d6d7 Removed all the obsolete network files 2001-07-23 20:54:41 +00:00
stskeeps b919813837 +- Made CR compatilbity actually work, it autojoins now :) 2001-07-23 18:19:52 +00:00
codemastr ce8eec12ab Fixed a /rehash -motd bug 2001-07-22 16:02:01 +00:00
codemastr c50086fc3c Fixed a scan_socks bug under win32 2001-07-21 16:04:37 +00:00
codemastr 1686954b28 Fixed a win32 bug dealing with the new RTF parser 2001-07-20 21:10:31 +00:00
codemastr aeb3aad5fe added a 3d edge to the color selector in win32 2001-07-20 17:29:37 +00:00
stskeeps 6e98479aae . 2001-07-20 16:37:23 +00:00
stskeeps 9d88337a9b scan_socks stuff 2001-07-20 16:33:53 +00:00
codemastr 37f97c5b49 Fixed a bug in the win32 status dialog 2001-07-20 16:31:23 +00:00
stskeeps 699f22a0fb . 2001-07-20 16:26:34 +00:00
codemastr 023032c213 Fixed a bug in the new editor 2001-07-19 21:25:57 +00:00
codemastr c0bb81d1ca Major changes to the win32 editor 2001-07-19 17:37:58 +00:00
stskeeps e102ce8603 +- Added in Ossie's example.conf v2 2001-07-18 07:57:33 +00:00
stskeeps 4756c12519 +- Patched in zogg's scan_socks patch, second edition 2001-07-18 05:34:46 +00:00
stskeeps fa37709af6 +- Added correct uptime to web interface 2001-07-17 21:37:47 +00:00
stskeeps ae4eb55dac +- Fixed some flaws in httpd, that made it break unmercifully 2001-07-17 21:20:42 +00:00
stskeeps 8d0bcef963 +- Minor bugfix in scan_socks, + some comments 2001-07-17 08:45:08 +00:00
codemastr a424c8063a Fixed a /sapart bug 2001-07-16 20:34:54 +00:00
codemastr 7b515e04a5 Added a patch by Zogg to fix a socks scanner problem 2001-07-16 20:24:14 +00:00
codemastr c5c3b2081d made options to make /stats K and /stats G oper only 2001-07-16 18:03:59 +00:00
codemastr 9378291b21 ... 2001-07-16 17:53:00 +00:00
codemastr acf66442e8 Various bug fixes 2001-07-16 17:51:18 +00:00
stskeeps c4d4754511 +- Fixed possible bug with allowing :'s in +k/+L ..
+- Added a credit
2001-07-16 07:41:35 +00:00
codemastr 3fa29a16e5 Various fixes 2001-07-16 00:59:34 +00:00
stskeeps 9406e963de . 2001-07-15 20:51:57 +00:00
codemastr 26f91d1c7e Some gcc 3.0 fixes and other stuff 2001-07-15 20:43:50 +00:00
stskeeps 83c0a3738d +- Fixed struct IN_ADDR problems on some OS'es 2001-07-15 18:40:13 +00:00
stskeeps 5393853cac +- Fixed -nexus.nexusirc.org- *** Notice -- Trying to send [:Alzirr WALLOPS
+  :test bug, found by Alzirr
2001-07-15 18:38:07 +00:00
stskeeps 43b56373c4 +- Fixed *** nick has quit (no Days come, days go), by defaulting to "Quit: " 2001-07-15 18:32:02 +00:00
stskeeps e6df04d821 +- Fixed some CHINESE_NICK stuff 2001-07-15 18:23:45 +00:00
stskeeps 1b285c492f *** empty log message *** 2001-07-15 17:49:53 +00:00
codemastr 202a064904 ... 2001-07-15 17:18:35 +00:00
codemastr 42cbdce0bd Few little bug fixes 2001-07-15 17:13:56 +00:00
stskeeps 52dbb6c0dc . 2001-07-15 10:27:35 +00:00
stskeeps c53bee2244 +- Commited the web server prototype made by Stskeeps, web design by WildChild
+- Ripped out the old DF watch system, using bahamut's now
2001-07-15 10:25:59 +00:00
stskeeps a4b63af2e1 +- Commited the web server prototype made by Stskeeps, web design by WildChild 2001-07-14 21:04:16 +00:00
stskeeps 9b6a674d9c +- Various preparitions for beta1 2001-07-13 20:47:44 +00:00
stskeeps 748c2830c0 +- Changed version to -beta1 2001-07-13 19:55:02 +00:00
stskeeps b66d4a8b0d +- Documentation bug fix 2001-07-13 19:40:04 +00:00
stskeeps 8de27cef2a +- Documentation (example.conf from Osiris) 2001-07-13 19:32:28 +00:00
stskeeps 40f7f0b104 +- Removed the redefining stuff in s_conf.c 2001-07-13 17:18:30 +00:00
stskeeps c8c5ff9571 . 2001-07-13 12:39:21 +00:00
stskeeps ae3ac9012d . 2001-07-13 12:10:43 +00:00
stskeeps 7de9d2d6a6 ... 2001-07-13 11:42:40 +00:00
stskeeps 351a8b48ec . 2001-07-13 11:19:44 +00:00
stskeeps 29ad0e8ff0 +- Fixed u_intXX_t problem 2001-07-13 10:59:15 +00:00
stskeeps 3c7ce7454d +- Fixed some possible points of confusion with hash.c regarding unsigned int
+  & signed int
2001-07-13 08:38:14 +00:00
stskeeps 519a8f893e +- Fixed problem with MAXCONNECTIONS when no parameters given in ./configure 2001-07-12 22:36:19 +00:00
stskeeps ce66aaad96 +- Fixed a validate_conf problem found by Janos
+- Fixed some minor invalid numeric stuff
2001-07-12 18:11:25 +00:00
codemastr 1b5e8d03c2 Fixed a ban bug where temp bans were not cleared on rehash 2001-07-12 17:20:23 +00:00
stskeeps dc1a1f4be0 +- Minor SJOIN fix .. 2001-07-10 11:14:12 +00:00
stskeeps c6e8b4b28b +- Added possiblity to add parameters to configure in Config 2001-07-10 09:52:44 +00:00
stskeeps 510a8fb9c2 . 2001-07-09 22:36:20 +00:00
stskeeps bd1a3ecf55 . 2001-07-09 22:36:19 +00:00
stskeeps 463aa1532c . 2001-07-09 22:34:02 +00:00
stskeeps 962be3514c . 2001-07-09 22:30:12 +00:00
stskeeps ab60bb826c . 2001-07-09 22:08:39 +00:00
stskeeps fd558d0675 +- Some configure.in fixes to pthread stuff 2001-07-09 21:18:10 +00:00
stskeeps 409d1f248a . 2001-07-08 20:23:21 +00:00
stskeeps 295a4468f7 +- Made badword fix found by eternal/Jsmj
+- Changed pthread process check to pthread_join on proposal and idea by
+  codemastr
2001-07-08 20:08:30 +00:00
stskeeps 6b9a544188 . 2001-07-08 16:24:41 +00:00
stskeeps 4d24208f23 *** empty log message *** 2001-07-08 16:19:01 +00:00
stskeeps 883d888620 . 2001-07-08 15:43:38 +00:00
stskeeps 9e0b621890 . 2001-07-08 14:55:33 +00:00
stskeeps 3bb6eb48bb +- Made badword fix found by eternal/Jsmj 2001-07-08 14:53:51 +00:00
stskeeps 137df47190 +- Fixed a documentation bug in unrealircd.conf.txt, made config_error
+  actually bitch when loop.ircd_booted
2001-07-07 08:12:21 +00:00
stskeeps c2d74a527a +- Fixed some rant stuff 2001-07-06 15:32:03 +00:00
stskeeps ad3de916c8 +- Fixed so we compile without symbols in win32 .. 2001-07-05 18:11:35 +00:00
codemastr 2a921e28a7 Fixed a little scan.so bug 2001-07-05 17:41:44 +00:00
stskeeps cfd4e898d8 . 2001-07-05 16:53:02 +00:00
stskeeps 41246edb24 - Made scan_socks & scan work under win32. Only bug is a \1 IP in /quote scan (?) 2001-07-05 16:36:14 +00:00
stskeeps 615936938b Made win32 work 2001-07-04 14:10:08 +00:00
codemastr dd7b98a4c2 Fixed an SVSFLINE bug when removing an unknown dccdeny 2001-07-03 22:10:26 +00:00
codemastr 55becdc356 various fixes 2001-07-03 21:38:37 +00:00
codemastr 80c9185de9 Updated m_template.c to use module version 2 2001-07-03 16:53:59 +00:00
stskeeps 33c6693da0 . 2001-07-03 14:39:25 +00:00
stskeeps 477df429d3 +- Made a /scan fix, and fixed some version numbers found by Morbid 2001-07-03 14:20:45 +00:00
codemastr 0a5b46f054 Win32 fixes 2001-07-02 22:47:00 +00:00
stskeeps 50d86c6013 *** empty log message *** 2001-07-02 20:36:19 +00:00
codemastr b22821ec55 Removed a bunch of unused code 2001-07-02 20:32:53 +00:00
codemastr f585e79a0b ... 2001-07-02 20:24:12 +00:00
stskeeps 8d2bbbab95 +- Fixed some IsToken / sendto_serv_butone screwups, actually think they're
+  codemastr(TM) coding
2001-07-02 19:17:53 +00:00
stskeeps 62a39b24d7 +- Minor cosmetic fixes, and SVSNLINE (ban realname).
+   SVSNLINE + reason_why_moo :realname mask - Add global ban realname
+    ('_' is converted into spaces)
+   SVSNLINE - :realname mask             - Remove global ban realname
+   SVSNLINE *                            - Wipes all global ban realname
+- Fixed FIXME dcc_deny_wipe_services
+
+
\ No newline at end of file
2001-07-02 18:31:42 +00:00
codemastr 29a0ae1871 removed a few missed userload.h references 2001-07-02 17:59:29 +00:00
codemastr f3e02b9ada Removed include/userload.h (not used) 2001-07-02 16:30:06 +00:00
codemastr 63b3220971 Updated the stats help list for newconf 2001-07-02 16:21:24 +00:00
stskeeps e9f47d1271 . 2001-07-02 09:17:50 +00:00
stskeeps d3aef18d3e . 2001-07-02 08:26:25 +00:00
stskeeps e01cf0f3f4 +- Random cosmetic fixes 2001-07-02 08:24:04 +00:00
codemastr 9f19792b95 fixed some misc rh7 warnings 2001-07-02 00:57:57 +00:00
stskeeps ad7a03644c +- /htm fix by Griever 2001-07-01 23:14:14 +00:00
stskeeps b3ec92858a *** empty log message *** 2001-07-01 22:34:31 +00:00
stskeeps 2fe7e4986f +- Some /info stuff, updated docs, .CHANGES.NEW, .RELEASENOTES 2001-07-01 22:32:44 +00:00
stskeeps af397fa6c2 . 2001-07-01 20:11:08 +00:00
codemastr c36797d8f1 Fixed a scan bug on rehash 2001-07-01 19:44:49 +00:00
stskeeps 514a1026eb +- Added some thread debugging, and fixed a SVS2MODE bug 2001-07-01 10:14:46 +00:00
stskeeps 189242d07c . 2001-06-30 16:26:22 +00:00
stskeeps e6fd53f363 . 2001-06-30 12:06:23 +00:00
stskeeps 5795f3c489 +- Fixed some minor mod_load troubles, and made it go a little more sensible
+  regarding retarded rehashes
2001-06-29 23:28:18 +00:00
codemastr 0053fe0b8a Made a minor message change to ./Setup 2001-06-29 21:47:35 +00:00
codemastr e959419e4a Rewrote updconf to actually work 2001-06-29 21:44:06 +00:00
stskeeps 52fd41449e - Fixed a pthread_join 2001-06-29 18:44:29 +00:00
codemastr 6d3b664922 Updated thread porting code to support more functions 2001-06-29 18:38:11 +00:00
stskeeps 5357d536a1 +- Moved blackhole into scan.c and removed blackhole.c, and fixed some
+  blackhole bugs.
2001-06-29 18:37:33 +00:00
codemastr 89ac1c8723 fixed a module bug 2001-06-29 15:02:54 +00:00
codemastr 09e4767c45 module changes 2001-06-29 14:57:21 +00:00
codemastr c2e3552039 Made unreal call all the mod_unload's when it shuts down 2001-06-29 14:03:16 +00:00
stskeeps f2bd92c9ad +- Made version.c depend on ../Changes 2001-06-29 09:48:05 +00:00
stskeeps de306fc395 +- Commited the +k fix to +L 2001-06-29 09:04:40 +00:00
stskeeps 7680ec834a -- Made glob() use GLOB_LIMIT on OpenBSD 2.9 to help prevent a DoS
+- Fixed autoconf/Makefile screwup caused by codemastr
+- Fixed a problem with IPv6 always enabled (could you check this fix, code?)
 - Fixed a bug allowing channek keys to have spaces
 - Cleaned up some thread porting code
 - Added a new versioning system to allow easy tracking of bugs
+- Made glob() use GLOB_LIMIT on OpenBSD 2.9 to help prevent a DoS
 - Fixed makeconf
+- Changed the way modules work. We're now at MOD_VERSION 2
+- Changed ALL MODULES to version 2
2001-06-28 20:30:54 +00:00
codemastr a499f98271 fixed makeconf 2001-06-27 21:40:59 +00:00
codemastr dfb1942aba added a new versioning system to help track bugs 2001-06-27 20:53:47 +00:00
codemastr 91c6e584e6 cleaned up some thread porting code a bit 2001-06-27 17:16:39 +00:00
codemastr 794500dbc5 Fixed a bug allowing channel keys to have spaces 2001-06-27 15:44:52 +00:00
codemastr 2c9232113e Made glob() used GLOB_LIMIT on OpenBSD 2.9 to try and stop DoSing 2001-06-27 15:38:10 +00:00
codemastr d276e9a197 added IPv6 support to ./Config 2001-06-27 00:35:42 +00:00
codemastr 16e06cb6a0 Added the ability to use file globs in loadmodule and include 2001-06-26 23:45:56 +00:00
codemastr e03c23820a added configure check for glob.h 2001-06-26 23:44:59 +00:00
codemastr 95d1575c54 removed some remnants of umode +b 2001-06-26 19:57:49 +00:00
codemastr 2fe33658f3 cleaned up mod_depend a bit to look nicer 2001-06-26 17:08:54 +00:00
stskeeps 724f829a0e +- Added in Griever's SJOIN fix 2001-06-26 09:27:44 +00:00
stskeeps 0246583fe1 +- Added mod_depend checking, see scan_socks.c for example 2001-06-25 23:34:15 +00:00
codemastr e604a72114 Fixed /stats to work fully with newconf 2001-06-25 20:13:37 +00:00
codemastr 740084b6d9 Fixed a bug where configure would pick both -ldescrypt and -lcrypt 2001-06-25 19:58:21 +00:00
codemastr df21d67573 moved swhois and svsmotd to modules 2001-06-24 21:03:08 +00:00
codemastr a3e375745c moved svsmode and svs2mode to m_svsmode.so 2001-06-24 20:36:05 +00:00
codemastr d30a4f619c Added a little utility to make converting an m_* command to a module easier 2001-06-24 19:55:35 +00:00
codemastr 3b0d162573 too lazy to write a real message 2001-06-24 19:40:56 +00:00
codemastr 3aa24503f5 Fixed a rehash bug dealing with stderr 2001-06-24 17:12:31 +00:00
codemastr 3e656cf43e ... 2001-06-23 20:14:46 +00:00
codemastr 793a447df1 ... 2001-06-23 20:14:45 +00:00
codemastr c88e6392c0 ... 2001-06-23 20:12:37 +00:00
codemastr 412b6fdec3 ... 2001-06-23 20:10:42 +00:00
codemastr 9952f21f5b Made Unreal use FSU Pthreads if the system has 'broken' pthreads 2001-06-23 20:08:16 +00:00
stskeeps 2f9a35ed6f +- Some more INET6 fixes 2001-06-23 13:57:14 +00:00
stskeeps 6eb059436b +- Taking some more Config changes 2001-06-22 22:10:27 +00:00
stskeeps c85f59cfe3 . 2001-06-22 21:51:44 +00:00
stskeeps 432f632839 . 2001-06-22 21:46:05 +00:00
stskeeps d2ea4937ed blah 2001-06-22 21:43:37 +00:00
stskeeps 6cf10d76c9 . 2001-06-22 21:33:01 +00:00
stskeeps 323f7f67be +- Fixed a configure.in error with IRCDLOBS 2001-06-22 21:29:01 +00:00
stskeeps 776fa42cf7 +- Some more more configure.in fixes, regarding -export-dynamic, and buffer
+  pools, and some illegal if test $var = othervar
2001-06-22 21:10:13 +00:00
stskeeps 12eabdba06 +- Some more configure.in fixes, and made ./Config -q & -quick (do not ask
+  questions, just run with data in config.settings)
2001-06-22 20:53:00 +00:00
stskeeps 266b0bb33f +- Moved config/ to autoconf/
+- Some fixes to configure.in that seemly got deleted?
2001-06-22 18:10:26 +00:00
stskeeps 432b8296f4 +- Moved config/ to autoconf/ 2001-06-22 17:17:11 +00:00
stskeeps 82f62f84be OpenBSD bug fixes 2001-06-21 21:02:12 +00:00
codemastr 5ceda9a5ac *** empty log message *** 2001-06-20 17:48:03 +00:00
codemastr 7f62aab7d3 Fixed a few configure problems with sunos and amiga 2001-06-20 16:55:35 +00:00
codemastr cc4596cf7e Fixed the keywalk bug reported by BaTmAn 2001-06-19 16:15:43 +00:00
stskeeps d269e1a8a1 +- Made CRYPTOIRCD get cached in config.cache
+- Fixed generation of certs, moved from configure.in to Config
+- Fixed lack of -lssl
2001-06-19 16:09:48 +00:00
codemastr a46aa2a4bb Config changes 2001-06-19 15:46:24 +00:00
stskeeps 5b7168d1e1 +- Minor fixes to Config, a license, etc 2001-06-19 15:26:08 +00:00
codemastr 82c52cb2a9 rewrote Config to be more of an interface than a standalone config utility 2001-06-19 01:03:21 +00:00
codemastr de215877c1 fixed a typo in configure 2001-06-19 00:28:38 +00:00
stskeeps ee1c51020b +- Config fixes, settings.h and Makefile.dist are now dead. RIP. 2001-06-18 20:55:48 +00:00
codemastr f40ec73cbb ... 2001-06-18 20:21:57 +00:00
codemastr aa5ee8b79f added ./configure (autoconf generated configure script 2001-06-18 17:19:35 +00:00
codemastr e28fe9d777 Added numeric 005 NETWORK= token support 2001-06-17 17:03:13 +00:00
stskeeps 00ed3759bb +- Fixed some scan-socks and blackhole fuckups 2001-06-17 17:02:09 +00:00
codemastr ca95bdbbed Fixed a quarantine bug(?) 2001-06-16 15:18:44 +00:00
stskeeps 63170bd946 +- Removed the old SOCKS check code. 2001-06-16 10:36:08 +00:00
stskeeps 0abf279a66 +- Fixed a codemastr screwup in quarantine code 2001-06-15 21:06:10 +00:00
stskeeps a0538911d4 \ No newline at end of file
+- Made blackhole.so work
+- Fixed a set_non_blocking bug
2001-06-14 15:31:42 +00:00
stskeeps 901bcc8a41 +- Made blackhole.so work 2001-06-13 14:13:32 +00:00
codemastr fe9735bd4e Added link::options::quarantine 2001-06-11 15:21:08 +00:00
codemastr 3196657cd4 removed agent.c updated win32 makefile 2001-06-11 14:44:13 +00:00
codemastr b18a357202 rm 2001-06-11 14:43:54 +00:00
codemastr 49030ee0dd Added hook HOOKTYPE_PRE_LOCAL_CONNECT 2001-06-11 14:39:08 +00:00
codemastr f5fa79afac added numeric 105 in /version 2001-06-11 14:18:40 +00:00
stskeeps 78520f8cd0 +- Fixed double dependicies bug.. stupid dlsym 2001-06-10 21:57:39 +00:00
codemastr 8db346ed62 Added some pthread checking support 2001-06-10 20:43:47 +00:00
stskeeps 29b19f988b +- Minor src/Makefile screwup fix 2001-06-10 20:42:38 +00:00
codemastr 8e4f620f7d Allowed capturing of unknown set {} variables by modules (conf_unknown_set) 2001-06-10 20:24:23 +00:00
stskeeps 8f28d5f0d5 +- Fixed /quote sethost : and /quote setident : exploit, found by ac1d, fixed
+  by Griever
2001-06-10 19:50:24 +00:00
cvs2hg 2186d042ca fixup commit for tag 'unreal3_2_12june' 2001-06-09 19:56:22 +00:00
stskeeps 5dfe97a9c6 +- Fixed up scan_dummy.c 2001-06-09 19:56:21 +00:00
stskeeps 3aebacf774 +- Fixed some scan_socks problems - this needs a good hand with 2001-06-09 19:06:42 +00:00
codemastr 26a828bf41 Unknown ban * {}, except * {}, deny * {}, allow * {} are accessible to modules 2001-06-09 17:05:12 +00:00
stskeeps fecfd72417 +- Fixed problem with u_int32_t servicesstamps, with SVSMODE and SVS2MODE,
+  found by Andrew Church
\ No newline at end of file
2001-06-09 15:30:01 +00:00
codemastr d9941457ad Added hooks to allow you to add config blocks 2001-06-08 16:55:53 +00:00
codemastr 6ba33745e2 win32 thread change 2001-06-07 18:19:34 +00:00
codemastr e889beec33 Updated the win32 thread code (maybe it will work now?) 2001-06-07 17:43:32 +00:00
stskeeps d043dc3187 - Fixed codemastr's broken millitime patch (sys/timeb.h)
- Added scan_socks.c, added and moved some stuff to
  include/modules/scan.h (the dir too)
- Converted threads to IRC*Thread by codemastr.
2001-06-07 16:22:32 +00:00
codemastr 63a3ef308d Made match() a little bit faster 2001-06-06 20:05:16 +00:00
codemastr 870119644d Made militime() just as accurate on win32 as on linux 2001-06-05 21:10:21 +00:00
stskeeps 66235b4610 minor fix 2001-06-04 18:34:26 +00:00
codemastr a3b000358e ... 2001-06-04 18:31:14 +00:00
stskeeps ddcdba2e86 - Fixed bug with changing nicks 2001-06-04 11:45:46 +00:00
stskeeps ad0e3539da - Changed how hooks work, making them support voidfuncs
- Added src/modules/scan.c and src/modules/scan_dummy.c
2001-06-04 10:17:16 +00:00
codemastr 66638d66c4 ... 2001-06-03 23:05:33 +00:00
codemastr 5e482c1059 ... 2001-06-03 23:01:24 +00:00
codemastr 740eac2273 fixed a win32 bug 2001-06-03 22:46:31 +00:00
codemastr 595f52c11c made Unreal reload its tray icon if explorer restarts 2001-06-03 15:13:03 +00:00
codemastr 4ba5ad7885 fixed a /stats c = crash bug 2001-06-01 22:49:32 +00:00
codemastr 40f3c69ed5 Made Unreal run correctly on OpenBSD 2001-05-28 14:49:48 +00:00
codemastr b872ad1912 Made a popup menu for the tray icon to contain the same 'buttons' as the GUI does 2001-05-27 20:04:34 +00:00
stskeeps 0b46646765 - Fixed /whois problem, maybe introduced some others?
- Removed send_out_svsmode, not in use and broken too
- Made Config say Unreal3.2
2001-05-27 19:56:19 +00:00
stskeeps 7cd4856373 +- Made newconf state unknown directives (found by Madkiss)
+- Small s_socks.c bugfix possible causing indetectable socks
2001-05-27 13:11:58 +00:00
stskeeps 68eb489f36 +- Made validate_configuration check for !conf_listen 2001-05-27 10:02:31 +00:00
stskeeps bacf06d3eb +- Merged McSkaf's hostname patch, debug patch, s_misc patch 2001-05-26 19:27:14 +00:00
stskeeps 886549cf13 - Made slot arrangement be different. 2001-05-26 18:08:38 +00:00
codemastr 97a11dbea9 Made the Status Dialog update its values every 5 seconds 2001-05-26 15:55:08 +00:00
codemastr b8b748a940 Added McSkaf's rehash patch 2001-05-26 15:40:09 +00:00
codemastr 5b66562e97 updated win32 makefile 2001-05-26 15:05:44 +00:00
stskeeps 57bee58436 +- Made possible speedup of fdlist checking in s_bsd.c 2001-05-26 13:19:48 +00:00
stskeeps 52cd1f5d03 +- Added some numeric checking in m_server* 2001-05-26 08:23:38 +00:00
stskeeps 08f25ead4e - Possible fixed fdlist problem with default_fdlist 2001-05-26 08:03:58 +00:00
codemastr 4a81ab873d Commited McSkaf's tab patch for win32 2001-05-25 21:18:56 +00:00
stskeeps 37f47c0980 +- Fixed minor socksfd problem in read_message
+- Fixed identd problem
2001-05-25 17:08:26 +00:00
stskeeps dd8b77b9ec - Fixed problem with addto_fdlist(cptr->fd) caused by slotpatch 2001-05-25 16:30:35 +00:00
codemastr 35655afdea minor win32 bug fix 2001-05-24 21:04:21 +00:00
stskeeps 2cf513ae54 +- Fixed listener problem, reported by McSkaf 2001-05-24 19:52:44 +00:00
stskeeps f8f8d25f59 possible listener problem..? 2001-05-24 19:49:54 +00:00
stskeeps 7b9c24590a . 2001-05-24 17:53:01 +00:00
stskeeps 23609410e1 Fixed a problem with slots and /trace 2001-05-24 17:52:04 +00:00
stskeeps 737f07a9fe fixed problem with Debugmode unde win32 2001-05-24 16:06:29 +00:00
stskeeps ffe3bb5cba . 2001-05-24 15:57:04 +00:00
stskeeps b2dbb8d42e winlocal stuff 2001-05-24 15:56:24 +00:00
stskeeps a7f0efe61f +- More winlocal fixes, and a +f bugfix 2001-05-24 15:17:28 +00:00
codemastr d46957d5d6 color rtf patch 2001-05-20 16:25:36 +00:00
stskeeps f74c738cdf . 2001-05-20 15:57:43 +00:00
stskeeps 4cc7b2eb68 winlocalpatches 2001-05-20 08:02:09 +00:00
stskeeps 9b85197ec2 . 2001-05-19 20:41:06 +00:00
stskeeps ab3adfc4ce - Made /die not show admins IP (fixed by Stskeeps after his users nuked him..) 2001-05-19 19:57:52 +00:00
stskeeps 767acc2d61 . 2001-05-19 16:38:13 +00:00
stskeeps 4481b8565e . 2001-05-19 09:46:45 +00:00
stskeeps 581ecab7f8 . 2001-05-19 07:46:37 +00:00
stskeeps b3a6a5d8bc . 2001-05-19 06:28:23 +00:00
stskeeps c5c6be51ce +- Applied McSkaf's winlocal patch II, only changed Debug() and removed
+  DEBUGMODE from config.h. Still cores, but we might be closer to a
+  solution. Broken code, do not use devel right now
2001-05-17 18:44:04 +00:00
stskeeps 39844754a5 .
K
2001-05-17 16:58:06 +00:00
stskeeps 0ce4be7780 . 2001-05-16 19:29:53 +00:00
stskeeps e72d0ff6a5 no message 2001-05-16 19:02:54 +00:00
stskeeps 9d9b27fbcb - Fixed the loop, made htmcalc more clean 2001-05-16 14:43:21 +00:00
stskeeps 6f7214ba2a . 2001-05-15 13:46:59 +00:00
stskeeps 0c6e023e07 . 2001-05-15 12:07:03 +00:00
stskeeps 2da8a5fd52 converted htmcalc/lcf to events 2001-05-15 12:02:39 +00:00
stskeeps 746f5b8420 . 2001-05-14 17:25:51 +00:00
stskeeps d9eea90de4 . 2001-05-14 16:53:48 +00:00
stskeeps aa7a1485d0 events code 2001-05-14 16:52:17 +00:00
codemastr 7d55e31da0 added code to make the config parser attempt to keep going rather than die 2001-05-13 20:42:20 +00:00
stskeeps 49ad7cb797 . 2001-05-13 19:43:18 +00:00
codemastr a245aa8369 removed ce_vardatanum, wasted CPU and memory 2001-05-13 18:03:43 +00:00
codemastr 25041b0074 Made the topic for a +s channel hidden from non-members 2001-05-12 16:44:34 +00:00
stskeeps 82af929628 . 2001-05-12 14:45:46 +00:00
stskeeps 94a9919ff2 +- Fixed the 100% cpu problem, again, HTM is screwed now though? 2001-05-12 13:42:10 +00:00
stskeeps d33d0292e2 +- Fixed the problems with 100% cpu, hopefully 2001-05-11 21:20:17 +00:00
codemastr bbf83caae0 ... 2001-05-09 19:48:08 +00:00
codemastr 43dbfc5707 added McSkaf's richedit patch to support reverse 2001-05-09 19:44:38 +00:00
stskeeps 27dd306e33 . 2001-05-07 18:59:21 +00:00
stskeeps bcf384f074 . 2001-05-07 18:42:24 +00:00
stskeeps b75e14a07d . 2001-05-07 18:39:55 +00:00
stskeeps 689c63f382 . 2001-05-07 14:28:45 +00:00
stskeeps 2b343609ee +- Changed all TStime() to use timeofday - CPU SAVE
+- Removed userload.c & userload.h
2001-05-07 14:24:11 +00:00
codemastr 7b393920b5 win32 richedit changes 2001-05-06 23:50:30 +00:00
codemastr 0c5f482cae Removed some win32 stuff that accidentily got committed 2001-05-06 20:24:16 +00:00
codemastr 7565597137 win32 richedit support added 2001-05-06 20:21:19 +00:00
stskeeps c402f50c43 +- Added doc/unrealircd.conf.txt (by devdev), doc/services-install-guide
+  (zyrol, edited a bit by stskeeps)
2001-05-06 17:08:31 +00:00
stskeeps 18479eb145 +- Fixed-fixed listen format troubles, larne++
+- Possible fixed some +d bug(s)
2001-05-05 19:52:54 +00:00
stskeeps 8c6bce17a3 +- Fixed-fixed listen format troubles, larne++ 2001-05-05 19:34:45 +00:00
stskeeps 5f306b09f0 +- Fixed some compilation error with IPv6 2001-05-05 16:42:27 +00:00
stskeeps 452d931de2 +- Made listen format able to do:
+     listen [ip]:port, for IPv6 - listen [3fff:ff::1]:6667
2001-05-05 15:55:01 +00:00
stskeeps 7cc288c293 . 2001-05-05 15:33:31 +00:00
stskeeps 60b5126fea +- Made chghost/chgident able to do :'s 2001-05-05 15:29:03 +00:00
stskeeps 312c90fb02 +- Made a crazed out IPv6 cloaking 2001-05-05 14:56:38 +00:00
stskeeps 7dfcb698c4 +- Made you able to bind to specific IPv6 IPs (we don't have FFFF::*
+  functionality yet)
2001-05-05 14:28:15 +00:00
stskeeps 183ac0af7d +- Made IPv6 compile atleast, and work. Current problems:
+  * Cannot bind to a specific IP
+  * IPv6 cloaking doesn't work
2001-05-05 14:16:32 +00:00
stskeeps 1d3488dbdd +- Fixed doc error in s_conf.c 2001-05-05 12:05:15 +00:00
codemastr 4d027ee4fd Added an xchat based color striper (faster and more accurate) 2001-05-04 20:29:32 +00:00
stskeeps 145c25e249 +- Had to revert McSkaf's winlocal.patch, caused too many crashes. I believe
+there is a better way to do this ..
2001-05-02 16:35:49 +00:00
stskeeps 09a50a286d blah 2001-05-02 09:22:08 +00:00
stskeeps 4d5d474bbd +- Removed SJOIN/SJOIN2 support in SJOIN
+- Fixed a +f bug, found by NiQuiL
+- Applied McSkaf's winlocal.patch, seems to work ok, fixed some problems
+  though in unix/win32 (cptr->fd can be -3. Should fix some READ ERRORS as
+  well. McSkaf, do me a favour and remove all of the C++ comments in the
+  source (//) or modify them to /* */
2001-05-01 15:03:07 +00:00
stskeeps 9f8c142981 Removed SJOIN/SJOIN2 support 2001-04-30 17:17:56 +00:00
stskeeps d0f426eafb +- Fixed RTLD_NOW problem with openbsd 2001-04-29 20:31:58 +00:00
codemastr a1689d32e8 fixed a bug causing Found your hostname (cached) to be displayed twice 2001-04-28 19:20:28 +00:00
stskeeps 4c5fa91707 +- Possible fixed a buggie in +f 2001-04-28 18:51:21 +00:00
codemastr d8917f301f added keyboard shortcuts to the win32 config and about popup menus 2001-04-28 16:09:16 +00:00
codemastr bb01af2f8b win32 and numeric 005 changes 2001-04-28 16:03:27 +00:00
stskeeps 94516c12f9 +- Applied s_debug.c/config.h patch from McSkaf, makes DEBUGMODE under
+  win32 working again - fixed some errors in the unix part of it.
2001-04-28 07:22:32 +00:00
stskeeps 9590301027 +- Applied res.c.patch from McSkaf, fixes win32 GPF, but fixed mising HE(ocp) 2001-04-28 07:16:58 +00:00
stskeeps 97e7c471e2 +- Brought 005 up-to-date with spefication - added CHANMODES= support 2001-04-27 20:26:30 +00:00
codemastr fe33eabc47 Win32 fixes 2001-04-25 21:21:33 +00:00
codemastr 684e6dbc4d ixed a win32 bug found by RaYmAn causing the tray icon not to be displayed sometimes 2001-04-24 20:03:41 +00:00
codemastr 63dd767e2b win32 stuff 2001-04-24 19:50:28 +00:00
codemastr 83485c7464 removed newdns 2001-04-23 19:45:53 +00:00
stskeeps 8d9c41d457 +- Fixed possible crash with /quote dns l 2001-04-22 13:32:05 +00:00
stskeeps 48c02f74a9 +- Fixed minor problem with mod_load code 2001-04-22 08:38:39 +00:00
stskeeps bdcc9dd9d2 +- Added method mod_load in dummy example and made it work. mod_load() is executed
+  when server is ready
2001-04-21 19:49:54 +00:00
stskeeps 695ab4d2eb +- Fixed possible crash bug imposed by too many users per ip in AllowClient -found and fixed by McSkaf
+- Made IP Mismatches getting sent to UMODE_JUNK instead
2001-04-21 18:14:40 +00:00
codemastr 5423bf8a94 Win32 changes 2001-04-21 17:06:07 +00:00
codemastr a4220227ba Fixed a /stats Z bug reported by RaYmAn 2001-04-21 00:34:43 +00:00
codemastr 9625b4cd1c Win32 changes 2001-04-20 23:55:45 +00:00
codemastr bfdd6a67d6 newconf cleanup 2001-04-19 00:03:28 +00:00
codemastr d7fdd5c5a3 Made the resolver work in win32 2001-04-18 19:35:41 +00:00
stskeeps cae1a304ba -- Fixed a claok bug caused by stskeeps(tm) "not knowing how to use << and >> coding"
+- Fixed a cloak bug caused by stskeeps(tm) "not knowing how to use << and >> coding"
+- Fixed some cloak bugs, and applied +x crypto to hostnames as well
2001-04-18 17:36:59 +00:00
codemastr f5bf9b603e fixes 2001-04-18 17:32:02 +00:00
stskeeps 5142675522 +- Removed doc/ADD-TO-IRCRC, doc/INSTALL, doc/Manual, doc/Operators,
+  doc/irc.1, doc/ircd.8, doc/server-compile-guide
2001-04-18 13:17:26 +00:00
stskeeps 815dbb9183 +- Fixed do_dns_async problem with new res.c 2001-04-18 07:47:41 +00:00
codemastr 32daea058a Fixed a ban realname {} bug that _may_ have something to do with the negative user count bug 2001-04-16 21:00:14 +00:00
codemastr 4f1778a08b removed __P 2001-04-16 15:36:30 +00:00
codemastr 4298b01b5e fixed ircd_log to work in win32 2001-04-16 00:18:59 +00:00
codemastr 62ce071c41 added /rehash -all patch by NiQuiL 2001-04-16 00:01:38 +00:00
stskeeps cf288e063f res.c: ircsprintf fixes 2001-04-16 00:00:21 +00:00
stskeeps 3cfb547bdd *** empty log message *** 2001-04-15 23:55:49 +00:00
stskeeps 843f20448e *** empty log message *** 2001-04-15 23:35:23 +00:00
stskeeps f5d797a8f1 +- Added irc2.10.3's resolver. Fixes debian-woody-libresolv problems..
+  Still some fixes to be done
2001-04-15 20:32:05 +00:00
codemastr aa7815af65 ... 2001-04-15 15:55:42 +00:00
stskeeps 6a9aa19856 +- Fixed DEBUGMODE problem, found by someone .. 2001-04-14 16:05:18 +00:00
stskeeps 7d53af10f1 . 2001-04-14 10:18:07 +00:00
stskeeps 6491094450 test 2001-04-14 10:17:54 +00:00
stskeeps 431217b50d +- Added unitedirc.network -NiQuiL 2001-04-14 07:46:21 +00:00
stskeeps 980aab93bd +- When IRCOps are breaking into chans with invite only (+i) or
+  key-protection (+k) a eyes-notice is sent like it is on banwalk. -NiQuiL
+
2001-04-14 07:35:30 +00:00
codemastr dea4e0f9b8 recoded ircd_log a bit 2001-04-13 22:38:37 +00:00
codemastr 155a99b69e ... 2001-04-13 22:34:25 +00:00
codemastr 71f285d8b0 win32 changes and other stuff 2001-04-13 22:32:07 +00:00
stskeeps 8a03462ce2 +- #define HELP_WHO for the "did a /who 0 o" 2001-04-13 20:46:22 +00:00
stskeeps d0819ec012 +- Possible FD leak in ircd_log, caused by some codemastr coding(TM) 2001-04-13 19:46:32 +00:00
codemastr 0db56907f8 Added a cloaking fix based on a fix by Zogg 2001-04-13 15:09:03 +00:00
stskeeps 331b07909b . 2001-04-13 09:25:43 +00:00
stskeeps a82570f0a3 +- Fixed up some codemastr(TM) coding regarding M_* 2001-04-13 09:07:28 +00:00
stskeeps 754c11ce62 +- added temporary define #define OLD_CLOAK 2001-04-13 08:57:36 +00:00
codemastr f300280ec1 logging changes 2001-04-12 19:36:10 +00:00
codemastr dad396b0ca Cosmetic cleanup of /info 2001-04-12 16:34:08 +00:00
codemastr f64d767a77 Implimented IRCNet style server redirection 2001-04-12 16:18:43 +00:00
codemastr 715e8893e2 Added sajoin/sapart error message patch by NiQuiL 2001-04-12 15:34:22 +00:00
codemastr 8de146c6e2 newconf changes in an attempt to make our config as compatible as possible with other configs 2001-04-11 18:30:53 +00:00
stskeeps a385e32c8b +- Fixed a NETINFO parameter problem - solves the new NETINFO format 2001-04-11 08:42:50 +00:00
stskeeps 9b5142a14d +- Found a way to do +x IPv4 cloaking right.
+- Added set::cloak-keys { longvalue; longvalue; longvalue; }; for the cipher
2001-04-11 01:52:12 +00:00
codemastr 220d739c8d Possibly fixed the vhost crashing bug, with much help from IpAddress 2001-04-08 23:06:55 +00:00
codemastr 32dd11ca68 Made it so /stats C doesn't show the user@host of servers to non-opers 2001-04-08 22:25:50 +00:00
codemastr d26077a352 Readded timestamp to log, accidentily got removed 2001-04-08 19:42:52 +00:00
stskeeps f4a558c0b2 +- Make users that send a forbidden file get auto blocked from sending other
+  files. sptr->flags & FLAGS_DCCBLOCKED.
2001-04-07 20:57:17 +00:00
stskeeps 789231e481 +- Added M_NOLAG.
+- Added new CRC32-hex-based IPv4 and hostname cloaking form
2001-04-07 13:34:25 +00:00
codemastr 9691037d36 fixed user@ vhost problem 2001-04-03 19:53:25 +00:00
stskeeps 87fb55c207 . 2001-04-02 17:32:32 +00:00
codemastr 260fcc7525 added ability to add a username to spoof in vhost {}, also fixed a vhost bug 2001-04-01 23:16:02 +00:00
codemastr 589d1dafb4 Fixed a bug where the IRCd didn't validate hosts specified in a vhost {} 2001-04-01 19:27:23 +00:00
codemastr 38d57f15f0 made duoble loaded motd/rules only be cached once 2001-04-01 18:35:49 +00:00
codemastr d1baf13ae4 tld::channel added 2001-04-01 17:54:34 +00:00
codemastr f0ccf16b61 If no oper::flags are found, default to locop 2001-04-01 15:22:33 +00:00
stskeeps f922820f5d +- Fixed a problem with SDESC module token being wrong - Found by eternal 2001-04-01 15:13:46 +00:00
stskeeps 56effd6149 +- Fixed a problem with users opping servers.. Found by Morbid 2001-04-01 11:55:40 +00:00
stskeeps 78cfb2fb10 . 2001-04-01 11:42:44 +00:00
stskeeps 4d7f9dde8b . 2001-04-01 11:37:35 +00:00
stskeeps 6ff6286e4c . 2001-04-01 11:34:42 +00:00
stskeeps 9436198b96 . 2001-04-01 11:11:58 +00:00
stskeeps e99c73b217 +- Made /kick not core on users kicking servers. (WTF?) 2001-04-01 11:07:13 +00:00
stskeeps 3fcc2115cb +- Made static linking a little more possible (for -pg) 2001-04-01 09:40:48 +00:00
stskeeps 607157c0e0 +- Moved /sdesc, /setident to modules.
+- allow { } now supports encrypted passwords -Syzop
2001-03-31 20:26:14 +00:00
stskeeps 7bc6a45cf8 +- Fixed a double definition (double m_chghost and m_chghost.so) 2001-03-31 20:03:17 +00:00
codemastr 16ee430dd4 reverted a change 2001-03-29 20:37:29 +00:00
stskeeps 19386125a6 +- Added a donation credit 2001-03-29 14:54:09 +00:00
codemastr d3738ff6d6 added oper::swhois 2001-03-28 21:10:16 +00:00
codemastr c0a30f631d Made a security measure to stop people from reading the ircd.conf 2001-03-28 00:41:06 +00:00
codemastr d00e7536df Removed PROTO() 2001-03-27 21:30:59 +00:00
codemastr aa6fa83b5f fixed a log {} bug 2001-03-25 18:50:29 +00:00
codemastr 5193c47f72 ixed a globops bug that required it to have a : 2001-03-25 18:32:52 +00:00
stskeeps 0312737c61 +- Reverted Demigurus's select() speedup patch, did speedup, but it
+  also caused a good bit of CPU.
2001-03-25 17:17:55 +00:00
codemastr b7858491fe Removed the old /rehash flags 2001-03-25 16:49:53 +00:00
stskeeps 0d85f1b98d +- Made MyMalloc be MyMallocEx in codemastr's log {} code. Fixes junk pointer
+  problem - discovered by sts/Morbid
2001-03-24 11:05:12 +00:00
stskeeps 659140348d +- Added #define HOOKTYPE_LOCAL_NICKCHANGE 2001-03-24 07:55:50 +00:00
codemastr 43e19f52a6 log system fix 2001-03-21 21:27:34 +00:00
codemastr 464e787aac added a new logging system using log {} 2001-03-21 20:42:15 +00:00
stskeeps a3a445dc77 +- Added Hooks, only one working now is HOOKTYPE_LOCAL_QUIT 2001-03-21 18:14:43 +00:00
stskeeps 555089ce9e +- Removed networks/unrealircd.conf 2001-03-19 06:05:28 +00:00
codemastr 0ce7799961 command hash changes 2001-03-19 00:09:42 +00:00
stskeeps c5c1b8e3e1 +- Modified command hashing system to Sts's belief of how eggs should be
+  made. (quick, dirty and fcked up)
+
2001-03-18 21:28:04 +00:00
codemastr 2ff27c366f Command hash changes 2001-03-18 20:34:59 +00:00
codemastr 3251251be9 moved m_setname to a .so 2001-03-18 17:42:09 +00:00
stskeeps 26c45f50fd +- Changed license of m_dummy.c (dummy module, skeleton), so people can do
+  closed source modules.
2001-03-18 13:07:00 +00:00
stskeeps 089067fbda +- Moved m_chgident to an .so 2001-03-17 21:47:22 +00:00
stskeeps fe7b258bfb - all of the module files to the new format.
+  all of the networks files to the new format.
+- Fixed a bug with RAKILL and UNSQLINE not working
2001-03-17 18:56:50 +00:00
stskeeps edfca03e28 +- Modified an old Unreal3.1.1 to be network file converter, and converted
+  all of the module files to the new format.
2001-03-17 16:22:40 +00:00
stskeeps c181a20492 +- Put out m_chghost, m_sethost in modules, remade Makefile structure and
+  added src/modules
+
+
2001-03-17 14:12:24 +00:00
stskeeps e1b5d6fae0 +- Added module_sym("functionname"), for modules, like, sajoin might want to
+  do fp_m_join = module_sym("m_join");
2001-03-15 21:02:00 +00:00
stskeeps 67cdd867fd +- Made conf2 able to load empty files as well 2001-03-14 13:07:27 +00:00
codemastr 5e535f848d updated the badword configs to use newconf 2001-03-13 22:23:49 +00:00
stskeeps 1c23055cd7 +- Made chmode +z only settable by umode +z users or U:lines or services. 2001-03-13 15:05:35 +00:00
stskeeps 634312f47d +- Added unknown connection flood protection (settable in config.h) 2001-03-13 11:46:23 +00:00
codemastr 9fc54cdaed reverted a previous change 2001-03-12 20:37:21 +00:00
codemastr 5750cea757 Win32 Changes 2001-03-11 19:36:49 +00:00
stskeeps bd983ef189 +- Fixed bug with double module unloading, bug found by RaYmAn 2001-03-11 13:21:35 +00:00
stskeeps 110f099802 +- Started on commands.so making, works good atm -on req of codemastr,
+  both as m_module.so and commands.so :) - long live dynamiclinking
2001-03-11 13:08:53 +00:00
stskeeps c84da7d03c +- Reintroduced "fake lag". Flood algoritm works this way:
+   Make next check for parsing be
+   (1 + (length of command+parameters / 60)
2001-03-11 06:42:19 +00:00
stskeeps 6d2a2e1bf9 +- Added loadmodule "filename.so"; and made the modules
+  unable to get loaded twice with same name.
2001-03-10 21:04:25 +00:00
stskeeps f41c3bf679 +- Added Modules, using dlopen() and LoadLibrary for *nix/win32.
+- Added /module load <path.to.so>, /module status (list modules),
+  /module unload <modulename>
2001-03-10 11:58:04 +00:00
stskeeps 797b6c6f21 +- Added /cycle #channels, suggested by ^loki^ 2001-03-09 12:40:11 +00:00
stskeeps d7700539c6 +- Added #define KILL_LOGGING, by otherguy 2001-03-09 10:15:48 +00:00
stskeeps 9251234b2d +- Added "get_host" old 'H' O:flag 2001-03-07 19:42:50 +00:00
stskeeps 0e77f08921 +- Made ./Setup not do dynamic configuration any more
+- Changed reference in Setup from ircd.conf to unrealircd.conf (cosmetic)
+- Changed output of updconf from ircd.conf.new to unrealircd.conf.new
+- Changed the output of makeconf from ircd.conf to unrealircd.conf
+- Renamed hostmask to hostname like it should be in makeconf - IpAddress
2001-03-07 17:04:37 +00:00
stskeeps 49152c8bcd +- Fixed ssl_client_handshake bug reported by IpAddress 2001-03-07 16:19:49 +00:00
stskeeps 65ab75c9a8 +- Made makeconf use "ban nick" instead of "ban nickname" 2001-03-07 07:49:19 +00:00
angel11 42f43eeb00 Fixed a bug in makeconf, make whois not return chans for services. 2001-03-06 21:27:06 +00:00
stskeeps 8b3c0d8b56 +- Made MembershipL->flood get bzero on out delegation
+- Made IRCd not crash on /kick from servers
2001-03-06 02:45:24 +00:00
codemastr 10dd29fb7a Removed stskeeps's lazy add_CommandX (tm) code 2001-03-05 17:19:09 +00:00
codemastr e5b6533dcd Rewrote makeconf and makenet to use newconf (added some new features to makeconf as well) 2001-03-04 17:52:37 +00:00
stskeeps e852d93134 +- Made del_Command(). 2001-03-03 13:34:10 +00:00
stskeeps 15b1aa89f8 . 2001-03-02 20:11:09 +00:00
codemastr bf9dc43e5a Removed a lot of vars and stuff from the old config, also made some cleanups to reduce source size 2001-03-02 18:53:04 +00:00
codemastr ee1d50c4e2 Added option to use old style oper flags 2001-03-02 18:09:11 +00:00
codemastr 9063b91570 Updated most of /stats S for newconf 2001-03-02 15:06:53 +00:00
stskeeps edfd90f235 +- Made NAME_SERVER (set::dns::nameserver work). The IRCd no longer
+  uses /etc/resolv.conf as reference.
2001-03-02 14:58:37 +00:00
stskeeps 6164ba8175 +- Moved dynconf stuff from s_svs.c to s_conf.c, on popular request 2001-03-02 14:22:30 +00:00
stskeeps e3fbff915b . 2001-03-02 14:00:30 +00:00
stskeeps f75f80584e . 2001-03-02 12:20:43 +00:00
stskeeps 2d7436eea0 Made modes-on-connect work 2001-03-02 12:20:26 +00:00
stskeeps f106d3b39b Made /who work correctly 2001-03-02 11:48:54 +00:00
codemastr 1dc79accfc added a bunch of /stats flags 2001-03-02 00:55:57 +00:00
stskeeps 247a3235ef +- Overwrote s_conf.c with s_conf2.c, and removed s_conf2.c. Viva la Conf2! 2001-03-01 21:31:55 +00:00
stskeeps 59f0c6a7be +- Fixed a config_load win32 problem, found by Zogg, fixed by Stskeeps/codemastr 2001-03-01 21:29:44 +00:00
codemastr 03253db9b2 Fixed a deny version {} bug (oops) 2001-03-01 21:22:32 +00:00
codemastr 815db2ad4a added deny version, and made deny link rehash 2001-03-01 21:13:58 +00:00
stskeeps 3eff8614eb +- Removed dynconf.c, from the old dynconf 2001-03-01 20:39:41 +00:00
stskeeps 516731d14d +- Removed class.c, from the old conf 2001-03-01 20:31:03 +00:00
stskeeps 02f1d1a27a +- Made /stats C show flags correctly 2001-03-01 06:15:24 +00:00
stskeeps 259c4bcf66 +- Made DNS cache list show a notice to other ops 2001-03-01 06:13:45 +00:00
stskeeps d1139c251c +- Made autoconnect msgs only go to +os 2001-02-28 20:43:27 +00:00
stskeeps d10da5cf81 . 2001-02-28 18:29:08 +00:00
stskeeps 55458495fb +- Fixed the 9-month old win32 DNS bug, caused by Stskeeps's incidential
+  delete
2001-02-28 18:23:31 +00:00
stskeeps 54c46720f7 +- Somehow is_halfop and co got called when a server set a mode .., added
+  IsServer check (auto-return 1)
+
2001-02-28 17:24:38 +00:00
stskeeps 155374409d +- Added Member and Membership and made the IRCd support this. Using
+  "freelinks", todo: garbage collection
+- Added find_member_link and find_membership_link. Made Floodopt only
+  get allocated for local users. Removed aFloodOpt in Link,
+- Made a speedup in is_halfop (dumb code)
2001-02-28 16:24:37 +00:00
stskeeps 2ed9fead6d -- Fixed one of codemastr's wonderful coding bugs. *slap slap slap*
+- Fixed windows CRLF problem in conf2, reported by Zogg
2001-02-27 19:40:52 +00:00
stskeeps 09fc76ed53 +- Fixed one of codemastr's wonderful coding bugs. *slap slap slap* 2001-02-27 11:42:55 +00:00
stskeeps 98477e867e . 2001-02-27 11:22:37 +00:00
stskeeps 412390883c +- Removed msgtab part of parse, removed the bigass hashtable msgtab,
+  removed inittoken, made command initalization happen in init_CommandHash
+- Adapted /stats M to it. Removed /helpop ?commands temporary. Confirming
+  hashtable works.
2001-02-27 11:03:19 +00:00
stskeeps e010cbde23 +- Added CommandHash optimation .. this is not done 100% yet. uses msgtab as
+  reference
2001-02-27 08:56:06 +00:00
codemastr 878f3ddba8 sped up some channel stuff using bahamut style user searching 2001-02-25 17:30:43 +00:00
codemastr 82e2407bd3 made crule.c faster 2001-02-25 16:57:23 +00:00
stskeeps 7dbe724aff +- Removed return_servers() and made servers be called Servers, and be a
+  global variable. Done on request on Great Master codemastr.
2001-02-25 16:41:13 +00:00
stskeeps 8cc77bb669 +- Recoded check_pings, with bits used from bahamut-ircd/hybrid-ircd, credits
+  to lucas.
2001-02-25 10:36:41 +00:00
stskeeps 170a1dff0e +- Made admin {} get rehashed
+- Got /stats x to work again
2001-02-25 09:03:22 +00:00
codemastr 038830c0b2 added deny link {} 2001-02-25 00:57:12 +00:00
stskeeps 0ced6ab45b +- Made connfreq unable to less than 10 2001-02-24 20:15:29 +00:00
codemastr e9b9c0e775 various code cleanups 2001-02-24 18:27:50 +00:00
codemastr f656a02b76 various cleanups 2001-02-24 16:22:26 +00:00
stskeeps df04217164 . 2001-02-24 15:06:00 +00:00
stskeeps ace1eb1e1a todo stuff 2001-02-24 15:02:26 +00:00
stskeeps c5ed0fe9c1 +- Made autoconnect work again :>. Changes in behavouir: It connects more at
+  a time now. You need autoconnect flag in options.
2001-02-24 14:56:15 +00:00
stskeeps eed841e642 +- Made link { options { work OK again. Had a dead loop as well 2001-02-24 13:36:52 +00:00
stskeeps 9ac6d4cb65 +- Killed ircdupstr and called it ircstrdup 2001-02-24 13:09:50 +00:00
stskeeps 40f1dd6da6 +- Added deny channel { channel "channelmask"; reason "why"; }; and
+        allow channel { channel "channelmask"; };. Replaces chrestrict
+- Made those above get rehashed
2001-02-24 13:03:26 +00:00
codemastr 0ce4ac5bc0 dynamic motd changes 2001-02-23 22:01:59 +00:00
codemastr 3211a39f6b replaced a few strlen()s with sizeof()s should make the IRCd start a bit faster 2001-02-23 17:30:39 +00:00
stskeeps 97de7c6e41 +- Fixed a missing " in validate_conf 2001-02-23 15:42:08 +00:00
stskeeps 57f89e0678 . 2001-02-21 17:29:21 +00:00
stskeeps ff1b08ef51 +- Fixed a /kline and /unkline buffer overflow, reported by [-Th3Dud3-]
+- Fixed a crash in /stats k regarding temporary K:lines
2001-02-21 16:00:43 +00:00
stskeeps 64ee360a69 . 2001-02-19 18:44:20 +00:00
stskeeps 3bc852a76c +- Added a notice on connect for SSL users with key length 2001-02-19 18:26:29 +00:00
stskeeps b7b2155573 +- Some small SSL fixes .. 2001-02-19 18:13:53 +00:00
codemastr a28500faae If an invalid ban or except is found, it is removed 2001-02-19 17:21:42 +00:00
codemastr b53a38c15c newconf changes 2001-02-19 17:11:17 +00:00
codemastr eb6d81e199 ade it so the IRCd can survive with certain set {} errors (uses defaults) 2001-02-18 16:39:54 +00:00
stskeeps e56b347bb1 . 2001-02-18 16:04:57 +00:00
codemastr 2d455fee85 bunch of changes 2001-02-18 16:03:34 +00:00
stskeeps 691bbfc48a +- Made deny_dcc get rehashed 2001-02-18 11:59:27 +00:00
stskeeps d121a7a9ad +- Finished up deny dcc {}.
+   TODOs: dcc_del_wild_match doesn't work. dcc_wipe_services() either
2001-02-18 09:57:49 +00:00
stskeeps 556ae0ef20 *** empty log message *** 2001-02-16 20:36:52 +00:00
stskeeps 44be7a34a2 +- Finished up validate_conf() 2001-02-16 20:27:15 +00:00
stskeeps 05362ec33f .. 2001-02-14 22:38:47 +00:00
stskeeps 1f7cb4c186 +- Fixed a problem with +x
+- Made CPATH be unrealircd.conf and init_conf2 use configfile instead
+- Disabled calls to dynconf
+- Added validate_conf, added dynconf checking, me, admin, class, oper
+  testing
+- Added config_progress() Fixed temporary stuff
+  with conf_link
 - Made tld {} get rehashed
2001-02-14 20:51:21 +00:00
codemastr 8247b2cc5f Made tld {} get rehashed 2001-02-14 20:47:47 +00:00
stskeeps e0588102ac +- Fixed temporary stuf with conf_link 2001-02-14 11:34:11 +00:00
stskeeps a3d4c1af6e +- Added /stats P on listener info (oper-only)
+- listener temporary stuff works now
2001-02-14 09:17:31 +00:00
stskeeps 254326670a +- Added some MALLOCD (mini debug malloc by stskeeps..)
+- Removed some C++ comments
+- Made close_listeners work correctly again
+- Removed some old check_* mammut code
+- Fixed a bunch of possible bugs in newconf
+- Added sendto_realops logging of config errors
+- Made /rehash work .. sortof. Fixed some crash bugs
2001-02-13 23:14:27 +00:00
stskeeps 884d79e08a +- Fixed a problem with cptr->class counting for servers 2001-02-06 20:34:18 +00:00
codemastr bc1dc6f2ab Made a bunch of /stats flags work with newconf 2001-02-06 20:29:48 +00:00
stskeeps 80f5de56d8 . 2001-02-06 20:16:30 +00:00
stskeeps 22b891a845 +- Fixed negative timestamps problem (crash) 2001-02-06 19:30:36 +00:00
stskeeps cacd6bf213 +- Fixed check_pings problem (crash) 2001-02-05 05:07:43 +00:00
stskeeps 77653accda . 2001-02-04 22:06:16 +00:00
stskeeps 5237c6748b .. 2001-02-04 19:24:33 +00:00
stskeeps 1effeee7a8 +- Fixed a spread server bug 2001-02-04 17:16:39 +00:00
stskeeps 554fa520a0 +- Fixed a refcount bug 2001-02-04 14:46:39 +00:00
stskeeps 5098716479 . 2001-02-04 14:22:48 +00:00
stskeeps 822885b367 +- Fixed some protocol error in server_synch
+- Made listener code work good ..
+- Made reference counts work again
+- Started some rehash work
+- Made full class work on servers too
2001-02-04 14:20:35 +00:00
stskeeps b263907bd8 +- Classes keep reference counts now, and moving classes (oper) works good
+  too.
+- Added /trace class search results (class->clients)
2001-02-03 19:07:21 +00:00
stskeeps 9a05dd20cb +- ban server {} works the original way it was intended to now 2001-02-03 08:26:24 +00:00
stskeeps 9e216fe7fa +- Fixed a little problem with SERVER servername :info crashing the ircd
+  Long live the Floridan way of counting
2001-02-03 07:32:45 +00:00
stskeeps 8893ac57bc +- Made /sqline /unsqline work again.
+- Made SQLINE synching work with newconf
2001-02-02 23:20:47 +00:00
stskeeps 9e871d56aa +- Made /trace work again properly with class names 2001-02-02 20:27:17 +00:00
stskeeps 1280c7d67e +- Made /kline work again, with newconf 2001-02-02 20:04:41 +00:00
stskeeps 1c631472b6 random crap 2001-02-01 20:58:45 +00:00
stskeeps e4627153f6 +- Made /stats C work and /stats H. Intregrated into one.
+- Made /zline, /unzline work.
+- Added CONF_BAN_TYPE_TEMPORARY
+- Fixed a ban ip {} bug in check_pings
+- Removed some waste of oldconf
+- Moved advanced_check to s_svs.c
2001-02-01 19:32:48 +00:00
stskeeps ce3707734d +- Fixed a check_pings problem with usernames
+- ban ip {} works 100% now
2001-02-01 16:34:24 +00:00
stskeeps 7f7bbd3d21 + FIX: *@* detection
+- Fixed a check_pings problem with usernames
2001-02-01 16:21:00 +00:00
stskeeps 54ae54eb4f +- Made /rakill and /akill work again :). Added banflag.type2 2001-02-01 16:19:44 +00:00
stskeeps 30e0ce476c +- Made /svso work again, moved it to same place as svsnoop. 2001-02-01 14:58:24 +00:00
stskeeps 6a1c7c65e5 +- Made /svsnoop "work" again, moved it to s_svs.c (and made that file too) 2001-02-01 14:48:55 +00:00
stskeeps 76ccc05b2c +- /connect works now :), TODO: D:d lines, V:line needs fixing, badly
+  says "Unknown location" atm on uplink
+- Took out MyMalloc & co, direct to malloc/realloc/free now. Crashed in
+  DEBUGMODE
+- Added ConfigItem_link->ipnum
+- Fixed a compile bug with DEBUGMODE
+- Changed a load of old aConfItem crap .., FIX: ConfigItem_link->options
+- Fixed a /connect bug
2001-02-01 08:05:11 +00:00
stskeeps 4c075f6462 +- Fixed check_pings (check_kills) code, so G:lines & ban nick/ip/realname
+  works again
2001-01-31 14:04:55 +00:00
codemastr 5a1114985c vhosts now use newconf 2001-01-30 21:58:20 +00:00
codemastr 82134302a9 some updconf stuff read changes 2001-01-29 22:50:57 +00:00
stskeeps cf2207747a +- Made allow { maxperip }; work, the old ONE password thing, just better 2001-01-29 20:59:26 +00:00
stskeeps f343bc0ba1 . 2001-01-29 20:40:53 +00:00
stskeeps cbbbce0b01 +- Made allow {} passwords work (AllowClient) - TODO: I:line encryptions 2001-01-29 20:39:38 +00:00
codemastr 903f505103 updconf now makes use of from {} in oper {} to eliminate duplicate O:lines 2001-01-28 22:45:30 +00:00
codemastr b4c84801f5 Added the first (sorta) working version of the config converter 2001-01-28 19:20:01 +00:00
codemastr 384a09aceb Made ban nick {} work 2001-01-28 19:03:38 +00:00
stskeeps 52080301a2 +- Fixed a minor problem with ban {} and oper {} 2001-01-28 18:40:31 +00:00
stskeeps 34c792a5e2 +- Made /oper work with newconf (come get us now bastards!)
+- Made +c show class names in connect
2001-01-28 17:59:46 +00:00
codemastr 581274a4c8 Made /setname and /chgname use ban realname {} 2001-01-28 16:11:32 +00:00
stskeeps bbc3980277 +- Made get_sendq be a macro
+- Added find_ban, AllowClient() (old attach_Iline)
+- Temporary disabled /svsnoop, /akill, /sqline /unsqline, /kline, /unkline
+  /zline, /rakill, /unzline and /svso
+- chkconf is not being built anymore
+- Ripped out s_conf.c with the roots.
+- Ripped out add_listener
+- Disabled a lot of stuff that needs to adapt to conf2
+- Made allow {} work
+- Changed allow {} to do user@host instead of user item
+- Took out my_name_for_link
+- Temporary disabled D:d lines/SQLines/Qlines
+- Fixed some /connect stuff
+- Disabled rehash temporary
+- Made ban user/ban realname work (s_unreal.c needs to be modified)
+- Added Zogg to credits
+- NOTE: Unreal-devel is handicapped right now, code in progress, do not use
2001-01-28 12:10:06 +00:00
codemastr 191d22dd40 various fixes 2001-01-21 23:15:09 +00:00
codemastr 42a9e91f1b Made vhost {} use from {} for hosts 2001-01-21 19:04:36 +00:00
codemastr 8228a15f14 Added set {} (unrealircd.conf/network file replacement) 2001-01-21 18:18:17 +00:00
stskeeps 189ee2de56 +- Recoded m_server(YES!) -stskeeps
+- Fixed a #undef USE_SSL problem found by codemastr.. caused by
+  Sts(TM)coding
2001-01-21 06:31:30 +00:00
stskeeps 2db92a77ad +- Added Find_link, serv->conf, did a Find_tld fixup, removed serv->nline,
+  removing a lot of my_name_for_link crap, indented s_serv.c
+- Recoded m_server(YES!) -stskeeps
2001-01-20 21:26:54 +00:00
codemastr 1881d7a7c2 chmodes +GcSm affect /part now 2001-01-20 17:10:23 +00:00
codemastr b1306a3040 Updated match() to have some optimizations from bahamut 2001-01-19 21:10:41 +00:00
codemastr 002f47c434 rehash cleanups and other cleanups 2001-01-19 16:35:01 +00:00
stskeeps de14d4f6de +- Fixed bug with /whois showing +S user channels (ChanServ) 2001-01-17 20:59:27 +00:00
codemastr 4affd16dc5 tld {} changes 2001-01-14 18:03:39 +00:00
codemastr 4dd8eb2731 Implimented except socks {} and tld {} 2001-01-14 01:16:39 +00:00
codemastr dfa4d7c325 Removed the old chmode +x = +c and +I = +V support 2001-01-13 17:20:41 +00:00
codemastr a12cf0a9fc SVSMODE/SVS2MODE fixes 2001-01-12 23:16:45 +00:00
codemastr 33ce3ce8a9 +f changes 2001-01-12 22:52:34 +00:00
codemastr 7a0de228fc Fixed a shun bug 2001-01-09 23:26:10 +00:00
stskeeps 50beda9644 . 2001-01-09 19:07:25 +00:00
stskeeps cc4a5273db . 2001-01-09 10:25:34 +00:00
stskeeps 64931ec2cb . 2001-01-07 16:37:46 +00:00
codemastr 30e1580504 Fixed a G:line bug reported by ROXnet 2001-01-06 18:29:10 +00:00
stskeeps 45828bdf33 . 2001-01-06 10:51:30 +00:00
codemastr 9e88d95c35 made drpass be used in place of X:line 2001-01-06 00:55:06 +00:00
codemastr 6a02c2b900 made ulines load from the new config 2001-01-05 23:02:08 +00:00
stskeeps dbddc21399 +- Added listen {} runtime-configuration code work :))
+- Removed unrealircd.conf from stock
2001-01-05 22:37:13 +00:00
codemastr b75e6e6668 Made /admin use the new config 2001-01-05 19:50:22 +00:00
stskeeps 1ecdb3714c . 2001-01-04 22:02:04 +00:00
stskeeps 9c22ba475e +- Merged in sts-laptop branch 2001-01-04 21:54:09 +00:00
stskeeps b4493dae82 *** empty log message *** 2001-01-04 21:42:41 +00:00
codemastr 428a4c5d94 ... 2001-01-03 22:26:54 +00:00
codemastr 8335a9efca cron changes 2000-12-30 18:01:48 +00:00
codemastr 800401f0cc ... 2000-12-30 17:58:32 +00:00
codemastr bc8fe3cda1 ... 2000-12-30 17:57:54 +00:00
codemastr 989d31db7a ... 2000-12-30 17:57:04 +00:00
codemastr 449c223d5d Fixed a serious bug 2000-12-28 02:15:45 +00:00
codemastr 5a46eab842 ... 2000-12-28 01:47:35 +00:00
codemastr 1a59f08f8c Fixed a ircd.tune bug 2000-12-27 22:05:38 +00:00
codemastr 97cc8fe0b3 Fixed a STATS_ONLYOPER bug 2000-12-27 21:48:27 +00:00
stskeeps 02424859a2 . 2000-12-27 18:57:33 +00:00
codemastr 77b43b023f added the except parser 2000-12-27 18:26:21 +00:00
codemastr 697779c545 fixed a chg*/set* and sdesc bug 2000-12-27 15:45:41 +00:00
codemastr b899d5f1f6 ... 2000-12-26 15:49:37 +00:00
stskeeps 19f40d067c +- Added TODO in top of s_conf2.c 2000-12-26 12:59:25 +00:00
stskeeps 95599d4f69 +- Finished _conf_allow 2000-12-26 12:45:12 +00:00
stskeeps 3d42025e70 +- Finished _conf_listen 2000-12-26 12:04:13 +00:00
stskeeps cf209ac0f8 . 2000-12-25 23:43:29 +00:00
stskeeps bfe9ce19f8 +- A report_configuration code (showoff) 2000-12-25 23:07:15 +00:00
stskeeps 021dbadcb2 +- Finished _conf_oper 2000-12-25 22:25:55 +00:00
stskeeps 5e1a7560f4 . 2000-12-25 20:47:53 +00:00
codemastr 14060a44dd Added tld to the config code 2000-12-25 20:40:56 +00:00
stskeeps 8a526e56ef . 2000-12-25 19:59:21 +00:00
stskeeps 5e009543c0 .. 2000-12-25 19:53:32 +00:00
codemastr c521050ad8 made config2 use strerror to report errors rather than the numeric 2000-12-25 19:52:38 +00:00
angel11 61d9748dc0 Fixed s_user.c so umode N and T cannot coexist 2000-12-25 19:43:11 +00:00
stskeeps e9bde25600 +- Removed parser builtin directive include, and replaced it with our own 2000-12-25 18:46:53 +00:00
stskeeps 2a40af2bff . 2000-12-25 16:41:18 +00:00
stskeeps 263eebc9b3 . 2000-12-25 16:34:59 +00:00
stskeeps 3411fb0724 +- Some more config2 code 2000-12-25 10:43:42 +00:00
codemastr 481856ecde added drpass to the config code 2000-12-24 22:15:08 +00:00
stskeeps 8ae2344c43 . 2000-12-24 21:59:50 +00:00
codemastr 4d7e1dc8be ... 2000-12-24 21:53:43 +00:00
stskeeps dfffd4b238 +- Some more newconf code 2000-12-24 21:52:33 +00:00
stskeeps 8837f3540e +- Some more _conf_class code 2000-12-24 18:12:41 +00:00
codemastr d455d37f59 *** empty log message *** 2000-12-24 18:04:11 +00:00
codemastr 7464b80219 /stats changes 2000-12-24 18:00:41 +00:00
codemastr 24318b579f fixed a missing : on numeric 379 2000-12-24 16:52:27 +00:00
stskeeps a99d4497df . 2000-12-24 16:34:12 +00:00
stskeeps 6751ce7349 +- Added some a bit functional _conf_class code 2000-12-24 16:09:28 +00:00
stskeeps 7b44111745 +- Added the next part of the new config parser, and some even more 2000-12-24 15:37:57 +00:00
stskeeps f3c5f6f6c8 +- Added the next part of the new config parser 2000-12-24 13:31:33 +00:00
stskeeps e24f9f0844 +- Added first part of the new config parser, s_conf2.c 2000-12-23 23:21:10 +00:00
stskeeps 2edbe91580 . 2000-12-23 12:57:33 +00:00
stskeeps 9e68fd3ac0 *** empty log message *** 2000-12-23 12:55:46 +00:00
stskeeps dc7eca4b5d + Stskeeps> +j? but yes, there's a bug there 2000-12-21 10:16:52 +00:00
codemastr 749014625a *** empty log message *** 2000-12-20 22:07:49 +00:00
codemastr 313ec95dcd Fixed a bug where you would receive a double notice on /who 0 o 2000-12-20 17:47:02 +00:00
codemastr 4d8e57d51d topci fixes 2000-12-20 17:36:29 +00:00
codemastr 6bc1965492 ... 2000-12-20 17:17:04 +00:00
stskeeps d17cbcc9b5 +- Added in devdev's INSTALL replacement
- Made it so you don't get a +W notice if you /who or /whois yourself reported by Ron885
 - You can no longer specify an *@unrealircd.com/org, or unreal-*@lists.sourceforge.net email
   as your KLINE_ADDRESS (the "Why am I K:lined?" messages got too annoying)
+- Removed some irc.flirt.org references.
2000-12-20 15:18:56 +00:00
codemastr 5ad018cce7 ... 2000-12-19 22:33:33 +00:00
codemastr a69ec1a95b Made it so you don't get a +W notice if you /who or /whois yourself 2000-12-19 22:21:50 +00:00
stskeeps de447b9495 +- Fixed some more points of ->passwd bugs 2000-12-17 20:51:40 +00:00
stskeeps f855bb7dab + m_server_estab, reported and fixed by Kanzen_Greiver 2000-12-17 20:45:36 +00:00
codemastr 65aa3e7a6e Modified rehash flags to use strnicmp rather than match 2000-12-17 18:35:31 +00:00
stskeeps 96bda8f5dc . 2000-12-17 11:58:05 +00:00
codemastr 4429a4ba7e removed a redundant include of time.h 2000-12-15 22:25:32 +00:00
stskeeps 3d0bf74200 +- Fixed permission problem with SSL .pem files (was o+r) 2000-12-15 16:44:23 +00:00
stskeeps 44d7308718 . 2000-12-14 20:41:03 +00:00
stskeeps 9dbfd6251d *** empty log message *** 2000-12-14 17:01:15 +00:00
cvs2hg d46d93cfa5 fixup commit for tag 'unreal3_1_1_stable' 2000-12-14 16:07:33 +00:00
cvs2hg 8350bc861c fixup commit for tag 'unreal3_1_1_darkshades' 2000-12-14 16:07:32 +00:00
stskeeps 4dc498b9fb . 2000-12-14 16:07:31 +00:00
stskeeps 54ba7c7ed2 *** empty log message *** 2000-12-14 16:06:37 +00:00
stskeeps d173324c0d . 2000-12-13 22:15:19 +00:00
stskeeps 799daac44d +[ Unreal4.0 ]
+- Fixed a _serious_ bug in SERVER command, reported by Valen, Forester,
+  M0rpheus and JK.
2000-12-13 22:13:20 +00:00
stskeeps 1cd81ae077 *** empty log message *** 2000-12-13 16:00:04 +00:00
stskeeps 749a4340ca .. 2000-12-13 15:12:45 +00:00
stskeeps 20c0e8d733 *** empty log message *** 2000-12-13 13:12:49 +00:00
stskeeps 4bebd2cb31 *** empty log message *** 2000-12-12 21:44:02 +00:00
codemastr da4333aecf ... 2000-12-12 21:42:03 +00:00
stskeeps c8b1de7cdb . 2000-12-12 21:37:25 +00:00
stskeeps ba924cb7bc +- Made more openssl binary detection using 'which'
+- Added message when trying to join a +z channel
+- New segmentation fault code by Kanzen_Greiver
2000-12-09 15:12:23 +00:00
codemastr 0a58f33c27 fixed a reverse DNS exploit 2000-12-07 21:08:29 +00:00
stskeeps bbaa0b0416 *** empty log message *** 2000-12-05 10:36:00 +00:00
stskeeps d42ae2b5b8 +- Fixed restart bug, reported by RaYmAn 2000-12-03 19:03:38 +00:00
stskeeps b140153d57 +- Some few fixes from CodeM and Barubary:
+  - Fixed /whois to show users for opers when not in the channel.
+  - Fixed /whois to allow only global eyes opers to see user modes.
+  - Fixed /whois to not show idle times of global opers to anyone except
+    another global oper or services.
+  - Fixed /who to show users for opers when not in the channel.
2000-12-03 13:40:11 +00:00
stskeeps cd5548cab8 +- Fixed P:line bug, caused by codemastr(tm) coding, (masskills), reported by
+  sidv@sid-kitty-land.org
2000-12-03 13:13:27 +00:00
stskeeps ceb8171657 +- Fixed a bug in sendto_channel_prefix_tok reported by Strider@ChatCircuit 2000-12-03 11:53:41 +00:00
stskeeps 2d4846bfd6 +- Fixed a chinese nick thing, thanks to miCro and RexHsu
+- Fixed a typo in config.h
2000-12-02 15:36:17 +00:00
stskeeps 25291cc457 +- Fixed a chinese nick thing, thanks to miCro and RexHsu 2000-12-02 15:33:09 +00:00
stskeeps f8a112aa07 +- Fixed a SJOIN bug, i think, thanks to Web 2000-12-02 11:44:57 +00:00
stskeeps 38bcec9991 +[fixes]
+- Fixed a +d bug (it didnt send ` prefixes)
2000-12-02 08:45:12 +00:00
stskeeps 367dfb5d3b . 2000-12-01 22:05:03 +00:00
stskeeps cd69044366 . 2000-12-01 21:10:13 +00:00
stskeeps 5747fda912 . 2000-12-01 20:52:59 +00:00
stskeeps 94927f5a7a . 2000-12-01 19:57:01 +00:00
stskeeps f634ce269b +- SSL error change to sendto_umode(UMODE_JUNK)
+- Fixed a hash error
2000-12-01 19:55:53 +00:00
stskeeps 6fa75f2e9e . 2000-12-01 18:16:34 +00:00
stskeeps 9b14745e47 . 2000-12-01 16:56:03 +00:00
stskeeps 606967c718 +- SSL error change to sendto_umode(UMODE_JUNK) 2000-12-01 16:45:34 +00:00
angel11 3985a7ceed Accidently changed ircd.c =P, fixing 2000-12-01 15:53:52 +00:00
angel11 62cf839f2e Fixed axenet network file 2000-12-01 15:49:04 +00:00
stskeeps f0e2d2cb61 +- Config change in SSL.h detection part 2000-12-01 15:43:28 +00:00
stskeeps 6d64f0b505 + thanks to RexHsu and Aim
+- Fixed up CHINESE_NICK and JAPANESE_NICK, suggested by Aim, see
+  include/config.h
2000-12-01 13:59:05 +00:00
stskeeps d2d806697b +- #define CHINESE_NICK will make you able to use chinese nicks
+  thanks to RexHsu and Aim
2000-12-01 12:13:03 +00:00
stskeeps ae0dcf2bbf +- Fixed compile error found by Headbang 2000-12-01 11:57:35 +00:00
stskeeps cb0cbda5ed +- Changed CONNECTTIMEOUT to 30sec
+- Changed some _more_ credits
2000-12-01 11:49:36 +00:00
stskeeps 5d04afc6c2 +- Added infofield in /stats L for clients/listeners
+- Fixed a blocking socket thing
+- Fixed up /stats L bug
2000-12-01 11:31:23 +00:00
stskeeps 9955724ef9 +- Added infofield in /stats L for clients/listeners 2000-12-01 11:19:11 +00:00
stskeeps 052bcc180d +- Fixed a real bad /whois bug, reported by BiGi
+- Fixed a problem with /sajoin .. atleast possible
2000-12-01 09:49:20 +00:00
stskeeps b791a8eae9 . 2000-12-01 05:36:42 +00:00
stskeeps 143a7b6566 . 2000-12-01 04:45:33 +00:00
stskeeps fc2bf10e3a +- Fixed a real bad /whois bug, reported by BiGi 2000-11-30 18:24:44 +00:00
stskeeps 290495c0ad . 2000-11-30 18:06:31 +00:00
stskeeps 07a6922d5c . 2000-11-30 18:04:43 +00:00
stskeeps 59a23b3ce6 . 2000-11-30 18:03:06 +00:00
stskeeps df07c7f133 . 2000-11-30 18:01:41 +00:00
stskeeps 17932efad0 . 2000-11-30 17:59:09 +00:00
stskeeps 82a657a63e +- Fixed a /whois bug, reported by BiGi 2000-11-30 17:56:53 +00:00
stskeeps 12c9891916 . 2000-11-30 17:53:30 +00:00
stskeeps 9511d161c6 . 2000-11-30 17:08:06 +00:00
stskeeps 1e39df2cb8 . 2000-11-30 16:50:35 +00:00
stskeeps 6cdc422490 *** empty log message *** 2000-11-30 16:49:22 +00:00
stskeeps d6247b9a19 +- Added some credits 2000-11-30 16:45:17 +00:00
stskeeps a896d4f71d +- Added hatblade's files 2000-11-30 16:39:29 +00:00
stskeeps ef7c0d6672 . 2000-11-30 13:31:06 +00:00
stskeeps 7adf05ab64 +- Added SICI information, Donation information, fixed a ./Config problem
+  overwriting certs ..
2000-11-30 13:16:00 +00:00
stskeeps 4eda3e1752 +- Fixed a typo in ssl.c 2000-11-30 11:19:54 +00:00
stskeeps d7a342fed1 +- If a +r user is /who'ed, it shows a "r" in flags field. Suggested by
+  Mirar.
2000-11-30 07:16:41 +00:00
stskeeps 8894015354 +- Fixed overflow in SJOIN
+- Added SMO *, all users
2000-11-29 21:03:41 +00:00
stskeeps 9019f35565 +- Fixed some /whois channels code, which may break +I /whois 2000-11-28 07:19:05 +00:00
codemastr 92cdd762c4 added code to makenet to stop fake submissions 2000-11-26 20:33:43 +00:00
stskeeps 8dce2d175c +- Removed "on network" in /whois oper 2000-11-26 10:31:10 +00:00
codemastr 2b78d45287 fixed a /map bug where U:lines were showed when HIDE_ULINES was set 2000-11-25 20:45:38 +00:00
stskeeps fd6eed4477 . 2000-11-25 13:43:48 +00:00
codemastr 7461b22a16 updated docs 2000-11-24 18:07:30 +00:00
codemastr 0588f18cbb ... 2000-11-24 16:41:59 +00:00
stskeeps b318e6a66a +- Added some network files and even more network files
+- Fixed some copyright stuff in ssl.c
+- Fixed a /map problem
2000-11-24 15:05:18 +00:00
stskeeps 4e26bd1379 . 2000-11-24 06:13:51 +00:00
codemastr dba0d3b7c0 added more network files 2000-11-24 01:24:44 +00:00
codemastr 9159c377de added some network files 2000-11-23 21:08:02 +00:00
stskeeps 4712fe781c +- Added some more support for some even more SJB64 stuff 2000-11-23 19:37:16 +00:00
codemastr d0f4a514d4 added some SJB64 stuff 2000-11-23 19:25:12 +00:00
codemastr 6c59c5b733 removed CRYPTOIRCD 2000-11-23 19:08:02 +00:00
stskeeps 8c96800c80 +- Removed last point of confusion in ALN/NS 2000-11-23 18:52:57 +00:00
stskeeps 7df008ead4 +- Changed some stuff with SSL, you may want to seperate server.pem into
+  server.key.pem and server.cert.pem (or "rm Makefile" and "./Config")
+- Fixed a couple of SJOIN/Link problems detected by Curt|s
2000-11-22 20:38:00 +00:00
codemastr 7b068178a1 fixed a mass G:line bug in /rehash 2000-11-22 19:34:14 +00:00
stskeeps e4a1669632 . 2000-11-22 15:15:47 +00:00
stskeeps bba7e664b6 +- Added so /gline and /shun accepts time periods in 1d2h3s etc. a recode of
+  some potvin stuff
+- Added so blocking is only effective when SSL_connect()'ing
2000-11-22 12:25:28 +00:00
stskeeps 108639b960 +- Fixed cutoff server infos in synch 2000-11-22 07:14:03 +00:00
stskeeps 7a3d7c8b7f +- Added OPT target OPT_SJB64 and OPT_NOT_SJB64
+- Made SSL server<->server work, using __blocking__ sockets (this is only
+  in connect moment thou) -stskeeps
+- Removed 1.0 msg/s when not in HTM
2000-11-21 21:46:19 +00:00
stskeeps 32f0e3f871 *** empty log message *** 2000-11-21 19:39:54 +00:00
stskeeps 678ac0f7cf +- Added SJOIN (SJ3 only) instead of JOIN/MODE in /join and discovered a bug in
+  SJOIN code, that if the line doesnt have a " " appeneded, it wont take the
+  last users or first for that sake. Hopefully patched SJ3 code for it
+- Added OPT target OPT_SJB64 and OPT_NOT_SJB64
2000-11-21 18:42:45 +00:00
stskeeps f6a0415148 +- Fixed-fixed-fixed the U:line branching thing made by codemastr
+- Fixed a G: line-turn-into Z:line problem, reported by eYe-Man
2000-11-21 16:33:58 +00:00
stskeeps 0505a1ff50 +- Removed remapping fds, and did a severe select() speedup, suggested by
+  Demiurgus. Should speed CPU a lot
2000-11-19 22:22:43 +00:00
codemastr 5b515b86b4 updated some messages 2000-11-19 20:37:50 +00:00
stskeeps af8b08775d +- Fixed-fixed-fixed the \r\n bug and removed some useless cpu wasting code 2000-11-19 20:29:43 +00:00
stskeeps ae3936aca5 +- Fixed \r\n bug, hopefully
+- made SSL use same cert client/server
+- Fixed help.c bug reported by Curt|s
+- Different fixes, unreal.tspre.org -> unrealircd.com
2000-11-19 19:45:02 +00:00
stskeeps 3a5e5ee45a +- Fixed the masskill bug, hopefully. Was a delimiter/number array bug in
+  find_server_b64_or_real, causing negative base64 to be accepted (bad).
+  value 1-256 will never be able to be in two letters (a server name)
2000-11-19 18:26:20 +00:00
stskeeps e6b2159245 +- Fixed the "Bad file descriptor" bug in SSL. This bugfix may be a bit risky
+  as it is manipulating BIO fds. The reason openssl freaked at this, was
+  that when a fd is closed, we change fds from 4 to 3 etc, in other words,
+  we renumber fds. SSL didn't know this and if you would call SSL_set_fd it
+  would close the connection/crash. Added SSL_change_fd() to change the FD
+  directly through BIO_set_fd.
2000-11-19 18:05:03 +00:00
codemastr 4639a2b229 Replaced +I with +V in an error message 2000-11-17 00:18:16 +00:00
stskeeps 648677c637 +- Fixed +d (deaf) so it works again
+- Fixed a SJOIN3<->services problem
2000-11-16 09:02:54 +00:00
codemastr 0c9f2aa846 Removed some leftovers from the &channel code (which fixed a minor bug as well) 2000-11-15 23:33:14 +00:00
codemastr ef3397baf6 TODO updated 2000-11-12 22:15:16 +00:00
stskeeps 293125eb84 +- #define STATSWRITING will make ircd write ircd.stats every 4 seconds,
+  idea/sortof by WaveRide
+    Format of ircd.stats:
+       <global users>
+       <global invisible users>
+       <global servers>
+       <irc operators>
+       <unknown connections>
+       <local clients>
+       <local servers>
+       <local max clients>
+       <global max clients>
2000-11-12 17:57:05 +00:00
stskeeps 7e8ecc7dac +- Fixed NO_OPEROVERRIDE bug reported by otherguy 2000-11-12 15:04:33 +00:00
stskeeps 7debfeb86a . 2000-11-10 21:05:54 +00:00
stskeeps 02582580dd +- Added /botserv /bs command, patch by ATHnet.de 2000-11-10 21:01:11 +00:00
drbin 50d67017fc removing accidental commit 2000-11-10 20:37:22 +00:00
stskeeps 5b6dbb1e54 fixes 2000-11-10 14:34:34 +00:00
stskeeps 98c6c668ae . 2000-11-07 14:47:50 +00:00
stskeeps 9dfc0828f9 . 2000-11-07 14:41:38 +00:00
stskeeps 5a93d1a5e9 +- Fixed the masskill bug with replacing "Server Exists" code.. i removed it
+  accidentialy last time
2000-11-07 05:51:14 +00:00
codemastr f97882d2bb fixed some bugs 2000-11-05 20:29:54 +00:00
stskeeps 41e02c72a0 +- Fixed compile error with SSL 2000-11-05 19:36:11 +00:00
stskeeps e64c18860f . 2000-11-05 18:15:55 +00:00
codemastr 6510adeb23 memory clean ups 2000-11-04 19:02:24 +00:00
stskeeps f954969f7d +- Possible fixed a internal server list bug 2000-11-02 17:14:47 +00:00
stskeeps fea8930bb2 +- Autodetects /usr/sbin/openssl now, thanks trinity
+- Fixes a missing : in SJOIN
2000-11-01 06:13:54 +00:00
codemastr d51af6f8b5 tokenized PING and PONG 2000-10-30 21:47:54 +00:00
stskeeps 6d9e619b26 +- Possible fixed some b64 bugs 2000-10-30 15:46:44 +00:00
stskeeps 2fd3104391 . 2000-10-29 18:48:15 +00:00
stskeeps bea668a89f +- Probably fixed the hash bug, again. 2000-10-29 18:19:44 +00:00
codemastr c2de53cf85 Fixed the /list showing only 64 channels bug 2000-10-29 18:02:59 +00:00
stskeeps d0404fd0e8 +- Added TS2ts (supporting the SJB64 stuff), and fixed the !0 timestamp bug 2000-10-29 17:25:08 +00:00
stskeeps 4fb309fbde -- Fixed a wierd channel message bug
+- Fixed a wierd channel message bug ||
+- Fixed a bug where non-NS servers would crash when linking
2000-10-29 16:08:20 +00:00
stskeeps e50d397e93 . 2000-10-29 12:22:19 +00:00
stskeeps 8735a0f6bf . 2000-10-29 12:17:49 +00:00
stskeeps b6e61e1302 +- Fixed bug where duplicate numerics could occur
+- Fixed the hashing bug (thank you ROXnet ...)
2000-10-29 10:57:18 +00:00
stskeeps 2353bd2011 . 2000-10-29 10:40:31 +00:00
stskeeps 56dc3a3e1d . 2000-10-29 09:17:19 +00:00
stskeeps 856282da07 +- Fixed a linking bug (where did that come from) 2000-10-29 08:14:43 +00:00
stskeeps cdea0263ac +- Fixed the /list bug, reported by many people 2000-10-28 22:40:28 +00:00
stskeeps 4400b32055 +- Added some fixes on the SJB64 crashing bug, and added tokenization in
+  channel messsages (yahooooo!)
2000-10-28 20:57:24 +00:00
codemastr 714c97b006 Added chmode +N - no nick changes 2000-10-28 19:04:09 +00:00
codemastr 2c5abc8c2d removed sendto_helpops 2000-10-28 17:07:51 +00:00
stskeeps 00b464154b +- Fixed the SJB64 bugs that misplaced users 2000-10-28 15:42:27 +00:00
codemastr e534e67628 made use of ircsprintf in more places 2000-10-27 22:28:41 +00:00
codemastr 10bc9a408b made IsULine take 1 param 2000-10-27 20:50:58 +00:00
codemastr 8a95221fae various fixes 2000-10-26 22:12:47 +00:00
stskeeps 71bdc5c08d +- Added protoctl SJB64, which adds B64-9 timestamps to many timestamping
+  operations
+- Added ircsprintf %B (base64-9^10) with ! as prefix, and %b (no prefix)
2000-10-26 17:09:35 +00:00
stskeeps 857b3c3a84 +[Unreal3.1.1-Darkshades]
+- Fixed a warning in CENSOR_QUIT
+- Fixed the G:Line user wrongly matching (ip-alike addys didnt check user)
2000-10-26 16:01:32 +00:00
stskeeps 7eb9d0e71a +- Made find_server_b64_or_real be a little faster, possible fixing bug
+- Made /stats s checking check for sanity or insanity (ignore them for 0
+  numerics)
+- Fixed SJOIN (mp2parv) bug, that caused insane desynchs
+- Changed Cannot find server message to be to sendto_realops
+- Fixed a warning in CENSOR_QUIT
2000-10-26 13:50:44 +00:00
stskeeps f4fde73489 . 2000-10-25 18:32:45 +00:00
stskeeps 14bb1968ba Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.258
diff -u -r1.1.1.1.2.1.2.1.2.258 Changes
--- Changes	2000/10/22 17:51:31	1.1.1.1.2.1.2.1.2.258
+++ Changes	2000/10/25 18:26:37
@@ -638,3 +638,5 @@
 - Merged in changes from TEMPcvs branch
 - Fixed a /UNSQLINE para problem, found by Joe
 - #define SHOW_SECRET now allows all ircops to see +s channels in /whois.  If not defined, only net/tech admins can.
+- Added #define CENSOR_QUIT, for WaveRide
+- Fixed hashing bug that caused the server to crash on exit
2000-10-25 18:26:40 +00:00
angel11 ee31dd9fa0 Changed the way +s channels show up in /whois 2000-10-22 17:51:31 +00:00
stskeeps 30be1fa550 +- Fixed a /UNSQLINE para problem, found by Joe 2000-10-22 06:35:50 +00:00
stskeeps aa0ac19e18 +- Changed ./Config to detect SSL better, and generate certificates properly
+- Removed some annoying logging in ssl.c
+- Merged in changes from TEMPcvs branch
2000-10-21 06:56:22 +00:00
stskeeps 8c481239de +- Made SHOWCONNECTNOTICES work properly again, also with SSL 2000-10-07 18:51:36 +00:00
codemastr 8297e30cd4 .. 2000-10-07 18:28:19 +00:00
codemastr 0983f82c08 Added some P:line flags 2000-10-07 18:08:08 +00:00
stskeeps 554f1a0c15 +- Added SSL connections, open ports with P:ip:s:*:port to make them SSL
+  ports, made after hq.alert.sk's implementation
2000-10-07 06:34:33 +00:00
stskeeps e94bf80328 SSL support for UnrealIRCD! 2000-10-07 06:33:42 +00:00
stskeeps 5b3b13772b *** empty log message *** 2000-10-04 18:22:07 +00:00
stskeeps 32122c7018 .. 2000-09-17 15:24:01 +00:00
drbin a1b617b6d0 *** empty log message *** 2000-09-17 15:19:54 +00:00
drbin a46f14412d Fixed Bug in Win32 New DNS system ... bloody pointers and locking 2000-09-17 15:18:05 +00:00
drbin 0f2dd2ef18 NewDNS System 2000-09-17 11:43:36 +00:00
cvs2hg bfb98ee28f fixup commit for tag 'unreal3_1_sf' 2000-09-17 10:11:43 +00:00
stskeeps b0c04f4b43 . 2000-09-17 10:11:42 +00:00
stskeeps 362ec0b08d +- Fixed the passwd NICK problem 2000-09-16 19:39:33 +00:00
stskeeps b3fc0f5d6b +- FIXED "BUG" caused by NEWDNS *shrug* 2000-09-16 18:21:29 +00:00
drbin 40075204f0 NewDNS 2000-09-15 20:42:06 +00:00
drbin 9de62da6f3 NewDNS syetem 2000-09-15 20:32:19 +00:00
drbin 98047de919 New DNS UPDATE 2000-09-15 20:16:11 +00:00
stskeeps 29b4c9c983 +- Possible fixed the SJOIN kick bug (mode +Q), servers can now always kick 2000-09-10 18:08:39 +00:00
stskeeps 5392dd8acf +- Fixed /mode # + bug reported by PhatNet/Mind 2000-09-09 20:34:16 +00:00
codemastr 8f561e9337 added LIST_SHOW_MODES to list chmodes in /list 2000-09-09 19:21:47 +00:00
codemastr 6a356f7e2d fixed -Wall warnings 2000-09-08 21:58:11 +00:00
codemastr 978dd4071e Major changes to the way +I works 2000-09-07 21:10:40 +00:00
angel11 72cd2b5e99 Fixed two files that got screwed up in commit (my bad) 2000-09-04 20:18:25 +00:00
angel11 0fdef4f961 Away msgs no longer in whowas 2000-09-04 20:06:12 +00:00
codemastr 73e45d7537 fixed some +K bugs 2000-09-04 19:39:19 +00:00
stskeeps 493ba9981f +- Modified and fixed the NOTICE bug totally, with some waste of the nospoof
+  system
2000-09-03 18:16:25 +00:00
stskeeps cd4349598d +- Fixed a wierd NOTICE bug 2000-09-03 16:54:16 +00:00
stskeeps 537a91666e +- Fixed some REAL dumb find_server_quick bugs 2000-09-03 16:35:30 +00:00
drbin b6dee3fd9d *** empty log message *** 2000-09-02 21:48:28 +00:00
drbin 6cbcc627cf *** empty log message *** 2000-09-02 21:32:59 +00:00
drbin 2bb36dd76c *** empty log message *** 2000-09-02 20:58:40 +00:00
drbin e486efb289 *** empty log message *** 2000-09-02 20:48:41 +00:00
drbin 5c0151f976 Simple Usage Docs for wircd 2000-09-02 20:39:30 +00:00
drbin c5b7e0c1e7 *** empty log message *** 2000-09-02 20:24:33 +00:00
drbin 88c77ce89e *** empty log message *** 2000-09-02 20:16:31 +00:00
codemastr e85a37b814 removed /users and all utmp calls 2000-09-02 17:37:35 +00:00
codemastr a7ee96c3ce fixed a bug when running the ircd with -h 2000-09-02 16:32:28 +00:00
drbin 377d9554d3 Fixed previous thing again 2000-09-02 16:03:15 +00:00
drbin ea41e25761 fixed "if (sptr->passwd[0])" causing win32 fault 2000-09-02 15:50:07 +00:00
stskeeps f564867259 . 2000-09-02 11:34:35 +00:00
stskeeps 23438196eb Fixed a NOTICE bug 2000-09-02 07:52:18 +00:00
stskeeps 55a0b03f03 . 2000-09-02 07:48:52 +00:00
codemastr e68c66b260 ... 2000-09-01 21:09:21 +00:00
codemastr 7cbbef2e36 Made aClient->passwd dynamically allocated 2000-09-01 20:52:00 +00:00
codemastr ecdce7061b Made cached MOTDs dynamically allocated 2000-09-01 20:13:55 +00:00
codemastr 87ca77c48e made some updates to ./update 2000-09-01 15:49:31 +00:00
codemastr cca7cffb93 Fixed some morew -Wall warnings 2000-09-01 14:28:17 +00:00
codemastr bb4f0e3393 fixed some -Wall warnings, and removed all unused vars 2000-08-31 22:05:34 +00:00
stskeeps d83fb7d37f + - Added WHOIS command (working) to IRCbot-
+- Fixed a fun doublechar token problem (the AA unknown command)
2000-08-26 19:26:02 +00:00
stskeeps c07a9207ca +- Added IRCd bot (raw commands) and the IRC bot, webtv.c 2000-08-26 19:05:09 +00:00
stskeeps 7cde16eac1 +- Added IRCd bot (raw commands) and the IRC bot, webtv.c 2000-08-26 15:52:44 +00:00
stskeeps e03c9bdf42 +- Fixed another SJOIN problem, but not the exact one i was looking for 2000-08-26 14:24:22 +00:00
stskeeps 582e6b9f30 +- Removed SUMMON totally 2000-08-25 19:39:54 +00:00
stskeeps ad8a1bf785 +- More memory cleanups, changed aClient->refcnt to a signed char,
+  aClient->hopcount to unsigned char
+- Changed aChannel->mode.msgs & .per to unsigned short, and changed
+  .kmode to unsigned char
+- Changed aChannel->users to unsigned short (max 65536 users per channel)
+  and FloodOpt->nmsg to an unsigned short
2000-08-25 19:30:41 +00:00
codemastr 3e6f1fce93 more memory cleanups 2000-08-25 19:20:54 +00:00
codemastr 18dde16b11 memory cleanups 2000-08-25 18:40:09 +00:00
stskeeps d3cfcdc6b0 - Removed the ERR_NOTONCHANNEL message in numeric.c =P 2000-08-25 17:52:44 +00:00
stskeeps cccda143b1 Last part of fix 2000-08-25 17:32:24 +00:00
stskeeps 649b5d812e -
+- Fixed the G:line bugs, i hope - moved tkl_sweep into a loopstruct
2000-08-25 17:29:24 +00:00
stskeeps e3339d4003 eek 2000-08-25 16:20:41 +00:00
stskeeps 1786f8f03b same as above 2000-08-25 16:18:57 +00:00
stskeeps c28527ade3 . 2000-08-25 16:18:11 +00:00
stskeeps 90f0809b44 . 2000-08-25 15:41:37 +00:00
stskeeps dc5f3390bc . 2000-08-22 15:40:28 +00:00
stskeeps 25760a38f1 . 2000-08-22 15:40:27 +00:00
stskeeps 18c669cf47 .. 2000-08-22 15:30:56 +00:00
cvs2hg ae21e16beb fixup commit for tag 'unreal3_1_plus' 2000-08-20 11:58:24 +00:00
stskeeps 623f6a44a0 . 2000-08-20 11:58:23 +00:00
stskeeps 4981573f80 +- Fixed /server so it doesnt support SERVER name :info anymore.. 2000-08-20 08:21:46 +00:00
stskeeps cb5de25f7e . 2000-08-20 08:04:39 +00:00
stskeeps ae1a133435 +- Made /kick for opers only be possible for netadmin/techadmin 2000-08-20 08:03:13 +00:00
stskeeps fc1a6c313b +- Fixed ban merging/similar bug in SJOIN 2000-08-19 17:48:58 +00:00
stskeeps 601d97dd93 +- Fixed some problems/typos/notlookingsogood (TM) bugs, in the tkl code 2000-08-19 17:44:44 +00:00
codemastr b69361e947 fixed a typo in /vhost 2000-08-19 17:25:38 +00:00
stskeeps c064f9d5e9 +- Removed INV_TRACK 2000-08-19 15:09:38 +00:00
stskeeps fe866e500b . 2000-08-19 15:06:57 +00:00
stskeeps 0bb293925d +- Made vhost strip too long vhosts 2000-08-19 14:40:42 +00:00
stskeeps fe95cb9a1f + and dynconf, chrestrict 2000-08-19 14:28:23 +00:00
stskeeps cd277778a3 . 2000-08-19 13:59:45 +00:00
stskeeps 7bc10582c5 +- Added some portability stuff 2000-08-19 13:49:35 +00:00
stskeeps b93a3e9e93 Checkmate 2000-08-19 13:36:02 +00:00
stskeeps 06a6b4c07f Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.201
diff -u -r1.1.1.1.2.1.2.1.2.201 Changes
--- Changes	2000/08/18 19:04:02	1.1.1.1.2.1.2.1.2.201
+++ Changes	2000/08/19 10:08:57
@@ -560,3 +560,4 @@
 - Added IRIX support (does it work?)
 - Fixed crypter so it actually functions (Makefile now sets mode 700) and
   it encrypts X and N lines too.
+- Fixed empty mode sends in register_user, reported by Bagge
2000-08-19 10:08:58 +00:00
angel11 34b46855a2 Fixed crypter 2000-08-18 19:04:02 +00:00
codemastr 65393c21ca *** empty log message *** 2000-08-18 16:44:35 +00:00
codemastr 0c9fd1139c added IRIX support (does it work?) 2000-08-18 16:44:06 +00:00
codemastr d5da9ddb9e fixed a +h bug 2000-08-18 16:14:24 +00:00
stskeeps 70873bcf00 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.197
diff -u -r1.1.1.1.2.1.2.1.2.197 Changes
--- Changes	2000/08/17 19:27:59	1.1.1.1.2.1.2.1.2.197
+++ Changes	2000/08/18 16:02:24
@@ -555,3 +555,4 @@
   badwords :P, does not work in channels
 - Removed the old GLINE system, TKL is now standard.
 - Added INV_TRACK define, we want people testing this.
+- Fixed the -1 usercount bug, found by codemastr, fixed by Stskeeps
2000-08-18 16:02:25 +00:00
stskeeps a3ec5a5fb8 +- Removed the old GLINE system, TKL is now standard.
+- Added INV_TRACK define, we want people testing this.
2000-08-17 19:28:00 +00:00
stskeeps c0f596fbb7 + badwords :P, does not work in channels
+- Removed the old GLINE system, TKL is now standard.
\ No newline at end of file
2000-08-16 16:51:55 +00:00
stskeeps 4ae6cd2bf4 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.194
diff -u -r1.1.1.1.2.1.2.1.2.194 Changes
--- Changes	2000/08/13 19:03:33	1.1.1.1.2.1.2.1.2.194
+++ Changes	2000/08/15 19:42:31
@@ -550,3 +550,6 @@
 - Fixed a bug with mkpasswd on OpenBSD
 - Added desynch +e warning, and updated ./update enough ...
 - Updated update to work better, and that you can use lynx instead of wget
+- Added #undef SHUN_NOTICES, to add notices for users who are shunned
+- Fixed bug with U:Lines should be able to privmsg/notice and recieve
+  badwords :P, does not work in channels
\ No newline at end of file
2000-08-15 19:42:32 +00:00
codemastr 242d9ab45d ... 2000-08-14 18:47:12 +00:00
stskeeps a4d4b20b2c Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.193
diff -u -r1.1.1.1.2.1.2.1.2.193 Changes
--- Changes	2000/08/13 17:28:30	1.1.1.1.2.1.2.1.2.193
+++ Changes	2000/08/13 19:03:33
@@ -548,4 +548,5 @@
   problem
 - Hopefully fixed the +x problem
 - Fixed a bug with mkpasswd on OpenBSD
-- Added desynch +e warning, and updated ./update enough ...
\ No newline at end of file
+- Added desynch +e warning, and updated ./update enough ...
+- Updated update to work better, and that you can use lynx instead of wget
2000-08-13 19:03:33 +00:00
stskeeps d42135097a . 2000-08-13 18:34:04 +00:00
stskeeps 9c4d0c511a . 2000-08-13 17:28:30 +00:00
stskeeps 85790c8442 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.191
diff -u -r1.1.1.1.2.1.2.1.2.191 Changes
--- Changes	2000/08/13 16:09:57	1.1.1.1.2.1.2.1.2.191
+++ Changes	2000/08/13 17:24:47
@@ -548,3 +548,4 @@
   problem
 - Hopefully fixed the +x problem
 - Fixed a bug with mkpasswd on OpenBSD
+- Added desynch +e warning, and updated ./update enough ..
\ No newline at end of file
2000-08-13 17:24:48 +00:00
codemastr c0c478112f Fixed a bug with mkpasswd on OpenBSD 2000-08-13 16:09:58 +00:00
cvs2hg 5406e9fa99 fixup commit for tag 'unreal3_1_fixpack1' 2000-08-13 15:29:15 +00:00
stskeeps 030b9c8291 cvs diff -u Changes 2000-08-13 15:29:14 +00:00
stskeeps 4493453545 . 2000-08-13 15:03:06 +00:00
stskeeps df0a433709 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.187
diff -u -r1.1.1.1.2.1.2.1.2.187 Changes
--- Changes	2000/08/11 19:31:50	1.1.1.1.2.1.2.1.2.187
+++ Changes	2000/08/13 14:39:47
@@ -543,3 +543,4 @@
 - Added Dianora's /userhost
 - Recoded /links using NS
 - Recoded /map a bit using NS, and added usercounts to Server struct
+- Some crazy time_t -> TS stuff, will save us some time in 2038
2000-08-13 14:39:49 +00:00
stskeeps 6c3bbf0009 *** empty log message *** 2000-08-11 19:34:45 +00:00
stskeeps bf7a3d3133 +- Recoded /map a bit using NS, and added usercounts to Server struct 2000-08-11 19:31:51 +00:00
stskeeps fb602a74e4 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.185
diff -u -r1.1.1.1.2.1.2.1.2.185 Changes
--- Changes	2000/08/11 18:01:14	1.1.1.1.2.1.2.1.2.185
+++ Changes	2000/08/11 18:34:57
@@ -541,3 +541,4 @@
 - Fixed a STRIPBADWORDS bug
 - Fixed a BotMOTD bug
 - Added Dianora's /userhost
+- Recoded /links using NS
2000-08-11 18:34:58 +00:00
stskeeps 040d480e99 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.184
diff -u -r1.1.1.1.2.1.2.1.2.184 Changes
--- Changes	2000/08/08 22:29:15	1.1.1.1.2.1.2.1.2.184
+++ Changes	2000/08/11 18:01:13
@@ -540,3 +540,4 @@
 - Fixed a PART bug
 - Fixed a STRIPBADWORDS bug
 - Fixed a BotMOTD bug
+- Added Dianora's /userhost
2000-08-11 18:01:15 +00:00
codemastr c90d13174d fixed a botmotd bug 2000-08-08 22:29:16 +00:00
codemastr 97e41a7e42 various fixes 2000-08-08 17:22:36 +00:00
stskeeps 7b6582bdcc . 2000-08-08 04:48:46 +00:00
stskeeps 5fde2907f5 *** empty log message *** 2000-08-07 17:48:06 +00:00
cvs2hg 71ce47a71b fixup commit for tag 'unreal3_1_final' 2000-08-07 17:21:49 +00:00
cvs2hg 98b483ee88 fixup commit for tag 'unreal3_1' 2000-08-07 17:21:48 +00:00
stskeeps 4ee74b07e3 *** empty log message *** 2000-08-07 17:21:47 +00:00
stskeeps d33f4a8120 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.179
diff -u -r1.1.1.1.2.1.2.1.2.179 Changes
--- Changes	2000/08/07 16:16:14	1.1.1.1.2.1.2.1.2.179
+++ Changes	2000/08/07 16:56:17
@@ -530,3 +530,4 @@
   Config, and all the things we want them to read/do to compile the IRCd
 - Updated PREFIX Client Protoctl
 - Added ^MrMike^'s command list, this one will be updated
+- Removed ID_CVS, hopefully fixing some bastard stuff
2000-08-07 16:56:31 +00:00
stskeeps b7920658e4 *** empty log message *** 2000-08-07 16:16:58 +00:00
stskeeps 135b4d9d87 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.178
diff -u -r1.1.1.1.2.1.2.1.2.178 Changes
--- Changes	2000/08/07 16:08:24	1.1.1.1.2.1.2.1.2.178
+++ Changes	2000/08/07 16:16:14
@@ -529,3 +529,4 @@
 - Added script ./Setup which makes the user forced through Unreal.nfo, FAQ,
   Config, and all the things we want them to read/do to compile the IRCd
 - Updated PREFIX Client Protoctl
+- Added ^MrMike^'s command list, this one will be updated
2000-08-07 16:16:15 +00:00
codemastr 8af8d17d52 fixed PREFIX= 2000-08-07 16:08:24 +00:00
stskeeps d11a065d37 *** empty log message *** 2000-08-07 16:05:37 +00:00
stskeeps 771dee3a5f *** empty log message *** 2000-08-07 15:50:44 +00:00
stskeeps ea519e2a6d . 2000-08-07 15:12:10 +00:00
stskeeps 9ddffa08ea *** empty log message *** 2000-08-07 15:11:11 +00:00
stskeeps 1e7c36aac0 +- Added script ./Setup which makes the user forced through Unreal.nfo, FAQ,
+  Config, and all the things we want them to read/do to compile the IRCd
2000-08-07 15:09:06 +00:00
stskeeps 3de653cbf2 . 2000-08-07 15:03:10 +00:00
stskeeps 4a08c9ba70 *** empty log message *** 2000-08-07 14:52:24 +00:00
stskeeps b750382333 . 2000-08-07 12:49:22 +00:00
stskeeps 98eb86460b . 2000-08-06 15:22:44 +00:00
stskeeps 3026350806 +- Made find_server_quick a prototype, and made some work more quicker as
+  well
2000-08-06 13:29:46 +00:00
stskeeps da3100e642 +- Changed some find_server(name, NULL) to find_server_quick to speed up
+  lookup of servers
2000-08-06 13:21:52 +00:00
stskeeps 6c1cefed98 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.171
diff -u -r1.1.1.1.2.1.2.1.2.171 Changes
--- Changes	2000/08/06 08:25:18	1.1.1.1.2.1.2.1.2.171
+++ Changes	2000/08/06 13:01:54
@@ -518,3 +518,5 @@
 - Updated ./ircd to also say to look at ircd.log
 - Fixed a SQLINE synch bug
 - Added command line option -F to prevent the ircd to fork out
+- Fixed the f*cken TKL bug
+- Fixed a netsplit bug
2000-08-06 13:01:56 +00:00
stskeeps 6f7b608fac Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.170
diff -u -r1.1.1.1.2.1.2.1.2.170 Changes
--- Changes	2000/08/06 08:06:36	1.1.1.1.2.1.2.1.2.170
+++ Changes	2000/08/06 08:24:08
@@ -517,3 +517,4 @@
   the ircd logs it to ircd.log and dies
 - Updated ./ircd to also say to look at ircd.log
 - Fixed a SQLINE synch bug
+- Added command line option -F to prevent the ircd to fork out
2000-08-06 08:25:18 +00:00
stskeeps 081d14d3e9 +- Fixed a SQLINE synch bug 2000-08-06 08:06:37 +00:00
codemastr 1b47753c0f made a check to see if the server name has a . in it if not, die 2000-08-04 20:16:12 +00:00
codemastr 1ebe25c025 made /knock without a reason work and some /knock clean ups 2000-08-04 19:32:00 +00:00
stskeeps 13790b01e3 *** empty log message *** 2000-08-04 12:14:24 +00:00
stskeeps 004f9222a1 *** empty log message *** 2000-08-03 11:07:46 +00:00
stskeeps c3e053033c +- Fixed a SJ3 bug with ban syncing to SJ2 servers 2000-08-03 10:56:02 +00:00
angel11 5561c155de Opers now see +s channels in /whois 2000-08-02 20:32:07 +00:00
codemastr 33c6e5c93b /chghost bug fix 2000-08-02 18:52:10 +00:00
stskeeps b7ee74ec97 +- Disabled anything with time in /list options temporary, causes bugs 2000-08-02 17:45:14 +00:00
codemastr 58f7ef9ca8 fixed a little typo in umode 2000-08-02 17:37:32 +00:00
codemastr 7f96ccb01e more +u fixes 2000-08-02 17:27:09 +00:00
codemastr 7666ceab87 fixed the ulimit core size failed bug 2000-08-02 17:11:39 +00:00
stskeeps e7c69eca78 +- Possible fixed the lopts bug (which i didnt))
+- Fixed a egcs problem in Config, the strtok bug
2000-08-02 15:59:03 +00:00
stskeeps d69bcc41fa *** empty log message *** 2000-08-02 15:46:15 +00:00
stskeeps 4d616cf680 +- Fixed the +lL (+Ll) bug, will first be fixed 100% when all is 3.1 2000-08-02 15:11:11 +00:00
stskeeps dc1eb8bddf Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.156
diff -u -r1.1.1.1.2.1.2.1.2.156 Changes
--- Changes	2000/08/01 17:27:52	1.1.1.1.2.1.2.1.2.156
+++ Changes	2000/08/02 14:55:29
@@ -496,3 +496,5 @@
 - Added sendto_chanops_butone because of codemastr's laziness
 - Fixed a few +u bugs
 - Fixed a +I bug (yes another one)
+- Changed channel.c so that when an opped non +q/+a Oper kicks a user who
+  is +q/+a it invokes an OperKick (patch by llthangel)
2000-08-02 14:55:33 +00:00
codemastr c9e4ba4c98 fixed a few +u bugs and a +I bug 2000-08-01 17:27:53 +00:00
stskeeps c1c1aa2909 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.154
diff -u -r1.1.1.1.2.1.2.1.2.154 Changes
--- Changes	2000/08/01 16:30:15	1.1.1.1.2.1.2.1.2.154
+++ Changes	2000/08/01 16:34:06
@@ -493,3 +493,4 @@
 - Fixed SVS2MODE bug with illegal modes
 - Fixed /notice @%+ bug, where it didnt work at all
 - Fixed a small chmode +u bug
+- Added sendto_chanops_butone because of codemastr's laziness
2000-08-01 16:34:07 +00:00
codemastr 6f9606b331 fixed a small +u bug 2000-08-01 16:30:16 +00:00
stskeeps 345f51b684 -- Fixed SVS2MODE bug with illegal modes
\ No newline at end of file
+(rc2)
+- Fixed SVS2MODE bug with illegal modes
+- Fixed /notice @%+ bug, where it didnt work at all
2000-08-01 16:11:28 +00:00
stskeeps d885489c48 +- Fixed SVS2MODE bug with illegal modes
\ No newline at end of file
2000-08-01 15:54:53 +00:00
cvs2hg 4659dab89c fixup commit for tag 'unreal3_1_rc2' 2000-08-01 10:10:27 +00:00
stskeeps 760dc8dab8 .CVS: ---------------------------------------------------------------------- 2000-08-01 10:10:26 +00:00
stskeeps 5133d62d3c +- Changed channel.c so when you kick someone as halfop it doesn't show as an
+  OperKick (unless you kick an op) (reported by ^Fanta, patch by llthangel)
2000-08-01 06:11:39 +00:00
stskeeps eded88dd61 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.149
diff -u -r1.1.1.1.2.1.2.1.2.149 Changes
--- Changes	2000/07/29 13:34:20	1.1.1.1.2.1.2.1.2.149
+++ Changes	2000/07/31 18:13:34
@@ -486,3 +486,4 @@
 - Fixed a problem in SVS2MODE not displaying mode changes, and well known
   why
 - Recoded SVSNOOP, but the IRCd doesn't get it at all??
+- added llthangel to credits
2000-07-31 18:13:35 +00:00
stskeeps bfb2ce7bce . 2000-07-29 18:10:48 +00:00
stskeeps 6854c9a063 *** empty log message *** 2000-07-29 13:42:37 +00:00
stskeeps 25077eadc1 +- Recoded SVSNOOP, but the IRCd doesn't get it at all?? 2000-07-29 13:34:21 +00:00
stskeeps 3f41561390 +- Introduced NS in SQLINE..
+- Fixed a problem in SVS2MODE not displaying mode changes, and well known
+  why
2000-07-29 13:02:31 +00:00
stskeeps e1499ca0ed +- Introduced NS in SQLINE.. 2000-07-29 12:37:28 +00:00
stskeeps b61f000488 +- Fixed a problem in synch using acptr->name as info line 2000-07-29 12:16:25 +00:00
stskeeps 3ae66ae4e0 +- NS introduction in sendto_serv_butone_token
+- Fixed Q:lined nick NickServ from <unregistered> on Nickname Server message
2000-07-29 11:36:43 +00:00
stskeeps 51a5fa808e *** empty log message *** 2000-07-29 08:27:21 +00:00
stskeeps 236f8ed033 +- NS introduction in sendto_serv_butone_token 2000-07-29 08:08:46 +00:00
codemastr a977359d9f fixed a _small_ memory over use 2000-07-28 20:02:52 +00:00
stskeeps 6426522201 +- Removed UPING UDP socket. Only resfd opens a udp fd now 2000-07-28 19:25:30 +00:00
stskeeps 47ddee28a4 +- Changed find_server_quick to work with masks too .. 2000-07-28 19:19:21 +00:00
stskeeps 249edda423 +- Added llthangel's whoisfix.patch, Makes sure +hv users show up as
+  %#channel instead of +#channel. Bug report by ^Fanta.
2000-07-28 19:10:26 +00:00
stskeeps bde554aaf9 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.138
diff -u -r1.1.1.1.2.1.2.1.2.138 Changes
--- Changes	2000/07/26 10:46:10	1.1.1.1.2.1.2.1.2.138
+++ Changes	2000/07/28 18:57:30
@@ -472,5 +472,5 @@
 - Removed SVSMODE +l support, and fixed servicestamp and +d support
 - Changed to ircu/hybrid6/unreal mix of numeric 005
 - Fixed a SJ3 Fake Direction loopbug (kills on nick collisions)
-- NS part 1
-- SJ3 fixes
+- SJ3 fixes, loop fix
+- Added NS, new generation ALN.
2000-07-28 18:57:41 +00:00
stskeeps 9ec9cba9d9 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.137
diff -u -r1.1.1.1.2.1.2.1.2.137 Changes
--- Changes	2000/07/25 15:37:52	1.1.1.1.2.1.2.1.2.137
+++ Changes	2000/07/26 10:46:07
@@ -472,4 +472,5 @@
 - Removed SVSMODE +l support, and fixed servicestamp and +d support
 - Changed to ircu/hybrid6/unreal mix of numeric 005
 - Fixed a SJ3 Fake Direction loopbug (kills on nick collisions)
-- NS part 1
\ No newline at end of file
+- NS part 1
+- SJ3 fixes
2000-07-26 10:46:10 +00:00
stskeeps f046832f10 Indentation. 2000-07-25 17:43:58 +00:00
stskeeps a055d59f9c indentiation 2000-07-25 15:41:55 +00:00
stskeeps a41b0b5bbb . 2000-07-25 15:37:54 +00:00
stskeeps bf7aad741d . 2000-07-25 14:12:42 +00:00
stskeeps cb74571261 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.135
diff -u -r1.1.1.1.2.1.2.1.2.135 Changes
--- Changes	2000/07/24 21:41:30	1.1.1.1.2.1.2.1.2.135
+++ Changes	2000/07/25 09:35:40
@@ -471,3 +471,4 @@
 - Removed a SJ3 debug msg
 - Removed SVSMODE +l support, and fixed servicestamp and +d support
 - Changed to ircu/hybrid6/unreal mix of numeric 005
+- Fixed a SJ3 Fake Direction loopbug (kills on nick collisions)
2000-07-25 09:35:43 +00:00
stskeeps 993180689a Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.134
diff -u -r1.1.1.1.2.1.2.1.2.134 Changes
--- Changes	2000/07/24 19:33:42	1.1.1.1.2.1.2.1.2.134
+++ Changes	2000/07/24 21:41:27
@@ -470,3 +470,4 @@
 - Added base64 encoding instead, for ALN v2 (NS)
 - Removed a SJ3 debug msg
 - Removed SVSMODE +l support, and fixed servicestamp and +d support
+- Changed to ircu/hybrid6/unreal mix of numeric 005
2000-07-24 21:41:33 +00:00
codemastr aecec0e171 . 2000-07-24 20:07:01 +00:00
stskeeps 52a5b1b038 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.133
diff -u -r1.1.1.1.2.1.2.1.2.133 Changes
--- Changes	2000/07/24 19:16:10	1.1.1.1.2.1.2.1.2.133
+++ Changes	2000/07/24 19:33:40
@@ -469,3 +469,4 @@
 - Removed ALN, and the ALN system.
 - Added base64 encoding instead, for ALN v2 (NS)
 - Removed a SJ3 debug msg
+- Removed SVSMODE +l support, and fixed servicestamp and +d support
2000-07-24 19:33:43 +00:00
stskeeps 9b181f575f Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.132
diff -u -r1.1.1.1.2.1.2.1.2.132 Changes
--- Changes	2000/07/24 18:58:13	1.1.1.1.2.1.2.1.2.132
+++ Changes	2000/07/24 19:16:08
@@ -468,3 +468,4 @@
 - Added /infoserv (you can stop bugging us now skold ;P)
 - Removed ALN, and the ALN system.
 - Added base64 encoding instead, for ALN v2 (NS)
+- Removed a SJ3 debug msg
2000-07-24 19:16:10 +00:00
stskeeps 7a9cade496 @@ -466,3 +466,5 @@
- SJ3 fixes. Let's hope this works (f*cken hell..)
 - Fixed a V:line bug
 - Added /infoserv (you can stop bugging us now skold ;P)
+- Removed ALN, and the ALN system.
+- Added base64 encoding instead, for ALN v2 (NS)
2000-07-24 18:58:18 +00:00
codemastr 009e5353e7 added /infoserv 2000-07-23 18:34:14 +00:00
stskeeps 2988283c76 . 2000-07-22 18:28:42 +00:00
stskeeps 7f3125a0e2 . 2000-07-22 17:31:22 +00:00
codemastr 07353dcf4b Fixed a V:line bug 2000-07-22 16:14:32 +00:00
stskeeps 110e114d90 +- SJ3 fixes. Let's hope this works (f*cken hell..) 2000-07-21 18:50:15 +00:00
stskeeps 8abce466d6 SJ3 fix 2000-07-17 21:06:16 +00:00
codemastr 6054bfabd2 fixed a +L bug and Config typo 2000-07-17 16:45:04 +00:00
stskeeps b1416fc0c0 . 2000-07-17 15:20:58 +00:00
stskeeps 160d1600a6 . 2000-07-17 10:11:26 +00:00
stskeeps 0ba15e3965 *** empty log message *** 2000-07-17 07:31:05 +00:00
stskeeps 5fe68141ad +- Fixed the pesky hostname bug 2000-07-17 07:04:03 +00:00
stskeeps df0815f9bd . 2000-07-16 20:32:39 +00:00
stskeeps 10ad7e34f5 . 2000-07-16 19:42:09 +00:00
stskeeps fcfb9aa3d2 . 2000-07-16 19:01:28 +00:00
codemastr b47a9f53cc added networks/shatstation.network 2000-07-16 19:00:25 +00:00
stskeeps 8617d1ba4c . 2000-07-16 18:55:11 +00:00
codemastr 9bccd6046d added networks/linuxsquare.network 2000-07-16 18:54:23 +00:00
stskeeps 1c8ea8df8c . 2000-07-16 18:49:03 +00:00
stskeeps 3f4174bb96 FUckeup stuff etc, but lets hope it works 2000-07-16 18:48:00 +00:00
codemastr d1839df783 fixed a +I bug 2000-07-16 16:58:17 +00:00
stskeeps 9390a647ed . 2000-07-16 13:39:18 +00:00
stskeeps 3856856120 . 2000-07-16 13:29:08 +00:00
stskeeps 587defb54e .
kd
2000-07-16 13:11:01 +00:00
stskeeps 047a43253c .
k
2000-07-16 13:07:18 +00:00
stskeeps f1c9feb8f7 . 2000-07-16 12:31:56 +00:00
stskeeps 81ce6d38a2 .
kxkx
2000-07-16 11:15:33 +00:00
stskeeps b57669903d .kd 2000-07-16 11:02:59 +00:00
stskeeps 0a7b6dfc3a .
k
: ----------------------------------------------------------------------
2000-07-16 10:31:38 +00:00
stskeeps 56663f23e1 . 2000-07-16 10:25:53 +00:00
stskeeps 0af5d85de7 . 2000-07-16 10:22:12 +00:00
stskeeps 5e9f767c86 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.116
diff -u -r1.1.1.1.2.1.2.1.2.116 Changes
--- Changes	2000/07/16 10:07:14	1.1.1.1.2.1.2.1.2.116
+++ Changes	2000/07/16 10:17:26
@@ -449,8 +449,5 @@
 - Made it so you can remove a protoctl by putting a - in front
 - Fixed a bug in summon
 - Added protection against webproxies
-- SJ3 part 2/3 and a VL fix
-- Indentation and more SJ3 fixes
 - Fixed TKL?
-- 3/4 SJ3 fix
-- Last part SJ3
+- Added SJ3, removed the old
2000-07-16 10:17:32 +00:00
stskeeps 515945254c fixed synching 2000-07-16 10:13:01 +00:00
stskeeps 9d966aa4d0 +- Last part SJ3 2000-07-16 10:07:14 +00:00
stskeeps bf26a46b15 . 2000-07-16 08:59:02 +00:00
stskeeps 6124a68fde +- 3/4 SJ3 fix 2000-07-16 08:58:48 +00:00
codemastr 65118165d6 Fixed the TKL bug? 2000-07-15 23:56:57 +00:00
stskeeps 2e461cba19 +- Indentation and more SJ3 fixes 2000-07-14 20:22:59 +00:00
stskeeps b89bcd31d9 +- SJ3 part 2/3 and a VL fix 2000-07-14 14:47:40 +00:00
codemastr a78d71ee8b *** empty log message *** 2000-07-09 18:47:25 +00:00
stskeeps 9e7138ace5 +- Added protection against webproxies 2000-07-09 18:44:33 +00:00
codemastr 50a94daec7 fixed a bug in summon 2000-07-09 18:13:53 +00:00
codemastr 401c3918af added ability to remove a protoctl flag 2000-07-07 19:36:12 +00:00
stskeeps eb842353cc +- Tokenized nick->nick PRIVMSG and NOTICE
\ No newline at end of file
2000-07-07 12:14:51 +00:00
stskeeps 6c67a4a6b1 +- Fixed some host revealing nick collision stuff 2000-07-07 09:35:35 +00:00
codemastr 3a385f679b added networks/staticedge.network 2000-07-06 18:11:16 +00:00
codemastr 30b6a30fc5 added networks/makenet 2000-07-06 18:05:03 +00:00
stskeeps 6dd738d91c - Fixed a /rehash -garbage bug reported by Curt|s 2000-07-06 17:13:45 +00:00
stskeeps 61b2e99257 - Added a #define capability to config.h (DISABLE_USERMOD),
disables /sethost, /setident, /chgname, /chghost, /chgident
2000-07-06 08:10:20 +00:00
stskeeps 84d8b082c2 +- Added regex portablity and checks in Config 2000-07-05 22:20:41 +00:00
stskeeps fc26ef3e44 +- Fixed a msg.h location problem ..
+- Added secure connections and openssl tracing to Config
2000-07-05 16:55:14 +00:00
stskeeps 32eaeaaf36 +- Fixed a msg.h location problem ..
\ No newline at end of file
2000-07-05 16:25:39 +00:00
stskeeps 8de5089b84 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.97
diff -u -r1.1.1.1.2.1.2.1.2.97 Changes
--- Changes	2000/07/05 15:11:43	1.1.1.1.2.1.2.1.2.97
+++ Changes	2000/07/05 16:25:14
@@ -436,3 +436,4 @@
 - Added VHP protoctl, (not in use in the synch). This makes virthost field
   in NICKv2 use the real virthost even if its +t. (Thanks to SL7)
 - Added support for the CR Java Chat auto join feature
+- Fixed a msg.h location problem ..
\ No newline at end of file
2000-07-05 16:25:19 +00:00
codemastr 3d7b0b6a0b added support for the CR Java Chat autojoin feature 2000-07-05 15:11:43 +00:00
stskeeps 04e9baae17 - Removed any trace of MD5, we use random() for nospoof now, this fixed a
license problem too
- Removed NOSPOOF_SEED01 and 02
- Added VHP protoctl, (not in use in the synch). This makes virthost field
  in NICKv2 use the real virthost even if its +t. (Thanks to SL7)
2000-07-05 13:05:34 +00:00
stskeeps 8a93ea7376 +- Fixed a sendto_serv_butone_token problem 2000-07-04 18:21:41 +00:00
stskeeps fa2a2c2234 - Added doc/crypto.doc describing the encrypted irc protocol 2000-07-04 11:25:37 +00:00
stskeeps 36154d7b10 - Added so stuff like Lost connection to, (report_error) only goes to realops
- Added some more descriptive error messages
2000-07-03 19:25:07 +00:00
stskeeps 5fcadbef9b .
k
2000-07-03 17:25:51 +00:00
codemastr ce9e5c4c84 Added OpenBSD 2.x support 2000-07-02 19:53:31 +00:00
codemastr d6fe0776a2 Fully added V:lines 2000-07-02 00:41:12 +00:00
stskeeps d5fd9a6ce9 +- Fixed some aligning in the VL PROTOCTL
+- Fixed some fucked up passwd stuff again ..
2000-07-01 12:59:00 +00:00
stskeeps 32fc008943 +- Fixed some aligning in the VL PROTOCTL 2000-07-01 10:50:56 +00:00
stskeeps 78545d38dc +- Fixed a crash problem on /quit or /squit 2000-06-30 20:51:03 +00:00
stskeeps 620c7e403d +- Fixed so that in +c it shows if a user is connected securely
+- Backported the passwd stuff, not needed.
2000-06-30 20:28:00 +00:00
codemastr 8ba0a10294 some V:line stuff 2000-06-30 16:33:03 +00:00
codemastr 8b0a1de92f added fclose() calls to vhost, dccdeny, and chrestrict confs 2000-06-29 18:18:37 +00:00
stskeeps b776a4d148 +- Fixed a ->passwd bug caused by codemastr.. 2000-06-29 12:23:26 +00:00
stskeeps a0dcb79a3a +- Added some more crypto stuff
+    - /crypto <algoritm> <keyfile laying in keys/> <parameters>
2000-06-28 20:54:49 +00:00
stskeeps 63e1fa2418 . 2000-06-28 19:45:39 +00:00
stskeeps f2d364aa8a +- Fixed crypto stuff 100% :)) 2000-06-28 19:37:17 +00:00
codemastr 9eeb7a2fc4 made K:line and n:line checking faster 2000-06-28 19:23:17 +00:00
codemastr 7144188368 made a major is_banned speed up 2000-06-28 17:11:55 +00:00
codemastr 2525edca20 removed list_channels 2000-06-28 16:56:21 +00:00
codemastr 279842d017 now can request topic without being a member, and removed topic , support 2000-06-28 16:15:58 +00:00
stskeeps 62323727a8 . 2000-06-27 20:22:33 +00:00
codemastr 645a04aec3 added option to encrypt restart/die passwords 2000-06-27 16:26:05 +00:00
codemastr b8f0063629 added encrypted I:line support 2000-06-27 15:45:41 +00:00
stskeeps 07104d2d7d . 2000-06-27 15:42:38 +00:00
stskeeps 68aba326e1 . 2000-06-27 13:22:57 +00:00
stskeeps 9b0f6b2a9c +- Some more crypto stuff, will work on the new engine tommorow 2000-06-26 21:41:00 +00:00
codemastr 384b7357cd fixed a typo in /stats z 2000-06-25 16:37:41 +00:00
stskeeps 4c039afe84 +- Added Blowfish encryption ability (SetSecure()), will extend to more
+  better encryption
Requires OpenSSL/blowfish
2000-06-25 14:35:24 +00:00
stskeeps 4e96e013ac +- Removed some odd Clone stuff(?) 2000-06-25 08:39:50 +00:00
stskeeps 62fe14251b +- Broken INETD support removed 2000-06-24 21:04:26 +00:00
stskeeps f7acfa8736 . 2000-06-24 20:57:30 +00:00
stskeeps 0a5bb85f2c - Removed IsService() 2000-06-24 20:45:48 +00:00
codemastr 0423078b67 *** empty log message *** 2000-06-24 18:54:11 +00:00
stskeeps 1e250927a2 - Fixed /setname desynch 2000-06-24 18:33:46 +00:00
codemastr 711ffb5c62 ... 2000-06-24 18:29:56 +00:00
stskeeps 2265903961 - Fixed last R_LINE stuff (check_time_interval) 2000-06-24 18:20:58 +00:00
codemastr 65cdea5cfe redid s_err.c to be faster (based on bahamut) 2000-06-24 18:14:26 +00:00
codemastr e3234d5671 *** empty log message *** 2000-06-24 15:19:36 +00:00
codemastr 4dd196bbc6 made /msg irc always work, cleanups, made it so all servers behind a U:lined server are U:lined 2000-06-23 21:32:25 +00:00
codemastr 0b85e10148 added networks/seveneagle.network 2000-06-23 18:37:52 +00:00
codemastr a35dd03e50 *** empty log message *** 2000-06-23 18:30:03 +00:00
stskeeps 4a1cded0fd - Made IRCII_KLUDGE disappear :P
- Fixed SENDQ_ALWAYS to be mainstream define (as always)
2000-06-23 18:24:12 +00:00
stskeeps 5c87943196 - Made IRCII_KLUDGE disappear :P 2000-06-23 18:19:49 +00:00
stskeeps f09b334e86 Missed one thing 2000-06-23 18:18:06 +00:00
stskeeps 985561c522 - Removed DISALLOW_MIXED_CASE and IGNORE_FIRST_CHAR, waste of space
- Made IDLE_FROM_MSG stock define
2000-06-23 18:17:10 +00:00
stskeeps 0b7c79b488 k- Removed aHush, not in use 2000-06-23 18:09:29 +00:00
stskeeps b3d8eb3104 - Fixed a wrongly outputted message (in hash collision detect) 2000-06-23 18:07:25 +00:00
stskeeps b6cb4e3661 - Made operkick be part of NO_OPEROVERRIDE
- Made admins unable to be shunned
- Made some socket errors which normally only showed up in DEBUGMODE, show
  up in ircd.log as well
2000-06-22 13:48:16 +00:00
stskeeps 031a342e60 Made operkick be part of OperOverride 2000-06-21 18:05:21 +00:00
stskeeps 023d869ffd - Small fix with ./Config showing incorrect path of stddef.h 2000-06-20 18:05:43 +00:00
stskeeps 4dcaaec5a3 - Fixed a bug in badwords not loading words correctly, and upped word limit
to 50
2000-06-20 08:15:13 +00:00
codemastr 614587cb7c fixed a chgident overflow 2000-06-19 20:49:27 +00:00
stskeeps 1d750653ab . 2000-06-19 16:21:32 +00:00
cvs2hg a278e31c9f fixup commit for tag 'unreal3_1_rc1' 2000-06-19 09:32:53 +00:00
stskeeps 39a02452d2 . 2000-06-19 09:32:52 +00:00
stskeeps 2016740b47 Stamp. 2000-06-18 10:22:40 +00:00
stskeeps 84c8525bc7 . 2000-06-18 10:21:45 +00:00
stskeeps 4feb893c3f - Made so auditorium mode shows users to @'s 2000-06-18 10:12:41 +00:00
stskeeps a30af17cb8 - Fixed ./Config showing freebsd 3.0 in freebsd 4
- Made so badwords.*.conf accepts # comments
- Added some default default badwords.message.conf and badwords.channel.conf
2000-06-18 10:10:34 +00:00
stskeeps 1d41fae3ca - Fixed /shun showing "1970" to permanently shunned users
- Fixed ./Config showing freebsd 3.0 in freebsd 4
2000-06-17 11:51:34 +00:00
stskeeps a31694c45a - Made /addline write to correct place when you use -f
- Made /zline not memory corrupt/crash, bad df bug
- Fixed a counting bug with unknown connections, very hopefully
- Fixed /htm giving wrong response when /htm to 1
2000-06-17 10:51:35 +00:00
drbin bb015165bc added ircsprintf.h to #include so that DEBUGMODE works !!! 2000-06-16 20:15:44 +00:00
drbin da53d2f0bf Added DEBUGMODE support in ircsprintf.h 2000-06-16 20:08:11 +00:00
drbin a80e94f246 Added DEBUG=1 support in win32 makefile 2000-06-16 19:40:18 +00:00
stskeeps a34dd526f2 - Added config.h setting to disable oper overrides, NO_OPEROVERRIDE 2000-06-16 17:08:10 +00:00
stskeeps 38a9332ce1 - Fixed a +L bug, (3.1 only) where any op could set +L
- Added channel mode +u, "Auditorium". Makes /names and /who #channel only
  show @'s
2000-06-16 17:07:21 +00:00
codemastr 956939e79b made perm TKLs allowed by using 0 as the time 2000-06-15 22:39:14 +00:00
drbin 227a0375e7 Updating to include aln.c 2000-06-15 20:43:36 +00:00
drbin 8afe521a85 *** empty log message *** 2000-06-15 20:06:50 +00:00
drbin a1e3d57d9e Fixed /Shun and /Gline Conflict .... (= != ==) 2000-06-15 20:01:09 +00:00
stskeeps c3dcf78497 Some bashing 2000-06-15 10:22:38 +00:00
stskeeps 3edeb401a7 Allow /shunned users to use /pong now 2000-06-14 17:25:42 +00:00
stskeeps f267677ce5 Poll() stuff 2000-06-11 13:05:36 +00:00
stskeeps c3773ecd9f - /shun accepts nick in add mode now (adds *@host) 2000-06-10 13:52:42 +00:00
stskeeps 51f84140fc - /close doesnt reveal realhost anymore 2000-06-10 13:39:43 +00:00
stskeeps b88cec9d5f bah 2000-06-10 10:45:01 +00:00
stskeeps e6b7e409ce . 2000-06-07 20:09:46 +00:00
stskeeps 422dbf746f - Made all ircops able to use +F (totally this time)
kd
2000-06-07 19:30:41 +00:00
stskeeps 7e3d2d8ea7 Made all IRCops able to use +F 2000-06-07 14:14:49 +00:00
stskeeps 12d99c8026 - Fixed the double +cF notice on local connections exiting, ugly hack
- Removed the last traces of unix sockets, flag 0x10 free now
2000-06-06 20:01:17 +00:00
stskeeps a75432c9ca In ./Config it runs a test program saying how many socket()s you can open 2000-06-06 12:48:10 +00:00
stskeeps bc87b99853 Small testing stuff 2000-06-06 12:39:08 +00:00
stskeeps c2d9acd82e sendto_serv_butone_token_opt 2000-06-04 14:51:38 +00:00
stskeeps afcea0d1ec Fixed the NickServ sets mode +creep SVS2MODE bug 2000-06-04 12:24:20 +00:00
stskeeps 0a2e7468d0 - Fixed a crash problem in register_user and most likely fixed the "strange
vhost" thing, (was a dumb bug, mising ircsprintf)
2000-06-04 09:14:48 +00:00
stskeeps d725dd805d . 2000-06-03 20:31:29 +00:00
stskeeps c8ac2db9f8 .. 2000-06-03 20:25:52 +00:00
stskeeps f1b988d04b Bah! 2000-06-03 20:23:12 +00:00
stskeeps e24344bde1 .. 2000-06-03 20:20:58 +00:00
stskeeps 565266a205 Access list stuff 2000-06-03 20:13:13 +00:00
stskeeps d76006aea2 .. 2000-06-03 20:11:50 +00:00
stskeeps 36b89e78bc . 2000-06-03 19:42:49 +00:00
stskeeps 4c499f8417 Test.. 2000-06-03 19:37:00 +00:00
stskeeps 989a5462d8 .. 2000-06-03 16:38:07 +00:00
stskeeps 4ffba555f3 Took out sequent/dynix support 2000-06-02 18:48:00 +00:00
stskeeps 34d0a3591d Test .. 2000-06-02 14:59:48 +00:00
stskeeps 01a0cbe628 !¤¤%!%1 2000-06-02 11:43:09 +00:00
stskeeps f2a31c5e21 possible res fix 2000-06-02 11:28:26 +00:00
stskeeps 7a78d5afff .. 2000-06-02 11:25:43 +00:00
stskeeps c2d59695ed Took out nick did a userhost on you and minimized hash table size so it went
0.6% memory down.adjust hash.h U_MAX if that is needed for performance
2000-06-02 11:25:00 +00:00
stskeeps 546af36469 - /stats s is now avail only for opers in mainstream 2000-06-02 10:48:49 +00:00
stskeeps b7b6e232ce .. 2000-06-01 20:51:05 +00:00
stskeeps b7d9439bdc - NETINFO protocol 0 is accepted as valid protocool (for services etc) 2000-06-01 14:20:57 +00:00
stskeeps a1cc97be8d Various fixes, and versioned up to RC1 2000-05-31 13:51:32 +00:00
stskeeps 0b3d4164fe - Made SVSO (ofcourse) IRCstats.operators--;
- Another IRCstats.unknown fix. Hope this works (hacked from undernet code)
2000-05-31 13:43:17 +00:00
stskeeps d7231c1801 Made /close reset IRCstats.unknown 2000-05-31 13:10:28 +00:00
codemastr 017bd482f1 *** empty log message *** 2000-05-30 21:46:13 +00:00
stskeeps c763583d33 First patch of ZIP_LINKS 2000-05-30 19:58:50 +00:00
stskeeps 48f9384a82 First part of 2000-05-30 19:58:27 +00:00
codemastr 2f8f56c191 *** empty log message *** 2000-05-29 19:21:03 +00:00
codemastr c53039ed41 *** empty log message *** 2000-05-29 15:48:45 +00:00
stskeeps adced2cf58 Made MODE_X and the family show mode changes, and made STRIPBADWORDS
standard
2000-05-29 15:09:01 +00:00
stskeeps 4dc224d3ff - A little anti-0 fix in channel.c 2000-05-29 14:47:54 +00:00
stskeeps c66be9025d Removed bsdinstall, isnt needed 2000-05-29 10:23:27 +00:00
stskeeps 588614da96 Removed a CVS_ID from whowas.c 2000-05-29 10:22:15 +00:00
stskeeps a59c66fd49 Added /shun 2000-05-29 10:17:13 +00:00
stskeeps 651ec98abc Fixed codemastr fucking up "ircd" 2000-05-29 07:25:26 +00:00
codemastr 59337acc04 fixed /stats C not showing N:lines 2000-05-28 21:53:09 +00:00
stskeeps 769f767b05 A compile fix.. 2000-05-28 17:35:42 +00:00
stskeeps 19a1e80ba8 Did a hack on ALN 2000-05-28 17:32:31 +00:00
stskeeps 58d92222ae Fixes in Unreal.nfo 2000-05-28 16:06:54 +00:00
stskeeps 5b22717119 Made the Own-protection just reduce the class maxli instead of bitching..
(class.c, s_user.c)
2000-05-28 16:03:08 +00:00
stskeeps 1f747eb73a Added rapta to beta tester credits 2000-05-28 15:49:29 +00:00
stskeeps 4f33019ee9 test of new cvs 2000-05-28 14:30:38 +00:00
cmunk 36e9700f16 Some win32 fixes done by Drbin 2000-05-28 09:01:26 +00:00
cvs2hg 843b580a40 fixup commit for branch 'devel' 2000-05-28 08:56:23 +00:00
cmunk 5d21b18d82 ... 2000-05-28 08:56:21 +00:00
cmunk 0d30ef8540 Import of Unreal3.1-beta3 2000-05-28 08:55:44 +00:00
cvs2hg e33b064e3d fixup commit for branch 'beta' 2000-05-28 08:48:51 +00:00
cmunk ef4e2489ce Addition of Unreal3.1-beta3 2000-05-28 08:45:09 +00:00
cvs2hg df5beefe8d fixup commit for branch 'beta' 2000-02-28 22:45:48 +00:00
504 changed files with 82951 additions and 119298 deletions
+5 -5
View File
@@ -7,14 +7,14 @@
\___/|_| |_|_| \___|\__,_|_|\___/\_| \_| \____/\__,_|
Configuration Program
for Unreal3.2.8.1
for UnrealIRCd 4.2.4.1
This program will help you to compile your IRC server, and ask you
questions regarding the compile-time settings of it during the process.
regarding the setup of it, during the process.
If you have problems regarding the setup & compile, read Unreal.nfo to get
more information on where to get help. Please, before running this setup,
read the documentation in the "doc" folder. Docs are also avail online @
http://www.unrealircd.com/unreal32docs.html
A short installation guide is available online at:
https://www.unrealircd.org/docs/Installing_from_source
Full documentation is available at:
https://www.unrealircd.org/docs/UnrealIRCd_4_documentation
-35
View File
@@ -1,35 +0,0 @@
Configuration rant, by Stskeeps
--------------------------------
Right.. so you think you are done now, you can boot your IRCd and be happy,
and it just works. No, you still got a lot to do. You need to read all of
the documentation through. Would you even have made it this far without
makeconf?.
Well, today, people think they can be 3 months on IRC, and be ready to run
an IRC daemon. I hate to say this, but I don't think so.
If you cannot read an IRC help file, or understand what stuff like "desynch",
"masskill", "k-line", or what "mode # +l 5" means - or you got no experince
in the UNIX field at all, like, you MUST know how to invoke a editor in a
shell, or to unzip a file. If you don't know/can do these things, I suggest
you stop trying to set this up, and go read on some UNIX tutorials, and IRC
tutorials. It takes a LOT of work to run a IRC server good.
I mean. I sit on the #unreal-support support channel each day, and I see
countless questions about stuff that IS IN the documentation. Numerous
people don't even bother to look at the config files (CONFIG_FILE_STOP
problem).
You need to look at the documentation now. You need to see how to "include"
other configuration files. You need to know how to work out how to use
doc/example.settings. I can only tell you, if you ask for support, and it
is for errors that you could solve by reading the first lines of a document,
then you'll be firmly ignored. I'm sorry, we cannot help your laziness.
Anyhow, good luck with setting this up. Hope you understand what I am saying
here. You will learn a lot more reading, than just ignoring what we are
saying.
--Stskeeps
-95
View File
@@ -1,95 +0,0 @@
Unreal3.2.8.1 Release Notes
============================
==[ ABOUT 3.2.8.1 RELEASE ]==
This Unreal3.2.8.1 release fixes a (serious) security issue regarding
allow::options::noident. The original release notes for 3.2.8 are below.
==[ GENERAL INFORMATION ]==
- If you are upgrading on *NIX, make sure you run 'make clean' and './Config'
first, before doing 'make'
- The official UnrealIRCd documentation is doc/unreal32docs.html
online version at: http://www.vulnscan.org/UnrealIRCd/unreal32docs.html
FAQ: http://www.vulnscan.org/UnrealIRCd/faq/
Read them before asking for help.
- Report bugs at http://bugs.unrealircd.org/
- When upgrading a network, we assume you are upgrading from the previous
version (3.2.7). Upgrading from 3.2.6 or 3.2.5 should also be no problem.
However, if you have a network running with servers that are several versions behind
(eg: 3.2.1) then you might experience small (desynch) problems.
Please also minimize the time you have multiple versions running, a few days or
one week is generally not a problem, but having mixed versions on a network for several
weeks or months is not recommended.
- The purpose of the sections below (NEW, CHANGED, MINOR, etc) is to be a SUMMARY of
the changes in this release. There have been 70+ changes, and trying to mention them
all would be useless, see the Changelog for the full list of changes.
==[ NEW ]==
- set::level-on-join: this defines which privileges a user receives when creating a
channel, default is 'chanop', the only other available setting is 'none' (opless).
- Away notification through WATCH: This allows clients to receive a notification
when someone goes away or comes back, along with a reason, a bit like IM's.
There's probably no current client supporting this but it would be a nice feature
in notify lists. Client developers: see Changes file for full protocol details.
This feature can be disabled by setting set::watch-away-notification to 'no'.
- Spamfilter: Slow spamfilter detection: For each spamfilter, Unreal will check,
each time it executes, how long it takes to execute. When a certain threshold is
reached the IRCd will warn or even remove the spamfilter. This could prevent a
spamfilter from completely stalling the IRCd. Warning is configured through
set::spamfilter::slowdetect-warn (default: 250ms) and automatic deletion is
configured by set::spamfilter::slowdetect-fatal (default: 500ms).
You can set both settings to 0 (zero) to disable slow spamfilter detection.
This feature is currently not available on Windows.
- SSL: set::ssl::server-cipher-list can be used to limit the allowed ciphers
- SSL: To specify when an SSL session key should be renegotiated you can use
set::ssl::renegotiate-bytes <bytes> and set::ssl::renegotiate-timeout <seconds>.
- UHNAMES support: This sends the full nick!ident@host in NAMES which can be
used by clients for their IAL. mIRC, Klient, etc support this.
- There have also been some behavior changes, which can be considered NEW, see
next section (CHANGED).
==[ CHANGED ]==
- IPv6: On IPv6 servers you no longer have to use ::ffff:1.2.3.4 IP's for IPv4 in the
config file, you can use the simple 1.2.3.4 form, as they are converted automatically.
- When someone is banned and /PARTs, the part reason (comment) is no longer shown
- ChanMode +S/+c: now strips/blocks 'reverse' as well
- Smart banning is now disabled by default because it was too annoying, this means that
f.e. if there's a ban on *!*@*.com then you can still add a ban on *!*@*.aol.com
- except ban { } now also protects against ZLINEs and ban ip { }
- Modules: user modes and channel modes without parameters (eg: +X) no longer have
to be PERManent, this means they can be upgraded/reloaded/unloaded on-the-fly.
==[ MAJOR BUGS FIXED ]==
- Zip links issue (Overflowed unzipbuf)
- Crash issue with 3rd party modules that introduce new channel modes w/parameters
- Mac OS X: Various issues which prevented the IRCd from booting up
- Remote includes (constant) crash with new curl/c-ares versions
- A few rare crash issues, including a crash when linking to another server
- In case of clock adjustments, the IRCd will no longer freeze when the time is
adjusted backwards, nor will it incorrectly throttle clients when adjusted forward.
However, because clock adjustments (time shifts) of more than xx seconds are
so dangerous (and will still cause a number of issues), big warnings are now
printed when they happen.
Morale: synchronize your system clock, or use the built-in timesync feature.
==[ MINOR BUGS FIXED ]==
- CGI:IRC: Several IPv6 issues, both on IPv6 IRCd's and CGI:IRC gateways
- IP masks in oper::from::userhost sometimes didn't match when they should
- (G)ZLINE's on IPv6 users were sometimes rejected
- CHROOTDIR works again
- OperOverride fixes
- Throttling is now more accurate
- And more... see Changelog
==[ KNOWN ISSUES ]==
- Regexes: Be careful with backreferences (\1, etc), certain regexes can slow the IRCd
down considerably and even bring it to a near-halt. In the spamfilter user target it's
usually safe though. Slow spamfilter detection can help prevent the slowdown/freeze,
but might not work in worst-case scenario's.
- Regexes: Possessive quantifiers such as, for example, "++" (not to be confused with "+")
are not safe to use, they can easily freeze the IRCd.
- Suse 10.3 in 64 bit mode (amd64, x64) is known to crash UnrealIRCd on-boot, this is
likely to be a Suse 10.3 bug as over 3 people reported it with that exact OS / arch.
==[ ADDITIONAL INFO ]==
* See Changelog for more details
-15
View File
@@ -1,15 +0,0 @@
|-------------------------------------------------------------------------|
| Congratulations on your new SSL self-signed certificate for your IRCd. |
| However, wouldn't it be better that you get your certifcate signed by |
| some kind of Certification Authority (CA), so your users can check that |
| they are really connected to the real server, so they feel secure? |
| |
| There is an initiative at CACert.org - They offer SSL Certificates |
| for use with your IRCd for free, so your users can be sure that they |
| can trust you and your server. |
| |
| To get a free signed certificate please visit http://www.CACert.org |
| _________________________|
| | Press enter to continue |
---------------------------------------------------------------------------
-17
View File
@@ -1,17 +0,0 @@
_ _ _ ___________ _____ _
| | | | | |_ _| ___ \/ __ \ | |
| | | |_ __ _ __ ___ __ _| | | | | |_/ /| / \/ __| |
| | | | '_ \| '__/ _ \/ _` | | | | | / | | / _` |
| |_| | | | | | | __/ (_| | |_| |_| |\ \ | \__/\ (_| |
\___/|_| |_|_| \___|\__,_|_|\___/\_| \_| \____/\__,_|
Update Script v2.0
What download program do you want to use?
-----------------------------------------
Type "wget" for wget
Type "lynx" for lynx
>
-77
View File
@@ -1,77 +0,0 @@
#
# UnrealIRCd Bug Reporting Script
# Copyright (c) 2001, The UnrealIRCd Team
# All rights reserved
#
# Redistribution and use in source and binary forms, with or without modification, are permitted
# provided that the following conditions are met:
#
# * Redistributions of source code must retain the above copyright notice, this list of conditions
# and the following disclaimer.
# * Redistributions in binary form must reproduce the above copyright notice, this list of conditions
# and the following disclaimer in the documentation and/or other materials provided with the
# distribution.
# * Neither the name of the The UnrealIRCd Team nor the names of its contributors may be used
# to endorse or promote products derived from this software without specific prior written permission.
# * The source code may not be redistributed for a fee or in closed source
# programs, without expressed oral consent by the UnrealIRCd Team, however
# for operating systems where binary distribution is required, if URL
# is passed with the package to get the full source
# * No warranty is given unless stated so by the The UnrealIRCd Team
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
# FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# First we define some nice settings and some nice functions
set print pretty on
# dumplist <linked list> <structure format>
define dumplist
echo Dumping linked list $arg0 in format $arg1\n
set $p = $arg0
while $p
print *($arg1 *) $p
set $p = $p->next
end
end
# dumparray <name> <size>
define dumparray
echo Dumping array $arg0 size $arg1\n
set $p = 0
while $p < $arg1
if $arg0[$p]
print *$arg0[$p]
end
set $p = $p + 1
end
end
echo Full backtrace:\n
echo ---------------\n
echo \n
bt full
echo \n
echo Backup parse() buffer:\n
echo ----------------------\n
echo \n
print backupbuf
echo \n
echo me output:\n
echo ----------------------\n
print me
echo \n
echo IRCstats:\n
echo ----------------------\n
print IRCstats
echo \n
echo Modules:\n
echo ----------------------\n
dumparray Modules 50
quit
-6
View File
@@ -1,6 +0,0 @@
ircdcron/ircd.cron
ircdcron/ircdchk
src/modules/Makefile
src/ssl.rnd
src/win32/devel/StackTrace.lib
src/win32/gnu_regex.lib
+74
View File
@@ -0,0 +1,74 @@
# Ignore configure step
aclocal.m4
autom4te.cache
config.log
conftest.*
config.settings
extras/pcre2*
extras/c-ares*
extras/regexp*
config.status
extras/tre*
extras/ircdcron/ircd.cron
extras/ircdcron/ircdchk
src/modules/snomasks/Makefile
src/modules/chanmodes/Makefile
src/modules/extbans/Makefile
src/modules/usermodes/Makefile
src/modules/Makefile
src/modules/third/Makefile
/Makefile
/src/Makefile
/unrealircd
include/setup.h
# Ignore tags file
tags
# Ignore editor files
*\#*
*~
# Ignore SSL Stuff
server.cert.pem
server.key.pem
server.req.pem
ssl.rnd
# Ignores for platform stuff
.DS_Store
# Ignores for build artifacts
*.so
*.o
*.dSYM
*.dylib
src/ircd
src/version.c
src/include
# Ignores for mac stuff
## Various settings
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
xcuserdata
## Other
*.xccheckout
*.moved-aside
*.xcuserstate
*.xcscmblueprint
## Obj-C/Swift specific
*.hmap
*.ipa
src/macosx/build/
DerivedData
src/macosx/pods/
+6
View File
@@ -0,0 +1,6 @@
[submodule "extras/tests/ircfly"]
path = extras/tests/ircfly
url = https://github.com/unrealircd/ircfly.git
[submodule "extras/tests/functional-tests"]
path = extras/tests/functional-tests
url = https://github.com/unrealircd/unrealircd-tests-old.git
+28
View File
@@ -0,0 +1,28 @@
language: c
os: linux
dist: xenial
compiler:
- clang
- gcc
script: extras/build-tests/nix/build $BUILDCONFIG
env:
- BUILDCONFIG=""
- BUILDCONFIG="system-cares"
- BUILDCONFIG="system-cares system-curl"
- BUILDCONFIG="local-curl"
matrix:
include:
- os: osx
env: BUILDCONFIG=""
- os: osx
env: BUILDCONFIG="system-cares"
- os: osx
env: BUILDCONFIG="system-cares system-curl"
- os: osx
env: BUILDCONFIG="local-curl"
- env: BUILDCONFIG="libressl-27"
- env: BUILDCONFIG="libressl-28"
- env: BUILDCONFIG="libressl-29"
- env: BUILDCONFIG="openssl-102"
- env: BUILDCONFIG="openssl-110"
- env: BUILDCONFIG="openssl-111"
-1769
View File
File diff suppressed because it is too large Load Diff
-4844
View File
File diff suppressed because it is too large Load Diff
+420 -345
View File
@@ -1,7 +1,7 @@
#!/bin/sh
#
# Config script for UnrealIRCd
# (C) 2001 The UnrealIRCd Team
# (C) 2001-2019 The UnrealIRCd Team
#
# This configure script is free software; the UnrealIRCd Team gives
# unlimited permission to copy, distribute and modify as long as the
@@ -20,7 +20,21 @@
RUN_CONFIGURE () {
ARG=""
ARG=" "
if [ -z "$BINDIR" -o -z "$DATADIR" -o -z "$CONFDIR" -o -z "$MODULESDIR" -o -z "$LOGDIR" -o -z "$CACHEDIR" -o -z "$DOCDIR" -o -z "$TMPDIR" -o -z "$LIBDIR" ]; then
echo "Sorry './Config -quick' cannot be used because your 'config.settings'"
echo "file either does not exist or is from an old UnrealIRCd version"
echo "(older than version 4.0.8)."
echo ""
echo "Please run './Config' without -quick and answer all questions."
echo ""
exit
fi
mkdir -p $TMPDIR
# Do this even if we're not in advanced mode
if [ "$SHOWLISTMODES" = "1" ] ; then
ARG="$ARG--with-showlistmodes "
@@ -41,61 +55,103 @@ fi
if [ "$OPEROVERRIDEVERIFY" = "1" ] ; then
ARG="$ARG--with-operoverride-verify "
fi
if [ "$DISABLEEXTBANSTACKING" = "1" ]; then
ARG="$ARG--with-disable-extendedban-stacking ";
fi
if [ "$NOSPOOF" = "1" ] ; then
ARG="$ARG--enable-nospoof "
fi
if [ -n "$HUB" ] ; then
ARG="$ARG--enable-hub "
fi
if [ "$CRYPTOIRCD" = "1" ] ; then
if test x"$SSLDIR" = "x" ; then
ARG="$ARG--enable-ssl "
else
ARG="$ARG--enable-ssl=$SSLDIR "
fi
fi
if [ "$ZIPLINKS" = "1" ] ; then
if test x"$ZIPLINKSDIR" = "x" ; then
ARG="$ARG--enable-ziplinks "
else
ARG="$ARG--enable-ziplinks=$ZIPLINKSDIR "
fi
fi
if [ "$REMOTEINC" = "1" ] ; then
ARG="$ARG--enable-libcurl=$CURLDIR "
fi
if [ "$INET6" = "1" ] ; then
ARG="$ARG--enable-inet6 "
if [ "$PREFIXAQ" != "1" ]; then
ARG="$ARG--disable-prefixaq "
fi
if [ "$PREFIXAQ" = "1" ]; then
ARG="$ARG--enable-prefixaq "
if [ "$MAXCONNECTIONS_REQUEST" != "auto" ]; then
ARG="$ARG--with-maxconnections=$MAXCONNECTIONS_REQUEST "
fi
ARG="$ARG--with-listen=$LISTEN_SIZE "
ARG="$ARG--with-dpath=$DPATH "
ARG="$ARG--with-spath=$SPATH "
ARG="$ARG--with-bindir=$BINDIR "
ARG="$ARG--with-datadir=$DATADIR "
ARG="$ARG--with-pidfile=$DATADIR/unrealircd.pid "
ARG="$ARG--with-confdir=$CONFDIR "
ARG="$ARG--with-modulesdir=$MODULESDIR "
ARG="$ARG--with-logdir=$LOGDIR "
ARG="$ARG--with-cachedir=$CACHEDIR "
ARG="$ARG--with-docdir=$DOCDIR "
ARG="$ARG--with-tmpdir=$TMPDIR "
ARG="$ARG--with-privatelibdir=$LIBDIR "
ARG="$ARG--with-scriptdir=$BASEPATH "
ARG="$ARG--with-nick-history=$NICKNAMEHISTORYLENGTH "
ARG="$ARG--with-sendq=$MAXSENDQLENGTH "
ARG="$ARG--with-bufferpool=$BUFFERPOOL "
ARG="$ARG--with-hostname=$DOMAINNAME "
ARG="$ARG--with-permissions=$DEFPERM "
ARG="$ARG--with-fd-setsize=$MAXCONNECTIONS "
ARG="$ARG--enable-dynamic-linking "
ARG="$ARG $EXTRAPARA "
CONF="./configure $ARG"
# remove possibly old instances of curl in ~/unrealircd/lib/
rm -f $LIBDIR/*curl* 1>/dev/null 2>&1
# Ensure we install curl even if someone does ./Config -quick...
if [ "x$CURLDIR" = "x$UNREALCWD/extras/curl" ]; then
INSTALLCURL=1
fi
if [ "x$INSTALLCURL" = "x1" ]; then
extras/curlinstall "$LIBDIR" || exit 1
fi
echo $CONF
$CONF || exit 1
cd "$UNREALCWD"
if [ "$CRYPTOIRCD" = "1" ] ; then
if [ ! -f server.req.pem ]; then
if [ "$QUICK" != "1" ] ; then
if [ ! -f $CONFDIR/ssl/server.cert.pem ]; then
export OPENSSLPATH
make pem
cat .SICI
read cc
TEST=""
while [ -z "$TEST" ] ; do
if [ "$GENCERTIFICATE" = "1" ] ; then
TEST="Yes"
else
TEST="No"
fi
echo ""
echo "Do you want to generate an SSL certificate for the IRCd?"
echo "Only answer No if you already have one."
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
cc=$TEST
fi
case "$cc" in
[Yy]*)
GENCERTIFICATE="1"
;;
[Nn]*)
GENCERTIFICATE=""
;;
*)
echo ""
echo "You must enter either Yes or No"
TEST=""
;;
esac
done
if [ "$GENCERTIFICATE" = 1 ]; then
make pem
echo "Certificate created successfully."
sleep 1
else
echo "SSL certificate already existing, no need to regenerate"
echo "Ok, not generating SSL certificate. Make sure that the certificate and key"
echo "are installed in conf/ssl/server.crt.pem and conf/ssl/server.key.pem prior to starting the IRCd."
fi
else
echo "SSL certificate exists in $CONFDIR/ssl/server.cert.pem, no need to regenerate."
fi
fi
# Silently force a 'make clean' as otherwise part (or whole) of the
# compiled source could be using different settings than the user
# just requested when re-running ./Config.
make clean 1>/dev/null 2>&1
}
RUN_ADVANCED () {
@@ -166,7 +222,7 @@ while [ -z "$TEST" ] ; do
TEST="No"
fi
echo ""
echo "Should Unreal notify a user when they are no longer shunned?"
echo "Should UnrealIRCd notify a user when they are no longer shunned?"
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
@@ -275,26 +331,45 @@ while [ -z "$TEST" ] ; do
esac
done
TEST=""
while [ -z "$TEST" ] ; do
if [ "$DISABLEEXTBANSTACKING" = "1" ] ; then
TEST="Yes"
else
TEST="No"
fi
echo ""
echo "Do you want to disable extended ban stacking (~q:~c:#test, etc) support?"
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
cc=$TEST
fi
case "$cc" in
[Yy]*)
DISABLEEXTBANSTACKING="1"
;;
[Nn]*)
DISABLEEXTBANSTACKING="0"
;;
*)
echo ""
echo "You must enter either Yes or No"
TEST=""
;;
esac
done
}
c=""
n=""
UNREALCWD="`pwd`"
NOSPOOF=""
DPATH="`pwd`"
SPATH="`pwd`/src/ircd"
HUB="1"
DOMAINNAME=`hostname`
BASEPATH="$HOME/unrealircd"
DEFPERM="0600"
CRYPTOIRCD=""
SSLDIR=""
ZIPLINKS=""
ZIPLINKSDIR=""
LISTEN_SIZE="5"
NICKNAMEHISTORYLENGTH="2000"
MAXSENDQLENGTH="3000000"
BUFFERPOOL="18"
MAXCONNECTIONS="1024"
INET6=""
MAXCONNECTIONS_REQUEST="auto"
REMOTEINC=""
CURLDIR=""
PREFIXAQ="1"
@@ -304,6 +379,8 @@ SHUNNOTICES=""
NOOPEROVERRIDE=""
DISABLEUSERMOD=""
OPEROVERRIDEVERIFY=""
DISABLEEXTBANSTACKING=""
GENCERTIFICATE="1"
EXTRAPARA=""
if [ "`eval echo -n 'a'`" = "-n a" ] ; then
c="\c"
@@ -311,10 +388,28 @@ else
n="-n"
fi
date|grep 2019 1>/dev/null 2>&1
if [ "$?" -ne 0 ]; then
echo "*** WARNING ***"
echo "UnrealIRCd 4.x will no longer be supported after December 31, 2020."
echo "You should upgrade to UnrealIRCd 5 before that date."
echo "See https://www.unrealircd.org/docs/UnrealIRCd_4_EOL"
echo $n . $c
sleep 1
echo $n . $c
sleep 1
echo $n . $c
echo ""
sleep 1
echo "Press ENTER to continue"
read xyz
fi
#parse arguments
NOCACHE=""
IMPORTEDSETTINGS=""
NOINTRO=""
QUICK=""
CLEAN=""
ADVANCED=""
while [ $# -ge 1 ] ; do
@@ -333,6 +428,7 @@ while [ $# -ge 1 ] ; do
elif [ $1 = "-nointro" ] ; then
NOINTRO="1"
elif [ $1 = "-quick" -o $1 = "-q" ] ; then
QUICK="1"
echo "running quick config"
if [ -f "config.settings" ] ; then
. ./config.settings
@@ -348,10 +444,6 @@ while [ $# -ge 1 ] ; do
shift 1
done
if [ -f "config.settings" -a -z "$NOCACHE" ] ; then
. ./config.settings
fi
if [ "$PREADVANCED" = "1" ] ; then
ADVANCED="1"
elif [ "$ADVANCED" = "1" ]; then
@@ -370,110 +462,109 @@ clear
read cc
clear
fi
if [ -f ".RELEASE.NOTES" -a -z "$NOINTRO" ] ; then
more .RELEASE.NOTES
if [ -f "doc/RELEASE-NOTES" -a -z "$NOINTRO" ] ; then
more doc/RELEASE-NOTES
echo $n "[Enter to continue]"
read cc
clear
fi
TEST=""
while [ -z "$TEST" ] ; do
if [ "$NOSPOOF" = "1" ] ; then
TEST="Yes"
else
TEST="No"
fi
echo ""
echo "Many older operating systems have an insecure TCP/IP stack"
echo "which may be vulnerable to IP spoofing attacks, if you run"
echo "an operating system that is vulnerable to such attacks"
echo "enable this option. This option can also be useful to prevent"
echo "blind proxies from connecting (eg: HTTP POST proxies)."
echo ""
echo "Do you want to enable the server anti-spoof protection?"
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
cc=$TEST
fi
case "$cc" in
[Yy]*)
NOSPOOF="1"
;;
[Nn]*)
NOSPOOF=""
;;
*)
echo ""
echo "You must enter either Yes or No"
TEST=""
;;
esac
done
TEST="$DPATH"
echo "We will now ask you a number of questions."
echo "You can just press ENTER to accept the defaults!"
echo ""
echo "What directory are all the server configuration files in?"
if [ -z "$NOCACHE" ] ; then
# This needs to be updated each release so auto-upgrading works for settings, modules, etc!!:
UNREALRELEASES="unrealircd-4.2.3-rc1 unrealircd-4.2.2 unrealircd-4.2.2-rc2 unrealircd-4.2.2-rc1 unrealircd-4.2.1.1 unrealircd-4.2.1 unrealircd-4.2.1-rc1 unrealircd-4.2.0 unrealircd-4.0.19-rc2 unrealircd-4.0.19-rc1 unrealircd-4.0.18 unrealircd-4.0.18-rc2 unrealircd-4.0.18-rc1 unrealircd-4.0.17 unrealircd-4.0.17-rc1 unrealircd-4.0.16.1 unrealircd-4.0.16 unrealircd-4.0.15 unrealircd-4.0.14 unrealircd-4.0.14-rc1 unrealircd-4.0.13 unrealircd-4.0.13-rc1 unrealircd-4.0.12.1 unrealircd-4.0.12"
if [ -f "config.settings" ]; then
. ./config.settings
else
# Try to load a previous config.settings
for x in $UNREALRELEASES
do
if [ -f ../$x/config.settings ]; then
IMPORTEDSETTINGS="../$x"
break
fi
done
echo "If you have previously installed UnrealIRCd on this shell then you can specify a"
echo "directory here so I can import the build settings and third party modules"
echo "to make your life a little easier."
if [ ! -z "$IMPORTEDSETTINGS" ]; then
echo "Found previous installation in: $IMPORTEDSETTINGS."
echo "You can enter a different path or type 'none' if you don't want to use it."
echo "Just press Enter to accept the default settings."
else
echo "If you install UnrealIRCd for the first time on this shell, then just hit Enter";
fi
TEST="$IMPORTEDSETTINGS"
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ]; then
IMPORTEDSETTINGS="$TEST"
else
IMPORTEDSETTINGS="$cc"
fi
if [ "$IMPORTEDSETTINGS" = "none" ]; then
IMPORTEDSETTINGS=""
fi
if [ "$IMPORTEDSETTINGS" != "" ]; then
if [ ! -f $IMPORTEDSETTINGS/config.settings ]; then
echo "Directory $IMPORTEDSETTINGS does not exist or does not contain a config.settings file"
exit
fi
# Actually load the settings
. $IMPORTEDSETTINGS/config.settings
# Copy over 3rd party modules (also deals with 0 file cases, hence the silly looking code)
for f in $IMPORTEDSETTINGS/src/modules/third/*.c
do
[ -e "$f" ] && cp $f src/modules/third/
done
fi
fi
# If we just imported settings and the curl dir is set to
# something like /home/xxx/unrealircd-4.x.y/extras/curl/
# (what we call 'local-curl') then remove this setting as
# it would refer to the old UnrealIRCd installation.
if [ ! -z "$IMPORTEDSETTINGS" ]; then
if echo "$CURLDIR"|grep -qi unrealircd; then
CURLDIR=""
fi
fi
fi
TEST="$BASEPATH"
echo ""
echo "In what directory do you want to install UnrealIRCd?"
echo "(Note: UnrealIRCd 4 will need to be installed somewhere."
echo " If this directory does not exist it will be created.)"
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
DPATH=$TEST
BASEPATH=$TEST
else
DPATH=`eval echo $cc` # modified
BASEPATH=`eval echo $cc` # modified
fi
if [ "$BASEPATH" = "$UNREALCWD" ]; then
echo ""
echo "ERROR: The installation directory cannot be the same as the directory"
echo " containing the source code ($UNREALCWD)."
echo " HINT: Usually the directory containing the source is $HOME/unrealircd-4.x.y"
echo " and the installation directory you would need to enter is $HOME/unrealircd"
exit 1
fi
TEST="$SPATH"
echo ""
echo "What is the path to the ircd binary including the name of the binary?"
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
SPATH=$TEST
else
SPATH=`eval echo $cc` # modified
fi
TEST=""
while [ -z "$TEST" ] ; do
if [ "$HUB" = "1" ] ; then
TEST="Hub"
else
TEST="Leaf"
fi
echo ""
echo "Would you like to compile as a hub or as a leaf?"
echo "Type Hub to select hub and Leaf to select leaf."
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
cc=$TEST
fi
case "$cc" in
[Hh]*)
HUB="1"
;;
[Ll]*)
HUB=""
;;
*)
echo ""
echo "You must enter either Hub or Leaf"
TEST=""
;;
esac
done
TEST="$DOMAINNAME"
echo ""
echo "What is the hostname of the server running your IRCd?"
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
DOMAINNAME=$TEST
else
DOMAINNAME=`eval echo $cc` # modified
fi
# TODO: For -advanced we could prompt the user.
BINDIR="$BASEPATH/bin"
DATADIR="$BASEPATH/data"
CONFDIR="$BASEPATH/conf"
MODULESDIR="$BASEPATH/modules"
LOGDIR="$BASEPATH/logs"
CACHEDIR="$BASEPATH/cache"
DOCDIR="$BASEPATH/doc"
TMPDIR="$BASEPATH/tmp"
LIBDIR="$BASEPATH/lib"
TEST=""
while [ -z "$TEST" ] ; do
@@ -500,40 +591,26 @@ while [ -z "$TEST" ] ; do
done
TEST=""
while [ -z "$TEST" ] ; do
if [ "$CRYPTOIRCD" = "1" ] ; then
TEST="Yes"
else
TEST="No"
fi
echo ""
echo "Do you want to support SSL (Secure Sockets Layer) connections?"
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
cc=$TEST
fi
case "$cc" in
[Yy]*)
CRYPTOIRCD="1"
;;
[Nn]*)
CRYPTOIRCD=""
;;
*)
echo ""
echo "You must enter either Yes or No"
TEST=""
;;
esac
done
if [ "$CRYPTOIRCD" = "1" ] ; then
TEST="$SSLDIR"
echo ""
echo "If you know the path to OpenSSL on your system, enter it here. If not"
echo "leave this blank"
echo "If you want, you can manually enter the path to OpenSSL/LibreSSL here."
echo "In most cases you can leave this blank and it will be detected automatically."
if [ -z "$SSLDIR" ]; then
uname|grep -q Darwin
if [ "$?" = 0 ]; then
echo "Looks like you're on a Mac - El Capitan and higher require"
echo "a 3rd party OpenSSL installation. We recommend using homebrew"
echo "to install OpenSSL, but you may install it any other way as well."
echo "We are selecting the default homebrew OpenSSL path - but you can"
echo "change it to another path if you have installed OpenSSL another way"
SSLDIR="/usr/local/opt/openssl/"
fi
fi
TEST="$SSLDIR"
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
@@ -541,79 +618,6 @@ if [ -z "$cc" ] ; then
else
SSLDIR=`eval echo $cc` # modified
fi
fi
TEST=""
while [ -z "$TEST" ] ; do
if [ "$INET6" = "1" ] ; then
TEST="Yes"
else
TEST="No"
fi
echo ""
echo "Do you want to enable IPv6 support?"
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
cc=$TEST
fi
case "$cc" in
[Yy]*)
INET6="1"
;;
[Nn]*)
INET6=""
;;
*)
echo ""
echo "You must enter either Yes or No"
TEST=""
;;
esac
done
TEST=""
while [ -z "$TEST" ] ; do
if [ "$ZIPLINKS" = "1" ] ; then
TEST="Yes"
else
TEST="No"
fi
echo ""
echo "Do you want to enable ziplinks support?"
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
cc=$TEST
fi
case "$cc" in
[Yy]*)
ZIPLINKS="1"
;;
[Nn]*)
ZIPLINKS=""
;;
*)
echo ""
echo "You must enter either Yes or No"
TEST=""
;;
esac
done
if [ "$ZIPLINKS" = "1" ] ; then
TEST="$ZIPLINKSDIR"
echo ""
echo "If you know the path to zlib on your system, enter it here. If not"
echo "leave this blank"
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
ZIPLINKSDIR="$TEST"
else
ZIPLINKSDIR=`eval echo $cc` # modified
fi
fi
TEST=""
while [ -z "$TEST" ] ; do
@@ -624,6 +628,8 @@ while [ -z "$TEST" ] ; do
fi
echo ""
echo "Do you want to enable remote includes?"
echo "This allows stuff like this in your configuration file:"
echo "include \"http://www.somesite.org/files/opers.conf\";"
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
@@ -646,20 +652,125 @@ while [ -z "$TEST" ] ; do
done
if [ "$REMOTEINC" = "1" ] ; then
TEST=""
while [ -z "$TEST" ] ; do
TEST="$CURLDIR"
echo ""
echo "Specify the directory you installed libcurl to"
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
cc=$TEST
else
TEST=$cc
CURLDIR=`eval echo $cc` # modified
if [ ! -d "$CURLDIR" ]; then
# Reset any previous CURLDIR if it doesn't exist (anymore)
CURLDIR=""
fi
INSTALLCURL="0"
SUGGESTCURLDIR=""
if [ -d "/usr/local/include/curl" ]; then
SUGGESTCURLDIR="/usr/local"
fi
if [ -d "/usr/include/curl" ]; then
SUGGESTCURLDIR="/usr"
fi
# This one also works for /usr/include/x86_64-linux-gnu and friends:
if [ -f "/usr/bin/curl-config" ]; then
SUGGESTCURLDIR="/usr"
fi
GOTASYNC=0
if [ "x$SUGGESTCURLDIR" != "x" ]; then
# Check if it's of any use: a curl without async dns (cares) hangs the entire ircd..
# normally this is done in ./configure but now we're forced to do it also here..
if "$SUGGESTCURLDIR"/bin/curl-config --features | grep -q -e AsynchDNS; then
GOTASYNC="1"
fi
done
if [ "$GOTASYNC" != "1" ]; then
SUGGESTCURLDIRBAD="$CURLDIR"
SUGGESTCURLDIR=""
fi
fi
if [ "x$CURLDIR" = "x$HOME/curl" ]; then
if [ "x$SUGGESTCURLDIR" != "x" ]; then
# I guess some people will complain about this, but if system wide cURL is available
# and many people have old defaults then this is much preferred:
echo ""
echo "WARNING: Your previous (potentially old) setting is to use cURL from $HOME/curl."
echo "However, your operating system also provides a working cURL."
echo "I am therefore changing the setting to: $SUGGESTCURLDIR"
CURLDIR="$SUGGESTCURLDIR"
else
echo ""
echo "WARNING: We no longer use $HOME/curl nowadays."
echo "Use the automatic download and install feature below."
CURLDIR=""
fi
fi
if [ "x$CURLDIR" = "x" ]; then
CURLDIR="$SUGGESTCURLDIR"
# NOTE: CURLDIR may still be empty after this
# System curl has no asyncdns, so install our own.
if [ "$GOTASYNC" != "1" ]; then
CURLDIR=""
fi
# Need to output it here, as the HOME check from above may cause this to be no longer relevant.
if [ "x$CURLDIR" = "x" -a "x$SUGGESTCURLDIRBAD" != "x" ]; then
echo "Curl library was found in $SUGGESTCURLDIRBAD, but it does not support Asynchronous DNS (not compiled with c-ares)"
echo "so it's of no use to us as it would stall the IRCd on REHASH."
fi
fi
# Final check
if [ "x$CURLDIR" != "x" ]; then
"$CURLDIR/bin/curl-config" --features 2>/dev/null | grep -q -e AsynchDNS
if [ "$?" != 0 ]; then
echo "Curl from $CURLDIR seems unusable ($CURLDIR/bin/curl-config does not exist)"
CURLDIR=""
fi
fi
if [ "x$CURLDIR" = "x" ]; then
# Still empty?
TEST=""
while [ -z "$TEST" ] ; do
TEST="Yes"
echo ""
echo "Do you want me to automatically download and install curl for you?"
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
cc=$TEST
fi
case "$cc" in
[Yy]*)
INSTALLCURL="1"
CURLDIR="$UNREALCWD/extras/curl"
;;
[Nn]*)
INSTALLCURL="0"
;;
*)
echo ""
echo "You must enter either Yes or No"
TEST=""
;;
esac
done
fi
if [ "$INSTALLCURL" != "1" ]; then
TEST=""
while [ -z "$TEST" ] ; do
TEST="$CURLDIR"
echo ""
echo "Specify the directory you installed libcurl to"
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
cc=$TEST
else
TEST=$cc
CURLDIR=`eval echo $cc` # modified
fi
done
fi
fi
@@ -696,31 +807,6 @@ while [ -z "$TEST" ] ; do
esac
done
TEST=""
while [ -z "$TEST" ] ; do
TEST="$LISTEN_SIZE"
echo ""
echo "What listen() backlog value do you wish to use? Some older servers"
echo "have problems with more than 5, others work fine with many more."
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
LISTEN_SIZE=$TEST
break
fi
case "$cc" in
[1-9]*)
LISTEN_SIZE="$cc"
;;
*)
echo ""
echo "You must enter a number"
TEST=""
;;
esac
done
TEST=""
while [ -z "$TEST" ] ; do
TEST="$NICKNAMEHISTORYLENGTH"
@@ -767,83 +853,71 @@ while [ -z "$TEST" ] ; do
esac
done
TEST=""
while [ -z "$TEST" ] ; do
TEST="$BUFFERPOOL"
echo ""
echo "How many buffer pools would you like?"
echo "This number will be multiplied by MAXSENDQLENGTH."
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
BUFFERPOOL=$TEST
break
fi
case "$cc" in
[1-9]*)
BUFFERPOOL="$cc"
;;
*)
echo ""
echo "You must enter a number"
TEST=""
;;
esac
done
echo ""
TEST=""
while [ -z "$TEST" ] ; do
TEST="$MAXCONNECTIONS"
echo ""
echo "How many file descriptors (or sockets) can the IRCd use?"
echo $n "[$TEST] -> $c"
TEST="$MAXCONNECTIONS_REQUEST"
echo ""
echo "What is the maximum number of sockets (and file descriptors) that"
echo "UnrealIRCd may use?"
echo "It is recommended to leave this at the default setting 'auto',"
echo "which at present results in a limit of up to 8192, depending on"
echo "the system. When you boot UnrealIRCd later you will always see"
echo "the effective limit."
echo $n "[$TEST] -> $c"
read cc
if [ -z "$cc" ] ; then
MAXCONNECTIONS=$TEST
break
fi
case "$cc" in
[1-9][0-9][0-9]*)
MAXCONNECTIONS="$cc"
;;
*)
echo ""
echo "You must to enter a number greater than or equal to 100"
TEST=""
;;
esac
if [ -z "$cc" ] ; then
MAXCONNECTIONS_REQUEST=$TEST
break
fi
case "$cc" in
auto)
MAXCONNECTIONS_REQUEST="$cc"
;;
[1-9][0-9][0-9]*)
MAXCONNECTIONS_REQUEST="$cc"
;;
*)
echo ""
echo "You must to enter a number greater than or equal to 100."
echo "Or enter 'auto' to leave it at automatic, which is recommended."
TEST=""
;;
esac
done
if [ -n "$ADVANCED" ] ; then
RUN_ADVANCED
fi
TEST="$EXTRAPARA"
echo ""
echo "Would you like any more parameters to configure?"
echo "Write them here:"
echo $n "[]-> $c"
echo "Would you like to pass any custom parameters to configure?"
echo "See \`./configure --help' and write them here:"
echo $n "[$TEST] -> $c"
read EXTRAPARA
if [ -z "$EXTRAPARA" ]; then
EXTRAPARA="$TEST"
fi
rm -f config.settings
cat > config.settings << __EOF__
#
NOSPOOF="$NOSPOOF"
DPATH="$DPATH"
SPATH="$SPATH"
INET6="$INET6"
BASEPATH="$BASEPATH"
BINDIR="$BINDIR"
DATADIR="$DATADIR"
CONFDIR="$CONFDIR"
MODULESDIR="$MODULESDIR"
LOGDIR="$LOGDIR"
CACHEDIR="$CACHEDIR"
DOCDIR="$DOCDIR"
TMPDIR="$TMPDIR"
LIBDIR="$LIBDIR"
PREFIXAQ="$PREFIXAQ"
LISTEN_SIZE="$LISTEN_SIZE"
MAXSENDQLENGTH="$MAXSENDQLENGTH"
BUFFERPOOL="$BUFFERPOOL"
MAXCONNECTIONS="$MAXCONNECTIONS"
MAXCONNECTIONS_REQUEST="$MAXCONNECTIONS_REQUEST"
NICKNAMEHISTORYLENGTH="$NICKNAMEHISTORYLENGTH"
HUB="$HUB"
DOMAINNAME="$DOMAINNAME"
DEFPERM="$DEFPERM"
CRYPTOIRCD="$CRYPTOIRCD"
SSLDIR="$SSLDIR"
ZIPLINKS="$ZIPLINKS"
ZIPLINKSDIR="$ZIPLINKSDIR"
REMOTEINC="$REMOTEINC"
CURLDIR="$CURLDIR"
SHOWLISTMODES="$SHOWLISTMODES"
@@ -852,6 +926,8 @@ SHUNNOTICES="$SHUNNOTICES"
NOOPEROVERRIDE="$NOOPEROVERRIDE"
DISABLEUSERMOD="$DISABLEUSERMOD"
OPEROVERRIDEVERIFY="$OPEROVERRIDEVERIFY"
DISABLEEXTBANSTACKING="$DISABLEEXTBANSTACKING"
GENCERTIFICATE="$GENCERTIFICATE"
EXTRAPARA="$EXTRAPARA"
ADVANCED="$ADVANCED"
__EOF__
@@ -872,9 +948,8 @@ cat << __EOF__
|_______________________________________________________________________|
| - The UnrealIRCd Team - |
| |
| * Stskeeps stskeeps@unrealircd.com |
| * codemastr codemastr@unrealircd.com |
| * Syzop syzop@unrealircd.com |
| * Bram Matthys (Syzop) syzop@unrealircd.org |
| * Travis McArthur (Heero) heero@unrealircd.org |
|_______________________________________________________________________|
__EOF__
-32
View File
@@ -1,32 +0,0 @@
UnrealIRCd is a free program, but we do put a lot of time, effort, and money
into creating and maintaining Unreal. To make it easier for user's to show their
appreciation, the Unreal team has decided to accept donations through PayPal. If
you like Unreal, and you'd like to see it continue to exist, please consider making
a donation. We're not asking for anything huge, whatever you can afford is fine.
PayPal Donation Link:
<https://www.paypal.com/xclick/business=donation%40unrealircd.org&
item_name=UnrealIRCd+Donation&no_shipping=1&cn=Comments&tax=0&currency_code=USD>
Or simply send a payment through PayPal to:
donation@unrealircd.org
If you don't want to use PayPal, or you want to donate something other than money
(old computer hardware, etc.), contact Stskeeps (stskeeps@unrealircd.com) and send
your donation to:
UnrealIRCd Project
C/O Carsten Munk
P.O.Box 52
7400 Herning
Denmark
All those who donate at least $10 USD will have their name and/or company listed in /credits.
Additionally, all donators will be listed on the website (regardless of the amount). To make
this possible, please include along with your donation the name (or nickname) you want to
appear in the list as well as the company name (or IRC server) to list.
Thank you for your support,
The UnrealIRCd Team
[ $Id$ ]
-23
View File
@@ -1,23 +0,0 @@
**** Remote Includes ****
Setting up UnrealIRCd to work with remote includes is not very difficult. The first step is to
download c-ares. C-ares can be downloaded from <http://daniel.haxx.se/projects/c-ares/>
download the latest version of c-ares and extract the .tar.gz somewhere.
Now, download the latest version of curl, available at <http://curl.haxx.se/download.html>
again, extract the tar.gz somewhere.
Next, go to the Unreal3.2 directory and run the curlinstall script. You run the script
as follows:
./curlinstall ares_path curl_path
Paths should be complete pathnames. If you extracted c-ares to /home/username/c-ares-1.0.0
and curl to /home/username/curl-7.11.0 then you would run:
./curlinstall /home/username/c-ares-1.0.0 /home/username/curl-7.11.0
Lastly, run ./Config. When asked whether to enable remote includes say "yes" and when asked
for the path curl was installed to include the path that is printed out after ./curlinstall
completes. Then simply run make to compile Unreal as usual and remote includes should work
fine.
+110 -76
View File
@@ -20,7 +20,7 @@
#*/
CC=@CC@
INCLUDEDIR=../include
INCLUDEDIR=@UNRLINCDIR@
NETWORKSDIR=
FROMDOS=/home/cmunk/bin/4dos
@@ -34,11 +34,11 @@ FROMDOS=/home/cmunk/bin/4dos
#
#XCFLAGS=-O -g -export-dynamic
IRCDLIBS=@IRCDLIBS@ @TRELIBS@ @CARESLIBS@
IRCDLIBS=@IRCDLIBS@ @TRE_LIBS@ @PCRE2_LIBS@ @ARGON2_LIBS@ @CARES_LIBS@ @PTHREAD_LIBS@
CRYPTOLIB=@CRYPTOLIB@
OPENSSLINCLUDES=
XCFLAGS=-I@TREINCDIR@ -I@CARESINCDIR@ @CARESLIBDIR@ @CFLAGS@
XCFLAGS=@PTHREAD_CFLAGS@ @TRE_CFLAGS@ @PCRE2_CFLAGS@ @ARGON2_CFLAGS@ @CARES_CFLAGS@ @CFLAGS@ @HARDEN_CFLAGS@ @CPPFLAGS@
#
# use the following on MIPS:
#CFLAGS= -systype bsd43 -DSYSTYPE_BSD43 -I$(INCLUDEDIR)
@@ -89,12 +89,6 @@ XCFLAGS=-I@TREINCDIR@ -I@CARESINCDIR@ @CARESLIBDIR@ @CFLAGS@
# you are not defining CMDLINE_CONFIG
IRCDMODE = 711
# [CHANGEME]
# IRCDDIR must be the same as DPATH in include/config.h
#
IRCDDIR=@IRCDDIR@
URL=@URL@
# [CHANGEME]
@@ -104,15 +98,18 @@ URL=@URL@
STRTOUL=@STRTOUL@
# [CHANGEME]
# If you get crashes around a specific number of clients, and that client
# load comes close or a little over the system-defined value of FD_SETSIZE,
# override it here and see what happens.
# If you get crashes around a specific number of clients, and that
# client load comes close or a little over the system-defined value of
# FD_SETSIZE, override it here and see what happens. You may override
# the system FD_SETSIZE by setting the FD_SETSIZE Makefile variable to
# -DFD_SETSIZE=<some number>.
FD_SETSIZE=@FD_SETSIZE@
# Where is your openssl binary
OPENSSLPATH=@OPENSSLPATH@
CFLAGS=-I$(INCLUDEDIR) $(XCFLAGS) @LDFLAGS@ $(FD_SETSIZE)
CFLAGS=-I$(INCLUDEDIR) $(XCFLAGS) $(FD_SETSIZE)
LDFLAGS=@LDFLAGS_PRIVATELIBS@ @HARDEN_LDFLAGS@
SHELL=/bin/sh
SUBDIRS=src
@@ -127,7 +124,7 @@ all: build
MAKEARGS = 'CFLAGS=${CFLAGS}' 'CC=${CC}' 'IRCDLIBS=${IRCDLIBS}' \
'LDFLAGS=${LDFLAGS}' 'IRCDMODE=${IRCDMODE}' \
'RES=${RES}' 'BINDIR=${BINDIR}' 'INSTALL=${INSTALL}' \
'INCLUDEDIR=${INCLUDEDIR}' 'IRCDDIR=${IRCDDIR}' \
'INCLUDEDIR=${INCLUDEDIR}' \
'RM=${RM}' 'CP=${CP}' 'TOUCH=${TOUCH}' \
'SHELL=${SHELL}' 'STRTOUL=${STRTOUL}' \
'CRYPTOLIB=${CRYPTOLIB}' \
@@ -135,36 +132,28 @@ MAKEARGS = 'CFLAGS=${CFLAGS}' 'CC=${CC}' 'IRCDLIBS=${IRCDLIBS}' \
'URL=${URL}'
custommodule:
cd src; ${MAKE} ${MAKEARGS} MODULEFILE=${MODULEFILE} 'EXLIBS=${EXLIBS}' custommodule
@if test -z "${MODULEFILE}"; then echo "Please set MODULEFILE when calling \`\`make custommodule''. For example, \`\`make custommodule MODULEFILE=callerid''." >&2; exit 1; fi
+cd src; ${MAKE} ${MAKEARGS} MODULEFILE=${MODULEFILE} 'EXLIBS=${EXLIBS}' custommodule
server:
build:
server: Makefile
build: Makefile
-@if [ ! -f include/setup.h ] ; then \
echo "Hmm...doesn't look like you've run Config..."; \
echo "Doing so now."; \
sh Config; \
fi
@for i in $(SUBDIRS); do \
@+for i in $(SUBDIRS); do \
echo "Building $$i";\
( cd $$i; ${MAKE} ${MAKEARGS} build; ) \
done
@echo ' __________________________________________________ '
@echo '| Compile is now complete. |'
@echo '| You should now read the documentation and learn |'
@echo '| how to configure your IRCd. |'
@echo '| |'
@echo '| If you really like UnrealIRCd, and would like to |'
@echo '| make a donation, please read the Donation file in|'
@echo '| this archive. :) |'
@echo '| |'
@echo '| Thanks for using Unreal IRCd! If you are in need |'
@echo '| for any kind of help regarding the IRCd please |'
@echo '| read the Unreal.nfo file. |'
@echo '|__________________________________________________|'
@echo ''
@echo '* UnrealIRCd compiled successfully'
@echo '* YOU ARE NOT DONE YET! Run "make install" to install UnrealIRCd !'
@echo ''
clean:
$(RM) -f *~ \#* core *.orig include/*.orig
@for i in $(SUBDIRS); do \
@+for i in $(SUBDIRS); do \
echo "Cleaning $$i";\
( cd $$i; ${MAKE} ${MAKEARGS} clean; ) \
done
@@ -173,66 +162,109 @@ clean:
fi
cleandir: clean
rm -rf include/networks.h include/setup.h Makefile Settings
makex:
chmod +x Config newnet ircd ircdcron/ircdchk killircd
chmod +x rehash ircdreg
fromdos: cleandir
$(FROMDOS) -dv *
$(FROMDOS) -dv src/*
$(FROMDOS) -dv include/*
$(FROMDOS) -dv doc/*
$(FROMDOS) -dv crypt/*
$(FROMDOS) -dv ircdcron/*
makedist: makex
echo "Stamping.."
stamp: makedist
echo "/* Auto created release stamping */" > include/stamp.h
echo "#define RELEASEID2 \"`date +%s`\"" >> include/stamp.h
echo "#define RELEASESTUFF \"`hostname`\"" >> include/stamp.h
echo "" >> include/stamp.h
rm -rf include/setup.h Makefile Settings
distclean: cleandir
rm -rf extras/*.bak extras/regexp extras/*.tar extras/c-ares
rm -rf extras/c-ares-* extras/tre-*
rm -rf config.log config.settings *.pem ircd.* unrealircd
rm -rf Makefile config.status
depend:
@for i in $(SUBDIRS); do \
@+for i in $(SUBDIRS); do \
echo "Making dependencies in $$i";\
( cd $$i; ${MAKE} ${MAKEARGS} depend; ) \
done
install: all
$(INSTALL) -m 0700 -d $(IRCDDIR)
$(INSTALL) -m 0700 src/ircd $(BINDIR)
$(INSTALL) -m 0700 -d $(IRCDDIR)/networks
$(INSTALL) -m 0600 networks/*.network $(IRCDDIR)/networks
$(INSTALL) -m 0700 networks/makenet $(IRCDDIR)/networks
$(INSTALL) -m 0600 networks/networks.ndx $(IRCDDIR)/networks
$(INSTALL) -m 0700 -d $(IRCDDIR)/doc
$(INSTALL) -m 0600 doc/Authors doc/example.conf doc/coding-guidelines doc/tao.of.irc doc/unreal32docs.html $(IRCDDIR)/doc
$(INSTALL) -m 0700 -d $(IRCDDIR)/aliases
$(INSTALL) -m 0600 aliases/*.conf $(IRCDDIR)/aliases
$(TOUCH) $(IRCDDIR)/unrealircd.conf
chmod 0600 $(IRCDDIR)/unrealircd.conf
$(INSTALL) -m 0600 spamfilter.conf dccallow.conf $(IRCDDIR)
$(INSTALL) -m 0600 badwords.*.conf help.conf LICENSE Donation $(IRCDDIR)
$(INSTALL) -m 0700 unreal $(IRCDDIR)
$(INSTALL) -m 0700 -d $(IRCDDIR)/modules
$(INSTALL) -m 0700 src/modules/*.so $(IRCDDIR)/modules
-@if [ ! -f "$(IRCDDIR)/curl-ca-bundle.crt" ] ; then \
$(INSTALL) -m 0700 curl-ca-bundle.crt $(IRCDDIR) ; \
$(INSTALL) -m 0700 -d @BINDIR@
$(INSTALL) -m 0700 src/ircd @BINDIR@/unrealircd
$(INSTALL) -m 0700 -d @DOCDIR@
$(INSTALL) -m 0600 doc/Authors doc/coding-guidelines doc/tao.of.irc @DOCDIR@
$(INSTALL) -m 0700 -d @CONFDIR@
$(INSTALL) -m 0600 doc/conf/*.default.conf @CONFDIR@
$(INSTALL) -m 0600 doc/conf/*.optional.conf @CONFDIR@
-@if [ ! -f "@CONFDIR@/spamfilter.conf" ] ; then \
$(INSTALL) -m 0600 doc/conf/spamfilter.conf @CONFDIR@ ; \
fi
-@extras/patches/patch_spamfilter_conf "@CONFDIR@"
-@if [ ! -f "@CONFDIR@/badwords.conf" ] ; then \
$(INSTALL) -m 0600 doc/conf/badwords.conf @CONFDIR@ ; \
fi
-@if [ ! -f "@CONFDIR@/dccallow.conf" ] ; then \
$(INSTALL) -m 0600 doc/conf/dccallow.conf @CONFDIR@ ; \
fi
$(INSTALL) -m 0700 -d @CONFDIR@/aliases
$(INSTALL) -m 0600 doc/conf/aliases/*.conf @CONFDIR@/aliases
$(INSTALL) -m 0700 -d @CONFDIR@/help
$(INSTALL) -m 0600 doc/conf/help/*.conf @CONFDIR@/help
$(INSTALL) -m 0700 -d @CONFDIR@/examples
$(INSTALL) -m 0600 doc/conf/examples/*.conf @CONFDIR@/examples
$(INSTALL) -m 0700 -d @CONFDIR@/ssl
$(INSTALL) -m 0600 doc/conf/ssl/curl-ca-bundle.crt @CONFDIR@/ssl
$(INSTALL) -m 0700 unrealircd @SCRIPTDIR@
$(INSTALL) -m 0700 -d @MODULESDIR@
$(INSTALL) -m 0700 src/modules/*.so @MODULESDIR@
$(INSTALL) -m 0700 -d @MODULESDIR@/usermodes
$(INSTALL) -m 0700 src/modules/usermodes/*.so @MODULESDIR@/usermodes
$(INSTALL) -m 0700 -d @MODULESDIR@/chanmodes
$(INSTALL) -m 0700 src/modules/chanmodes/*.so @MODULESDIR@/chanmodes
$(INSTALL) -m 0700 -d @MODULESDIR@/snomasks
$(INSTALL) -m 0700 src/modules/snomasks/*.so @MODULESDIR@/snomasks
$(INSTALL) -m 0700 -d @MODULESDIR@/extbans
$(INSTALL) -m 0700 src/modules/extbans/*.so @MODULESDIR@/extbans
$(INSTALL) -m 0700 -d @MODULESDIR@/cap
$(INSTALL) -m 0700 src/modules/cap/*.so @MODULESDIR@/cap
$(INSTALL) -m 0700 -d @MODULESDIR@/third
@#Ugly stuff to detect 0 files in this directory:
@+for f in src/modules/third/*.so; do \
[ -e $f ] && $(INSTALL) -m 0700 src/modules/third/*.so @MODULESDIR@/third || echo; \
done
$(INSTALL) -m 0700 -d @TMPDIR@
$(INSTALL) -m 0700 -d @CACHEDIR@
$(INSTALL) -m 0700 -d @PERMDATADIR@
$(INSTALL) -m 0700 -d @LOGDIR@
-@if [ ! -f "@CONFDIR@/ssl/server.cert.pem" ] ; then \
$(INSTALL) -m 0600 server.req.pem @CONFDIR@/ssl ; \
$(INSTALL) -m 0600 server.key.pem @CONFDIR@/ssl ; \
$(INSTALL) -m 0600 server.cert.pem @CONFDIR@/ssl ; \
fi
@echo ''
@echo '* UnrealIRCd is now installed.'
-@if [ "@SCRIPTDIR@/bin" = "@BINDIR@" ] ; then \
echo '* Leave this directory and run "cd @SCRIPTDIR@" now' ; \
fi
@echo '* Directory layout:'
-@if [ "@SCRIPTDIR@/bin" = "@BINDIR@" ] ; then \
echo ' * Base directory: @SCRIPTDIR@' ; \
fi
@echo ' * Configuration files: @CONFDIR@'
@echo ' * Log files: @LOGDIR@'
@echo ' * Modules: @MODULESDIR@'
@echo '* To start/stop UnrealIRCd run: @SCRIPTDIR@/unrealircd"'
@echo ''
@echo '* Consult the documentation online at:'
@echo ' * https://www.unrealircd.org/docs/'
@echo ' * https://www.unrealircd.org/docs/FAQ'
@echo '* You may also wish to install a cron job to ensure UnrealIRCd is always running:'
@echo ' * https://www.unrealircd.org/docs/Cron_job'
@echo ''
-@if [ "@SCRIPTDIR@/bin" = "@BINDIR@" ] ; then \
echo 'Again, be sure to change to the @SCRIPTDIR@ directory!' ; \
fi
### TODO: all the stuff below ;) ###
pem: src/ssl.cnf
@echo "Generating certificate request .. "
$(OPENSSLPATH) req -new \
-config src/ssl.cnf -out server.req.pem \
-config src/ssl.cnf -sha256 -out server.req.pem \
-keyout server.key.pem -nodes
@echo "Generating self-signed certificate .. "
$(OPENSSLPATH) req -x509 -days 365 -in server.req.pem \
$(OPENSSLPATH) req -x509 -days 3650 -sha256 -in server.req.pem \
-key server.key.pem -out server.cert.pem
@echo "Generating fingerprint .."
$(OPENSSLPATH) x509 -subject -dates -fingerprint -noout \
$(OPENSSLPATH) x509 -subject -dates -sha256 -fingerprint -noout \
-in server.cert.pem
@echo "Setting o-rwx & g-rwx for files... "
chmod o-rwx server.req.pem server.key.pem server.cert.pem
@@ -249,3 +281,5 @@ encpem: server.key.pem
rm -f server.key.c.pem ; \
fi
Makefile: config.status Makefile.in
./config.status
-24
View File
@@ -1,24 +0,0 @@
==[ COMPILING ]==
To build the ircd, run:
./Config
make
If you specified an alternative location during ./Config you also need
to run "make install".
==[ MAKING A CONFIG FILE ]==
If you are new, then you need to create your own configfile:
copy doc/example.conf to your main UnrealIRCd directory and call
it unrealircd.conf .
Then open it in an editor and carefully modify it, consult the docs
(doc/unreal32docs.html, or online: www.unrealircd.com/unreal32docs.html)
for more information about every block/setting.
Common problems are explained in the FAQ, which is located at:
http://www.vulnscan.org/UnrealIrcd/faq/ .
==[ BOOTING YOUR IRCD ]==
Just type: ./unreal start
Note that after booting the errors are usually logged to ircd.log,
so check that file if you have any problems.
Again, check the FAQ (and docs) if you have any boot problems.
+57
View File
@@ -0,0 +1,57 @@
[![Build Status - *NIX](https://travis-ci.org/unrealircd/unrealircd.svg?branch=unreal42)](https://travis-ci.org/unrealircd/unrealircd)
[![Build Status - Windows](https://ci.appveyor.com/api/projects/status/9kgectl2mfyia0s5/branch/unreal42?svg=true)](https://ci.appveyor.com/project/syzop/unrealircd/branch/unreal42)
[![Twitter Follow](https://img.shields.io/twitter/follow/Unreal_IRCd.svg?style=social&label=Follow)](https://twitter.com/Unreal_IRCd)
## About UnrealIRCd
UnrealIRCd is an Open Source IRC Server, serving thousands of networks since 1999.
It runs on Linux, OS X and Windows and is currently the most widely deployed IRCd
with a market share of over 50%. UnrealIRCd is a highly advanced IRCd with a strong
focus on modularity, an advanced and highly configurable configuration file.
Key features include SSL, cloaking, its advanced anti-flood and anti-spam systems,
swear filtering and module support. We are also particularly proud on our extensive
online documentation.
## How to get started
Please consult our excellent online documentation at https://www.unrealircd.org/docs/
when setting up the IRCd!
### Step 1: Installation
#### Windows
Simply download the UnrealIRCd Windows version from www.unrealircd.org
Alternatively you can compile UnrealIRCd for Windows yourself. However this is not straightforward and thus not recommended.
#### *BSD/Linux/macOS
First you must compile the IRCd:
* Run `./Config`
* Run `make`
* Run `make install`
* Now change to the directory where you installed UnrealIRCd, e.g. `cd /home/xxxx/unrealircd`
### Step 2: Configuration
Configuration files are stored in the conf/ folder by default (eg: /home/xxxx/unrealircd/conf)
#### Create a configuration file
If you are new, then you need to create your own configuration file:
Copy conf/examples/example.conf to conf/ and call it unrealircd.conf.
Then open it in an editor and carefully modify it using the documentation and FAQ as a guide (see below).
### Step 3: Booting
#### Linux/*BSD/macOS
Run `./unrealircd start` in the directory where you installed UnrealIRCd.
#### Windows
Start -> All Programs -> UnrealIRCd -> UnrealIRCd
## Documentation & FAQ
You can find the **documentation** online at: https://www.unrealircd.org/docs/
We also have a good **FAQ**: https://www.unrealircd.org/docs/FAQ
## Website, support, and other links ##
* https://www.unrealircd.org - Our main website
* https://forums.unrealircd.org - Support
* https://bugs.unrealircd.org - Bug tracker
* ircs://irc.unrealircd.org:6697/unreal-support - IRC support
-68
View File
@@ -1,68 +0,0 @@
===============================================
= UnrealIRCd v3.2.8.1 =
===============================================
This release was brought to you by:
Coders:
=======
* Syzop
Contributors:
=============
* aquanight
* WolfSage
* Stealth
* tabrisnet
* Bock
* fbi
RC Testers:
===========
* Bock, Apocalypse, StrawberryKittens, wax, Elemental, and many more
Previous coders:
================
* Stskeeps
* codemastr
* Many more..
Precenses on the Internet:
* http://www.unrealircd.com
CVS
====
To get anonymous access: (read only)
"cvs -d :pserver:anonymous@cvs.unrealircd.com:/cvs login"
press enter when asked for password
Then, choose the appropiate branch you want:
latest 3.2 release ("stable"):
"cvs -z3 -d :pserver:anonymous@cvs.unrealircd.com:/cvs checkout -r stable -d Unreal-stable unreal"
latest 3.2 fixes / development ("unreal3_2_fixes"):
"cvs -z3 -d :pserver:anonymous@cvs.unrealircd.com:/cvs checkout -r unreal3_2_fixes -d Unreal-stable unreal"
To get support
================
Before asking others for help you MUST:
* read the docs (doc/unreal32docs.html or online: www.unrealircd.com/unreal32docs.html)
* check the FAQ (www.vulnscan.org/UnrealIrcd/faq/)
Means of support:
* IRC: /server irc.unrealircd.com 6667 - /join #unreal-support
[Note: Follow the bots instructions in order to get voice.
Please be patient after asking questions, we may do other stuff
or we're away. Don't repeat questions, we heard you first time,
READ THE TOPIC before you ask anything. We do this on a free
base so we are volunteeringly helping you, but we are humans
like you, and we got to have peace at times as well.]
* Forum: http://forums.unrealircd.com/
UnrealIRCd Bugtracker (Where to report bugs or make suggestions)
==================================================================
http://bugs.unrealircd.org
Want to discuss, chat, etc?
=============================
* IRC: /server irc.unrealircd.com 6667 - /join #UnrealIRCd
+10
View File
@@ -0,0 +1,10 @@
version: 4.2.x-devbuild-{build}
environment:
matrix:
- APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017"
TARGET: "Visual Studio 2017"
SHORTNAME: "vs2017"
init:
- cmd: git config --global core.autocrlf true
build_script:
- cmd: call extras\\build-tests\\windows\\build.bat
-174
View File
@@ -1,174 +0,0 @@
dnl aclocal.m4 generated automatically by aclocal 1.4-p4
dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl This program is distributed in the hope that it will be useful,
dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
dnl PARTICULAR PURPOSE.
dnl Macro: unet_CHECK_TYPE_SIZES
dnl
dnl Check the size of several types and define a valid int16_t and int32_t.
dnl
AC_DEFUN(unreal_CHECK_TYPE_SIZES,
[dnl Check type sizes
AC_CHECK_SIZEOF(short)
AC_CHECK_SIZEOF(int)
AC_CHECK_SIZEOF(long)
if test "$ac_cv_sizeof_int" = 2 ; then
AC_CHECK_TYPE(int16_t, int)
AC_CHECK_TYPE(u_int16_t, unsigned int)
elif test "$ac_cv_sizeof_short" = 2 ; then
AC_CHECK_TYPE(int16_t, short)
AC_CHECK_TYPE(u_int16_t, unsigned short)
else
AC_MSG_ERROR([Cannot find a type with size of 16 bits])
fi
if test "$ac_cv_sizeof_int" = 4 ; then
AC_CHECK_TYPE(int32_t, int)
AC_CHECK_TYPE(u_int32_t, unsigned int)
elif test "$ac_cv_sizeof_short" = 4 ; then
AC_CHECK_TYPE(int32_t, short)
AC_CHECK_TYPE(u_int32_t, unsigned short)
elif test "$ac_cv_sizeof_long" = 4 ; then
AC_CHECK_TYPE(int32_t, long)
AC_CHECK_TYPE(u_int32_t, unsigned long)
else
AC_MSG_ERROR([Cannot find a type with size of 32 bits])
fi
AC_CHECK_SIZEOF(rlim_t)
if test "$ac_cv_sizeof_rlim_t" = 8 ; then
AC_DEFINE(LONG_LONG_RLIM_T)
fi
])
AC_DEFUN(CHECK_LIBCURL,
[
AC_ARG_ENABLE(libcurl,
[AC_HELP_STRING([--enable-libcurl=DIR],[enable libcurl (remote include) support])],
[
CURLCFLAG=`$enableval/bin/curl-config --cflags`
CURLLIBS=`$enableval/bin/curl-config --libs`
dnl Ok this is ugly, basically we need to strip the version of c-ares that curl uses
dnl because we want to use our own version (which is hopefully fully binary
dnl compatible with the curl one as well).
dnl Therefore we need to strip the cares libs in a weird way...
dnl If anyone can come up with something better and still portable (no awk!?)
dnl then let us know.
if test "x`echo $CURLLIBS |grep ares`" != x ; then
dnl Attempt one: Linux sed
XCURLLIBS="`echo "$CURLLIBS"|sed -r 's/(@<:@^ @:>@+ @<:@^ @:>@+ )(@<:@^ @:>@+ @<:@^ @:>@+ )(.+)/\1\3/g' 2>/dev/null`"
if test x"$XCURLLIBS" = x; then
dnl Attempt two: FreeBSD (and others?) sed
XCURLLIBS="`echo "$CURLLIBS"|sed -E 's/(@<:@^ @:>@+ @<:@^ @:>@+ )(@<:@^ @:>@+ @<:@^ @:>@+ )(.+)/\1\3/g' 2>/dev/null`"
if test x"$XCURLLIBS" = x; then
AC_MSG_ERROR([sed appears to be broken. It is needed for a remote includes compile hack.])
fi
fi
CURLLIBS="$XCURLLIBS"
fi
IRCDLIBS="$IRCDLIBS $CURLLIBS"
CFLAGS="$CFLAGS $CURLCFLAG -DUSE_LIBCURL"
URL="url.o"
AC_SUBST(URL)
])
])
dnl the following 2 macros are based on CHECK_SSL by Mark Ethan Trostler <trostler@juniper.net>
AC_DEFUN([CHECK_SSL],
[
AC_ARG_ENABLE(ssl,
[AC_HELP_STRING([--enable-ssl=],[enable ssl will check /usr/local/ssl /usr/lib/ssl /usr/ssl /usr/pkg /usr/local /usr])],
[
AC_MSG_CHECKING(for openssl)
for dir in $enableval /usr/local/ssl /usr/lib/ssl /usr/ssl /usr/pkg /usr/local /usr; do
ssldir="$dir"
if test -f "$dir/include/openssl/ssl.h"; then
AC_MSG_RESULT(found in $ssldir/include/openssl)
found_ssl="yes";
if test ! "$ssldir" = "/usr" ; then
CFLAGS="$CFLAGS -I$ssldir/include";
fi
break;
fi
if test -f "$dir/include/ssl.h"; then
AC_MSG_RESULT(found in $ssldir/include)
found_ssl="yes";
if test ! "$ssldir" = "/usr" ; then
CFLAGS="$CFLAGS -I$ssldir/include";
fi
break
fi
done
if test x_$found_ssl != x_yes; then
AC_MSG_RESULT(not found)
echo ""
echo "Apparently you do not have both the openssl binary and openssl development libraries installed."
echo "You have two options:"
echo "a) Install the needed binaries and libraries"
echo " and run ./Config"
echo "OR"
echo "b) If you don't need SSL..."
echo " Run ./Config and say 'no' when asked about SSL"
echo ""
exit 1
else
CRYPTOLIB="-lssl -lcrypto";
if test ! "$ssldir" = "/usr" ; then
LDFLAGS="$LDFLAGS -L$ssldir/lib";
fi
AC_DEFINE(USE_SSL)
fi
],
)
])
AC_DEFUN([CHECK_ZLIB],
[
AC_ARG_ENABLE(ziplinks,
[AC_HELP_STRING([--enable-ziplinks],[enable ziplinks will check /usr/local /usr /usr/pkg])],
[
AC_MSG_CHECKING(for zlib)
for dir in $enableval /usr/local /usr /usr/pkg; do
zlibdir="$dir"
if test -f "$dir/include/zlib.h"; then
AC_MSG_RESULT(found in $zlibdir)
found_zlib="yes";
if test "$zlibdir" = "/usr" ; then
CFLAGS="$CFLAGS -DZIP_LINKS";
else
CFLAGS="$CFLAGS -I$zlibdir/include -DZIP_LINKS";
fi
break;
fi
done
if test x_$found_zlib != x_yes; then
AC_MSG_RESULT(not found)
echo ""
echo "Apparently you do not have the zlib development library installed."
echo "You have two options:"
echo "a) Install the zlib development library"
echo " and run ./Config"
echo "OR"
echo "b) If you don't need compressed links..."
echo " Run ./Config and say 'no' when asked about ziplinks support"
echo ""
exit 1
else
IRCDLIBS="$IRCDLIBS -lz";
if test "$zlibdir" != "/usr" ; then
LDFLAGS="$LDFLAGS -L$zlibdir/lib";
fi
HAVE_ZLIB=yes
fi
AC_SUBST(HAVE_ZLIB)
],
)
])
+1438
View File
File diff suppressed because it is too large Load Diff
+601 -166
View File
File diff suppressed because it is too large Load Diff
-515
View File
@@ -1,515 +0,0 @@
dnl Process this file with autoconf to produce a configure script.
AC_INIT(src/ircd.c)
if test $# = 0; then
echo "You might want to run ./Config or provide some parameters to this script."
echo "./configure --help for information about this script"
exit 0
fi
AC_CONFIG_HEADER(include/setup.h)
AC_PROG_CC
if test "$ac_cv_prog_gcc" = "yes"; then
CFLAGS="$CFLAGS -funsigned-char"
AC_CACHE_CHECK(if gcc has a working -pipe, ac_cv_pipe, [
save_cflags="$CFLAGS"
CFLAGS="$CFLAGS -pipe"
AC_TRY_COMPILE(,, ac_cv_pipe="yes", ac_cv_pipe="no")
CFLAGS="$save_cflags"
])
if test "$ac_cv_pipe" = "yes"; then
CFLAGS="-pipe $CFLAGS"
fi
fi
dnl (the gcc flag detection trick is taken from xemacs/Vin Shelton)
dnl UnrealIRCd might not be strict-aliasing safe at this time
case "`$CC -v --help 2>&1`" in
*-fstrict-aliasing* ) CFLAGS="$CFLAGS -fno-strict-aliasing" ;;
esac
dnl Pointer signedness warnings are really a pain and 99.9% of the time
dnl they are of absolutely no use whatsoever. IMO the person who decided
dnl to enable this without -Wall should be shot on sight.
case "`$CC -v --help 2>&1`" in
*-Wpointer-sign* ) CFLAGS="$CFLAGS -Wno-pointer-sign" ;;
esac
AC_PATH_PROG(RM,rm)
AC_PATH_PROG(CP,cp)
AC_PATH_PROG(TOUCH,touch)
AC_PATH_PROG(OPENSSLPATH,openssl)
AC_PATH_PROG(INSTALL,install)
AC_CHECK_PROG(MAKER, gmake, gmake, make)
AC_PATH_PROG(GMAKE,gmake)
AC_PATH_PROG(GUNZIP, gunzip)
AC_PATH_PROG(PKGCONFIG, pkg-config)
dnl Checks for libraries.
AC_CHECK_LIB(descrypt, crypt, [AC_DEFINE(HAVE_CRYPT) IRCDLIBS="$IRCDLIBS-ldescrypt " MKPASSWDLIBS="-ldescrypt"],
AC_CHECK_LIB(crypt, crypt,[ AC_DEFINE(HAVE_CRYPT) IRCDLIBS="$IRCDLIBS-lcrypt " MKPASSWDLIBS="-lcrypt"]))
AC_CHECK_LIB(socket, socket,IRCDLIBS="$IRCDLIBS-lsocket " SOCKLIB="-lsocket")
AC_CHECK_LIB(nsl, inet_ntoa,IRCDLIBS="$IRCDLIBS-lnsl " INETLIB="-lnsl")
AC_SUBST(IRCDLIBS)
AC_SUBST(MKPASSWDLIBS)
dnl module checking based on Hyb7's module checking code
AC_DEFUN([AC_ENABLE_DYN],
[
AC_CHECK_FUNC(dlopen,, [AC_CHECK_LIB(dl, dlopen,IRCDLIBS="$IRCDLIBS -ldl",
[
AC_MSG_WARN(Dynamic linking is not enabled because dlopen was not found)
AC_DEFINE(STATIC_LINKING)
])])
hold_cflags=$CFLAGS
CFLAGS="$CFLAGS -export-dynamic"
AC_CACHE_CHECK(if we need the -export-dynamic flag, ac_cv_export_dynamic, [
AC_TRY_LINK(, [int i];, ac_cv_export_dynamic=yes, ac_cv_export_dynamic=no)])
if test "$ac_cv_export_dynamic" = "no"; then
CFLAGS=$hold_cflags
fi
AC_CACHE_CHECK(for compiler option to produce PIC,ac_cv_pic,[
if test "$ac_cv_prog_gcc" = "yes"; then
ac_cv_pic="-fPIC -DPIC -shared"
case `uname -s` in
Darwin*[)]
ac_cv_pic="-bundle -flat_namespace -undefined suppress"
;;
HP-UX*[)]
ac_cv_pic="-fPIC"
;;
esac
else
case `uname -s` in
SunOS*[)]
ac_cv_pic="-KPIC -DPIC -G"
;;
esac
fi
])
AC_CACHE_CHECK(if your system prepends an underscore on symbols,ac_cv_underscore,[
cat >uscore.c << __EOF__
int main() {
return 0;
}
__EOF__
$CC -o uscore $CFLAGS uscore.c 1>&5
if test -z "`strings -a uscore |grep '^_main$'`"; then
ac_cv_underscore=no
else
ac_cv_underscore=yes
fi
rm -f uscore uscore.c
])
if test "$ac_cv_underscore" = "yes"; then
AC_DEFINE(UNDERSCORE)
fi
MODULEFLAGS=$ac_cv_pic
AC_DEFINE(DYNAMIC_LINKING)
])
AC_DEFUN([AC_ENABLE_INET6],[
AC_CACHE_CHECK(if your system has IPv6 support, ac_cv_ip6, [
save_libs="$LIBS"
LIBS="$LIBS $SOCKLIB"
AC_TRY_RUN([
#include <sys/types.h>
#include <sys/socket.h>
int main() {
if (socket(AF_INET6, SOCK_STREAM, 0) < 0)
exit(1);
exit(0);
}
], ac_cv_ip6=yes, ac_cv_ip6=no)
])
if test "$ac_cv_ip6" = "no"; then
AC_MSG_WARN(Your system does not support IPv6 so it will not be enabled)
else
AC_DEFINE(INET6)
dnl in6addr_any detection code taken from ratbox
AC_MSG_CHECKING([for struct in6addr_any])
AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM(
[[#define IN_AUTOCONF
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>]],
[[struct in6_addr a = in6addr_any;]]
)],
[AC_MSG_RESULT(yes)],
[
AC_MSG_RESULT(no)
AC_DEFINE(NO_IN6ADDR_ANY)
]
)
fi
LIBS="$save_libs"
])
AC_CHECK_HEADER(sys/param.h,AC_DEFINE(PARAMH))
AC_CHECK_HEADER(stdlib.h,AC_DEFINE(STDLIBH))
AC_CHECK_HEADER(stddef.h,AC_DEFINE(STDDEFH))
AC_CHECK_HEADER(sys/syslog.h,AC_DEFINE(SYSSYSLOGH))
AC_CHECK_HEADER(unistd.h,AC_DEFINE(UNISTDH))
AC_CHECK_HEADER(string.h,AC_DEFINE(STRINGH))
AC_CHECK_HEADER(strings.h,AC_DEFINE(STRINGSH))
AC_CHECK_HEADER(malloc.h,AC_DEFINE(MALLOCH,<malloc.h>))
AC_CHECK_HEADER(sys/rusage.h,AC_DEFINE(RUSAGEH))
AC_CHECK_HEADER(glob.h,AC_DEFINE(GLOBH))
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_C_INLINE
AC_TYPE_SIZE_T
AC_HEADER_TIME
AC_STRUCT_TM
AC_TYPE_UID_T
unreal_CHECK_TYPE_SIZES
AC_CACHE_CHECK(what kind of nonblocking sockets you have, ac_cv_nonblocking,[
save_libs="$LIBS"
LIBS="$LIBS $SOCKLIB"
AC_TRY_RUN([
#include <sys/types.h>
#include <sys/socket.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <sys/file.h>
#include <signal.h>
alarmed() {
exit(1);
}
int main() {
#ifdef O_NONBLOCK
char b[12], x[32];
int f, l = sizeof(x);
f = socket(AF_INET, SOCK_DGRAM, 0);
if (f >= 0 && !(fcntl(f, F_SETFL, O_NONBLOCK))) {
signal(SIGALRM, alarmed);
alarm(3);
recvfrom(f, b, 12, 0, (struct sockaddr *)x, &l);
alarm(0);
exit(0);
}
#endif
exit(1);
}
],ac_cv_nonblocking=O_NONBLOCK,[
AC_TRY_RUN([
#include <sys/types.h>
#include <sys/socket.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <sys/file.h>
#include <signal.h>
alarmed() {
exit(0);
}
int main() {
#ifdef O_NDELAY
char b[12], x[32];
int f, l = sizeof(x);
f = socket(AF_INET, SOCK_DGRAM, 0);
if (f >= 0 && !(fcntl(f, F_SETFL, O_NDELAY))) {
signal(SIGALRM, alarmed);
alarm(3);
recvfrom(f, b, 12, 0, (struct sockaddr *)x, &l);
alarm(0);
exit(0);
}
#endif
exit(1);
}],ac_cv_nonblocking=O_NDELAY,[
AC_TRY_RUN([
#include <sys/types.h>
#include <sys/socket.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <sys/file.h>
#include <signal.h>
alarmed() {
exit(1);
}
int main() {
#ifdef FIONBIO
char b[12], x[32];
int f, l = sizeof(x);
f = socket(AF_INET, SOCK_DGRAM, 0);
if (f >= 0 && !(fcntl(f, F_SETFL, FIONBIO))) {
signal(SIGALRM, alarmed);
alarm(3);
recvfrom(f, b, 12, 0, (struct sockaddr *)x, &l);
alarm(0);
exit(0);
}
#endif
exit(1);
], ac_cv_nonblocking=FIONBIO,ac_cv_nonblocking=none)])])])
if test "$ac_cv_nonblocking" = "O_NONBLOCK"; then
AC_DEFINE(NBLOCK_POSIX)
elif test "$ac_cv_nonblocking" = "O_NDELAY"; then
AC_DEFINE(NBLOCK_BSD)
elif test "$ac_cv_nonblocking" = "FIONBIO"; then
AC_DEFINE(NBLOCK_SYSV)
fi
LIBS="$save_libs"
dnl Checks for library functions.
AC_PROG_GCC_TRADITIONAL
AC_FUNC_SETPGRP
AC_FUNC_SETVBUF_REVERSED
AC_FUNC_ALLOCA
AC_CHECK_FUNCS(snprintf,AC_DEFINE(HAVE_SNPRINTF))
AC_CHECK_FUNCS(vsnprintf,AC_DEFINE(HAVE_VSNPRINTF))
AC_CHECK_FUNCS(strlcpy, AC_DEFINE(HAVE_STRLCPY))
AC_CHECK_FUNCS(strlcat, AC_DEFINE(HAVE_STRLCAT))
AC_CHECK_FUNCS(strlncat, AC_DEFINE(HAVE_STRLNCAT))
AC_CHECK_FUNCS(inet_pton, AC_DEFINE(HAVE_INET_PTON))
AC_CHECK_FUNCS(inet_ntop, AC_DEFINE(HAVE_INET_NTOP))
dnl Check if it supports C99 style variable length arrays
AC_CACHE_CHECK(if C99 variable length arrays are supported, ac_cv_varlen_arrays, [
AC_TRY_COMPILE(,[
int main() {
int i = 5;
int a[i];
a[0] = 1;
return 0;
}], ac_cv_varlen_arrays=yes, ac_cv_varlen_arrays=no)
])
if test "$ac_cv_varlen_arrays" = "yes" ; then
AC_DEFINE(HAVE_C99_VARLEN_ARRAY)
fi
AC_CACHE_CHECK(if we can set the core size to unlimited, ac_cv_force_core,[
AC_TRY_RUN([
#include <sys/time.h>
#include <sys/resource.h>
#include <unistd.h>
int main() {
struct rlimit corelim;
corelim.rlim_cur = corelim.rlim_max = RLIM_INFINITY;
if (setrlimit(RLIMIT_CORE, &corelim))
exit(1);
exit(0);
}
],ac_cv_force_core=yes,ac_cv_force_core=no)
])
if test "$ac_cv_force_core" = "yes"; then
AC_DEFINE(FORCE_CORE)
fi
AC_FUNC_VPRINTF
AC_CHECK_FUNCS(gettimeofday,AC_DEFINE(GETTIMEOFDAY),[AC_CHECK_FUNCS(lrand48,AC_DEFINE(LRADN48))])
AC_CHECK_FUNCS(getrusage,AC_DEFINE(GETRUSAGE_2),[AC_CHECK_FUNCS(times,AC_DEFINE(TIMES_2))])
AC_CHECK_FUNCS(setproctitle,AC_DEFINE(HAVE_SETPROCTITLE),[
AC_CHECK_LIB(util,setproctitle,AC_DEFINE(HAVE_SETPROCTITLE) IRCDLIBS="$IRCDLIBS-lutil",[
AC_EGREP_HEADER([#define.*PS_STRINGS.*],sys/exec.h,AC_DEFINE(HAVE_PSSTRINGS),[
AC_CHECK_FUNCS(pstat,AC_DEFINE(HAVE_PSTAT))
])
])
])
AC_CACHE_CHECK(what type of signals you have, ac_cv_sigtype, [
AC_TRY_RUN([
#include <signal.h>
int main() {
sigaction(SIGTERM, (struct sigaction *)0L, (struct sigaction *)0L);
}
], ac_cv_sigtype=POSIX, [
AC_TRY_RUN([
#include <signal.h>
int calls = 0;
void handler()
{
if (calls)
return;
calls++;
kill(getpid(), SIGTERM);
sleep(1);
}
int main() {
signal(SIGTERM, handler);
kill(getpid(), SIGTERM);
exit(0);
}
], ac_cv_sigtype=BSD,ac_cv_sigtype=SYSV)])])
if test "$ac_cv_sigtype" = "POSIX"; then
AC_DEFINE(POSIX_SIGNALS)
elif test "$ac_cv_sigtype" = "BSD"; then
AC_DEFINE(BSD_RELIABLE_SIGNALS)
else
AC_DEFINE(SYSV_UNRELIABLE_SIGNALS)
fi
AC_CHECK_FUNCS(strtoken,,AC_DEFINE(NEED_STRTOKEN))
AC_CHECK_FUNCS(strtok,,AC_DEFINE(NEED_STRTOK))
AC_CHECK_FUNCS(strerror,,AC_DEFINE(NEED_STRERROR))
AC_CHECK_FUNCS(index,,AC_DEFINE(NOINDEX))
AC_CHECK_FUNCS(strtoul,,STRTOUL="strtoul.o")
AC_CHECK_FUNCS(bcopy,,AC_DEFINE(NEED_BCOPY))
AC_CHECK_FUNCS(bcmp,,AC_DEFINE(NEED_BCMP))
AC_CHECK_FUNCS(bzero,,AC_DEFINE(NEED_BZERO))
AC_CHECK_FUNCS(strcasecmp,AC_DEFINE(GOT_STRCASECMP))
save_libs="$LIBS"
LIBS="$LIBS $SOCKLIB $INETLIB"
AC_CHECK_FUNCS(inet_addr,,AC_DEFINE(NEED_INET_ADDR))
AC_CHECK_FUNCS(inet_ntoa,,AC_DEFINE(NEED_INET_NTOA))
AC_CHECK_FUNCS(inet_netof,,AC_DEFINE(NEED_INET_NETOF))
LIBS="$save_libs"
AC_CHECK_FUNCS(syslog,AC_DEFINE(HAVE_SYSLOG))
AC_CHECK_FUNCS(vsyslog,AC_DEFINE(HAVE_VSYSLOG))
AC_SUBST(STRTOUL)
AC_SUBST(CRYPTOLIB)
AC_SUBST(MODULEFLAGS)
AC_ARG_WITH(listen, [AC_HELP_STRING([--with-listen=backlog],[Specify the listen backlog value])],
AC_DEFINE_UNQUOTED(LISTEN_SIZE,$withval),AC_DEFINE(LISTEN_SIZE,5))
AC_ARG_WITH(nick-history, [AC_HELP_STRING([--with-nick-history=length],[Specify the length of the nickname history])],
AC_DEFINE_UNQUOTED(NICKNAMEHISTORYLENGTH,$withval), AC_DEFINE(NICKNAMEHISTORYLENGTH,2000))
AC_ARG_WITH(sendq, [AC_HELP_STRING([--with-sendq=maxsendq],[Specify the max sendq for the server])],
AC_DEFINE_UNQUOTED(MAXSENDQLENGTH,$withval),AC_DEFINE(MAXSENDQLENGTH,3000000))
AC_ARG_WITH(bufferpool, [AC_HELP_STRING([--with-bufferpool=size],[Specify the size of the buffer pool])],
AC_DEFINE_UNQUOTED(BUFFERPOOL,[($withval * MAXSENDQLENGTH)]),AC_DEFINE(BUFFERPOOL,[(18 * MAXSENDQLENGTH)]))
AC_ARG_WITH(hostname, [AC_HELP_STRING([--with-hostname=host],[Specify the local hostname of the server])], AC_DEFINE_UNQUOTED(DOMAINNAME,"$withval"),AC_DEFINE_UNQUOTED(DOMAINNAME,"`hostname`"))
AC_ARG_WITH(permissions, [AC_HELP_STRING([--with-permissions=permissions],[Specify the default permissions for
configuration files])], AC_DEFINE_UNQUOTED(DEFAULT_PERMISSIONS,$withval), AC_DEFINE(DEFAULT_PERMISSIONS, 0600))
AC_ARG_WITH(dpath, [AC_HELP_STRING([--with-dpath=path],[Specify the path where configuration files are stored])],
AC_DEFINE_UNQUOTED(DPATH, "$withval") IRCDDIR="$withval", AC_DEFINE_UNQUOTED(DPATH,"`pwd`") IRCDDIR="`pwd`")
AC_ARG_WITH(fd-setsize, [AC_HELP_STRING([--with-fd-setsize=size],[Specify the max file descriptors to use])],
ac_fd=$withval, ac_fd=1024)
AC_DEFINE_UNQUOTED(MAXCONNECTIONS, $ac_fd)
AC_ARG_WITH(spath, [AC_HELP_STRING([--with-spath],[Specify the location of the executable])],
AC_DEFINE_UNQUOTED(SPATH,"$withval") BINDIR="$withval",AC_DEFINE_UNQUOTED(SPATH,"`pwd`/src/ircd") BINDIR="`pwd`/src/ircd")
AC_ARG_ENABLE(nospoof, [AC_HELP_STRING([--enable-nospoof],[Enable spoofing protection])], AC_DEFINE(NOSPOOF))
AC_ARG_ENABLE(prefixaq, [AC_HELP_STRING([--enable-prefixaq],[Enable chanadmin and chanowner prefixes])], AC_DEFINE(PREFIX_AQ))
AC_ARG_ENABLE(hub, [AC_HELP_STRING([--enable-hub],[Compile as a hub server])], AC_DEFINE(HUB))
AC_ARG_WITH(showlistmodes, [AC_HELP_STRING([--with-showlistmodes], [Specify whether modes are shown in /list])],
AC_DEFINE(LIST_SHOW_MODES))
AC_ARG_WITH(topicisnuhost, [AC_HELP_STRING([--with-topicisnuhost], [Display nick!user@host as the topic setter])],
AC_DEFINE(TOPIC_NICK_IS_NUHOST))
AC_ARG_WITH(shunnotices, [AC_HELP_STRING([--with-shunnotices], [Notify a user when he/she is no longer shunned])],
AC_DEFINE(SHUN_NOTICES))
AC_ARG_WITH(no-operoverride, [AC_HELP_STRING([--with-no-operoverride], [Disable OperOverride])],
AC_DEFINE(NO_OPEROVERRIDE))
AC_ARG_WITH(disableusermod, [AC_HELP_STRING([--with-disableusermod], [Disable /set* and /chg*])],
AC_DEFINE(DISABLE_USERMOD))
AC_ARG_WITH(operoverride-verify, [AC_HELP_STRING([--with-operoverride-verify], [Require opers to invite themselves to +s/+p channels])],
AC_DEFINE(OPEROVERRIDE_VERIFY))
CHECK_SSL
CHECK_ZLIB
CHECK_LIBCURL
AC_ARG_ENABLE(dynamic-linking, [AC_HELP_STRING([--enable-dynamic-linking],[Make the IRCd dynamically link shared objects rather than statically])], [AC_ENABLE_DYN], [AC_DEFINE(STATIC_LINKING)])
AC_ARG_ENABLE(inet6, [AC_HELP_STRING([--enable-inet6],[Make the IRCd support IPv6])], [AC_ENABLE_INET6])
AC_SUBST(IRCDDIR)
AC_SUBST(BINDIR)
AC_MSG_CHECKING(if FD_SETSIZE is large enough to allow $ac_fd file descriptors)
AC_TRY_RUN([
#include <sys/types.h>
#include <sys/time.h>
int main() {
if (FD_SETSIZE >= $ac_fd)
exit(0);
exit(1);
}
], AC_MSG_RESULT(yes), [
FD_SETSIZE="-DFD_SETSIZE=$ac_fd"
AC_MSG_RESULT(no)
])
AC_SUBST(FD_SETSIZE)
case `uname -s` in
*SunOS*)
CFLAGS="$CFLAGS -D_SOLARIS"
IRCDLIBS="$IRCDLIBS -lresolv "
;;
*solaris*)
CFLAGS="$CFLAGS -D_SOLARIS"
IRCDLIBS="$IRCDLIBS -lresolv "
;;
esac
dnl REMEMBER TO CHANGE WITH A NEW TRE RELEASE!
tre_version="0.7.5"
AC_MSG_RESULT(extracting TRE regex library)
cur_dir=`pwd`
cd extras
dnl remove old tre directory to force a recompile...
rm -rf tre-$tre_version
if test "x$ac_cv_path_GUNZIP" = "x" ; then
tar xfz tre.tar.gz
else
cp tre.tar.gz tre.tar.gz.bak
gunzip -f tre.tar.gz
cp tre.tar.gz.bak tre.tar.gz
tar xf tre.tar
fi
AC_MSG_RESULT(configuring TRE regex library)
cd tre-$tre_version
./configure --disable-agrep --disable-shared --disable-system-abi --disable-wchar --disable-multibyte --prefix=$cur_dir/extras/regexp || exit 1
AC_MSG_RESULT(compiling TRE regex library)
$ac_cv_prog_MAKER || exit 1
AC_MSG_RESULT(installing TRE regex library)
$ac_cv_prog_MAKER install || exit 1
TREINCDIR="$cur_dir/extras/regexp/include"
AC_SUBST(TREINCDIR)
if test "x$ac_cv_path_PKGCONFIG" = "x" ; then
TRELIBS="-L../extras/regexp/lib -ltre"
else
TRELIBS=`$ac_cv_path_PKGCONFIG --libs tre.pc`
fi
AC_SUBST(TRELIBS)
cd $cur_dir
dnl REMEMBER TO CHANGE WITH A NEW C-ARES RELEASE!
cares_version="1.6.0"
AC_MSG_RESULT(extracting c-ares resolver library)
cur_dir=`pwd`
cd extras
dnl remove old c-ares directory to force a recompile...
rm -rf c-ares-$cares_version
if test "x$ac_cv_path_GUNZIP" = "x" ; then
tar xfz c-ares.tar.gz
else
cp c-ares.tar.gz c-ares.tar.gz.bak
gunzip -f c-ares.tar.gz
cp c-ares.tar.gz.bak c-ares.tar.gz
tar xf c-ares.tar
fi
AC_MSG_RESULT(configuring c-ares library)
cd c-ares-$cares_version
./configure --prefix=$cur_dir/extras/c-ares || exit 1
AC_MSG_RESULT(compiling c-ares resolver library)
$ac_cv_prog_MAKER || exit 1
AC_MSG_RESULT(installing c-ares resolver library)
$ac_cv_prog_MAKER install || exit 1
CARESINCDIR="$cur_dir/extras/c-ares/include"
AC_SUBST(CARESINCDIR)
CARESLIBDIR="-L../extras/c-ares/lib"
AC_SUBST(CARESLIBDIR)
dnl Set default library parameters for when pkg-config is not available
CARESLIBSALT="-lcares"
case `uname -s` in
*FreeBSD*)
CARESLIBSALT="-lcares"
;;
*Linux*)
CARESLIBSALT="-lcares -lrt"
;;
esac
dnl Use pkg-config for c-ares libraries, and if not available use defaults
dnl from above. Also, if pkg-config returns an empty result (ex: on fbsd
dnl or older versions it might be missing --static) then also use defaults.
if test "x$ac_cv_path_PKGCONFIG" = "x" ; then
CARESLIBS="$CARESLIBSALT"
else
CARESLIBS="`$ac_cv_path_PKGCONFIG --static --libs libcares.pc`"
if test "x$CARESLIBS" = "x" ; then
CARESLIBS="$CARESLIBSALT"
fi
fi
AC_SUBST(CARESLIBS)
cd $cur_dir
AC_OUTPUT(Makefile src/modules/Makefile unreal ircdcron/ircdchk)
chmod 0700 unreal
chmod 0700 ircdcron/ircdchk
View File
+72
View File
@@ -0,0 +1,72 @@
# ===========================================================================
# http://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html
# ===========================================================================
#
# SYNOPSIS
#
# AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS])
#
# DESCRIPTION
#
# Check whether the given FLAG works with the current language's compiler
# or gives an error. (Warnings, however, are ignored)
#
# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
# success/failure.
#
# If EXTRA-FLAGS is defined, it is added to the current language's default
# flags (e.g. CFLAGS) when the check is done. The check is thus made with
# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to
# force the compiler to issue an error when a bad flag is given.
#
# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this
# macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG.
#
# LICENSE
#
# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
#
# 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 3 of the License, 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, see <http://www.gnu.org/licenses/>.
#
# As a special exception, the respective Autoconf Macro's copyright owner
# gives unlimited permission to copy, distribute and modify the configure
# scripts that are the output of Autoconf when processing the Macro. You
# need not follow the terms of the GNU General Public License when using
# or distributing such scripts, even though portions of the text of the
# Macro appear in them. The GNU General Public License (GPL) does govern
# all other use of the material that constitutes the Autoconf Macro.
#
# This special exception to the GPL applies to versions of the Autoconf
# Macro released by the Autoconf Archive. When you make and distribute a
# modified version of the Autoconf Macro, you may extend this special
# exception to the GPL to apply to your modified version as well.
#serial 2
AC_DEFUN([AX_CHECK_COMPILE_FLAG],
[AC_PREREQ(2.59)dnl for _AC_LANG_PREFIX
AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl
AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [
ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS
_AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1"
AC_COMPILE_IFELSE([AC_LANG_PROGRAM()],
[AS_VAR_SET(CACHEVAR,[yes])],
[AS_VAR_SET(CACHEVAR,[no])])
_AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags])
AS_IF([test x"AS_VAR_GET(CACHEVAR)" = xyes],
[m4_default([$2], :)],
[m4_default([$3], :)])
AS_VAR_POPDEF([CACHEVAR])dnl
])dnl AX_CHECK_COMPILE_FLAGS
+71
View File
@@ -0,0 +1,71 @@
# ===========================================================================
# http://www.gnu.org/software/autoconf-archive/ax_check_link_flag.html
# ===========================================================================
#
# SYNOPSIS
#
# AX_CHECK_LINK_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS])
#
# DESCRIPTION
#
# Check whether the given FLAG works with the linker or gives an error.
# (Warnings, however, are ignored)
#
# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
# success/failure.
#
# If EXTRA-FLAGS is defined, it is added to the linker's default flags
# when the check is done. The check is thus made with the flags: "LDFLAGS
# EXTRA-FLAGS FLAG". This can for example be used to force the linker to
# issue an error when a bad flag is given.
#
# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this
# macro in sync with AX_CHECK_{PREPROC,COMPILE}_FLAG.
#
# LICENSE
#
# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
#
# 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 3 of the License, 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, see <http://www.gnu.org/licenses/>.
#
# As a special exception, the respective Autoconf Macro's copyright owner
# gives unlimited permission to copy, distribute and modify the configure
# scripts that are the output of Autoconf when processing the Macro. You
# need not follow the terms of the GNU General Public License when using
# or distributing such scripts, even though portions of the text of the
# Macro appear in them. The GNU General Public License (GPL) does govern
# all other use of the material that constitutes the Autoconf Macro.
#
# This special exception to the GPL applies to versions of the Autoconf
# Macro released by the Autoconf Archive. When you make and distribute a
# modified version of the Autoconf Macro, you may extend this special
# exception to the GPL to apply to your modified version as well.
#serial 2
AC_DEFUN([AX_CHECK_LINK_FLAG],
[AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_ldflags_$4_$1])dnl
AC_CACHE_CHECK([whether the linker accepts $1], CACHEVAR, [
ax_check_save_flags=$LDFLAGS
LDFLAGS="$LDFLAGS $4 $1"
AC_LINK_IFELSE([AC_LANG_PROGRAM()],
[AS_VAR_SET(CACHEVAR,[yes])],
[AS_VAR_SET(CACHEVAR,[no])])
LDFLAGS=$ax_check_save_flags])
AS_IF([test x"AS_VAR_GET(CACHEVAR)" = xyes],
[m4_default([$2], :)],
[m4_default([$3], :)])
AS_VAR_POPDEF([CACHEVAR])dnl
])dnl AX_CHECK_LINK_FLAGS
+332
View File
@@ -0,0 +1,332 @@
# ===========================================================================
# http://www.gnu.org/software/autoconf-archive/ax_pthread.html
# ===========================================================================
#
# SYNOPSIS
#
# AX_PTHREAD([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
#
# DESCRIPTION
#
# This macro figures out how to build C programs using POSIX threads. It
# sets the PTHREAD_LIBS output variable to the threads library and linker
# flags, and the PTHREAD_CFLAGS output variable to any special C compiler
# flags that are needed. (The user can also force certain compiler
# flags/libs to be tested by setting these environment variables.)
#
# Also sets PTHREAD_CC to any special C compiler that is needed for
# multi-threaded programs (defaults to the value of CC otherwise). (This
# is necessary on AIX to use the special cc_r compiler alias.)
#
# NOTE: You are assumed to not only compile your program with these flags,
# but also link it with them as well. e.g. you should link with
# $PTHREAD_CC $CFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS
#
# If you are only building threads programs, you may wish to use these
# variables in your default LIBS, CFLAGS, and CC:
#
# LIBS="$PTHREAD_LIBS $LIBS"
# CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
# CC="$PTHREAD_CC"
#
# In addition, if the PTHREAD_CREATE_JOINABLE thread-attribute constant
# has a nonstandard name, defines PTHREAD_CREATE_JOINABLE to that name
# (e.g. PTHREAD_CREATE_UNDETACHED on AIX).
#
# Also HAVE_PTHREAD_PRIO_INHERIT is defined if pthread is found and the
# PTHREAD_PRIO_INHERIT symbol is defined when compiling with
# PTHREAD_CFLAGS.
#
# ACTION-IF-FOUND is a list of shell commands to run if a threads library
# is found, and ACTION-IF-NOT-FOUND is a list of commands to run it if it
# is not found. If ACTION-IF-FOUND is not specified, the default action
# will define HAVE_PTHREAD.
#
# Please let the authors know if this macro fails on any platform, or if
# you have any other suggestions or comments. This macro was based on work
# by SGJ on autoconf scripts for FFTW (http://www.fftw.org/) (with help
# from M. Frigo), as well as ac_pthread and hb_pthread macros posted by
# Alejandro Forero Cuervo to the autoconf macro repository. We are also
# grateful for the helpful feedback of numerous users.
#
# Updated for Autoconf 2.68 by Daniel Richard G.
#
# LICENSE
#
# Copyright (c) 2008 Steven G. Johnson <stevenj@alum.mit.edu>
# Copyright (c) 2011 Daniel Richard G. <skunk@iSKUNK.ORG>
#
# 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 3 of the License, 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, see <http://www.gnu.org/licenses/>.
#
# As a special exception, the respective Autoconf Macro's copyright owner
# gives unlimited permission to copy, distribute and modify the configure
# scripts that are the output of Autoconf when processing the Macro. You
# need not follow the terms of the GNU General Public License when using
# or distributing such scripts, even though portions of the text of the
# Macro appear in them. The GNU General Public License (GPL) does govern
# all other use of the material that constitutes the Autoconf Macro.
#
# This special exception to the GPL applies to versions of the Autoconf
# Macro released by the Autoconf Archive. When you make and distribute a
# modified version of the Autoconf Macro, you may extend this special
# exception to the GPL to apply to your modified version as well.
#serial 21
AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD])
AC_DEFUN([AX_PTHREAD], [
AC_REQUIRE([AC_CANONICAL_HOST])
AC_LANG_PUSH([C])
ax_pthread_ok=no
# We used to check for pthread.h first, but this fails if pthread.h
# requires special compiler flags (e.g. on True64 or Sequent).
# It gets checked for in the link test anyway.
# First of all, check if the user has set any of the PTHREAD_LIBS,
# etcetera environment variables, and if threads linking works using
# them:
if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then
save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
save_LIBS="$LIBS"
LIBS="$PTHREAD_LIBS $LIBS"
AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS])
AC_TRY_LINK_FUNC([pthread_join], [ax_pthread_ok=yes])
AC_MSG_RESULT([$ax_pthread_ok])
if test x"$ax_pthread_ok" = xno; then
PTHREAD_LIBS=""
PTHREAD_CFLAGS=""
fi
LIBS="$save_LIBS"
CFLAGS="$save_CFLAGS"
fi
# We must check for the threads library under a number of different
# names; the ordering is very important because some systems
# (e.g. DEC) have both -lpthread and -lpthreads, where one of the
# libraries is broken (non-POSIX).
# Create a list of thread flags to try. Items starting with a "-" are
# C compiler flags, and other items are library names, except for "none"
# which indicates that we try without any flags at all, and "pthread-config"
# which is a program returning the flags for the Pth emulation library.
ax_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config"
# The ordering *is* (sometimes) important. Some notes on the
# individual items follow:
# pthreads: AIX (must check this before -lpthread)
# none: in case threads are in libc; should be tried before -Kthread and
# other compiler flags to prevent continual compiler warnings
# -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h)
# -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able)
# lthread: LinuxThreads port on FreeBSD (also preferred to -pthread)
# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads)
# -pthreads: Solaris/gcc
# -mthreads: Mingw32/gcc, Lynx/gcc
# -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it
# doesn't hurt to check since this sometimes defines pthreads too;
# also defines -D_REENTRANT)
# ... -mt is also the pthreads flag for HP/aCC
# pthread: Linux, etcetera
# --thread-safe: KAI C++
# pthread-config: use pthread-config program (for GNU Pth library)
case ${host_os} in
solaris*)
# On Solaris (at least, for some versions), libc contains stubbed
# (non-functional) versions of the pthreads routines, so link-based
# tests will erroneously succeed. (We need to link with -pthreads/-mt/
# -lpthread.) (The stubs are missing pthread_cleanup_push, or rather
# a function called by this macro, so we could check for that, but
# who knows whether they'll stub that too in a future libc.) So,
# we'll just look for -pthreads and -lpthread first:
ax_pthread_flags="-pthreads pthread -mt -pthread $ax_pthread_flags"
;;
darwin*)
ax_pthread_flags="-pthread $ax_pthread_flags"
;;
esac
# Clang doesn't consider unrecognized options an error unless we specify
# -Werror. We throw in some extra Clang-specific options to ensure that
# this doesn't happen for GCC, which also accepts -Werror.
AC_MSG_CHECKING([if compiler needs -Werror to reject unknown flags])
save_CFLAGS="$CFLAGS"
ax_pthread_extra_flags="-Werror"
CFLAGS="$CFLAGS $ax_pthread_extra_flags -Wunknown-warning-option -Wsizeof-array-argument"
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([int foo(void);],[foo()])],
[AC_MSG_RESULT([yes])],
[ax_pthread_extra_flags=
AC_MSG_RESULT([no])])
CFLAGS="$save_CFLAGS"
if test x"$ax_pthread_ok" = xno; then
for flag in $ax_pthread_flags; do
case $flag in
none)
AC_MSG_CHECKING([whether pthreads work without any flags])
;;
-*)
AC_MSG_CHECKING([whether pthreads work with $flag])
PTHREAD_CFLAGS="$flag"
;;
pthread-config)
AC_CHECK_PROG([ax_pthread_config], [pthread-config], [yes], [no])
if test x"$ax_pthread_config" = xno; then continue; fi
PTHREAD_CFLAGS="`pthread-config --cflags`"
PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`"
;;
*)
AC_MSG_CHECKING([for the pthreads library -l$flag])
PTHREAD_LIBS="-l$flag"
;;
esac
save_LIBS="$LIBS"
save_CFLAGS="$CFLAGS"
LIBS="$PTHREAD_LIBS $LIBS"
CFLAGS="$CFLAGS $PTHREAD_CFLAGS $ax_pthread_extra_flags"
# Check for various functions. We must include pthread.h,
# since some functions may be macros. (On the Sequent, we
# need a special flag -Kthread to make this header compile.)
# We check for pthread_join because it is in -lpthread on IRIX
# while pthread_create is in libc. We check for pthread_attr_init
# due to DEC craziness with -lpthreads. We check for
# pthread_cleanup_push because it is one of the few pthread
# functions on Solaris that doesn't have a non-functional libc stub.
# We try pthread_create on general principles.
AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <pthread.h>
static void routine(void *a) { a = 0; }
static void *start_routine(void *a) { return a; }],
[pthread_t th; pthread_attr_t attr;
pthread_create(&th, 0, start_routine, 0);
pthread_join(th, 0);
pthread_attr_init(&attr);
pthread_cleanup_push(routine, 0);
pthread_cleanup_pop(0) /* ; */])],
[ax_pthread_ok=yes],
[])
LIBS="$save_LIBS"
CFLAGS="$save_CFLAGS"
AC_MSG_RESULT([$ax_pthread_ok])
if test "x$ax_pthread_ok" = xyes; then
break;
fi
PTHREAD_LIBS=""
PTHREAD_CFLAGS=""
done
fi
# Various other checks:
if test "x$ax_pthread_ok" = xyes; then
save_LIBS="$LIBS"
LIBS="$PTHREAD_LIBS $LIBS"
save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
# Detect AIX lossage: JOINABLE attribute is called UNDETACHED.
AC_MSG_CHECKING([for joinable pthread attribute])
attr_name=unknown
for attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do
AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <pthread.h>],
[int attr = $attr; return attr /* ; */])],
[attr_name=$attr; break],
[])
done
AC_MSG_RESULT([$attr_name])
if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then
AC_DEFINE_UNQUOTED([PTHREAD_CREATE_JOINABLE], [$attr_name],
[Define to necessary symbol if this constant
uses a non-standard name on your system.])
fi
AC_MSG_CHECKING([if more special flags are required for pthreads])
flag=no
case ${host_os} in
aix* | freebsd* | darwin*) flag="-D_THREAD_SAFE";;
osf* | hpux*) flag="-D_REENTRANT";;
solaris*)
if test "$GCC" = "yes"; then
flag="-D_REENTRANT"
else
# TODO: What about Clang on Solaris?
flag="-mt -D_REENTRANT"
fi
;;
esac
AC_MSG_RESULT([$flag])
if test "x$flag" != xno; then
PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS"
fi
AC_CACHE_CHECK([for PTHREAD_PRIO_INHERIT],
[ax_cv_PTHREAD_PRIO_INHERIT], [
AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <pthread.h>]],
[[int i = PTHREAD_PRIO_INHERIT;]])],
[ax_cv_PTHREAD_PRIO_INHERIT=yes],
[ax_cv_PTHREAD_PRIO_INHERIT=no])
])
AS_IF([test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes"],
[AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], [1], [Have PTHREAD_PRIO_INHERIT.])])
LIBS="$save_LIBS"
CFLAGS="$save_CFLAGS"
# More AIX lossage: compile with *_r variant
if test "x$GCC" != xyes; then
case $host_os in
aix*)
AS_CASE(["x/$CC"],
[x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6],
[#handle absolute path differently from PATH based program lookup
AS_CASE(["x$CC"],
[x/*],
[AS_IF([AS_EXECUTABLE_P([${CC}_r])],[PTHREAD_CC="${CC}_r"])],
[AC_CHECK_PROGS([PTHREAD_CC],[${CC}_r],[$CC])])])
;;
esac
fi
fi
test -n "$PTHREAD_CC" || PTHREAD_CC="$CC"
AC_SUBST([PTHREAD_LIBS])
AC_SUBST([PTHREAD_CFLAGS])
AC_SUBST([PTHREAD_CC])
# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND:
if test x"$ax_pthread_ok" = xyes; then
ifelse([$1],,[AC_DEFINE([HAVE_PTHREAD],[1],[Define if you have POSIX threads libraries and header files.])],[$1])
:
else
ax_pthread_ok=no
$2
fi
AC_LANG_POP
])dnl AX_PTHREAD
+225
View File
@@ -0,0 +1,225 @@
#serial 1
dnl Macro: unreal_CHECK_TYPE_SIZES
dnl originally called unet_CHECK_TYPE_SIZES
dnl
dnl Check the size of several types and define a valid int16_t and int32_t.
dnl
AC_DEFUN([unreal_CHECK_TYPE_SIZES],
[dnl Check type sizes
AC_CHECK_SIZEOF(short)
AC_CHECK_SIZEOF(int)
AC_CHECK_SIZEOF(long)
if test "$ac_cv_sizeof_int" = 2 ; then
AC_CHECK_TYPE(int16_t, int)
AC_CHECK_TYPE(u_int16_t, unsigned int)
elif test "$ac_cv_sizeof_short" = 2 ; then
AC_CHECK_TYPE(int16_t, short)
AC_CHECK_TYPE(u_int16_t, unsigned short)
else
AC_MSG_ERROR([Cannot find a type with size of 16 bits])
fi
if test "$ac_cv_sizeof_int" = 4 ; then
AC_CHECK_TYPE(int32_t, int)
AC_CHECK_TYPE(u_int32_t, unsigned int)
elif test "$ac_cv_sizeof_short" = 4 ; then
AC_CHECK_TYPE(int32_t, short)
AC_CHECK_TYPE(u_int32_t, unsigned short)
elif test "$ac_cv_sizeof_long" = 4 ; then
AC_CHECK_TYPE(int32_t, long)
AC_CHECK_TYPE(u_int32_t, unsigned long)
else
AC_MSG_ERROR([Cannot find a type with size of 32 bits])
fi
AC_CHECK_SIZEOF(rlim_t)
if test "$ac_cv_sizeof_rlim_t" = 8 ; then
AC_DEFINE([LONG_LONG_RLIM_T], [], [Define if rlim_t is long long])
fi
])
AC_DEFUN([CHECK_LIBCURL],
[
AC_ARG_ENABLE(libcurl,
[AC_HELP_STRING([--enable-libcurl=DIR],[enable libcurl (remote include) support])],
[enable_curl=$enableval],
[enable_curl=no])
AS_IF([test "x$enable_curl" != "xno"],
[
dnl sane, default directory for Operating System-managed libcURL
dnl (when --enable-libcurl is passed without any arguments). On
dnl systems with stuff in /usr/local, /usr/local/bin should already
dnl be in PATH. On sane systems, this will invoke the curl-config
dnl installed by the package manager.
CURLCONFIG="curl-config"
AS_IF([test "x$enable_curl" != "xyes"],
[CURLCONFIG="$enable_curl/bin/curl-config"])
AC_MSG_CHECKING([$CURLCONFIG])
AS_IF([$CURLCONFIG --version 2>/dev/null >/dev/null],
[AC_MSG_RESULT([yes])],
[AC_MSG_RESULT([no])
AC_MSG_FAILURE([Could not find curl-config, try editing --enable-libcurl])])
CURLCFLAG="`$CURLCONFIG --cflags`"
CURLLIBS="`$CURLCONFIG --libs`"
dnl This test must be this way because of #3981
AS_IF([$CURLCONFIG --libs | grep -q -e ares],
[CURLUSESCARES="1"],
[CURLUSESCARES="0"])
dnl sanity warnings
AS_IF([test -z "${CURLLIBS}"],
[AC_MSG_WARN([CURLLIBS is empty, that probably means that I could not find $enable_curl/bin/curl-config])])
dnl Ok this is ugly, basically we need to strip the version of c-ares that curl uses
dnl because we want to use our own version (which is hopefully fully binary
dnl compatible with the curl one as well).
dnl Therefore we need to strip the cares libs in a weird way...
dnl If anyone can come up with something better and still portable (no awk!?)
dnl then let us know. -- Syzop
dnl
dnl It is dangerous to mix and match cURL with potentially ABI-incompatible versions of
dnl c-ares, just use --with-system-cares.
dnl Thus, make sure to use --with-system-cares when using system-cURL. If the user
dnl wants bundled c-ares + system libcURL, then we should filter out c-ares
dnl flags. _Only_ in that case should we mess with the flags. -- ohnobinki
AS_IF([test "x$has_system_cares" = "xno" && test "x$BUILDDIR/extras/curl" != "x$enable_curl" && test "$CURLUSESCARES" != "0" ],
[
AC_MSG_ERROR([[
You have decided to build unrealIRCd with libcURL (remote includes) support.
However, you have system-installed c-ares support has either been disabled
(--without-system-cares) or is unavailable.
Because UnrealIRCd will use a bundled copy of c-ares which may be incompatible
with the system-installed libcURL, this is a bad idea which may result in error
messages looking like:
\`\`[error] unrealircd.conf:9: include: error downloading '(http://example.net/ex.conf)': Could not resolve host: example.net (Successful completion)''
Or UnrealIRCd might even crash.
Please build UnrealIRCd with --with-system-cares when enabling --enable-libcurl
]])
])
dnl Make sure that linking against cURL works rather than letting the user
dnl find out after compiling most of his program. ~ohnobinki
IRCDLIBS="$IRCDLIBS $CURLLIBS"
CFLAGS="$CFLAGS $CURLCFLAG"
AC_DEFINE([USE_LIBCURL], [], [Define if you have libcurl installed to get remote includes and MOTD support])
AC_MSG_CHECKING([curl_easy_init() in $CURLLIBS])
LIBS_SAVEDA="$LIBS"
CFLAGS_SAVEDA="$CFLAGS"
LIBS="$IRCDLIBS $IRCDLIBS_CURL_CARES"
CFLAGS="$CFLAGS $CFLAGS_CURL_CARES"
AC_LINK_IFELSE(
[
AC_LANG_PROGRAM(
[[#include <curl/curl.h>]],
[[CURL *curl = curl_easy_init();]])
],
[AC_MSG_RESULT([yes])],
[AC_MSG_RESULT([no])
AC_MSG_FAILURE([You asked for libcURL (remote includes) support, but it can't be found at $enable_curl])
])
LIBS="$LIBS_SAVEDA"
CFLAGS="$CFLAGS_SAVEDA"
URL="url.o"
AC_SUBST(URL)
]) dnl AS_IF(enable_curl)
])
dnl the following 2 macros are based on CHECK_SSL by Mark Ethan Trostler <trostler@juniper.net>
AC_DEFUN([CHECK_SSL],
[
AC_ARG_ENABLE(ssl,
[AC_HELP_STRING([--enable-ssl=],[enable ssl will check /usr/local/opt/openssl /usr/local/ssl /usr/lib/ssl /usr/ssl /usr/pkg /usr/sfw /usr/local /usr])],
[],
[enable_ssl=no])
AS_IF([test $enable_ssl != "no"],
[
AC_MSG_CHECKING([for openssl])
for dir in $enable_ssl /usr/local/opt/openssl /usr/local/ssl /usr/lib/ssl /usr/ssl /usr/pkg /usr/sfw /usr/local /usr; do
ssldir="$dir"
if test -f "$dir/include/openssl/ssl.h"; then
AC_MSG_RESULT([found in $ssldir/include/openssl])
found_ssl="yes";
if test ! "$ssldir" = "/usr" ; then
CFLAGS="$CFLAGS -I$ssldir/include";
fi
break
fi
if test -f "$dir/include/ssl.h"; then
AC_MSG_RESULT([found in $ssldir/include])
found_ssl="yes";
if test ! "$ssldir" = "/usr" ; then
CFLAGS="$CFLAGS -I$ssldir/include";
fi
break
fi
done
if test x_$found_ssl != x_yes; then
AC_MSG_RESULT(not found)
echo ""
echo "Apparently you do not have both the openssl binary and openssl development libraries installed."
echo "The following packages are required:"
echo "1) The library package is often called 'openssl-dev', 'openssl-devel' or 'libssl-dev'"
echo "2) The binary package is usually called 'openssl'."
echo "NOTE: you or your system administrator needs to install the library AND the binary package."
echo "After doing so, simply re-run ./Config"
exit 1
else
CRYPTOLIB="-lssl -lcrypto";
if test ! "$ssldir" = "/usr" ; then
LDFLAGS="$LDFLAGS -L$ssldir/lib";
fi
fi
])
])
AC_DEFUN([CHECK_SSL_CTX_SET1_CURVES_LIST],
[
AC_MSG_CHECKING([for SSL_CTX_set1_curves_list in SSL library])
AC_LANG_PUSH(C)
SAVE_LIBS="$LIBS"
LIBS="$LIBS $CRYPTOLIB"
AC_TRY_LINK([#include <openssl/ssl.h>],
[SSL_CTX *ctx = NULL; SSL_CTX_set1_curves_list(ctx, "test");],
has_function=1,
has_function=0)
LIBS="$SAVE_LIBS"
AC_LANG_POP(C)
if test $has_function = 1; then
AC_MSG_RESULT([yes])
AC_DEFINE([HAS_SSL_CTX_SET1_CURVES_LIST], [], [Define if ssl library has SSL_CTX_set1_curves_list])
else
AC_MSG_RESULT([no])
fi
])
AC_DEFUN([CHECK_SSL_CTX_SET_MIN_PROTO_VERSION],
[
AC_MSG_CHECKING([for SSL_CTX_set_min_proto_version in SSL library])
AC_LANG_PUSH(C)
SAVE_LIBS="$LIBS"
LIBS="$LIBS $CRYPTOLIB"
AC_TRY_LINK([#include <openssl/ssl.h>],
[SSL_CTX *ctx = NULL; SSL_CTX_set_min_proto_version(ctx, TLS1_VERSION);],
has_function=1,
has_function=0)
LIBS="$SAVE_LIBS"
AC_LANG_POP(C)
if test $has_function = 1; then
AC_MSG_RESULT([yes])
AC_DEFINE([HAS_SSL_CTX_SET_MIN_PROTO_VERSION], [], [Define if ssl library has SSL_CTX_set_min_proto_version])
else
AC_MSG_RESULT([no])
fi
])
Executable
+9
View File
@@ -0,0 +1,9 @@
#!/bin/bash
cd "$(dirname "${0}")"
ACLOCAL_AMFLAGS=(-I autoconf/m4)
aclocal "${ACLOCAL_AMFLAGS[@]}"
autoconf
autoheader
-52
View File
@@ -1,52 +0,0 @@
/*
Unreal Internet Relay Chat Daemon
Copyright (C) Carsten V. Munk 2000
NOTE: Those words are not meant to insult you (the user)
but is meant to be a list of words so that the +G channel/user mode
will work properly. You can easily modify this file at your will.
If you got words to add to this file, please mail badwords@tspre.org
This is some filling space, scroll down to see the words
*/
badword channel { word "pussy"; };
badword channel { word "fuck"; };
badword channel { word "whore"; };
badword channel { word "slut"; };
badword channel { word "shit"; };
badword channel { word "asshole"; };
badword channel { word "bitch"; };
badword channel { word "cunt"; };
badword channel { word "vagina"; };
badword channel { word "penis"; };
badword channel { word "jackass"; };
badword channel { word "*fucker*"; };
badword channel { word "faggot"; };
badword channel { word "fag"; };
badword channel { word "horny"; };
badword channel { word "gay"; };
badword channel { word "dickhead"; };
badword channel { word "sonuvabitch"; };
badword channel { word "*fuck*"; };
badword channel { word "tits"; };
-52
View File
@@ -1,52 +0,0 @@
/*
Unreal Internet Relay Chat Daemon
Copyright (C) Carsten V. Munk 2000
NOTE: Those words are not meant to insult you (the user)
but is meant to be a list of words so that the +G channel/user mode
will work properly. You can easily modify this file at your will.
If you got words to add to this file, please mail badword messages@tspre.org
This is some filling space, scroll down to see the words
*/
badword message { word "pussy"; };
badword message { word "fuck"; };
badword message { word "whore"; };
badword message { word "slut"; };
badword message { word "shit"; };
badword message { word "asshole"; };
badword message { word "bitch"; };
badword message { word "cunt"; };
badword message { word "vagina"; };
badword message { word "penis"; };
badword message { word "jackass"; };
badword message { word "*fucker*"; };
badword message { word "faggot"; };
badword message { word "fag"; };
badword message { word "horny"; };
badword message { word "gay"; };
badword message { word "dickhead"; };
badword message { word "sonuvabitch"; };
badword message { word "*fuck*"; };
badword message { word "tits"; };
-52
View File
@@ -1,52 +0,0 @@
/*
Unreal Internet Relay Chat Daemon
Copyright (C) Carsten V. Munk 2000
NOTE: Those words are not meant to insult you (the user)
but is meant to be a list of words so that quit message censoring
will work properly. You can easily modify this file at your will.
If you got words to add to this file, please mail badword badwords@tspre.org
This is some filling space, scroll down to see the words
*/
badword quit { word "pussy"; };
badword quit { word "fuck"; };
badword quit { word "whore"; };
badword quit { word "slut"; };
badword quit { word "shit"; };
badword quit { word "asshole"; };
badword quit { word "bitch"; };
badword quit { word "cunt"; };
badword quit { word "vagina"; };
badword quit { word "penis"; };
badword quit { word "jackass"; };
badword quit { word "*fucker*"; };
badword quit { word "faggot"; };
badword quit { word "fag"; };
badword quit { word "horny"; };
badword quit { word "gay"; };
badword quit { word "dickhead"; };
badword quit { word "sonuvabitch"; };
badword quit { word "*fuck*"; };
badword quit { word "tits"; };
-1360
View File
File diff suppressed because it is too large Load Diff
Vendored
+7786 -10447
View File
File diff suppressed because it is too large Load Diff
+1000
View File
File diff suppressed because it is too large Load Diff
-4453
View File
File diff suppressed because it is too large Load Diff
-66
View File
@@ -1,66 +0,0 @@
#!/bin/sh
if test "x$1" = x -o "x$2" = x ; then
echo "Syntax:"
echo "curlinstall ares_path libcurl_path"
echo ""
exit 1
fi
if [ "`eval echo -n 'a'`" = "-n a" ] ; then
c="\c"
else
n="-n"
fi
save_PWD=`pwd`
echo "Installing ares"
cd $1
./configure --prefix=$HOME/ares && make && make install
SSLFLAG=""
while [ -z "$SSLFLAG" ] ; do
echo ""
echo "Should libcurl be built with SSL support?"
echo $n "-> " $c
read cc
case "$cc" in
[Yy]*)
SSLFLAG="--with-ssl"
;;
[Nn]*)
SSLFLAG="--without-ssl"
;;
*)
echo ""
echo "You must enter either Yes or No"
;;
esac
done
if [ -f $HOME/ares/lib/libcares.a ] ; then
if [ -f $HOME/ares/lib/libares.a ] ; then
rm -f $HOME/ares/lib/libares.a
fi
cp $HOME/ares/lib/libcares.a $HOME/ares/lib/libares.a
fi
echo "Installing libcurl"
cd $2
CPPFLAGS="-I$HOME/ares/include" ./configure --prefix=$HOME/curl --disable-shared \
--disable-thread --enable-ares=$HOME/ares --disable-ipv6 $SSLFLAG
cp -R $HOME/ares/lib ares
make && make install
if [ -f $HOME/curl/lib/libares.a ] ; then
rm -f $HOME/curl/lib/libares.a
fi
cp $HOME/ares/lib/libares.a $HOME/curl/lib
cd $save_PWD
echo ""
echo ""
echo "libcurl has been installed. When running ./Config specify:"
echo "$HOME/curl"
echo "for the directory you installed libcurl to."
+7 -6
View File
@@ -119,12 +119,13 @@ Tom Hopkins <hoppie@buengf.bu.edu> / September, October 1990:
lines worth. :)
UnrealIRCd Coders
Carsten Munk <stskeeps@unrealircd.com> / May 1999, date
Dominick Meglio <codemastr@unrealircd.com> / June 1999, date
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
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.
+14
View File
@@ -0,0 +1,14 @@
Although UnrealIRCd is a free program, we do put a great deal of time,
effort, and money into keeping UnrealIRCd alive. If you like UnrealIRCd and
want to support us then please consider making a donation.
PayPal Donation Link: https://unrealircd.org/index/donations
If you don't want to use PayPal, or you want to donate something other than
money, then please contact Syzop (syzop@unrealircd.com).
All those who donate at least a certain minimum amount will have their name
and/or company listed in /CREDITS and will be listed on the website.
Thank you for your support,
The UnrealIRCd Team
+66
View File
@@ -0,0 +1,66 @@
UnrealIRCd 4.2.4.1 Release Notes
=================================
This version, 4.2.4.1, fixes an issue with Debian 10. On Debian 10 the
list of permitted SSL/TLS protocols was ignored (set::ssl::protocols).
Other than that, set::ssl::outdated-protocols and set::ssl::outdated-ciphers
are now configurable (rarely needed, though).
Below are the release notes of previous release, 4.2.4.
==[ 4.2.4 release notes ]==
This release fixes a crash issue if UnrealIRCd is configured to use utf8 or
chinese character sets in set::allowed-nickchars. This is not the default.
We don't expect many users to run their IRCd with this enabled, as the utf8
support was tagged as experimental and the chinese/gbk implementation is
incomplete.
In addition to the bug fix from above, this release also contains a number
of other fixes and enhancements. In particular there were some Windows
fixes and the reputation and connthrottle modules are now working better.
Enhancements:
* Improve server linking error messages
* Enhance WHOX to WHO auto-conversion for "WHO +s serv.er.name"
Major issues fixed:
* A crash issue if using utf8 or chinese in set::allowed-nickchars.
* The Windows version only accepted very few clients.
* The Windows version should warn and not error if using old-style regex.
* The Windows version did not save the reputation database.
Minor issues fixed:
* The 'connthrottle' module incorrectly allowed 0 unknown users in when
it was throttling, rather than the set rate.
* The 'reputation' module did not show scores for remote users in /WHOIS,
only after 5 minutes had passed.
* Some users may have experienced a "Registration Timeout" error when
connecting. This happened because their ident server accepted the TCP/IP
connection but after that failed to respond to the ident request. We
have now lowered set::ident::read-timeout to 15 seconds to fix this.
* If successfully logged in using SASL then avoid an "You are already
logged in" error message that could happen due to PASS forwarding.
The message was harmless, but annoying in some setups.
Module coders / Developers:
* If you are debugging or developing modules then we encourage you to
use AddressSanitizer. This does come at a 10x performance slowdown
and can consume a lot more memory, but it is very useful in tracing
common C mistakes such as out of bounds read/writes, double frees,
and so on. You will see exactly where a mistake was made.
To use this, in the last ./Config question you answer: --enable-asan
IRC protocol:
* No changes
Other changes:
* Various HELPOP updates
Future versions:
* We intend to change the default plaintext oper policy from 'warn' to 'deny'
in the summer of 2019. This will deny /OPER when used from a non-SSL
connection. For security, IRC Operators should really use SSL/TLS!
==[ CHANGES IN OLDER RELEASES ]==
For changes in previous UnrealIRCd releases see doc/RELEASE-NOTES.old or
https://raw.githubusercontent.com/unrealircd/unrealircd/unreal42/doc/RELEASE-NOTES.old
File diff suppressed because it is too large Load Diff
+143 -86
View File
@@ -1,86 +1,143 @@
Some minor rules about patches & modifications to UnrealIRCd
1. When making a change, always add a small description in Changes, in the
BOTTOM
2. If new files are made, it must contain proper copyright headers,
and a $Id$ somewhere.
3. /*
* These kind of comments
*/
NOT
// These kind of comments
4. if (something == 1)
{
moo; /* comment */
/* This does what what what */
cow(go(moo));
}
NOT
if (something == 1) {
}
5. Do not touch version.c.SH or version.h, unless you are a head coder
if you need a credit in, contact us
6. Patches are submitted to coders@lists.unrealircd.org,
using "cvs diff -u > patchname". A submision must contain description of
what it does, etc.
7. Protocol changes must be discussed before making patches for it.
8. We do NOT rip people off. If we use other people's code, it MUST be
properly credited.
9. We generally use tabsize 4 and 8. In any case, 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 ;)
10. Be careful about overflows. As you know a line from a user can never be longer
than 511 (510?) characters, sometimes you can use this knowledge to your
advantage. Whenever it's not safe or when you don't know what input size you
can expect, use strlcpy instead of strcpy. Do not ever use strncpy, this is
older, slower, and does not add proper zero termination.
For the same reason, use snprintf if really needed. Note though, that using
ircsprintf with a bigger buffer (eg: 1024 bytes) is MUCH faster, so preferably
use that instead of snprintf. The same can be true for strcpy vs strlcpy in
some circumstances as well.
11. 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 ircsprintf, not sprintf (this is because ircsprintf
is optimized for simple strings like the ones we use).
Prefer ircsprintf with a bigger buffer over the use of snprintf, since
ircsprintf is much faster.
12. Initialize your structs and use the proper memory calls.
In UnrealIRCd we use MyMalloc, MyMallocEx and MyFree (so not malloc/free).
MyMalloc usually maps to malloc, and MyMallocEx is a malloc plus filling
the memory area (eg: the struct) with zero's (a la calloc).
Use of MyMallocEx is suggested. In general you should not be using MyMalloc.
"But MyMalloc is faster!" you might say. This is true, but using MyMallocEx
has very little speed impact and enourmous benefits: people tend to forget
to set certain fields in the struct to NULL, or much more common: when
someone later on (eg: 1 year later) adds a field to a struct, there could
be several places he/she needs to update to make sure x->something is NULL
after allocating a new struct. Bad idea.
Little speed impact, huge stability benefits, easy decision ;).
13. 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.
14. Use enums whenever possible, rather than #define constants. Besides making
things more clean, it also aids debugging.
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, it must contain proper copyright headers.
3. If you want to submit patches (f.e. if you don't have write access to
the repository), then submit them to https://bugs.unrealircd.org/
using "hg export" or "hg diff". Naturally include a clear description
of what the change does.
4. 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 bug or stated in
a comment that it's OK to implement, then a 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 next
release, and add a comment pasting the relevant Changelog item and the
releaseid (.XYZ).
Of course other guidelines, like #7 and #8 still apply.
5. Do not commit changes that do not have an associated bug# and have not
had any discussion.
3.2.x: Small/tiny bugfixes that do not change any functionality, are
very unlikely to break anything and definitely don't require any prior
discussion may be exempted.
3.4.x: During the alpha & beta stage it is permitted to commit fixes
and code cleanups / restructuring without any discussion.
However in general, and in particular for new features, it is appreciated
if there has been prior discussion on bugs.unrealircd.org (or by mail).
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. Prior to a 3.2.x release: be very careful with any restructuring of a
subsystem or doing any major commits that may break things. Stuff like
this can be perfectly fine if there are many months to go, but are not
good to do a month before release. The head coder may impose additional
restrictions during such a period.
8. 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 generally use tabsize 4 and 8. In any case, 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, be very sure about your size counting. Sometimes it's possible
to avoid such code alltogether by just calling strlcat each time.
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 MyMalloc, MyMallocEx and MyFree (so not malloc/free).
MyMalloc usually maps to malloc, and MyMallocEx is a malloc plus filling
the memory area (eg: the struct) with zero's (a la calloc).
Use of MyMallocEx is suggested. In general you should not be using MyMalloc.
"But MyMalloc is faster!" you might say. This is true, but using MyMallocEx
has very little speed impact and enormous benefits: people tend to forget
to set certain fields in the struct to NULL, or much more common: when
someone later on (eg: 1 year later) adds a field to a struct, there could
be several places he/she needs to update to make sure x->something is NULL
after allocating a new struct. Bad idea.
Little speed impact, huge stability benefits, easy decision ;).
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.
+2 -109
View File
@@ -1,109 +1,2 @@
==[ IMPORTANT MESSAGE ABOUT DISABLING NOSPOOF ]==
Disabling NOSPOOF at windows (w9x, nt, w2k, xp) is NOT recommended since this
WILL allow users to use "spoofed hosts" (like the IP of someone you trust).
If you have problems with NOSPOOF, fix your client (bot?) instead (you should PONG
back to the initial PING at connect).
==[ GENERAL GUIDELINES ]==
First of all you need Microsoft Visual C++ (see below), compiling with
cygwin is not supported (nor is there any good reason to do so).
Compatible compilers:
cygwin NOT supported. Will not work. Should be no reason to use this anyway.
msvc 6.x Microsoft Visual Studio 6 does not work, this compiler is too old.
msvc 7.x Microsoft Visual Studio 7.x (.NET) will work just fine
msvc 8.x Microsoft Visual Studio 8.x (.NET 2005), including the free kit,
should work fine (since Unreal3.2.5).
If you don't have the paid version of Microsoft Visual Studio 7.x, then you can
use the FREE development kit and PSDK as explained below:
1. Download the MS Visual Studio Development kit at:
http://msdn.microsoft.com/visualc/vctoolkit2003/
2. Install the Platform Software Development Kit (PSDK) from:
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
3. NOTE: Whenever you need to compile something we say 'Start the Visual Studio
.NET Command Prompt' below, but you - a person using the free version - will
actually have to start the Platform SDK Prompt instead (check out the
Start Menu).
== Simple compile (no SSL/ZIP/Remote includes) ==
1. Start the Visual Studio .NET Command Prompt
2. Go to your UnrealIRCd dir (like: cd \dev\unreal3.2) and then compile with:
nmake -f makefile.win32
This will generate a wircd.exe and unreal.exe
3. Copy the src\win32\tre.dll to your UnrealIRCd main dir.
4. Done!
== Compiling modules ==
1. Put your module (the .c file) in src\modules (eg: c:\dev\unreal3.2\src\modules).
2. Start the Visual Studio .NET Command Prompt
3. Go to your UnrealIRCd dir (like: cd \dev\unreal3.2).
4. Compile the module with:
nmake -f makefile.win32 custommodule MODULEFILE=<name>
<name> is the name of the module WITHOUT the .c suffix, so if your
module has the filename 'm_crappymod.c', then you use:
nmake -f makefile.win32 custommodule MODULEFILE=m_crappymod
5. Done. A .dll file should have been created.
If you compiled with VC7 and used the official source (not a CVS version,
but for example 3.2.1 source) then the module should work on all these
versions (binary compatible) and you could for example put them on
your website so users can download them.
Such a module will work on both SSL and non-SSL, there should be no need
for separate versions... unless, of course, you use SSL-specific code in your
mod.
DO NOT download a CVS version & compile your mod and then start
distributing the .dll for use at another (non-CVS) version!!
Every time we change a struct (and in some other cases) it makes the
binary/module binary incompatible which practically means that your module
might seem to work fine at first (or not..) but will CRASH or cause memory
corruption and other subtle errors.
== COMPILING WITH ZIP LINKS / SSL / REMOTE INCLUDES SUPPORT ==
First of all, DO NOT use any precompiled libs from the official
zlib/openssl/curl sites. We require certain compile parameters.
Versions downloaded from such sites will often CRASH.
The easiest is to download the UnrealIRCd development package
which contains zlib, openssl and curl precompiled for you.
See: www.vulnscan.org/unrealwin32dev/
Just extract it somewhere (eg: to c:\dev).
Then, use compile flags to enable the features + specify where to look.
Here are examples if you used c:\dev:
ZIP: nmake -f makefile.win32 USE_ZIPLINKS=1 ZLIB_INC_DIR="c:\dev\zlib" ZLIB_LIB_DIR="c:\dev\zlib\dll32"
SSL: nmake -f makefile.win32 USE_SSL=1 OPENSSL_INC_DIR="c:\dev\openssl\include" OPENSSL_LIB_DIR="c:\dev\openssl\lib"
CURL: nmake -f makefile.win32 USE_REMOTEINC=1 LIBCURL_INC_DIR="c:\dev\curl\include" LIBCURL_LIB_DIR="c:\dev\curl\lib"
Obviously you can (and probably will) combine all these options, like
to build a zip+ssl+curl version (all in 1 line):
nmake -f makefile.win32 USE_ZIPLINKS=1 ZLIB_INC_DIR="c:\dev\zlib" ZLIB_LIB_DIR="c:\dev\zlib\dll32"
USE_SSL=1 OPENSSL_INC_DIR="c:\dev\openssl\include" OPENSSL_LIB_DIR="c:\dev\openssl\lib" USE_REMOTEINC=1
LIBCURL_INC_DIR="c:\dev\curl\include" LIBCURL_LIB_DIR="c:\dev\curl\lib"
== SYMBOL FILES ==
If you get something like this:
Creating library L_COMMANDS.lib and object L_COMMANDS.exp
M_OPER.obj : error LNK2019: unresolved external symbol _sendto_snomask_global re
ferenced in function _m_oper
(note: the exact name of the symbol will vary)
Then you will have to rebuild the wircd.def symbol file. You do this by
downloading http://www.vulnscan.org/tmp/dlltool.exe and putting the file somewhere
in your path (eg: c:\winnt\system32).
Then, to compile you do this:
nmake -f makefile.win32 [your other options here]
nmake -f makefile.win32 SYMBOLFILE
nmake -f makefile.win32 [your other options here]
So basically you just run 'nmake -f makefile.win32 SYMBOLFILE' and then restart
compiling again.
== COMPILING ZLIB/SSL/CURL YOURSELF ==
This is off-topic and not explained here.
Again, use the stuff from the win32 development pack unless you have a good
reason to do otherwise (in which case we might not support your self-compiled version
because we work with specific versions / compile options).
For information on how to compile UnrealIRCd (modules) on Windows, see:
https://www.unrealircd.org/docs/Compiling_UnrealIRCd_on_Windows
+26
View File
@@ -0,0 +1,26 @@
/* Atheme Aliases */
alias nickserv { type services; };
alias ns { target nickserv; type services; };
alias chanserv { type services; };
alias cs { target chanserv; type services; };
alias memoserv { type services; spamfilter yes; };
alias ms { target memoserv; type services; spamfilter yes; };
alias operserv { type services; };
alias os { target operserv; type services; };
alias helpserv { type services; };
alias botserv { type services; };
alias bs { target botserv; type services; };
alias hostserv { type services; };
alias hs { target hostserv; type services; };
alias saslserv { type services; };
alias sss { target saslserv; type services; };
alias gameserv { type services; };
alias gms { target gameserv; type services; };
alias groupserv { type services; };
alias grs { target groupserv; type services; };
alias alis { type services; };
alias ls { target alis; type services; };
include "aliases/aliases.conf";
+51
View File
@@ -0,0 +1,51 @@
/*
Unreal Internet Relay Chat Daemon
Copyright (C) Carsten V. Munk 2000
NOTE: Those words are not meant to insult you (the user)
but is meant to be a list of words so that the +G channel/user mode
will work properly. You can easily modify this file at your will.
If you got words to add to this file, please mail badwords@tspre.org
This is some filling space, scroll down to see the words
*/
badword all { word "pussy"; };
badword all { word "fuck"; };
badword all { word "whore"; };
badword all { word "slut"; };
badword all { word "shit"; };
badword all { word "asshole"; };
badword all { word "bitch"; };
badword all { word "cunt"; };
badword all { word "vagina"; };
badword all { word "penis"; };
badword all { word "jackass"; };
badword all { word "*fucker*"; };
badword all { word "faggot"; };
badword all { word "fag"; };
badword all { word "horny"; };
badword all { word "dickhead"; };
badword all { word "sonuvabitch"; };
badword all { word "*fuck*"; };
badword all { word "tits"; };
+509
View File
@@ -0,0 +1,509 @@
/* Configuration file for UnrealIRCd 4
*
* Simply copy this file to your conf/ directory, call it
* 'unrealircd.conf' and walk through it line by line (edit it!)
*
* Important: All lines, except the opening { line, end with an ;
* including };. This is very important, if you miss a ; somewhere then
* the configuration file parser will complain and your file will not
* be processed correctly!
* If this is your first experience with an UnrealIRCd configuration
* file then we really recommend you to read a little about the syntax,
* this only takes a few minutes and will help you a lot:
* https://www.unrealircd.org/docs/Configuration#Configuration_file_syntax
*
* UnrealIRCd 4 documentation (very extensive!):
* https://www.unrealircd.org/docs/UnrealIRCd_4_documentation
*
* Frequently Asked Questions:
* https://www.unrealircd.org/docs/FAQ
*
*/
/* This is a comment, all text here is ignored (comment type #1) */
// This is also a comment, this line is ignored (comment type #2)
# This is also a comment, again this line is ignored (comment type #3)
/* UnrealIRCd makes heavy use of modules. Modules allow you to completely
* customize the featureset you wish to enable in UnrealIRCd.
* See: https://www.unrealircd.org/docs/Modules
*
* By using the include below we instruct the IRCd to read the file
* 'modules.default.conf' which will load more than 150 modules
* shipped with UnrealIRCd. In other words: this will simply load
* all the available features in UnrealIRCd.
* If you are setting up UnrealIRCd for the first time we suggest you
* use this. Then, when everything is up and running you can come
* back later to customize the list (if you wish).
*/
include "modules.default.conf";
/* Now let's include some other files as well:
* - help/help.conf for our on-IRC /HELPOP system
* - badwords.conf for channel and user mode +G
* - spamfilter.conf as an example for spamfilter usage
* (commented out)
* - operclass.default.conf contains some good operclasses which
* you can use in your oper blocks.
*/
include "help/help.conf";
include "badwords.conf";
//include "spamfilter.conf";
include "operclass.default.conf";
/* This is the me { } block which basically says who we are.
* It defines our server name, some information line and an unique "sid".
* The server id (sid) must start with a digit followed by two digits or
* letters. The sid must be unique for your IRC network (each server should
* have it's own sid).
*/
me {
name "irc.foonet.com";
info "FooNet Server";
sid "001";
};
/* The admin { } block defines what users will see if they type /ADMIN.
* It normally contains information on how to contact the administrator.
*/
admin {
"Bob Smith";
"bob";
"widely@used.name";
};
/* Clients and servers are put in class { } blocks, we define them here.
* Class blocks consist of the following items:
* - pingfreq: how often to ping a user / server (in seconds)
* - connfreq: how often we try to connect to this server (in seconds)
* - sendq: the maximum queue size for a connection
* - recvq: maximum receive queue from a connection (flood control)
*/
/* Client class with good defaults */
class clients
{
pingfreq 90;
maxclients 1000;
sendq 200k;
recvq 8000;
};
/* Special class for IRCOps with higher limits */
class opers
{
pingfreq 90;
maxclients 50;
sendq 1M;
recvq 8000;
};
/* Server class with good defaults */
class servers
{
pingfreq 60;
connfreq 15; /* try to connect every 15 seconds */
maxclients 10; /* max servers */
sendq 20M;
};
/* Allow blocks define which clients may connect to this server.
* This allows you to add a server password or restrict the server to
* specific IP's only. You also configure the maximum connections
* allowed per IP here.
* See also: https://www.unrealircd.org/docs/Allow_block
*/
/* Allow everyone in, but only 3 connections per IP */
allow {
ip *@*;
class clients;
maxperip 3;
};
/* Example of a special allow block on a specific IP:
* Requires users on that IP to connect with a password. If the password
* is correct then it permits 20 connections on that IP.
*/
allow {
ip *@192.0.2.1;
class clients;
password "somesecretpasswd";
maxperip 20;
};
/* Oper blocks define your IRC Operators.
* IRC Operators are people who have "extra rights" compared to others,
* for example they may /KILL other people, initiate server linking,
* /JOIN channels even though they are banned, etc.
*
* For more information about becoming an IRCOp and how to do admin
* tasks, see: https://www.unrealircd.org/docs/IRCOp_guide
*
* For details regarding the oper { } block itself, see
* https://www.unrealircd.org/docs/Oper_block
*/
/* Here is an example oper block for 'bobsmith' with password 'test'.
* You MUST change this!!
*/
oper bobsmith {
class opers;
mask *@*;
password "test";
/* Oper permissions are defined in an 'operclass' block.
* See https://www.unrealircd.org/docs/Operclass_block
* UnrealIRCd ships with a number of default blocks, see
* the article for a full list. We choose 'netadmin' here.
*/
operclass netadmin;
swhois "is a Network Administrator";
vhost netadmin.mynet.org;
};
/* Listen blocks define the ports where the server should listen on.
* In other words: the ports that clients and servers may use to
* connect to this server.
*
* Syntax:
* listen {
* {
* ip <ip>;
* port <port>;
* options {
* <options....>;
* };
* };
*/
/* Standard IRC port 6667 */
listen {
ip *;
port 6667;
};
/* Standard IRC SSL/TLS port 6697 */
listen {
ip *;
port 6697;
options { ssl; };
};
/* Special SSL/TLS servers-only port for linking */
listen {
ip *;
port 6900;
options { ssl; serversonly; };
};
/* NOTE: If you are on an IRCd shell with multiple IP's and you use
* the above listen { } blocks then you will likely get an
* 'Address already in use' error and the ircd won't start.
* This means you MUST bind to a specific IP instead of '*' like:
* listen { ip 1.2.3.4; port 6667; };
* Of course, replace the IP with the IP that was assigned to you.
*/
/*
* Link blocks allow you to link multiple servers together to form a network.
* See https://www.unrealircd.org/docs/Tutorial:_Linking_servers
*/
link hub.mynet.org
{
incoming {
mask *@something;
};
outgoing {
bind-ip *; /* or explicitly an IP */
hostname hub.mynet.org;
port 6900;
options { ssl; };
};
/* We use the SPKI fingerprint of the other server for authentication.
* Run './unrealircd spkifp' on the other side to get it.
* NOTE: requires UnrealIRCd 4.0.16 or later.
*/
password "AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUV=" { spkifp; };
class servers;
};
/* The link block for services is usually much simpler.
* For more information about what Services are,
* see https://www.unrealircd.org/docs/Services
*/
link services.mynet.org
{
incoming {
mask 127.0.0.1;
};
password "changemeplease";
class servers;
};
/* U-lines give other servers (even) more power/commands.
* If you use services you must add them here.
* NEVER put the name of an UnrealIRCd server here!!!
*/
ulines {
services.mynet.org;
};
/* Here you can add a password for the IRCOp-only /DIE and /RESTART commands.
* This is mainly meant to provide a little protection against accidental
* restarts and server kills.
*/
drpass {
restart "restart";
die "die";
};
/* The log block defines what should be logged and to what file.
* See also https://www.unrealircd.org/docs/Log_block
*/
/* This is a good default, it logs almost everything */
log "ircd.log" {
flags {
oper;
connects;
server-connects;
kills;
errors;
sadmin-commands;
chg-commands;
oper-override;
tkl;
spamfilter;
};
};
/* With "aliases" you can create an alias like /SOMETHING to send a message to
* some user or bot. They are usually used for services.
*
* We have a number of pre-set alias files, check out the alias/ directory.
* As an example, here we include all aliases used for anope services.
*/
include "aliases/anope.conf";
/* Ban nick names so they cannot be used by regular users */
ban nick {
mask "*C*h*a*n*S*e*r*v*";
reason "Reserved for Services";
};
/* Ban ip.
* Note that you normally use /KLINE, /GLINE and /ZLINE for this.
*/
ban ip {
mask 195.86.232.81;
reason "Hate you";
};
/* Ban server - if we see this server linked to someone then we delink */
ban server {
mask eris.berkeley.edu;
reason "Get out of here.";
};
/* Ban user - just as an example, you normally use /KLINE or /GLINE for this */
ban user {
mask *tirc@*.saturn.bbn.com;
reason "Idiot";
};
/* Ban realname allows you to ban clients based on their 'real name'
* or 'gecos' field.
*/
ban realname {
mask "Swat Team";
reason "mIRKFORCE";
};
ban realname {
mask "sub7server";
reason "sub7";
};
/* Ban and TKL exceptions. Allows you to exempt users / machines from
* KLINE, GLINE, etc.
* If you are an IRCOp with a static IP (and no untrusted persons on that IP)
* then we suggest you add yourself here. That way you can always get in
* even if you accidentally place a *LINE ban on yourself.
*/
/* except ban protects you from KLINE and ZLINE */
except ban {
mask *@192.0.2.1;
// you may add more mask entries here..
};
/* except tkl with type 'all' protects you from GLINE, GZLINE, QLINE, SHUN */
except tkl {
mask *@192.0.2.1;
type all;
};
/* With deny dcc blocks you can ban filenames for DCC */
deny dcc {
filename "*sub7*";
reason "Possible Sub7 Virus";
};
/* deny channel allows you to ban a channel (mask) entirely */
deny channel {
channel "*warez*";
reason "Warez is illegal";
class "clients";
};
/* VHosts (Virtual Hosts) allow users to acquire a different host.
* See https://www.unrealircd.org/docs/Vhost_block
*/
/* Example vhost which you can use. On IRC type: /VHOST test test
* NOTE: only people with an 'unrealircd.com' host may use it so
* be sure to change the vhost::mask before you test.
*/
vhost {
vhost i.hate.microsefrs.com;
mask *@unrealircd.com;
login "test";
password "test";
};
/* Blacklist blocks will query an external DNS Blacklist service
* whenever a user connects, to see if the IP address is known
* to cause drone attacks, is a known hacked machine, etc.
* Documentation: https://www.unrealircd.org/docs/Blacklist_block
* Or just have a look at the blocks below.
*/
/* DroneBL, probably the most popular blacklist used by IRC Servers.
* See https://dronebl.org/ for their documentation and the
* meaning of the reply types. At time of writing we use types:
* 3: IRC Drone, 5: Bottler, 6: Unknown spambot or drone,
* 7: DDoS Drone, 8: SOCKS Proxy, 9: HTTP Proxy, 10: ProxyChain,
* 11: Web Page Proxy, 12: Open DNS Resolver, 13: Brute force attackers,
* 14: Open Wingate Proxy, 15: Compromised router / gateway,
* 16: Autorooting worms.
*/
blacklist dronebl {
dns {
name dnsbl.dronebl.org;
type record;
reply { 3; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; };
};
action gline;
ban-time 24h;
reason "Proxy/Drone detected. Check https://dronebl.org/lookup?ip=$ip for details.";
};
/* EFnetRBL, see https://rbl.efnetrbl.org/ for documentation
* and the meaning of the reply types.
* At time of writing: 1 is open proxy, 4 is TOR, 5 is drones/flooding.
*
* NOTE: If you want to permit TOR proxies on your server, then
* you need to remove the '4;' below in the reply section.
*/
blacklist efnetrbl {
dns {
name rbl.efnetrbl.org;
type record;
reply { 1; 4; 5; };
};
action gline;
ban-time 24h;
reason "Proxy/Drone/TOR detected. Check http://rbl.efnetrbl.org/?i=$ip for details.";
};
/* You can include other configuration files */
/* include "klines.conf"; */
/* Network configuration */
set {
network-name "MYNet";
default-server "irc.mynet.org";
services-server "services.mynet.org";
stats-server "stats.mynet.org";
help-channel "#Help";
hiddenhost-prefix "Clk";
prefix-quit "Quit";
/* Cloak keys should be the same at all servers on the network.
* They are used for generating masked hosts and should be kept secret.
* The keys should be 3 random strings of 50-100 characters
* and must consist of lowcase (a-z), upcase (A-Z) and digits (0-9).
* HINT: On *NIX, you can run './unrealircd gencloak' in your shell to let
* UnrealIRCd generate 3 random strings for you.
*/
cloak-keys {
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW";
"and another one";
"and another one";
};
};
/* Server specific configuration */
set {
kline-address "set.this.to.email.address"; /* e-mail or URL shown when a user is banned */
modes-on-connect "+ixw"; /* when users connect, they will get these user modes */
modes-on-oper "+xwgs"; /* when someone becomes IRCOp they'll get these modes */
oper-auto-join "#opers"; /* IRCOps are auto-joined to this channel */
options {
hide-ulines; /* hide U-lines in /MAP and /LINKS */
show-connect-info; /* show "looking up your hostname" messages on connect */
};
maxchannelsperuser 10; /* maximum number of channels a user may /JOIN */
/* The minimum time a user must be connected before being allowed to
* use a QUIT message. This will hopefully help stop spam.
*/
anti-spam-quit-message-time 10s;
/* Or simply set a static quit, meaning any /QUIT reason is ignored */
/* static-quit "Client quit"; */
/* static-part does the same for /PART */
/* static-part yes; */
/* Which /STATS to restrict to opers only. We suggest to leave it to * (ALL) */
oper-only-stats "*";
/* Anti flood protection */
anti-flood {
nick-flood 3:60; /* 3 nick changes per 60 seconds (the default) */
connect-flood 3:60; /* 3 connection attempts per 60 seconds (the default) */
away-flood 4:120; /* 4 times per 2 minutes you may use /AWAY (default) */
};
/* Settings for spam filter */
spamfilter {
ban-time 1d; /* default duration of a *LINE ban set by spamfilter */
ban-reason "Spam/Advertising"; /* default reason */
virus-help-channel "#help"; /* channel to use for 'viruschan' action */
/* except "#help"; channel to exempt from Spamfilter */
};
};
/* Finally, you may wish to have a MOTD (Message of the Day), this can be
* done by creating an 'ircd.motd' text file in your conf/ directory.
* This file will be shown to your users on connect.
* For more information see https://www.unrealircd.org/docs/MOTD_and_Rules
*/
/*
* Problems or need more help?
* 1) https://www.unrealircd.org/docs/UnrealIRCd_4_documentation
* 2) https://www.unrealircd.org/docs/FAQ <- answers 80% of your questions!
* 3) If you are still having problems then you can get support:
* - Forums: https://forums.unrealircd.org/
* - IRC: irc.unrealircd.org (SSL on port 6697) / #unreal-support
* Note that we require you to read the documentation and FAQ first!
*/
+461
View File
@@ -0,0 +1,461 @@
/* Fichier de configuration pour UnrealIRCd 4
*
* Copiez ce fichier dans le répertoire conf/, renommez le
* 'unrealircd.conf' et parcourez-le ligne par ligne (modifiez le !)
*
* Important : Toutes les lignes, sauf celles ne comportant qu'un {
* ouvrant, doivent finir par un ; y compris };. C'est très important,
* car si vous oubliez un ; quelque part, alors le parser du fichier de
* configuration se plaindra et votre fichier ne sera pas lu correctement !
* S'il s'agit de votre première expérience avec le fichier de configuration
* d'UnrealIRCd, nous vous recommandons de vous documenter un peu à propos
* de la syntaxe. Ça ne vous prendra que quelques minutes et vous aidera
* beaucoup :
* https://www.unrealircd.org/docs/Configuration#Configuration_file_syntax
*
* Documentation pour UnrealIRCd 4 (très complète !) :
* https://www.unrealircd.org/docs/UnrealIRCd_4_documentation/fr
*
* Foire Aux Questions :
* https://www.unrealircd.org/docs/FAQ
*
*/
/* Ceci est un commentaire, ici, tout le texte est ignoré (type #1) */
// Ceci est aussi un commentaire, cette ligne est ignorée (type #2)
# Ceci est aussi un commentaire, cette ligne est ignorée (type #3)
/* UnrealIRCd utilise beaucoup les modules. Ceux-ci vous permettent
* de personnaliser complètement les fonctionnalités que vous voulez
* activer sur UnrealIRCd.
* Voir : https://www.unrealircd.org/docs/Modules
*
* En utilisant la ligne include ci-dessous, nous indiquons à l'IRCd de
* lire le fichier 'modules.default.conf' ce qui activera plus de 150
* modules fournis avec UnrealIRCd. En d'autres termes, ceci activera
* toutes les fonctionnalités disponibles d'UnrealIRCd.
* Si vous configurez UnrealIRCd pour la première fois, nous vous
* conseillons d'utiliser cette ligne. Après, lorsque tout fonctionnera
* vous pourrez revenir personnaliser la liste (si vous le souhaitez).
*/
include "modules.default.conf";
/* Incluons aussi d'autres fichiers :
* - help/help.conf pour le système d'aide sur IRC via /HELPOP
* - badwords.conf pour le mode utilisateur et de salon +G
* - spamfilter.conf comme exemple d'utilisation de spamfilter
* - operclass.default.conf qui contient les classes d'opérateurs
* par défaut à utiliser dans vos blocs oper.
*/
include "help/help.conf";
include "badwords.conf";
//include "spamfilter.conf";
include "operclass.default.conf";
/* Le bloc me { } indique qui est le serveur.
* Il définit le nom du serveur, une ligne d'informations et un identifiant
* "sid" unique. L'id du serveur (sid) doit commencer par un chiffre suivit
* de deux chiffres ou lettres. Le sid doit être unique sur votre réseau IRC
* (chaque serveur doit avoir un sid différent).
*/
me {
name "irc.foonet.com";
info "Serveur FooNet";
sid "001";
};
/* Le bloc admin { } définit ce que les utilisateurs verront en faisant
* /ADMIN. C'est généralement des infos de contact de l'administrateur.
*/
admin {
"Bob Smith";
"bob";
"adresse.email@foonet.com";
};
/* Les clients et serveurs sont placés dans des classes, que nous
* définissons dans ces blocs class { }.
* Les blocs de classe comportent les éléments suivants :
* - pingfreq: à quelle fréquence envoyer un ping à l'utilisateur ou au
* serveur (en secondes)
* - connfreq: à quelle fréquence on essaye de se connecter à ce serveur
* (en secondes)
* - sendq: la taille maximale de la queue d'émission pour une connexion
* - recvq: la taille maximale de la queue de réception pour une connexion
* (contrôle du flood)
*/
/* Classe pour des clients */
class clients
{
pingfreq 90;
maxclients 1000;
sendq 200k;
recvq 8000;
};
/* Classe spéciale pour des IRCOps avec des limites plus hautes */
class opers
{
pingfreq 90;
maxclients 50;
sendq 1M;
recvq 8000;
};
/* Classe pour des serveurs */
class servers
{
pingfreq 60;
connfreq 15; /* essayer de se connecter toutes les 15 sec */
maxclients 10; /* nombre max de serveurs */
sendq 5M;
};
/* Les blocs allow définissent quels clients peuvent se connecter au
* serveur. Ils vous permettent d'ajouter un mot de passe ou de restreindre
* le serveur à certaines IP seulement. C'est aussi là que vous configurez
* le nombre maximum de connexions par IP.
* Voir : https://www.unrealircd.org/docs/Allow_block
*/
/* Accepter tout le monde, mais seulement 5 connexions par IP */
allow {
ip *@*;
class clients;
maxperip 5;
};
/* Exemple de bloc allow spécial pour une IP donnée :
* Les utilisateurs sur cette IP doivent se connecter avec un mot de passe.
* S'il est correct, alors autoriser 20 connexions sur cette IP.
*/
allow {
ip *@192.0.2.1;
class clients;
password "unmotdepassesecret";
maxperip 20;
};
/* Les blocs oper définissent vos Opérateurs IRC.
* Les Opérateurs IRC sont des utilisateurs avec des "droits en plus"
* par rapport aux autres, par exemple, ils peuvent /KILL (déconnecter)
* d'autres utilisateurs, faire se connecter des serveurs entre eux,
* /JOIN des salons même s'ils sont bannis, etc ...
* Voir aussi : https://www.unrealircd.org/docs/Oper_block
*/
/* Voici un exemple de bloc oper pour 'bobsmith' avec le mot de
* passe 'test'.
* Vous DEVEZ le modifier !!
*/
oper bobsmith {
class opers;
mask *@*;
password "test";
/* Les permissions Oper sont définies dans un bloc 'operclass'.
* Voir https://www.unrealircd.org/docs/Operclass_block
* UnrealIRCd est fourni avec des classes par défaut, voir la doc
* pour une liste complète. Nous avons choisi 'netadmin' ici.
*/
operclass netadmin;
swhois "est un Administrateur du Réseau";
vhost netadmin.mynet.org;
};
/* Les blocs listen définissent les ports sur lesquels le serveur écoute.
* C'est-à-dire les ports que les clients et les serveurs utilisent pour
* se connecter à ce serveur.
*
* Syntaxe :
* listen
* {
* ip <adresse ip>;
* port <numéro de port>;
* options {
* <options....>;
* };
* };
*/
/* Port standard pour IRC 6667 */
listen {
ip *;
port 6667;
};
/* Port standard pour IRC sur SSL/TLS 6697 */
listen {
ip *;
port 6697;
options { ssl; };
};
/* Port SSL/TLS spécial pour la connexion entre serveurs */
listen {
ip *;
port 6900;
options { ssl; serversonly; };
};
/* NOTE : Si vous utilisez un serveur IRC avec plusieurs IP et que vous
* utilisez les blocs listen ci-dessus, vous aurez peut-être une
* erreur 'Address already in use' et l'IRCd ne démarrera pas.
* Celle-ci indique que vous devez préciser une IP spécifique
* au lieu de '*'. Exemple :
* listen 1.2.3.4:6667;
* Bien sûr, remplacez 1.2.3.4 par l'IP qui vous est assignée.
*/
/*
* Les blocs link vous permettent de connecter plusieurs serveurs ensemble
* pour former un réseau IRC.
* Voir https://www.unrealircd.org/docs/Tutorial:_Linking_servers
*/
link hub.mynet.org
{
incoming {
mask *@something;
};
outgoing {
bind-ip *; /* ou une IP précise */
hostname hub.mynet.org;
port 6900;
options { ssl; };
};
password "00:11:22:33:44:55:66:77:88:99:AA:BB:CC:DD:EE:FF"; /* Empreinte SSL de l'autre serveur */
class servers;
};
/* Les U-lines donnent encore plus de pouvoir à certains serveurs.
* Si vous utilisez des Services, vous devez les indiquer ici.
* NE JAMAIS indiquer le nom d'un serveur UnrealIRCd normal ici !!!
* (Si vous ne savez pas ce que sont les Services, voir :
* https://www.unrealircd.org/docs/Services )
*/
ulines {
services.mynet.org;
};
/* Ici vous pouvez indiquer un mot de passe pour les commandes /DIE et
* /RESTART, qui sont restreintes aux IRCops.
* Il s'agit surtout d'une petite protection contre les redémarrages et
* les coupures de serveur accidentels.
*/
drpass {
restart "restart";
die "die";
};
/* Le bloc log indique ce qui doit être journalisé et dans quel fichier.
* Voir aussi https://www.unrealircd.org/docs/Log_block
*/
/* Ceci est une bonne valeur par défaut, elle journalise presque tout */
log "ircd.log" {
flags {
oper;
connects;
server-connects;
kills;
errors;
sadmin-commands;
chg-commands;
oper-override;
tkl;
spamfilter;
};
};
/* Avec des "alias", vous pouvez créer un alias comme /UNTRUC pour envoyer
* un message à un utilisateur ou à un bot. Ils sont souvent utilisés pour
* les services.
*
* Nous fournissons un certain nombre d'alias par défaut, voir les fichiers
* du répertoire aliases/.
* Pour exemple, ici nous ajoutons les alias pour les Services Anope.
*/
include "aliases/anope.conf";
/* Bannir des nicks pour qu'ils ne soient pas utilisables par des
* utilisateurs normaux
*/
ban nick {
mask "*C*h*a*n*S*e*r*v*";
reason "Réservé aux Services";
};
/* Bannir une IP.
* NB : vous pouvez aussi utiliser /KLINE, /GLINE et /ZLINE pour ça.
*/
ban ip {
mask 195.86.232.81;
reason "Je vous hais !";
};
/* Bannir un serveur - si ce serveur est connecté au réseau, nous nous
* déconnecterons
*/
ban server {
mask eris.berkeley.edu;
reason "Va-t-en d'ici.";
};
/* Bannir un utilisateur - juste pour l'exemple, on utilise normalement
* /KLINE or /GLINE pour ça
*/
ban user {
mask *tirc@*.saturn.bbn.com;
reason "Idiot";
};
/* Bannir un realname (ou 'gecos') */
ban realname {
mask "Swat Team";
reason "mIRKFORCE";
};
ban realname {
mask "sub7server";
reason "sub7";
};
/* Exceptions de ban et TKL. Vous permet d'exempter des utilisateurs des
* KLINE, GLINE, etc ...
* Si vous êtes un IRCOp avec une IP statique (et qu'il n'y a que des
* personnes de confiance sur cette IP), alors vous pouvez vous ajouter ici.
* Ainsi, vous pourrez toujours vous connecter même si vous vous bannissez
* accidentellement.
*/
/* except ban vous protège des KLINE et ZLINE */
except ban {
mask *@192.0.2.1;
// vous pouvez ajouter d'autres lignes mask à la suite
};
/* except tkl avec le type 'all' vous protège des GLINE, GZLINE, QLINE, SHUN */
except tkl {
mask *@192.0.2.1;
type all;
};
/* Avec un bloc deny dcc vous pouvez interdire des noms de fichiers dans
* les échanges DCC
*/
deny dcc {
filename "*sub7*";
reason "Possible virus Sub7";
};
/* deny channel vous permet d'interdire des masques de noms de salons */
deny channel {
channel "*warez*";
reason "Le warez est illegal";
class "clients";
};
/* Les VHosts (Virtual Hosts - Hôtes Virtuels) permettent aux utilisateurs
* d'avoir un nom d'hôte différent.
* Voir https://www.unrealircd.org/docs/Vhost_block
*/
/* Vhost d'exemple. Sur IRC, entrez /VHOST test test
* NOTE : seuls les utilisateurs avec un nom d'hôte 'unrealircd.com'
* peuvent l'utiliser, donc modifiez vhost::mask avant de tester.
*/
vhost {
vhost i.hate.microsefrs.com;
mask *@unrealircd.com;
login "test";
password "test";
};
/* Vous pouvez inclure d'autres fichiers de configuration */
/* include "klines.conf"; */
/* Configuration du réseau */
set {
network-name "MYNet";
default-server "irc.mynet.org";
services-server "services.mynet.org";
stats-server "stats.mynet.org";
help-channel "#Help";
hiddenhost-prefix "Clk";
prefix-quit "Quit";
/* Les clés de cloaking doivent être identiques sur tous les serveurs
* d'un réseau. Elles sont utilisées pour générer les noms d'hôtes
* masqués et doivent être gardées secrètes. Les clés doivent être
* 3 chaînes de 5 à 100 caractères aléatoires (entre 10 et 20 suffisent)
* et ne comporter que des minuscules (a-z), des majuscules (A-Z) et des
* chiffres (0-9). (voir l'exemple)
* NB : sur *NIX, vous pouvez exécuter './unreal gencloak' sur votre
* serveur pour que Unreal génère 3 clés aléatoires pour vous.
*/
cloak-keys {
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW";
"et une autre";
"et une troisième";
};
};
/* Configuration spécifique au serveur */
set {
kline-address "indiquez.une.adresse.email"; /* e-mail ou URL indiquée lorsqu'un utilisateur est banni */
modes-on-connect "+ixw"; /* modes utilisateur ajoutés lorsqu'un utilisateur se connecte */
modes-on-oper "+xwgs"; /* modes utilisateur ajoutés lorsqu'un utilisateur devient IRCOp */
oper-auto-join "#opers"; /* salon que les IRCOps joignent automatiquement */
options {
hide-ulines; /* cacher les U-lines de /MAP et /LINKS */
show-connect-info; /* afficher les messages "looking up your hostname" à la connexion */
};
maxchannelsperuser 10; /* nombre max de salons par utilisateur */
/* Temps minimum qu'un utilisateur doit rester connecter avant de pouvoir
* utiliser un message de QUIT. Le but est pour réduire le spam.
*/
anti-spam-quit-message-time 10s;
/* Ou indiquez un message de QUIT constant, ce qui fait que les raisons
* de /QUIT sont ignorées.
*/
/* static-quit "Le client a quitté"; */
/* static-part fait la même chose pour /PART */
/* static-part yes; */
/* Quelles /STATS sont restreintes aux Opérateurs. Nous vous
* conseillons de laisser '*' (toutes)
*/
oper-only-stats "*";
/* Protections anti-flood */
anti-flood {
nick-flood 3:60; /* 3 changements de nick par 60 secondes */
connect-flood 3:60; /* 3 tentatives de connexions par 60 seconds */
away-flood 4:120; /* 4 utilisation de /AWAY par 2 minutes */
};
/* Paramètres de Spamfilter */
spamfilter {
ban-time 1d; /* durée par défaut des bans *LINE ajoutés par spamfilter */
ban-reason "Spam/Publicité"; /* raison par defaut */
virus-help-channel "#help"; /* salon par défaut pour l'action 'viruschan' */
/* except "#help"; salon à exempter de Spamfilter */
};
};
/*
* Un problème ou besoin d'aide supplémentaire ?
* 1) https://www.unrealircd.org/docs/UnrealIRCd_4_documentation/fr
* 2) https://www.unrealircd.org/docs/FAQ <- répond à 80% des questions !
* 3) Si vous avez toujours des problèmes, vous pouvez aller sur
* irc.unrealircd.org #unreal-support,
* mais nous exigeons que vous lisiez LA DOCUMENTATION et la FAQ d'abord !
*/
+509
View File
@@ -0,0 +1,509 @@
/* UnrealIRCd 4 için yapılandırma dosyası
* Türkçe Çeviri: Diablo - (Serkan Sepetçi)
* İletişim: irc.trirc.com:6667 - diablo@unrealircd.org
*
* Biz buna basit bir 'unrealircd.conf' dosyası diyoruz.
* Bu dosyası satır satır editleyip conf/ dizinine kopyalayınız. (düzenleyin!)
*
* Önemli: Satırların hepsi, açılış başına { satır sonuna ;
* }; dahil edin. Bu çok önemli, eğer siz ayrıştırıcıyı ;
* eksik koyarsanız yapılandırma dosyası hata verecek
* ve dosya doğru işlemde olmayacaktır!
* Bu sizin UnrealIRCd yapılandırması ile ilk deneyiminiz ise
* dosyayı okumanız için birkaç dakika ayırmanızı öneniriz,
* bu size bilgi edinmeniz açısından yardımcı olacaktır:
* https://www.unrealircd.org/docs/Configuration#Configuration_file_syntax
*
* UnrealIRCd 4 belgeleme (çok geniş!):
* https://www.unrealircd.org/docs/UnrealIRCd_4_documentation
*
* Sıkça Sorulan Sorular:
* https://www.unrealircd.org/docs/FAQ
*
*/
/* Bu bir açıklamadır, burada tüm metin göz ardı edilir (açıklama tipi #1) */
// Bu da bir açıklamadır, bu satır göz ardı edilir (açıklama tipi #2)
# Bu da bir açıklamadır, bu satır yine göz ardı edilir (açıklama tipi #3)
/* UnrealIRCd yoğun modul kullanımını kolaylaştırır. UnrealIRCd'de
* etkinleştirmek istediğiniz özellikleri tamamen moduller ile aktif edebilirsiniz.
* Görmek için; https://www.unrealircd.org/docs/Modules
*
* Biz 'modules.default.conf' dosyasını okumak için IRCd talimatı altında kullanarak
* UnrealIRCd ile birlikte gelen 150'den fazla modülleri yükleyecektir.
* Başka bir deyişle: Bu sadece UnrealIRCd'de mevcut tüm özelliklerini yükleyecektir.
* İlk kez UnrealIRCd kuruyorsanız size bunu kullanmanızı öneririz.
* UnrealIRCd'yi ilk kez kuruyorsanız bunu kullanmanızı öneririz.
* Daha sonra her şey hazır olduğunda ve çalışıyorsa (eğer isterseniz)
* listeyi özelleştirmek için geri dönebilirsiniz.
*/
include "modules.default.conf";
/* Şimdi de diğer bazı dosyaları dahil edelim:
* - help/help.conf /HELPOP sistemi
* - badwords.conf kanal ve kullanıcı modu için +G
* - spamfilter.conf için örnek olarak spamfilter kullanımı
* - operclass.default.conf oper bloklarında kullanabileceğiniz
* oper sınıflarını görüntüler.
*/
include "help/help.conf";
include "badwords.conf";
//include "spamfilter.conf";
include "operclass.default.conf";
/* me { } bloğu genelde kim olduğumuzu belirtir.
* Sunucumuz için isim, birkaç satır bazı bilgileri belirler "sid".
* Sunucu kimliği (sid) iki basamağı veya harf tarafından izlenen bir rakam ile
* başlamalıdır. Sid IRC ağı için benzersiz olmalıdır (her sunucu için
* kendi sid olmalıdır).
*/
me {
name "irc.foonet.com";
info "FooNet Server";
sid "001";
};
/* admin { } bloğu /ADMIN sorgusunda kullanıcılara görüntülenecek metni belirler.
* Normalde yöneticiye ulaşma konusunda bilgi içerir.
*/
admin {
"Bob Smith";
"bob";
"widely@used.name";
};
/* Kullanıcılar ve sunucular için class { } bloğu belirtilir.
* Class blokları aşağıdaki işlemlerden oluşur:
* - pingfreq: kullanıcı/sunucu için ping'ler arası zaman belirtir (saniyede)
* - connfreq: sunucuya bağlanmaya çalıştığınızda tekrar için zaman belirtir (saniyede)
* - sendq: bir bağlantı için maksimum veri boyutu
* - recvq: bir bağlantı için maksimum alınan veri boyutu (flood kontrol)
*/
/* Kullanıcılar için varsayılan class ayarları */
class clients
{
pingfreq 90;
maxclients 1000;
sendq 200k;
recvq 8000;
};
/* IRCOp'lar için varsaylan yüksek limitli özel class ayarları */
class opers
{
pingfreq 90;
maxclients 50;
sendq 1M;
recvq 8000;
};
/* Sunucular için varsayılan class ayarları */
class servers
{
pingfreq 60;
connfreq 15; /* Her 15 saniyede bir bağlanmayı dener */
maxclients 10; /* maksimum kullanıcı */
sendq 5M;
};
/* Allow blockları sunucunuza kimlerin bağlanabileceğini belirtir.
* Bir sunucu şifresi eklenebilir veya belirlitilen bir IP adresi için
* giriş izini verilebilir. Ayrıca IP başına ne kadar bağlantıya izin
* verileceğini belirtir.
* Görmeniz için: https://www.unrealircd.org/docs/Allow_block
*/
/* IP başına sadece 5 bağlantı izini verir */
allow {
ip *@*;
class clients;
maxperip 3;
};
/* Örnek olarak özel bir IP bloğu izini:
* Bu IP bir şifre ile bağlantı yapması olduğunu gerektirir.
* Şifre doğru ise o zaman bu IP 20 bağlantıya izin verecektir.
*/
allow {
ip *@192.0.2.1;
class clients;
password "somesecretpasswd";
maxperip 20;
};
/* Oper bloğu, IRC Operatorleri tanımlar.
* IRC Operatörler, diğer kullanıcılara göre "ekstra haklara" sahip kullanıcılardır.
* örneğin diğer kullanıcılara /KILL uygulayabilmesi, sunucu birleştirmesinin başlatılması,
* /JOIN yaptığı odalardan banlansa bile tekrar giriş yapabilmesi, vs.
*
* IRCOp olmak ve nasıl Admin olunacağı hakkında daha fazla bilgi için
* https://www.unrealircd.org/docs/IRCOp_guide
*
* Oper {} bloğunun kendisi ile ilgili ayrıntıları görmeniz için
* https://www.unrealircd.org/docs/Oper_block
*/
/* Örnek bir oper bloğu için 'bobsmith' ile şifresi 'test'.
* Bunu değiştirmeniz GEREKİR!!
*/
oper bobsmith {
class opers;
mask *@*;
password "test";
/* Oper izinleri bir "operclass 'bloğunda tanımlanır.
* Görmeniz için: https://www.unrealircd.org/docs/Operclass_block
* UnrealIRCd varsayılan bloklar makalesi için,
* tam listesine bakınız. Buradan 'netadmin' seçiyoruz.
*/
operclass netadmin;
swhois "is a Network Administrator";
vhost netadmin.mynet.org;
};
/* Listen blokları sunucu portu için gereken bağlantı noktalarını tanımlar.
* Diğer bir deyişle: Bu portlar kullanıcılar ve serverlar için
* sunucuya bağlantı kurmasını sağlar.
*
* Kullanımı:
* listen
* {
* ip <ip numarası>;
* port <port numarası>;
* options {
* <seçenekler....>;
* };
* };
*/
/* Standard IRC port 6667 */
listen {
ip *;
port 6667;
};
/* Standard IRC SSL/TLS port 6697 */
listen {
ip *;
port 6697;
options { ssl; };
};
/* Özel SSL/TLS sadece sunucuları bağlamak için port */
listen {
ip *;
port 6900;
options { ssl; serversonly; };
};
/* DiKKAT: Eğer bir çok IP barındıran bir IRCd Shell kullanıyorsanız
* logunuzda olası 'Address already in use' hatasını alacaksınız
* ve ircd başlamayacaktır.
* Bunun anlamı '*' yerine belirli bir IP yazmanız GEREKİR anlamına gelir:
* listen 1.2.3.4:6667;
* Açıkçası, IP yi önceden koyduğunuz IP ile değiştirin.
*/
/*
* Link blockları bir ağ oluşturmak için birden fazla sunucu bağlamaya izin verir.
* Görmek için: https://www.unrealircd.org/docs/Tutorial:_Linking_servers
*/
link hub.mynet.org
{
incoming {
mask *@something;
};
outgoing {
bind-ip *; /* veya açıkça bir IP */
hostname hub.mynet.org;
port 6900;
options { ssl; };
};
/* Kimlik doğrulaması için diğer sunucunun SPKI parmak izini kullanıyoruz.
* Kullanmamız için diğer tarafda './unrealircd spkifp' uygulayıp çalıştırıyoruz.
* NOT: UnrealIRCd 4.0.16 veya üzeri versiyonları gerektirir.
*/
password "AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUV=" { spkifp; };
class servers;
};
/* Servis'ler için bağlantı bloğu genellikle çok daha basittir.
* Servis'lerin ne olduğu hakkında daha fazla bilgi için,
* https://www.unrealircd.org/docs/Services
*/
link services.mynet.org
{
incoming {
mask 127.0.0.1;
};
password "changemeplease";
class servers;
};
/* U-lines satırları sunuculara daha güç/komut kazandırır.
* Eğer hizmetlerini kullanmak istiyorsanız onları buraya eklemeniz gerekir.
* ASLA buraya (normal) UnrealIRCd sunucunun adını yazmayınız!!!
*/
ulines {
services.mynet.org;
};
/* Bu blok /DIE ve /RESTART için şifre tanımlamanızı sağlar. Sadece IRCOp'lar içindir.
* Bu genelde kazara sunucuyu yeniden başlatma ve kapanmasına karşı biraz
* koruma sağlamak içindir.
*/
drpass {
restart "restart";
die "die";
};
/* Bu log bloğu hangi dosyaya ve nelerin olması gerektiğini tanımlar.
* Görmeniz için: https://www.unrealircd.org/docs/Log_block
*/
/* Varsayılan ayarlar, neredeyse her şeyi kaydedecektir */
log "ircd.log" {
flags {
oper;
connects;
server-connects;
kills;
errors;
sadmin-commands;
chg-commands;
oper-override;
tkl;
spamfilter;
};
};
/* Bazı kullanıcılara veya botlara bir mesaj göndermek için "aliases"
* takma ad oluşturmanızı sağlar. Genellikle servisler için kullanılır.
*
* Biz önceden ayarlanmış bir takma adı dosyaları dizini oluşturduk, alias/ dizini kontrol ediniz.
* Örnek olarak, burada anope servisler ve kullanılan tüm diğer servisler adları bulunmaktadır.
*/
include "aliases/anope.conf";
/* Ban nick bloğu bir nickin sunucuda kullanımını yasaklamanıza olanak sağlar */
ban nick {
mask "*C*h*a*n*S*e*r*v*";
reason "Servisler için ayrılmış";
};
/* Ban ip.
* Normalde bunun için /KLINE, /GLINE ve /ZLINE kullanıldığını unutmayınız.
*/
ban ip {
mask 195.86.232.81;
reason "Senden nefret ediyorum";
};
/* Ban server - bir sunucunun bağlanmasını devredışı kılar */
ban server {
mask eris.berkeley.edu;
reason "Defol git buradan.";
};
/* Ban user - normalde /KLINE veya /GLINE kullanıldığını unutmayınız */
ban user {
mask *tirc@*.saturn.bbn.com;
reason "Salak";
};
/* Ban realname bloğu bir kullanıcıyı, GECOS kısmı esas alınarak
* banlamanıza olanak sağlar.
*/
ban realname {
mask "Swat Team";
reason "mIRKFORCE";
};
ban realname {
mask "sub7server";
reason "sub7";
};
/* Ban ve TKL istisnaları. Kullanıcıları / makineleri gözetmeksizin
* KLINE, GLINE, gibi banlardan muaf tutmanıza olanak sağlar.
* Eğer statik IP (ve bu IP üzerinde güvenilmeyen kişiler) ile bir IRCOp
* iseniz o zaman kendinizi burada eklemenizi öneririz. Yanlışlıkla kendinize
* bir *LINE ban koyarsanız bile yinede muaf tutulacaksınız.
*/
/* except ban bloğu, sizi KLINE ve ZLINE gibi banlardan koruyacaktır */
except ban {
mask *@192.0.2.1;
// burada daha fazla mask girdileri ekleyebilirsiniz..
};
/* except tkl bloğu, sizi 'tüm' GLINE, GZLINE, QLINE, SHUN gibi banlardan koruyacaktır */
except tkl {
mask *@192.0.2.1;
type all;
};
/* Deny dcc bloğu, sunucu üzerinden DCC yoluyla dosya gönderilmesine izin vermeyecektir */
deny dcc {
filename "*sub7*";
reason "Olası Sub7 Virüsü";
};
/* Deny channel bloğu, kullanıcıların belirtilen kanallara girmesini engeller */
deny channel {
channel "*warez*";
reason "Warez is illegal";
class "clients";
};
/* VHosts (Virtual Hosts) bloğu, kullanıcının yeni bir host alabilmesine olanak sağlar.
* Görmeniz için; https://www.unrealircd.org/docs/Vhost_block
*/
/* Kullanabileceğiniz örnek vhost. IRC tipi: /VHOST test test
* DiKKAT: Güvenlik açısından aşağıdaki vhost::mask yönergesinde
* maske 'unrealircd.com' olarak belirlenmiştir.
*/
vhost {
vhost i.hate.microsefrs.com;
mask *@unrealircd.com;
login "test";
password "test";
};
/* Blacklist blokları, bir kullanıcı bağlandığında IP adresinin drone saldırılarına
* neden olduğunu, bilinen bir saldırıya uğramış bir makine olup olmadığını görmek
* için harici bir DNS Kara Liste hizmetinden sorgulayacaktır.
* Belgeleme: https://www.unrealircd.org/docs/Blacklist_block
* veya aşağıdaki bloklar satırına bakınız.
*/
/* DroneBL, muhtemelen IRC Sunucuları tarafından kullanılan en popüler kara liste.
* Belgeler ve cevap (reply) tiplerin anlamlarını görmek için https://dronebl.org/
* adresine bakınız. Bu zamanda aşağıdaki cevap (reply) tiplerini kullanıyoruz:
* 3: IRC Drone, 5: Bottler, 6: Unknown spambot or drone,
* 7: DDoS Drone, 8: SOCKS Proxy, 9: HTTP Proxy, 10: ProxyChain,
* 11: Web Page Proxy, 12: Open DNS Resolver, 13: Brute force attackers,
* 14: Open Wingate Proxy, 15: Compromised router / gateway,
* 16: Autorooting worms.
*/
blacklist dronebl {
dns {
name dnsbl.dronebl.org;
type record;
reply { 3; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; };
};
action gline;
ban-time 24h;
reason "Proxy/Drone belirlendi. Ayrıntılar için https://dronebl.org/lookup?ip=$ip adresine bakınız.";
};
/* EFnetRBL, belgeler ve cevap (reply) tiplerini görmek için https://rbl.efnetrbl.org/
* adresine bakınız.
* Yazma sırasında: 1 is open proxy, 4 is TOR, 5 is drones/flooding.
*
* NOT: Sunucunuzda TOR proxy'lerine izin vermek istiyorsanız,
* cevap (reply) tiplerinden '4;' öğesini kaldırmanız gerekiyor.
*/
blacklist efnetrbl {
dns {
name rbl.efnetrbl.org;
type record;
reply { 1; 4; 5; };
};
action gline;
ban-time 24h;
reason "Proxy/Drone/TOR belirlendi. Ayrıntılar için http://rbl.efnetrbl.org/?i=$ip adresine bakınız.";
};
/* Diğer yapılandırma dosyalarını dahil edebilirsiniz */
/* include "klines.conf"; */
/* Ağ yapılandırması */
set {
network-name "MYNet";
default-server "irc.mynet.org";
services-server "services.mynet.org";
stats-server "stats.mynet.org";
help-channel "#Help";
hiddenhost-prefix "Clk";
prefix-quit "Quit";
/* Gizleme anahtarları ağ üzerindeki bütün sunucularda aynı olmalı.
* Bu anahtarlar maskeli hostlar yaratmak ve bunları saklamak için kullanılır.
* Anahtarlar 5-100 karakterlik (10-20 karakter yeterli) 3 rastgele diziden oluşmalı ve
* küçük harf (a-z), büyük harf (A-Z) ve rakamlardan (0-9) meydana gelmelidirler.. [ilk örneğe bakınız].
* IPUCU: './unreal gencloak' Unreal sizin için rastgele 3 adet dizin oluşturur.
* Bunu NIX üzerinde çalıştırabilirsiniz.
*/
cloak-keys {
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW";
"ve diğeri";
"ve diğeri";
};
};
/* Sunucunun kendine özgü yapılandırması */
set {
kline-address "set.this.to.email.address"; /* bir kullanıcı banlandığında e-mail yada URL satırı gösterir */
modes-on-connect "+ixw"; /* kullanıcılar bağlandığında, bu modları alacaktır */
modes-on-oper "+xwgs"; /* Birisi IRC Operatör olduğunda bu modları alacaktır */
oper-auto-join "#opers"; /* IRCoplar bu kanala otomatik olarak giriş yapacaktır */
options {
hide-ulines; /* U-lines satırları /MAP ve /LINKS komutunda gözükmez */
show-connect-info; /* sunucuya bağlanırken "looking up your hostname" mesajı görüntülenecektir */
};
maxchannelsperuser 10; /* bir kullanıcının maksimum girebileceği kanal sayısı */
/* QUIT mesajının görüntülenebilmesi için, bir kullanıcının sunucuya bağlı kalması
* gereken süre. Bu durum umarım spamları durdurmak için yardımcı olacaktır.
*/
anti-spam-quit-message-time 10s;
/* Kullanıcı sunucudan ayrılırken çıkış sebebini sabitler. /QUIT sebeb gözardı edilecektir. */
/* static-quit "Client quit"; */
/* static-part /PART komutu ile aynı işi görür */
/* static-part yes; */
/* /STATS komutunu operler için kısıtlar. Önerilen * (TÜMÜ) */
oper-only-stats "*";
/* Anti flood Koruması */
anti-flood {
nick-flood 3:60; /* Her 60 saniyede 3 nick değişikliği (varsayılan) */
connect-flood 3:60; /* Her 60 saniyede 3 bağlantı girişi izni (varsayılan) */
away-flood 4:120; /* Her 2 dakikada 4 kez /AWAY kullanımı izni (varsayılan) */
};
/* Spam filter Ayarları */
spamfilter {
ban-time 1d; /* varsayılan spamfilter tarafından ban süresini belirtir */
ban-reason "Spam/Advertising"; /* varsayılan sebep */
virus-help-channel "#help"; /* 'viruschan' eylemi için kullanılacak kanal */
/* except "#help"; Spamfilter'den muaf tutulacak kanal */
};
};
/* Son olarak, bir MOTD (Günün Mesajı) oluşturabilirsiniz, bu
* conf/ dizininde 'ircd.motd' metin dosyası oluşturarak yapabilirsiniz.
* Bu dosyanın içeriği bağlantı kuran kullanıcılara gösterilecektir.
* Daha fazla bilgi için https://www.unrealircd.org/docs/MOTD_and_Rules bölümünü inceleyiniz.
*/
/*
* Sorununuza veya daha fazla yardımamı ihtiyacınız var?
* 1) https://www.unrealircd.org/docs/UnrealIRCd_4_documentation
* 2) https://www.unrealircd.org/docs/FAQ <- sorularınızın %80 ini kapsamakta!
* 3) Eğer probleminiz hala devam ediyorsa:
* - Forums: https://forums.unrealircd.org/
* - IRC: irc.unrealircd.org (SSL on port 6697) / #unreal-support
* İlk önce Dökümantasyon ve FAQ kısmını okumanızı gerektirdiğini unutmayın!
*/
+227 -245
View File
@@ -1,9 +1,6 @@
/* UnrealIRCd3.2 Help Configuration
/* UnrealIRCd 4 Help Configuration
* Based on the original help text written by hAtbLaDe
* Revised by CC (07/2002)
*
* A worthwhile update for the /HELPOP system.
* Included with Unreal3.2 Dist. on 8/24/02 (Beta12)
* Revised by CC (07/2002) and many others
*/
help {
@@ -16,11 +13,10 @@ help {
" -";
" /HELPOP USERCMDS - To get the list of User Commands";
" /HELPOP OPERCMDS - To get the list of Oper Commands";
" /HELPOP SVSCMDS - Commands sent via U:Lined Server (Services)";
" /HELPOP SVSCMDS - Commands sent via U-Lined Server (Services)";
" /HELPOP UMODES - To get the list of User Modes";
" /HELPOP SNOMASKS - To get a list of Snomasks";
" /HELPOP CHMODES - To get the list of Channel Modes";
" /HELPOP OFLAGS - To see the list of O:line Flags";
" -";
" ==-------------------------oOo--------------------------==";
};
@@ -56,12 +52,12 @@ help Opercmds {
" a specific command.";
" -";
" ==-------------------------oOo-------------------------==";
" ADCHAT DNS NACHAT SETIDENT";
" DNS SETIDENT";
" ADDMOTD GLINE OPER SHUN";
" ADDOMOTD GLOBOPS OPERMOTD SPAMFILTER";
" CHATOPS GZLINE REHASH SQUIT";
" CHGHOST HTM RESTART TEMPSHUN";
" CHGIDENT KILL RPING TRACE";
" GZLINE REHASH SQUIT";
" CHGHOST RESTART TEMPSHUN";
" CHGIDENT KILL TRACE";
" CHGNAME KLINE SAJOIN TSCTL";
" CLOSE LAG SAMODE UNDCCDENY";
" CONNECT LOCOPS SAPART WALLOPS";
@@ -72,7 +68,7 @@ help Opercmds {
help Svscmds {
" This section gives the commands that can be";
" sent via a U:Lined Server such as Services.";
" sent via a U-Lined Server such as Services.";
" The command is typically sent as:";
" /MSG OPERSERV RAW :services <command>";
" Use /HELPOP <command name> to get more information about";
@@ -91,34 +87,28 @@ help Umodes {
" Here is a list of all the usermodes which are available for use.";
" -";
" ==---------------------------oOo---------------------------==";
" o = Global IRC Operator";
" O = Local IRC Operator";
" a = Is a Services Administrator";
" A = Is a Server Administrator";
" N = Is a Network Administrator";
" C = Is a Co Administrator";
" o = IRC Operator";
" -";
" d = Makes it so you can not receive channel PRIVMSGs (Deaf)";
" g = Can read & send to GlobOps, and LocOps";
" h = Available for Help (Help Operator)";
" d = Only receive channel PRIVMSGs starting with a bot command character (Deaf)";
" i = Invisible (Not shown in /WHO searches)";
" p = Hide all channels in /whois and /who";
" q = Only U:lines can kick you (Services Admins/Net Admins only)";
" q = Only U-Lines can kick you (Services Admins/Net Admins only)";
" r = Identifies the nick as being Registered (settable by services only)";
" s = Can listen to Server notices";
" t = Says that you are using a /VHOST";
" v = Receive infected DCC send rejection notices";
" w = Can listen to Wallop messages";
" x = Gives the user Hidden Hostname (security)";
" z = Marks the client as being on a Secure Connection (SSL)";
" B = Marks you as being a Bot";
" D = Only receive PRIVMSGs from IRCOps, servers and services (privdeaf)";
" G = Filters out all Bad words in your messages with <censored>";
" H = Hide IRCop status in /WHO and /WHOIS. (IRC Operators only)";
" I = Hide an oper's idle time (in /whois output) from regular users.";
" R = Allows you to only receive PRIVMSGs/NOTICEs from registered (+r) users";
" S = For Services only. (Protects them)";
" T = Prevents you from receiving CTCPs";
" V = Marks the client as a WebTV user";
" W = Lets you see when people do a /WHOIS on you (IRC Operators only)";
" Z = Only receive/send PRIVMSGs from/to users using a Secure Connection (SSL)";
" ==---------------------------oOo---------------------------==";
};
@@ -132,17 +122,18 @@ help Snomasks {
"-";
" Below is a list of possible snomasks:";
" ==-------------------------oOo-----------------------==";
" b = View blacklist hits";
" c = View connects/disconnects on local server";
" e = View 'Eyes' server messages (OperOverride, /CHG* and /SET* usage, ..)";
" f = View flood alerts";
" F = View connects/disconnects on remote servers (except U-lines)";
" F = View connects/disconnects on remote servers (except U-Lines)";
" G = View TKL notices (Gline, GZline, Shun, etc)";
" j = View Junk notices (not recommended for normal use)";
" k = View KILL notices";
" n = View nick changes on local server";
" N = View nick changes on remote servers";
" o = View oper-up notices";
" q = View rejected nick changes due to Q:lines";
" q = View rejected nick changes due to Q-Lines";
" s = View general notices";
" S = View spamfilter matches";
" v = View usage of /VHOST command";
@@ -159,48 +150,59 @@ help Chmodes {
" a <nickname> = Gives Channel Admin to the user";
" q <nickname> = Gives Owner status to the user";
" -";
" b <nick!ident@host> = Bans the nick!ident@host from the channel";
" Extended bantypes (for more info see /HELPOP EXTBANS) [h]";
" b <nick!ident@host> = Bans the nick!ident@host from the channel [h]";
" (For more info on extended bantypes, see /HELPOP EXTBANS)";
" c = Block messages containing mIRC color codes [o]";
" C = No CTCPs allowed in the channel [h]";
" D = Delay showing joins until someone actually speaks [o]";
" e <nick!ident@host> = Overrides a ban for matching users [h]";
" I <nick!ident@host> = Overrides +i for matching users [h]";
" f <floodparams> = Flood protection (for more info see /HELPOP CHMODEF) [o]";
" G = Filters out all Bad words in messages with <censored> [o]";
" i = A user must be invited to join the channel [h]";
" j <joins:sec> = Throttle joins per-user to 'joins' per 'sec' seconds [o]";
" I <nick!ident@host> = Overrides +i for matching users [h]";
" k <key> = Users must specify <key> to join [h]";
" l <number of max users> = Channel may hold at most <number> of users [o]";
" K = /KNOCK is not allowed [h]";
" L <chan2> = Channel link (If +l is full, the next user will auto-join <chan2>) [q]";
" l <number of max users> = Channel may hold at most <number> of users [h]";
" m = Moderated channel (only +vhoaq users may speak) [h]";
" M = Must be using a registered nick (+r), or have voice access to talk [h]";
" N = No Nickname changes are permitted in the channel [h]";
" n = Users outside the channel can not send PRIVMSGs to the channel [h]";
" O = IRC Operator only channel (settable by IRCops)";
" p = Private channel [o]";
" P = Permanent channel (the channel is not destroyed when empty) (settable by IRCops)";
" Q = No kicks allowed [o]";
" R = Only registered (+r) users may join the channel [h]";
" r = The channel is registered (settable by services only)";
" s = Secret channel [o]";
" t = Only +hoaq may change the topic [h]";
" z = Only Clients on a Secure Connection (SSL) can join [o]";
" A = Server/Net Admin only channel (settable by Admins)";
" C = No CTCPs allowed in the channel [o]";
" G = Filters out all Bad words in messages with <censored> [o]";
" M = Must be using a registered nick (+r), or have voice access to talk [o]";
" K = /KNOCK is not allowed [o]";
" L <chan2> = Channel link (If +l is full, the next user will auto-join <chan2>) [q]";
" N = No Nickname changes are permitted in the channel [o]";
" O = IRC Operator only channel (settable by IRCops)";
" Q = No kicks allowed [o]";
" R = Only registered (+r) users may join the channel [o]";
" S = Strips mIRC color codes [o]";
" T = No NOTICEs allowed in the channel [o]";
" t = Only +hoaq may change the topic [h]";
" V = /INVITE is not allowed [o]";
" u = Auditorium mode (/names and /who #channel only show channel ops) [q]";
" z = Only Clients on a Secure Connection (SSL) can join [o]";
" Z = All users on the channel are on a Secure connection (SSL) [server]";
" (This mode is set/unset by the server. Only if the channel is also +z)";
" -";
" [h] requires at least halfop, [o] requires at least chanop, [q] requires owner";
" ==------------------------------oOo----------------------------==";
};
help ExtBans {
" Extended bantypes: ";
" These bans let you ban based on things other than the traditional nick!user@host";
" mask. These bans start with a tilde, followed by a letter denoting the extban type.";
" For example +b ~q:nick!user@host denotes a quiet extban.";
" -";
" The following ban type can be used in front of any (ext)ban:";
" ==-Type--------Name---------------------------Explanation-----------------------==";
" | | Timed bans are automatically unset by the server after ";
" ~t | timedban | the specified number of minutes. For example: ";
" | | +b ~t:3:*!*@hostname ";
" ==------------------------------------------------------------------------------==";
" -";
" These bantypes specify which actions are affected by a ban:";
" ==-Type--------Name---------------------------Explanation-----------------------==";
" | | People matching these bans can join but are unable to ";
" ~q | Quiet | speak, unless they have +v or higher. ";
" ~q | quiet | speak, unless they have +v or higher. ";
" | | Example: ";
" | | +bb ~q:*!*@blah.blah.com ~q:nick*!*@* ";
"-----------------------------------------------------------------------------------";
@@ -209,19 +211,73 @@ help ExtBans {
" | | Example: ";
" | | +bb ~n:*!*@*.aol.com ~n:nick*!*@* ";
"-----------------------------------------------------------------------------------";
" | | If a user matches this, he may not join the channel. ";
" ~j | join | He may perform all other activities if he is already on ";
" | | the channel, such as speaking and changing his nick. ";
"-----------------------------------------------------------------------------------";
" | | Bypass message restrictions. This extended ban is only ";
" | | available as +e and not as +b. Syntax: +e ~m:type:mask. ";
" | | Valid types: 'external' (bypass +n), 'censor' (bypass +G),";
" | | 'moderated' (bypass +m/+M), 'color' (bypass +S/+c), and ";
" ~m | msgbypass | 'notice' (bypass +T). Some examples: ";
" | | +e ~m:moderated:*!*@192.168.* Allow IP to bypass +m ";
" | | +e ~m:external:*!*@192.168.* Allow IP to bypass +n ";
" | | +e ~m:color:~a:ColorBot Allow account 'ColorBot' ";
" | | to bypass +c ";
" ==------------------------------------------------------------------------------==";
" -";
" These bantypes introduce new criteria which can be used:";
" ==-Type--------Name---------------------------Explanation-----------------------==";
" | | If a user is logged in to services with this account ";
" | | name, then this ban will match. ";
" | | This is slightly different than ~R in the sense that a ";
" ~a | account | user with nick ABC may be logged in under account XYZ. ";
" | | Not all services packages support this, in which case ";
" | | you will have to use ~R instead. ";
" | | Example: +e ~a:Name ";
"-----------------------------------------------------------------------------------";
" | | If the user is in this channel then (s)he is unable to ";
" | [prefix] | join. A prefix can also be specified (+/%/@/&/~) which ";
" | | join. A prefix can also be specified (+/%/@/&/~) which ";
" ~c | channel | means that it will only match if the user has that ";
" | | rights or higher on the specified channel. ";
" | | Example: +b ~c:#lamers, +e ~c:@#trusted ";
"-----------------------------------------------------------------------------------";
" | | If the user is an IRCOp and is logged in with an oper ";
" | | block with a matching oper::operclass name then this ";
" ~O | operclass | will match. This way you can create channels which only ";
" | | specific type(s) of opers may join. Set +i and use +I. ";
" | | Example: +iI ~O:*admin* ";
"-----------------------------------------------------------------------------------";
" | | If the realname of a user matches this then (s)he is ";
" | | unable to join. ";
" ~r | realname | Example: +b ~r:*Stupid_bot_script* ";
" | | NOTE: an underscore ('_') matches both a space (' ') and";
" | | an underscore ('_'), so this ban would ";
" | | match 'Stupid bot script v1.4'. ";
"-----------------------------------------------------------------------------------";
" | | If a user has identified to services (usually NickServ) ";
" | | and matches this nickname, then this ban will match. ";
" | | This means this ban is really only useful for ban ";
" ~R | registered | exemptions (+e). Example: +e ~R:Nick ";
" | | Will allow Nick in the channel, regardless of other ";
" | | bans, if he identified to NickServ and is using the ";
" | | nickname Nick. ";
"-----------------------------------------------------------------------------------";
" | | When a user is using SSL/TLS with a client certificate ";
" | | then you can match the user by his/her SSL fingerprint ";
" ~S | certfp | (the one you see in /WHOIS). Mostly useful for safe ";
" | | ban exceptions and invite exceptions. ";
" | | Example: +iI ~S:00112233445566778899aabbccddeeff..etc.. ";
"-----------------------------------------------------------------------------------";
" | | Channel-specific text filtering. Supports two actions: ";
" ~T | textban | 'censor' and 'block'. Two examples: ";
" | | +b ~T:censor:*badword* and +b ~T:block:*something* ";
" ==------------------------------------------------------------------------------==";
" -";
"You may stack extended bans from the 2nd group with the 3rd group.";
"For example +b ~q:~c:#lamers would quiet all users who are also in #lamers.";
"Bans from the 3rd group may also be used for invite exceptions (+I),";
"such as +I ~c:@#trusted and +I ~a:accountname.";
};
help Chmodef {
@@ -249,45 +305,6 @@ help Chmodef {
" time (in minutes) after which the specific action will be reversed.";
};
help Oflags {
" Here you will find the flags that can be placed inside of the O:Lines";
" -";
" ==-------------------------------oOo-----------------------------==";
" o (locop) Local Operator";
" O (globop) Global Operator";
" C (coadmin) Gets +C on oper up. Is Co Administrator";
" A (admin) Gets +A on oper up. Is Server Administrator";
" a (services-admin) Gets +a on oper up. Is Services Administrator";
" N (netadmin) Gets +N on oper up. Is Network Administrator";
" -";
" r (can_rehash) Access to /REHASH server";
" R (can_restart) Access to /RESTART server";
" D (can_die) Access to /DIE server";
" h (helpop) Oper receives umode +h (helpop)";
" g (can_globops) Oper can send /GLOBOPS";
" w (can_wallops) Oper can send /WALLOPS";
" n (can_localnotice) Oper can send Local Server Notices";
" G (can_globalnotice) Oper can send Global Server Notices";
" c (can_localroute) Access to do local /SQUITs and /CONNECTs";
" L (can_globalroute) Access to do global /SQUITs and /CONNECTs";
" k (can_localkill) Access to do local /KILLs";
" K (can_globalkill) Access to do global /KILLs";
" b (can_kline) Oper can /KLINE users from server";
" B (can_unkline) Oper can remove Klines";
" z (can_zline) Can add Z:Lines";
" Z (can_gzline) Can add global Z:Lines";
" t (can_gkline) Can use /GLINE, /SHUN and /SPAMFILTER";
" v (can_override) Can use OperOverride";
" q (can_setq) Can use +q";
" H (get_host) Gets +x on oper up";
" W (get_umodew) Gets +W on oper up";
" X (can_addline) Can use /ADDLINE";
" d (can_dccdeny) Can use /DCCDENY";
" ==-------------------------------oOo-----------------------------==";
};
help Nick {
" Changes your \"Online Identity\" on a server.";
" All those in the channel you are in will be";
@@ -351,6 +368,7 @@ help Who {
" H - User is not /away (here)";
" r - User is using a registered nickname";
" B - User is a bot (+B)";
" s - User is securely connected (SSL/TLS)";
" * - User is an IRC Operator";
" ~ - User is a Channel Owner (+q)";
" & - User is a Channel Admin (+a)";
@@ -509,7 +527,7 @@ help Stats {
help Links {
" Lists all of the servers currently linked to the network.";
" Only IRCops can see linked U:lined servers.";
" Only IRCops can see linked U-Lined servers.";
" -";
" Syntax: LINKS";
};
@@ -745,40 +763,18 @@ help Wallops {
" Syntax: WALLOPS <message>";
};
help Globops {
" Sends a global \"Message\" to all IRCops. Only viewable by IRCops";
" (unlike WALLOPS, which can be viewed by normal users).";
" -";
" Syntax: GLOBOPS <message>";
" Example: GLOBOPS Lets get em clones ..";
};
help Locops {
" Sends a message to all IRCops at this server (local).";
" -";
" Syntax: LOCOPS <message>";
" Example: LOCOPS Gonna k:line that user ...";
" Example: LOCOPS Gonna K-Line that user ...";
};
help Chatops {
help Globops {
" Sends a message to all ircops (global).";
" -";
" Syntax: CHATOPS <message>";
" Example: CHATOPS Gonna k:line that user ...";
};
help Adchat {
" Sends a message to all online Admins";
" -";
" Syntax: ADCHAT <text>";
" Example: ADCHAT Hey guys! I'm finally here.";
};
help Nachat {
" Sends a message to all online NetAdmins";
" -";
" Syntax: NACHAT <text>";
" Example: NACHAT Hey guys! How is everything?";
" Syntax: GLOBOPS <message>";
" Example: GLOBOPS Gonna K-Line that user ...";
};
help Kill {
@@ -790,49 +786,69 @@ help Kill {
};
help Kline {
" This command provides timed K:Lines. If you match a K:Line you cannot";
" This command provides timed K-Lines. If you match a K-Line you cannot";
" connect to the server";
" A time of 0 in the KLINE makes it permanent (Never Expires).";
" You may also specify the time in the format 1d10h15m30s.";
" IRC Operator only command.";
" -";
" Syntax: KLINE <hostmask or nick> [time] <reason> (adds a Kline)";
" KLINE -<hostmask> (removes a Kline)";
" Example: KLINE *@*.aol.com Abuse (Adds a permanent K:line)";
" KLINE *@*.someisp.com 2d Abuse (Adds a K:line for 2 days)";
" Syntax: KLINE <hostmask or nick> [time] <reason> (adds a K-Line)";
" KLINE -<hostmask> (removes a K-Line)";
" Example: KLINE *@*.aol.com Abuse (Adds a permanent K-Line)";
" KLINE *@*.someisp.com 2d Abuse (Adds a K-Line for 2 days)";
" KLINE Idiot 1d Please go away";
" KLINE -*@*.aol.com";
" -";
" Soft actions (more info at https://www.unrealircd.org/docs/Actions)";
" Syntax: KLINE %<hostmask or nick> [time] <reason> (adds a soft K-Line)";
" KLINE -%<hostmask> (removes a soft K-Line)";
" Example: KLINE %*@*.aol.com Abuse (Adds a permanent soft K-Line)";
" KLINE %*@*.someisp.com 2d Abuse (Adds a soft K-Line for 2 days)";
" KLINE %Idiot 1d Please go away";
" KLINE -%*@*.aol.com";
};
help Zline {
" This command provides timed Z:Lines. If you match a Z:Line you cannot";
" This command provides timed Z-Lines. If you match a Z-Line you cannot";
" connect to the server";
" A time of 0 in the ZLINE makes it permanent (Never Expires).";
" You may also specify the time in the format 1d10h15m30s.";
" IRC Operator only command.";
" -";
" Syntax: ZLINE <*@ipmask> [time] <reason> (adds a Zline)";
" ZLINE -<*@ipmask> (removes a Zline)";
" Example: ZLINE *@127.0.0.1 Abuse (Adds a permanent Z:line)";
" ZLINE *@127.0.0.1 2d Abuse (Adds a Z:line for 2 days)";
" Syntax: ZLINE <*@ipmask> [time] <reason> (adds a Z-Line)";
" ZLINE -<*@ipmask> (removes a Z-Line)";
" Example: ZLINE *@127.0.0.1 Abuse (Adds a permanent Z-Line)";
" ZLINE *@127.0.0.1 2d Abuse (Adds a Z-Line for 2 days)";
" ZLINE -*@127.0.0.1";
" NOTE: requires the can_zline oper flag";
};
help Gline {
" This command provides timed G:Lines. If you match a G:Line you cannot";
" This command provides timed G-Lines. If you match a G-Line you cannot";
" connect to ANY server on the IRC network";
" A time of 0 in the GLINE makes it permanent (Never Expires).";
" You may also specify the time in the format 1d10h15m30s.";
" IRC Operator only command.";
" -";
" Syntax: GLINE <user@host mask or nick> [time] <reason>";
" (Adds a G:line for user@host)";
" GLINE -<user@host mask> (Removes a G:line for user@host)";
" Example: GLINE *@*.idiot.net 900 Spammers (Adds a 15 min G:line)";
" GLINE *@*.idiot.net 1d5h Spammers (Adds a 29 hour G:line)";
" (Adds a G-Line for user@host)";
" GLINE -<user@host mask> (Removes a G-Line for user@host)";
" Example: GLINE *@*.idiot.net 900 Spammers (Adds a 15 min G-Line)";
" GLINE *@*.idiot.net 1d5h Spammers (Adds a 29 hour G-Line)";
" GLINE Idiot 1d Abuse";
" GLINE -*@*.idiot.net";
" -";
" Soft Actions (More info at https://www.unrealircd.org/docs/Actions)";
" -";
" Syntax: GLINE %<user@host mask or nick> [time] <reason>";
" (Adds a G-Line for user@host, but still allows the connection if the";
" user has a registered account and identifies using SASL)";
" GLINE -%<user@host mask> (Removes a soft G-Line for user@host)";
" Example: GLINE %*@*.idiot.net 900 Spammers (Adds a 15 min soft G-Line)";
" GLINE %*@*.idiot.net 1d5h Spammers (Adds a 29 hour soft G-Line)";
" GLINE %Idiot 1d Abuse";
" GLINE -%*@*.idiot.net";
" -";
" NOTE: requires the can_gkline oper flag";
};
@@ -842,7 +858,7 @@ help Shun {
" A time of 0 in the SHUN makes it permanent (Never Expires).";
" You may also specify the time in the format 1d10h15m30s.";
" IRC Operator only command.";
" -");
" -";
" Syntax: SHUN <nickname> <time> :<Reason> (Shun the nickname for time in seconds)";
" SHUN +<user@host> <time> :<Reason>(Shun the user@host for time in seconds)";
" SHUN -<user@host> (Removes the SHUN for user@host)";
@@ -855,53 +871,39 @@ help Shun {
};
help Gzline {
" This command provides timed global Z:line. If you match a Global Z:Line you cannot";
" This command provides timed global Z-Line. If you match a Global Z-Line you cannot";
" connect to ANY server on the IRC network";
" A time of 0 in the GZLINE makes it permanent (Never Expires).";
" You may also specify the time in the format 1d10h15m30s.";
" IRC Operator only command.";
" -";
" Syntax: GZLINE <*@ipmask> <seconds to be banned> :<reason>";
" (Adds a Global Z:line for *@ipmask)";
" GZLINE -<*@ipmask> (Removes a Global Z:line for *@ipmask)";
" Example: GZLINE *@4.16.200.* 900 Spammers (Adds a 15 min Global Z:line)";
" GZLINE *@4.16.200.* 1d5h Spammers (Adds a 29 hour Global Z:line)";
" (Adds a Global Z-Line for *@ipmask)";
" GZLINE -<*@ipmask> (Removes a Global Z-Line for *@ipmask)";
" Example: GZLINE *@4.16.200.* 900 Spammers (Adds a 15 min Global Z-Line)";
" GZLINE *@4.16.200.* 1d5h Spammers (Adds a 29 hour Global Z-Line)";
" NOTE: requires the can_gzline oper flag";
};
help Akill {
" Adds an Autokill for the specific host mask. This prevents";
" any user from that hostmask from connecting to the network.";
" THIS IS A DEPRICATED COMMAND AND ONLY ACCEPTED FROM SERVERS";
" -";
" Syntax: AKILL <user@host> :<Reason>";
" Example: AKILL foo@aol.com :Spammers!";
};
help Rakill {
" Removes an AKILL that was previously set.";
" THIS IS A DEPRICATED COMMAND AND ONLY ACCEPTED FROM SERVERS";
" -";
" Syntax: RAKILL <user@host>";
};
help Rehash {
" Prompts the server to reread the configuration files.";
" IRC Operator only command.";
" -";
" Syntax: REHASH <servername> -<flags>";
" REHASH -<flags>";
" Syntax: REHASH <servername> [flag]";
" REHASH -global [flag]";
" REHASH [flag]";
" -";
" If servername and flags are not specified this rehashes the";
" unrealircd.conf , removing any temporary k:lines.";
" If servername is specified, this is used to rehash config files on servername.";
" Only NetAdmins may specify a server name.";
" If servername and flag are not specified this rehashes the";
" unrealircd.conf, and re-reads all MOTD, BOTMOTD, OPERMOTD and RULES files.";
" If servername is specified, this is used to rehash the remote server.";
" If -global is specified, then all servers on the network are rehashed.";
" -";
" The flags are used to rehash other config files, valid flags are:";
" -motd - Rehashes all MOTD files and RULES files (including tld{})";
" -opermotd - Rehashes the OPERMOTD";
" -botmotd - Rehashes the BOTMOTD";
" -dns - Reinitializes and reloads the resolver";
" -garbage - Force garbage collection";
" -motd - Only re-read all MOTD, BOTMOTD, OPERMOTD and RULES files";
" (including those in tld{} blocks)";
" -ssl - Reloads SSL certificates";
};
help Restart {
@@ -977,8 +979,8 @@ help Squit {
" Usually used in routing of servers.";
" IRC Operator only command.";
" -";
" Syntax: SQUIT <server>";
" Example: SQUIT leaf.*";
" Syntax: SQUIT <server> [reason]";
" Example: SQUIT leaf.server.net bye";
};
help Connect {
@@ -988,8 +990,8 @@ help Connect {
" -";
" Syntax: CONNECT <server> [port]";
" CONNECT <leaf> <port> <hub>";
" Example: CONNECT leaf.*";
" CONNECT leaf.* 6667 hub.*";
" Example: CONNECT leaf.server.net";
" CONNECT leaf.server.net 6667 hub.server.net";
};
help Dccdeny {
@@ -1035,12 +1037,6 @@ help Samode {
" Example: SAMODE #Support +m";
};
help Rping {
" This will calculate the Lag (In milliseconds) between servers";
" -";
" Syntax: RPING <servermask>";
};
help Trace {
" You can use TRACE on servers or users.";
" When used on a user it will give you class and lag info.";
@@ -1069,35 +1065,34 @@ help Sdesc {
};
help Mkpasswd {
" This command will return a 'hash' of the string that has been specified,";
" you can use this hash for any encrypted passwords in your configuration file:";
" eg: for oper::password, vhost::password, etc.";
" Available types (in order of 'secureness'):";
" *NIX: crypt, md5, sha1 [*], ripemd160 [*]";
" Windows: crypt [*], md5, sha1, ripemd160 [*]";
" [*: only available if compiled with SSL support]";
" This command will return a 'hash' of the string that has been specified.";
" You can use this hash for any encrypted passwords in your configuration";
" file, such as for oper::password, vhost::password, etc.";
" See https://www.unrealircd.org/docs/Authentication_types for a list of";
" types and general recommendations.";
" -";
" Syntax: MKPASSWD <method> <password>";
" Example: MKPASSWD md5 IamTeh1337";
" Example: MKPASSWD argon2 IamTeh1337";
};
help Module {
" This will give you a list of all modules loaded.";
" Depending on whether you are a normal user or an oper";
" it will give different output.";
" -- normal user: --";
" Syntax of command: MODULE";
" Output of command: *** name - (description) [3RD]";
" the [3RD] flag is present if it's an 3rd party module.";
" -- ircop: -- ";
" Syntax of command: MODULE [server]";
" Output of command: *** name - version (description) [optional flags]";
" flags can be:";
" [PERM]: permanent module (not possible to unload/reload)";
" [Unloading]: module is in the process of unloading";
" [3RD] 3rd party module";
" [OLD?] Lacking Mod_Version, forgot to recompile an old beta* module?";
" Additionally you'll see a list of which hooks and command";
" This will show the list of modules loaded on the server.";
" By default it will only list 3rd party modules, unless you use -all";
" -";
" Syntax: MODULE [-all] [server]";
" Example: MODULE";
" -";
" The output depends on whether you are a normal user or IRCOp:";
" -- Normal user --";
" *** name - (description) [3RD]";
" The [3RD] flag is present if it's a 3rd party module.";
" -- IRCOp -- ";
" *** name - version (description) [optional flags]";
" The optional flags may contain:";
" [PERM]: Permanent module, not possible to unload/reload.";
" [PERM-BUT-RELOADABLE]: Module can be reloaded but not unloaded.";
" [3RD] 3rd party module, module is not part of UnrealIRCd.";
" Additionally you will see a list of which hooks and command";
" overrides are present (the hook number can be looked up in";
" include/modules.h).";
};
@@ -1120,26 +1115,9 @@ help Tsctl {
" TSCTL SVSTIME <timestamp> (Sets the Time on all Servers)";
};
help Htm {
" Switches the server In & Out of High Traffic Mode";
" HTM is activated when the server is receiving extremely high amounts of information.";
" IRC Operator only command.";
" -";
" Syntax: HTM [option]";
" -";
" If no option is specified it just displays the current HTM state";
" If an option is specified it does a more specific task, valid options are:";
" -";
" ON - Force HTM to activate";
" OFF - Force HTM to deactivate";
" NOISY - Make HTM announce when it is entering/leaving HTM";
" QUIET - Stop HTM from announcing when it is entering/leaving HTM";
" TO <value> - Tell HTM at what incoming rate to activate HTM";
};
help Svsnick {
" Changes the nickname of the user in question.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Syntax: SVSNICK <nickname> <new nickname> <timestamp>";
" Example: SVSNICK hAtbLaDe Foobar 963086432";
@@ -1147,7 +1125,7 @@ help Svsnick {
help Svsmode {
" Changes the mode of the User in question.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Syntax: SVSMODE <nickname> <usermode>";
" Example: SVSMODE hAtbLaDe +i";
@@ -1155,7 +1133,7 @@ help Svsmode {
help Svskill {
" Forcefully disconnects a user from the network.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Syntax: SVSKILL <user> :<reason>";
" Example: SVSKILL Lamer21 :Goodbye";
@@ -1164,15 +1142,15 @@ help Svskill {
help Svsnoop {
" Enables or disables whether IRCop functions";
" exist on the server in question or not.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Syntax: SVSNOOP <server> <+/->";
" Example: SVSNOOP leaf.* -";
" Example: SVSNOOP leaf.server.net -";
};
help Svsjoin {
" Forces a user to join a channel.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Syntax: SVSJOIN <nick> <channel>[,<channel2>..] [key1[,key2[..]]]";
" Example: SVSJOIN hAtbLaDe #jail";
@@ -1181,7 +1159,7 @@ help Svsjoin {
help Svspart {
" Forces a user to leave a channel.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Syntax: SVSPART <nick> <channel>[,<channel2>..] [<comment>]";
" Example: SVSPART hAtbLaDe #Hanson";
@@ -1190,18 +1168,18 @@ help Svspart {
};
help Svso {
" Gives nick Operflags like the ones in O:lines.";
" Gives nick Operflags like the ones in O-Lines.";
" Remember to set SVSMODE +o and alike.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Syntax: SVSO <nick> <+operflags> (Adds the Operflags)";
" SVSO <nick> - (Removes all O:Line flags)";
" SVSO <nick> - (Removes all O-Line flags)";
" Example: SVSO SomeNick +bBkK";
};
help Swhois {
" Changes the WHOIS message of the Nickname.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Syntax: SWHOIS <nick> :<message> (Sets the SWHOIS)";
" SWHOIS <nick> : (Resets the SWHOIS)";
@@ -1210,7 +1188,7 @@ help Swhois {
help Sqline {
" Bans a Nickname or a certain Nickname mask from the Server.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Syntax: SQLINE <nickmask> :<Reason>";
" Example: SQLINE *Bot* :No bots";
@@ -1218,7 +1196,7 @@ help Sqline {
help Unsqline {
" Un-Bans a Nickname or Nickname mask";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Synax: UNSQLINE <nickmask>";
" Example: UNSQLINE *Bot*";
@@ -1227,7 +1205,7 @@ help Unsqline {
help Svs2mode {
" Changes the Usermode of a nickname and displays";
" the change to the user.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Syntax: SVS2MODE <nickname> <usermodes>";
" Example: SVS2MODE hAtbLaDe +h";
@@ -1235,7 +1213,7 @@ help Svs2mode {
help Svsfline {
" Adds the given Filename mask to DCCDENY";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Syntax: :server SVSFLINE + file :reason (Add the filename)";
" :server SVSFLINE - file (Deletes the filename)";
@@ -1244,7 +1222,7 @@ help Svsfline {
help Svsmotd {
"Changes the Services Message Of The Day";
"Must be sent through an U:Lined server.";
"Must be sent through an U-Lined server.";
"Syntax: SVSMOTD # :<text> (Adds to Services MOTD)";
" SVSMOTD ! (Deletes the MOTD)";
" SVSMOTD ! :<text> (Deletes and Adds text)";
@@ -1253,7 +1231,7 @@ help Svsmotd {
help Svsnline {
" Adds a global realname ban.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" The reason must be a single parameter therefore";
" spaces are indicated by _, Unreal will internally";
" translate these to spaces.";
@@ -1268,7 +1246,7 @@ help Svslusers {
" Changes the global and/or local maximum user count";
" for a server. If -1 is specified for either of the";
" values, the current value is kept.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Syntax: SVSLUSERS <server> <globalmax|-1> <localmax|-1>";
" Example: SVSLUSERS irc.test.com -1 200";
@@ -1276,14 +1254,14 @@ help Svslusers {
help Svswatch {
" Changes the WATCH list of a user.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" Syntax: SVSWATCH <nick> :<watch parameters>";
" Example: SVSWATCH Blah :+Blih!*@* +Bluh!*@* +Bleh!*@*.com";
};
help Svssilence {
" Changes the SILENCE list of a user.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" In contrast to the SILENCE command, you can add/remove";
" multiple entries in one line.";
" Syntax: SVSSILENCE <nick> :<silence parameters>";
@@ -1292,7 +1270,7 @@ help Svssilence {
help Svssno {
" Changes the snomask of the User in question.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Syntax: SVSSNO <nickname> <snomasks>";
" Example: SVSSNO joe +Gc";
@@ -1301,7 +1279,7 @@ help Svssno {
help Svs2sno {
" Changes the snomask of a nickname and displays";
" the change to the user.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Syntax: SVS2SNO <nickname> <snomasks>";
" Example: SVS2SNO joe +Gc";
@@ -1309,7 +1287,7 @@ help Svs2sno {
help Svsnolag {
" Enable 'no fake lag' for a user.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Syntax: SVSNOLAG [+|-] <nickname>";
" Example: SVSNOLAG + joe";
@@ -1317,7 +1295,7 @@ help Svsnolag {
help Svs2nolag {
" Enable 'no fake lag' for a user.";
" Must be sent through an U:Lined server.";
" Must be sent through an U-Lined server.";
" -";
" Syntax: SVS2NOLAG [+|-] <nickname>";
" Example: SVS2NOLAG + joe";
@@ -1327,7 +1305,11 @@ help Spamfilter {
" This command adds/removes global spam filters.";
" Spamfilters can be used to get rid of spam, advertising, bots, etc.";
" -";
" Use: /spamfilter [add|del|remove|+|-] [type] [action] [tkltime] [reason] [regex]";
" Use: /spamfilter [add|del|remove|+|-] [method] [type] [action] [tkltime] [reason] [string]";
" [method] Matching method, must be one of:";
" -regex (PCRE fast regex),";
" -posix (old 3.2.x POSIX regex), or";
" -simple (fastest but only supports ? and * wildcards)";
" [type] specifies the target type, you can specify multiple targets:";
" 'c' channel msg, 'p' private msg, 'n' private notice,";
" 'N' channel notice, 'P' part msg, 'q' quit msg, 'd' dcc,";
@@ -1337,22 +1319,22 @@ help Spamfilter {
" 'kline', 'gline', 'zline', 'gzline', 'block' (blocks the msg),";
" 'dccblock' (unable to send any dccs), 'viruschan' (part all channels";
" and join the virus help chan), 'warn' (warn for IRC Operators).";
" [regex] this is the actual regex where we should block on";
" [string] this is the actual string that should be blocked (regex or simple pattern)";
" [tkltime] the duration of the *LINEs placed by action (use '-' to use the default";
" set::spamfilter::ban-time, this value is ignored for block/tempshun');";
" [reason] the reason for the *LINE or blockmsg, CANNOT CONTAIN SPACES,";
" '_' will be translated to spaces. Again, if you use '-' for this";
" the default (set::spamfilter::ban-reason) is used.";
" - ";
" A few examples (note they will probably linewrap!):";
" /spamfilter add p block - - Come watch me on my webcam";
" /spamfilter add p block - Possible_virus_detected,_join_#help Come watch me on my webcam";
" /spamfilter add p tempshun - - You_are_infected me\.mpg";
" /spamfilter add p gline - - Come watch me on my webcam";
" /spamfilter add p gline 3h Please_go_to_www.viruscan.xx/nicepage/virus=blah Come watch me on my webcam";
" /spamfilter add p kill - Please_go_to_www.viruscan.xx/nicepage/virus=blah Come watch me on my webcam";
" /spamfilter del p block - - Come watch me on my webcam*";
" /spamfilter add cN gzline 1d No_advertising_please come to irc\..+\..+";
" A few examples (note they will probably line-wrap!):";
" /spamfilter add -simple p block - - Come watch me on my webcam";
" /spamfilter add -simple p block - Possible_virus_detected,_join_#help Come watch me on my webcam";
" /spamfilter add -simple p tempshun - - You_are_infected me.mpg";
" /spamfilter add -simple p gline - - Come watch me on my webcam";
" /spamfilter add -simple p gline 3h Please_go_to_www.viruscan.xx/nicepage/virus=blah Come watch me on my webcam";
" /spamfilter add -simple p kill - Please_go_to_www.viruscan.xx/nicepage/virus=blah Come watch me on my webcam";
" /spamfilter del -simple p block - - Come watch me on my webcam*";
" /spamfilter add -regex cN gzline 1d No_advertising_please /come to irc\..+\..+/";
};
help Tempshun {
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+211
View File
@@ -0,0 +1,211 @@
/* This file will load (nearly) all modules available on UnrealIRCd.
* So all commands, channel modes, user modes, etc..
*
* If you want to have all UnrealIRCd functionality, then include this
* file from your unrealircd.conf by using:
* include "modules.default.conf";
*
* DO NOT EDIT THIS FILE! IT WILL BE OVERWRITTEN DURING NEXT UPGRADE!!
* If you want to customize the modules to load you have two options:
* 1) Keep the include for modules.default.conf as usual and make use
* of blacklist-module "xyz"; to selectively disable modules.
* See https://www.unrealircd.org/docs/Blacklist-module_directive
* 2) OR, make a copy of this file (eg: name it modules.custom.conf)
* and edit it. Then include that file from your unrealircd.conf
* instead of this one.
* The downside of option #2 is that you will need to track changes
* in the original modules.default.conf with each new UnrealIRCd
* release to make sure you don't miss any new functionality (as new
* important modules may be added you need to add them to your conf).
* You don't have this problem with option #1.
*/
/*** Cloaking (for user mode +x) ***/
loadmodule "cloak";
/*** Commands ***/
// User commands (MINIMAL)
// These provide just the minimal set of IRC commands that are
// required by RFC1459 along with WATCH and MAP.
loadmodule "m_admin";
loadmodule "m_away";
loadmodule "m_invite";
loadmodule "m_ison";
loadmodule "m_join";
loadmodule "m_kick";
loadmodule "m_links";
loadmodule "m_list";
loadmodule "m_lusers";
loadmodule "m_map";
loadmodule "m_message";
loadmodule "m_mode";
loadmodule "m_motd";
loadmodule "m_names";
loadmodule "m_nick";
loadmodule "m_part";
loadmodule "m_pass";
loadmodule "m_pingpong";
loadmodule "m_protoctl";
loadmodule "m_quit";
loadmodule "m_rules";
loadmodule "m_topic";
loadmodule "m_user";
loadmodule "m_userhost";
loadmodule "m_watch";
loadmodule "m_who";
loadmodule "m_whois";
loadmodule "m_whowas";
// User commands (EXTENDED)
// These are commands that provide extended functionality.
loadmodule "m_botmotd";
loadmodule "m_cap";
loadmodule "m_cycle";
loadmodule "m_dccallow";
loadmodule "m_help";
loadmodule "m_knock";
loadmodule "m_lag";
loadmodule "m_sasl";
loadmodule "m_setname";
loadmodule "m_silence";
loadmodule "m_starttls";
loadmodule "m_time";
loadmodule "m_userip";
loadmodule "m_vhost";
// IRC Operator commands
// Note: several of these like m_kill are also server-to-server commands
// which are required if you link to other servers.
loadmodule "m_addmotd";
loadmodule "m_addomotd";
loadmodule "m_chghost";
loadmodule "m_chgident";
loadmodule "m_chgname";
loadmodule "m_close";
loadmodule "m_connect";
loadmodule "m_squit";
loadmodule "m_dccdeny";
loadmodule "m_globops";
loadmodule "m_kill"; /* also server-to-server */
loadmodule "m_locops";
loadmodule "m_mkpasswd";
loadmodule "m_oper";
loadmodule "m_opermotd";
loadmodule "m_sajoin";
loadmodule "m_samode";
loadmodule "m_sapart";
loadmodule "m_sdesc";
loadmodule "m_sethost";
loadmodule "m_setident";
loadmodule "m_stats";
loadmodule "m_tkl"; /* also server-to-server */
loadmodule "m_trace";
loadmodule "m_tsctl";
loadmodule "m_undccdeny";
loadmodule "m_unsqline";
loadmodule "m_wallops";
loadmodule "jumpserver";
// Server-to-server commands
// Don't remove these, unless you never link to other servers.
loadmodule "m_eos";
loadmodule "m_md";
loadmodule "m_netinfo";
loadmodule "m_server";
loadmodule "m_sjoin";
loadmodule "m_sqline";
loadmodule "m_swhois";
loadmodule "m_umode2";
loadmodule "m_sinfo";
// Services commands
// You could disable these if you don't use Services
// https://www.unrealircd.org/docs/Services
loadmodule "m_sendsno";
loadmodule "m_sendumode";
loadmodule "m_svsfline";
loadmodule "m_svsjoin";
loadmodule "m_svskill";
loadmodule "m_svslusers";
loadmodule "m_svsmode";
loadmodule "m_svsmotd";
loadmodule "m_svsnick";
loadmodule "m_svsnline";
loadmodule "m_svsnolag";
loadmodule "m_svsnoop";
loadmodule "m_svspart";
loadmodule "m_svssilence";
loadmodule "m_svssno";
loadmodule "m_svswatch";
/*** Channel modes ***/
loadmodule "chanmodes/floodprot"; /* +f */
loadmodule "chanmodes/nocolor"; /* +c */
loadmodule "chanmodes/noctcp"; /* +C */
loadmodule "chanmodes/stripcolor"; /* +S */
loadmodule "chanmodes/issecure"; /* +Z */
loadmodule "chanmodes/permanent"; /* +P */
loadmodule "chanmodes/link"; /* +L */
loadmodule "chanmodes/censor"; /* +G */
loadmodule "chanmodes/delayjoin"; /* +D */
loadmodule "chanmodes/noknock"; /* +K */
loadmodule "chanmodes/noinvite"; /* +V */
loadmodule "chanmodes/operonly"; /* +O */
loadmodule "chanmodes/nonotice"; /* +T */
loadmodule "chanmodes/regonly"; /* +R */
loadmodule "chanmodes/nonickchange"; /* +N */
loadmodule "chanmodes/nokick"; /* +Q */
loadmodule "chanmodes/regonlyspeak"; /* +M */
loadmodule "chanmodes/secureonly"; /* +z */
/*** User modes ***/
loadmodule "usermodes/bot"; /* +B (mark yourself as a bot) */
loadmodule "usermodes/servicebot"; /* +S (service bot) */
loadmodule "usermodes/noctcp"; /* +T (block CTCP's) */
loadmodule "usermodes/censor"; /* +G (censor bad words) */
loadmodule "usermodes/showwhois"; /* +W (show if someone does /WHOIS) */
loadmodule "usermodes/privacy"; /* +p (privacy, hide channels in /WHOIS) */
loadmodule "usermodes/nokick"; /* +q (unkickable oper) */
loadmodule "usermodes/regonlymsg"; /* +R (only registered users may private message you) */
loadmodule "usermodes/secureonlymsg"; /* +Z (only SSL/TLS users may private message you) */
loadmodule "usermodes/privdeaf"; /* +D (don't let other user PM you) */
/*** Server notice masks */
loadmodule "snomasks/dccreject"; /* +D (rejected DCC's) */
/*** Extended Bans ***/
loadmodule "extbans/join"; /* +b ~j (prevent only joins) */
loadmodule "extbans/quiet"; /* +b ~q (prevent only messaging) */
loadmodule "extbans/nickchange"; /* +b ~n (prevent only nick changes) */
loadmodule "extbans/realname"; /* +b ~r (ban by real name) */
loadmodule "extbans/regnick"; /* +b ~R (ban/exempt if using registered nick) */
loadmodule "extbans/account"; /* +b ~a (ban/exempt if logged in with services account) */
loadmodule "extbans/inchannel"; /* +b ~c (ban/exempt if in channel) */
loadmodule "extbans/operclass"; /* +b ~O (ban/exempt by operclass) */
loadmodule "extbans/certfp"; /* +b ~S (ban/exempt by certfp) */
loadmodule "extbans/textban"; /* +b ~T (censor or block text) */
loadmodule "extbans/msgbypass"; /* +e ~m (bypass message restrictions) */
loadmodule "extbans/timedban"; /* +b ~t (timed bans / temporary bans) */
/*** CAP modules ***/
loadmodule "cap/sts"; /* strict transport policy (set::ssl::sts-policy) */
loadmodule "cap/plaintext-policy"; /* plaintext-policy announce */
loadmodule "cap/link-security"; /* link-security announce */
/*** Other ***/
// These are modules that don't fit in any of the previous sections
loadmodule "certfp"; /* SSL certificate fingerprint in /WHOIS (& more) */
loadmodule "ssl_antidos"; /* prevent SSL DoS (renegotiate floods) */
loadmodule "m_nopost"; /* Block POST commands (Firefox XPS IRC Attack) */
loadmodule "webirc"; /* WEBIRC command. See webirc block. */
loadmodule "blacklist"; /* Blacklist support (DNSBL). See blacklist block. */
loadmodule "jointhrottle"; /* set::anti-flood::join-flood (previously chanmode +j) */
loadmodule "charsys"; /* Provides set::allowed-nickchars (must always be loaded!) */
+259
View File
@@ -0,0 +1,259 @@
/* This file will load all optional modules. These are features that
* not everyone will use or are considered experimental.
* You can include this file from your unrealircd.conf like this:
* include "modules.optional.conf";
* OR... and this is probably a better idea... you can copy-paste it
* to another file where you do your own customizations.
*
* DO NOT EDIT THIS FILE! IT WILL BE OVERWRITTEN DURING NEXT UPGRADE!!
* If you want to customize, make a copy of this file (for example
* name it modules.custom.conf) and edit it.
* Then include that file from your unrealircd.conf instead of this one.
*/
/*** Commands ***/
// This add the /IRCOPS command: A more visual way for users
// to see which IRCOps are online.
loadmodule "m_ircops";
// This adds the /STAFF command: This command simply displays
// a text file that you can configure here:
loadmodule "m_staff";
set { staff-file "network.staff"; };
/*** Channel modes ***/
// The following module ('nocodes') is not a true channel mode.
// It simply enhances the existing channel mode +S/+c to include
// stripping/blocking of bold, underline and italic text.
loadmodule "nocodes";
/*** Other ***/
// The hideserver module will hide /MAP and /LINKS to regular users.
// It does not truly enhance security as server names can still be
// seen at other places.
loadmodule "hideserver";
// The antirandom module will kill or *line users that have a nick,
// ident and/or realname that is considered "random".
// This helps to combat simple botnets/drones.
// Note that failure to set the right settings may ban innocent users.
// This is especially true if you are on a non-English network where
// the module may consider a sequence of characters "random" even though
// it is a perfectly pronounceable word in your language.
loadmodule "antirandom";
set {
antirandom {
/* THRESHOLD:
* This is pretty much the most important setting of all.
* For every randomly looking ident the user gets a certain amount of
* 'points', if this value reaches 'threshold' then the appropriate
* action is taken (killed, *lined, see later on).
* lower = more randomly looking users will be catched (but also more
* innocent users)
* higher = less chance of innocent users getting killed, but also less
* chance on bots getting catched.
* <2: DON'T!!
* 4: Works good, probably a few more innocent kills but if you got
* quite a bot problem then this might be a useful setting.
* 5: Works well with few innocent kills, probably good to begin with.
* 6: If you want to be a tad more careful
* >6: For the paranoid. Module can still be quite effective, though :)
*/
threshold 7;
/* BAN-ACTION:
* Action to take whenever the user is catched as random, options:
* warn, kill, gline, gzline, kline, zline, shun, tempshun
*/
ban-action kill;
/* BAN-TIME:
* Time to ban the user (irrelevant for tempshun/kill).
* Something between 1 hour and 2 days is recommended.
* If you set it higher than 3 or 4 days then you get quite a risk
* of catching innocent users due to dynamic IP, not to mention
* your *line list gets filled up... so choose it wisely.
*/
ban-time 4h;
/* BAN-REASON:
* The ban (or kill) reason to use.
* You might want to put in an entry to a FAQ or an email address
* where users can mail if they have been catched and don't know what to do.
* NOTE: One of the various reasons that ""innocent users"" are catched is
* if they just randomly type in info for their nick, ident, or realname.
*/
ban-reason "You look like a bot. Be sure to fill in your nick/ident/realname properly.";
/* CONVERT-TO-LOWERCASE:
* Convert nicks, idents, and realnames to lowercase before doing random checks?
* This has not been tested extensively for false positives, but might be (very)
* helpful to catch GnStA5FYhiTH51TUkf style random nicks as random.
* Enabled by default.
*/
convert-to-lowercase yes;
/* FULLSTATUS-ON-LOAD:
* If enabled, then upon loading it will check all users that are currently
* connected and give a status report about who it would have killed.
* Note that it doesn't actually kill any currently connected users, it is for
* informative purposes only.
* This can be (very) useful if you use the module for the first time.
* But you probably want to disable it after a while, since once the module
* is actively dealing with randomly looking persons, it shouldn't report any
* users anymore on load and then this check only eats useless CPU on /REHASH.
* Enabled by default.
*/
fullstatus-on-load yes;
/* SHOW-FAILEDCONNECTS:
* This will send out a notice whenever a randomly looking user has been catched
* during connecting. Obviously this can be pretty noisy.
* Especially recommended to enable during the first few days you use this module.
*/
show-failedconnects yes;
/* EXCEPT-HOSTS:
* Hostmasks on this list are matched against the IP and hostname of the connecting
* user. If it matches then we do not check if the nick/ident/realname is random.
* NOTE: Use the REAL host or IP here, not any cloaked hosts!
*/
except-hosts {
mask 192.168.*;
mask 127.*;
};
/* EXCEPT-WEBIRC:
* This will make antirandom not check connections from WEBIRC gateways.
* ( see https://www.unrealircd.org/docs/WebIRC_block )
* It seems WEBIRC connections frequently cause false positives so the
* default is 'yes'.
*/
except-webirc yes;
};
};
// This adds websocket support. For more information, see:
// https://www.unrealircd.org/docs/WebSocket_support
loadmodule "websocket";
// This adds support for WHOX
// This is currently experimental!
loadmodule "m_whox";
// This module will detect and stop spam containing of characters of
// mixed "scripts", where (for example) some characters are in
// Latin script and other characters are in Cyrillic script.
loadmodule "antimixedutf8";
set {
antimixedutf8 {
/* Take action at this 'score'.
* 10 is a good and safe default.
*/
score 10;
/* Action to take, see:
* https://www.unrealircd.org/docs/Actions
*/
ban-action block;
/* Block/kill/ban reason (sent to user) */
ban-reason "Possible mixed character spam";
/* Duration of ban (does not apply to block/kill) */
ban-time 4h; // For other types
};
};
// This provides an authentication prompt if a user is forced to
// authenticate due to a 'require authentication' block or for
// some other reason. It tells them to use SASL or type /AUTH user:pass
// See also the following article for more general information:
// https://www.unrealircd.org/docs/Authentication
// NOTE: This feature is currently experimental.
loadmodule "authprompt";
set {
authentication-prompt {
/* Enabled or not? */
enabled yes;
message "The server requires clients from this IP address to authenticate with a registered nickname and password.";
message "Please reconnect using SASL, or authenticate now by typing: /QUOTE AUTH nick:password";
/* As you can see you can have multiple 'message' items.
* It may be useful to refer to a webpage for more
* information and/or where users can register their nick.
*/
//fail-message "Authentication failed";
/* Multiple fail-message lines are also supported */
};
};
// If you use the authprompt module then you may want to raise the
// timeout in which users must complete the handshake.
// By uncommenting the following, you can raise it from 30 to 60 seconds:
// set { handshake-timeout 60s; };
/*
* The following will configure connection throttling of "unknown users".
*
* When UnrealIRCd detects a high number of users connecting from IP addresses
* that have not been seen before, then connections from new IP's are rejected
* above the set rate. For example at 10:60 only 10 users per minute can connect
* that have not been seen before. Known IP addresses can always get in,
* regardless of the set rate. Same for users who login using SASL.
*
* See also https://www.unrealircd.org/docs/Connthrottle
* Or just keep reading the default configuration below:
*/
loadmodule "reputation";
loadmodule "connthrottle";
set {
connthrottle {
/* First we must configure what we call "known users".
* By default these are users on IP addresses that have
* a score of 24 or higher. A score of 24 means that the
* IP was connected to this network for at least 2 hours
* in the past month (or minimum 1 hour if registered).
* The sasl-bypass option is another setting. It means
* that users who authenticate to services via SASL
* are considered known users as well.
* Users in the "known-users" group (either by reputation
* or by SASL) are always allowed in by this module.
*/
known-users {
minimum-reputation-score 24;
sasl-bypass yes;
};
/* New users are all users that do not belong in the
* known-users group. They are considered "new" and in
* case of a high number of such new users connecting
* they are subject to connection rate limiting.
* By default the rate is 20 new local users per minute
* and 30 new global users per minute.
*/
new-users {
local-throttle 20:60;
global-throttle 30:60;
};
/* This configures when this module will NOT be active.
* The default settings will disable the module when:
* - The reputation module has been running for less than
* a week. If running less than 1 week then there is
* insufficient data to consider who is a "known user".
* - The server has just been booted up (first 3 minutes).
*/
disabled-when {
reputation-gathering 1w;
start-delay 3m;
};
};
};
+140
View File
@@ -0,0 +1,140 @@
/* This file defines a number of default operclass blocks which you can
* use in your oper blocks (via oper::operclass).
*
* This file is normally included from your unrealircd.conf through:
* include "operclass.default.conf";
*
* The operclass block is extensively documented at:
* https://www.unrealircd.org/docs/Operclass_block
* And the permissions itself (operclass::permissions) at:
* https://www.unrealircd.org/docs/Operclass_permissions
*
* DO NOT EDIT THIS FILE! IT WILL BE OVERWRITTEN DURING NEXT UPGRADE!!
* Instead, if you want to change the permissions in an operclass block,
* you should copy the definition, or this entire file, to either your
* unrealircd.conf or some other file (eg: operclass.conf) that you
* you will include from your unrealircd.conf.
* Then edit it, and while doing so don't forget to change the name
* of your custom operclass block(s), so operclass <name>.
*/
/* Local IRC Operator */
operclass locop {
permissions {
chat;
channel { operonly; override { flood; }; };
client { see; };
immune;
self;
server { opermotd; info; close; module; dns; rehash; };
route { local; };
kill { local; };
server-ban {
kline;
zline { local; };
};
};
};
/* Global IRC Operator */
operclass globop {
permissions {
chat;
channel { operonly; see; override { flood; }; };
client;
immune;
self;
server { opermotd; info; close; module; dns; rehash;
remote; tsctl { view; }; };
route;
kill;
server-ban { dccdeny; shun; zline; kline; gline; };
};
};
/* Server administrator */
operclass admin {
permissions {
chat;
channel { operonly; see; override { flood; }; };
client;
immune;
self;
server { opermotd; info; close; module; dns; rehash;
remote; description; addmotd;
addomotd; tsctl { view; }; };
route;
kill;
server-ban;
};
};
/* Services Admin */
operclass services-admin {
permissions {
chat;
channel { operonly; see; override { flood; }; };
client;
immune;
self;
server { opermotd; info; close; module; dns; rehash;
remote; description; addmotd;
addomotd; tsctl { view; }; };
route;
kill;
server-ban;
sacmd;
services;
};
};
/* Network Administrator */
operclass netadmin {
permissions {
chat;
channel { operonly; see; override { flood; }; };
client;
immune;
self;
server { opermotd; info; close; module; dns; rehash;
remote; description; addmotd;
addomotd; tsctl; };
route;
kill;
server-ban;
sacmd;
services;
};
};
/* Same as 'globop' operclass, but with OperOverride capabilities added */
operclass globop-with-override {
parent globop;
permissions {
channel { operonly; see; override; };
};
};
/* Same as 'admin' operclass, but with OperOverride capabilities added */
operclass admin-with-override {
parent admin;
permissions {
channel { operonly; see; override; };
};
};
/* Same as 'services-admin' operclass, but with OperOverride capabilities added */
operclass services-admin-with-override {
parent services-admin;
permissions {
channel { operonly; see; override; };
};
};
/* Same as 'netadmin' operclass, but with OperOverride capabilities added */
operclass netadmin-with-override {
parent netadmin;
permissions {
channel { operonly; see; override; };
};
};
+154
View File
@@ -0,0 +1,154 @@
/*
* This configuration file contains example spamfilter rules.
* They are real rules that were useful a long time ago.
* Since 2005 these rules are no longer maintained.
* The main purpose nowadays is to serve as an example
* to give you an idea of how powerful spamfilters can
* be in real-life situations.
*
* Documentation on spamfilter is available at:
* https://www.unrealircd.org/docs/Spamfilter
*/
/* General note:
* If you want to use a \ in a spamfilter, or in fact
* anywhere in the configuration file, then you need
* to escape this to \\ instead.
*/
/* First some spamfilters with match-type 'simple'.
* The only matchers available are * and ?
* PRO's: very fast, easy matching: everyone can do this.
* CON's: limited ability to fine-tune spamfilters
*/
spamfilter {
match-type simple;
match "Come watch me on my webcam and chat /w me :-) http://*:*/me.mpg";
target private;
action gline;
reason "Infected by fyle trojan: see http://www.sophos.com/virusinfo/analyses/trojfylexa.html";
};
/* This signature uses a \ which has to escaped to \\ in the configuration file */
spamfilter {
match-type simple;
match "C:\\WINNT\\system32\\*.zip";
target dcc;
action block;
reason "Infected by Gaggle worm?";
};
spamfilter {
match-type simple;
match "Speed up your mIRC DCC Transfer by up to 75%*www.freewebs.com/mircupdate/mircspeedup.exe";
target private;
action gline;
reason "Infected by mirseed trojan: see http://www.sophos.com/virusinfo/analyses/trojmirseeda.html";
};
spamfilter {
match-type simple;
match "STOP SPAM, USE THIS COMMAND: //write nospam $decode(*) | .load -rs nospam | //mode $me +R";
target private;
action gline;
reason "Infected by nkie worm: see http://www.trojaninfo.com/nkie/nkie.htm";
};
/* Now spamfilters of type 'regex'.
* These use powerful regular expressions (Perl/PCRE style)
* You may have to learn more about "regex" first before you
* can use them. For example the dot ('.') has special meaning.
*/
/* This regex shows a pattern which requires 20 paramaters,
* such as "x x x x x x x x x x x x x x x x x x x x"
*/
spamfilter {
match-type regex;
match "\x01DCC (SEND|RESUME)[ ]+\"(.+ ){20}";
target { private; channel; };
action kill;
reason "mIRC 6.0-6.11 exploit attempt";
};
/* Similarly, this regex shows a pattern that matches
* against at least 225 characters in length.
*/
spamfilter {
match-type regex;
match "\x01DCC (SEND|RESUME).{225}";
target { private; channel; };
action kill;
reason "Possible mIRC 6.12 exploit attempt";
};
/* Earlier you saw an example of a $decode exploit which used
* match-type 'simple' and - indeed - the filter was quite simple.
* The following uses a regex with a similar example.
* Regular expressions are very powerful but here you can see
* that it actually complicates writing a filter quite a bit.
* With regex in this filter we need to escape the ( and all
* the dots, question marks, etc. if we want to match these
* characters in literal text.
*/
spamfilter {
match-type regex;
match "^Want To Be An IRCOp\? Try This New Bug Type: //write \$decode\(.+=.?,m\) \| \.load -rs \$decode\(.+=.?,m\)$";
target private;
action block;
reason "Spamming users with an mIRC trojan. Type '/unload -rs newb' to remove the trojan.";
};
spamfilter {
match-type regex;
match "^http://www\.angelfire\.com/[a-z0-9]+/[a-z0-9]+/[a-z_]+\.jpg <- .*!";
target private;
action block;
reason "Infected by fagot worm: see http://www.f-secure.com/v-descs/fagot.shtml";
};
/* This shows a regex which specifically matches an entire line by
* the use of ^ and $
*/
spamfilter {
match-type regex;
match "^!login Wasszup!$";
target channel;
action gline;
reason "Attempting to login to a GTBot";
};
/* An example of how to match against an IP address in text (IPv4 only) */
spamfilter {
match-type regex;
match "^!packet ([0-9]{1,3}\.){3}[0-9]{1,3} [0-9]{1,15}";
target channel;
action gline;
reason "Attempting to use a GTBot";
};
/* A slightly more complex example with a partial OR matcher (|) */
spamfilter {
match-type regex;
match "(^wait a minute plz\. i am updating my site|.*my erotic video).*http://.+/erotic(a)?/myvideo\.exe$";
target private;
action gline;
reason "Infected by some trojan (erotica?)";
};
/* In regex a \ is special and needs to be escaped to \\
* However in this configuration file, \ is also special and
* needs to be escaped to \\ as well.
* The result is that we need double escaping:
* To match a \ you need to write \\\\ in the configuration file.
*/
spamfilter {
match-type regex;
match "C:\\\\WINNT\\\\system32\\\\(notes|videos|xxx|ManualSeduccion|postal|hechizos|images|sex|avril)\.zip";
target dcc;
action dccblock;
reason "Infected by Gaggle worm";
};
File diff suppressed because it is too large Load Diff
-794
View File
@@ -1,794 +0,0 @@
/*
* example.conf by Daniel Hawton AKA Osiris (osiris@unrealircd.org).
* $Id$
*
* Works for Unreal3.2 and up
*
* Okay guys. This is the new example.conf. Its look is much like C++, kinda.
* Anyway it is time to go over this. It's hard to pick up at first, but
* with some pratice and reading you'll understand.
*
* Just copy this file to your main unrealircd dir and call it 'unrealircd.conf'.
*
* NOTE: All lines, except the opening { line, end in an ;, including the
* closing } line. The IRCd will ignore commented lines.
*
* PLEASE READ doc/unreal32docs.html! The online version is also available at:
* www.vulnscan.org/UnrealIRCd/unreal32docs.html
* It contains a lot information about the configfile: gives information about
* every block, variable, etc..
* If you try to edit this file without reading the documentation properly
* then you are pretty much guaranteed to fail!
*/
/* Type of comments */
#Comment type 1 (Shell type)
// Comment type 2(C++ style)
/* Comment type 3 (C Style) */
#those lines are ignored by the ircd.
/*
* UnrealIRCd supports modules, loading some of them is required.
* You need at least the commands module and a cloaking module.
*/
/* FOR *NIX, uncomment the following 2lines: */
//loadmodule "src/modules/commands.so";
//loadmodule "src/modules/cloak.so";
/* FOR Windows, uncomment the following 2 lines: */
//loadmodule "modules/commands.dll";
//loadmodule "modules/cloak.dll";
/*
* You can also include other configuration files.
* help.conf contains all the /helpop text. The badwords.*.conf
* files contain all the badword entries for mode +G...
* spamfilter.conf contains some good rules for current trojans.
* You probably want to include them:
*/
include "help.conf";
include "badwords.channel.conf";
include "badwords.message.conf";
include "badwords.quit.conf";
include "spamfilter.conf";
/*
* NEW: me {}
* OLD: M:Line
* me {} defines the name, description and unreal server numeric for
* this server. Syntax is as follows:
* me {
* name "server.name";
* info "Server Description";
* numeric (server numeric*);
* };
* If linking, this numeric may not be used by any other server on the network.
*/
me
{
name "irc.foonet.com";
info "FooNet Server";
numeric 1;
};
/*
* NEW: admin {}
* OLD: A:Line
* Admin gives information on the server admin. you
* may put as many lines under admin { as you wish.
* Syntax is as follows:
* admin {
* "first line";
* "second line";
* [etc]
* };
*/
admin {
"Bob Smith";
"bob";
"widely@used.name";
};
/*
* NEW: class {}
* OLD: Y:line (old was confusing)
* These define settings for classes. A class is a group setting for
* connections. Example, server connections, instead of going to a client's
* class, you direct it to the server class. Syntax is as follows
* class (class name)
* {
* pingfreq (how often to ping a user/server in seconds);
* maxclients (how many connections for this class);
* sendq (maximum send queue from a connection);
* recvq (maximum receive queue from a connection [flood control]);
* };
*/
class clients
{
pingfreq 90;
maxclients 500;
sendq 100000;
recvq 8000;
};
class servers
{
pingfreq 90;
maxclients 10; /* Max servers we can have linked at a time */
sendq 1000000;
connfreq 100; /* How many seconds between each connection attempt */
};
/*
* NEW: allow {}
* OLD: I:Line
* This defines allowing of connections...
* Basically for clients, it allows them to connect so you can have some
* control and/or set a password.
* Syntax is as follows:
* allow {
* ip (ip mask to allow);
* hostname (host mask);
* class (class to send them to [see class {}]);
* password "(password)"; (optional)
* maxperip (how many connections per ip); (optional)
* };
*/
allow {
ip *@*;
hostname *@*;
class clients;
maxperip 5;
};
/* Passworded allow line */
allow {
ip *@255.255.255.255;
hostname *@*.passworded.ugly.people;
class clients;
password "f00Ness";
maxperip 1;
};
/*
* NEW: allow channel {}
* OLD: chrestrict
* Allows a user to join a channel...
* like an except from deny channel.
* Syntax:
* allow channel {
* channel "channel name";
* };
*/
allow channel {
channel "#WarezSucks";
};
/*
* NEW: oper {}
* OLD: O:Line
* Defines an IRC Operator
* IRC operators are there to keep sanity to the server and usually keep it
* maintained and connected to the network.
* The syntax is as follows:
* oper (login) {
* class (class to put them in, if different from I, moves them to new
* class);
* from {
* userhost (ident@host);
* userhost (ident@host);
* };
* flags
* {
* (flags here*);
* };
* OR
* flags "old type flags, like OAaRD";
* };
*/
/* For a list of oper flags, see doc/unreal32docs.html#operblock
* [HIGHLY recommended to read]
*/
oper bobsmith {
class clients;
from {
userhost bob@smithco.com;
};
password "f00";
flags
{
netadmin;
can_zline;
can_gzline;
can_gkline;
global;
};
};
/*
* NEW: listen {}
* OLD: P:Line
* This defines a port for the ircd to bind to, to
* allow users/servers to connect to the server.
* Syntax is as follows:
* listen (ip number):(port number)
* {
* options {
* (options here);
* };
* };
* or for a plain
* listen: listen (ip):(port);
*
* NOTICE: for ipv6 ips (3ffe:b80:2:51d::2 etc), use listen [ip]:port;
*
* That works also.
*/
/* Options for listen:
OLD | NEW
S serversonly
C clientsonly
J java
s ssl
* standard
*/
/* NOTE ON SSL PORTS: SSL ports are pretty non-standardized,
* besides numerous high-SSL ports, some people say you should run
* it at 994 because that's the official SSL port.. but that
* requires root! Besides, port 194 is the official irc port and
* have you ever seen an ircd running on that?
* So, our suggestion is to use port 6697 for SSL, this is used by
* quite some networks and is recognized by for example StunTour.
* You are free to open up as many SSL ports as you want, but
* by (also) using 6697 you help the world standardize a bit ;).
*/
listen *:6697
{
options
{
ssl;
clientsonly;
};
};
listen *:8067;
listen *:6667;
/* NOTE: If you are on an IRCd shell with multiple IP's you are
* likely to get 'Address already in use' errors in your log
* and the ircd won't start. This means you MUST bind
* to a specific IP instead of '*', so for example:
* listen 1.2.3.4:6667;
* Obviously, replace the IP with the IP that was assigned to you.
*/
/*
* NEW: link {}
* OLD: C/N:Lines
* This defines an okay for a server connection.
* NOTE: BOTH SERVERS NEED A LINK {} SETTING TO CONNECT PROPERLY!
* Syntax is as follows:
* link (server name)
* {
* username (username, * works too);
* hostname (ip number/hostmask);
* bind-ip (What IP to bind to when connecting, or *);
* port (port to connect to, if any);
* hub (If this is a hub, * works, or servermasks it may bring in);
* [or leaf *;]
* password-connect "(pass to send)";
* password-receive "(pass we should receive)";
* class (class to direct servers into);
* options {
* (options here*);
* };
* // If we use SSL, we can choose what cipher to use in SSL mode
* // Retrieve a list by "openssl ciphers", separate ciphers with :'s
*
* ciphers "DES-CBC3-MD5";
*
* };
*/
/*
options:
OLD | NEW
S ssl
Z zip
N/A autoconnect
N/A quarantine
N/A nodnscache
*/
link hub.mynet.com
{
username *;
hostname 1.2.3.4;
bind-ip *;
port 7029;
hub *;
password-connect "LiNk";
password-receive "LiNk";
class servers;
options {
/* Note: You should not use autoconnect when linking services */
autoconnect;
ssl;
zip;
};
};
/*
*
* NEW: ulines {}
* OLD: U:Line
* U-lines give servers more power/commands, this should ONLY be set
* for services/stats servers and NEVER for normal UnrealIRCd servers!
* Syntax is as follows:
* ulines {
* (server to uline);
* (server to uline);
* [etc]
* };
*/
ulines {
services.roxnet.org;
stats.roxnet.org;
};
/*
* NEW: drpass {}
* OLD: X:Line
* This defines the passwords for /die and /restart.
* Syntax is as follows:
* drpass {
* restart "(password for restarting)";
* die "(password for die)";
* };
*/
drpass {
restart "I-love-to-restart";
die "die-you-stupid";
};
/*
* NEW: log {} OLD: N/A Tells the ircd where and what to log(s). You can have
* as many as you wish.
*
* FLAGS: errors, kills, tkl, connects, server-connects, kline, oper
*
* Syntax:
* log "log file"
* {
* flags
* {
* flag;
* flag;
* etc..
* };
* };
*/
log "ircd.log" {
/* Delete the log file and start a new one when it reaches 2MB, leave this out to always use the
same log */
maxsize 2097152;
flags {
oper;
kline;
connects;
server-connects;
kills;
errors;
sadmin-commands;
chg-commands;
oper-override;
spamfilter;
};
};
/*
* NEW: alias {}
* OLD: N/A
* This allows you to set command aliases such as /nickserv, /chanserv etc
* FLAGS: services, stats, normal
*
* Syntax:
* alias "name" {
* target "points to";
* type aliastype;
* };
*
* [NOTE: You could also include a pre-defined alias file here, see doc/unreal32docs.html section 2.9]
*/
// This points the command /nickserv to the user NickServ who is connected to the set::services-server server
/*alias NickServ {
target "NickServ";
type services;
};*/
// If you want the command to point to the same nick as the command, you can leave the nick entry out
//alias ChanServ { type services; };
// Points the /statserv command to the user StatServ on the set::stats-server server
//alias StatServ { type stats; };
// Points the /superbot command to the user SuperBot
//alias SuperBot { type normal; };
/* Standard aliases */
alias NickServ { type services; };
alias ChanServ { type services; };
alias OperServ { type services; };
alias HelpServ { type services; };
alias StatServ { type stats; };
/*
* NEW: alias {}
* OLD: N/A
* This allows you to set command aliases such as /identify, /services, etc
*
* Syntax:
* alias "name" {
* format "format string" {
* target "points to";
* type aliastype;
* parameters "parameters to send";
* };
* type command;
* };
*/
/* This is shown seperately because even though it has teh same name as the previous directive, it is very
* different in syntax, although it provides a similar function and relys on the standard aliases to work.
*/
/*
alias "identify" {
format "^#" {
target "chanserv";
type services;
parameters "IDENTIFY %1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "IDENTIFY %1-";
};
type command;
};
*/
/* The alias::format directive is a regular expression. The first format matches the /identify command when
* the first character is a #. It then passes this along to the chanserv alias with the parameters IDENTIFY
* %1-. The second format matches then /identify command when the first character is not a #. It then
* passes the command to the nickserv alias with parameters IDENTIFY %1-.
*/
/* The alias::format::parameters is similar to scripting languages. %N (where N is a number) represents a
* parameter sent to the command (in this case /identify). If you specify %N- it means all parameters from
* N until the last parameter in the string. You may also specify %n which is replaced by
* the user's nickname.
*/
/* Standard aliases */
alias "services" {
format "^#" {
target "chanserv";
type services;
parameters "%1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "%1-";
};
type command;
};
alias "identify" {
format "^#" {
target "chanserv";
type services;
parameters "IDENTIFY %1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "IDENTIFY %1-";
};
type command;
};
/* This is an example of a real command alias */
/* This maps /GLINEBOT to /GLINE <parameter> 2d etc... */
alias "glinebot" {
format ".+" {
command "gline";
type real;
parameters "%1 2d Bots are not allowed on this server, please read the faq at http://www.example.com/faq/123";
};
type command;
};
/*
* NEW: tld {}
* OLD: T:Line
* This sets a different motd and rules files
* depending on the clients hostmask.
* Syntax is as follows:
* tld {
* mask (ident@host);
* motd "(motd file)";
* rules "(rules file)";
* };
*/
tld {
mask *@*.fr;
motd "ircd.motd.fr";
rules "ircd.rules.fr";
};
/* note: you can just delete the example block above,
* in which case the defaults motd/rules files (ircd.motd, ircd.rules)
* will be used for everyone.
*/
/*
* NEW: ban nick {}
* OLD: Q:Line
* Bans a nickname, so it can't be used.
* Syntax is as follows:
* ban nick {
* mask "(nick to ban)";
* reason "(reason)";
* };
*/
ban nick {
mask "*C*h*a*n*S*e*r*v*";
reason "Reserved for Services";
};
/*
* NEW: ban ip {}
* OLD: Z:Line
* Bans an ip from connecting to the network.
* Syntax:
* ban ip { mask (ip number/hostmask); reason "(reason)"; };
*/
ban ip {
mask 195.86.232.81;
reason "Delinked server";
};
/*
* NEW: ban server {}
* OLD: Server Q:Line
* Disables a server from connecting to the network.
* if the server links to a remote server, local server
* will disconnect from the network.
* Syntax is as follows:
* ban server {
* mask "(server name)";
* reason "(reason to give)";
* };
*/
ban server {
mask eris.berkeley.edu;
reason "Get out of here.";
};
/*
* NEW: ban user {}
* OLD: K:Line
* This makes it so a user from a certain mask can't connect
* to your server.
* Syntax:
* ban user { mask (hostmask/ip number); reason "(reason)"; };
*/
ban user {
mask *tirc@*.saturn.bbn.com;
reason "Idiot";
};
/*
* NEW: ban realname {}
* OLD: n:Line
* This bans a certain realname from being used.
* Syntax:
* ban realname {
* mask "(real name)";
* reason "(reason)";
* };
*/
ban realname {
mask "Swat Team";
reason "mIRKFORCE";
};
ban realname {
mask "sub7server";
reason "sub7";
};
/*
* NOTE FOR ALL BANS, they may be repeated for addition entries!
*
* NEW: except ban {}
* OLD: E:Line
* This makes it so you can't get banned.
* Syntax:
* except ban { mask (ident@host); };
* Repeat the except ban {} as many times
* as you want for different hosts.
*/
except ban {
/* don't ban stskeeps */
mask *stskeeps@212.*;
};
/*
* NEW: deny dcc {}
* OLD: dccdeny.conf
* Use this to block dcc send's... stops
* viruses better.
* Syntax:
* deny dcc
* {
* filename "file to block (ie, *exe)";
* reason "reason";
* };
*/
deny dcc {
filename "*sub7*";
reason "Possible Sub7 Virus";
};
/*
* NEW: deny channel {}
* OLD: N/A (NEW)
* This blocks channels from being joined.
* Syntax:
* deny channel {
* channel "(channel)";
* reason "reason";
* };
*/
deny channel {
channel "*warez*";
reason "Warez is illegal";
};
/*
* NEW: vhost {}
* OLD: Vhost.conf file
* This sets a fake ip for non-opers, or
* opers too lazy to /sethost :P
* Syntax:
* vhost {
* vhost (vhost.com);
* from {
* userhost (ident@host to allow to use it);
* };
* login (login name);
* password (password);
* };
* then to use this vhost, do /vhost (login) (password) in IRC
*/
vhost {
vhost i.hate.microsefrs.com;
from {
userhost *@*.image.dk;
};
login stskeeps;
password moocowsrulemyworld;
};
/* You can include other configuration files */
/* include "klines.conf"; */
/* Network configuration */
set {
network-name "ROXnet";
default-server "irc.roxnet.org";
services-server "services.roxnet.org";
stats-server "stats.roxnet.org";
help-channel "#ROXnet";
hiddenhost-prefix "rox";
/* prefix-quit "no"; */
/* Cloak keys should be the same at all servers on the network.
* They are used for generating masked hosts and should be kept secret.
* The keys should be 3 random strings of 5-100 characters
* (10-20 chars is just fine) and must consist of lowcase (a-z),
* upcase (A-Z) and digits (0-9) [see first key example].
* HINT: On *NIX, you can run './unreal gencloak' in your shell to let
* Unreal generate 3 random strings for you.
*/
cloak-keys {
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW";
"and another one";
"and another one";
};
/* on-oper host */
hosts {
local "locop.roxnet.org";
global "ircop.roxnet.org";
coadmin "coadmin.roxnet.org";
admin "admin.roxnet.org";
servicesadmin "csops.roxnet.org";
netadmin "netadmin.roxnet.org";
host-on-oper-up "no";
};
};
/* Server specific configuration */
set {
kline-address "set.this.email";
modes-on-connect "+ixw";
modes-on-oper "+xwgs";
oper-auto-join "#opers";
options {
hide-ulines;
/* You can enable ident checking here if you want */
/* identd-check; */
show-connect-info;
};
maxchannelsperuser 10;
/* The minimum time a user must be connected before being allowed to use a QUIT message,
* This will hopefully help stop spam */
anti-spam-quit-message-time 10s;
/* Make the message in static-quit show in all quits - meaning no
custom quits are allowed on local server */
/* static-quit "Client quit"; */
/* You can also block all part reasons by uncommenting this and say 'yes',
* or specify some other text (eg: "Bye bye!") to always use as a comment.. */
/* static-part yes; */
/* This allows you to make certain stats oper only, use * for all stats,
* leave it out to allow users to see all stats. Type '/stats' for a full list.
* Some admins might want to remove the 'kGs' to allow normal users to list
* klines, glines and shuns.
*/
oper-only-stats "okfGsMRUEelLCXzdD";
/* Throttling: this example sets a limit of 3 connection attempts per 60s (per host). */
throttle {
connections 3;
period 60s;
};
/* Anti flood protection */
anti-flood {
nick-flood 3:60; /* 3 nickchanges per 60 seconds (the default) */
};
/* Spam filter */
spamfilter {
ban-time 1d; /* default duration of a *line ban set by spamfilter */
ban-reason "Spam/Advertising"; /* default reason */
virus-help-channel "#help"; /* channel to use for 'viruschan' action */
/* except "#help"; channel to exempt from filtering */
};
};
/*
* Problems or need more help?
* 1) www.vulnscan.org/UnrealIRCd/unreal32docs.html
* 2) www.vulnscan.org/UnrealIRCd/faq/ <- contains 80% of your questions!
* 3) If you still have problems you can go irc.ircsystems.net #unreal-support,
* note that we require you to READ THE DOCUMENTATION and FAQ first!
*/
-787
View File
@@ -1,787 +0,0 @@
/*
* example.conf von Daniel Hawton AKA Osiris (osiris@unrealircd.org).
* $Id$
*
* Arbeitet mit Unreal3.2 und darüber
*
* Dies hier ist die neue example.conf. Sie ähnelt irgendwie ein wenig C++ und sie
* soll sie jedenfalls einmal erläutert werden. Es ist ein wenig schwer, erstmals
* damit umzugehen, aber mit ein Wenig Übung und sorgfältigem Lesen sollte das zu
* verstehen sein.
*
* Diese Datei ist einfach in das Hauptverzeichnis des UnrealIRCD zu kopieren und in
* 'unrealircd.conf' umzubenennen.
*
* ZU BEACHTEN: Sämtliche Zeilen außer der mit einer '{' zu Beginn werden mit dem Zeichen
* ';' beendet, auch die Zeile mit '}'. (Beliebter Syntaxfehler!)
* Kommentar Zeilen werden vom IRCd ignoriert.
*
* BITTE LESE die doc/unreal32docs.html! Sie ist auch online erhältlich bei:
* www.vulnscan.org/UnrealIrcd/unreal32docs.html
* Diese Datei enthält zahlreiche ergänzende Informationen über jeden Block, Variablen usw.
* Übersetzung durch stylus740@smart-irc.de (bei irc.smart-irc.net)
*/
/* Kommentar Typen */
#Kommentar Typ 1 (Shell Typ)
// Kommentar Typ 2(C++ Stil)
/* Kommentar Typ 3 (C Stil) */
#Solche Zeilen vom Typ 1, 2 oder 3 werden vom ircd ignoriert.
/*
* UnrealIRCd arbeitet mit Modulen, die geladen werden, wenn sie benötigt werden.
* Man benötigt mindestens das commands Modul und ein cloaking Modul.
*/
/* FÜR *NIX (Unix, Linux, Xenix etc.), sind diese 2 Zeilen auszukommentieren: */
//loadmodule "src/modules/commands.so";
//loadmodule "src/modules/cloak.so";
/* FÜR Windows sind diese 2 Zeilen auszukommentieren: */
//loadmodule "modules/commands.dll";
//loadmodule "modules/cloak.dll";
/*
* Man kann über eine 'include' Anweisung auch weitere Konfigurationsdateien einfügen.
* help.conf enthält sämtliche /helpop Texte. Die badwords.*.conf filtert alle badword
* Einträge für den Modus +G...
* Die spamfilter.conf enthält einige wirksame Regeln für aktuelle Trojaner.
* Falls man diese Dateien mit einfügen möchte:
*/
include "help.conf";
include "badwords.channel.conf";
include "badwords.message.conf";
include "badwords.quit.conf";
include "spamfilter.conf";
/*
* NEU: me {}
* ALT: M:Line
* me {} legt Name, Beschreibung und eindeutige Nummer ('numeric') für diesen Server fest.
* Syntax ist wie folgt:
* me {
* name "server.name";
* info "Server Beschreibung";
* numeric (server numeric*);
* };
* Falls der Server mit anderen gelinkt wird, darf muss die Nummer bei 'numeric' eindeutig
* sein, darf also von keinem anderen Server im Netzwerk verwendet werden.
*/
me
{
name "irc.foonet.com";
info "FooNet Server";
numeric 1;
};
/*
* NEU: admin {}
* ALT: A:Line
* Admin liefert Informationen über den Server Administrator. Man kann
* so viele Zeilen unter 'admin {' angeben, wie man will.
* Syntax ist wie folgt:
* admin {
* "erste Zeile";
* "zweite Zeile";
* [usw]
* };
*/
admin {
"Bob Smith";
"bob";
"widely@used.name";
};
/*
* NEU: class {}
* ALT: Y:line (alte Form war verwirrend)
* Hiermit werden Klassen und ihre Einstellungen festgelegt. Eine Klasse ist eine Gruppen-
* einstellung für Verbindungen. So kann man beispielsweise Server Verbindungen in einer
* eigenen Klasse behandeln, statt zusammen mit Clients.
* Syntax ist wie folgt:
* class (class name)
* {
* pingfreq (wie oft in Sekunden wird ein user/server angepingt);
* maxclients (wie viele Verbindungen sind in dieser Klasse möglich);
* sendq (maximale send Queue einer Verbindung);
* recvq (maximale Empfangs Queue einer Verbindung [Flood Kontrolle!]);
* };
*/
class clients
{
pingfreq 90;
maxclients 500;
sendq 100000;
recvq 8000;
};
class servers
{
pingfreq 90;
maxclients 10; /* Wieviele Servers können gleichzeitig gelinkt sein */
sendq 1000000;
connfreq 100; /* Wieviele Sekunden zwischen jedem Verbindungsversuch */
};
/*
* NEU: allow {}
* ALT: I:Line
* Hier wird festgelegt, welche Verbindungen erlaubt sind...
* Grundlegend kann man damit Clienten erlauben, zu verbinden und hat etwas Kontrolle
* Syntax ist wie folgt:
* allow {
* ip (ip Maske für allow);
* hostname (host Maske);
* class (Klasse, die zugewiesen wird [siehe class {}]);
* password "(password)"; (optional)
* maxperip (wie viele Verbindungen je IP); (optional)
* };
*/
allow {
ip *@*;
hostname *@*;
class clients;
maxperip 5;
};
/* Passworded allow line */
allow {
ip *@255.255.255.255;
hostname *@*.passworded.ugly.people;
class clients;
password "f00Ness";
maxperip 1;
};
/*
* NEU: allow channel {}
* ALT: chrestrict
* Erlaubt es Usern, einen Channel zu betreten...
* Ist wie eine Ausnahme von 'deny channel'.
* Syntax ist wie folgt:
* allow channel {
* channel "channel name";
* };
*/
allow channel {
channel "#WarezSucks";
};
/*
* NEU: oper {}
* ALT: O:Line
* Legt einen IRC Operator fest
* IRC Operatoren halten den Server in Ordnung, warten ihn und halten die Verbindung
* zum Netzwerk.
* Syntax ist wie folgt:
* oper (login) {
* class (Klasse, die zugewiesen wird, falls anders als meine, wird eine neuee Klasse
* zugewiesen);
* from {
* userhost (ident@host);
* userhost (ident@host);
* };
* flags
* {
* (Flags hier*);
* };
* ODER
* flags "alte Form von Flags, wie OAaRD";
* };
*/
/* Die Liste möglicher Oper Flags kann in doc/unreal32docs.html#operblock nachgelesen werden
* [WIRKLICH empfehlenswert, zu lesen!]
*/
oper bobsmith {
class clients;
from {
userhost bob@smithco.com;
};
password "f00";
flags
{
netadmin;
can_zline;
can_gzline;
can_gkline;
global;
};
};
/*
* NEU: listen {}
* ALT: P:Line
* Legt den Port fest, an dem der ircd 'lauscht', um Usern/Servern zu erlauben, eine
* Verbindung zum Server aufzunehmen.
* Syntax ist wie folgt:
* listen (ip number):(port number)
* {
* options {
* (options here);
* };
* };
* oder für ein einfaches listen:
* listen (ip):(port);
*
* ACHTUNG: für ipv6 ips (3ffe:b80:2:51d::2 etc), benutze listen [ip]:port;
*
* Das funktioniert ebenfalls.
*/
/* Options for listen:
OLD | NEW
S serversonly
C clientsonly
J java
s ssl
* standard
*/
/* ZU BEACHTEN BEI SSL PORTS: SSL Ports sind nicht standardisiert.
* Es wird oft gesagt, man solle den Port 994 benutzen, weil dies der
* offizielle SSL Port sei. Aber das erfordert root Rechte! Andererseits
* ist der Port 194 der offizielle Port und wann hat man je einen Ircd
* auf diesem Port laufen gesehen?
* Unsere Empfehlung ist, den Port 6697 für SSL zu benutzen, wie es auch
* bei vielen anderen Netzwerken gemacht wird und für z.B. StunTour benutzt wird.
* Man kann so viele SSL Ports öffnen, wie man will, aber wenn man (auch) den Port
* 6697 benutzt, hilft man mit, die Welt ein klein wenig zu standardisieren ;).
*/
listen *:6697
{
options
{
ssl;
clientsonly;
};
};
listen *:8067;
listen *:6667;
/* ACHTUNG: Wird der IRCd auf einer Shell mit verschiedenen IP's ausgeführt, kann
* die Fehlermeldung 'Address already in use' ('Adresse wird schon benutzt')
* in den Logfiles auftauchen und der IRCd startet nicht.
* Das bedeutet, dass man eine spezifische Adresse anstelle von '*' definieren
* MUSS, wie z.B.:
* listen 1.2.3.4:6667;
* Es sollte klar sein, dass die IP durch die zu ersetzen ist, die einem
* zugewiesen ist.
*/
/*
* NEU: link {}
* ALT: C/N:Lines
* Hiermit wird ein okay für eine Server Verbindung festgelegt.
* ACHTUNG: BEIDE SERVER MÜSSEN EINE LINK {} EINSTELLUNG HABEN, UM KORREKT ZU VERBINDEN!
* Syntax ist wie folgt:
* link (server name)
* {
* username (username, * funktioniert auch);
* hostname (ip Nummer/Hostmaske);
* bind-ip (Welche IP soll zum Verbinden benutzt werden, oder *);
* port (Port, zu dem verbunden werden soll);
* hub (Wenn dies ein Hub ist, funktioniert * , oder Servermasken);
* [oder leaf *;]
* password-connect "(Passwort zu senden)";
* password-receive "(Passwort, welches wir emfangen sollten)";
* class (Klasse, in die Server sollen);
* options {
* (options hier*);
* };
* // Wird SSL benutzt, kann bestimmt werden, welche Verschlüsselung im SSL
* // Modus zu benutzen ist
* // Bei mehreren "openssl ciphers" sind die einzelnen Verschlüsselungen
* // durch ':' zu trennen
*
* ciphers "DES-CBC3-MD5";
*
* };
*/
/*
options:
OLD | NEW
S ssl
Z zip
N/A autoconnect
N/A quarantine
N/A nodnscache
*/
link hub.mynet.com
{
username *;
hostname 1.2.3.4;
bind-ip *;
port 7029;
hub *;
password-connect "LiNk";
password-receive "LiNk";
class servers;
options {
/* Achtung: autoconnect sollte nicht benutzt werden, wenn man Services linkt */
autoconnect;
ssl;
zip;
};
};
/*
*
* NEU: ulines {}
* ALT: U:Line
* U-lines geben Servern mehr Möglichkeiten/Befehle, sie sollten NUR für Services/Stats
* gesetzt werden und NIEMALS für normale UnrealIRCd Server!
* Syntax ist wie folgt:
* ulines {
* (server to uline);
* (server to uline);
* [etc]
* };
*/
ulines {
services.roxnet.org;
stats.roxnet.org;
};
/*
* NEU: drpass {}
* ALT: X:Line
* Hiermit werden die Passworte für /die und /restart festgelegt.
* Syntax ist wie folgt:
* drpass {
* restart "(Passwort für Restart)";
* die "(Passwort für die (die = 'sterben' = Abschaltung))";
* };
*/
drpass {
restart "I-love-to-restart";
die "die-you-stupid";
};
/*
* NEU: log {} ALT: N/A Festlegung von Namen und Speicherort der Logfiles. Man kann
* beliebig viele festlegen.
*
* FLAGS: errors, kills, tkl, connects, server-connects, kline, oper
*
* Syntax:
* log "log file"
* {
* flags
* {
* flag;
* flag;
* etc..
* };
* };
*/
log "ircd.log" {
/* Lösche das Logfile und starte ein neues, wenn 2MB erreicht wurden,
nichts festlegen, wenn man immer das gleiche Log will */
maxsize 2097152;
flags {
oper;
kline;
connects;
server-connects;
kills;
errors;
sadmin-commands;
chg-commands;
oper-override;
spamfilter;
};
};
/*
* NEU: alias {}
* ALT: N/A
* Hier kann man Befels Aliasse festlegen, wie z.B. /nickserv, /chanserv usw.
* FLAGS: services, stats, normal
*
* Syntax:
* alias "name" {
* target "points to";
* type aliastype;
* };
*
* [ACHTUNG: Mann kann hier auch eine Datei mit vordefinierten Aliassen per include
* einfügen. Siehe auch: doc/unreal32docs.html Abschnitt 2.9]
*/
// Hiermit wird der Befehl /nickserv an den User NickServ geleitet, welcher zur Einstellung set::services-server server verbunden ist
/*alias NickServ {
target "NickServ";
type services;
};*/
// Soll der Befehl auf denselben Nick wie das der Befehl leiten, kann man den Nick auslassen
//alias ChanServ { type services; };
// leitet den /statserv Befehl an den User StatServ aus set::stats-server server
//alias StatServ { type stats; };
// leitet den /superbot Befehl an den User SuperBot
//alias SuperBot { type normal; };
/* Standard Aliasse */
alias NickServ { type services; };
alias ChanServ { type services; };
alias OperServ { type services; };
alias HelpServ { type services; };
alias StatServ { type stats; };
/*
* NEU: alias {}
* ALT: N/A
* Hier können Befehls Aliase, wie z.B.: /identify, /services, usw festgelegt werden.
*
* Syntax:
* alias "name" {
* format "format string" {
* target "zeigt auf";
* type aliastype;
* parameters "zu sendende Parameter";
* };
* type command;
* };
*/
/* Die nachfolgenden Zeilen eigens deshalb, um zu zeigen, dass trotz gleichem Namens die vorherige Anweisung
* völlig unterschiedlich in der Syntax ist, obwohl eine ähnliche Funktion unterstützt wird.
*/
/*
alias "identify" {
format "^#" {
target "chanserv";
type services;
parameters "IDENTIFY %1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "IDENTIFY %1-";
};
type command;
};
*/
/* Die alias::format Anweisung ist ein regulärer Ausdruck. Das erste Format passt auf den /identify Befehl,
* wenn das erste Zeichen ein # ist. Dann wird dies an den chanserv alias mit dem Parameters IDENTIFY
* %1- übergeben. Das zweite Format passt auf den /identify Befehl, wenn das erste Zeichen kein # ist. Danach
* wird der Befehl an den nickserv alias mit den Parameters IDENTIFY %1- geleitet.
*/
/* Die alias::format::parameters Scripting Sprachen ähnlich. %N (wobei N einen Nummer ist) repräsentiert einen
* Parameter, der an den Befehl (in diesem Fall /identify) zu senden ist. Wird %N- angegeben, bedeutet dies
* alle Parameter vom N bis zum letzten Parameter des Strings. Man kann ebenso %n angeben, welches durch den
* Nicknamen des users ersetzt wird.
*/
/* Standard Aliasse */
alias "services" {
format "^#" {
target "chanserv";
type services;
parameters "%1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "%1-";
};
type command;
};
alias "identify" {
format "^#" {
target "chanserv";
type services;
parameters "IDENTIFY %1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "IDENTIFY %1-";
};
type command;
};
/*
* NEU: tld {}
* ALT: T:Line
* Hiermit werden unterschiedliche motd und rules Dateien in Abhängigkeit
* von der Hostmaske des Clients eingestellt.
* Syntax ist wie folgt:
* tld {
* mask (ident@host);
* motd "(motd file)";
* rules "(rules file)";
* };
*/
tld {
mask *@*.fr;
motd "ircd.motd.fr";
rules "ircd.rules.fr";
};
/* zu beachten: Will man nur die default motd/rules Dateien (ircd.motd, ircd.rules)
* für jedermann benutzen, genügt es, den obigen Beispiel Block einfach zu löschen.
*/
/*
* NEU: ban nick {}
* ALT: Q:Line
* Bannt einen Nicknamen, so dass dieser nicht benutzt werden kann.
* Syntax ist wie folgt:
* ban nick {
* mask "(nick to ban)";
* reason "(reason)";
* };
*/
ban nick {
mask "*C*h*a*n*S*e*r*v*";
reason "Reserviert für Services";
};
/*
* NEU: ban ip {}
* ALT: Z:Line
* Bannt eine IP, so dass diese nicht mehr zum Netzwerk verbinden kann.
* Syntax:
* ban ip { mask (ip Nummer/Hostmaske); reason "(Grund)"; };
*/
ban ip {
mask 195.86.232.81;
reason "Server nicht mehr gelinkt";
};
/*
* NEU: ban server {}
* ALT: Server Q:Line
* Nimmt einem Server die Möglichkeit, zum Neztwerk zu verbinden.
* Wenn der Server zu einem anderen Server des Netzwerkes linkt, wird der
* lokale server die Verbindung zum Netzwerk trennen.
* Syntax ist wie folgt:
* ban server {
* mask "(Server Name)";
* reason "(angegebener Grund)";
* };
*/
ban server {
mask eris.berkeley.edu;
reason "Hau ab hier.";
};
/*
* NEU: ban user {}
* ALT: K:Line
* Bewirkt, dass ein User mit einer bestimmten Maske nicht mehr zum Server verbinden kann.
* Syntax:
* ban user { mask (Hostmaske/ip Nummer); reason "(Grund)"; };
*/
ban user {
mask *tirc@*.saturn.bbn.com;
reason "Idiot";
};
/*
* NEU: ban realname {}
* ALT: n:Line
* Verhindert, dass ein bestimmter Realname benutzt werden kann.
* Syntax:
* ban realname {
* mask "(Realname)";
* reason "(Grund)";
* };
*/
ban realname {
mask "Swat Team";
reason "mIRKFORCE";
};
ban realname {
mask "sub7server";
reason "sub7";
};
/*
* Sämtliche Banns dürfen durch zusätzliche Einträge wiederholt werden!
*
* NEU: except ban {}
* ALT: E:Line
* Diese Maske ist von Banns ausgenommen.
* Syntax:
* except ban { mask (ident@host); };
* except ban {} kann so oft angegeben werden, wie man für verschiedene Hosts will.
*/
except ban {
/* don't ban stskeeps */
mask *stskeeps@212.*;
};
/*
* NEU: deny dcc {}
* ALT: dccdeny.conf
* Mit diesem Block können dcc send's geblockt werden... Gut, um Viren aufzuhalten.
* Syntax:
* deny dcc
* {
* filename "zu sperrende Datei(ie, *exe)";
* reason "Grund";
* };
*/
deny dcc {
filename "*sub7*";
reason "Möglicherweise Sub7 Virus";
};
/*
* NEU: deny channel {}
* ALT: N/A (NEW)
* Verhindert, dass angegebene Channels benutzt werden können.
* Syntax:
* deny channel {
* channel "(channel)";
* reason "Grund";
* };
*/
deny channel {
channel "*warez*";
reason "Warez sind illegal";
};
/*
* NEU: vhost {}
* ALT: Vhost.conf file
* Setzt eine Fake IP für Nicht-Opers, oder opers, die zu bequem für /sethost sind.... :P
* Syntax:
* vhost {
* vhost (vhost.com);
* from {
* userhost (ident@host um die Nutzung zu gestatten);
* };
* login (Loginname);
* password (Passwort);
* };
* um den vhost zu nutzen, mache /vhost (login) (password) im IRC
*/
vhost {
vhost i.hate.microsefrs.com;
from {
userhost *@*.image.dk;
};
login stskeeps;
password moocowsrulemyworld;
};
/* Man kann hier weitere Config Dateien einfügen */
/* include "klines.conf"; */
/* Network configuration */
set {
network-name "ROXnet";
default-server "irc.roxnet.org";
services-server "services.roxnet.org";
stats-server "stats.roxnet.org";
help-channel "#ROXnet";
hiddenhost-prefix "rox";
/* prefix-quit "no"; */
/* Cloak keys müssen angegeben sein und sie müssen die selben auf allen Servern
* im Netzwerk sein. Sie werden zur Generierung der maskierten Hosts verwendet
* und sie sollten geheim gehalten werden.
* Die Keys sollten 3 zufällige Strings von 5-100 Zeichen Länge sein (10-20 Zeichen
* (sind ganz ok) und müssen aus Kleinbuchstaben(a-z), Großbuchstaben (A-Z) und
* Ziffern (0-9) bestehen [wie im ersten Key Beispiel].
* TIPP: Auf *NIX, kann man in der Shell './unreal gencloak' aufrufen und durch
* Unreal 3 Zufalls Stings erzeugen und anzeigen lassen.
*/
cloak-keys {
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW";
"und noch einer";
"und noch einer";
};
/* on-oper Host */
hosts {
local "locop.roxnet.org";
global "ircop.roxnet.org";
coadmin "coadmin.roxnet.org";
admin "admin.roxnet.org";
servicesadmin "csops.roxnet.org";
netadmin "netadmin.roxnet.org";
host-on-oper-up "no";
};
};
/* Server spezifische Configuration */
set {
kline-address "setze.diese.email";
modes-on-connect "+ixw";
modes-on-oper "+xwgs";
oper-auto-join "#opers";
options {
hide-ulines;
/* Man kann hier ident checking aktivieren, wenn man will */
/* identd-check; */
show-connect-info;
};
maxchannelsperuser 10;
/* Die Mindestzeit, die ein User verbunden sein muss, bevor er eine QUIT Meldung
* senden darf (Das wird offentlich helfen, Spam zu verhindern) */
anti-spam-quit-message-time 10s;
/* Macht die Meldung statisch, die in allen Quit Meldungen angezeigt wird.
Somit sind keine individuellen Quts auf dem lokalen Server mehr erlaubt */
/* static-quit "Client quit"; */
/* Man kann auch sämtliche Part Meldungen blocken, indem man dies auskommentiert
* und 'yes' sagt oder einen anderen Text angibt (z.B. "Bye bye!")
/* static-part yes; */
/* Hiermit kann man bestimmte stats auf ausschliesslich Opers beschränken. Für
* alle Stats kann man * benutzen. Wenn man es weglässt, können alle User alle
* Stats abfragen. Eine vollständige Liste erhält man mit dem Befehl '/stats'.
* Manche Admins entfernen 'kGs' und erlauben so normalen Usern die Anzeige von
* klines, glines and shuns.
*/
oper-only-stats "okfGsMRUEelLCXzdD";
/* Throttling: Dieses Beispiel setzte ein Limit von 3 Verbindungen je 60s (pro Host). */
throttle {
connections 3;
period 60s;
};
/* Anti Flood Schutz */
anti-flood {
nick-flood 3:60; /* 3 Nickänderungen pro 60 Sekunden (Default) */
};
/* Spam Filter */
spamfilter {
ban-time 1d; /* Default Dauer eines *line Banns durch Spamfilter */
ban-reason "Spam/Belästigung"; /* default Grund */
virus-help-channel "#help"; /* Channel, der für die 'viruschan' action benutzt wird*/
/* except "#help"; Channel, der von Filtern ausgenommen wird */
};
};
/*
* Probleme? Weitere Hilfe nötig?
* 1) www.vulnscan.org/UnrealIrcd/unreal32docs.html
* 2) www.vulnscan.org/UnrealIrcd/faq/ <- enthält 80% deiner Fragen - Wetten Dass?
* 3) Hat man dann noch Probleme, kann man den Chat bei irc.ircsystems.net
* #unreal-support aufsuchen. Dabei ist zu beachten, dass wir voraussetzen,
* dass zuvor DIE DOKU GELESEN WURDE (genauso, wie die FAQ!)!
*/
-801
View File
@@ -1,801 +0,0 @@
/*
* example.conf par Daniel Hawton AKA Osiris (osiris@unrealircd.org).
* $Id$
* Traduction française par babass (babass@unrealircd.org).
*
* Fonctionne pour Unreal3.2 et supérieur
*
* Okay les mecs. Voici la nouvelle version de l'example.conf. Cela ressemble plus à du C++.
* Peu importe, il est temps de se lancer. Il est difficile de l'attaquer pour la première fois, mais
* avec un peu d'expérience et en lisant vous comprendrez.
*
* Copiez juste ce fichier dans votre répertoire unrealircd principal et appellez le 'unrealircd.conf'.
*
* NOTE: Toutes les lignes, excepté la ligne d'ouverture { , les lignes finissant par un ;,
* et celle de fermeture } incluses.
* L'IRCd ignorera les lignes commentées.
*
* LISEZ S'IL VOUS PLAIT doc/unreal32docs.fr.html! La version en ligne est aussi disponible à :
* www.vulnscan.org/UnrealIRCd/unreal32docs.fr.html
* Elle contient beaucoup d'informations à propos du fichier de configuration : fournis des informations
* à propos de chaque blocs, variable, etc..
* Si vous essayez de modifier ce fichier sans avoir bien lu la documentation,
* vous êtes presque sûr de vous tromper.
*/
/* Type de commentaires */
#Commentaire type 1 (type Shell)
// Commentaire type 2 (style C++)
/* Commentaire type 3 (style C) */
#Ces lignes sont ignorées par l'ircd.
/*
* UnrealIRCd supportes des modules, en charger certains est requis.
* Vous aurez besoin au moins du module commands et du module cloaking.
*/
/* POUR *NIX, décommentez les 2 lignes suivantes : */
//loadmodule "src/modules/commands.so";
//loadmodule "src/modules/cloak.so";
/* POUR Windows, décommentez les 2 lignes suivantes : */
//loadmodule "modules/commands.dll";
//loadmodule "modules/cloak.dll";
/*
* Vous pouvez également inclure d'autres fichiers de configuration.
* help.conf contient tous le texte de /helpop. Les fichiers badwords.*.conf
* contiennent tous les badwords pour le mode +G...
* spamfilter.conf contient quelques bonnes règles pour les trojans courrants.
* Vous voudrez probablement les inclure:
*/
include "help.conf";
include "badwords.channel.conf";
include "badwords.message.conf";
include "badwords.quit.conf";
include "spamfilter.conf";
/*
* ACTUEL : me {}
* ANCIEN : M:Line
* me {} definit le nom, la description et le numeric du serveur unreal
* pour ce serveur. La syntaxe est la suivante :
* me {
* name "nom.du.serveur";
* info "Description du Serveur";
* numeric (numeric* serveur);
* };
* En cas de link, ce numeric ne peut être utilisé pour aucun autre serveur du réseau.
*/
me
{
name "irc.foonet.com";
info "FooNet Server";
numeric 1;
};
/*
* ACTUEL : admin {}
* ANCIEN : A:Line
* Admin donne des informations sur les server admins.
* Vous pouvez mettre autant de lignes que vous voulez après admin {.
* La syntaxe est la suivante :
* admin {
* "première ligne";
* "deuxième ligne";
* [etc]
* };
*/
admin {
"Bob Smith";
"bob";
"widely@used.name";
};
/*
* ACTUEL : class {}
* ANCIEN : Y:line (l'ancien était déroutant)
* Défini les réglages pour les classes. Une classe est un groupe de réglages pour
* des connexions. Par exemple, les connexions serveurs, au lieu de passer par une classe
* client, vous utilisez directement une classe serveur. La syntaxe est la suivante :
* class (nom de la classe)
* {
* pingfreq (fréquence des pings utilisateurs/serveurs en secondes);
* maxclients (combien de connexions pour cette classe);
* sendq (file d'attente maximum pour l'envoie depuis une connexion);
* recvq (file d'attente maximum pour la réception depuis une connexion [contrôle du flood]);
* };
*/
class clients
{
pingfreq 90;
maxclients 500;
sendq 100000;
recvq 8000;
};
class servers
{
pingfreq 90;
maxclients 10; /* Nombre maximum de serveurs pouvant être reliés en même temps */
sendq 1000000;
connfreq 100; /* Combien de secondes entre chaque tentatives de connexions */
};
/*
* ACTUEL : allow {}
* ANCIEN : I:Line
* Défini les autorisations de connexions...
* Principalement pour les clients, cela leur permet de se connecter, vous pouvez donc avoir un certain
* contrôle et/ou mettre un mot de passe.
* La syntaxe est la suivante :
* allow {
* ip (ip mask à autoriser);
* hostname (host mask);
* class (classe à laquelle les renvoyer [voir class {}]);
* password "(mot de passe)"; (optionnel)
* maxperip (nombre de connexions par ip); (optionnel)
* };
*/
allow {
ip *@*;
hostname *@*;
class clients;
maxperip 5;
};
/* connexion autorisée avec mot de passe */
allow {
ip *@255.255.255.255;
hostname *@*.passworded.ugly.people;
class clients;
password "f00Ness";
maxperip 1;
};
/*
* ACTUEL : allow channel {}
* ANCIEN : chrestrict
* Autorise un utilisateur à joindre un salon...
* comme une exception au deny channel.
* Syntaxe :
* allow channel {
* channel "nom du salon";
* };
*/
allow channel {
channel "#WarezSucks";
};
/*
* ACTUEL : oper {}
* ANCIEN : O:Line
* Défini un IRC Operateur
* Les IRC operateurs sont là pour préserver la qualité du serveur mais aussi d'en assurer
* la maintenance et sa connexion au réseau.
* La syntaxe est la suivante :
* oper (login) {
* class (classe à laquelle les associer, si différent de moi, déplacez les vers une
* nouvelle classe);
* from {
* userhost (ident@host);
* userhost (ident@host);
* };
* flags
* {
* (flags ici*);
* };
* OU
* flags "ancien type de flags, comme OAaRD";
* };
*/
/* Pour avoir la liste des flags oper, voir doc/unreal32docs.fr.html#operblock
* [lecture HAUTEMENT recommendée]
*/
oper bobsmith {
class clients;
from {
userhost bob@smithco.com;
};
password "f00";
flags
{
netadmin;
can_zline;
can_gzline;
can_gkline;
global;
};
};
/*
* ACTUEL : listen {}
* ANCIEN : P:Line
* Défini un port à rattacher à l'ircd, pour autoriser
* des utilisateurs/serveurs à se connecter au serveur.
* La syntaxe est la suivante :
* listen (ip):(port)
* {
* options {
* (options ici);
* };
* };
* ou pour une écoute
* indifférente : listen (ip):(port);
*
* NOTICE : pour les ips ipv6 (3ffe:b80:2:51d::2 etc), utilisez listen [ip]:port;
*
* Cela fonctionne également.
*/
/* Options de listen:
ANCIEN | ACTUEL
S serversonly
C clientsonly
J java
s ssl
* standard
*/
/* NOTE SUR LES PORTS SSL: les ports SSL sont plutôt non standardisés,
* A côté des nombreux ports high-SSL, certaines personnes disent que vous devez
* l'utiliser sur le port 994 car c'est le port SSL officiel.. mais cela
* requière d'être root! D'un autre coté, le port 194 est le port irc officiel et
* avez vous déjà vu un ircd fonctionner sur celui-ci ?
* Donc, notre suggestion est d'utiliser le port 6697 pour le SSL, ceci est utilisé par
* assez bien de réseaux et est reconnu par exemple par StunTour.
* Vous êtes libre d'ouvrir autant de ports SSL que vous le désirez mais
* en utilisant (au moins) 6697 vous aidez le monde à standardiser un peu a bit ;).
*/
listen *:6697
{
options
{
ssl;
clientsonly;
};
};
listen *:8067;
listen *:6667;
/* NOTE: Si vous êtes sur un shell shell avec de multiples IP's vous êtes
* susceptibles d'avoir l'erreur 'Address already in use' (adresse déjà utilisée)
* dans vos logs et l'ircd refusera de démarer.
* Cela signifie que vous devrez utiliser une IP spécifique au lieu de '*',
* Donc par exemple :
* listen 1.2.3.4:6667;
* Evidemment, remplacez l'IP par celle qui vous a été assignée.
*/
/*
* ACTUEL : link {}
* ANCIEN : C/N:Lines
* Défini un accord pour la connexion d'un serveur.
* NOTE : CHACUN DES SERVEURS NECESSITE UN PARAMETRE LINK {} POUR SE CONNECTER CORRECTEMENT !
* La syntaxe est la suivante :
* link (nom du serveur)
* {
* username (username, * fonctionne aussi);
* hostname (ip/hostmask);
* bind-ip (Quelle IP à laquelle se relier lors de la connexion, ou *);
* port (port auquel se connecter, si il y en a un);
* hub (Si c'est un a hub, * fonctionne, ou les servermasks qu'il doit porter);
* [ou leaf *;]
* password-connect "(mot de passe à envoyer)";
* password-receive "(mot de passe que l'on doit recevoir)";
* class (classe à affecter aux serveurs);
* options {
* (options ici*);
* };
* // Si vous utilisez le SSL, vous pouvez choisir quel cryptage (cipher) utiliser dans le mode SSL
* // Retrouvez une liste "crytages openssl", séparez les cryptages par des :
*
* ciphers "DES-CBC3-MD5";
*
* };
*/
/*
options:
ANCIEN | ACTUEL
S ssl
Z zip
N/A autoconnect
N/A quarantine
N/A nodnscache
*/
link hub.mynet.com
{
username *;
hostname 1.2.3.4;
bind-ip *;
port 7029;
hub *;
password-connect "LiNk";
password-receive "LiNk";
class servers;
options {
/* Note : Vous ne devriez pas utiliser autoconnect lorsque vous linkez des services */
autoconnect;
ssl;
zip;
};
};
/*
*
* ACTUEL : ulines {}
* ANCIEN : U:Line
* Les U-lines donnent aux serveurs plus de pouvoir/commandes, ceci doit UNIQUEMENT être appliqué
* aux serveurs de services/stats et JAMAIS pour des servuers UnrealIRCd normaux !
* La syntaxe est la suivante :
* ulines {
* (serveur auquel appliquer la uline);
* (serveur auquel appliquer la uline);
* [etc]
* };
*/
ulines {
services.roxnet.org;
stats.roxnet.org;
};
/*
* ACTUEL : drpass {}
* ANCIEN : X:Line
* Défini les mots de passe pour les commandes /die et /restart.
* La syntaxe est la suivante :
* drpass {
* restart "(mot de passe pour relancer)";
* die "(mot de passe pour arrêter)";
* };
*/
drpass {
restart "I-love-to-restart";
die "die-you-stupid";
};
/*
* ACTUEL : log {}
* ANCIEN : N/A
* Dit à l'ircd où et quoi loguer. Vous pouvez en avoir
* autant que vous le souhaitez.
*
* FLAGS : errors, kills, tkl, connects, server-connects, kline, oper
*
* Syntaxe :
* log "fichier de log"
* {
* flags
* {
* flag;
* flag;
* etc..
* };
* };
*/
log "ircd.log" {
/* Efface le fichier de log et commence un nouveau lorsqu'il dépasse 2MB,
retirez ceci pour toujour utiliser le même fichier de log */
maxsize 2097152;
flags {
oper;
kline;
connects;
server-connects;
kills;
errors;
sadmin-commands;
chg-commands;
oper-override;
spamfilter;
};
};
/*
* ACTUEL : alias {}
* ANCIEN : N/A
* Ceci vous permet de définir des alias pour les commandes telles que /nickserv, /chanserv etc
* FLAGS: services, stats, normal
*
* Syntaxe :
* alias "nom" {
* target "pointe vers";
* type typedalias;
* };
*
* [NOTE : Vous pouvez également inclure un fichier d'alias prédéfinis ici, voir
* doc/unreal32docs.fr.html section 2.9]
*/
// Ceci fait pointer la commande /nickserv vers l'utilisateur NickServ qui est connecté au serveur set::services-server
/*alias NickServ {
target "NickServ";
type services;
};*/
// Si vous voulez que la commande pointe vers le même nom que la commande, vous pouvez ignorez l'entré du nom
//alias ChanServ { type services; };
// Faire pointer la commande /statserv vers l'utilisateur StatServ sur le serveur set::stats-name
//alias StatServ { type stats; };
// Faire pointer la commande /superbot vers l'utilisateur SuperBot
//alias SuperBot { type normal; };
/* Alias Standards */
alias NickServ { type services; };
alias ChanServ { type services; };
alias OperServ { type services; };
alias HelpServ { type services; };
alias StatServ { type stats; };
/*
* ACTUEL : alias {}
* ANCIEN : N/A
* Ceci vous permet de définir des alias pour les commandes telles que /identify, /services, etc
*
* Syntaxe :
* alias "nom" {
* format "format string" {
* target "pointer vers";
* type typedalias;
* parameters "paramètres à envoyer";
* };
* type command;
* };
*/
/* Ceci est expliqué séparément car même si elle a le même nom que la directive précédente, elle est très
* différente dans sa syntaxe, bien que elle a une fonction similaire et dépend des alias standards pour
* fonctionner.
*/
/*
alias "identify" {
format "^#" {
target "chanserv";
type services;
parameters "IDENTIFY %1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "IDENTIFY %1-";
};
type command;
};
*/
/* La direcitive alias::format est une expression régulière. Le premier format correspond à la commande
* /identify command lorsque le premier caractère est un #. Cela renvois donc à l'alias chanserv avec
* les paramètres IDENTIFY %1-. Le second format correspond à la commanden /identify lorsque le premier
* caractère n'est pas un #. Cela envoies alors la commande à l'alias nickserv avec les paramètres
* IDENTIFY %1-.
*/
/* L'alias::format::parameters est similaire aux languages de programmation. %N (où N est un nombre)
* représente un paramètre envoyé à la commande (dans ce cas /identify). Si vous spécifiez %N- cela
* signifie que tous les paramètres depuis N jusqu'au dernier paramètre dans la chaîne de caractères.
* Vous pouvez également spécifier %n qui est remplacé par le pseudo de l'utilisateur.
*/
/* Alias Standards */
alias "services" {
format "^#" {
target "chanserv";
type services;
parameters "%1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "%1-";
};
type command;
};
alias "identify" {
format "^#" {
target "chanserv";
type services;
parameters "IDENTIFY %1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "IDENTIFY %1-";
};
type command;
};
/* Ceci est un exemple de véritable alias de commande*/
/* Ceci renvoye /GLINEBOT à /GLINE <parameter> 2d etc... */
alias "glinebot" {
format ".+" {
command "gline";
type real;
parameters "%1 2d Les bots ne sont pas permis sur ce serveur, lisez s'il-vous-plait la faq sur http://www.example.com/faq/123";
};
type command;
};
/*
* ACTUEL : tld {}
* ANCIEN : T:Line
* Ceci applique une motd et des fichiers de règles différents
* en fonction de l'hostmask des clients.
* La syntaxe est la suivante :
* tld {
* mask (ident@host);
* motd "(motd file)";
* rules "(rules file)";
* };
*/
tld {
mask *@*.fr;
motd "ircd.motd.fr";
rules "ircd.rules.fr";
};
/* note : vous pouvez juste effacer le bloc d'exemple ci-dessus,
* en quel cas les fichiers motd/règles par défaut (ircd.motd, ircd.rules)
* seront utilisés pour tout le monde.
*/
/*
* ACTUEL : ban nick {}
* ANCIEN : Q:Line
* Banni un pseudo, il ne peut donc être utilisé.
* La syntaxe est la suivante :
* ban nick {
* mask "(pseudo à bannir)";
* reason "(raison)";
* };
*/
ban nick {
mask "*C*h*a*n*S*e*r*v*";
reason "Reservé aux Services";
};
/*
* ACTUEL : ban ip {}
* ANCIEN : Z:Line
* Empêche une ip de se connecter au réseau.
* Syntaxe :
* ban ip { mask (ip/hostmask); reason "(raison)"; };
*/
ban ip {
mask 195.86.232.81;
reason "Serveur délinké";
};
/*
* ACTUEL : ban server {}
* ANCIEN : Server Q:Line
* Empêche un serveur de se connecter au réseau.
* Si le serveur est linké à un serveur distant, le serveur local
* sera déconnecté du réseau.
* La syntaxe est la suivante :
* ban server {
* mask "(nom du serveur)";
* reason "(raison à donner)";
* };
*/
ban server {
mask eris.berkeley.edu;
reason "Va-t-en d'ici.";
};
/*
* ACTUEL : ban user {}
* ANCIEN : K:Line
* Fait qu'un utilisateur avec un certain masque ne peut se connecter
* à votre serveur.
* Syntaxe :
* ban user { mask (hostmask/ip); reason "(raison)"; };
*/
ban user {
mask *tirc@*.saturn.bbn.com;
reason "Idiot";
};
/*
* ACTUEL : ban realname {}
* ANCIEN : n:Line
* Ceci empêche un certain realname d'être utilisé.
* Syntaxe :
* ban realname {
* mask "(realname)";
* reason "(raison)";
* };
*/
ban realname {
mask "Swat Team";
reason "mIRKFORCE";
};
ban realname {
mask "sub7server";
reason "sub7";
};
/*
* NOTE POUR TOUS LES BANS, ils peuvent être répetés pour ajouter des entrées !
*
* ACTUEL : except ban {}
* ANCIEN : E:Line
* Fait que vous ne pouvez être banni.
* Syntaxe :
* except ban { mask (ident@host); };
* Répétez l'except ban {} autant de fois
* que vous voulez pour différents hosts.
*/
except ban {
/* ne banni pas stskeeps */
mask *stskeeps@212.*;
};
/*
* ACTUEL : deny dcc {}
* ANCIEN : dccdeny.conf
* Utilisez ceci pour bloquer l'envoie de dcc... stope
* mieux les virus.
* Syntaxe :
* deny dcc
* {
* filename "fichier à bloquer (ex : *exe)";
* reason "raison";
* };
*/
deny dcc {
filename "*sub7*";
reason "Possible Sub7 Virus";
};
/*
* ACTUEL : deny channel {}
* ANCIEN : N/A (NEW)
* Ceci empêche des salons d'être joins.
* Syntax:
* deny channel {
* channel "(salon)";
* reason "raison";
* };
*/
deny channel {
channel "*warez*";
reason "Warez is illegal";
};
/*
* ACTUEL : vhost {}
* ANCIEN : Vhost.conf file
* Applique une ip factice aux non-opers, ou aux
* opers trop flemmards pour utiliser /sethost :P
* Syntaxe :
* vhost {
* vhost (vhost.com);
* from {
* userhost (ident@host à autoriser à utiliser);
* };
* login (login);
* password (mot de passe);
* };
* ensuite pour utiliser ce vhost, tapez /vhost (login) (mot de passe) sur l'IRC
*/
vhost {
vhost i.hate.microsefrs.com;
from {
userhost *@*.image.dk;
};
login stskeeps;
password moocowsrulemyworld;
};
/* Vous pouvez utiliser d'autres fichiers de configuration */
/* include "klines.conf"; */
/* Configuration du réseau */
set {
network-name "ROXnet";
default-server "irc.roxnet.org";
services-server "services.roxnet.org";
stats-server "stats.roxnet.org";
help-channel "#ROXnet";
hiddenhost-prefix "rox";
/* prefix-quit "no"; */
/* Les Cloak keys doivent être les mêmes sur tous les serveurs du réseau.
* Ils sont utilisés pour générer des hosts masqués et doivent être gardés secrets.
* Les clés doivent être 3 chaînes de 5-100 caractères melangés.
* (10-20 caractères est parfait) et elles doivent être constituées de minuscules (a-z),
* majuscules (A-Z) et chiffres (0-9) [voir le premier exemple de clé].
*/
cloak-keys {
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW";
"et une autre";
"et un autre";
};
/* host à l'identification oper */
hosts {
local "locop.roxnet.org";
global "ircop.roxnet.org";
coadmin "coadmin.roxnet.org";
admin "admin.roxnet.org";
servicesadmin "csops.roxnet.org";
netadmin "netadmin.roxnet.org";
host-on-oper-up "no";
};
};
/* Configuration spécifique d'un serveur */
set {
kline-address "mettre.cet.email";
modes-on-connect "+ixw";
modes-on-oper "+xwgs";
oper-auto-join "#opers";
options {
hide-ulines;
/* Vous pouvez enclencher la vérification des idents si vous voulez */
/* identd-check; */
show-connect-info;
};
maxchannelsperuser 10;
/* Durée maximum pendant laquelle un utilisateur doit rester connecté avant de pouvoir utiliser
* un message de QUIT.
* Ceci devrait aider à stoper le spam */
anti-spam-quit-message-time 10s;
/* Applique le message de static-quit à tous les quits - cela signifie qu'aucun
message de quit personalisé ne sera autorisé sur le serveur local */
/* static-quit "Client quit"; */
/* Vous pouvez également bloquer toutes les raisons de part en décommentant ceci et en disant
* 'yes', ou spécifiez un autre texte (ex: "Bye bye!") pour qu'il soit toujours utilisé.. */
/* static-part yes; */
/* Vous permet de restreindre certaines stats aux opers, utilisez * pour toutes les stats,
* enlevez le pour autoriser les utilisateurs à voir toutes les stats. Tapez '/stats' pour
* une liste complète.
* Certains admins pourront vouloir bloquer 'kGs' pour que les utilisateurs normaux ne puissent
* lister les klines, glines et shuns.
*/
oper-only-stats "okfGsMRUEelLCXzdD";
/* Throttling: cet exemple applique une limite de 3 tentatives de connection en 60s (par host). */
throttle {
connections 3;
period 60s;
};
/* Protection Anti flood */
anti-flood {
nick-flood 3:60; /* 3 changements de pseudo en 60 secondes (la valeur par défaut) */
};
/* Filtre anti-spam */
spamfilter {
ban-time 1d; /* durée par défaut d'un ban *line appliqué par le spamfilter */
ban-reason "Spam/Advertising"; /* raison par défaut */
virus-help-channel "#help"; /* salon à utiliser pour l'action 'viruschan' */
/* excepté "#help"; salon à exempter de filtrage */
};
};
/*
* Problèmes ou besoin de plus d'aide ?
* 1) www.vulnscan.org/UnrealIRCd/unreal32docs.fr.html
* 2) www.vulnscan.org/UnrealIRCd/faq/ <- contient 80% de vos questions !
* 3) Si vous avez encore des problèmes vous pouvez aller sur irc.ircsystems.net #unreal-support,
* notez que vous devez avoir LU LA DOCUMENTATION ET LA FAQ d'abord !
*/
-824
View File
@@ -1,824 +0,0 @@
/*
* example.conf Daniel Hawton avagy Osiris jóvoltából (osiris@unrealircd.org).
* A magyar fordítást AngryWolf <angrywolf@flashmail.com> készítette.
* $Id$
*
* Felhasználható Unreal3.2 és későbbi verziókhoz
*
* Oké, emberek! Ez az új példa konfiguráció. A kinézete nagyon hasonló
* a C++-hoz, olyasformán. Mindenesetre itt az ideje végigmennünk rajta. Eleinte
* nehéz nekilendülni, de kis gyakorlással és olvasgatással meg fogjuk érteni.
*
* Csak másoljuk be ezt a fájlt a fő unrealircd könyvtárunkba, és nevezzük
* 'unrealircd.conf'-nak.
*
* MEGJEGYZÉS: Minden sor, kivéve a nyitó { sort, ;-vel végződik, beleértve
* a záró } sort is. Az IRCd figyelmen kívül hagyja a megjegyzéssorokat.
*
* KÉRLEK, OLVASD EL A doc/unreal32docs.html-T! Az online verzió is elérhető
* a www.vulnscan.org/UnrealIRCd/unreal32docs.html címen.
* Rengeteg információt tartalmaz a konfigurációs fájlról: tájékoztatást ad
* minden blokkról, változóról stb.
* Ha megpróbálod szerkeszteni ezt a fájlt anélkül, hogy megfelelően elolvastad
* volna a dokumentációt, jó eséllyel kanyarodsz a biztos kudarc felé!
*/
/* Megjegyzések típusai */
#1. Megjegyzéstípus (Shell típusú)
// 2. Megjegyzéstípus (C++ stílusú)
/* 3. Megjegyzéstípus (C stílusú) */
#ezeket a sorokat az ircd figyelmen kívül hagyja.
/*
* Az UnrealIRCd támogat modulokat, néhányuk betöltése kötelező is.
* Legalább a parancsokat biztosító és egy álcázó modulra lesz szükségünk.
*/
/* *NIX-BAN vegyük ki a megjegyzésből a következő két sort: */
//loadmodule "src/modules/commands.so";
//loadmodule "src/modules/cloak.so";
/* Windows-BAN vegyük ki a megjegyzésből a következő két sort: */
//loadmodule "modules/commands.dll";
//loadmodule "modules/cloak.dll";
/*
* Azt is megtehetjük, hogy befűzünk más konfigurációs fájlokat.
* A help.conf tartalmazza az összes /helpop szöveget. A badwords.*.conf
* fájlok tartalmazzák az összes csúnyaszó bejegyzést a +G módhoz...
* A spamfilter.conf néhány jó szabályt a jelenlegi trójai vírusokra.
* Valószínűleg be akarjuk tölteni őket:
*/
include "help.conf";
include "badwords.channel.conf";
include "badwords.message.conf";
include "badwords.quit.conf";
include "spamfilter.conf";
/*
* ÚJ: me {}
* RÉGI: M:Line
* A me {} határozza meg ennek a szervernek a nevét, a leírását és az unrealbeli
* szerverazonosító-számát. A szintaktikája a következő:
* me {
* name "szerver.név";
* info "A szerver leírása";
* numeric (szerverazonosító*);
* };
* Ha linkelünk, ezt az azonosítószámot nem használhatja semmilyen más szerver
* a hálózaton.
*/
me
{
name "irc.valaminet.com";
info "ValamiNet Szerver";
numeric 1;
};
/*
* ÚJ: admin {}
* RÉGI: A:Line
* Ez a blokk információt ad a szerver adminisztrátorairól. Annyi sort tehetünk
* az admin { alá, amennyit kívánunk.
* A szintaktikája a következő:
* admin {
* "első sor";
* "második sor";
* [stb]
* };
*/
admin {
"Bob Smith";
"bob";
"szeleskorben@hasznalt.nev";
};
/*
* ÚJ: class {}
* RÉGI: Y:line (a régi zavarbaejtő volt)
* Ezek az osztályokat állítják be. Az osztályok a kapcsolatok egy csoportjának
* beállításai. Például a szerver kapcsolatokat, ahelyett, hogy egy kliens
* osztályába kerülnének, beleirányítjuk a szerverek osztályába. Szintaktika:
* class (osztálynév)
* {
* pingfreq (hány másodpercenként pingeljünk egy felhasználót/szervert);
* maxclients (mennyi kapcsolat lehet ebben az osztályban);
* sendq (egy kapcsolat küldési sorának maximális mérete);
* recvq (egy kapcsolat fogadási sorának maximális mérete [árvízvédelem]);
* };
*/
class clients
{
pingfreq 90;
maxclients 500;
sendq 100000;
recvq 8000;
};
class servers
{
pingfreq 90;
maxclients 10; /* Legfeljebb ennyi szervert linkelhetünk egyszerre */
sendq 1000000;
connfreq 100; /* Ennyi másodpercet várjon, mielőtt újra kapcsolódik */
};
/*
* ÚJ: allow {}
* RÉGI: I:Line
* Ez a kapcsolatok engedélyezését határozza meg...
* Alapvetően kliensekre használjuk; megengedi nekik, hogy kapcsolódjanak, így
* némileg van lehetőség a szabályozásra, valamint jelszót is beállíthatunk.
* A szintaktika a következő:
* allow {
* ip (ip maszk az engedélyezéshez);
* hostname (gazdanév maszk);
* class (osztály, ahová küldjük őket [lásd: class {}]);
* password "(jelszó)"; (nem kötelező)
* maxperip (mennyi kapcsolatot engedjünk ip címenként); (nem kötelező)
* };
*/
allow {
ip *@*;
hostname *@*;
class clients;
maxperip 5;
};
/* Jelszavas allow blokk */
allow {
ip *@255.255.255.255;
hostname *@*.jelszavas.csunya.emberkek;
class clients;
password "V4lami";
maxperip 1;
};
/*
* ÚJ: allow channel {}
* RÉGI: chrestrict
* Megengedi egy felhasználónak, hogy belépjen egy csatornára...
* mint egy csatornáról letiltás alóli kivétel.
* Szintaktika:
* allow channel {
* channel "csatornanév";
* };
*/
allow channel {
channel "#AWarezSzívás";
};
/*
* ÚJ: oper {}
* RÉGI: O:Line
* Definiál egy IRC operátort
* Az IRC operátorok feladata, hogy épségben tartsák a szervert; rendszerint
* ügyelnek a karbantartottságára és arra, hogy kapcsolatban maradjon
* a hálózattal. A szintaktika a következő:
* oper (bejelentkezőnév) {
* class (osztály, ahová berakjuk őket; ha eddig más osztályban voltak,
* átteszi őket ebbe az új osztályba);
* from {
* userhost (azonosító@gazdanév);
* userhost (azonosító@gazdanév);
* };
* flags
* {
* (flagek ide*);
* };
* VAGY
* flags "régi típusú flagek, mint pl. OAaRD";
* };
*/
/* Az oper flagek listáját lásd a doc/unreal32docs.hu.html#operblock szekcióban
* [ERŐSEN ajánlott elolvasni]
*/
oper bobsmith {
class clients;
from {
userhost bob@smithco.com;
};
password "f00";
flags
{
netadmin;
can_zline;
can_gzline;
can_gkline;
global;
};
};
/*
* ÚJ: listen {}
* RÉGI: P:Line
* Meghatároz egy olyan portot, amelyet az ircd megnyit, és engedélyt ad
* a felhasználóknak/szervereknek, hogy kapcsolódjanak a szerverre.
* A szintaktika a következő:
* listen (ip cím):(portszám)
* {
* options {
* (opciók ide);
* };
* };
* vagy egy síma portnyitáshoz:
* listen (ip):(port);
*
* MEGJEGYZÉS: ipv6-os ip-kre (3ffe:b80:2:51d::2 stb.) használjuk a
* listen [ip]:port;
* szintaktikát. Az is működik.
*/
/* Opciók a listenhez:
RÉGI | ÚJ
S serversonly
C clientsonly
J java
s ssl
* standard
*/
/* MEGJEGYZÉS SSL PORTOKRA: az SSL portok eléggé szabványosítatlanok, emellett
* sok a magas SSL port. Néhányan azt mondják, a 994-en célszerű futtatni,
* mert az a hivatalos SSL port... de a rendszergazdát igényel! Ezenkívül,
* a 194 a hivatalos irc port, de láttunk valaha egy ircd-t azon futni?
* Így mi a javaslatunk az, hogy használjuk a 6697-et SSL-hez, ezt használja
* jónéhány hálózat, és ezt ismeri fel például a StunTour is.
* Szabadon megnyithatunk annyi SSL portot, amennyit akarunk, de ha a 6697-et
* (is) használjuk, kicsit segítjük a világot szabványosodni ;).
*/
listen *:6697
{
options
{
ssl;
clientsonly;
};
};
listen *:8067;
listen *:6667;
/* MEGJEGYZÉS: Ha egy több IP címes IRCd shellen vagyunk, előfordulhat, hogy
* "Address already in use" ("A cím már használatban van") hibaüzeneteket
* találunk a naplóban, és az ircd nem indul el. Ez azt jelenti, hogy
* az ircd-nek egy meghatározott IP címre KELL bindelnie a "*" helyett
* vagyis például így:
* listen 1.2.3.4:6667;
* Természetesen cseréljük ki az IP címet arra az IP-re, amelyet nekünk
* osztottak ki.
*/
/*
* ÚJ: link {}
* RÉGI: C/N:Line-ok
* Ez a blokk "igen"-t mond egy szerver kapcsolódására.
* MEGJEGYZÉS: MINDKÉRT SZERVEREN KELL EGY LINK {} BEÁLLÍTÁS A HELYES
* KAPCSOLÓDÁSHOZ!
* A szintaktika a következő:
* link (szervernév)
* {
* username (felhasználónév, * is működik);
* hostname (ip cím/gazdanév maszk);
* bind-ip (amilyen IP címre bindeljen kapcsolódáskor, vagy *);
* port (port, ahová kapcsolódjon, ha van);
* hub (Ha ez egy hub; * működik, vagy szervermaszkokat is beírhatunk);
* [vagy leaf *;]
* password-connect "(elküldendő jelszó)";
* password-receive "(fogadandó jelszó)";
* class (osztály, ahová betesszük a szervereket);
* options {
* (opciók ide*);
* };
* // Ha SSL-t használunk, kiválaszthatjuk, milyen rejtjelező algoritmusok
* // legyenek használatban SSL módban. Listát kapunk az "openssl ciphers"
* // paranccsal. Az egyes algoritmusokat :-tal válasszuk el.
*
* ciphers "DES-CBC3-MD5";
*
* };
*/
/*
opciók:
RÉGI | ÚJ
S ssl
Z zip
N/A autoconnect
N/A quarantine
N/A nodnscache
*/
link hub.sajatnet.com
{
username *;
hostname 1.2.3.4;
bind-ip *;
port 7029;
hub *;
password-connect "LiNk";
password-receive "LiNk";
class servers;
options {
/* Megjegyzés: szolgáltatások linkelésekor célszerű nem
* használni az autoconnect opciót.
*/
autoconnect;
ssl;
zip;
};
};
/*
*
* ÚJ: ulines {}
* RÉGI: U:Line
* Az U-line-ok több hatalmat/parancsot adnak a szervereknek. CSAK
* szolgáltatásokat és statisztikákat nyújtó szerverekre érdemes beállítani,
* és SOHA rendes UnrealIRCd szerverekre!
* A szintaktika a következő:
* ulines {
* (uline-ra teendő szerver);
* (uline-ra teendő szerver);
* [stb.]
* };
*/
ulines {
services.roxnet.org;
stats.roxnet.org;
};
/*
* ÚJ: drpass {}
* RÉGI: X:Line
* Meghatározza a jelszavakat a /die és /restart parancsokhoz.
* A szintaktika a következő:
* drpass {
* restart "(újraindítás jelszava)";
* die "(leállítás jelszava)";
* };
*/
drpass {
restart "Imádok-újraindítani";
die "Halj-te-buta";
};
/*
* ÚJ: log {}
* RÉGI: N/A
* Megmondja az ircd-nek, hová és mit naplózzon. Annyi naplófájlunk lehet,
* amennyit szeretnénk.
*
* FLAGEK: errors, kills, tkl, connects, server-connects, kline, oper
*
* Szintaktika:
* log "naplófájl"
* {
* flags
* {
* (flag);
* (flag);
* [stb.]
* };
* };
*/
log "ircd.log" {
/* Törölje a naplófájlt, és kezdjen egy újat, ha eléri a 2 MB-ot;
* hagyjuk ki ezt a beállításból, ha mindig ugyanazt a naplót
* szeretnénk használni
*/
maxsize 2097152;
flags {
oper;
kline;
connects;
server-connects;
kills;
errors;
sadmin-commands;
chg-commands;
oper-override;
spamfilter;
};
};
/*
* ÚJ: alias {}
* RÉGI: N/A
* Ezzel olyan álparancsokat készíthetünk, mint a /nickserv, /chanserv stb.
* FLAGEK: services (szolgáltatás), stats (statisztika), normal (közönséges
* felhasználó)
*
* Szintaxis:
* alias "név" {
* target "ahová mutasson";
* type álparancstípus;
* };
*
* [MEGJEGYZÉS: Beilleszthetünk ide egy előre beállított álparancsfájlt is,
* lásd: doc/unreal32docs.html, 2.9-es szekció]
*/
// Ez a /nickserv parancsot a NickServ felhasználóra irányítja, aki a set::services-server szerverre kapcsolódott.
/*alias NickServ {
target "NickServ";
type services;
};*/
// Ha a parancsot ugyanarra a nicknévre szeretnénk irányítani, ami a parancs neve, kihagyhatjuk a nick bejegyzést.
//alias ChanServ { type services; };
// A /statserv parancsot a set::stats-server szerveren lévő StatServ felhasználóra irányítja
//alias StatServ { type stats; };
// A /superbot parancsot a SuperBot felhasználóra irányítja.
//alias SuperBot { type normal; };
/* Szabványos álparancsok */
alias NickServ { type services; };
alias ChanServ { type services; };
alias OperServ { type services; };
alias HelpServ { type services; };
alias StatServ { type stats; };
/*
* ÚJ: alias {}
* RÉGI: N/A
* Ezzel olyan álparancsokat készíthetünk, mint az /identify, /services stb.
*
* Szintaktika:
* alias "név" {
* format "formátumsztring" {
* target "ahova mutasson";
* type álparancstípus;
* parameters "küldendő paraméterek";
* };
* type command;
* };
*/
/* Ezt azért mutatjuk külön, mert még ha ugyanaz is a neve, mint az előző direktívának, a szintaktikája nagyon
* más, habár hasonló feladatot lát el, és a szabványosok álparancsokra van szüksége, hogy működjön.
*/
/*
alias "identify" {
format "^#" {
target "chanserv";
type services;
parameters "IDENTIFY %1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "IDENTIFY %1-";
};
type command;
};
*/
/* Az alias::format direktíva egy reguláris kifejezés. Az első formátum akkor illeszkedik az /identify parancsra,
* ha az első karakter egy #. Azután elküldi ezt a chanserv álparancshoz az IDENTIFY %1- paraméterekkel.
* A második formátum akkor illeszkedik az /identify parancsra, ha az első karakter nem egy #. Azután
* elküldi a parancsot a nickserv álparancshoz az IDENTIFY %1- paraméterekkel.
*/
/* Az alias::format::parameters hasonló a scriptnyelvekhez. Az %N (ahol N egy szám) a parancshoz küldött egyik
* paramétert ábrázolja (ebben az esetben az /identify-ét). Ha azt írjuk, hogy %N-, a sztring N-edik
* paraméterétől az utolsóig minden paramétert fog jelenteni. Megadhatunk egy %n-et is, amely ki lesz cserélve
* a felhasználó nicknevével.
*/
/* Szabványos álparancsok */
alias "services" {
format "^#" {
target "chanserv";
type services;
parameters "%1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "%1-";
};
type command;
};
alias "identify" {
format "^#" {
target "chanserv";
type services;
parameters "IDENTIFY %1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "IDENTIFY %1-";
};
type command;
};
/* Példa egy valódi álparancsra */
/* A /GLINEBOT parancsot leképezi arra, hogy /GLINE <paraméter> 2d stb... */
alias "glinebot" {
format ".+" {
command "gline";
type real;
parameters "%1 2d Botok tilosak ezen a szerveren, kérlek, olvasd el a faq-ot a http://www.example.com/faq/123 címen";
};
type command;
};
/*
* ÚJ: tld {}
* RÉGI: T:Line
* Beállít más motd és rules fájlt
* a kliens hostmaszkjára.
* A szintaktikája a következő:
* tld {
* mask (azonosító@gazda);
* motd "(motd fájl)";
* rules "(rules fájl)";
* };
*/
tld {
mask *@*.fr;
motd "ircd.motd.fr";
rules "ircd.rules.fr";
};
/* megjegyzés: a fenti példa blokkot akár le is törölhetjük; ebben az esetben
* mindenkire az alapértelmezett motd/rules fájlok (ircd.motd, ircd.rules)
* lesznek használatban.
*/
/*
* ÚJ: ban nick {}
* RÉGI: Q:Line
* Kitilt egy nicknevet, így az nem használható.
* A szintaktikája a következő:
* ban nick {
* mask "(kitiltandó nick)";
* reason "(indoklás)";
* };
*/
ban nick {
mask "*C*h*a*n*S*e*r*v*";
reason "Fenntartva a szolgáltatásoknak";
};
/*
* ÚJ: ban ip {}
* RÉGI: Z:Line
* Megtiltja egy ip-nek, hogy a hálózatra kapcsolódjon.
* Szintaktika:
* ban ip { mask (ip cím/gazdanévmaszk); reason "(indoklás)"; };
*/
ban ip {
mask 195.86.232.81;
reason "Lecsatolt szerver";
};
/*
* ÚJ: ban server {}
* RÉGI: Q:Line szerverekre
* Megtiltja egy szervernek, hogy a hálózatra kapcsolódjon.
* Ha egy szerver távoli szerverre linkel, a helyi szerver
* szétkapcsolja a hálózatról.
* A szintaktikája a következő:
* ban server {
* mask "(szervernév)";
* reason "(indoklás)";
* };
*/
ban server {
mask eris.berkeley.edu;
reason "Mars ki innen!";
};
/*
* ÚJ: ban user {}
* RÉGI: K:Line
* Elintézi, hogy egy felhasználó egy bizonyos maszkról ne tudjon kapcsolódni
* a szerverünkre.
* Szintaktika:
* ban user { mask (gazdanévmaszk/ip cím); reason "(indok)"; };
*/
ban user {
mask *tirc@*.saturn.bbn.com;
reason "Idióta";
};
/*
* ÚJ: ban realname {}
* RÉGI: n:Line
* Letiltja egy bizonyos valós név használatát.
* Szintaktikája:
* ban realname {
* mask "(valós név)";
* reason "(indok)";
* };
*/
ban realname {
mask "Swat Team";
reason "mIRKFORCE";
};
ban realname {
mask "sub7server";
reason "sub7";
};
/*
* MEGJEGYZÉS MINDEN BANRA: ezek ismételhetőek további bejegyzésekhez!
*
* ÚJ: except ban {}
* RÉGI: E:Line
* Elintézi, hogy ne lehessen minket kibannolni.
* Szintaktika:
* except ban { mask (azonosító@gazda); };
* További gazdákhoz annyiszor ismételjük az except ban {}-t,
* amennyiszer szükséges.
*/
except ban {
/* ne tiltsuk ki stskeeps-t */
mask *stskeeps@212.*;
};
/*
* ÚJ: deny dcc {}
* RÉGI: dccdeny.conf
* Használjuk dcc küldések blokkolására... Jobban
* megállítja a vírusokat.
* Szintaktika:
* deny dcc
* {
* filename "blokkolandó fájl (pl. *exe)";
* reason "indok";
* };
*/
deny dcc {
filename "*sub7*";
reason "Valószínűleg Sub7 Virus";
};
/*
* ÚJ: deny channel {}
* RÉGI: N/A (ÚJ)
* Letiltja bizonyos csatornákon a belépést.
* Szintaktika:
* deny channel {
* channel "(csatorna)";
* reason "indok";
* };
*/
deny channel {
channel "*warez*";
reason "A warez törvényellenes";
};
/*
* ÚJ: vhost {}
* RÉGI: Vhost.conf fájl
* Beállít egy hamis ip címet közönséges felhasználókon, vagy
* olyan operátorokon, akik lusták a /sethost-ot használni :P
* Szintaktika:
* vhost {
* vhost (vhost.com);
* from {
* userhost (azonosító@gazda, aki használhatja);
* };
* login (bejelentkezőnév);
* password (jelszó);
* };
* azután e vhost használatához adjuk ki
* a /vhost (bejelentkezőnév) (jelszó) parancsot IRC-n
*/
vhost {
vhost i.hate.microsefrs.com;
from {
userhost *@*.image.dk;
};
login stskeeps;
password moocowsrulemyworld;
};
/* Befűzhetünk más konfigurációs fájlokat */
/* include "klines.conf"; */
/* Hálózati beállítások */
set {
network-name "ROXnet";
default-server "irc.roxnet.org";
services-server "services.roxnet.org";
stats-server "stats.roxnet.org";
help-channel "#ROXnet";
hiddenhost-prefix "rox";
/* prefix-quit "no"; */
/* Az álcázó kulcsoknak a hálózat minden szerverén azonosnak kell
* lenniük. Az álcázott gazdanevek előállításában van szerepük, ezért
* legyenek titokban tartva! Mind 3 kulcs legyen egy-egy véletlenszerű
* sztring 5-100 karakterből (10-20 karakter kitűnő), valamint
* tartalmazniuk kell kisbetűket (a-z), nagybetűket (A-Z) és számokat
* (0-9) [ahogy az első kulcsos példában látható].
* TIPP: *NIX alatt az './unreal gencloak' parancsot futtatva
* a parancsértelmezőnkben, az Unreal 3 véletlen sztringet
* generál nekünk.
*/
cloak-keys {
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW";
"írjunk hozzá még egyet";
"írjunk hozzá még egyet";
};
/* gazdanevek opereléskor */
hosts {
local "locop.roxnet.org";
global "ircop.roxnet.org";
coadmin "coadmin.roxnet.org";
admin "admin.roxnet.org";
servicesadmin "csops.roxnet.org";
netadmin "netadmin.roxnet.org";
host-on-oper-up "no";
};
};
/* Szerverszintű beállítások */
set {
kline-address "állítsuk.be.ezt.az.emailt";
modes-on-connect "+ixw";
modes-on-oper "+xwgs";
oper-auto-join "#operek";
options {
hide-ulines;
/* Itt engedélyezhetjük az ident ellenőrzést, ha szeretnénk */
/* identd-check; */
show-connect-info;
};
maxchannelsperuser 10;
/* Legkevesebb ennyi ideig kell a felhasználónak kapcsolatban lennie,
* mielőtt engedélyt kap a QUIT üzenetek használatára. Remélhetőleg
* ez leállítja a spamot. */
anti-spam-quit-message-time 10s;
/* A static-quit a neki megadott üzenetet megjeleníti minden
* kilépésben - avagy egyéni kilépési szövegek nem engedélyezettek
* a helyi szerveren */
/* static-quit "Kliens kilépés"; */
/* Hasonlóan blokkolható minden lelépési indok, úgy, hogy kivesszük
* a megjegyzésből ezt, és "yes"-t írunk vagy megadunk valamilyen
* más szöveget (pl. "Bye bye!"), hogy mindig az legyen a lelépés
* indoklószövege. */
/* static-part yes; */
/* Ezzel megmondhatjuk, mely statisztikákat szeretnénk csak operátorok
* számára engedélyezni. Használjunk *-ot, ha az összeset kívánjuk,
* és hagyjuk el a direktívát, ha a felhasználók mindet láthatják. Írjuk
* be a "/stats" parancsot a teljes listáért.
* Lehet, hogy néhány adminisztrátor törölni fogja a "kGs"-t, hogy
a közönséges felhasználók láthassák a kline-okat, gline-okat és
* shunokat.
*/
oper-only-stats "okfGsMRUEelLCXzdD";
/* Elfojtás: ez a példa 60 másodpercenként legfeljebb 3 kapcsolódási
* kísérletet engedélyező korlátozást állít be (gazdánként). */
throttle {
connections 3;
period 60s;
};
/* Árasztásellenes védelem */
anti-flood {
nick-flood 3:60; /* 3 nicknévváltás 60 másodpercenként
(az alapértelmezés) */
};
/* Spamszűrő */
spamfilter {
ban-time 1d; /* a spamszűrő által beállított *line-ok
alapértelmezett kitiltási ideje */
ban-reason "Spam/Reklámozás"; /* alapértelmezett indok */
virus-help-channel "#help"; /* a "viruschan" tevékenységhez
használt csatorna */
/* except "#help"; kivesszük a szűrés alól ezt a csatornát */
};
};
/*
* Problémák akadtak, vagy szükség van további segítségre?
* 1) www.vulnscan.org/UnrealIRCd/unreal32docs.html
* 2) www.vulnscan.org/UnrealIRCd/faq/ <- a kérdéseid 80%-át tartalmazza!
* 3) Ha még mindig gondod van, felmehetsz az irc.ircsystems.net #unreal-support
* csatornájára. Fontos: kérjük, hogy előbb OLVASD EL A DOKUMENTÁCIÓT és
* a GYIK-ot!
*/
-816
View File
@@ -1,816 +0,0 @@
/*
* example.conf door Daniel Hawton AKA Osiris (osiris@unrealircd.org).
* $Id$
* Vertaald door Mark
*
* Werkt voor Unreal3.2 en hoger
*
* Dit is de nieuwe example.conf. Het lijkt veel op C++.
* Het begin is wellicht moeilijk, maar met wat ervaring en lezen
* zul je het wel begrijpen.
*
* Kopieer dit bestand naar je hoofd UnrealIRCd dir en noem het 'unrealircd.conf'.
*
* OPMERKING: Alle regels, behalve de openings { regel, eindingen met een ;, dus
* ook de sluitende } regel. Commentaar regels worden door de IRCd niet verwerkt.
*
* LEES doc/unreal32docs.html! De online versie is tevens te bereiken op:
* www.vulnscan.org/UnrealIRCd/unreal32docs.html
* Er staat heel veel informatie in over het configbestand: informatie over
* elk block, variabele, etc..
* Wanneer je dit bestand aanpast zonder de documentatie grondig te lezen,
* zul je gegarandeerd falen!
*/
/* Type van commentaar */
#Commentaar type 1 (Shell type)
// Commentaar type 2(C++ style)
/* Commentaar type 3 (C Style) */
#Deze regels worden niet verwerkt door de IRCd.
/*
* UnrealIRCd ondersteunt modules, het laden van sommige is benodigd.
* Je hebt tenminste een commands module en een cloacking module nodig.
*/
/* VOOR *NIX, haal de commentaartekens weg bij de volgende 2 regels: */
//loadmodule "src/modules/commands.so";
//loadmodule "src/modules/cloak.so";
/* VOOR Windows, haal de commentaartekens weg bij de volgende 2 regels: */
//loadmodule "modules/commands.dll";
//loadmodule "modules/cloak.dll";
/*
* Je kan tevens andere configuratiebestanden toevoegen.
* help.conf bevat alle /helpop tekst. De badwords.*.conf
* bestanden bevatten alle badword instellingen voor mode +G..
* spamfilter.conf bevat enkele goede regels voor huidige trojans.
* Je wilt deze waarschijnlijk laden:
*/
include "help.conf";
include "badwords.channel.conf";
include "badwords.message.conf";
include "badwords.quit.conf";
include "spamfilter.conf";
/*
* NIEUW: me {}
* OUD: M:Line
* me {} definieert de naam, beschrijving en unreal numeriek voor deze server.
* De syntax is als volgt:
* me {
* name "server.naam";
* info "Server Beschrijving";
* numeric (server numeric*);
* };
* Waneer je servers linkt, mag de numeric niet door een andere server in gebruik zijn.
*/
me
{
name "irc.foonet.com";
info "FooNet Server";
numeric 1;
};
/*
* NIEUW: admin {}
* OUD: A:Line
* Admin geeft informatie over de server admin. Je mag hier
* zo veel regels opgeven als je wilt.
* De syntax is als volgt:
* admin {
* "eerste regel";
* "tweede regel";
* [etc]
* };
*/
admin {
"Bob Smith";
"bob";
"widely@used.name";
};
/*
* NIEUW: class {}
* OUD: Y:line (de oude was verwarrend)
* Hiermee stel je de classes in. Een class is een groepsinstelling voor
* connections. Server connecties stuur je naar een andere class dan
* gebruikers.
* De syntax is als volgt:
* class (class naam)
* {
* pingfreq (hoe vaak er gepingt moet worden naar een gebruiker/server in seconden);
* maxclients (hoeveel connecties er maximaal in deze class mogen zijn);
* sendq (maximale send queue voor 1 connectie);
* recvq (maximale receive queue voor 1 connectie [flood control]);
* };
*/
class clients
{
pingfreq 90;
maxclients 500;
sendq 100000;
recvq 8000;
};
class servers
{
pingfreq 90;
maxclients 10; /* Hoeveel servers we maximaal tegelijk gelinkt kunnen hebben */
sendq 1000000;
connfreq 100; /* Hoeveel seconden tussen een poging to verbinden */
};
/*
* NIEUW: allow {}
* OUD: I:Line
* Hiermee stel je het toestaan van connecties in.
* Gebruikers kunnen verbinden, en jij hebt wat controle en kan eventueel
* een wachtwoord instellen.
* De syntax is als volgt:
* allow {
* ip (ip mask dat toegestaan moet worden);
* hostname (host mask);
* class (class waarnaar ze gestuurd moeten worden [see class {}]);
* password "(wachtwoord)"; (optioneel)
* maxperip (hoeveel connecties per IP); (optioneel)
* };
*/
allow {
ip *@*;
hostname *@*;
class clients;
maxperip 5;
};
/* Allow met wachtwoord */
allow {
ip *@255.255.255.255;
hostname *@*.passworded.ugly.people;
class clients;
password "f00Ness";
maxperip 1;
};
/*
* NIEUW: allow channel {}
* OUD: chrestrict
* Geeft de mogelijkheid een kanaal te joinen,
* als uitzondering voor een deny channel {}
* De syntax is als volgt:
* allow channel {
* channel "kanaal naam";
* };
*/
allow channel {
channel "#WarezSucks";
};
/*
* NIEUW: oper {}
* OUD: O:Line
* Stelt een IRC Operator in
* IRC Operators zorgen voor orde op de server en zorgen er
* tevens voor dat de server verbonden blijft met het netwerk.
* De syntax is als volgt:
* oper (login) {
* class (class waarin ze geplaatst moeten worden.);
* from {
* userhost (ident@host);
* userhost (ident@host);
* };
* flags
* {
* (flags hier*);
* };
* OF
* flags "oud type flags, zoals OAaRD";
* };
*/
/* Voor een lange lijst van oper flags, zie doc/unreal32docs.html#operblock
* [wordt ten zeerste aangeraden te lezen!]
*/
oper bobsmith {
class clients;
from {
userhost bob@smithco.com;
};
password "f00";
flags
{
netadmin;
can_zline;
can_gzline;
can_gkline;
global;
};
};
/*
* NIEUW: listen {}
* OUD: P:Line
* Hiermee stel je een poort in voor de IRCd, zodat
* gebruikers/servers kunnen verbinden met je server.
* De syntax is als volgt:
* listen (ip nummer):(port nummer)
* {
* options {
* (opties hier);
* };
* };
* of een gewone:
* listen: listen (ip):(port);
*
* OPMERKING: voor IPv6 IPs (3ffe:b80:2:51d::2 etc), gebruik listen [ip]:port;
*
* Dat werkt ook.
*/
/* Opties voor listen:
OUD | NIEUW
S serversonly
C clientsonly
J java
s ssl
* standard
*/
/* Opmerking voor SSL poorten: SSL poorten zijn niet echt
* standaard. Mensen zeggen dat je SSL op poort 994 moet laten
* lopen, omdat dit de standaard SSL poort is.. Maar meestal worden
* hogere poorten gebruikt. Om poort 994 te gebruiken, moet je root
* zijn! Tevens is poort 194 de officiele IRC poort. Maar heb je daar
* ooit een IRCd op zien lopen?
* Wij raden je aan om poort 6697 voor SSL te gebruiken. Dit wordt op
* vrijwel alle netwerken gebruikt en wordt herkend door bijvoorbeeld
* StunTour. Je mag zoveel SSL poorten openen als je wil, maar als je
* (tevens) 6697 gebruikt, help je mee de wereld meer uniform te maken ;).
*/
listen *:6697
{
options
{
ssl;
clientsonly;
};
};
listen *:8067;
listen *:6667;
/* Opmerking: Als je een IRCd shell gebruikt met meerdere IPs, krijg
* je wellicht een "Address already in use" error in je log
* en de IRCd zal niet starten. Dit betekent dat je MOET binden
* naar een specifiek IP in plaats van '*', bijvoorbeeld:
* listen 1.2.3.4:6667l
* Natuurlijk moet je het IP vervangen door het IP dat je toewezen is.
*/
/*
* NIEUW: link {}
* OUD: C/N:Lines
* Geeft een server toegang om te verbinden.
* OPMERKING: Beiden servers hebben een link { } nodig om goed te kunnen verbinden!
* De syntax is als volgt:
* link (server naam)
* {
* username (username, * werkt ook);
* hostname (ip number/hostmask);
* bind-ip (welk IP te binden wanneer je connect, of *);
* port (poort om naar te verbinden);
* hub (Als dit een hub is, werkt '*');
* [of leaf *;]
* password-connect "(wachtwoord te zenden)";
* password-receive "(wachtwoord te ontvangen)";
* class (class waarin de server geplaatst moet worden);
* options {
* (opties hier*);
* };
* // Als we SSL gebruiken, kunnen we kiezen welke cipher we willen gebruiken in SSL mode
* // Verkrijg een lijst door "openssl ciphers", onderscheid ciphers met :'s
* ciphers "DES-CBC3-MD5";
*
* };
*/
/*
opties:
OUD | NIEUW
S ssl
Z zip
N/A autoconnect
N/A quarantine
N/A nodnscache
*/
link hub.mynet.com
{
username *;
hostname 1.2.3.4;
bind-ip *;
port 7029;
hub *;
password-connect "LiNk";
password-receive "LiNk";
class servers;
options {
/* Opmerking: Gebruik geen autoconnect naar Services */
autoconnect;
ssl;
zip;
};
};
/*
*
* NIEUW: ulines {}
* OUD: U:Line
* U:Lines geven servers meer macht/commando's. Gebruik het alleen voor
* services en stats, en NOOIT voor normale UnrealIRCd servers!
* De syntax is als volgt:
* ulines {
* (server to uline);
* (server to uline);
* [etc]
* };
*/
ulines {
services.roxnet.org;
stats.roxnet.org;
};
/*
* NIEUW: drpass {}
* OUD: X:Line
* Stelt de wachtwoorden voor /die en /restart in.
* De syntax is als volgt:
* drpass {
* restart "(wachtwoord voor herstart)";
* die "(wachtwoord voor beeindigen)";
* };
*/
drpass {
restart "I-love-to-restart";
die "die-you-stupid";
};
/*
* NIEUW: log {}
* OUD: N/A
* Laat de IRCd weten wat en waar te loggen. Je kan er
* zoveel instellen als je wilt.
*
* FLAGS: errors, kills, tkl, connects, server-connects, kline, oper
*
* De syntax is als volgt:
*
* log "log file"
* {
* flags
* {
* flag;
* flag;
* etc..
* };
* };
*/
log "ircd.log" {
/* Verwijder het logbestand en begint een nieuwe wanneer de oude 2MB groot is. Laat dit leeg om altijd
hetzelfde bestand te gebruiken */
maxsize 2097152;
flags {
oper;
kline;
connects;
server-connects;
kills;
errors;
sadmin-commands;
chg-commands;
oper-override;
spamfilter;
};
};
/*
* NIEUW: alias {}
* OUD: N/A
* Hiermee stel je commando's zoals /nickserv, /chanserv etc in.
* FLAGS: services, stats, normal
*
* De syntax is als volgt:
* alias "naam" {
* target "wijst naar";
* type aliastype;
* };
*
* [Opmerking: Je kan ook een standaard alias bestand gebruiken, zie doc/unreal32docs.nl.html sectie 2.9]
*/
// Dit wijst het commando /nickserv naar de gebruiker NickServ welke verbonden is met set::services-server
/*alias NickServ {
target "NickServ";
type services;
};*/
// Als je het commando naar dezelfde nick als het commando wil sturen, kun je "target" weglaten.
//alias ChanServ { type services; };
// Wijst het /statserv commando naar de gebruiker Statserv verbonden met set::stats-server
//alias StatServ { type stats; };
// Wijst het /superbot commando naar de gebruiker SuperBot
//alias SuperBot { type normal; };
/* Standaard aliases */
alias NickServ { type services; };
alias ChanServ { type services; };
alias OperServ { type services; };
alias HelpServ { type services; };
alias StatServ { type stats; };
/*
* NIEUW: alias {}
* OUD: N/A
* Hiermee stel je commando's zoals /identify, /services in.
*
* De syntax is als volgt:
* alias "naam" {
* format "format string" {
* target "wijst naar";
* type aliastype;
* parameters "parameters te verzenden";
* };
* type command;
* };
*/
/* Hier wordt apart notitie van gemaakt, hoewel het dezelfde naam heeft als het vorige block. Het verschilt veel
* in syntax, maar het maakt gebruik van dezelfde functies.
*/
/*
alias "identify" {
format "^#" {
target "chanserv";
type services;
parameters "IDENTIFY %1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "IDENTIFY %1-";
};
type command;
};
*/
/* De alias::format is een reguliere expressie. Het eerste formaat matcht het /identify commando wanneer
* het eerste teken een # is. Daarna wordt het doorgezonden naar de chanserv alias met de parameters
* IDENTIFY %1-. Het tweede formaat matcht het /identify commando wanneer het eerste teken geen # is. Daarna
* wordt het commando doorgestuurd naar de nickserv alias met de parameters IDENTIFY %1-.
*/
/* Het alias::format::parameters is gelijk aan script-talen. %N (N is een nummer) staat voor de parameter die
* gezonden is naar het commando (in dit geval /identify). Wanneer je %N- opgeeft, betekent dat alle parameters
* vanaf N tot de laatste paramater in de string. Je kan ook %n gebruiken, waar %n vervangen wordt door de nick.
*/
/* Standaard aliases */
alias "services" {
format "^#" {
target "chanserv";
type services;
parameters "%1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "%1-";
};
type command;
};
alias "identify" {
format "^#" {
target "chanserv";
type services;
parameters "IDENTIFY %1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "IDENTIFY %1-";
};
type command;
};
/* Dit is een voorbeeld van een echt commando alias */
/* Dit verwijst /GLINEBOT naar /GLINE <parameter> 2d etc... */
alias "glinebot" {
format ".+" {
command "gline";
type real;
parameters "%1 2d Bots are not allowed on this server, please read the faq at http://www.example.com/faq/123";
};
type command;
};
/*
* NIEUW: tld {}
* OUD: T:Line
* Hiermee stel je verschillende MOTD en RULES bestanden in,
* afhangend van de gebruikers hostmask.
* De syntax is als volgt:
* tld {
* mask (ident@host);
* motd "(motd bestand)";
* rules "(rules bestand)";
* };
*/
tld {
mask *@*.fr;
motd "ircd.motd.fr";
rules "ircd.rules.fr";
};
/* Opmerking: je kan het bovenstaande voorbeeld verwijderen.
* In dat geval worden de standaard motd/rules bestanden (ircd.motd, ircd.rules).
* gebruikt voor iedereen.
*/
/*
* NIEUW: ban nick {}
* OUD: Q:Line
* Bant een nickname zodat deze niet gebruikt kan worden.
* De syntax is als volgt:
* ban nick {
* mask "(nick om te bannen)";
* reason "(reden)";
* };
*/
ban nick {
mask "*C*h*a*n*S*e*r*v*";
reason "Reserved for Services";
};
/*
* NIEUW: ban ip {}
* OUD: Z:Line
* Bant een IP van de server
* De syntax is als volgt:
* ban ip {
* mask (ip number/hostmask);
* reason "(reden)";
* };
*/
ban ip {
mask 195.86.232.81;
reason "Delinked server";
};
/*
* NIEUW: ban server {}
* OUD: Server Q:Line
* Zorgt ervoor dat een server niet kan verbinden met het netwerk.
* Als de server naar een andere server linkt, zal de lokale server
* de verbinding met het netwerk verbreken.
* De syntax is als volgt:
* ban server {
* mask "(server naam)";
* reason "(reden)";
* };
*/
ban server {
mask eris.berkeley.edu;
reason "Get out of here.";
};
/*
* NIEUW: ban user {}
* OUD: K:Line
* Zorgt ervoor dat een gebruiker met een bepaalde mask niet
* kan verbinden met je server.
* De syntax is als volgt:
* ban user {
* mask (hostmask/ip number);
* reason "(reden)";
* };
*/
ban user {
mask *tirc@*.saturn.bbn.com;
reason "Idiot";
};
/*
* NIEUW: ban realname {}
* OUD: n:Line
* Belet het gebruik van een bepaalde realname.
* De syntax is als volgt:
* ban realname {
* mask "(real name)";
* reason "(reden)";
* };
*/
ban realname {
mask "Swat Team";
reason "mIRKFORCE";
};
ban realname {
mask "sub7server";
reason "sub7";
};
/*
* OPMERKING VOOR ALLE BANS: Ze mogen herhaald worden voor extra toevoegingen!
*
* NIEUW: except ban {}
* OUD: E:Line
* Zorgt ervoor dat jij niet gebanned kan worden.
* De syntax is als volgt:
* except ban { mask (ident@host); };
* Herhaal de except ban {} zo vaak als je wilt
* voor andere hosts.
*/
except ban {
/* don't ban stskeeps */
mask *stskeeps@212.*;
};
/*
* NIEUW: deny dcc {}
* OUD: dccdeny.conf
* Wordt gebruikt om DCC sends te blokkeren..
* Stopt virii beter.
* De syntax is als volgt:
* deny dcc
* {
* filename "bestand te blokkeren (bv, *exe)";
* reason "reden";
* };
*/
deny dcc {
filename "*sub7*";
reason "Possible Sub7 Virus";
};
/*
* NIEUW: deny channel {}
* OUD: N/A (NIEUW)
* Belet het gebruik van een kanaal.
* De syntax is als volgt:
* deny channel {
* channel "(kanaal)";
* reason "reden";
* };
*/
deny channel {
channel "*warez*";
reason "Warez is illegal";
};
/*
* NIEUW: vhost {}
* OUD: Vhost.conf file
* Dit zet een nep ip voor niet-opers, of voor opers
* die te lui zijn /sethost te gebruiken ;)
* De syntax is als volgt:
* vhost {
* vhost (vhost.com);
* from {
* userhost (ident@host toegestaan de vhost te gebruiken);
* };
* login (login name);
* password (password);
* };
* Om je vhost te gebruiken, typ /vhost (login) (password) op IRC
*/
vhost {
vhost i.hate.microsefrs.com;
from {
userhost *@*.image.dk;
};
login stskeeps;
password moocowsrulemyworld;
};
/* Je kan ook andere configuratiebestanden laden */
/* include "klines.conf"; */
/* Netwerk configuratie */
set {
network-name "ROXnet";
default-server "irc.roxnet.org";
services-server "services.roxnet.org";
stats-server "stats.roxnet.org";
help-channel "#ROXnet";
hiddenhost-prefix "rox";
/* prefix-quit "no"; */
/* Cloak keys moeten op alle servers in het netwerk hetzelfde zijn.
* Ze worden gebruikt voor het maken van gemaskte hosts en moeten geheim blijven.
* De keys moeten 3 willekeurige strings zijn, bestaande uit 5-100 tekens
* (10-20 tekens is genoeg) en moeten bestaan uit kleine letters (a-z),
* hoofdletters (A-Z) en getallen (0-9) [zie de eerste key als voorbeeld].
* Tip: Wanneer je met een *NIX systeem werkt, kun je './unreal gencloak' gebruiken in
* je shell. Dit genereert 3 willekeurige strings die je kunt gebruiken.
*/
cloak-keys {
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW";
"en nog eentje";
"en nog eentje";
};
/* on-oper host */
hosts {
local "locop.roxnet.org";
global "ircop.roxnet.org";
coadmin "coadmin.roxnet.org";
admin "admin.roxnet.org";
servicesadmin "csops.roxnet.org";
netadmin "netadmin.roxnet.org";
host-on-oper-up "no";
};
};
/* Server gerelateerde configuratie */
set {
kline-address "stel.dit.adres.in";
modes-on-connect "+ixw";
modes-on-oper "+xwgs";
oper-auto-join "#opers";
options {
hide-ulines;
/* Je kan hier ident checking aanzetten als je wilt */
/* identd-check; */
show-connect-info;
};
maxchannelsperuser 10;
/* Hoelang een gebruiker minimaal verbonden moet zijn voordat hij toegestaan wordt het
* QUIT bericht te gebruiken. Dit stopt spam hopelijk. */
anti-spam-quit-message-time 10s;
/* Stelt een tekst in die standaard wordt gebruikt voor een quit.
* Houdt in dat er geen eigen quits gebruikt mogen worden op deze server. */
/* static-quit "Client quit"; */
/* Je kan ook alle part-redenen blokkeren door hieronder het commentaar weg te halen
* en er 'yes' neer te zetten. Je kan ook een standaard tekst gebruiken (bijvoorbeeld
* "Bye bye!") om deze tekst altijd te gebruiken..
*/
/* static-part yes; */
/* Stelt in dat stats alleen door opers gebruikt mogen worden. Gebruik * voor alle stats,
* en laat het weg zodat gebruikers alle stats kunnen zien. Typ '/stats' voor een lijst
* van alle stats.
* Sommige admins willen 'kGs' wellicht verwijderen zodat gewone gebruikers een lijst van
* klines, glines en shunts kunnen zien.
*/
oper-only-stats "okfGsMRUEelLCXzdD";
/* Throttle: dit voorbeeld zet een limie van 3 conneties per 60s (per host). */
throttle {
connections 3;
period 60s;
};
/* Anti flood protectie */
anti-flood {
nick-flood 3:60; /* 3 naamsveranderingen per 60 seconden (standaard) */
};
/* Spam filter */
spamfilter {
ban-time 1d; /* standaard duur van een *line gezet door spamfilter */
ban-reason "Spam/Advertising"; /* standaard reden */
virus-help-channel "#help"; /* kanaal te gebruiken voor 'viruschan' actie */
/* except "#help"; kanaal waar niet gefilterd wordt */
};
};
/*
* Problemen of meer hulp nodig?
* 1) www.vulnscan.org/UnrealIRCd/unreal32docs.html
* 2) www.vulnscan.org/UnrealIRCd/faq/ <- hier staat 80% van je vragen!
* 3) Als je nog steeds problemen hebt, kun je naar irc.ircsystems.net #unreal-support,
maar je moet wel eerst de documentatie en FAQ gelezen hebben!
*/
-792
View File
@@ -1,792 +0,0 @@
/*
* example.conf by Daniel Hawton AKA Osiris (osiris@unrealircd.org).
* example.ru.conf by Samets Anton aka Bock (bock@bynets.org).
* $Id$
*
* (Encoding): Windows-1251
*
* Работает для Unreal3.2 и выше
*
* Итак, это русскоязычный пример example.conf. По синтаксису похож на C++.
* По началу будет тяжело понять, что тут написано, однако во время практики и чтения
* вы научитесь это делать.
*
* Просто скопируйте этот файл в главную директорию unrealircd и переименуйте в 'unrealircd.conf'.
*
* Замечание: Все линии, кроме тех, которые начинаются с {, заканчиваются ; включая и закрывающую }.
* IRCd проигнорирует закомментированные линии.
*
* ПРОЧТИТЕ doc/unreal32docs.ru.html! Версия в интернете доступна по адресу:
* www.vulnscan.org/UnrealIRCd/unreal32docs.ru.html
* Она содержит большинство информации о конфигурировании, даёт представление о каждом блоке,
* переменной и так далее...
* Если вы пытаетесь редактировать этот файл без прочтения документации, вы гарантированно
* потерпите неудачу!
*/
/* Типы комментариев */
# Первый тип (Shell type)
// Второй тип (C++ style)
/* Третий тип (C Style) */
# данные линии игнорируются ircd.
/*
* UnrealIRCd поддерживает модули, загрузка некоторых необходима для запуска.
* Вам необходимо загрузить как минимум модули команд и скрытия хоста.
*/
/* Для *NIX систем раскомментируйте следующие 2 линии: */
//loadmodule "src/modules/commands.so";
//loadmodule "src/modules/cloak.so";
/* Для Windows систем раскомментируйте следующие 2 линии: */
//loadmodule "modules/commands.dll";
//loadmodule "modules/cloak.dll";
/*
* Вам необходимо подключить и другие конфигурационные файлы.
* help.ru.conf содержит весь текст команды /helpop. Файлы badwords.*.conf
* содержат все включения матных слов для режима +G...
* spamfilter.conf содержит правила для защиты от троянских коней.
* Вы вероятно захотите подключить эти файлы:
*/
include "help.ru.conf";
include "badwords.channel.conf";
include "badwords.message.conf";
include "badwords.quit.conf";
include "spamfilter.conf";
/*
* НОВОЕ: me {}
* СТАРОЕ: M:Line
* me {} определяет имя, описание и нумерик сервера unreal для данного сервера.
* Синтаксис:
* me {
* name "Имя.сервера";
* info "Описание сервера";
* numeric (нумерик сервера*);
* };
* При соединении с другими серверами, нумерик должен быть уникальным в сети. Имя сервера - англоязычное.
*/
me
{
name "irc.foonet.com";
info "Сервер FooNet";
numeric 1;
};
/*
* НОВОЕ: admin {}
* СТАРОЕ: A:Line
* Данный блок предоставляет информацию об администраторе сервера.
* Вы можете поместить сколько угодно линий после admin {.
* Синтаксис:
* admin {
* "первая линия";
* "вторая линия";
* [так далее]
* };
*/
admin {
"Вася Пупкин!";
"vasya_pupkin";
"haker@lamer.ru";
"ICQ: 987654321";
};
/*
* НОВОЕ: class {}
* СТАРОЕ: Y:line (был слишком запутан)
* Определяет настройки для классов. Класс определяет групповые настройки для подключений.
* Например, подключение сервера, вместо включения его в класс пользователей, вы направляете в
* класс серверов. Используется следующий синтаксис:
* class (имя класса)
* {
* pingfreq (как часто пиновать пользователя/сервер в секундах);
* maxclients (сколько максимально соединений разрешено данному классу);
* sendq (максимальная очередь для отправки от подключения);
* recvq (максимальная очередь для получения от подключения [контроль за флудом]);
* };
*/
class clients
{
pingfreq 90;
maxclients 500;
sendq 100000;
recvq 8000;
};
class servers
{
pingfreq 90;
maxclients 10; /* Какое максимальное количество серверов может быть прилинковано к этому серверу */
sendq 1000000;
connfreq 100; /* Через сколько секунд проводить следующую попытку подключения */
};
/*
* НОВОЕ: allow {}
* СТАРОЕ: I:Line
* Определяет, кому разрешено подключаться к серверу...
* В основном используется для клиентов, это разрешает им подключаться к серверу, а вы можете их контролировать
* и/или устанавивать пароль.
* Синтаксис:
* allow {
* ip (разрешённая маска ip);
* hostname (маска хоста);
* class (класс, в который определить[смотри class {}]);
* password "(пароль)"; (необязательно)
* maxperip (сколько подключений с одного ip); (необязательно)
* };
*/
allow {
ip *@*;
hostname *@*;
class clients;
maxperip 5;
};
/* Разрешение подключения с паролем */
allow {
ip *@255.255.255.255;
hostname *@*.passworded.ugly.people;
class clients;
password "аццкип0р0ль";
maxperip 1;
};
/*
* НОВОЕ: allow channel {}
* СТАРОЕ: chrestrict
* Позволяет пользователю зайти на канал...
* служит как исключение из запрещённых каналов.
* Синтаксис:
* allow channel {
* channel "имя канала";
* };
*/
allow channel {
channel "#WarezSucks";
};
/*
* НОВОЕ: oper {}
* СТАРОЕ: O:Line
* Определяет IRC оператора
* IRC операторы следят за сервером, занимаются его поддержкой и подключением к сети.
* Синтаксис:
* oper (логин) {
* class (класс, в который определять их, если отличен от блока I, в какой класс переместить);
* from {
* userhost (идент@хост);
* userhost (идент@хост);
* };
* flags
* {
* (тут флаги*);
* };
* ИЛИ
* flags "флаги старого типа, вида OAaRD";
* };
*/
/* Для списка флагов оператора прочитайте doc/unreal32docs.ru.html#operblock
* [ОЧЕНЬ НАСТОЯТЕЛЬНО рекомендуется к прочтения]
*/
oper vasyapupkin {
class clients;
from {
userhost vasya@somewhere.by;
};
password "p0r0l'";
flags
{
netadmin;
can_zline;
can_gzline;
can_gkline;
global;
};
};
/*
* НОВОЕ: listen {}
* СТАРОЕ: P:Line
* Определяет, на каких портах будет работать ircd,
* позволяя пользователям/серверам подключаться к серверу.
* Синтаксис:
* listen (ip):(номер порта)
* {
* options {
* (тут опции);
* };
* };
* или просто
* listen: listen (ip):(порт);
*
* ЗАМЕЧАНИЕ: для протокола ip v6 (3ffe:b80:2:51d::2), используйте [ip]:порт;
*
* Это так же будет работать.
*/
/* Опции для listen:
СТАРЫЕ | НОВЫЕ
S serversonly
C clientsonly
J java
s ssl
* standard
*/
/* ЗАМЕЧАНИЕ ДЛЯ ПОРТОВ SSL: SSL порты стандартизированы,
* за исключением многочисленных "высоких" портов SSL, некоторые люди могут сказать вам,
* чтобы вы запустили на порту 994, потому что он официальный порт SSL... Но это же
* требует привилегий пользователя root! К слову, порт 194 - официальный порт irc,
* но вы видели когда-нибудь ircd, запущенный на нём?
* Итак, наше предложение - использовать порт 6697 для SSL, он используется уже рядом сетей
* и используется в примере StunTour.
* Вы можете открыть сколько угодно портов SSL, но используя так же и 6697, вы поможете
* стандартизировать его;).
*/
listen *:6697
{
options
{
ssl;
clientsonly;
};
};
listen *:8067;
listen *:6667;
/* ЗАМЕЧАНИЕ: Если вы используете шелл IRCd, где несколько IP адресов, вы можете получить сообщение типа
* 'Address already in use', ошибки в вашем лог-файле и ircd не запустится.
* Это значит, что вам необходимо указать определённый адрес IP вместо '*', к примеру:
* listen 1.2.3.4:6667;
* Конечно же, измените IP адрес на тот, который назначен вам.
*/
/*
* НОВОЕ: link {}
* СТАРОЕ: C/N:Lines
* Определяет блок для подключения серверов.
* ЗАМЕЧАНИЕ: ЧТОБЫ ПОДКЛЮЧИТЬСЯ БЕЗ ВОПРОСОВ, НА ОБОИХ СЕРВЕРАХ НЕОБХОДИМЫ ПРАВИЛЬНЫЕ НАСТРОЙКИ LINK {}!
* Синтаксис:
* link (имя сервера)
* {
* username (имя пользователя, * работает тоже);
* hostname (адрес ip/маска хоста);
* bind-ip (На каком адресе IP слушать или *);
* port (порт для соединения);
* hub (если это хаб, * так же работает, или макси сервера, которые могут быть под ним);
* [или leaf *;]
* password-connect "(пароль для отправки)";
* password-receive "(пароль, что мы должны получить)";
* class (класс, в который определить сервер);
* options {
* (тут указываются опции*);
* };
* // Если мы используем SSL, мы можем указать, какой шифр использовать в режиме SSL
* // Получить список можно "openssl ciphers", шифры разделяются двоеточиями (:)
*
* ciphers "DES-CBC3-MD5";
*
* };
*/
/*
опции:
СТАРЫЕ | НОВЫЕ
S ssl
Z zip
N/A autoconnect
N/A quarantine
N/A nodnscache
*/
link hub.ru.by
{
username *;
hostname 1.2.3.4;
bind-ip *;
port 7029;
hub *;
password-connect "LiNk";
password-receive "LiNk";
class servers;
options {
/* Замечание: Вы не должны использовать автоподключение (autoconnect) при подключении сервисов */
autoconnect;
ssl;
zip;
};
};
/*
*
* НОВОЕ: ulines {}
* СТАРОЕ: U:Line
* U-lines обладают большей силой/властью, чем другие сервера. Это нужно устанавливать только на
* сервисы/сервера сбора статистики и НИКОГДА на обычные сервера UnrealIRCd!
* Синтаксис:
* ulines {
* (сервер в uline);
* (сервер в uline);
* [и т.д.]
* };
*/
ulines {
services.roxnet.org;
stats.roxnet.org;
};
/*
* НОВОЕ: drpass {}
* СТАРОЕ: X:Line
* Определяет пароли для использования команд /die и /restart.
* Синтаксис:
* drpass {
* restart "(пароль для перезапуска)";
* die "(пароль для отключения)";
* };
*/
drpass {
restart "Я-люблю-перезапускать-сервер";
die "умри-тупое!:)";
};
/*
* НОВОЕ: log {}
* СТАРОЕ: N/A
* Указыает ircd куда и что протоколировать (вести лог). Вы можете указать столько, сколько пожелаете.
*
* ФЛАГИ: errors, kills, tkl, connects, server-connects, kline, oper
*
* Синтаксис:
* log "путь_к_лог_файлу"
* {
* flags
* {
* flag;
* flag;
* etc..
* };
* };
*/
log "ircd.log" {
/* Удалять логфайл и старовать новый, если размер превышает 2MB, оставьте это как есть, чтобы использовать
тот же самый файл */
maxsize 2097152;
flags {
oper;
kline;
connects;
server-connects;
kills;
errors;
sadmin-commands;
chg-commands;
oper-override;
spamfilter;
};
};
/*
* НОВОЕ: alias {}
* СТАРОЕ: N/A
* Позволяет установить вам псевдонимы на команды, такие как /nickserv, /chanserv и т.д.
* ФЛАГИ: services, stats, normal
*
* Синтаксис:
* alias "имя" {
* target "куда направить";
* type aliastype;
* };
*
* [ЗАМЕЧАНИЕ: Вы так же можете подключить уже определённый файл с псевдонимами,подробнее doc/unreal32docs.ru.html в секции 2.9]
*/
// Данный псевдноним /nickserv направляет команды пользователю NickServ, который подключён к серверу set::services-server
/*alias NickServ {
target "NickServ";
type services;
};*/
// Если вы хотите, чтобы команды направлялись на тот же ник, что и команда, вы можете не указывать target
//alias ChanServ { type services; };
// Указывает, что команда /statserv будет отправлена пользователю StatServ, подключённого к серверу set::stats-server
//alias StatServ { type stats; };
// Указывает, что команда /superbot будет отправлена пользователю SuperBot
//alias SuperBot { type normal; };
/* Стандартные псевдонимы */
alias NickServ { type services; };
alias ChanServ { type services; };
alias OperServ { type services; };
alias HelpServ { type services; };
alias StatServ { type stats; };
/*
* НОВОЕ: alias {}
* СТАРОЕ: N/A
* Позволяет установить такие псевдонимы на команды как /identify, /services и т.д.
*
* Синтаксис:
* alias "имя" {
* format "строка формата" {
* target "кому";
* type aliastype;
* parameters "список параметров";
* };
* type command;
* };
*/
/* Вынесено отдельно, так как имеются отличия по сравнению с предыдущим типом псевдонимов и имеются очень большие отличия в
* синтаксисе, так же используется для других целей, чем стандартные псевдонимы.
*/
/*
alias "identify" {
format "^#" {
target "chanserv";
type services;
parameters "IDENTIFY %1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "IDENTIFY %1-";
};
type command;
};
*/
/* Директива alias::format является регулярным выражением. Под первый формат подпадает команда /identify,
* если первым символом является #. Она посылает команду chanserv с параметрами IDENTIFY %1-.
* Второй формат срабатывает, если в команде, посланной посредством /identify первый символ не #. Тогда ircd
* передаёт эту команду nickserv с параметрами IDENTIFY %1-.
*/
/* alias::format::parameters сходно со скриптовыми языками. %N (где N число) представляет собой параметр, посланный командой
* (в случае /identify). Если вы указали %N-, так вы определили все параметры, начиная от N до последнего в этой строке.
* Вы можете так же указать %n, что будет означать ник пользователя.
*/
/* Стандартные псевдонимы */
alias "services" {
format "^#" {
target "chanserv";
type services;
parameters "%1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "%1-";
};
type command;
};
alias "identify" {
format "^#" {
target "chanserv";
type services;
parameters "IDENTIFY %1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "IDENTIFY %1-";
};
type command;
};
/* Тут идёт пример использования "действительно псевдонима" (real command alias) */
/* Данный пример - использование /GLINEBOT как /GLINE <параметры> 2d и т.д... */
alias "glinebot" {
format ".+" {
command "gline";
type real;
parameters "%1 2d Боты запрещены на этом сервере, прочитайте ЧаВО на http://www.example.com/faq/123";
};
type command;
};
/*
* НОВОЕ: tld {}
* СТАРОЕ: T:Line
* Устанавливает различные different motd и rules файлы
* в зависимости от маски хостов клиентов.
* Синтаксис:
* tld {
* mask (идент@хост);
* motd "(файл motd)";
* rules "(файл rules)";
* };
*/
tld {
mask *@*.ru;
motd "ircd.motd.ru";
rules "ircd.rules.ru";
};
/* замечание: вы можете просто удалить блок выше, указанный для примера в случае, если есть в наличии
* файлы motd/rules, используемые по умолчанию (ircd.motd, ircd.rules), которые будут использоваться всеми
*/
/*
* НОВОЕ: ban nick {}
* СТАРОЕ: Q:Line
* Банит ник, он не может быть использован.
* Синтаксис:
* ban nick {
* mask "(ник для бана)";
* reason "(причина)";
* };
*/
ban nick {
mask "*C*h*a*n*S*e*r*v*";
reason "Зарезервирован для сервисов";
};
/*
* НОВОЕ: ban ip {}
* СТАРОЕ: Z:Line
* Банит адрес ip при подключении в сеть.
* Синтаксис:
* ban ip { mask (адрес ip/маска хоста); reason "(причина)"; };
*/
ban ip {
mask 195.86.232.81;
reason "Отключённый сервер";
};
/*
* НОВОЕ: ban server {}
* СТАРОЕ: Серверный Q:Line
* Отключает сервер от попыток подключиться в сеть.
* Если сервер подключается к удалённому серверу в сети, локальный сервер
* будет отключён он сети.
* Синтаксис:
* ban server {
* mask "(имя сервера)";
* reason "(причина)";
* };
*/
ban server {
mask eris.berkeley.edu;
reason "Ламерский сервер :).";
};
/*
* НОВОЕ: ban user {}
* СТАРОЕ: K:Line
* Пользователь с указанной маской не может подключиться к вашему серверу.
* Синтаксис:
* ban user { mask (маска хоста/адрес ip); reason "(причина)"; };
*/
ban user {
mask *newiceman@*.irc.by;
reason "Идиот!";
};
/*
* НОВОЕ: ban realname {}
* СТАРОЕ: n:Line
* Банит по указанному пользователем реальному имени.
* Синтаксис:
* ban realname {
* mask "(Реальное имя)";
* reason "(причина)";
* };
*/
ban realname {
mask "Swat Team";
reason "mIRKFORCE";
};
ban realname {
mask "sub7server";
reason "sub7";
};
/*
* ЗАМЕЧАНИЕ ДЛЯ ВСЕХ БАНОВ: они могут повторятся в случае необходимости уточнений!
*
* НОВОЕ: except ban {}
* СТАРОЕ: E:Line
* Предотвращает бан.
* Синтаксис:
* except ban { mask (идент@хост); };
* Повторите except ban {} столько раз, сколько хотите использовать различные хосты.
*/
except ban {
/* не банить wax */
mask *wax@195.222.*;
};
/*
* НОВОЕ: deny dcc {}
* СТАРОЕ: dccdeny.conf
* Используется чтобы запретить отправку dcc... служит для защиты от вирусов
* Синтаксис:
* deny dcc
* {
* filename "имя файла для блокироваки (т.е. *exe)";
* reason "причина";
* };
*/
deny dcc {
filename "*sub7*";
reason "Вероятность вируса Sub7";
};
/*
* НОВОЕ: deny channel {}
* СТАРОЕ: N/A (НОВОЕ)
* Запрещает вход на указанные каналы.
* Синтаксис:
* deny channel {
* channel "(канал)";
* reason "причина";
* };
*/
deny channel {
channel "*warez*";
reason "Warez нелегален";
};
/*
* НОВОЕ: vhost {}
* СТАРОЕ: файл Vhost.conf
* Устанавливает фейковый ip для не-операторов или операторы слишком
* ленивые, чтобы сделать /sethost :P
* Синтаксис:
* vhost {
* vhost (vhost.com);
* from {
* userhost (идент@хост, кому разрешено использовать);
* };
* login (логин);
* password (пароль);
* };
* чтобы использовать vhost, наберите /vhost (логин) (пароль) в IRC
*/
vhost {
vhost i.hate.microsefrs.com;
from {
userhost *@*.image.dk;
};
login stskeeps;
password moocowsrulemyworld;
};
/* Вы так же можете подключить и другие конфигурационные файлы */
/* include "klines.conf"; */
/* Конфигурация Сети */
set {
network-name "ROXnet";
default-server "irc.roxnet.org";
services-server "services.roxnet.org";
stats-server "stats.roxnet.org";
help-channel "#ROXnet";
hiddenhost-prefix "rox";
/* prefix-quit "no"; */
/* Ключи скрытия хостов должны быть одинаковы на всех серверах в сети.
* Они использутся для генерации замаскированных хостов и должны держаться в секрете.
* Ключи должен быть 3-мя случайными срочками с 5-100 символами в каждой
* (10-20 символов должно быть достаточно) и должны содержать прописные (a-z),
* заглавные (A-Z) буквы и цифрты (0-9) [смотрите пример первого ключа].
* Подсказка: В *NIX системах вы можете запустить './unreal gencloak' в вашем шелле, чтобы получить
* 3 строки, сгенерированные случайным образом.
*/
cloak-keys {
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW";
"и ещё одна;
"и ещё одна";
};
/* хост on-oper */
hosts {
local "locop.roxnet.org";
global "ircop.roxnet.org";
coadmin "coadmin.roxnet.org";
admin "admin.roxnet.org";
servicesadmin "csops.roxnet.org";
netadmin "netadmin.roxnet.org";
host-on-oper-up "no";
};
};
/* Специфическая конфигурация сервера */
set {
kline-address "set.this.email";
modes-on-connect "+ixw";
modes-on-oper "+xwgs";
oper-auto-join "#opers";
options {
hide-ulines;
/* Если желаете, вы можете включить проверку ident */
/* identd-check; */
show-connect-info;
};
maxchannelsperuser 10;
/* Указывает минимальное время, сколько был подключен пользователь,
* прежде чем разрешать ему использовать сообщение QUIT.
* Должно помочь в борьбе со спамом */
anti-spam-quit-message-time 10s;
/* Устанавливает постоянное сообщение о выходе - значит, что локальный сервер не разрешит
различные сообщения о выходе */
/* static-quit "Клиент вышел"; */
/* Вы так же можете блокировать все сообщения о выходе из канала просто раскомментировав это и указать'yes'
* или указать какой-нибудь другой текст (например: "Пока пока!"), который всегда будет использован как причина. */
/* static-part yes; */
/* Позволяет сделать важные сообщения stats были использованы только операторами, используйте * для всех сообщений stats,
* или закомментируйте, что позволит пользователям видеть все сообщения stats. Чтобы получить весь список, введите '/stats'.
* Некоторые администраторы могут убрать 'kGs' для того, чтобы разрешить обычным пользователям видеть список
* klines, glines и shuns.
*/
oper-only-stats "okfGsMRUEelLCXzdD";
/* Тротлинг: данный пример устанавливает предел в 3 попытки подключения в 60 секунд (для одного хоста). */
throttle {
connections 3;
period 60s;
};
/* Защита от флуда */
anti-flood {
nick-flood 3:60; /* 3 изменения ника в 60 секунд (по умолчанию) */
};
/* Фильтр спама */
spamfilter {
ban-time 1d; /* длительность по умолчанию бана *line, установленного spamfilter */
ban-reason "Спам/Реклама"; /* причина по умолчанию */
virus-help-channel "#help"; /* канал при использовании действия 'viruschan' */
/* except "#help"; канал для исключения действия фильтра */
};
};
/*
* Проблемы или нуждаетесь в более подробной информации?
* 1) www.vulnscan.org/UnrealIRCd/unreal32docs.ru.html
* 2) www.vulnscan.org/UnrealIRCd/faq/ <- содержит 80% ваших вопросов!
* 3) Если у вас до сих пор остались проблемы, зайдите на irc.ircsystems.net #unreal-support,
* но мы требуем, чтобы вы ПРЕЖДЕ ПРОЧИТАЛИ ДОКУМЕНТАЦИЮ и ЧаВО!
*/
-787
View File
@@ -1,787 +0,0 @@
/*
* example.conf by Daniel Hawton AKA Osiris (osiris@unrealircd.org).
* $Id$
* Türkçe çeviri: Mustafa "Ironic" Cakmak (ironic@unrealircd.org)
*
* Unreal3.2 ve üstü sürümler için kullanılmaktadır
*
* Peki beyler. Bu example.conf dosyasının yenisi. C++ türüne çok benziyor.
* Neyse şimdi bunun üstesinden gelme zamanı. Başlangıçta zor gelebilir, fakat
* okuyarak ve biraz pratikle anlayacaksınız.
*
* Yapmanız gereken bu dosyayı ana dizine atıp, 'unrealircd.conf' olarak adlandırmak.
*
* NOTE: Bütün satırlar, açılış { satırı dışında, kapama } satırı dahil, sonunda ; taşır.
* IRCd açıklama satırlarını göz ardı edecektir.
*
* Lütfen doc/unreal32docs.tk.html dosyasını okuyunuz! Çevrimiçi sürümüne ulaşabileceğiniz adres:
* www.vulnscan.org/UnrealIRCd/unreal32docs.tk.html
* Yapılandırma dosyası hakkında bir çok bilgi içerir: Her blok,
* değişken vs.. hakkında bilgi verir.
* Eğer dökümantasyon dosyasını tam olarak okumadan bu dosyayı düzenlemeye kalkarsanız
* başarısız olacağınız oldukça yüksek bir oranda garanti edilir!
*/
/* Açıklama satırı çeşitleri */
#Açıklama satırı 1 (Shell tipi)
// Açıklama satırı 2 (C++ tipi)
/* Açıklama satırı satırı 3 (C tipi) */
#Bu satırlar ircd tarafından göz ardı edilecektir.
/*
* UnrealIRCd modülleri destekler, Bunların bazılarının yüklenmesi gereklidir.
* En azından komutlar modülü(commands) ve gizleme modülü(cloaking)'ne ihtiyacınız vardır.
*/
/* *NIX için, sonraki 2 satırın açıklama satıracını(//) kaldırın: */
//loadmodule "src/modules/commands.so";
//loadmodule "src/modules/cloak.so";
/* Windows için, sonraki 2 satırın açıklama satıracını(//) kaldırın: */
//loadmodule "modules/commands.dll";
//loadmodule "modules/cloak.dll";
/*
* Diğer yapılandırma dosyalarınıda dahil edebilirsiniz.
* help.conf bütün /helpop metinlerini içerir. +G kipi için badwords.*.conf
* dosyaları bütün kötü kelime girdilerini içerir...
* spamfilter.conf güncel trojanlar için uygun kuralları içerir.
* Muhtemelen bunları eklemek isteyeceksiniz:
*/
include "help.conf";
include "badwords.channel.conf";
include "badwords.message.conf";
include "badwords.quit.conf";
include "spamfilter.conf";
/*
* YENI: me {}
* ESKI: M:Line
* me {} bu sunucu için isim, tanımlama ve unreal sunucu sayısalını(numeric) belirler.
* Sözdizimi aşağıdaki gibidir:
* me {
* name "sunucu.ismi";
* info "Sunucu tanımlaması";
* numeric (sunucu sayısalı*);
* };
* Eğer link varsa, bu sayısal ağ üzerinde varolan herhangi bir server tarafından kullanılmamalıdır.
*/
me
{
name "irc.foonet.com";
info "FooNet Server";
numeric 1;
};
/*
* YENI: admin {}
* ESKI: A:Line
* Admin sunucu yöneticisine dair bilgi verir. Dilediğiniz kadar
* satırı admin { altına yerleştirebilirsiniz.
* Sözdizimi aşağıdaki gibidir:
* admin {
* "ilk satır";
* "ikinci satır";
* [vs]
* };
*/
admin {
"Bob Smith";
"bob";
"widely@used.name";
};
/*
* YENI: class {}
* ESKI: Y:line (eskisi karışıktı)
* Bu sınıflar için ayarları belirtir. Bir sınıf bağlantılar için bir grup
* ayarıdır. Örneğin, sunucu bağlantılarını, bir istemci sınıfı
* yerine, sunucu sınıfına yönlendirirsiniz. Sözdizimi aşağıdaki gibidir:
* class (class name)
* {
* pingfreq (ne sıklıkta saniye içerisinde kullanıcı veya sunucunun ping edileceği);
* maxclients (bu sınıf için kaç bağlantı);
* sendq (bir bağlantıdan gönderilecek en yüksek dizi);
* recvq (bir bağlantıdan alınacak en yüksek dizi [flood kontrolü]);
* };
*/
class clients
{
pingfreq 90;
maxclients 500;
sendq 100000;
recvq 8000;
};
class servers
{
pingfreq 90;
maxclients 10; /* Link edebileceğimiz en yüksek sunucu sayısı */
sendq 1000000;
connfreq 100; /* Her bağlantı girişimi arasında ne kadar saniye olacağı */
};
/*
* YENI: allow {}
* ESKI: I:Line
* Bağlantı izinlerini belirtir..
* Temel olarak istemcilerin sunucuya bağlanabilmesi için herhangi bir kontrol
* ve/veya bir şifre belirtmenize olanak sağlar.
* Sözdizimi aşağıdaki gibidir:
* allow {
* ip (izin verilecek ip maskesi);
* hostname (host maskesi);
* class (gönderilecek sınıf [class {} bloğuna göz atınız]);
* password "(şifre)"; (isteğe bağlı)
* maxperip (ip başına kabul edilecek bağlantı sayısı); (isteğe bağlı)
* };
*/
allow {
ip *@*;
hostname *@*;
class clients;
maxperip 5;
};
/* Şifrelendirilmiş allow bloğu */
allow {
ip *@255.255.255.255;
hostname *@*.passworded.ugly.people;
class clients;
password "f00Ness";
maxperip 1;
};
/*
* YENI: allow channel {}
* ESKI: chrestrict
* Bir kullanıcının bir kanala girmesine olanak sağlar...
* yasak kanal bloğundaki hariçlik gibi.
* Sözdizimi:
* allow channel {
* channel "kanal ismi";
* };
*/
allow channel {
channel "#WarezSucks";
};
/*
* YENI: oper {}
* ESKI: O:Line
* Bir IRC Operatörü tanımlamanızı sağlar.
* IRC Operatörleri sunucuya uygun bir biçimde bağlanılmasını ve
* makullüğü sağlarlar.
* Sözdizimi aşağıdaki gibidir:
* oper (login) {
* class (sınıf ismini ekleyin, eğer istemciden farklıysa, yeni sınıfı ekleyin);
* from {
* userhost (ident@host);
* userhost (ident@host);
* };
* flags
* {
* (flaglar buraya*);
* };
* VEYA
* flags "OAaRD gibi eski tip flaglar";
* };
*/
/* Oper flaglarının listesine doc/unreal32docs.html#operblock dan göz atabilirsiniz.
* [Okumanız şiddetle önerilir]
*/
oper bobsmith {
class clients;
from {
userhost bob@smithco.com;
};
password "f00";
flags
{
netadmin;
can_zline;
can_gzline;
can_gkline;
global;
};
};
/*
* YENI: listen {}
* ESKI: P:Line
* İstemci ve sunucuların sunucuya bağlanmasını sağlamak için ircd tarafından
* kullanılacak bir port tanımlamanızı sağlar .
* Sözdizimi aşağıdaki gibidir:
* listen (ip adresi):(port numarası)
* {
* options {
* (tercihler buraya);
* };
* };
* veya sade bir biçimde
* listen: listen (ip):(port);
*
* UYARI: ipv6 ipleri için (3ffe:b80:2:51d::2 vb), [ip]:port; kullanınız
*
* Böylede çalışır.
*/
/* listen için tercihler:
ESKI | YENI
S serversonly
C clientsonly
J java
s ssl
* standard
*/
/* SSL PORTLARI İÇİN NOT: SSL portları oldukça standart dışıdır,
* ayrıca pek çok yüksek-SSL portları için bazı insanlar 994 te çalıştırın
* der çünkü bu resmi SSL portudur..Fakat bu root erişimi gerektirir.Yanı sıra,
* 194 resmi irc portu olarak bunun üzerinde çalışan ircd
* hiç gördünüz mü?
* Böyle olunca bizim önerimiz 6697 portunu SSL için kullanmanız, bu hayli
* sunucuda kullanılıyor ve örnek için StunTour tarafından kabul görmüş durumda.
* İstediğiniz kadar SSL port açmakta özgürsünüz, fakat 6697 yi kullanmanız
* dünya standartı haline gelmesine biraz daha yardım edecektir. ;).
*/
listen *:6697
{
options
{
ssl;
clientsonly;
};
};
listen *:8067;
listen *:6667;
/* NOT: Eğer bir çok IP barındıran bir IRCd Shell kullanıyorsanız logunuzda olası
* 'Address already in use' alırsınız ve ircd başlamaz.Bunun anlamı '*' yerine
* belirli bir IP adresi kullanmanız gerektiğidir.Yani örneğin:
* listen 1.2.3.4:6667;
* Açıkça, IP yi önceden koyduğunuz IP ile değiştirin.
*/
/*
* YENI: link {}
* ESKI: C/N:Lines
* Bir sunucu bağlantısı için bir onay tanımlamanızı sağlar.
* NOT: HER IKI SUNUCUDA BAĞLANTI IÇIN TAM OLARAK DÜZGÜN BİR LINK {} GEREĞİ DUYAR!
* Sözdizimi aşağıdaki gibidir:
* link (sunucu ismi)
* {
* username (username, * da uygundur);
* hostname (ip adresi/hostmask);
* bind-ip (Bağlanırken hangi IP ile bağlanacağı, veya *);
* port (bağlantı portu, eğer herhangi biriyse);
* hub (Bu bir hub ise, * çalışır, veya sunucu maskeleri bunu sağlar);
* [veya leaf *;]
* password-connect "(gönderilecek şifre)";
* password-receive "(almamız gereken şifre)";
* class (sunucuların yönetileceği sınıf);
* options {
* (tercihler buraya*);
* };
* /* Eğer SSL kullanıyorsak, SSL modunda ne tür bir anahtar kullanacağımızı seçebiliriz
* * "openssl ciphers" ile bir liste alınır, anahtarlar birbirinden : ile ayrılırak belirtilebilirler.
* */
* ciphers "DES-CBC3-MD5";
*
* };
*/
/*
tercihler:
YENI | ESKI
S ssl
Z zip
N/A autoconnect
N/A quarantine
N/A nodnscache
*/
link hub.mynet.com
{
username *;
hostname 1.2.3.4;
bind-ip *;
port 7029;
hub *;
password-connect "LiNk";
password-receive "LiNk";
class servers;
options {
/* Note: Servisler link edilirken autoconnect kullanmamalısınız.*/
autoconnect;
ssl;
zip;
};
};
/*
*
* YENI: ulines {}
* ESKI: U:Line
* U-lines satırları sunuculara daha güç/komut kazandırır.Bu servis/istatistik
* sunucuları içindir ve ASLA normal UnrealIRCd sunucuları için değildir.
* Sözdizimi aşağıdaki gibidir:
* ulines {
* (uline olacak sunucu);
* (uline olacak sunucu);
* [vb]
* };
*/
ulines {
services.roxnet.org;
stats.roxnet.org;
};
/*
* YENI: drpass {}
* ESKI: X:Line
* Bu blok /die ve /restart için şifre tanımlamanızı sağlar.
* Sözdizimi aşağıdaki gibidir:
* drpass {
* restart "(yeniden başlatmak için şfire)";
* die "(sona erdirmek için şifre)";
* };
*/
drpass {
restart "I-love-to-restart";
die "die-you-stupid";
};
/*
* YENI: log {} ESKI: N/A Ircd e logun ne ve nerede olacağını bildirir. Dilediğiniz
* kadara sahip olabilirsiniz.
*
* FLAGS: errors, kills, tkl, connects, server-connects, kline, oper
*
* Syntax:
* log "log file"
* {
* flags
* {
* flag;
* flag;
* etc..
* };
* };
*/
log "ircd.log" {
/* Eğer 2 MB yi geçerse log dosyasını sil ve yenisini aç, eğer her zaman aynı log
dosyasını kullanmak istiyorsanız karışmayın */
maxsize 2097152;
flags {
oper;
kline;
connects;
server-connects;
kills;
errors;
sadmin-commands;
chg-commands;
oper-override;
spamfilter;
};
};
/*
* YENI: alias {}
* ESKI: N/A
* /nickserv, /chanserv gibi komutlar hazırlamanızı sağlar.
* FLAGS: services, stats, normal
*
* Sözdizimi:
* alias "isim" {
* target "gidecek nokta";
* type aliastype;
* };
*
* [NOT: Aynı zamanda önceden tanımlanmış alias dosyası dahil edebilirsiniz, doc/unreal32docs.html bölüm 2.9]
*/
// Bu nokta /NickServ komutu ile set::services-server server üzerinden bağlanmış olan NickServ e döner.
/*alias NickServ {
target "NickServ";
type services;
};*/
// Eğer komutla noktanın aynı olmasını istiyorsanız nick girişini gözardı edebilirsiniz
//alias ChanServ { type services; };
// Bu nokta /statserv komutu ile set::stats-server server üzerinden bağlanmış olan StatServ e döner.
//alias StatServ { type stats; };
// Bu nokta /superbot komutu ile kullanıcı SuperBot a döner
//alias SuperBot { type normal; };
/* Standart aliases */
alias NickServ { type services; };
alias ChanServ { type services; };
alias OperServ { type services; };
alias HelpServ { type services; };
alias StatServ { type stats; };
/*
* ESKI: alias {}
* YENI: N/A
* Bu /identify, /services gibi komutlar hazırlamanızı sağlar.
*
* Sözdizimi:
* alias "isim" {
* format "format satırı" {
* target "gidecek nokta";
* type aliastype;
* parameters "gönderilecek parametreler";
* };
* type command;
* };
*/
/* Bu ayrı bir şekilde gösterilir.Çünkü bir önceki direktif ile aynı isme sahip olsa bile benzer bir
* fonksiyon sağlaması ve standart aliaseslerin çalışmasına dayanması ile birlikte çok farklı sözdizimine sahip olması.
*/
/*
alias "identify" {
format "^#" {
target "chanserv";
type services;
parameters "IDENTIFY %1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "IDENTIFY %1-";
};
type command;
};
*/
/* alias::format direktifi bir düzenli ifadedir. İlk biçim /identify komutundan sonraki ilk karakter bir # ise eşleşir.
* Ardından IDENTIFY %1- ile chanserv aliases e döner.
* İkinci biçim ise /identify komutundan sonraki ilk karakterin bir # işareti ile eşleşmeme durumunu belirtir.Ardından
* IDENTIFY %1- ile nickserv aliases e döner.
*/
/* alias::format::parameters betik diline benzerdir. %N (N bir numaradır) komuta gönderilecek
* parametreyi temsil eder.(bu durumda /identify). Eğer bir %N- belirtirseniz bu N den sonraki
* bütün parametleri içerir. Ayrıca kullanıcı nickname inin yerine %n kullanabilirsiniz.
*/
/* Standart aliases */
alias "services" {
format "^#" {
target "chanserv";
type services;
parameters "%1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "%1-";
};
type command;
};
alias "identify" {
format "^#" {
target "chanserv";
type services;
parameters "IDENTIFY %1-";
};
format "^[^#]" {
target "nickserv";
type services;
parameters "IDENTIFY %1-";
};
type command;
};
/* Bu gerçek komut aliası için bir örnektir */
/* Bu eşlem /GLINEBOT ile /GLINE <parametre> 2d vb... şeklindedir */
alias "glinebot" {
format ".+" {
command "gline";
type real;
parameters "%1 2d Bu sunucuda botlara izin verilmemektedir, lütfen http://www.example.com/faq/123 sayfasından sss ı okuyunuz.";
};
type command;
};
/*
* ESKI: tld {}
* YENI: T:Line
* Bu istemcilerin hostmaskesine bağlı olarak farklı
* motd ve rules dosyaları belirler.
* Sözdizimi aşağıdaki gibidir:
* tld {
* mask (ident@host);
* motd "(motd dosyası)";
* rules "(rules dosyası)";
* };
*/
tld {
mask *@*.fr;
motd "ircd.motd.fr";
rules "ircd.rules.fr";
};
/* not: Bütün istemciler için aynı motd/rules (ircd.motd, ircd.rules) dosyaları
* görüntületmek istiyorsanız sadece yukarıdaki örnek bloğu silebilirsiniz.
*/
/*
* YENI: ban nick {}
* ESKI: Q:Line
* Nir nickname yasaklar, bundan doalyı kullanılamaz.
* Sözdizimi aşağıdaki gibidir:
* ban nick {
* mask "(yasaklanak nick)";
* reason "(neden)";
* };
*/
ban nick {
mask "*C*h*a*n*S*e*r*v*";
reason "Servisler için ayrılmıştır";
};
/*
* YENI: ban ip {}
* ESKI: Z:Line
* Ağa bağlanan bir ip yi yasaklar.
* Sözdizimi:
* ban ip { mask (ip adresi/hostmask); reason "(neden)"; };
*/
ban ip {
mask 195.86.232.81;
reason "Bağlı olmayan sunucu";
};
/*
* YENI: ban server {}
* ESKI: Server Q:Line
* Ağa bir sunucunun bağlanmasını devredışı kılar.
* eğer sunucu uzak bir sunucuya bağlanmışsa, yerel sunucunun
* ağdan bağlantısı kesilir.
* Sözdizimi aşağıdaki gibidir:
* ban server {
* mask "(sunucu ismi)";
* reason "(neden)";
* };
*/
ban server {
mask eris.berkeley.edu;
reason "Defol buradan.";
};
/*
* YENI: ban user {}
* ESKI: K:Line
* Kullanıcının belirtilen kesin bir mask ile sunucuya bağlanmasını engeller.
* Sözdizimi:
* ban user { mask (hostmask/ip adresi); reason "(neden)"; };
*/
ban user {
mask *tirc@*.saturn.bbn.com;
reason "Idiot";
};
/*
* YENI: ban realname {}
* ESKI: n:Line
* Kullanılan kesin bir realname i yasaklar.
* Sözdizimi:
* ban realname {
* mask "(real name)";
* reason "(neden)";
* };
*/
ban realname {
mask "Swat Team";
reason "mIRKFORCE";
};
ban realname {
mask "sub7server";
reason "sub7";
};
/*
* BUTUN BANLAR İÇİN NOT, ilave girdiler için tekrarlanabilir!
*
* YENI: except ban {}
* ESKI: E:Line
* Bu yasaklanmamanızı sağlar.
* Sözdizimi:
* except ban { mask (ident@host); };
* Farklı hostlar için istediğiniz kadar except ban {}
* bloğunu tekrarlayın.
*/
except ban {
/* stskeeps i yasaklama*/
mask *stskeeps@212.*;
};
/*
* YENI: deny dcc {}
* ESKI: dccdeny.conf
* Dcc gönderimlerini bloklamak için kullanılır..Virüsler
* dursa iyi olur.
* Sözdizimi:
* deny dcc
* {
* filename "bloklanacak dosya (örnek, *exe)";
* reason "neden";
* };
*/
deny dcc {
filename "*sub7*";
reason "Muhtemek Sub7 Virüsü";
};
/*
* ESKI: deny channel {}
* YENI: N/A (NEW)
* Girilen kanalları bloklar.
* Sözdizimi:
* deny channel {
* channel "(kanal)";
* reason "neden";
* };
*/
deny channel {
channel "*warez*";
reason "Warez yasaktır";
};
/*
* YENI: vhost {}
* ESKI: Vhost.conf file
* Oper olmayan kullanıcılar için sahte ip hazırlar, veya
* tembellik yaparak /sethost kullanmayan operler içindir :P
* Sözdizimi:
* vhost {
* vhost (vhost.com);
* from {
* userhost (kullanılacak ident@host);
* };
* login (login ismi);
* password (şifre);
* };
* ardından bu vhostu kullanmak için, IRC de /vhost (login) (şifre) yapın
*/
vhost {
vhost i.hate.microsefrs.com;
from {
userhost *@*.image.dk;
};
login stskeeps;
password moocowsrulemyworld;
};
/* Diğer yapılandırma dosyalarını dahil edebilirsiniz */
/* include "klines.conf"; */
/* Ağ yapılandırması */
set {
network-name "ROXnet";
default-server "irc.roxnet.org";
services-server "services.roxnet.org";
stats-server "stats.roxnet.org";
help-channel "#ROXnet";
hiddenhost-prefix "rox";
/* prefix-quit "no"; */
/* Gizleme anahtarları ağ üzerindeki bütün sunucularda aynı olmalı.
* Bu anahtarlar maskeli hostlar yaratmak ve bunları saklamak için kullanılır.
* Anahtarlar 5-100 karakterlik (10-20 karakter yeterli) 3 rastgele diziden oluşmalı ve
* küçük harf (a-z), büyük harf (A-Z) ve rakamlardan (0-9) meydana gelmelidirler.. [ilk örneğe bakınız].
*/
cloak-keys {
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW";
"and another one";
"and another one";
};
/* on-oper host */
hosts {
local "locop.roxnet.org";
global "ircop.roxnet.org";
coadmin "coadmin.roxnet.org";
admin "admin.roxnet.org";
servicesadmin "csops.roxnet.org";
netadmin "netadmin.roxnet.org";
host-on-oper-up "no";
};
};
/* Sunucunun kendine özgü yapılandırması */
set {
kline-address "bunu.email.olarak.ayarlayın";
modes-on-connect "+ixw";
modes-on-oper "+xwgs";
oper-auto-join "#opers";
options {
hide-ulines;
/* Eğer isterseniz identd kontrolünü buradan aktif edebilirsiniz */
/* identd-check; */
show-connect-info;
};
maxchannelsperuser 10;
/* /quit mesajının görüntülenebilmesi için, bir kullanıcının sunucuya bağlı kalması gereken süre
* Umarız spamleri durdurmak için yardım eder */
anti-spam-quit-message-time 10s;
/* Bütün çıkışlarda değişmeyen bir çıkış mesajı yaratır - anlamı yerel sunucuda
ısmarlama çıkışlara izin verilmemesidir */
/* static-quit "Client quit"; */
/* Ayrıca bu seçeneğin açıklama satırlarını kaldırıp 'yes' diyerek bütün kanaldan ayrılma mesajlarını,
* bloklamış veya belirli bir diğer metini bunun için kullanabilirsiniz. (örnek: "Bye bye!") Her zaman kanaldan
* ayrılma mesajı olarak kullanılır */
/* static-part yes; */
/* Operlerin sadece belirli istatistikleri görüntüleyebilmesini sağlar, bütün istatistikler için * kullanın,
* bütün istatistikleri görebilmeleri için gözardı edin. Full liste için '/stats' yapınız.
* Bazı yöneticiler normal kullanıcıların 'kGs' istatistiklerine ulaşmasını istemeyebilir.
*/
oper-only-stats "okfGsMRUEelLCXzdD";
/* Throttling: Bu örnek bir hosta 60 saniye içerisine yanlızca 3 bağlantı imkanı sağlar. */
throttle {
connections 3;
period 60s;
};
/* Anti flood koruması */
anti-flood {
nick-flood 3:60; /* Her 60 saniyede 3 nick değişikliği (varsayılan) */
};
/* Spam filtresi */
spamfilter {
ban-time 1d; /* spamfilter ile bir *line yasağının varsayılan devaö süresi */
ban-reason "Spam/Advertising"; /* varsayılan neden */
virus-help-channel "#help"; /* 'viruschan' eylemi için kullanılacak kanal */
/* except "#help"; spam filtreden muaf tutulacak kanal */
};
};
/*
* Sorununuz veya daha fazla yardımamı ihtiyacınız var?
* 1) www.vulnscan.org/UnrealIRCd/unreal32docs.tr.html
* 2) www.vulnscan.org/UnrealIRCd/faq/ <- sorularınızın %80 ini kapsamakta!
* 3) Eğer probleminiz hala devam ediyorsa irc.ircsystems.net sunucusu #unreal-support kanalına girebilirsiniz
* DÖKÜMANTASYON ve FAQ kısmını okumanızı gerekli gördüğümüzü belirtiyoruz!
*/
-1398
View File
File diff suppressed because it is too large Load Diff
-1485
View File
File diff suppressed because it is too large Load Diff
-1376
View File
File diff suppressed because it is too large Load Diff
-141
View File
@@ -1,141 +0,0 @@
PROTOCTL Documentation (c) 2002 codemastr (Dominick Meglio) [codemastr@unrealircd.com]
(As of Unreal3.2-beta11)
The PROTOCTL command allows servers to negotiate protocol specific features when a link
occurs. The PROTOCTL command is sent during a link before the SERVER and PASS commands. The
command contains tokens that list what protocols the server supports.
PROTOCTL SPACE <token> SPACE ...
UnrealIRCd supports several tokens that add additional protocol support to the server. A
list of all supported tokens and their function listed below.
Token Description
------------------------------------------------------------------------------------------------
NOQUIT Informs the server it need not send out a QUIT for each user on the server
when an SQUIT occurs. Instead an SQUIT is sent out for each server that has
been disconnected from the network and the server can then assume all users
that were on those servers have left as well.
TOKEN Informs the server that it may send "tokenized commands", that is a shortened
name for the commands. This allows the server to save bandwidth by sending
less information to other servers. See doc/technical/token.txt for a list of
all commands and their respective token.
NICKv2 Notifies the server that it supports the extended NICK command (version 2),
this command allows the server to specify more information in the NICK
command rather than having to send out a NICK, MODE, and CHGHOST
command. This token only affects a NICK command introducing a client, not one
in which a client is changing his/her nickname. The format for a NICKv2 NICK
command is:
:<sender> NICK <nickname> <hops> <TS> <username> <host> <server>
<servicestamp> <umodes> <vhost> :<info>
If the user has no modes set the umodes parameter is a +, if the user has no
vhost set the vhost parameter is an *.
SJOIN SJOIN is an obsolete token that is only supported for backwards
compatibility. It should not be used.
SJOIN2 SJOIN2 is an obsolete token that is only supported for backwards
compatibility. It should not be used.
UMODE2 Informs the server that support for the UMODE2 command exists. The UMODE2
command is a shortened form of the MODE command but only applys to
usermodes. In a normal MODE command, when applied to usermodes, the nickname
is specified two times. Both as the sender prefix and as the first parameter,
UMODE2 solves this problem in order to save bandwidth, the format for UMODE2
is as follows:
:<sender> UMODE2 <modes>
VL Notifies the server that Vline information is included in the info field of
the SERVER command. Vline information consists of the protocol number of the
server and compiletime options supported. This allows denial of a server
based on version and/or features supported. The VL information is passed only
during connection, it is not filtered to other servers on the network, only
the uplink. The syntax for a VL supporting SERVER command is:
SERVER <servername> <hops> :U<protocol>-<versionflags> <info>
If an * appears for either protocol and/or versionflags no Vline checking is
done, this is often used by services programs where support for all versions
is desired. See doc/technical/vl.txt for a list of version flags and protocol
numbers.
SJ3 Notifies the server that the SJOIN command with SJ3 syntax is
supported. SJOIN is used at link time to inform servers about the channels on
the server. It is a combination of the JOIN commands, and MODE commands
associated with distribution of channel information. The syntax for the SJOIN
command with SJ3 syntax is:
:<sender> SJOIN <ts> <chname> [<modes>] [<mode para> ...] :<[[*~@%+]member] ...
[&"ban/except] ...>
The ts parameter is the time at which the channel, chname, was created. The
modes parameter is only included if modes are set, if not modes and mode para
are excluded. If modes exists and modes requiring parameters (+klLf) are set,
one mode para parameter is included for each value. The last parameter
specifies a list of channel members and the channel ban and except list. The
members are listed with the prefixes they have. * = +q, ~ = +a, @ = +o, % =
+h, + = +v. If no prefix is specified for the member then the user is a
normal user. The & prefix is used to denote a +b, and the " prefix denotes a
+e. It is important that if a & or " is encountered that you do not continue
to check that entry for other prefixes as a ban/except may contain *~@
characters which will intefere with prefixes.
When synching, if ts lower than the local value, the information supplied by
the remote server replaces the local (ie remove local +ohv that are not
recorded on the remote server). The opposite is true when the ts is
higher. Bans/excepts do not apply to the previous rule. If the ts is the
same, information is merged therefore the modes from both servers are added
together. If +l is set and both servers have different values, the highest is
choosen, for +f the highest of each param, N:M is chosen, and if one server
has * set, then it is included. For +k and +L the "highest" in a string
comparison is used.
NS When specified informs the server that numeric server names are
supported. Numeric server names are a base64 number that is associated with
each server. This number is used as a shorthand name for the server. It is
used in the server parameter of the NICK command and can also be used in the
prefix for a message. In the event that the prefix is an NS, rather than
using :<sender>, the format is @<ns> the ns should be translated into the
server name so that the message can be processed. The format for a SERVER
message (at sync time) that supports NS is:
SERVER <servername> <hops> :U<protocol>-<versionflags>-<numeric> <info>
The VL protocol must also be supported. The numeric is passed to all servers
on the network through the SERVER command using the syntax:
:<sender> SERVER <servername> <hops> <numeric> :<info>
Note: anywhere a :<sender> is expected an @<ns> may be received if the source
is a server. See doc/technical/base64.txt for information on the base64
system used.
SJB64 This token allows timestamps to be specified in base64 notation to conserve
bandwidth. When SJB64 is supported, anywhere a timestamp can appear may be in
base64 notation. A base64 timestamp is preceeded by a ! to identify that it
is an sjb64 rather than a regular timestamp, if this is the case the
characters following the ! represent the timestamp in base64. See
doc/technical/base64.txt for information on the base64 system used.
ZIP If both servers have this set then the link will be (zlib) compressed after
the SERVER message. If one of the servers does not have ZIP in his PROTOCTL
message then the link stays uncompressed.
TKLEXT This allows 10 instead of 8 parameters in TKL's for spamfilter, see s_kline.c
function m_tkl for more info on this (added in 3.2RC2).
NICKIP This token indicates that a (standard) base64 encoded IP address is included
in the NICK command. The IP is in binary network byte order formated and
encoded using the standard base64 algorithm. '*' is used if no IP is available.
NICKCHARS This specifies a list of language characters that are allowed in nicks.
USMARC codes are used, with a suffix if needed. See src/charsys.c for the full
list (ctrl+f, static LangList) of possible languages (2nd column).
The items in the list sent as NICKCHARS=.. must always be sorted.
If a server sends NICKCHARS= and if the remote parameters do not match the
charsets in use locally, then the server link is rejected.
-465
View File
@@ -1,465 +0,0 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- $Id$ -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>Unreal 3.2 Protocol Documentation</title>
</head>
<body>
<h1 style="text-align: center;">Unreal 3.2 Protocol Documentation</h1>
<h3 style="text-align: center;">Last update: 29 November 2006</h3>
<h1>Table of Contents</h1>
<p><a href="#S1">1 Introduction</a></p>
<p><a href="#S2">2 Server Negotiation</a></p>
<blockquote><p><a href="#S2_1">2.1 PASS - Connection Password</a></p></blockquote>
<blockquote><p><a href="#S2_2">2.2 PROTOCTL - Server Protocol Negotiation</a></p></blockquote>
<blockquote><p><a href="#S2_3">2.3 SERVER - Server Negotiation</a></p></blockquote>
<blockquote><p><a href="#S2_4">2.4 EOS - End Of Synch</a></p></blockquote>
<blockquote><p><a href="#S2_5">2.5 NETINFO - Network Information</a></p></blockquote>
<p><a href="#S3">3 User Operations</a></p>
<blockquote><p><a href="#S3_1">3.1 NICK - User Introduction and Nick Change</a></p></blockquote>
<blockquote><blockquote><p><a href="#S3_1_1">3.1.1 Nick Collisions</a></p></blockquote></blockquote>
<blockquote><p><a href="#S3_2">3.2 MODE, UMODE2 - User Mode Change</a></p></blockquote>
<blockquote><p><a href="#S3_3">3.3 QUIT - User Disconnect</a></p></blockquote>
<blockquote><p><a href="#S3_4">3.4 KILL - Force Disconnect</a></p></blockquote>
<blockquote><p><a href="#S3_5">3.5 SETHOST/CHGHOST - Change virtual host</a></p></blockquote>
<blockquote><p><a href="#S3_6">3.6 SETIDENT/CHGIDENT - Change a user's username</a></p></blockquote>
<blockquote><p><a href="#S3_7">3.7 SETNAME/CHGNAME - Change a user's realname</a></p></blockquote>
<blockquote><p><a href="#S3_8">3.8 WHOIS - User Information</a></p></blockquote>
<p><a href="#S1">4 Server Operations</a></p>
<blockquote><p><a href="#S4_1">4.1 SERVER - Server Introduction</a></p></blockquote>
<blockquote><p><a href="#S4_2">4.2 SQUIT - Server Removal</a></p></blockquote>
<blockquote><p><a href="#S4_3">4.3 SDESC - Server Description</a></p></blockquote>
<blockquote><p><a href="#S4_4">4.4 PING - Live Connection Query</a></p></blockquote>
<blockquote><p><a href="#S4_5">4.5 PONG - Live Connection Reply</a></p></blockquote>
<blockquote><p><a href="#S4_6">4.6 STATS - Server Stats</a></p></blockquote>
<p><a href="#S5">5 Channel Operations</a></p>
<blockquote><p><a href="#S5_1">5.1 SJOIN - Channel Burst</a></p></blockquote>
<blockquote><p><a href="#S5_2">5.2 JOIN - Channel Join</a></p></blockquote>
<blockquote><p><a href="#S5_3">5.3 PART - Channel Part</a></p></blockquote>
<blockquote><p><a href="#S5_4">5.4 KICK - Channel Kick</a></p></blockquote>
<blockquote><p><a href="#S5_5">5.5 MODE - Channel Mode</a></p></blockquote>
<blockquote><p><a href="#S5_6">5.6 INVITE - Invite a user to a channel</a></p></blockquote>
<blockquote><p><a href="#S5_7">5.7 SAJOIN - Channel Force Join</a></p></blockquote>
<blockquote><p><a href="#S5_8">5.8 SAPART - Channel Force Part</a></p></blockquote>
<blockquote><p><a href="#S5_9">5.9 SAMODE - Channel Force Mode</a></p></blockquote>
<blockquote><p><a href="#S5_10">5.10 TOPIC - Chanel Topic</a></p></blockquote>
<p><a href="#S6">6 Services Commands</a></p>
<blockquote><p><a href="#S6_1">6.1 SVSKILL - Force Disconnect by Service</a></p></blockquote>
<blockquote><p><a href="#S6_2">6.2 SVSMODE, SVS2MODE - Force User Mode Change</a></p></blockquote>
<blockquote><p><a href="#S6_3">6.3 SVSSNO, SVS2SNO - Forced SNomask Change</a></p></blockquote>
<blockquote><p><a href="#S6_4">6.4 SVSNICK - Forced Nick Change</a></p></blockquote>
<blockquote><p><a href="#S6_5">6.5 SVSJOIN - Forced Join</a></p></blockquote>
<blockquote><p><a href="#S6_6">6.6 SVSPART - Forced Part</a></p></blockquote>
<blockquote><p><a href="#S6_7">6.7 SVSO - Oper Permissions</a></p></blockquote>
<blockquote><p><a href="#S6_8">6.8 SVSNOOP - Oper Lockdown</a></p></blockquote>
<blockquote><p><a href="#S6_9">6.9 SVSNLINE - RealName Ban</a></p></blockquote>
<blockquote><p><a href="#S6_10">6.10 SVSFLINE - File Ban</a></p></blockquote>
<p><a href="#S7">7 Messaging</a></p>
<blockquote><p><a href="#S7_1">7.1 PRIVMSG, NOTICE - Simple Message Transmission</a></p></blockquote>
<blockquote><p><a href="#S7_2">7.2 SENDUMODE, SMO - Usermode-based Delivery</a></p></blockquote>
<blockquote><p><a href="#S7_3">7.3 SENDSNO - SNomask-based Delivery</a></p></blockquote>
<blockquote><p><a href="#S7_4">7.4 CHATOPS - IRCop Chat</a></p></blockquote>
<blockquote><p><a href="#S7_5">7.5 WALLOPS - Wallop Chat</a></p></blockquote>
<blockquote><p><a href="#S7_6">7.6 GLOBOPS - FailOp Chat</a></p></blockquote>
<blockquote><p><a href="#S7_7">7.7 ADCHAT - Admin Chat</a></p></blockquote>
<blockquote><p><a href="#S7_8">7.8 NACHAT - NetAdmin Chat</a></p></blockquote>
<p><a href="#S8">8 Ban Control</a></p>
<blockquote><p><a href="#S8_1">8.1 TKL - Master Ban Control</a></p></blockquote>
<blockquote><blockquote><p><a href="#S8_1_1">8.1.1 GLINE - Network-wide user@host ban</a></p></blockquote></blockquote>
<blockquote><blockquote><p><a href="#S8_1_2">8.1.2 GZLINE - Network-wide IP ban</a></p></blockquote></blockquote>
<blockquote><blockquote><p><a href="#S8_1_3">8.1.3 SQLINE, UNSQLINE - Network-wide Nickname ban</a></p></blockquote></blockquote>
<blockquote><blockquote><p><a href="#S8_1_4">8.1.4 SPAMFILTER - Message Spam Filtration System</a></p></blockquote></blockquote>
<p><a href="#S9">9 Base64 Tables</a></p>
<blockquote><p><a href="#S9_1">9.1 Table for SJB64 (NICK and SJOIN).</a></p></blockquote>
<blockquote><p><a href="#S9_2">9.2 Table for NICKIP.</a></p></blockquote>
<hr/>
<h1><a name="S1"></a>1 Introduction</h1>
<p>This document describes the UnrealIRCd server-to-server protocol as of protocol 2307 (Unreal 3.2.4).</p>
<h2>A word about clocks.</h2>
<p>Unreal is very time-dependant. Users and channels, for example, are timestamped, and if server clocks are not synchronized properly, things can go very wrong very fast. See <a href="http://vulnscan.org/UnrealIrcd/faq/#67">http://vulnscan.org/UnrealIrcd/faq/#67</a> for more information on this. Note that there is a slight difference between server time and what is actually reported by the UNIX date command or by the C time() function. Unreal can apply an offset to the real time to create the server time, allowing servers to be virtually synchronized when synchronizing the real clocks is not possible (such as on shell servers).
I should make it quite clear that GMT time is used for everything. To be specific, timestamps in unreal are 32-bit integer values (actually, however many bits the time_t type is, which is 32 on 32-bit systems such as x86). This integer value is the number of seconds that have elapsed since Midnight January 1, 1970 GMT (can be referred to as Epoch time in the UNIX world). This means that timezones are no problem, nor is daylight savings time (or whatever your country of choice calls it).</p>
<hr/>
<h1><a name="S2"></a>2 Server Negotiation</h1>
<p>The first step to establish a server-to-server communication is to negotiate the connection as a server. Negotiation is done using standard IRC commands - no PROTOCTL options are in force until the link is established. The first step is to open a TCP/IP connection to the target server. The target port must be one described by a listen {} block in the remote server's configuration, and that listen block must not have the clientsonly option. After the connection is open, you will be treated as any other connection and be greeted with the "Looking up your hostname..." and "Checking identd..." notices as you would for a client. As these are NOTICE messages and your session as a server isn't established, they should simply be ignored. Use the commands below to introduce a server connection.</p>
<h2><a name="S2_1"></a>2.1 PASS - Connection Password</h2>
<p><b>Syntax:</b> <tt>PASS :<i>link password</i></tt></p>
<p>The PASS command is used to transmit the password required for a server link. It must match the password specified in the remote server's link::password-receive (which can be crypted), otherwise the link will be rejected. This should be the first message sent.</p>
<h2><a name="S2_2"></a>2.2 PROTOCTL - Server Protocol Negotiation</h2>
<p><b>Syntax:</b> <tt>PROTOCTL <i>protocol options</i></tt></p>
<p>The PROTOCTL command sets several protocol options. The tokens supported are listed below.</p>
<ul>
<li>NOQUIT : When a netsplit occurs, only send a SQUIT message for each server lost. This server will assume that clients on these servers were also lost and will send the appropriate QUIT messages to local clients and to any non-NOQUIT servers.</li>
<li>TOKEN : Use tokenized commands. Tokens are case-sensitive, shortened versions of command names. Tokens will be usually one or two characters.</li>
<li>NICKv2 : Use extended NICK message for introducing users. See the NICK command for information about this.</li>
<li>VHP : When introducing a user, send his cloaked host as if it were a vhost. Usually used for services to avoid having duplicate code.</li>
<li>SJOIN : Supports SJOIN version 1 which is no longer in use. Use with SJ3.</li>
<li>SJOIN2 : Supports SJOIN version 2 which is no longer in use. Use with SJ3.</li>
<li>UMODE2 : Supports the UMODE2 command, which is a shortened version of MODE for usermode changes.</li>
<li>VL : Supports V:Line information. Extends the SERVER message to include version information used in deny version{} blocks. Note that this is assumed - unreal will always send its own version information.</li>
<li>SJ3 : Supports SJOIN version 3.</li>
<li>NS : Supports server numerics which provides a shorthand for server names. In any circumstance where a :server.name is permitted (the server is the message's real source), @servernumeric may be used instead. In addition, the server.name parameter in the NICK message may be simply the server's numeric. Requires VL support.</li>
<li>SJB64 : Timestamps in NICK and SJOIN are expressed in base64 rather than base10.</li>
<li>TKLEXT : Supports exntended TKL messages for spamfilter support.</li>
<li>NICKIP : Adds an IP parameter to the NICK message, which is the base64 encoding of the user's ip address (in network byte order). Requires NICKv2.</li>
<li>NICKCHARS : Indicates the set of enabled nickchar options (see the regular documention for info about this).</li>
<li>CHANMODES : (Not required to be sent) This is the same as the CHANMODES value in the 005 for client connections. Useful for autodetecting things like what modes are valid for ChanServ MLOCK, for example.</li>
<li>CLK : Supports an extra field in NICK for sending the cloaked host (not vhost).</li>
</ul>
<p>The syntax examples here follow the conventions for TOKEN and also NS in cases of server-only messages.</p>
<h2><a name="S2_3"></a>2.3 SERVER - Server Negotiation</h2>
<p><b>Note:</b> This message is also used for introducing additional servers, the format of this message in those cases is described later.</p>
<p><b>Syntax (normal):</b> <tt>SERVER <i>server.name</i> 1 :<i>server description</i></tt></p>
<p><b>Syntax (with VL):</b> <tt>SERVER <i>server.name</i> 1 :U<i>protocolversion</i>-<i>protocolflags</i> <i>server description</i></tt></p>
<p><b>Syntax (with VL and NS):</b> <tt>SERVER <i>server.name</i> 1 :U<i>protocolversion</i>-<i>protocolflags</i>-<i>servernumeric</i> <i>server description</i></tt></p>
<p>The literal 1 in the parameter list is the hopcount parameter. Since you are a direct link, your own hopcount will be 1.</p>
<p>The server.name is the same as that in the remote server's link:: block. When received from unreal servers, this will be the value of that server's me::name. The protocol version is the numeric protocol version (2306 for example), and the protocol flags are the server's compilation flags (described below). These two fields are checked against the deny version {} blocks in the remote server's configuration. A value of 0 for either field prevents deny version{} checking for that field. The server description can be anything. When received from unreal servers, it'll be the value of me::description.</p>
<p>The following version numbers have been used previously:</p>
<ul>
<li>2309 - Unreal 3.2.6, 3.2.7, 3.2.8</li>
<li>2308 - Unreal 3.2.5</li>
<li>2307 - Unreal 3.2.4</li>
<li>2306 - Unreal 3.2.3</li>
<li>2305 - Unreal 3.2.2</li>
<li>2304 - Unreal 3.2.1</li>
<li>2303 - Unreal 3.2beta* through 3.2 Release</li>
<li>2302 - Unreal 3.1.1 through 3.1.4</li>
<li>2301 - Unreal 3.1 Release</li>
<li>2300 - Unreal 3.0 Release</li>
</ul>
<p>The compile flags as specified in protocol flags are:</p>
<ul>
<li>c : Server is chrooted (#define CHROOTDIR).</li>
<li>C : Server has command line config (-f option) enabled (#define CMDLINE_CONFIG).</li>
<li>D : Server is in debugmode (#define DEBUGMODE).</li>
<li>F : Using filedescriptor lists.</li>
<li>h : Server is compiled with hub support (#define HUB or answer "Hub" to relevant ./Config prompt).</li>
<li>i : Server shows invisible users in /TRACE.</li>
<li>n : NOSPOOF (pingcookies) is enabled (#define NOSPOOF or answer "Yes" to relevant ./Config prompt).</li>
<li>V : Server is using valloc().</li>
<li>W : Windows IRCd.</li>
<li>Y : Syslog logging enabled.</li>
<li>6 : Server has IPv6 support (#define INET6 or answer "yes" to relevant ./Config prompt).</li>
<li>X : Server has badword stripping (user and channel modes +G) (#define STRIPBADWORDS).</li>
<li>P : Server is using poll().</li>
<li>e : Server has SSL Support (#define USE_SSL or answer "yes" (and have ssl libraries installed) to relevant ./Config prompt).</li>
<li>O : Server has OperOverride enabled (#undef NO_OPEROVERRIDE or answer "no" to relevant ./Config prompt).</li>
<li>o : Server has disabled Oper verify (#undef OPEROVERRIDE_VERIFY or answer "no" to relevant ./Config prompt).</li>
<li>Z : Server has ziplink support (#define ZIP_LINKS or answer "yes" to relevant ./Config prompt AND have the zlib dev libraries).</li>
<li>E : Server has extended channel mode support.</li>
<li>3 : 3rd party modules are loaded or some system libraries are wonky.</li>
<li>m : Private message handling is 'tainted' (one or modules registered a USERMSG hook).</li>
<li>M : Channel message handling is 'tainted' (one or modules registered a CHANMSG hook).</li>
<li>Additional Version flags can be added by 3rd-party modules.</li>
</ul>
<h2><a name="S2_4"></a>2.4 EOS - End Of Synch (TOKEN: ES)</h2>
<p><b>Syntax:</b> ES</p>
<p>Marks the end of the synching process. This is really optional, but it might be a good idea to send it anyway when you really are done synching. Once you send this, unreal will announce &quot;Client connecting&quot; or &quot;Client exiting&quot; notices (to those with snomask +F) for users (unless your server is U:Lined), and joins will be counted toward channel flood controls (chanmode +f).</p>
<p>Sending EOS only marks your server as synched, but does not do so for servers behind you. EOS would need to be sent on those servers' behalf as well.</p>
<h2><a name="S2_5"></a>2.5 NETINFO - Network Information (TOKEN: AO)</h2>
<p><b>Syntax:</b> AO <i>maxglobal</i> <i>currenttime</i> <i>protocolversion</i> <i>cloakhash</i> 0 0 0 :<i>networkname</i></p>
<p>This tells the other server your current network configuration. The max global is the highest number of concurrent users network-wide that this server has seen. The current time is a timestamp value. Protocolversion is the same as that in the SERVER command. Cloakhash is a hash representing the configured cloak keys. It may be a * if you are implementing services. The network name is that specified in set::network-name. The cloak-prefix is currently not sent here (and thus unreal won't generate warning for mismatching cloak prefixes, but they should be the same anyway).</p>
<p>It is NETINFO, not EOS, that triggers the &quot;Link bla bla bla is now synched&quot; notices, but NETINFO does not imply synching is actually complete (see EOS).</p>
<hr/>
<h1><a name="S3"></a>3 User Operations</h1>
<p>One important function of servers is it must notify all other servers about all of the users behind it. These commands represent the operations that can result in the change of a user's global state.</p>
<h2><a name="S3_1"></a>3.1 NICK - User Introduction and Nick Change (TOKEN: &amp;)</h2>
<p><b>Syntax (nick change):</b> <tt>:<i>oldnick</i> &amp; <i>newnick</i> :<i>timestamp</i></tt></p>
<p>This format of the NICK message indicates an existing user is changing his or her nickname. If a collision occurs, see the section on Nick Collisions below. The timestamp is the new nickname's timestamp.</p>
<p><b>Syntax (normal):</b> <tt>&amp; <i>nick</i> <i>hopcount</i> <i>timestamp</i> <i>username</i> <i>hostname</i> <i>server</i> <i>servicestamp</i> :<i>realname</i></tt></p>
<p><b>Syntax (NICKv2):</b> <tt>&amp; <i>nick</i> <i>hopcount</i> <i>timestamp</i> <i>username</i> <i>hostname</i> <i>server</i> <i>servicestamp</i> <i>+usermodes</i> <i>virtualhost</i> :<i>realname</i></tt></p>
<p><b>Syntax (NICKv2+CLK):</b> <tt>&amp; <i>nick</i> <i>hopcount</i> <i>timestamp</i> <i>username</i> <i>hostname</i> <i>server</i> <i>servicestamp</i> <i>+usermodes</i> <i>virtualhost</i> <i>cloakhost</i> :<i>realname</i></tt>
<p><b>Syntax (NICKv2+NICKIP):</b> <tt>&amp; <i>nick</i> <i>hopcount</i> <i>timestamp</i> <i>username</i> <i>hostname</i> <i>server</i> <i>servicestamp</i> <i>+usermodes</i> <i>virtualhost</i> <i>nickipaddr</i> :<i>realname</i></tt></p>
<p><b>Syntax (NICKv2+NICKIP+CLK):</b> <tt>&amp; <i>nick</i> <i>hopcount</i> <i>timestamp</i> <i>username</i> <i>hostname</i> <i>server</i> <i>servicestamp</i> <i>+usermodes</i> <i>virtualhost</i> <i>cloakhost</i> <i>nickipaddr</i> :<i>realname</i></tt>
<p><b>Note:</b> Because each server normally does its own cloak generation, Unreal does not expect to receive NICK messages with the CLK info, so do not send it. It will send this info to a server it has received a PROTOCTL CLK from however.</p>
<p>This format of the NICK message introduces a new user to the network. If PROTOCTL VHP is enabled, the user's cloaked host is put in the virtualhost field, otherwise it'll be * unless the user is +t. With the addition of CLK, VHP is no longer necessary for determining the cloak host.</p>
<h3><a name="S3_1_1"></a>3.1.1 Nick Collisions</h3>
<p>A nick collision occurs when a server receives a NICK message (or &amp; token) introducing a user that the server already sees on the network. When a collision occurs, one or both of the colliding clients must be disconnected. The timestamp is examined to determine which client loses. The client with the earlier timestamp remains. If both clients have equal timestamps, both are removed. Currently, Unreal handles NICK collisions both passively and agressively:</p>
<ul>
<li><b>Aggressive Handling:</b> The server actively sends a KILL message back across the link to terminate that end's client.</li>
<li><b>Passive Handling:</b> Upon receipt of a NICK message that should "win", the server simply silently exits it's own client.</li>
</ul>
<h2><a name="S3_2"></a>3.2 MODE, UMODE2 - User Mode Change (TOKEN: G or |)</h2>
<p><b>Syntax (MODE):</b> <tt>:<i>user</i> G <i>user</i> <i>modechange</i></tt></p>
<p><b>Syntax (UMODE2):</b> <tt>:<i>user</i> | <i>modechange</i></tt></p>
<p>This indicates a usermode change. The modechange can consist of zero or more strings of characters, each prefixed with either a + or -; the only delimiter between them being said + or -. If no + or - is at the beginning of the mode string, a + should be implied.</p>
<p>Some user modes are never sent between servers. Specifically, usermode +s and +O are not sent between servers. Modules can define additional usermodes that also might not be sent between servers. The UMODE2 saves bandwidth by not including the redundant target field for usermode changes, so use it when possible.</p>
<h2><a name="S3_3"></a>3.3 QUIT - User Disconnect (TOKEN: ,)</h2>
<p><b>Syntax:</b> <tt>:<i>user</i> , :<i>reason</i></tt></p>
<p>This command indicates that a user has disconnected. The reason field is filled in with the reason the user disconnected, which will be any of: quit message provided by the user in a /quit command, kill message for local operator kills, "Client exited" if the user does a brutal quit (clean (by TCP's definition) disconnect without sending a QUIT message), or a socket error message if present.</p>
<p>The QUIT message must NOT be prefixed when passing on to other servers. Only local user quit messages are affected by set::prefix-quit.</p>
<h2><a name="S3_4"></a>3.4 KILL - Force Disconnect (TOKEN: .)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> . <i>target</i> :<i>killpath</i>!<i>source</i> (<i>reason</i>)</tt></p>
<p>Used to indicate that an operator has used KILL on a user not on the same server. Anything beyond the last ! in the kill path is used as the reason. The source (reason) part is simply a standard used by Unreal. As each server passes on a KILL message, it usually prepends the bottommost part (up to the first .) of it's name followed by a ! character. When unreal receives a KILL from a directly connected irc operator, it will usually add that oper's vhost (or realhost if -x) as the first hop in the kill path, then follow with it's own name as mentioned before if it is passing to another server.</p>
<p>A server can also send KILLs on it's own. This is done in cases involving nickname collisions, fake senders, bad direction, and other cases of protocol errors. Usually, in these cases, the server puts it's own name as the source, and also prefixes with <i>bottompart</i>! like for any other ircop on that server. For example: @3 . someone :irc!irc.example.com (Nick collision)</p>
<h2><a name="S3_5"></a>3.5 SETHOST/CHGHOST - Change virtual host (TOKEN: AA or AL)</h2>
<p><b>Syntax (SETHOST):</b> <tt>:<i>source</i> AA <i>newvhost</i></tt></p>
<p><b>Syntax (CHGHOST):</b> <tt>:<i>source</i> AL <i>target</i> <i>newvhost</i></tt></p>
<p>Indicates the change of a user's virtual host. Currently, servers are expected to assume UMODE2 +xt on the target user in both commands. (In the case of SETHOST, the target is the sender.) Servers using PROTOCTL VHP will receive the cloaked host in a SETHOST message when a user activates his cloaked host. A server can also send CHGHOST (from one of it's opered clients) to change a user's hostname. This is generally used by HostServ implementations. To disable a cloaked host, use CHGHOST to set the user's virtual host equal to his real host, or use SVSMODE -xt, but the latter requires services.</p>
<h2><a name="S3_6"></a>3.6 SETIDENT/CHGIDENT - Change a user's username (TOKEN: AD or AZ)</h2>
<p><b>Syntax (SETIDENT):</b> <tt>:<i>source</i> AD <i>newusername</i></tt></p>
<p><b>Syntax (CHGIDENT):</b> <tt>:<i>source</i> AZ <i>target</i> <i>newusername</i></tt></p>
<p>Indicates the change of a user's username. No usermode change is associated with this. Unreal does not use a distinguished virtual username, so servers should only keep the original username (from the NICK message) if they intend to allow the user to reset the original username. Servers can use CHGIDENT to change a user's username.</p>
<h2><a name="S3_7"></a>3.7 SETNAME/CHGNAME - Change a user's realname (TOKEN: AE or BK)</h2>
<p><b>Syntax (SETNAME):</b> <tt>:<i>source</i> AE :<i>newrealname</i></tt></p>
<p><b>Syntax (CHGNAME):</b> <tt>:<i>source</i> BK <i>target</i> :<i>newrealname</i></tt></p>
<p>Indicates the change of a user's realname. No usermode change is associated with this. Unreal does not use a distinguished virtual realname, so servers should only keep the original realname (from the NICK message) if they intend to allow the user to reset the original realname. Servers can use CHGNAME to change a user's username. Note that servers must NOT check that the sender be an IRCop in SETNAME - normal users are permitted to use SETNAME.</p>
<h2><a name="#S3_8"></a>3.8 WHOIS - User Information (TOKEN: #)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> # [<i>from-server</i> ]<i>nick</i></tt></p>
<p>Requests the information on a user. This works exactly like the user /whois command - in fact, the source parameter must be a user, or the command will do nothing. <i>from-server</i> is the server to request the information from; if a server recives a WHOIS message without this parameter, it should return its own information on the user, otherwise it should pass the message to the given server. Note that <i>from-server</i> may name a user instead of a server (such as when a user uses /whois nick nick), in which case the the nick should be interpreted as naming the server that user is on. <i>nick</i> may be several users seperated by commas, but may not contain wildcards.</p>
<p>The reply to a WHOIS message uses the same numeric replies as the user command.</p>
<hr/>
<h1><a name="S4"></a>4 Server Operations</h1>
<p>This is different from server negotiation. Negotiation is when you are first connecting. Server introduction is used for introducing additional servers behind an existing server (aka hubbing). Hubbing is limited as specified by the hub, leaf, and leafdepth parameters in the link block and attempted violation of a hub restriction results in termination of the link. If no hub or leaf directive is given your server is a leaf by default, so any introduction of any server behind you would be an automatic drop. U:Lines don't matter here; services must be configured as a hub in the link block. The reason is U:Line is a permission rule, but hub privilege is a network structure rule.</p>
<h2><a name="S4_1"></a>4.1 SERVER - Server Introduction (TOKEN: ')</h2>
<p><b>Note: This command is also used for negotiation. Be warned that the token for this command is NOT VALID at that time! See section 2.3 for the syntax for negotiation.</b></p>
<p><b>Syntax (without PROTOCTL NS):</b> <tt>:<i>source</i> SERVER <i>new.server</i> <i>hopcount</i> :<i>description</i></tt></p>
<p><b>Syntax (with PROTOCTL NS):</b> <tt>@<i>sourcenumeric</i> SERVER <i>new.server</i> <i>hopcount</i> <i>numeric</i> :<i>description</i></tt></p>
<p>The command indicates that the server named new.server is being introduced by the source (the source is the server which new.server is directly linked to). The hopcount will be the number of links the receiving server would have to cross to reach new.server. In other words, new.server introduced itself with a hopcount of 1, and as the SERVER message is passed along, hopcount is incremented.</p>
<p>As an example, a services server faking a SERVER message for JUPE functionality would use a hopcount of 2.</p>
<h2><a name="S4_2"></a>4.2 SQUIT - Server Removal (TOKEN: -)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> SQUIT <i>server.name</i> <i>:reason</i></tt></p>
<p>From an IRCop or when server.name is not behind the source, this command requests the removal of the specified server.name. The command in this case is treated very much like KILL in the respect that the message is broadcasted to all servers, except server.name and any servers behind it. When the SQUIT reaches server.name's uplink, that server closes the link to server.name (which would then generate it's own SQUIT on behalf of it's uplink for the servers behind it).</p>
<p>A server can also use SQUIT in the same manner as QUIT to note the removal of a server behind it, or that it itself is quitting. In the former case, server.name is behind source, and the message is forward on to all other servers. In the latter case, source and server.name are equal, the receiving server closes the link and forwards the SQUIT message.</p>
<p>Unreal closes a direct link by simply sending an ERROR message and then closing the TCP connection. This typically causes the other end to generate an SQUIT bearing the message "Client exited" or similar, however, the ERROR will usually cause the server to send a message to all IRCops.</p>
<h2><a name="S4_3"></a>4.3 SDESC - Server Description (TOKEN: AG)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> AG :<i>newdesc</i></tt></p>
<p>The server to which source is connected to should have it's description updated to newdesc. This does NOT include the VL inforamtion.</p>
<h2><a name="S4_4">4.4 PING - Live Connection Query (TOKEN: 8)</a></h2>
<p><b>Syntax:</b> <tt>8 <i>source</i>[ :<i>destination</i>]</tt></p>
<p>Used to check if a connection is still live if it has been &quot;quiet&quot; for a certain amount of time. Typically, unreal will send PING requests at intervals determined by the class::pingfreq setting. PINGs originating from the direct uplink will use the token, but it seems PINGs originating from a distant server will not.</p>
<p>The response to a PING is sent with the <a href="#S4_5">PONG</a> command.</p>
<p>When receiving a two-parameter PING, the second parameter is the target. If the target isn't you, you can either reply on behalf of that target (using its name instead of yours), or if there is a real connection representing the target, forward the PING to the target.</p>
<h2><a name="S4_5">4.5 PONG - Live Connection Reply (TOKEN: 9)</a></h2>
<p><b>Syntax:</b> <tt>9 <i>source</i>[ :<i>destination</i>]</tt></p>
<p>Used to respond to a <a href="#S4_4">PING</a> query.</p>
<p><b>Responding to a ping:</b> Once a PING is received, you usually have an amount of time to respond equal to your class::pingfreq. The correct response will always have two parameters. If you received one parameter, then the received parameter becomes the second parameter of your response, and the first parameter is your server name. If you received two parameters, the response returns both parameters in reverse order.</p>
<p>For example, the response to <tt>8 uplink.server</tt> is <tt>9 my.name uplink.server</tt>, while the response to <tt>PING distant.server your.server</tt> is <tt>9 your.server distant.server</tt>. Unreal typically includes a : prior to the last parameter. This isn't required if that parameter contains no spaces, but it is especially important to not include the colon when reversing the parameters, or else Unreal mistake it for a single-parameter PONG.
<p>If a two-parameter PONG is received, the second parameter names the target. If the target is not you, and a real connection represents that target, you should forward the PONG message via that connection.</p>
<h2><a name="#S4_6"></a>4.6 STATS - Server Stats (TOKEN: 2)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> 2 [<i>type</i> [<i>server</i>] [<i>extended-params</i>]]</tt></p>
<p>Requests statistics or configuration information from a server. This command is used to transport cross-server STATS requests from users (eg: /stats o other.server), and should only be sent from a user (not a server). With no parameters, this will cause unreal to simply dump its help output. <i>type</i> is the type of stats to request, <i>server</i> names a server (or a user on that server) to request stats from, and <i>extended-params</i> is used to filter output from STATS G, etc. When received, it is up to the receiver to determine what stats to support and how to reply, but generally numeric replies are used. For the list of unreal's stats types, type /stats in a client for the helptext dump.</p>
<p><b>Note:</b> Stats set as oper-only (see set::oper-only-stats) will be refused from a server. In this case, it will be necessary to send the stats request from a psuedo-oper (such as a services agent, etc) for services/stats/etc.</p>
<hr/>
<h1><a name="S5"></a>5 Channel Operations</h1>
<p>These commands deal with the state of channels across the network. Unreal only supports Network Channels, where the first character is a # character.</p>
<h2><a name="S5_1"></a>5.1 SJOIN - Channel Burst (TOKEN: ~)</h2>
<p><b>Syntax:</b> <tt>@<i>servernumeric</i> ~ <i>timestamp</i> <i>channel</i> +<i>modes</i>[ <i>modeparams</i>] :<i>memberlist</i> <i>&amp;ban</i> <i>"exempt</i> <i>'invex</i></tt></p>
<p>Timestamp is the channel timestamp and can be !b64 as defined by PROTOCTL SJB64. Modes should only include those in the last three mode sets listed in CHANMODES. Modeparams is one parameter for each mode character that requires one. Memberlist is a series of users (all of which must at least be behind the server sending the SJOIN), each user is prefixed with one or more characters indicating their status. Owners (+q) are prefixed with *, admins (+a) ~, ops (+o) @, halfops (+h) %, voices (+v) +. Normal users are not prefixed with anything. Ban, ban exception, and invite exception masks are also included, with bans prefixed with &amp;, ban exceptions prefixed with ", and invite exceptions with '. Note that when a &amp;, " or ' is encountered as the first character, further processing of ~, *, @, %, or + characters must not continue because ban, exempt, and invite masks can contain any of those characters. (Plus it's just not right for a ban mask to be marked as a channel admin...)</p>
<p>If the channel didn't already exist it is created with the information given in the SJOIN. Otherwise the timestamp is used to determine how the SJOIN information is handled. As a given, all members are joined into the channel, regardless. The mode information (modes, modeparams, memberlist prefixes, bans, exempts, and invites) is subject to the timestamp rules:</p>
<ul>
<li>If the channel's current timestamp is equal to the timestamp in SJOIN, then the mode information is merged.</li>
<li>If the channel's current timestamp is less than the SJOIN timestamp, then the mode information is ignored.</li>
<li>If the channel's current timestamp is greater than the SJOIN timestamp, then the channel's existing mode information is cleared (for example, deop, etc all local clients), and the SJOIN mode information is added.</li>
</ul>
<p>When merging modes, conflicting modes (including +p vs +s, differing +l limits or +k keys, etc) are handled as follows:</p>
<ul>
<li><b>Private (+p) vs. Secret (+s):</b> Secret (+s) is preferred. Private (+p) is removed. (Note: there is a <a href="http://bugs.unrealircd.org/view.php?id=2391">bug</a> in Unreal versions prior to 3.2.3 in which a desynch will occur in which one side is +p and the other is +s. Update to Unreal 3.2.4 if you have problems with this.)</li>
<li><b>Strip Color (+S) vs. Block Color (+c):</b> Block (+c) is preferred. Strip (+S) is removed. (Note: Bug for +p vs. +s in prior unreal versions apply here as well.)</li>
<li><b>Channel Limit:</b> Numericly larger limit is preferred (for example, +l 30 versus +l 15 : +l 30 wins).</li>
<li><b>Channel Key:</b> &quot;Larger&quot; key (as defined by strcmp) is preferred (for example, +k moo versus +k meow : +k moo wins).</li>
<li><b>Channel Link:</b> &quot;Larger&quot; link name (as defined by stricmp - not case sensitive) is preferred (for example, +L #moo versus +L #meow : +L #moo wins, but +L #Meow versus +L #meow : values are equal).</li>
<li><b>Flood String:</b> Not really sure on this. I think larger value in each component wins.</li>
<li><b>Join-Throttle:</b> Highest of time period wins, if equal, highest of join amount wins (so +j 3:40 beats +j 5:20 but +j 5:20 beats +j 3:20).</li>
<li>Parameterized modes in third party modules will define their own conflict resolution formula.</li>
</ul>
<h2><a name="S5_2"></a>5.2 JOIN - Channel Join (TOKEN: C)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> C <i>#channel</i></tt></p>
<p>Indicates a user has joined a channel. Only one channel is sent this way, and the key is not sent even if the user gave one one joining. If the channel parameter is the special "0" case, the server must interpret the message as a PART for all channels the user is on.</p>
<h2><a name="S5_3"></a>5.3 PART - Channel Part (TOKEN: D)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> D <i>#channel</i>[ :<i>reason</i></tt>]</p>
<p>Indicates a user has left a channel. Only one channel is sent this way. The reason parameter may be left out if no reason was given.</p>
<h2><a name="S5_4"></a>5.4 KICK - Channel Kick (TOKEN: H)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> H <i>#channel</i> <i>user</i> :<i>reason</i></tt></p>
<p>Orders the forced removal of user from #channel with the given reason. When updating state for this command, it should be the same as if :user PART #channel had been received - the user is removed from #channel's memberlist.</p>
<h2><a name="S5_5"></a>5.5 MODE - Channel Mode (TOKEN: G)</h2>
<p><b>Note:</b> This is the same command as that used for usermode changes.</p>
<p><b>Syntax:</b> <tt>:<i>source</i> G <i>#channel</i> <i>modechange</i> <i>modeparams</i>[ <i>timestamp</i>]</tt></p>
<p>Changes the specified modes on the given channel. If the source is a server and the last parameter is numeric, it is interpreted as timestamp (although it can also be consumed as a parameter for modes. For example: :server.name MODE #channel +l 4 &lt;-- 4 will be a timestamp and the +l parameter). When a mode change is timestamped in this way, the mode is treated as it is with SJOIN: the MODE message is ignored if the timestamp is greater than the channel timestamp. (If the timestamp is equal, the mode is simply added replacing any conflicting modes already in place.)</p>
<p>A services implementation can easily clear all entries in a list mode such as bans with SVSMODE (see below).</p>
<h2><a name="S5_6"></a>5.6 INVITE - Invite a user to a channel (TOKEN: *)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> * <i>target</i> <i>#channel</i></tt></p>
<p>Sends to target an invitation to join #channel. If the source is a channel operator on #channel, or a U:Lined server, the invitation grants the user the temporary ability to join the channel regardless of any bans or some restricting channel modes (not +O or +A).</p>
<h2><a name="S5_7"></a>5.7 SAJOIN - Channel Force Join (TOKEN: AX)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> AX <i>targetuser</i> <i>#channel</i></tt></p>
<p>This requests the forced join of targetuser to #channel. This type of forced join overrides bans, and most modes. The server to which targetuser is connected to must actually acknowledge the join for it to occur. Service implementations may ignore this command, as they would only ever receive it if an SAJOIN was targeted at a service client, in which case it should be ignored...</p>
<h2><a name="S5_8"></a>5.8 SAPART - Channel Force Part (TOKEN: AY)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> AY <i>targetuser</i> <i>#channel</i>[ :<i>reason</i>]</tt></p>
<p>This requests the forced part of targetuser from #channel. This is slightly different from a KICK in that the user's removal is announced with PART. The server to which targetuser is connected to must actually acknowledge the part for it to occur. Service implementations may ignore this command, as they would only ever receive it if an SAPART was targeted at a service client, in which case it should be ignored...</p>
<p>The reason field is optional. If provided the acknowledging PART message should prefix the message with &quot;SAPart:&quot;.</p>
<h2><a name="S5_9"></a>5.9 SAMODE - Channel Force Mode (TOKEN: o)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> o <i>#channel</i> <i>modechange</i> <i>modeparams</i></tt></p>
<p>This has the same parameters as for MODE. The only difference is that servers probably will never receive this (but is best to document just in case), and that absolutely NO permission checking is done on anything.</p>
<h2><a name="S5_10"></a>5.10 TOPIC - Channel Topic (TOKEN: ) )</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> ) <i>#channel</i> <i>nick</i> <i>timestamp</i> :<i>topic</i></tt></p>
<p>Changes the channel topic information. This format is used when synching, as well as when a topic is changed normally. Nick is the user who changed the topic (depending on compile options, it can be just nick or a full nick!user@host), timestamp is when the change occured, and topic is the new topic text. Normally, only a newer timestamp will actually change the topic, but a U:Lined server can use an older timestamp as well (such as for TOPICLOCK).
<hr/>
<h1><a name="S6"></a>6 Services Commands</h1>
<p>These are commands typically employed by a service implementation, in addition to some of the normal commands. All of the commands listed here require the sender to be correctly U:Lined. This means that the services server name must appear within a ulines {} block in the unrealircd.conf configuration for ALL servers in the network. All servers and clients behind a U:Lined server are themselves U:Lined.</p>
<h2><a name="S6_1"></a>6.1 SVSKILL - Force Disconnect by Service (TOKEN: h)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> h <i>target</i> :<i>reason</i></tt></p>
<p>This command is similar to KILL but differs in several ways. First of all: there is no mutilation of the reason value. The reason given is the exact reason used to generate QUIT messages sent to users. Second, it is silent; no server notice is generated in response to this command. Third, it can only be used by a U:Lined server or client (such as services).</p>
<p>Because this command can be dangerous in the hands of an abusive person, service implementations should avoid granting humans control over the reason parameter. In cases of commands where a person has control over such parameter, either use a regular KILL instead, or otherwise modify the reason so that operators can be held accountable if necessary.</p>
<h2><a name="S6_2"></a>6.2 SVSMODE, SVS2MODE - Force User Mode Change (TOKEN: n or v)</h2>
<p><b>Syntax (SVSMODE):</b> <tt>:<i>source</i> n <i>target</i> +<i>usermodes</i></tt></p>
<p><b>Syntax (SVS2MODE):</b> <tt>:<i>source</i> v <i>target</i> +<i>usermodes</i></tt></p>
<p>Judging by these commands alone, you'd think they are identical. Both commands force a usermode change to occur. This is typically used by services to set +r on a user who has successfully identified. They differ in that SVS2MODE also sends the mode change to the user, while SVSMODE does not (hidden mode change).</p>
<p>SVSMODE and SVS2MODE also give special treatment to usermode +d. Rather than setting the deaf mode like you might expect, SVS(2)MODE +d allows services to change a user's services stamp (which is given in the NICK message). This could allow services to set the service stamp to an easily identifiable value that could then be used to say "hey, this person identified already". The syntax of this is: +d <i>newservicestamp</i> and can be combined with setting other usermodes as well. The deaf mode <b>can</b> be set by using +d without the service stamp parameter; however, in this case you <b>cannot</b> set the service stamp in the same SVS(2)MODE message.</p>
<p><b>Note:</b> Do <b>NOT</b> use SVSMODE to remove IRCop status from a user. Use the SVSO command for that instead.</p>
<p>Alternatively, target can name a channel. In this case, the mode change parameter can consist of a - character, followed by any or all of: b, e, I, q, a, o, h, or v. These characters cause the corresponding lists to be cleared of all entries. For example: SVSMODE #channel -b removes ALL bans from #channel, and SVSMODE #channel -qaohv turns ALL users on #channel into normal users (removes all owner, admin, op, halfop, and voice status). In this case, the uplink will acknowledge with a MODE listing the bans, etc that were removed.</p>
<p>To completely clear a channel of all modes: MODE #channel -cfijklmnprstzACGMKLNOQRSTVu (plus any added by third-party module) followed by SVSMODE #channel -beIqaohv.</p>
<h2><a name="S6_3"></a>6.3 SVSSNO, SVS2SNO - Forced SNomask Change (TOKEN: BV or BW)</h2>
<p><b>Syntax (SVSSNO):</b> <tt>:<i>source</i> BV <i>target</i> +<i>snomasks</i></tt></p>
<p><b>Syntax (SVS2SNO):</b> <tt>:<i>source</i> BW <i>target</i> +<i>snomask</i></tt></p>
<p>Changes a user's snomasks. The difference between SVSSNO and SVS2SNO is the same as with SVSMODE versus SVS2MODE. If the user is not +s, you must add it via SVSMODE +s. For example:</p>
<pre>:OperServ v someuser +s
:OperServ BW someuser +ks</pre>
<h2><a name="S6_4"></a>6.4 SVSNICK - Forced Nick Change (TOKEN: e)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> e <i>target</i> <i>newnick</i> :<i>newtimestamp</i></tt></p>
<p>Forces the specified user to change his nick to newnick and also sets the nick timestamp to newtimestamp (so, for example, services could protect identified users from a nick collision by simply setting the nick timestamp to something way less than "now" - though currently this requires actually changing the nick too). SVSNICK requires the server to which the target is connected to acknowledge the nick change. If the user specified by newnick already exists, then target will be disconnected (even if it's something like a case-change).</p>
<h2><a name="S6_5"></a>6.5 SVSJOIN - Forced Join (TOKEN: BX)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> BX <i>target</i> <i>#channel</i></tt></p>
<p>This is identical to SAJOIN with a few exceptions: 1) It is U:Line-only. 2) No opernotice on use. 3) Bans and restricting modes are respected, a prior INVITE message must be sent to cause bans to be ignored.</p>
<h2><a name="S6_6"></a>6.6 SVSPART - Forced Part (TOKEN: BT)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> BT <i>target</i> <i>#channel</i> :<i>reason</i></tt></p>
<p>Also identical to SAPART with a few exceptions: no static prefix on the optional part reason, and no global notice, and requires a U:Line. Usage recommendation of SVSPART versus KICK is the same as for SVSKILL versus KILL.</p>
<h2><a name="S6_7"></a>6.7 SVSO - Oper Permissions (TOKEN: BB)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> BB <i>target</i> <i>flagchanges</i></tt></p>
<p>This allows a service to add or remove IRCop permission flags for a user. Flagchanges is formatted similar to that of MODE with the exception that operflags are used instead of usermodes. If the change string consists only of -, then all oper permissions, usermodes, and snomasks are removed (as if the user had himself typed MODE nick -Oo).</p>
<p>If you are granting IRCop permissions to a user who is not currently an IRCop, you should follow up with an SVSMODE +o or SVSMODE +O as appropriate. For example:</p>
<pre>:OperServ BB somenick +o
:OperServ BW somenick +cefknoqsSv
:OperServ AL somenick local.oper.somethinghere.net
:OperServ v somenick +Ohs </pre>
<h2><a name="S6_8"></a>6.8 SVSNOOP - Oper Lockdown (TOKEN: f)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> f <i>(op)</i><i>server.name</i></tt></p>
<p>The (op) parameter is either a + or - indicating if NOOP mode should be activated (+) or deactivated (-). When NOOP mode is activated, all IRCops on the server are deopered (including local operators) and the /oper command is disabled. IRCop privileges can still be granted through use of SVSO. On UnrealIRCd, it is not necessary to masskill all IRCops on the nooped server, as they are deopered automatically.</p>
<h2><a name="S6_9"></a>6.9 SVSNLINE - RealName Ban (TOKEN: BR)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> BR <i>op</i> <i>reason</i> :<i>realname mask</i></tt></p>
<p>Op is either + (add) or - (remove). In the case of +, reason is a space-escaped string (all space chars are encoded as _). If -, reason is ignored.</p>
<h2><a name="S6_10"></a>6.10 SVSFLINE - File Ban (TOKEN: BC)</h2>
<p><b>Syntax (add):</b> <tt>:<i>source</i> BC + <i>filemask</i> :<i>reason</i></tt></p>
<p><b>Syntax (remove):</b> <tt>:<i>source</i> BC - <i>filemask</i></tt></p>
<p><b>Syntax (clear):</b> <tt>:<i>source</i> BC *</tt></p>
<p>Adds or removes a DCCDENY item for the specified filemask on all servers. These DCCDENYs are hard dccdenies - the /dccallow command cannot override it. The last form removes all dccdenies added via SVSFLINE.</p>
<hr/>
<h1><a name="S7"></a>7 Messaging</h1>
<p>What good is Internet Relay <b>CHAT</b> if users cannot <b>CHAT</b>? This section addresses the commands through which arbitrary user messages are sent.</p>
<h2><a name="S7_1"></a>7.1 PRIVMSG, NOTICE - Simple Message Transmission (Token: ! or B)</h2>
<p><b>PRIVMSG Syntax:</b> <tt>:<i>source</i> ! <i>target</i> :<i>message</i></tt></p>
<p><b>NOTICE Syntax:</b> <tt>:<i>source</i> B <i>target</i> :<i>message</i></tt></p>
<p>Sends a messages to the given target. The target either names a single client, or identifies a list of clients in which the message is to be sent to. The available targets include:</p>
<ul>
<li><i>nickname</i>: Names a single user to whom the message is delivered.</li>
<li><i>nickname</i>@<i>servermask</i>: Also names a single user, but the message will only be delivered if the user is connected to a server matching the specified servermask. This is typically used for sending messages to services. The target must not be changed at any point along the path it must travel for delivery, even up to the final receipt of the message by the target. This allows the target to know it has been sent a message in this way.</li>
<li>#<i>channelname</i>: Sends a message to all users on the specified channel (except when channel is a moderated auditorium (+mu), in which case the wierd +mu sending behavior goes off).</li>
<li><i>modeprefix</i>#<i>channelname</i>: Sends a message to all users on the given channel having the given status or higher. For example: + means all voices, halfops, etc.</li>
<li>$<i>servermask</i>: Sends a message to ALL users on all servers matching the specified servermask (known as a server broadcast message). The RFC requirements of having a TLD with no wildcards is not applied to U:Lined clients.</li>
</ul>
<p>Unreal does not support the #hostmask format.</p>
<h2><a name="S7_2"></a>7.2 SENDUMODE, SMO - Usermode-based Delivery (TOKEN: AP or AU)</h2>
<p><b>Syntax:</b> <tt>@<i>servernumeric</i> AU <i>umode</i> :<i>message</i></tt></p>
<p>Sends the specified message to all users with the given mode. Only one usermode may be given. This is a server-only command if you can't tell from the sender prefix :) .</p>
<p>The message will be displayed as coming from the receiving client's own server. It may be appropriate to add a &quot;*** Notice (or other leader here) -- from blah:&quot; if you wish to clarify where the message is from.</p>
<h2><a name="S7_3"></a>7.3 SENDSNO - SNomask-based Delivery (TOKEN: Ss)</h2>
<p><b>Syntax:</b> <tt>@<i>servernumeric</i> Ss <i>snomask</i> :<i>message</i></tt></p>
<p>Sends the specified message to all users with the given snomask. Only one snomask may be given. This is a server-only command if you can't tell from the sender prefix :) .</p>
<p>The message will be displayed as coming from the receiving client's own server. It may be appropriate to add a &quot;*** Notice (or other leader here) -- from blah:&quot; if you wish to clarify where the message is from.</p>
<h2><a name="S7_4"></a>7.4 CHATOPS - IRCop Chat (TOKEN: p)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> p :<i>message</i></tt></p>
<p>Sends the message to all IRCops on all servers.</p>
<h2><a name="S7_5"></a>7.5 WALLOPS - Wallop Chat (TOKEN: =)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> = :<i>message</i></tt></p>
<p>Sends the message to all users with usermode +w, whether they are ircops or not.</p>
<h2><a name="S7_6"></a>7.6 GLOBOPS - FailOp Chat (TOKEN: ])</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> ] :<i>message</i></tt></p>
<p>Send the message to all IRCops with usermode +g.</p>
<h2><a name="S7_7"></a>7.7 ADCHAT - Admin Chat (TOKEN: x)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> x :<i>message</i></tt></p>
<p>Send the message to all Server and Network Admins (usermode +A).</p>
<h2><a name="S7_8"></a>7.8 NACHAT - NetAdmin Chat (TOKEN: AC)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> AC :<i>message</i></tt></p>
<p>Send the message to all Network Admins (usermode +N).</p>
<hr/>
<h1><a name="S8"></a>8 Ban Control</h1>
<p>Sometimes, you have the misfortune of encountering a user who has no purpose but to serve as an annoyance to your server or network. These commands transmit network-wide ban information amongst each other.</p>
<h2><a name="S8_1"></a>8.1 TKL - Master Ban Control (TOKEN: BD)</h2>
<p>The TKL command seems to have one oddity about it: the real ban source is included in the TKL command rather than in the sender prefix. Most likely this is done for synching reasons (so that the *line ban can be credited to the proper person even if he/she is offline). For this reason, the command syntax is given without any sender prefix at all. It is still permissible to use one, however.</p>
<h3><a name="S8_1_1"></a>8.1.1 GLINE - Network-wide user@host ban</h3>
<p><b>Add Syntax (TKL):</b> <tt>BD + G <i>userpart</i> <i>hostpart</i> <i>source</i> <i>expiretimestamp</i> <i>settimestamp</i> :<i>reason</i></tt></p>
<p><b>Remove Syntax (TKL):</b> <tt>BD - G <i>userpart</i> <i>hostpart</i> <i>source</i></tt></p>
<p>Adds and Removes Network-wide user@host bans, known as G:Lines. The GLINE command itself must not be used. The userpart and hostpart are the user portion and hostname portion of the ban mask. The expiretimestamp is 0 if the G:Line should not expire, otherwise it will expire at the given time. It is an absolute time, not relative, thus it's imperitive to have reasonably synchrnoized clocks or bans may be removed too early or even immediately!</p>
<h3><a name="S8_1_2"></a>8.1.2 GZLINE - Network-wide IP ban</h3>
<p><b>Add Syntax (TKL):</b> <tt>BD + Z * <i>ipmask</i> <i>source</i> <i>expiretimestamp</i> <i>settimestamp</i> :<i>reason</i></tt></p>
<p><b>Remove Syntax (TKL):</b> <tt>BD - Z * <i>ipmask</i> <i>source</i></tt></p>
<p>Adds and Removes Network-wide IP bans, known as Global Z:Lines. The GZLINE command itself must not be used. Ipmask permits CIDR notation as well as wildcard masks.</p>
<h3><a name="S8_1_3"></a>8.1.3 SQLINE, UNSQLINE - Network-wide Nickname ban (TOKEN: c or d)</h3>
<p><b>Add Syntax (TKL):</b> <tt>BD + Q <i>hold</i> <i>nickmask</i> <i>source</i> <i>expiretimestamp</i> <i>settimestamp</i> :<i>reason</i></tt></p>
<p><b>Add Syntax (SQLINE):</b> <tt>:<i>source</i> c <i>nickmask</i> :<i>reason</i></tt></p>
<p><b>Remove Syntax (TKL):</b> <tt>BD - Q <i>hold</i> <i>nickmask</i> <i>source</i></tt></p>
<p><b>Remove Syntax (UNSQLINE):</b> <tt>:<i>source</i> d <i>nickmask</i></tt></p>
<p>In the TKL syntax, the hold parameter is either a * to mark the qline as a nick ban, or an H to mark it as a services hold. A services hold does not trigger qline rejection notice, and is typically used by NickServ to reserve registered nicks until they are released by the owner. The (UN)SQLINE syntax can only be used by a server, but any user can be used as the source for the TKL syntax. Unlike G and GZ lines, Q:Lines do not cause existing matching users to be disconnected or otherwise affected.</p>
<p>The TKL syntax is preferred, since it is more flexible, but (UN)SQLINE is permitted for compatibility.</p>
<h3><a name="S8_1_4"></a>8.1.4 SPAMFILTER - Message Spam Filtration System</h3>
<p>Proper use of spamfilter in TKL commands requires use of PROTOCTL TKLEXT, which increases the number of parameters allowed in TKL.</p>
<p><b>Add Syntax (TKL):</b> <tt>BD + F <i>target(s)</i> <i>action</i> <i>source</i> 0 <i>settimestamp</i> <i>tklduration</i> <i>tklreason</i> :<i>regex</i></tt></p>
<p><b>Remove Syntax (TKL):</b> <tt>BD - F <i>target(s)</i> <i>action</i> <i>source</i> 0 <i>settimestap</i> :<i>regex</i></tt></p>
<p>Adds and Removes network-wide spamfilters. The SPAMFILTER command itself must not be used. See <a href="http://vulnscan.org/UnrealIrcd/unreal32docs.html#feature_spamfilter">http://vulnscan.org/UnrealIrcd/unreal32docs.html#feature_spamfilter</a> for a list of valid targets. For actions, a single character is used to identify the action to be taken:</p>
<ul>
<li>K (kill) - The user is simply disconnected, with the reason given.</li>
<li>S (tempshun) - A temporary shun is placed on the user. This shun is applied only to that user, and disappears if the user reconnects.</li>
<li>s (shun) - A regular shun on the user's IP address is added. This causes all users with the same hostname to be shunned, but they will also stay shunned if they reconnect.</li>
<li>k (kline) - A K:Line is added on the user's IP address.</li>
<li>z (zline) - A Z:Line is added on the user's IP address.</li>
<li>g (gline) - A G:Line is added on the user's IP address.</li>
<li>Z (gzline) - A Global Z:Line is added on the user's IP address.</li>
<li>b (block) - Messages (or users!) matching the filter are simply blocked.</li>
<li>d (dccblock) - The user is prevented from sending files using DCC for the remainder of his session (in other words, until he quits).</li>
<li>v (viruschan) - User is removed from all channels, joined to the viruschan as defined in conf, and cannot message anything but that channel.</li>
<li>w (warn) - No action on the user is taken. Only the Spamfilter notice is sent to opers with snomask +S.</li>
</ul>
<h1><a name="S9">9 Base64 Tables</a></h1>
<p>Unreal uses base64 encoding to allow saving bandwidth by encoding numbers in a more compact format. Unreal uses two different variations of base64, one used for the SJB64 PROTOCTL option (in NICK and SJOIN), and one used for NICKIP.</p>
<h2><a name="S9_1">9.1 Table for SJB64 (NICK and SJOIN).</a></h2>
<p>In NICK and SJOIN, remember that the timestamp will be prefixed with ! to signal a base64 timestamp.</p>
<p>Just like in base10, the least significant &quot;digit&quot; is last.</p>
<pre> 0 0 17 H 34 Y 51 p
1 1 18 I 35 Z 52 q
2 2 19 J 36 a 53 r
3 3 20 K 37 b 54 s
4 4 21 L 38 c 55 t
5 5 22 M 39 d 56 u
6 6 23 N 40 e 57 v
7 7 24 O 41 f 58 w
8 8 25 P 42 g 59 x
9 9 26 Q 43 h 60 y
10 A 27 R 44 i 61 z
11 B 28 S 45 j 62 {
12 C 29 T 46 k 63 }
13 D 30 U 47 l
14 E 31 V 48 m
15 F 32 W 49 n
16 G 33 X 50 o</pre>
<h2><a name="S9_2">9.2 Table for NICKIP.</a></h2>
<p>In this table, the IP is encoded in network byte order. In terms of IPs, this means the first byte of the address really is first. Each &quot;digit&quot; in the base64 encoded IP corresponds to 6 bits of the IP address.</p>
<p>An IPv4 address is 32 bits, so 6 base64 &quot;digits&quot; are needed. Since base64 requires values to come in multiples of 4 &quot;digits&quot;, padding characters (=) need to be added if a value comes up short. In the case of IPv4 addresses, two are needed.</p>
<p>IPv6 addresses are 128-bit. They therefore need 22 base64 &quot;digits&quot; plus 2 pad characters.</p>
<pre> 0 A 17 R 34 i 51 z
1 B 18 S 35 j 52 0
2 C 19 T 36 k 53 1
3 D 20 U 37 l 54 2
4 E 21 V 38 m 55 3
5 F 22 W 39 n 56 4
6 G 23 X 40 o 57 5
7 H 24 Y 41 p 58 6
8 I 25 Z 42 q 59 7
9 J 26 a 43 r 60 8
10 K 27 b 44 s 61 9
11 L 28 c 45 t 62 +
12 M 29 d 46 u 63 /
13 N 30 e 47 v
14 O 31 f 48 w (pad) =
15 P 32 g 49 x
16 Q 33 h 50 y</pre>
</body>
</html>
+2
View File
@@ -0,0 +1,2 @@
All server protocol documentation has been moved to the wiki:
https://www.unrealircd.org/docs/Server_protocol
-109
View File
@@ -1,109 +0,0 @@
Token List (c) 2002-2004 codemastr (Dominick Meglio) [codemastr@unrealircd.com]
Command Token
------------------------------------------------------------------------------------------------
PRIVMSG !
WHOIS #
NICK &
SERVER '
TOPIC )
INVITE *
VERSION +
QUIT ,
SQUIT -
KILL .
INFO /
LINKS 0
STATS 2
HELP 4
ERROR 5
AWAY 6
CONNECT 7
PING 8
PONG 9
PASS <
TIME >
ADMIN @
SETHOST AA
NACHAT AC
SETIDENT AD
SETNAME AE
LAG AF
SDESC AG
KNOCK AI
CREDITS AJ
LICENSE AK
CHGHOST AL
RPING AM
RPONG AN
NETINFO AO
SENDUMODE AP
ADDMOTD AQ
ADDOMOTD AR
SVSMOTD AS
SMO AU
OPERMOTD AV
TSCTL AW
SAJOIN AX
SAPART AY
CHGIDENT AZ
NOTICE B
SWHOIS BA
SVSO BB
SVSFLINE BC
TKL BD
VHOST BE
BOTMOTD BF
HTM BH
DCCDENY BI
UNDCCDENY BJ
CHGNAME BK
SHUN BL
CYCLE BP
MODULE BQ
SVSNLINE BR
SVSPART BT
SVSLUSERS BU
SVSSNO BV
SVS2SNO BW
SVSJOIN BX
SVSSILENCE Bs
SVSWATCH Bw
JOIN C
PART D
LUSERS E
EOS ES
MOTD F
MODE G
KICK H
REHASH O
RESTART P
CLOSE Q
SENDSNO Ss
DNS T
TEMPSHUN Tz
SILENCE U
AKILL V
UNKLINE X
RAKILL Y
GLOBOPS ]
LOCOPS ^
PROTOCTL _
WATCH `
TRACE b
SQLINE c
UNSQLINE d
SVSNICK e
SVSNOOP f
SVSKILL h
SVSMODE n
SAMODE o
CHATOPS p
UNZLINE r
RULES t
MAP u
SVS2MODE v
DALINFO w
ADMINCHAT x
UMODE2 |
SJOIN ~
-37
View File
@@ -1,37 +0,0 @@
VL Information (c) 2002 codemastr (Dominick Meglio) [codemastr@unrealircd.com]
Protocol Version
------------------------------------------------------------------------------------------------
2309 3.2.6, 3.2.7, 3.2.8
2308 3.2.5
2307 3.2.4
2306 3.2.3
2305 3.2.2
2304 3.2.1
2303 3.2-beta*, 3.2-RC*, 3.2
2302 3.1.1-Darkshades, 3.1.2-Darkshades, 3.1.3-Komara, 3.1.4-Meadows
2301 3.1-Silverheart
2300 3.0-Morrigana
Flag Description
------------------------------------------------------------------------------------------------
c Server is chrooted
C command line config enabled
D Server is in debugmode
F Using file descriptor lists
h Compiled as a hub
i Shows invisible users in /trace
n NOSPOOF enabled
V Uses valloc()
W Windows version
Y Syslog logging enabled
K No ident checking (?)
6 IPv6 supported
X STRIPBADWORDS enabled (chmode/umode +G)
P Uses poll()
e SSL supported
O OperOverride enabled
o OperOverride without verify
Z Zip links supported
3 3rd party modules (were) loaded or unreal is any other way 'tainted' (eg: bad libs)
E Extended channel modes supported
+19 -38
View File
@@ -1,45 +1,26 @@
==[ Translations ]============================================================
==[ Translations ]===========================================================
Starting with the release of Unreal 3.2 we have begun accepting translated
documentation files. For now, only translations of unreal32docs.html and
example.conf are accepted. Other stuff might be translated later, but
this will probably be postponed to 3.3 (numerics/ircd text/help.conf/etc).
In UnrealIRCd 4 we support the following translations:
* on-line documentation at https://www.unrealircd.org/docs/ (wiki!)
* help.conf
* example.conf
There a few requirements however:
- When you submit your translation it should be a translation of the
very latest doc... So be sure to translate the cvs version of
unreal32docs.html (www.vulnscan.org/UnrealIrcd/unreal32docs.html).
- Of course the translation should be correct.. So also 'technically',
it's therefore recommended that have some real experience with Unreal ;)
- If you are accepted and start working on it, it would be nice if you
could put your docs-in-progress online somewhere so we can see how
progress is going a bit.
- You should use a proper HTML editor, this especially excludes Microsoft
Word and Frontpage since it enlarges the .html file by (at least) 30%.
Don't worry, there are enough free&simple html editors out there that
work perfectly fine, you won't need to be an HTML expert at all!
- Someone, usually the person who translated it, needs to be willing
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.
Translators will receive once a week (and right before every release)
all changes that were made in unreal32docs.html. Then the translator
should update his/her doc and send it in (or commit it via cvs).
Count on an average of 15 minutes a week (it varies).
Now, we should tell you that the first-time translation of unreal32docs.html
is a LOT of work.. probably 20 hours or so. After that, the weekly updates
take really just 5, 10, 15 minutes a week, which is pretty much "no time".
Now why would you translate at all? Well, by translating UnrealIRCd
documentation you will help out your fellow citizens and/or other people
of that language, you will make Unreal a bit more 'internationalized',
and it's a worthwile contribution to the UnrealIRCd project.
Upon successful completion you will also receive an @unrealircd.org
forwarder email address, and of course your name will be in the docs.
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
coders@lists.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.
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.
==============================================================================
=============================================================================
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
View File
Binary file not shown.
+58
View File
@@ -0,0 +1,58 @@
#!/bin/bash
# Exit on any failure:
set -e
# Verbose:
set -x
if [ "$1" != "" ]; then
BUILDCONFIG="$*"
fi
export MAKE="make -j3"
export CPPFLAGS="-DFAKELAG_CONFIGURABLE"
extras/build-tests/nix/select-config $BUILDCONFIG
# Read config.settings, this makes a couple of variables available to us.
. ./config.settings
if [ "$SSLDIR" != "" ]; then
# In case we build local openssl/libressl
export LD_LIBRARY_PATH="$SSLDIR/lib"
fi
./Config -quick || (tail -n 5000 config.log; echo '*** now tre:'; tail -n 5000 extras/tre-0.8.0-git/config.log; echo '** end of tre config.log **'; exit 1)
$MAKE
yes ''|make pem
make install
set +x
echo ""
echo "***********************************************"
echo "UnrealIRCd build & install successful."
echo "***********************************************"
if [[ "$OSTYPE" == "darwin"* ]]; then
otool -L ~/unrealircd/bin/unrealircd
else
ldd ~/unrealircd/bin/unrealircd
fi
if [ "$BUILDCONFIG" = "local-curl" ]; then
# We broke the system significantly earlier that build tests
# won't work (eg: 'git' is uninstallable). Don't bother
# running the tests. I don't expect a 'local-curl' specific
# bug anyway.
exit 0
fi
if [[ "$OSTYPE" == "darwin"* ]]; then
# 'rake' doesn't work. have to figure that one out..
echo "Not running test on OS X for now"
exit 0
fi
echo ""
echo ""
#echo "Now running UnrealIRCd test framework..."
#set -x
#extras/build-tests/nix/run-tests
+29
View File
@@ -0,0 +1,29 @@
#
BASEPATH=$HOME/unrealircd
BINDIR=$HOME/unrealircd/bin
DATADIR=$HOME/unrealircd/data
CONFDIR=$HOME/unrealircd/conf
MODULESDIR=$HOME/unrealircd/modules
LOGDIR=$HOME/unrealircd/logs
CACHEDIR=$HOME/unrealircd/cache
DOCDIR=$HOME/unrealircd/doc
TMPDIR=$HOME/unrealircd/tmp
LIBDIR=$HOME/unrealircd/lib
PREFIXAQ="1"
MAXSENDQLENGTH="3000000"
MAXCONNECTIONS="1024"
NICKNAMEHISTORYLENGTH="2000"
DEFPERM="0600"
SSLDIR=""
REMOTEINC=""
CURLDIR=""
SHOWLISTMODES="1"
TOPICNICKISNUH=""
SHUNNOTICES=""
NOOPEROVERRIDE=""
DISABLEUSERMOD=""
OPEROVERRIDEVERIFY=""
DISABLEEXTBANSTACKING=""
GENCERTIFICATE="0"
#EXTRAPARA="--enable-werror"
ADVANCED=""
+64
View File
@@ -0,0 +1,64 @@
#!/bin/bash
#
# This script fires up a two-server IRC network and runs the test framework
#
# Exit on error:
set -e
# Verbose:
set -x
# Install packages
if [[ "$OSTYPE" == "darwin"* ]]; then
brew install git || true
brew install python || true
gem install bundler || true
gem install rake || true
gem install rspec || true
else
sudo apt-get install git python rake -y
gem install bundler -v "~>1.0"
fi
# Install 'ircfly'
git clone -q https://github.com/unrealircd/ircfly.git
cd ircfly
bundle install
bundle exec rake build
if [[ "$OSTYPE" == "darwin"* ]]; then
bundle exec rake install
else
sudo rake install
fi
cd ..
# Install 'cipherscan'
git clone -q https://github.com/mozilla/cipherscan
# Install 'unrealircd-tests-old'
git clone -q https://github.com/unrealircd/unrealircd-tests-old.git
cd unrealircd-tests-old
bundle install
mv config.yaml.example config.yaml
# Start the IRC servers
cp ircdconfig/* ~/unrealircd/conf/
cd ~/unrealircd
bin/unrealircd -f hub.conf
bin/unrealircd -f irc1.conf
bin/unrealircd -f irc2.conf
cd -
# Do cipherscan test
sleep 2
cd ../extras/tests/tls
./tls-tests
cd -
# Back in unrealircd-tests-old, run the tests!
if [[ "$OSTYPE" == "darwin"* ]]; then
bundle exec rake
else
rake
fi

Some files were not shown because too many files have changed in this diff Show More