1
0
mirror of https://github.com/unrealircd/unrealircd.git synced 2026-06-28 05:16:38 +02:00
Commit Graph

2526 Commits

Author SHA1 Message Date
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 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 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
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 97eff14af2 - Made the windows installer better compress things (SolidCompression=true), suggested
by Trocotronic (#0002877).
2006-04-10 14:06:45 +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
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 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
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
Bram Matthys 996381ec47 - Fixed possible netsplit problem (#0002790). 2006-03-05 23:35:48 +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 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
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 6623b10a16 socket.h? 2006-02-16 16:30:22 +00:00
Bram Matthys 13f99d6bc1 inet.h! 2006-02-16 16:24:50 +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 22921c1b1f - Fixed win32 compile problem due to CGI:IRC support (?) 2006-02-15 11:26:47 +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 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 fa9cf506e7 - The '?' wildcard was completely broken in 3.2.4, reported by tabrisnet (#0002797). 2006-02-05 17:20: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 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
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
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
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 8b42fad320 ** public 3.2.4-rc1 release ** 2006-01-25 20:25:37 +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 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