summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Elio Pettenò <flameeyes@gentoo.org>2011-05-02 20:43:45 +0000
committerDiego Elio Pettenò <flameeyes@gentoo.org>2011-05-02 20:43:45 +0000
commit9bfbd1e6a1a3c440586e893ebee771739e486852 (patch)
treedb3bfacfc86e539c8eb7395b96821658e7c6deae /net-irc
parentSecurity bump (diff)
downloadhistorical-9bfbd1e6a1a3c440586e893ebee771739e486852.tar.gz
historical-9bfbd1e6a1a3c440586e893ebee771739e486852.tar.bz2
historical-9bfbd1e6a1a3c440586e893ebee771739e486852.zip
Revision bump by Nathan Phillip Brink, who's the new proxied maintainer for the package. Fixes bugs #251434 and 364957.
Package-Manager: portage-2.2.0_alpha30/cvs/Linux x86_64
Diffstat (limited to 'net-irc')
-rw-r--r--net-irc/ultimate/ChangeLog16
-rw-r--r--net-irc/ultimate/Manifest22
-rw-r--r--net-irc/ultimate/files/ultimate-3.0.2-config.patch.in30
-rw-r--r--net-irc/ultimate/files/ultimate-3.0.2-entropy-path.patch58
-rw-r--r--net-irc/ultimate/files/ultimate-3.0.2-make-failfast.patch76
-rw-r--r--net-irc/ultimate/files/ultimate-3.0.2-open-mode.patch63
-rw-r--r--net-irc/ultimate/files/ultimate-3.0.2-system-zlib.patch49
-rw-r--r--net-irc/ultimate/files/ultimateircd.conf.26
-rw-r--r--net-irc/ultimate/files/ultimateircd.rc.221
-rw-r--r--net-irc/ultimate/metadata.xml12
-rw-r--r--net-irc/ultimate/ultimate-3.0.2-r1.ebuild95
11 files changed, 443 insertions, 5 deletions
diff --git a/net-irc/ultimate/ChangeLog b/net-irc/ultimate/ChangeLog
index d5c5be50b89b..e89a640e14fd 100644
--- a/net-irc/ultimate/ChangeLog
+++ b/net-irc/ultimate/ChangeLog
@@ -1,6 +1,18 @@
# ChangeLog for net-irc/ultimate
-# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-irc/ultimate/ChangeLog,v 1.19 2009/09/23 18:45:45 patrick Exp $
+# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/net-irc/ultimate/ChangeLog,v 1.20 2011/05/02 20:43:45 flameeyes Exp $
+
+*ultimate-3.0.2-r1 (02 May 2011)
+
+ 02 May 2011; Diego E. Pettenò <flameeyes@gentoo.org>
+ +ultimate-3.0.2-r1.ebuild, +files/ultimate-3.0.2-config.patch.in,
+ +files/ultimate-3.0.2-entropy-path.patch,
+ +files/ultimate-3.0.2-make-failfast.patch,
+ +files/ultimate-3.0.2-open-mode.patch,
+ +files/ultimate-3.0.2-system-zlib.patch, +files/ultimateircd.conf.2,
+ +files/ultimateircd.rc.2, metadata.xml:
+ Revision bump by Nathan Phillip Brink, who's the new proxied maintainer for
+ the package. Fixes bugs #251434 and 364957.
23 Sep 2009; Patrick Lauer <patrick@gentoo.org> ultimate-3.0.2.ebuild:
Remove virtual/libc
diff --git a/net-irc/ultimate/Manifest b/net-irc/ultimate/Manifest
index f84f99ac14b3..2a4328c508bd 100644
--- a/net-irc/ultimate/Manifest
+++ b/net-irc/ultimate/Manifest
@@ -1,9 +1,27 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
AUX 3.0.0_rc2-config.patch 1318 RMD160 f2339f5b0cd78f131e311606632efa5493e93103 SHA1 33a0dca92999e94b6d904a47746327ee2d20194f SHA256 0d0cc1a26f4a98ea66dc2fbddf94e2e2b22f47b10009681e22cabd0396c88c6c
AUX setup.h 483 RMD160 0c285ab888cdcaa7299ab145d45c686e80f1afae SHA1 bf4272090408579ac45bf260b2e9d8732a61ea1e SHA256 9f6e6f7045f35aa640058af5d7a11805916f25a7b71e6eef283927daf8fbb915
+AUX ultimate-3.0.2-config.patch.in 1390 RMD160 7e01b69519400773398eed100ac1271f3fc585ad SHA1 ebd277663ec35bd275c49e6945a88015180dec05 SHA256 2e8b6c7782ec5c8af29467a704c8542691306987b1ceb699b9d27d9574f48d9d
+AUX ultimate-3.0.2-entropy-path.patch 1578 RMD160 f6f1ea495acd4fa610c7c2bf76b761e7f68a24fb SHA1 d38d8996399f33577e4a12e41415402fddc33f45 SHA256 41fc97b9817108f2288bd304a7c2e84707b68efe45c484c32f23892334f2fedc
+AUX ultimate-3.0.2-make-failfast.patch 1693 RMD160 c550992da24cb0ab0bec41a91297a65f7d219d6d SHA1 a4ca21db5fe922768ef6d7c9cfef3a40aa31b512 SHA256 e07dab5efc3ea3ca5af4930775e96599ea1de660006d4d300b358f7b00a7c999
+AUX ultimate-3.0.2-open-mode.patch 2758 RMD160 77b27d505a6824a77fe6fde8978606057ed94505 SHA1 b4bdb08e43b4f981e371d32112944f9f25f5195f SHA256 b31addc28d05c925ca34dd314435d3482a8b27a9be6300d1112bb592bdae638a
+AUX ultimate-3.0.2-system-zlib.patch 1440 RMD160 f0f0979115ca1f730801427814be7b7e60775ee6 SHA1 d800dbe83af12cfb3ee63e33806830f7fcaa95c8 SHA256 89298699e9a206685fe995cc33e3515adca6a272008a17a776122e55c5290cd1
AUX ultimateircd.conf 283 RMD160 7d000eebcb5e94d0156b82d815c72d3e131b07d5 SHA1 33d659d3072919b6ad31433bf54306152a44f2d1 SHA256 0d9dd80d278173855854a367f53f8afa8874d4bb2a57902e93f3b3eea755bf69
+AUX ultimateircd.conf.2 291 RMD160 cda84c8b6cf72775cb4b33e359b98d3d6f66ae3a SHA1 8a8f61ac32c01d647dbe1696237d56a733a12b09 SHA256 6b29bdc55d5d2ec4fd7a3a046f770348d0a86907caf3eda441855fb6255fa80b
AUX ultimateircd.rc 514 RMD160 49244994f77b9cb3a325eb0732b94d1c61864094 SHA1 97fb2b9388e7383967b981d226910b2620896d9e SHA256 1506849da55c0e53afdacf27404086821ffa7fbbaaf62d32008308dd6c156e89
AUX ultimateircd.rc-3.0.0 561 RMD160 fbb2e0c4200d143de5b87ce09f9394134d333846 SHA1 d2cb60f01d4f037c6ea92f361cc8961bccf8aef5 SHA256 69c84233e6aae67fc9d8ae115be54e5a770d9c795eb9326b6e4540abb5294348
+AUX ultimateircd.rc.2 543 RMD160 c39cc638fb4ba3061cd6859fd178aec867064c15 SHA1 4f5150e815990170ed83a67d7f67b96dc3364b5e SHA256 739a922a6256bada943e95f4b1d9b606c2aa3fae5c221c69c4a097f04e2caf9d
DIST Ultimate3.0.2.tar.bz2 615944 RMD160 6faa9b4834097b4d695ad09c4c55fb38704644c3 SHA1 00a46adb92c47dfcded1725b2996bab47fff0121 SHA256 b4564f76d074b3bafde6a7d2cdc8da177759949ed933979d801d107dc6fd8934
+EBUILD ultimate-3.0.2-r1.ebuild 2565 RMD160 3885c43dea7f8eb0a8997c6f3c85316757f664e2 SHA1 3bd6089e4add01626ba255f266f80e257ef4bf38 SHA256 e5711042934fd7bf4553570e6ccf370982be7ce8ab29fb58680f5d9ff8004ec6
EBUILD ultimate-3.0.2.ebuild 1538 RMD160 90cbe044c002ebd1f7ca70977f4d524b0cc01798 SHA1 c5b3cf7efef0c1f250189058f74dc64e3fb34f85 SHA256 834e8d16e9076894f4e04dafe2fa6d066f730fa1b032330df74b187cd9aefca9
-MISC ChangeLog 2954 RMD160 9951a4d43a83f406c7896fc3331b3a27ae507f3b SHA1 f0150dd1328882344828d09176c6d433ac57a38e SHA256 459ffb7c2bdec037f873b52ca28096168940cc2d094fe7266e3231e821a94e74
-MISC metadata.xml 160 RMD160 279429d1df694561fc2b163cb81c09387b9d940c SHA1 97da1b72eecc5585c65717da08eaccc9bc1cf7cd SHA256 5e058419199e306612929b80a996e3d16c6b20de674a56bb60558d3d36524fe2
+MISC ChangeLog 3482 RMD160 1329323b604d5b5860f34bd8479865e5a8c51257 SHA1 71060a7da102d9a412414582c4f7f65ea26f78a0 SHA256 8883c1e1b541f3679ce8fc8fdb543484563e3fe5a6e7e0629c17d11189d25972
+MISC metadata.xml 513 RMD160 287655214672cf665bffef4bda2765c3f1b29e87 SHA1 f47104b8afd1fa4a4ea3a9f43d64f9b4e776fd1c SHA256 56c047c9706ca624eb9e840dd83b3e4e4339c182a277199ff0661ca5b18e6716
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.17 (GNU/Linux)
+
+iEYEARECAAYFAk2/F3YACgkQAiZjviIA2XjFvQCfSujDW98f18sMNePUu+o8zHF1
+X8sAoMhAVp2WRREgzd1ekjm8tDPA0WEd
+=rIzI
+-----END PGP SIGNATURE-----
diff --git a/net-irc/ultimate/files/ultimate-3.0.2-config.patch.in b/net-irc/ultimate/files/ultimate-3.0.2-config.patch.in
new file mode 100644
index 000000000000..5cb512fe896c
--- /dev/null
+++ b/net-irc/ultimate/files/ultimate-3.0.2-config.patch.in
@@ -0,0 +1,30 @@
+diff -Nur Ultimate3.0.0.rc2.orig/include/config.h Ultimate3.0.0.rc2/include/config.h
+--- Ultimate3.0.0.rc2.orig/include/config.h 2005-01-30 15:01:45.677952244 +0100
++++ Ultimate3.0.0.rc2/include/config.h 2005-01-30 15:02:43.353895511 +0100
+@@ -127,13 +127,13 @@
+ #endif
+
+ /* dirs */
+-#define DPATH IRCD_PREFIX
++#define DPATH IRCD_PREFIX
+ #define BINPATH IRCD_PREFIX "/bin/"
+-#define ETCPATH IRCD_PREFIX "/etc"
+-#define LOGPATH IRCD_PREFIX "/logs"
++#define ETCPATH "@GENTOO_PORTAGE_EPREFIX@/etc/ultimateircd"
++#define LOGPATH "@GENTOO_PORTAGE_EPREFIX@/var/log/ultimateircd"
+
+ /* files */
+-#define SPATH BINPATH "/ircd" /* ircd executable */
++#define SPATH BINPATH "/ultimateircd" /* ircd executable */
+
+ #define CPATH ETCPATH "/ircd.conf" /* ircd.conf file */
+ #define DCONF ETCPATH "/ircd.ini" /* Dynamic Configuration File */
+@@ -144,7 +144,7 @@
+ #define SMPATH ETCPATH "/ircd.smotd" /* Short Message Of The Day */
+ #define OMPATH ETCPATH "/ircd.opermotd" /* Operator Message Of The Day */
+ #define RPATH ETCPATH "/ircd.rules" /* Rules File */
+-#define PPATH ETCPATH "/ircd.pid" /* IRCd PID */
++#define PPATH "@GENTOO_PORTAGE_EPREFIX@/var/run/ultimateircd/ircd.pid" /* IRCd PID */
+ #define IRCDSSL_CPATH ETCPATH "/ircd.crt" /* Client SSL */
+ #define IRCDSSL_KPATH ETCPATH "/ircd.key" /* Client SSL */
+
diff --git a/net-irc/ultimate/files/ultimate-3.0.2-entropy-path.patch b/net-irc/ultimate/files/ultimate-3.0.2-entropy-path.patch
new file mode 100644
index 000000000000..d99f29030723
--- /dev/null
+++ b/net-irc/ultimate/files/ultimate-3.0.2-entropy-path.patch
@@ -0,0 +1,58 @@
+From: Nathan Phillip Brink <ohnobinki@ohnopublishing.net>
+Subject: Store and retrieve entropy from a file in a directory
+ writable/readable by ultimateircd.
+Date: 2011/04/28
+
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -32,7 +32,7 @@
+ LEX = @LEX@
+ LEXLIB = @LEXLIB@
+ CCDV = @CCDV@
+-CFLAGS = @IRC_CFLAGS@ -DIRCD_PREFIX=\"@prefix@\"
++CFLAGS = @IRC_CFLAGS@ -DIRCD_PREFIX=\"@prefix@\" -DLOCALSTATEDIR='"$(localstatedir)"'
+ LDFLAGS = @LDFLAGS@
+ MKDEP = @MKDEP@ -DIRCD_PREFIX=\"@prefix@\"
+ MV = @MV@
+--- a/src/dh.c
++++ b/src/dh.c
+@@ -214,10 +214,10 @@
+ printf ("Done.\n");
+ fclose (fp);
+
+- fp = fopen (".ircd.entropy", "w");
++ fp = fopen (LOCALSTATEDIR "/.ircd.entropy", "w");
+ if (!fp)
+ {
+- printf ("Could not open .ircd.entropy for writing: %s\n",
++ printf ("Could not open " LOCALSTATEDIR "/.ircd.entropy for writing: %s\n",
+ strerror (errno));
+ return 0;
+ }
+@@ -225,7 +225,7 @@
+ fwrite (randbuf, RAND_BYTES * 4, 1, fp);
+ fclose (fp);
+
+- RAND_load_file (".ircd.entropy", -1);
++ RAND_load_file (LOCALSTATEDIR "/.ircd.entropy", -1);
+
+ return 1;
+ }
+@@ -236,7 +236,7 @@
+ int ret;
+ time_t now;
+
+- ret = RAND_load_file (".ircd.entropy", -1);
++ ret = RAND_load_file (LOCALSTATEDIR "/.ircd.entropy", -1);
+ if (ret <= 0)
+ {
+ if (!make_entropy ())
+@@ -250,7 +250,7 @@
+ /* this is probably not too good, but it saves just writing
+ the whole state back to disk with no changes. */
+ RAND_seed (&now, 4);
+- RAND_write_file (".ircd.entropy");
++ RAND_write_file (LOCALSTATEDIR "/.ircd.entropy");
+
+ return 0;
+ }
diff --git a/net-irc/ultimate/files/ultimate-3.0.2-make-failfast.patch b/net-irc/ultimate/files/ultimate-3.0.2-make-failfast.patch
new file mode 100644
index 000000000000..fa13f814de6e
--- /dev/null
+++ b/net-irc/ultimate/files/ultimate-3.0.2-make-failfast.patch
@@ -0,0 +1,76 @@
+From: Nathan Phillip Brink <ohnobinki@ohnopublishing.net>
+Subject: Cause build failures to be fail-fast instead of going undetected.
+Date: 2011/04/27
+
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -43,7 +43,7 @@
+ @for i in $(SUBDIRS); do \
+ echo "Building $$i";\
+ cd $$i;\
+- ${MAKE} build; cd ..;\
++ ${MAKE} build || exit 1; cd ..;\
+ done
+ @echo ' '
+ @echo '================================================================='
+@@ -62,7 +62,7 @@
+ @for i in $(SUBDIRS); do \
+ echo "Building $$i [profile]";\
+ cd $$i;\
+- ${MAKEPROFILE} build; cd ..;\
++ ${MAKEPROFILE} build || exit 1; cd ..;\
+ done
+
+ clean:
+@@ -70,7 +70,7 @@
+ @for i in $(SUBDIRS); do \
+ echo "Cleaning $$i";\
+ cd $$i;\
+- ${MAKE} clean; cd ..;\
++ ${MAKE} clean || exit 1; cd ..;\
+ done
+ -@if [ -f include/setup.h ] ; then \
+ echo "To really restart installation, make distclean" ; \
+@@ -83,28 +83,28 @@
+ @for i in $(SUBDIRS); do \
+ echo "Cleaning $$i";\
+ cd $$i;\
+- ${MAKE} distclean; cd ..;\
++ ${MAKE} distclean || exit 1; cd ..;\
+ done
+
+ depend:
+ @for i in $(SUBDIRS); do \
+ echo "depend ==> $$i";\
+ cd $$i;\
+- ${MAKE} depend; cd ..;\
++ ${MAKE} depend || exit 1; cd ..;\
+ done
+
+ install: all
+ @for i in $(SUBDIRS); do \
+ echo "install ==> $$i";\
+ cd $$i;\
+- ${MAKE} install; \
++ ${MAKE} install || exit 1; \
+ cd ..; \
+ done
+
+ @for i in $(SUBDIRS2); do \
+ echo "install ==> $$i";\
+ cd $$i;\
+- ${MAKE} install; \
++ ${MAKE} install || exit 1; \
+ cd ../../; \
+ done
+
+--- a/tools/Makefile.in
++++ b/tools/Makefile.in
+@@ -68,6 +68,7 @@
+
+ build: all
+
++depend:
+
+ mkpasswd: $(mkpasswd_OBJECTS)
+ $(CCDV)$(CC) ${CFLAGS} ${LDFLAGS} -o mkpasswd $(mkpasswd_OBJECTS) $(IRCDLIBS)
diff --git a/net-irc/ultimate/files/ultimate-3.0.2-open-mode.patch b/net-irc/ultimate/files/ultimate-3.0.2-open-mode.patch
new file mode 100644
index 000000000000..30ec6c96e5d7
--- /dev/null
+++ b/net-irc/ultimate/files/ultimate-3.0.2-open-mode.patch
@@ -0,0 +1,63 @@
+From: Nathan Phillip Brink <ohnobinki@ohnopublishing.net>
+Subject: Provide the required third argument to open() when O_CREAT is
+ in the second argument.
+Date: 2011/04/28
+
+--- a/src/s_serv.c
++++ b/src/s_serv.c
+@@ -4603,7 +4603,7 @@
+
+ #else /* LOCKFILE - MDP */
+
+- if ((out = open (filename, O_RDWR | O_APPEND | O_CREAT)) == -1)
++ if ((out = open (filename, O_RDWR | O_APPEND | O_CREAT, 0600)) == -1)
+ {
+ sendto_one (source_p, ":%s NOTICE %s :Problem opening %s ",
+ me.name, parv[0], filename);
+@@ -7397,7 +7397,7 @@
+ syslog (LOG_INFO, "ADDCNLINE from %s for [%s] - Opening %s\n",
+ get_client_name (source_p, FALSE), parv[3], configfile);
+ #endif
+- if ((out = open (configfile, O_RDWR | O_APPEND | O_CREAT)) == -1)
++ if ((out = open (configfile, O_RDWR | O_APPEND | O_CREAT, 0600)) == -1)
+ {
+ sendto_one (source_p, ":%s NOTICE %s :Problem opening %s ",
+ me.name, parv[0], configfile);
+@@ -7770,7 +7770,7 @@
+ syslog (LOG_INFO, "ADDOPER from %s for [%s] - Opening %s\n",
+ get_client_name (source_p, FALSE), parv[3], configfile);
+ #endif
+- if ((out = open (configfile, O_RDWR | O_APPEND | O_CREAT)) == -1)
++ if ((out = open (configfile, O_RDWR | O_APPEND | O_CREAT, 0600)) == -1)
+ {
+ sendto_one (source_p, ":%s NOTICE %s :Problem opening %s ",
+ me.name, parv[0], configfile);
+@@ -8090,7 +8090,7 @@
+ syslog (LOG_INFO, "ADDQLINE from %s for [%s] - Opening %s\n",
+ get_client_name (source_p, FALSE), parv[1], configfile);
+ #endif
+- if ((out = open (configfile, O_RDWR | O_APPEND | O_CREAT)) == -1)
++ if ((out = open (configfile, O_RDWR | O_APPEND | O_CREAT, 0600)) == -1)
+ {
+ sendto_one (source_p, ":%s NOTICE %s :Problem opening %s ",
+ me.name, parv[0], configfile);
+@@ -8379,7 +8379,7 @@
+ syslog (LOG_INFO, "ADDHLINE from %s for [%s] - Opening %s\n",
+ get_client_name (source_p, FALSE), parv[1], configfile);
+ #endif
+- if ((out = open (configfile, O_RDWR | O_APPEND | O_CREAT)) == -1)
++ if ((out = open (configfile, O_RDWR | O_APPEND | O_CREAT, 0600)) == -1)
+ {
+ sendto_one (source_p, ":%s NOTICE %s :Problem opening %s ",
+ me.name, parv[0], configfile);
+@@ -8663,7 +8663,7 @@
+ syslog (LOG_INFO, "ADDULINE from %s for [%s] - Opening %s\n",
+ get_client_name (source_p, FALSE), parv[1], configfile);
+ #endif
+- if ((out = open (configfile, O_RDWR | O_APPEND | O_CREAT)) == -1)
++ if ((out = open (configfile, O_RDWR | O_APPEND | O_CREAT, 0600)) == -1)
+ {
+ sendto_one (source_p, ":%s NOTICE %s :Problem opening %s ",
+ me.name, parv[0], configfile);
+
+Diff finished. Thu Apr 28 00:15:19 2011
diff --git a/net-irc/ultimate/files/ultimate-3.0.2-system-zlib.patch b/net-irc/ultimate/files/ultimate-3.0.2-system-zlib.patch
new file mode 100644
index 000000000000..e2e86a0481e0
--- /dev/null
+++ b/net-irc/ultimate/files/ultimate-3.0.2-system-zlib.patch
@@ -0,0 +1,49 @@
+From: Nathan Phillip Brink <ohnobinki@ohnopublishing.net>
+Subject: Don't compile against internal zlib. Missing ./configure.ac
+ changes because ./configure.ac wasn't shipped with the dist
+ tarball.
+Date: 2011/04/27
+
+--- a/autoconf/configure.in
++++ b/autoconf/configure.in
+@@ -702,6 +702,8 @@
+ wi_ARG_DISABLE_CCDV
+ wi_PROG_CCDV
+
++PKG_CHECK_MODULES([ZLIB], [zlib])
++
+ AC_SUBST(SSL_INCLUDES)
+ AC_SUBST(SSL_LIBS)
+ AC_SUBST(ENCRYPT_SRC)
+@@ -716,7 +718,7 @@
+ AC_SUBST(SEDOBJ)
+ AC_SUBST(CCDV)
+
+-AC_OUTPUT(Makefile data/Makefile data/networks/Makefile src/Makefile tools/Makefile tools/ircdcron/Makefile tools/ssl-cert/Makefile zlib/Makefile)
++AC_OUTPUT(Makefile data/Makefile data/networks/Makefile src/Makefile tools/Makefile tools/ircdcron/Makefile tools/ssl-cert/Makefile)
+
+ echo
+ echo =================================================================
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -28,3 +28,3 @@
+ SHELL=/bin/sh
+-SUBDIRS=zlib src tools data @SUBDIR_MESSAGES@
++SUBDIRS = src tools data @SUBDIR_MESSAGES@
+ SUBDIRS2=data/networks tools/ircdcron tools/ssl-cert
+
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -53,9 +53,9 @@
+ SSL_LIBS = @SSL_LIBS@
+ SSL_INCLUDES = @SSL_INCLUDES@
+
+-IRCDLIBS = ../zlib/libz.a @LIBS@ $(SSL_LIBS)
++IRCDLIBS = $(ZLIB_LIBS) @LIBS@ $(SSL_LIBS)
+
+-INCLUDES = -I../include -I../zlib $(SSL_INCLUDES)
++INCLUDES = -I../include $(ZLIB_CFLAGS) $(SSL_INCLUDES)
+ CPPFLAGS = ${INCLUDES} @CPPFLAGS@
+
+ default: all
+
diff --git a/net-irc/ultimate/files/ultimateircd.conf.2 b/net-irc/ultimate/files/ultimateircd.conf.2
new file mode 100644
index 000000000000..b2efdbe8eb91
--- /dev/null
+++ b/net-irc/ultimate/files/ultimateircd.conf.2
@@ -0,0 +1,6 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-irc/ultimate/files/ultimateircd.conf.2,v 1.1 2011/05/02 20:43:45 flameeyes Exp $
+
+# user to run ultimateircd as
+ULTIMATEIRCD_USER="ultimateircd"
diff --git a/net-irc/ultimate/files/ultimateircd.rc.2 b/net-irc/ultimate/files/ultimateircd.rc.2
new file mode 100644
index 000000000000..edc057b61422
--- /dev/null
+++ b/net-irc/ultimate/files/ultimateircd.rc.2
@@ -0,0 +1,21 @@
+#!/sbin/runscript
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-irc/ultimate/files/ultimateircd.rc.2,v 1.1 2011/05/02 20:43:45 flameeyes Exp $
+
+depend() {
+ use dns net
+}
+
+start() {
+ ebegin "Starting ${SVCNAME}"
+ start-stop-daemon --start --quiet --exec /usr/bin/ultimateircd \
+ --chuid ${ULTIMATEIRCD_USER}
+ eend $?
+}
+
+stop() {
+ ebegin "Shutting down ${SVCNAME}"
+ start-stop-daemon --stop --pidfile /var/run/ultimateircd/ircd.pid
+ eend $?
+}
diff --git a/net-irc/ultimate/metadata.xml b/net-irc/ultimate/metadata.xml
index 6ef15e900f17..f143d74a23ac 100644
--- a/net-irc/ultimate/metadata.xml
+++ b/net-irc/ultimate/metadata.xml
@@ -1,5 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>net-irc</herd>
+ <herd>net-irc</herd>
+ <maintainer>
+ <email>ohnobinki@ohnopublishing.net</email>
+ <name>Nathan Phillip Brink</name>
+ <description>Maintainer. Assign bugs to him</description>
+ </maintainer>
+ <maintainer>
+ <email>flameeyes@gentoo.org</email>
+ <name>Diego Elio Pettenò</name>
+ <description>Proxy maintainer. CC him on bugs</description>
+ </maintainer>
</pkgmetadata>
diff --git a/net-irc/ultimate/ultimate-3.0.2-r1.ebuild b/net-irc/ultimate/ultimate-3.0.2-r1.ebuild
new file mode 100644
index 000000000000..0f9daf96a72f
--- /dev/null
+++ b/net-irc/ultimate/ultimate-3.0.2-r1.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-irc/ultimate/ultimate-3.0.2-r1.ebuild,v 1.1 2011/05/02 20:43:45 flameeyes Exp $
+
+EAPI=4
+
+AT_M4DIR=autoconf
+inherit autotools eutils fixheadtails prefix ssl-cert
+
+MY_P=Ultimate${PV/_/.}
+
+DESCRIPTION="An IRCd server based on DALnet's DreamForge IRCd"
+SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.bz2"
+HOMEPAGE="http://www.shadow-realm.org/"
+
+KEYWORDS="~amd64 ~ppc ~sparc ~x86 ~amd64-linux"
+SLOT="0"
+LICENSE="GPL-2"
+IUSE="ssl"
+
+RDEPEND="sys-libs/zlib
+ ssl? ( dev-libs/openssl )"
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ rm -rf zlib || die
+
+ cp "${FILESDIR}"/${P}-config.patch.in "${T}"/${P}-config.patch || die
+ eprefixify "${T}"/${P}-config.patch
+ epatch "${T}"/${P}-config.patch
+
+ epatch "${FILESDIR}"/${P}-system-zlib.patch
+ epatch "${FILESDIR}"/${P}-make-failfast.patch
+ epatch "${FILESDIR}"/${P}-open-mode.patch
+ epatch "${FILESDIR}"/${P}-entropy-path.patch
+
+ mv autoconf/configure.in ./ || die
+ ht_fix_file configure.in
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --sysconfdir="${EPREFIX}"/etc/ultimateircd \
+ --localstatedir="${EPREFIX}"/var/lib/ultimateircd \
+ --disable-ccdv \
+ $(use_enable ssl openssl)
+}
+
+src_compile() {
+ # Must rerun the depend stage because we removed the zlib/ dir to
+ # which the stale dependencies still refer.
+ emake depend
+ emake
+}
+
+src_install() {
+ dodir /etc/ultimateircd
+ keepdir /var/{lib,log,run}/ultimateircd
+
+ einstall \
+ sysconfdir="${ED}"/etc/ultimateircd \
+ localstatedir="${ED}"/var/lib/ultimateircd \
+ networksubdir='$(sysconfdir)/networks'
+
+ rm -rf "${ED}"/usr/{{ircd,kill,rehash},bin/{ircdchk,ssl-{cert,search}.sh}} "${ED}"/var/lib/ultimateircd/logs || die
+ dosym /var/log/ultimateircd /var/lib/ultimateircd/logs
+
+ mv "${ED}"/usr/bin/ircd "${ED}"/usr/bin/ultimateircd || die
+ mv "${ED}"/usr/bin/mkpasswd "${ED}"/usr/bin/ultimateircd-mkpasswd || die
+
+ newinitd "${FILESDIR}"/ultimateircd.rc.2 ultimateircd
+ newconfd "${FILESDIR}"/ultimateircd.conf.2 ultimateircd
+}
+
+pkg_preinst() {
+ if ! use prefix; then
+ enewuser ultimateircd
+ fowners ultimateircd /var/{lib,log,run}/ultimateircd
+ fowners -R ultimateircd /etc/ultimateircd
+ fi
+
+ fperms -R go-rwx /etc/ultimateircd
+ fperms 0700 /var/{lib,log,run}/ultimateircd
+}
+
+pkg_postinst() {
+ if use ssl && [[ ! -e ${EROOT}etc/ultimateircd/ircd.crt ]]; then
+ install_cert /etc/ultimateircd/ircd
+ use prefix || chown ultimateircd "${EROOT}"etc/ultimateircd/ircd.{key,crt,pem}
+ fi
+}