New release available. See the attached diff for ebuild updates.
Created attachment 227217 [details, diff] Ebuild updates for jabberd2-2.2.9 Ebuild updates for jabberd2-2.2.9: * Use EAPI 2 for src_configure phase * Use src_configure phase instead of src_compile (rely on default src_compile phase) * Rename init and pamd files to only use the package name since all the different versions currently in the tree have the same content -- All the files have the same content so they should be removed and only one of each file placed in the tree to reduce code duplication. If this is done, all the previous ebuild versions for jabberd2 will have to be trivially updated to use the new filenames. * Remove unnecessary whitespace
Your patch references ${PN}.init and ${PN}.pamd whereas it should reference ${PN}-${PV}.init and ${PN}-${PV}.pamd (according to the current naming scheme).
(In reply to comment #2) > Your patch references ${PN}.init and ${PN}.pamd whereas it should reference > ${PN}-${PV}.init and ${PN}-${PV}.pamd (according to the current naming scheme). > Sorry, didn't notice you renamed them on purpose. However, they might change in future (see #269010) so you might want to consider that.
This version bump has fixed a segmentation fault in the c2s for me.
(In reply to comment #3) > Sorry, didn't notice you renamed them on purpose. However, they might change in > future (see #269010) so you might want to consider that. Yeah, sticking with ${PN}-${PV} is better for patch names; I just wanted to draw attention to the fact that all the different files in the tree currently have the same content so the duplicates should be removed.
jabberd2 2.2.10 released on 11/06/2010 http://codex.xiaoka.com/pub/jabberd2/releases/jabberd-2.2.10.tar.bz2 http://codex.xiaoka.com/svn/jabberd2/tags/jabberd-2.2.10/ChangeLog ChangeLog: * Implemented XEP-0237: Roster Versioning * Implemented XEP-0178: SASL External authentication of clients * RDBMS support for mod_roster_publish * storage_ldapvcard rebind like auth_ldap for successful connection to MS Active Directory as LDAP storage. Merged patch by x0r. * Merged router-filter redirect option by Ugnich Anton. * Fix for crash on empty pkt→to * CWave server merged changes: * fixed a lot of memory leaks * fix an infinite loop where the help admin messages sm (produces a help response to itself) * fix a bug where outbound packets cause an infinite loop during shutdown * Guard against NULL pointers in free * Disabled kqueue MIO * Removed mod_disco_publish
*** Bug 330163 has been marked as a duplicate of this bug. ***
And now, 2.2.10's time has passed, and now it is 2.2.11's time to shine. Hopefully in Gentoo. 2010-08-08 Tomasz Sterna <tomek@xiaoka.com> * Use length with route keys * closefd during main loop 2010-08-07 Tomasz Sterna <tomek@xiaoka.com> * [cwave] ported router connection closing improvement from cwave * [cwave:r77] fix potential segfault in a call to xhash_putx() * [cwave:r72] enforce iq type * Fixed packet jabber:server -> jabber:client namespace mangling 2010-08-06 Tomasz Sterna <tomek@xiaoka.com> * Fixed attribute namespace handling in NAD parser 2010-07-10 Tomasz Sterna <tomek@xiaoka.com> * Fixed missing reference in log_error
Looks like we need maintainer here. If you use this package and have time to maintain it, please, contact me and we'll decide how to resolve this situation. Thomas if you have any objections or you wish to be proxy-maintainer yourself, please, speak!
Created attachment 260835 [details] jabberd2-2.2.11.ebuild ebuild for 2.2.11 based on Tim's patch for 2.2.8. I removed dodoc migrate.pl. Upstream stops distributing in 2.2.10.
I don't want to be boring but there is jabberd-2.2.13. Maintainer doesn't care about this package, does anybode want to maintain package through proxy-maintainer (maybe with Peter's help)?
Yup, I can proxy, but somebody have to do a dirty job...
I've started working on ebuild and init scripts (i'm trying to fix other bugs). I've got problem with router process, it doesn't shutdown after SIGTERM. Maybe upstream would help with this.
I've done some changes to ebuild and init script. I hope this fix bug #241472 (and #269010). I've added script for logrotate, changed use flag from sqlite to sqlite3. I've tested jabberd2 on x86 with postgresql. Repoman is happy. Please try it, any suggestions are appreciated. (svn://) http://repoz.mejor.pl/svn/gentoo/portage/net-im/jabberd2/
Created attachment 267507 [details] ebuild
Created attachment 267509 [details] init-2.2.13
Created attachment 267511 [details] jabberd2-logrotate script
(In reply to comment #14) > I've done some changes to ebuild and init script. I hope this fix bug #241472 > (and #269010). Your init-file may fail on my scenario... jabberd.cfg: .. sm /etc/jabber/sm.xml sm /etc/jabber/sm-example.org.xml sm /etc/jabber/sm-example2.org.xml .. pid-files: /var/run/jabber/sm.de.pid /var/run/jabber/sm-example.org.pid /var/run/jabber/sm-example2.org.pid i have to change pid-filename in .xml when adding another sm by hand. as i see your init-file simply should ignore all other sm-processes :( the big problem is, that pid-files must be configured in xml-file ...
Thanks for look into init script. Init script doesn't create pid file, it must be done by started proccess so valid path to pid should be configured in sm-foo.xml. Or we can rely on init scirpt, let them make pid file, in this case we should comment out pid file in foo.xml. (Parsing xml files from init script doesn't look to be easy). I'm not sure what did you mean "as i see your init-file simply should ignore all other sm-processes". If you add another sm with another sm-foo.xml to /etc/jabber/jabberd.cfg then sm-foo should be started as well as other services.
(In reply to comment #19) > Init script doesn't create pid file, it must be done by started proccess so > valid path to pid should be configured in sm-foo.xml. Or we can rely on init > scirpt, let them make pid file, in this case we should comment out pid file in > foo.xml. AFAIR this didn't work. Please try... > (Parsing xml files from init script doesn't look to be easy). maybe a simple grep with regex? but i'm not sure if its the right way of doing this... > I'm not sure what did you mean "as i see > your init-file simply should ignore all other sm-processes". If you add another > sm with another sm-foo.xml to /etc/jabber/jabberd.cfg then sm-foo should be > started as well as other services. k, for my example... if you want to stop services you do "grep -v "^ *#" "/etc/jabber/jabberd.cfg" | awk '{print $1}' | tac" which results in: sm sm sm So you'll try to stop daemons on sm.pid multiple times instead of using sm.pid, sm-example.org.pid and sm-example2.org.pid
Ah, now i know what you mean. Xml are very "friendly" to parse them with regexp :) (what if pidfile section will be commented in this way: <!-- <pidfile>/var/run/jabber/sm.pid</pidfile> --> ), grep doesn't help, mayby awk could help. Or xml tool, mayby xlllint. xmllint --xpath /sm/pidfile sm.xml gives needed information. It needs RDEPEND to dev-libs/libxml2. Is it gentoo correct to use (for example) xmllint in init script?
(In reply to comment #20) > (In reply to comment #19) > > Init script doesn't create pid file, it must be done by started proccess so > > valid path to pid should be configured in sm-foo.xml. Or we can rely on init > > scirpt, let them make pid file, in this case we should comment out pid file in > > foo.xml. > > AFAIR this didn't work. Please try... If you use --make-pidfile \ --pidfile /var/run/jabber/$(basename ${cfgfile%.xml}).pid \ instead of --pid /var/run/jabber/$(basename ${cfgfile%.xml}).pid \ then init-script will create a pid-file. --pid seems to be wrong according to manpage IMHO we should ignore pidfile in xml-config (comment it for default config in ebuild) and use pid-files created by init-script.
btw... this does not resolve the problem that it did not stop jabberd2 services if they will be removed from the config file (e.g. old SMs).
"--pid" is incorrect according to man but is correct according to start-stop-daemon ('-p'='--pi'='--pid'='--pidfile'). > btw... this does not resolve the problem that it did not stop jabberd2 services > if they will be removed from the config file (e.g. old SMs). It's the same situation like in clamav (if you disable clamd then /etc/init.d/clamd stop doesn't stop clamd, only freshclam would be stopped). I don't think this is big problem. About creating pidfile. Imho it's better daemon creates pidfile by self, option --make-pidfile in start-stop-daemon is workaround for programs which aren't able to do it by self.
Created attachment 269483 [details] jabberd2-2.2.13.init Init script with xml support. I used xmllint from libxml2 to parse xml config files. Services are starting in order of mention in jabberd.cfg and shutting with reverse order.
Nice ;) You should translate the polish comment at the beginning of stop() ;)
I hope you didn't run any translator on it ;D I don't like this script is dirty (for example DRY), cleaning up will be next step. Ofcourse if such idea (using xmllint) will be accepted by other users using more complex configs.
Jabberd2 2.2.14 security release: This is a security release dealing with “billion laughs” attack possibility discovered in many XMPP servers. CVE-2011-1755 ChangeLog: * Prevent the “billion laughs” attack against expat by disabling internal entity expansion. * Shortcut DNS resolution failure in cases when given domain name is invalid * Explicitly link libcrypt to authreg_mysql * Removed xconfig - it's not used anywhere * Added Upstart service configuration files http://codex.xiaoka.com/pub/jabberd2/releases/jabberd-2.2.14.tar.bz2
Patch for 2.2.8 in Debian: http://patch-tracker.debian.org/patch/series/view/jabberd2/2.2.8-2.1/CVE-2011-1755.dpatch
(In reply to comment #28) > Jabberd2 2.2.14 security release: > This is a security release dealing with “billion laughs” attack > possibility discovered in many XMPP servers. CVE-2011-1755 renaming Marcin's ebuild works fine. > ChangeLog: > * Explicitly link libcrypt to authreg_mysql Maybe we should depend on dev-libs/libgcrypt while using mysql-useflag?
(In reply to comment #30) > > ChangeLog: > > * Explicitly link libcrypt to authreg_mysql > > Maybe we should depend on dev-libs/libgcrypt while using mysql-useflag? libcrypt is glibc
Created attachment 279767 [details] jabberd2.init Fixed deprecated "--chuid".
Created attachment 279777 [details] ebuild for jabberd2-2.2.14 Ebuild for version 2.2.14 (only minor changes). Peter, can we proceede with bump?
*** Bug 375323 has been marked as a duplicate of this bug. ***
Created attachment 280283 [details] ebuild for jabberd2-2.2.14 Another "rm" in ebuild (/etc in /usr , strange).
(In reply to comment #33) > Ebuild for version 2.2.14 (only minor changes). > Peter, can we proceede with bump? Marcin, sorry missed this. Yea, I think this is great idea. Should I take a look at jabberd2-logrotate script, jabberd2-2.2.14.init, ebuild for jabberd2-2.2.14 in the attachments for this bug. Also could you attach metadata.xml with you being maintainer, please? :)
Created attachment 286421 [details] metadata.xml > Should I take a > look at jabberd2-logrotate script, jabberd2-2.2.14.init, ebuild for > jabberd2-2.2.14 in the attachments for this bug. Is it question or statement? If it's a question the answer is: yes, it would be nice. In last time there were many changes in gentoo policies about DEPEND to @system and other things. I'm a bit not up to date. This ebuild uses EAPI=2 in not far future i'll change it to EAPI=4. > Also could you attach > metadata.xml with you being maintainer, please? :) Here it is.
Marcin, what about jabberd2-2.2.14.pamd file? Should I take jabberd2-2.2.8.pamd?
Yes, this file isn't changed.
Created attachment 288599 [details] jabberd2-2.2.14-build.log Ok. Also I found build failure (build.log in attachment): sasl_gsasl.c:37:18: error: ‘SX_SSL_CONN_EXTERNAL_ID_MAX_COUNT’ undeclared here (not in a function) sasl_gsasl.c: In function ‘_sx_sasl_wio’: USE="mysql sqlite2 berkdb -zlib -pam -ssl" emerge -va net-im/jabberd2
Created attachment 289339 [details, diff] jabberd2-2.2.14-nossl_compilation.patch fix from upstream, compilation error without ssl
Created attachment 289341 [details] jabberd2-2.2.14.ebuild updated ebuild, also changed USE flag from sqlite3 to sqlite
Created attachment 311831 [details] net-im/jabberd2-2.2.16 ebuild Ebuild for jabberd2-2.2.16, added use flags "static-libs test".
Created attachment 311833 [details, diff] patch needed by version 2.2.16 to build without debug
Remain files stays untouched, only name for init script should be changed to jabberd2-2.2.16.init .
Created attachment 312185 [details] net-im/jabberd2-2.2.16 ebuild Jabberd2-2.2.16 still needs cppunit to make ./configure happy even without USE=test.
* 2.2.16 to 2.2.17 upgrade: What changed: - cppunit was replaced by check framework - Fixed build with debug disabled Marcin, could you update the ebuild? Thanks.
Created attachment 322412 [details] net-im/jabberd2-2.2.17 ebuild Here it is.
(In reply to comment #48) > net-im/jabberd2-2.2.17 ebuild I have compiled a jabber server, it's up and running without any issues so far. Just a note for the ebuild cleanup: - add EAPI=4 - remove "ebeep" Can somebody push it to the tree? The current stable version is very old. It's about time to move on.
Created attachment 322507 [details] net-im/jabberd2-2.2.17 ebuild I've removed ebeep, EAPI was bumped in first version of ebuild for jabberd2-2.2.17. Peter(PVA) are you around?
there are 3 more bugs will be fixed with 2.2.17 bump: bug #381279 bug #369739 bug #432936 @Marcin, do you want to improve the init script and fix the last outstanding bug #241472? ;-)
Isn't this bug fixed yet? Does problem still appears with attached init script? I don't use transport so i can't do quick test, in init script i'm trying to kill only pids mentioned in SERVICES_CONF="/etc/jabber/jabberd.cfg".
(In reply to comment #52) > Isn't this bug fixed yet? Does problem still appears with attached init > script? I don't use transport so i can't do quick test, in init script i'm > trying to kill only pids mentioned in > SERVICES_CONF="/etc/jabber/jabberd.cfg". Using this init script for a long time with jabberd-2.2.14 - works fine and did not kill e.g. mu-conference (as it did before).
SRC_URI in net-im/jabberd2-2.2.17 ebuild contains an error and should be updated =) There is no Jabberd2, but jabberd2 in working SRC_URI =) For example, it could looks like: SRC_URI="mirror://github/jabberd2/${PN}/jabberd-${PV}.tar.xz" or SRC_URI="mirror://github/${PN}/${PN}/jabberd-${PV}.tar.xz" Update please =) Thanks!
Created attachment 330825 [details] net-im/jabberd2-2.2.17 ebuild Something changed... Thanks for information about it, fixed ebuild is attached.
(In reply to comment #35) > Created attachment 280283 [details] > ebuild for jabberd2-2.2.14 > > Another "rm" in ebuild (/etc in /usr , strange). sed -i \ -e 's/^initdir = .*/initdir =/' \ -e 's/^init_DATA = .*/init_DATA =/' etc/Makefile.in in src_configure() can be used instead of rm jabberd.cfg jabberd-{c2s,router,s2s,sm}.conf || die "rm failed" rm -r "${D}/usr/etc" || die "rm2 failed"
Created attachment 331398 [details] jabberd2.init According to last changes to openrc I've added checkpath to init script.
Created attachment 331400 [details] net-im/jabberd2-2.2.17 ebuild Alex, sed version is a little more elegant, changed.
Created attachment 332788 [details] jabberd2-2.2.17-r1.ebuild New version with two patch: 1. Fix for https://github.com/jabberd2/jabberd2/issues/16 2. For adding ability (new USE="loggingmsgtodb") logging all sended message to database
Created attachment 332790 [details] jabberd2-fix-groupinsharedroster.patch Fix for https://github.com/jabberd2/jabberd2/issues/16
Created attachment 332792 [details] jabberd2-add_logging_to_db.patch Adding ability (new USE="loggingmsgtodb") logging all sended message to database
2.2.14 is in tree. What about 2.2.17?
We probably need a new proxy-maintainer here.
I use -r1 ebuild attached here. Got following errors: This ebuild is from an overlay named 'x-mylay': '/var/portage/mylay/' /usr/lib/portage/bin/isolated-functions.sh: line 215: wait: `Cannot find the latest automake! Tried 1.12:1.12': not a pid or valid job spec After emerging automake going further: checking for select... (cached) yes /var/tmp/portage/net-im/jabberd2-2.2.17-r1/work/jabberd-2.2.17/configure: line 17746: syntax error near unexpected token `CHECK,' /var/tmp/portage/net-im/jabberd2-2.2.17-r1/work/jabberd-2.2.17/configure: line 17746: ` PKG_CHECK_MODULES(CHECK, check >= 0.9.4, want_tests=yes, want_tests=no)' After emerging pkgconfig emerged successfully.
@master_volkov , there is an error jabberd/router: storage_mysql.so: undefined symbol: nad_print when appling your "jabberd2-add_logging_to_db.patch".
Created attachment 350230 [details] jabberd logrotate script with fixed user issue We need to run logrotate from jabber user or get error: error: skipping "/var/log/jabber/c2s.log" because parent directory has insecure permissions (It's world writable or writable by group which is not "root") Set "su" directive in config file to tell logrotate which user/group should be used for rotation. error: skipping "/var/log/jabber/s2s.log" because parent directory has insecure permissions (It's world writable or writable by group which is not "root") Set "su" directive in config file to tell logrotate which user/group should be used for rotation. error: skipping "/var/log/jabber/sm.log" because parent directory has insecure permissions (It's world writable or writable by group which is not "root") Set "su" directive in config file to tell logrotate which user/group should be used for rotation. error: skipping "/var/log/jabber/router.log" because parent directory has insecure permissions (It's world writable or writable by group which is not "root") Set "su" directive in config file to tell logrotate which user/group should be used for rotation. run-parts: /etc/cron.daily/logrotate.cron exited with return code 1 Job /bin/run-parts /etc/cron.daily 1> /dev/null terminated (exit status: 1) (mailing output) Please mark attachment 267511 [details] as obsolete.
Thanks cyberbat for feedback. I should update ebuild in a few days (now I'm busy).
Created attachment 350366 [details] metadata.xml
Created attachment 350368 [details] jabberd2-2.2.17-r2.ebuild I don't understand autotools enough to fix dependency on pkgconfig. So I added it to DEPEND. About "undefined symbol: nad_print" I'll try to look at it but I can't promise it happens soon.
Created attachment 358958 [details] Ebuild to bump version to 2.2.17 Working ebuild to bump to 2.2.17
Created attachment 358960 [details] Init script for 2.2.17 version bump This addresses a deprecation of the --chuid parameter to start-stop-service
My ebuild doesn't include the logging to db patch which the already rejected by the upstream maintainer, nor the groupinsharedroster patch which has been applied upstream.
+*jabberd2-2.2.17 (01 Nov 2013) + + 01 Nov 2013; Julian Ospald <hasufell@gentoo.org> +jabberd2-2.2.17.ebuild, + +files/jabberd2-2.2.17.init, +files/jabberd2-2.2.17.logrotate, metadata.xml: + version bump wrt #314473 and #432936
Thanks Julian for taking care of this package! I noticed you changed quotting in einfo, after emerging I'm getting: * You will need to setup or update your database using the * scripts in /usr/share/doc/${PF}/tools/ $ cd /usr/share/doc/${PF}/tools/ bash: cd: /usr/share/doc//tools/: No such file or directory Is it correct change? I also noticed new conf files in /etc/jabber: # grep runlevel *conf jabberd-c2s.conf:start on runlevel [2345] jabberd-c2s.conf:stop on runlevel [!2345] jabberd-router.conf:start on runlevel [2345] jabberd-router.conf:stop on runlevel [!2345] jabberd-s2s.conf:start on runlevel [2345] jabberd-s2s.conf:stop on runlevel [!2345] jabberd-sm.conf:start on runlevel [2345] jabberd-sm.conf:stop on runlevel [!2345] are they really needed on gentoo? They looks like conf files for Debian/Ubuntu init scripts.
(In reply to Marcin Mirosław from comment #74) > Thanks Julian for taking care of this package! > I noticed you changed quotting in einfo, after emerging I'm getting: > * You will need to setup or update your database using the > * scripts in /usr/share/doc/${PF}/tools/ > > $ cd /usr/share/doc/${PF}/tools/ > bash: cd: /usr/share/doc//tools/: No such file or directory > > Is it correct change? > > I also noticed new conf files in /etc/jabber: > # grep runlevel *conf > jabberd-c2s.conf:start on runlevel [2345] > jabberd-c2s.conf:stop on runlevel [!2345] > jabberd-router.conf:start on runlevel [2345] > jabberd-router.conf:stop on runlevel [!2345] > jabberd-s2s.conf:start on runlevel [2345] > jabberd-s2s.conf:stop on runlevel [!2345] > jabberd-sm.conf:start on runlevel [2345] > jabberd-sm.conf:stop on runlevel [!2345] > > are they really needed on gentoo? They looks like conf files for > Debian/Ubuntu init scripts. I missed
oops... I mean, missed the last response. Feel free to bother my via e-mail if I miss something. Afais the upstart files have been fixed with bug #498900 pinkbyte just fixed the quoting issue