debian/0000755000000000000000000000000012174002000007150 5ustar debian/docs0000644000000000000000000000004012173760263010042 0ustar FAQ README TODO XEP0045_SUPPORT debian/default0000644000000000000000000000030612173760263010543 0ustar # Defaults for jabberd2 initscript # sourced by /etc/init.d/jabberd2 # installed at /etc/default/jabber-muc by the maintainer scripts # user and group USER=jabber GROUP=jabber # run muc MUC_RUN=1 debian/watch0000644000000000000000000000011312173760263010221 0ustar version=3 http://download.gna.org/mu-conference/mu-conference_(.*).tar.gz debian/preinst0000644000000000000000000000070112173760263010602 0ustar #!/bin/sh set -e case "$1" in upgrade) ;; install|abort-upgrade) ;; *) echo "preinst called with unknown argument \`$1'" >&2 exit 1 ;; esac if ! getent group | grep -q "^jabber:" then addgroup --system jabber fi if ! getent passwd | grep -q "^jabber:" then adduser --system --home /var/lib/jabberd2 --no-create-home \ --quiet --disabled-password --ingroup jabber jabber fi #DEBHELPER# exit 0 debian/patches/0000755000000000000000000000000012173760263010624 5ustar debian/patches/cflags_hardening.diff0000644000000000000000000000155312173760263014740 0ustar Description: Change CFLAGS and LDFLAGS for use hardening. Author: Willem van den Akker --- a/src/Makefile +++ b/src/Makefile @@ -1,9 +1,9 @@ CC:=gcc -CFLAGS:=$(CFLAGS) -O2 -Wall -I../../lib -I../include `pkg-config --cflags glib-2.0` -D_JCOMP -D_REENTRANT -DLIBIDN +CFLAGS:=$(CFLAGS) -I../../lib -I../include `pkg-config --cflags glib-2.0` -D_JCOMP -D_REENTRANT -DLIBIDN #CFLAGS:=$(CFLAGS) -O2 -Wall -I../../lib -I../include `pkg-config --cflags glib-2.0` -D_JCOMP -D_REENTRANT -DLIBIDN -DHAVE_MYSQL LIBS:=$(LIBS) -ljcomp -lm `pkg-config --libs glib-2.0` `pkg-config --libs gthread-2.0` -lexpat -lidn #LIBS:=$(LIBS) -ljcomp -lm `pkg-config --libs glib-2.0` `pkg-config --libs gthread-2.0` -lexpat -lidn `mysql_config --libs` -LDFLAGS:=-L. +LDFLAGS:=$(LDFLAGS) -L. # Debug/Experimental #CFLAGS:=$(CFLAGS) -pipe -Os -I../../jabberd -I../include debian/patches/series0000644000000000000000000000002612173760263012037 0ustar cflags_hardening.diff debian/rules0000755000000000000000000000073112173760263010256 0ustar #!/usr/bin/make -f # rules to package jabber-muc # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 # These are used for cross-compiling and for saving the configure script # from having to guess our platform (since we know it already) DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) export DEB_BUILD_MAINT_OPTIONS=hardening=+all # Use debhelper's dh %: dh $@ debian/compat0000644000000000000000000000000212173760263010373 0ustar 9 debian/postinst0000644000000000000000000000126312173760263011005 0ustar #!/bin/sh set -e case "$1" in configure) chown jabber:jabber /var/spool/jabber-muc chmod 750 /var/spool/jabber-muc chown jabber:jabber /var/spool/jabber-muc/rooms chmod 750 /var/spool/jabber-muc/rooms chown jabber:jabber /var/spool/jabber-muc/rooms-logs chmod 750 /var/spool/jabber-muc/rooms-logs chown jabber:jabber /etc/jabberd2 chmod 750 /etc/jabberd2 chown jabber:jabber /var/log/jabberd2 chmod 750 /var/log/jabberd2 ;; abort-upgrade|abort-remove|abort-deconfigure) ;; *) echo "postinst called with unknown argument \`$1'" >&2 exit 1 ;; esac #DEBHELPER# exit 0 debian/lintian-overrides0000644000000000000000000000014712173760263012560 0ustar #this error is by design to fix previous error in XML file. jabber-muc binary: spelling-error-in-binarydebian/component.d/0000755000000000000000000000000012173760263011421 5ustar debian/component.d/60muc0000755000000000000000000000232112173760263012277 0ustar #!/bin/sh set -e test -f /etc/default/jabber-muc && . /etc/default/jabber-muc NAME=muc COMMAND=/usr/sbin/mu-conference PIDPATH=/var/run/jabberd2 PIDFILE=${PIDPATH}/${NAME}.pid CONFFILE=/etc/jabberd2/${NAME}.xml if [ ! -d ${PIDPATH} ]; then mkdir -p ${PIDPATH} chown ${USER}:${GROUP} ${PIDPATH} fi # exit now if we are not ment to run test "${MUC_RUN}" != 0 || exit 0 # check for executable test -f ${COMMAND} || exit 0 case "$1" in start) printf " ${NAME}" if [ ! `pidof ${COMMAND}` ]; then start-stop-daemon -b -c ${USER}:${GROUP} \ --start --pidfile ${PIDFILE} --quiet \ --exec ${COMMAND} -- -c ${CONFFILE} || printf "" fi ;; stop) printf " ${NAME}" start-stop-daemon -o -u ${USER} --stop --quiet \ --signal 15 --retry 3 --pidfile ${PIDFILE} \ --exec ${COMMAND} || printf "" ;; status) printf "${NAME}" if [ `pidof ${COMMAND}` ]; then printf " running" else printf " not running" fi ;; restart) $0 stop sleep 1 $0 start ;; *) printf "`basename $0` called with unknown option {$1}\n" exit 1 ;; esac exit 0 debian/muc.xml0000644000000000000000000000462212173760263010507 0ustar conference.localhost conference.localhost localhost 5347 secret /var/spool/jabber-muc/rooms/ /var/log/jabberd2/ /var/run/jabberd2/muc.pid 124 Public Chatrooms This service is for public chatrooms. http://localhost/ 40 /var/spool/jabber-muc/rooms-logs/ ../style.css has become available has left is now known as admin@localhost debian/control0000644000000000000000000000152212173760263010600 0ustar Source: jabber-muc Section: net Priority: optional Maintainer: Debian XMPP Maintainers Uploaders: Willem van den Akker Build-Depends: debhelper (>= 9.0.0), libglib2.0-dev, libexpat1-dev, libidn11-dev Homepage: https://gna.org/projects/mu-conference/ Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-xmpp/jabber-muc.git Vcs-Git: git://anonscm.debian.org/pkg-xmpp/jabber-muc.git Standards-Version: 3.9.4 Package: jabber-muc Architecture: any Depends: ${shlibs:Depends}, adduser, ${misc:Depends} Recommends: jabberd14 | jabberd2 Description: Multi User Conference component for the Jabber IM server Multi User Conference component provides an implementation of XEP-0045 which allow the creation of multi-users chat. So with jabber-muc, you can run your own Jabber chatrooms server. debian/copyright0000644000000000000000000001244412173760263011135 0ustar Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: jabber-muc Source: https://gna.org/projects/mu-conference/ Files: * Copyright: Copyright © 1999-2002 Jabber.com, Inc. Copyright © 1998-1999 Jeremie Miller Copyright © 2003 Paul Curtis Copyright © 2002-2005 David Sutton jid: peregrine@legend.net.uk Copyright © 2007 Grégoire Menuel jid: mega@im.apinc.org License: GNU General Public License version 2 dated June, 1991. This package is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the license, or (at your option) any later version. . This package is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this package; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. Files: src/jabberd/sha.c Copyright: 1995-1999 Crypography Research, Inc. License: Mozilla Public License Version 1.1 The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/MPL/ . Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License. Files: src/jabberd/snprintf.c Copyright: 1995-1998 The Apache Group License: Apache License Version 1.0 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: . 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. . 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. . 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: "This product includes software developed by the Apache Group for use in the Apache HTTP server project (http://www.apache.org/)." . 4. The names "Apache Server" and "Apache Group" must not be used to endorse or promote products derived from this software without prior written permission. . 5. Redistributions of any form whatsoever must retain the following acknowledgment: "This product includes software developed by the Apache Group for use in the Apache HTTP server project (http://www.apache.org/)." . THIS SOFTWARE IS PROVIDED BY THE APACHE GROUP ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE APACHE GROUP OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ==================================================================== . This software consists of voluntary contributions made by many individuals on behalf of the Apache Group and was originally based on public domain software written at the National Center for Supercomputing Applications, University of Illinois, Urbana-Champaign. For more information on the Apache Group and the Apache HTTP server project, please see . . This code is based on, and used with the permission of, the SIO stdio-replacement strx_* functions by Panos Tsirigotis for xinetd. Files: debian/* Copyright: 2002-2007 Jamin W. Collins 2009-2013 Jorge Salamero Sanz 2013 Willem van den Akker License: GPL-2+ This package is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. . This package is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program. If not, see . On Debian systems, the complete text of the GNU General Public License version 2 can be found in "/usr/share/common-licenses/GPL-2". debian/manpages0000644000000000000000000000002712173760263010712 0ustar debian/mu-conference.1 debian/source/0000755000000000000000000000000012173760263010475 5ustar debian/source/format0000644000000000000000000000001412173760263011703 0ustar 3.0 (quilt) debian/TODO0000644000000000000000000000005512173760263007665 0ustar * Make scripts (component.d more standard) debian/changelog0000644000000000000000000001203012173775714011052 0ustar jabber-muc (0.8-4) unstable; urgency=low * New maintainer (Closes: #589307). * Removed /var/run (Closes: #689894). - debian/dirs: removed /var/run entry. - debian/postinst: removed /var/run entries. - debian/lintian-overrides: removed /var/run entry. - debian/rules: removed lintian-overrides copy operation. * Make debian/component.d/* less bashish. * Make it a debhelper package: + debian/rules: debhelper compliant + debian/jabberd2-muc.xml: renamed to muc.xml. + debian/install: file created. Needed for rules. + debian/default: made some corrections and comments. + debian/control: remove hardening-includes. Not needed anymore. * debian/TODO: updated. * debian/TODO: added file. * debian/copyright: new format, updated maintainer information. * debian/control: added myself to the uploaders list. * debian/lintian-overrides: added spelling-error-in-binary. * debian/rules: include hardening options. - debian/lintian-overrides: added hardening-no-relro. * debian/rules: added build-arch, build-indep. * Now quilt 3.0 compatible. * debian/control: added Vcs-git and Vcs-Browser tags. * debian/control: make extended description longer. * debian/component.d/60muc: added status option. * Bump standards version to 3.9.4. * Debhelper dependency to >9. - debian/compat: updated to 9. * Added debian/watch file. * Added mu-conference man page. + debian/mu-conference.1 file added. + debian/manpage file added. * Added patch for CFLAGS in src/Makefile to make hardening work. -- Willem van den Akker Wed, 24 Jul 2013 18:07:35 +0200 jabber-muc (0.8-3) unstable; urgency=low * jabberd2-muc.xml: - Changed default jabberd2 port to connect to. - Give a proper path to the room log dir. * prerm: - Prevent an exit if invoke-rc.d fails. * postinst: - Give proper owner and permissions to the room dir and room log dir. -- Jorge Salamero Sanz Mon, 28 Dec 2009 17:45:43 +0100 jabber-muc (0.8-2) unstable; urgency=low * We get rid of dpkg-statoverride and we use chmod an chown instead. * Nicer fix for the pidpath creation and chown. -- Jorge Salamero Sanz Fri, 17 Apr 2009 20:17:19 +0100 jabber-muc (0.8-1) unstable; urgency=low * New Upstream Version (Closes: #341499). * New maintainer Debian XMPP Maintainers. * Debian packaging has been completly rewritten supporting only jabberd2. -- Jorge Salamero Sanz Wed, 15 Apr 2009 15:35:06 +0100 jabber-muc (0.6.0-2.1) unstable; urgency=low * Non-maintainer upload. * debian/rules - fixed FTBFS if built twice in a row (Closes: #424423) * debian/patches/20_bts-457730.dpatch - added from BTS (Closes: #457730) -- Sandro Tosi Wed, 09 Apr 2008 18:51:13 +0200 jabber-muc (0.6.0-2) unstable; urgency=low * added needed build depends on libglib2.0-dev (Closes: #228877) -- Jamin W. Collins Wed, 21 Jan 2004 21:54:57 -0700 jabber-muc (0.6.0-1) unstable; urgency=low * new upstream version (Closes: #228148) -- Jamin W. Collins Fri, 16 Jan 2004 15:27:01 -0700 jabber-muc (0.5.2-7) unstable; urgency=low * added support for get-orig-source debian/rules target * updated standards version to 3.6.1.0 * daemon now runs as jabber:adm like current jabber server * tightened default permissions on jabber-muc.xml - now owned by jabber:adm and 0640 -- Jamin W. Collins Fri, 17 Oct 2003 15:56:24 -0600 jabber-muc (0.5.2-6) unstable; urgency=low * updated postinst to start the service * updated prerm to stop the service * added /etc/default file to control whether service starts -- Jamin W. Collins Fri, 29 Aug 2003 10:12:11 -0600 jabber-muc (0.5.2-5) unstable; urgency=low * updated jabber.d script to start process as daemon * updated jabber.d script to call stop/start for restart -- Jamin W. Collins Thu, 7 Aug 2003 14:29:02 -0600 jabber-muc (0.5.2-4) unstable; urgency=low * updated postrm to check for and remove potentially emptry directories * updated jabber.d script to - handle stale pid files - handle stop request when not started - ensure running process stops -- Jamin W. Collins Wed, 23 Jul 2003 12:27:26 -0600 jabber-muc (0.5.2-3) unstable; urgency=low * updated default configuration to run as external process -- Jamin W. Collins Fri, 4 Jul 2003 12:23:46 -0600 jabber-muc (0.5.2-2) unstable; urgency=low * conference module packaged (Closes: #156507) -- Jamin W. Collins Sat, 31 May 2003 12:47:53 -0600 jabber-muc (0.5.2-1) unstable; urgency=low * new upstream version -- Jamin W. Collins Fri, 30 May 2003 16:29:48 -0600 jabber-muc (0.5.1-1) unstable; urgency=low * Initial Release. -- Jamin W. Collins Sat, 19 Apr 2003 13:03:33 -0600 debian/postrm0000644000000000000000000000171212173760263010445 0ustar #!/bin/sh set -e case "$1" in purge) # remove the user database rm -f /var/spool/jabber-muc/rooms/* # the application should remove these on exit rm -f /var/run/jabberd2/muc.pid # need better way of detecting whether these exist or not rm -f /var/log/jabberd2/mu-conference.log* # remove any empty directories for DIR in /var/spool/jabber-muc/rooms /var/spool/jabber-muc \ /etc/jabberd2/component.d /etc/jabberd2 \ /var/run/jabberd2 /var/log/jabberd2; do if [ -d ${DIR} ]; then #rmdir -p --ignore-fail-on-non-empty ${DIR} > /dev/null 2>&1 rmdir --ignore-fail-on-non-empty ${DIR} > /dev/null 2>&1 fi done ;; remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) ;; *) echo "postrm called with unknown argument \`$1'" >&2 exit 1 ;; esac #DEBHELPER# exit 0 debian/install0000644000000000000000000000015212173760263010564 0ustar debian/component.d/60muc etc/jabberd2/component.d debian/muc.xml etc/jabberd2 src/mu-conference usr/sbin debian/dirs0000644000000000000000000000022312173760263010056 0ustar usr/sbin usr/share/doc/jabber-muc etc/default etc/jabberd2/component.d var/log/jabberd2 var/spool/jabber-muc/rooms var/spool/jabber-muc/rooms-logs debian/prerm0000644000000000000000000000047212173760263010250 0ustar #!/bin/sh set -e case "$1" in remove|upgrade) if [ -f /var/run/jabberd2/muc.pid ]; then invoke-rc.d jabberd2 stop muc || true fi ;; deconfigure|failed-upgrade) ;; *) echo "prerm called with unknown argument \`$1'" >&2 exit 1 ;; esac #DEBHELPER# exit 0 debian/mu-conference.10000644000000000000000000000240212173760263012003 0ustar .\" Hey, EMACS: -*- nroff -*- .\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) .TH MU-CONFERENCE 1 "January 19, 2013" .SH NAME mu-conference - a component for a Jabber server. .SH SYNOPSIS .B mu-conference .SH DESCRIPTION This manual page documents briefly .B mu-conference (jabber-muc). This manual page was written for the Debian GNU/Linux distribution because the original program does not have a manual page. It does have documentation in a README file, which is available as /usr/share/doc/jabber-muc/README.gz. There is also has extensive HTML documentation about the XEP-0045 protocol which is available at http://xmpp.ort/extensions/xep-0045.html. .PP mu-conference is a component for a Jabber server. It provides an implementation of XEP-0045 which allow the creation of multi-users chat. .PP mu-conference is a part of the jabberd2 services and is started by the jabberd2 service. .SH AUTHOR mu-conference was written by David Sutton and Gregoire Menuel . This manual page was written by Willem van den Akker , for the Debian GNU/Linux system.