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

160 Commits

Author SHA1 Message Date
Bram Matthys 75efe02040 And add config check for X509_get0_notAfter().
For our Ubuntu 16 friends.
2020-10-11 15:56:06 +02:00
Bram Matthys b3510c5da8 Fix for previous commit with OpenSSL <1.1.0 (Debian 8, Ubuntu 16, ..)
Thank you BuildBot.

This means on older OpenSSL's we are not going to have certificate
expiry checks. Those OpenSSL versions were deprecated by the OpenSSL
team itself, so yeah then you will miss out a few things.
2020-10-11 15:39:27 +02:00
Bram Matthys f419a61f94 Ubuntu 20.04 needs this change in order to still allow you to enable
TLSv1.0 or TLSv1.1. Otherwise it is impossible to enable by the application.

We are still going to turn off TLSv1.0 and TLSv1.1 by the end of this year
by default. Ubuntu 20.04 is just a couple of months too early. See also
the various browsers who postponed disabling TLSv1.0/TLSv1.1.

Also, regardless of the above, we want the admins running the IRC server
be able to control this and not having such a breaking change be dependant
on some distro default settings.
2020-04-18 12:40:45 +02:00
i 876758b73e Fix Custom OpenSSL binary path was ignored. 2019-07-11 14:20:01 +03:00
i a601f565e1 Do not override all libs. 2019-07-11 03:06:28 +03:00
i 4feba3edd5 Check whether linking with OpenSSL functions requires -ldl or -lpthread or both 2019-07-11 02:33:11 +03:00
Bram Matthys 79bd78c0f3 Make it so UnrealIRCd has full control over the SSL/TLS versions in use
and not just the operating system.
This makes us use SSL_CTX_set_min_proto_version(), which unfortunately is
a less fine-grained control for disabling specific SSL/TLS versions.
However, after that we use SSL_CTX_set_options with SSL_OP_NO_xxx.
The latter is deprecated though. Will revisit this change before U5 release..
2019-07-07 10:22:29 +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 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 c342b432d1 OpenSSL detection: also check /usr/local/opt/openssl 2018-04-22 20:01:50 +02: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 eabf436c2a Use has_system_cares (=reliable result) rather than with_system_cares (=merely requested). 2016-10-21 18:13:04 +02:00
Bram Matthys 8859cca6b2 Remove old cares/curl hack. 2016-10-21 17:51:08 +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 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 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 547b2d69d0 Build with PCRE2 (not used yet). Enhance SSL build error (may need more fixing). 2015-05-31 21:47:11 +02:00
William Pitcock c41ca43145 - Remove ziplinks support, patch from FalconKirtaran. (#4189) 2013-05-16 06:36:13 +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 1157b77e5e Add .hgignore, removing replaced .cvsignore files. 2011-07-13 13:11:57 -04: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
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
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
binki b2e4cf82f8 - Support compiling with a bundled c-ares again, the hacky way. (#3931) 2010-07-16 13:14:44 +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
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
binki 2828e7f8b2 - Rename configure.in to configure.ac and modernize AC_INIT. 2010-06-19 03:22:51 +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
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 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 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 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
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 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
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 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 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 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 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
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
Bram Matthys 545c641fe8 - c-ares resolver: upgrade to 1.3.2. 2006-11-25 19:39:39 +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