summaryrefslogtreecommitdiff
path: root/chat/unrealircd
diff options
context:
space:
mode:
authorrodent <rodent>2013-07-14 15:42:34 +0000
committerrodent <rodent>2013-07-14 15:42:34 +0000
commit66f062f67d8ece6591fe197772cbdd03cb952dba (patch)
treeb27cf428b9abfabde9115cd402861b4b0e607631 /chat/unrealircd
parent7ef11643baec7dc715f66d217e6b5a42b56ee7da (diff)
downloadpkgsrc-66f062f67d8ece6591fe197772cbdd03cb952dba.tar.gz
Update to latest release, 3.2.10.1. LICENSE=gnu-gpl-v2; USE_TOOLS+=gunzip;
WRKSRC is now handled automatically. Let options.mk include bsd.prefs.mk instead of pulling it in again in Makefile. CONFIGURE_ARGS for hub and leaf no longer exist. Removed from PKG_OPTIONS. Specifying hostname in CONFIGURE_ARGS is also no longer available. Removed. ${IRCD_SHARE}/networks files are no longer provided. Removing from post-install and PLIST. From Changes: - Fix compilation issue when disabling stacked extbans. https://bugs.gentoo.org/389949 - Fix compilation issues with bundled tre and ./curlinstall-ed curl caused by over-generic regexes. Reported by warg. - Include CMDS=STARTTLS in ISUPPORT/numeric 005 to let clients discover STARTTLS support through VERSION, before or after registration (#4064). - Added patch from nenotopia to use more modern LUSERS numerics (#3967). - Fix small error in oper block documentation, reported by Stealth (#2318). - Config parser failed to check for invalid set::ssl options, reported and patch by fbi (#4035). - Tweak: send actual channel name and not user supplied channel in KICK, reported and patch by Stealth (#3298). - Services coders: Added support for ESVID. Instead of a number you can now store a string (of max NICKLEN size) as service stamp. - Show account name in /WHOIS, for ESVID-capable services packages, patch from nenotopia (#3966). - 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). - Updated extended ban documentation in help.conf and unreal32docs: new bantype ~a, and some text about extended bans & invex (+I). - compile fix for just-checked-in patches. - extban ~a = also allowed for invex - 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). - Enforce matching of unrealircd version and PACKAGE_VERSION macros (#4014). - 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. - Fix misuse of stdarg.h macros when calling vsyslog() (#4065 by Jimini). - Ditch vsyslog() as it's only a waste of CPU, inspired by #4065. - Add CAP support. Currently implemented are: multi-prefix (NAMESX), and userhost-in-names (UHNAMES). Patch from nenotopia (#4018, #4066) - Fix issue with CAP & NOSPOOF. Patch from nenolod (#4077). - Advertise 'tls' (STARTTLS) capability in CAP. Patch from nenolod (#4081). - New user mode +I (IRCOp only) which hides idle times to other users, suggested and patch supplied by Nath & binki (#3953). - Added remove_oper_modes(), which works just like remove_oper_snomasks(), - Get rid of networks/ directory, and all references to it. Suggested by katsklaw and others (#4056). - Added doc/example.es.conf, translated by Severus_Snape. - Make the accept code check if the fd is within bounds instead of relying on OpenFiles to be correct. - Moved nospoof to config file, suggested by and patch from nenolod (#4078). - 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). - Added patch from Adam for poll() support (#1245). update my own fd check code for poll support - Some more changes and fixes regarding poll patch: - make c-ares use 100% poll. and make sure we never deal with negative fds. - UnrealIRCd now supports poll() instead of select(). - 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. - Call m_cap_Init() when m_cap is loaded through commands.so. Reported by nenolod. - Fix for speed optimization a few lines up, was accidentally using ident username (which might have been 'unknown') instead of effective username. - Added support for SASL, patch from nenolod (#4079). - Fix crash in AUTHENTICATE (SASL commit from an hour or so ago). - Tweak SASL code to conform to current coding style. - Split up PROTOCTL line, since with the addition of ESVID we exceeded MAXPARA when using ZIP links. - 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. - Fix win32 installer: apparently it sometimes complained about not having - the Visual C++ 2008 redistributable package installed when this was not true. - Fix Windows build. - Win32 compile fix (nenolod) - 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. - Remove old no-stealth configuration directive from documentation, reported by katsklaw, patch from warg (#4036). - Added 'away-notify' client capability, which informs the client of any AWAY state changes of users on the same channel. Patch from nenolod (#4097). - Add support for account-notify client capability (#4098). This capability can be used to request passive notifications for accountname changes. - If set::options::dont-resolve is enabled, then use only the IP information from a WEBIRC message, reported by Ismat (#4103). - Moved sendto_connectnotice, and thus the call to HOOKTYPE_LOCAL_CONNECT, so it gets called after the broadcast of NICK to other servers. - 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. - 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) - complete the previous patch (MLOCK).. mostly just bringing it up to date & code-style - Fixed another SASL crash bug. Always use HookAddEx, not HookAdd! Crash occured after the first quit of a user after a REHASH. - SASL now needs to be enabled explicitly by setting a set::sasl-server. - Changed numeric 307 (RPL_WHOISREGNICK) to 'is identified for this nick', - Win32 installer (SSL): Uncheck 'create certificate' checkbox when server.cert.pem exists, and check it if the file doesn't exist. - Win32 installer: Latest InnoSetup no longer supports Windows 95/98, so update Minversion to make the .iss compile. - Module coders: added HOOKTYPE_AWAY (sptr, away-reason). - Add optional oper::require-modes setting to the oper block. (#4008 by katsklaw) - 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). - Add /SILENCE to HTML documentation (reported by Severus_Snape in #4072, patch from warg). - Show "Ping timeout: XYZ seconds" instead of just "Ping timeout". - a bigger scratch buffer makes me sleep at night ;) - 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. - Added missing Mod_Header to m_sasl.c - Remove old reference to networks/ directory from Windows installer - Disable sending of UHNAMES when HTM (High Traffic Mode) is ON, - Disable sending of UHNAMES when HTM (High Traffic Mode) is ON, - Add 'class' option to allow/deny channel so you can allow/deny users based on their class. Patch from fspijkerman (#4125). - Use poll() in the remote includes functions when USE_POLL is defined (#4091). - Fix bug where recursive includes would hang the IRCd, patch from binki with some minor modifications, reported by warg (#3919). - Upgraded to c-ares 1.9.1. Updated configure & other files. - 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. - Added set::options::disable-cap, which can be used to disable the new CAP support (#4104). - 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). - Windows: fix MOTD file always showing a date of 1/1/1970, reported by maxarturo (#4102). - 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). - Remove wircd.def, needs to be re-generated almost each build anyway.. - Use our own (v)snprintf if not available. - Use a more robust method of learning the server origin for a SASL agent. - Use a more robust method of learning the server origin for a SASL agent. Fixes crash reported by Adam. - Import unreal32docs Spanish translation by Karim Benzema. - 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. - Update ./createchangelog to make it only show changes on default branch. - If you are running the IRCd as root and use IRC_USER/IRC_GROUP then we now change ownership of the log file to that user/group so it can still write after the setuid(). Reported by asmadeus (#4152). - Fix duplicate user@host in away-notify and account-notify, reported by grawity (#4153). - '/rehash -global' did often not rehash all servers. Reported by Cronus (#4143) - allow channel: Permit multiple channel items in one block again, was broken by patch from #4125. - 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). - Don't remove oper-modes such as +S from non-local clients. - Pull in poll(2) stuff before any other ircd include files. (#4155) - 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). - Custom modules: move EXLIBS= so shared libraries are always linked.
Diffstat (limited to 'chat/unrealircd')
-rw-r--r--chat/unrealircd/Makefile26
-rw-r--r--chat/unrealircd/PLIST42
-rw-r--r--chat/unrealircd/distinfo8
-rw-r--r--chat/unrealircd/options.mk28
4 files changed, 23 insertions, 81 deletions
diff --git a/chat/unrealircd/Makefile b/chat/unrealircd/Makefile
index 1bc4d9834b6..a22b5a7c2d6 100644
--- a/chat/unrealircd/Makefile
+++ b/chat/unrealircd/Makefile
@@ -1,25 +1,23 @@
-# $NetBSD: Makefile,v 1.37 2013/07/12 10:44:53 jperkin Exp $
+# $NetBSD: Makefile,v 1.38 2013/07/14 15:42:34 rodent Exp $
-DISTNAME= Unreal3.2.9
-PKGNAME= unrealircd-3.2.9
-PKGREVISION= 3
+DISTNAME= Unreal3.2.10.1
+PKGNAME= ${DISTNAME:tl:S/l/lircd-/1}
CATEGORIES= chat
MASTER_SITES= http://unrealircd.com/downloads/
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= http://www.unrealircd.com/
COMMENT= Advanced IRC server with IPv6 and SSL support
+LICENSE= gnu-gpl-v2
CONFLICTS+= ircu-[0-9]*
GNU_CONFIGURE= YES
-USE_TOOLS+= pkg-config gmake
+USE_TOOLS+= gmake gunzip pkg-config
CHECK_PORTABILITY_SKIP= update
-WRKSRC= ${WRKDIR}/Unreal3.2
-
-.include "../../mk/bsd.prefs.mk"
+.include "options.mk"
CONFIGURE_ARGS+= --with-system-cares
CONFIGURE_ARGS+= --with-system-tre
@@ -28,15 +26,11 @@ CONFIGURE_ARGS+= --with-dpath=${UIRCD_HOME:Q}
CONFIGURE_ARGS+= --with-spath=${PREFIX:Q}/sbin/ircd
CONFIGURE_ARGS+= --with-permissions=0660
-CONFIGURE_ARGS+= --with-hostname=${UIRCD_HOST:Q}
CONFIGURE_ARGS+= --with-listen=${UIRCD_LISTEN:Q}
CONFIGURE_ARGS+= --with-sendq=${UIRCD_SENDQ:Q}
CONFIGURE_ARGS+= --with-bufferpool=${UIRCD_BUFFER:Q}
CONFIGURE_ARGS+= --with-fd-setsize=${UIRCD_FDSIZE:Q}
CONFIGURE_ARGS+= --with-nick-history=${UIRCD_NICKHIST:Q}
-CONFIGURE_ARGS+= --disable-inet6
-
-.include "options.mk"
IRCD_DOCS= ${PREFIX:Q}/share/doc/unrealircd
IRCD_SHARE= ${PREFIX:Q}/share/unrealircd
@@ -103,7 +97,7 @@ OWN_DIRS_PERMS+= ${UIRCD_HOME:Q} ${UIRCD_USER:Q} ${UIRCD_GROUP:Q} 0770
OWN_DIRS_PERMS+= ${UIRCD_HOME:Q}/tmp ${UIRCD_USER:Q} \
${UIRCD_GROUP:Q} 0770
INSTALLATION_DIRS= sbin ${IRCD_DOCS} ${IRCD_EG} ${IRCD_SHARE}/aliases \
- ${IRCD_SHARE}/modules ${IRCD_SHARE}/networks
+ ${IRCD_SHARE}/modules
.if ${OPSYS} == "Darwin"
INSTALL_UNSTRIPPED=YES
@@ -123,12 +117,6 @@ post-build:
do-install:
${INSTALL_PROGRAM} ${WRKSRC:Q}/src/ircd ${DESTDIR}${PREFIX}/sbin
- ${INSTALL_DATA} ${WRKSRC:Q}/networks/*.network \
- ${DESTDIR}${IRCD_SHARE:Q}/networks
- ${INSTALL_DATA} ${WRKSRC:Q}/networks/networks.ndx \
- ${DESTDIR}${IRCD_SHARE:Q}/networks
- ${INSTALL_SCRIPT} ${WRKSRC:Q}/networks/makenet \
- ${DESTDIR}${IRCD_SHARE:Q}/networks
${INSTALL_DATA} ${WRKSRC:Q}/aliases/*.conf \
${DESTDIR}${IRCD_SHARE:Q}/aliases
${INSTALL_DATA} ${WRKSRC:Q}/badwords*.conf ${DESTDIR}${IRCD_SHARE:Q}
diff --git a/chat/unrealircd/PLIST b/chat/unrealircd/PLIST
index 994d3b369da..0ac6e76220b 100644
--- a/chat/unrealircd/PLIST
+++ b/chat/unrealircd/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.9 2012/04/25 15:55:42 drochner Exp $
+@comment $NetBSD: PLIST,v 1.10 2013/07/14 15:42:34 rodent Exp $
sbin/ircd
share/doc/unrealircd/Authors
share/doc/unrealircd/LICENSE
@@ -7,15 +7,14 @@ share/doc/unrealircd/tao.of.irc
share/doc/unrealircd/unreal32docs.de.html
share/doc/unrealircd/unreal32docs.es.html
share/doc/unrealircd/unreal32docs.fr.html
-share/doc/unrealircd/unreal32docs.gr.html
share/doc/unrealircd/unreal32docs.html
share/doc/unrealircd/unreal32docs.hu.html
-share/doc/unrealircd/unreal32docs.nl.html
share/doc/unrealircd/unreal32docs.ru.html
share/doc/unrealircd/unreal32docs.tr.html
share/examples/rc.d/unrealircd
share/examples/unrealircd/example.conf
share/examples/unrealircd/example.de.conf
+share/examples/unrealircd/example.es.conf
share/examples/unrealircd/example.fr.conf
share/examples/unrealircd/example.hu.conf
share/examples/unrealircd/example.nl.conf
@@ -49,6 +48,7 @@ share/unrealircd/modules/m_adminchat.so
share/unrealircd/modules/m_akill.so
share/unrealircd/modules/m_away.so
share/unrealircd/modules/m_botmotd.so
+share/unrealircd/modules/m_cap.so
share/unrealircd/modules/m_chatops.so
share/unrealircd/modules/m_chghost.so
share/unrealircd/modules/m_chgident.so
@@ -98,6 +98,7 @@ share/unrealircd/modules/m_rules.so
share/unrealircd/modules/m_sajoin.so
share/unrealircd/modules/m_samode.so
share/unrealircd/modules/m_sapart.so
+share/unrealircd/modules/m_sasl.so
share/unrealircd/modules/m_sdesc.so
share/unrealircd/modules/m_sendsno.so
share/unrealircd/modules/m_sendumode.so
@@ -146,39 +147,4 @@ share/unrealircd/modules/m_watch.so
share/unrealircd/modules/m_who.so
share/unrealircd/modules/m_whois.so
share/unrealircd/modules/m_whowas.so
-share/unrealircd/networks/awesomechristians.network
-share/unrealircd/networks/axenet.network
-share/unrealircd/networks/bunker7.network
-share/unrealircd/networks/burnnet.network
-share/unrealircd/networks/cabonet.network
-share/unrealircd/networks/chatcrap.network
-share/unrealircd/networks/chatuniverse.network
-share/unrealircd/networks/ctcp.network
-share/unrealircd/networks/darkkaos.network
-share/unrealircd/networks/digitalirc.network
-share/unrealircd/networks/discussioni.network
-share/unrealircd/networks/dragonwings.network
-share/unrealircd/networks/gamescafe.network
-share/unrealircd/networks/german-elite.network
-share/unrealircd/networks/german-global-irc.network
-share/unrealircd/networks/global-irc.network
-share/unrealircd/networks/globalchat.network
-share/unrealircd/networks/icechat.network
-share/unrealircd/networks/infinity.network
-share/unrealircd/networks/ircsystems.network
-share/unrealircd/networks/isno.network
-share/unrealircd/networks/l33t-irc.network
-share/unrealircd/networks/lcirc.network
-share/unrealircd/networks/makenet
-share/unrealircd/networks/networks.ndx
-share/unrealircd/networks/outsiderz.network
-share/unrealircd/networks/phazenet.network
-share/unrealircd/networks/stormdancing.network
-share/unrealircd/networks/template.network
-share/unrealircd/networks/thainet.network
-share/unrealircd/networks/unitedirc-org.network
-share/unrealircd/networks/unreal-test.network
-share/unrealircd/networks/wazzza.network
-share/unrealircd/networks/x-irc.network
-share/unrealircd/networks/zirc.network
share/unrealircd/spamfilter.conf
diff --git a/chat/unrealircd/distinfo b/chat/unrealircd/distinfo
index 26494998531..f7e3facfa0a 100644
--- a/chat/unrealircd/distinfo
+++ b/chat/unrealircd/distinfo
@@ -1,8 +1,8 @@
-$NetBSD: distinfo,v 1.13 2012/04/25 15:55:42 drochner Exp $
+$NetBSD: distinfo,v 1.14 2013/07/14 15:42:34 rodent Exp $
-SHA1 (Unreal3.2.9.tar.gz) = 0bb9d84ce6e4a395fda86e7d6250b7016cfeb913
-RMD160 (Unreal3.2.9.tar.gz) = fb910f2a87ee4fdfd5a2d293303b0085b7657352
-Size (Unreal3.2.9.tar.gz) = 3064571 bytes
+SHA1 (Unreal3.2.10.1.tar.gz) = 09428d3d7724dfc80f5add94f33665bf825c7175
+RMD160 (Unreal3.2.10.1.tar.gz) = a8698c9028b4436743cb9fdeffdc552db21c9394
+Size (Unreal3.2.10.1.tar.gz) = 3135615 bytes
SHA1 (patch-ab) = b66ae1990e25479abe9087a9308a2185692fcba2
SHA1 (patch-ac) = 4c3e7219d03e93c2a3e8f735c350d919efdf8fbb
SHA1 (patch-ae) = dc5f4d080d1027e229f9817d1d4f1e501124f7ba
diff --git a/chat/unrealircd/options.mk b/chat/unrealircd/options.mk
index 3adb25f715a..d829fb5dd05 100644
--- a/chat/unrealircd/options.mk
+++ b/chat/unrealircd/options.mk
@@ -1,18 +1,14 @@
-# $NetBSD: options.mk,v 1.11 2012/06/12 15:45:55 wiz Exp $
+# $NetBSD: options.mk,v 1.12 2013/07/14 15:42:34 rodent Exp $
PKG_OPTIONS_VAR= PKG_OPTIONS.unrealircd
-PKG_OPTIONS_REQUIRED_GROUPS= role
-PKG_OPTIONS_GROUP.role= unrealircd-leaf unrealircd-hub
-
-PKG_SUPPORTED_OPTIONS= inet6 unrealircd-nospoof unrealircd-leaf
-PKG_SUPPORTED_OPTIONS+= unrealircd-ziplinks unrealircd-remoteinc ssl
-PKG_SUPPORTED_OPTIONS+= unrealircd-chroot unrealircd-prefixaq
-PKG_SUPPORTED_OPTIONS+= unrealircd-showlistmodes unrealircd-topicisnuhost
-PKG_SUPPORTED_OPTIONS+= unrealircd-shunnotices unrealircd-operoverride-verify
+PKG_SUPPORTED_OPTIONS= inet6 unrealircd-nospoof unrealircd-ziplinks
+PKG_SUPPORTED_OPTIONS+= unrealircd-remoteinc ssl unrealircd-chroot
+PKG_SUPPORTED_OPTIONS+= unrealircd-prefixaq unrealircd-showlistmodes
+PKG_SUPPORTED_OPTIONS+= unrealircd-topicisnuhost unrealircd-shunnotices
+PKG_SUPPORTED_OPTIONS+= unrealircd-operoverride-verify inet6
PKG_SUPPORTED_OPTIONS+= unrealircd-no-operoverride unrealircd-disableusermod
-PKG_SUGGESTED_OPTIONS= inet6 unrealircd-showlistmodes unrealircd-hub \
- unrealircd-prefixaq
+PKG_SUGGESTED_OPTIONS= unrealircd-showlistmodes unrealircd-prefixaq
.include "../../mk/bsd.options.mk"
@@ -23,6 +19,7 @@ PKG_SUGGESTED_OPTIONS= inet6 unrealircd-showlistmodes unrealircd-hub \
CONFIGURE_ARGS+= --enable-inet6
MESSAGE_SRC+= ${WRKDIR}/.MESSAGE_SRC.inet6
.else
+CONFIGURE_ARGS+= --disable-inet6
CONFIGURE_ENV+= ac_cv_ip6=no
.endif
@@ -42,15 +39,6 @@ CONFIGURE_ARGS+= --enable-nospoof
.endif
###
-### Compile as a hub or leaf server
-###
-.if !empty(PKG_OPTIONS:Munrealircd-hub)
-CONFIGURE_ARGS+= --enable-hub
-. elif !empty(PKG_OPTIONS:Munrealircd-leaf)
-CONFIGURE_ARGS+= --enable-leaf
-.endif
-
-###
### Compile in support for ziplinks. This compresses data sent from
### server <-> server with zlib.
###