Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:ghostlyrat
prosody
prosody.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File prosody.spec of Package prosody
# # spec file for package prosody # # Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %if 0%{?suse_version} > 1230 || 0%{?rhel_version} > 600 || 0%{?centos_version} > 600 || 0%{?fedora_version} >= 20 || 0%{?el7}%{?fc20}%{?fc21}%{?fc22}%{?fc23}%{?fc24}%{?fc25} %bcond_without systemd %define _piddir /run %else %bcond_with systemd %define _piddir %{_localstatedir}/run %endif %{!?_tmpfilesdir: %global _tmpfilesdir /usr/lib/tmpfiles.d } Name: prosody Version: 0.9.11 Release: 1.1 Summary: Modern flexible communications server for Jabber/XMPP License: MIT Group: Productivity/Networking/Other Url: http://prosody.im/downloads/source Source: http://prosody.im/downloads/source/%{name}-%{version}.tar.gz Source2: http://prosody.im/downloads/source/%{name}-%{version}.tar.gz.asc Source3: %{name}.keyring Source4: %{name}.service Source5: prosody.tmpfile Source101: prosody.init Patch1: prosody-configure.patch Patch2: prosody-makefile.patch # PATCH-FIX-OPENSUSE marguerite@opensuse.org - enable Unix features Patch3: prosody-cfg.patch BuildRequires: libidn-devel BuildRequires: libopenssl-devel Requires: lua51-luaexpat Requires: lua51-luafilesystem Requires: lua51-luasec Requires: lua51-luasocket Requires(pre): permissions Requires(pre): pwdutils Recommends: lua51-luadbi Recommends: lua51-luaevent Recommends: lua51-zlib BuildRoot: %{_tmppath}/%{name}-%{version}-build #%if 0%{?suse_version} <= 1210 #BuildRequires: lua-devel #BuildRequires: openssl #Requires: lua #%else BuildRequires: lua51-devel Requires: lua51 #%endif %if %{with systemd} %{?systemd_requires} BuildRequires: systemd %endif %description Prosody is a flexible communications server for Jabber/XMPP written in Lua. It aims to be easy to use, and light on resources. For developers it aims to be easy to extend and give a flexible system on which to rapidly develop added functionality, or prototype new protocols. %prep %setup -q %patch1 %patch2 %patch3 -p1 sed -i 's|@@LIBDIR@@|%{_libdir}|g;s|@@INCLUDEDIR@@|%{_includedir}|g;' configure sed -i 's|@@LIBDIR@@|%{_libdir}|g;s|@@INCLUDEDIR@@|%{_includedir}|g;' Makefile sed -i 's|@@PIDDIR@@|%{_piddir}|g;' prosody.cfg.lua.dist %build # CFLAGS need to keep -fPIC for shared modules ./configure --lua-suffix="" --cflags="%{optflags} -fPIC" --c-compiler=gcc make %{?_smp_mflags} %install make DESTDIR=%{buildroot} install %{?_smp_mflags} %if %{with systemd} install -D -m 0644 %{SOURCE4} %{buildroot}%{_unitdir}/%{name}.service # tmpfiles.d install -D -m 0644 %{SOURCE5} %{buildroot}%{_tmpfilesdir}/%{name}.conf mkdir -p %{buildroot}%{_sbindir} ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcprosody %else install -m 755 %{SOURCE101} $RPM_BUILD_ROOT/etc/init.d/%{name} %endif #systemd # mkdir read/write by prosody mkdir -p %{buildroot}%{_piddir}/prosody mkdir -p %{buildroot}%{_localstatedir}/log/prosody # clean up for rpmlint chmod 644 %{buildroot}/%{_libdir}/prosody/prosody.version chmod -R g+rX,o= %{buildroot}%{_sysconfdir}/prosody %pre getent group %{name} > /dev/null || groupadd -r %{name} getent passwd %{name} > /dev/null || useradd -r -g %{name} -d %{_localstatedir}/lib/%{name} -s/sbin/nologin -c "user for %{name}" %{name} %if %{with systemd} %service_add_pre %{name}.service %post %service_add_post %{name}.service systemd-tmpfiles --create %{_tmpfilesdir}/%{name}.conf ||: %preun %service_del_preun %{name}.service %postun %service_del_postun %{name}.service %endif %files %defattr(-,root,root) %config %attr(-,root,prosody) %{_sysconfdir}/prosody/ %{_bindir}/prosody %{_bindir}/prosodyctl %dir %{_libdir}/prosody %dir %{_libdir}/prosody/core %{_libdir}/prosody/core/certmanager.lua %{_libdir}/prosody/core/configmanager.lua %{_libdir}/prosody/core/hostmanager.lua %{_libdir}/prosody/core/loggingmanager.lua %{_libdir}/prosody/core/moduleapi.lua %{_libdir}/prosody/core/modulemanager.lua %{_libdir}/prosody/core/portmanager.lua %{_libdir}/prosody/core/rostermanager.lua %{_libdir}/prosody/core/s2smanager.lua %{_libdir}/prosody/core/sessionmanager.lua %{_libdir}/prosody/core/stanza_router.lua %{_libdir}/prosody/core/storagemanager.lua %{_libdir}/prosody/core/usermanager.lua %dir %{_libdir}/prosody/modules %dir %{_libdir}/prosody/modules/adhoc %{_libdir}/prosody/modules/adhoc/adhoc.lib.lua %{_libdir}/prosody/modules/adhoc/mod_adhoc.lua %{_libdir}/prosody/modules/mod_admin_adhoc.lua %{_libdir}/prosody/modules/mod_admin_telnet.lua %{_libdir}/prosody/modules/mod_announce.lua %{_libdir}/prosody/modules/mod_auth_anonymous.lua %{_libdir}/prosody/modules/mod_auth_cyrus.lua %{_libdir}/prosody/modules/mod_auth_internal_hashed.lua %{_libdir}/prosody/modules/mod_auth_internal_plain.lua %{_libdir}/prosody/modules/mod_bosh.lua %{_libdir}/prosody/modules/mod_c2s.lua %{_libdir}/prosody/modules/mod_component.lua %{_libdir}/prosody/modules/mod_compression.lua %{_libdir}/prosody/modules/mod_dialback.lua %{_libdir}/prosody/modules/mod_disco.lua %{_libdir}/prosody/modules/mod_groups.lua %{_libdir}/prosody/modules/mod_http.lua %{_libdir}/prosody/modules/mod_http_errors.lua %{_libdir}/prosody/modules/mod_http_files.lua %{_libdir}/prosody/modules/mod_iq.lua %{_libdir}/prosody/modules/mod_lastactivity.lua %{_libdir}/prosody/modules/mod_legacyauth.lua %{_libdir}/prosody/modules/mod_message.lua %{_libdir}/prosody/modules/mod_motd.lua %{_libdir}/prosody/modules/mod_net_multiplex.lua %{_libdir}/prosody/modules/mod_offline.lua %{_libdir}/prosody/modules/mod_pep.lua %{_libdir}/prosody/modules/mod_ping.lua %{_libdir}/prosody/modules/mod_posix.lua %{_libdir}/prosody/modules/mod_presence.lua %{_libdir}/prosody/modules/mod_privacy.lua %{_libdir}/prosody/modules/mod_private.lua %{_libdir}/prosody/modules/mod_proxy65.lua %{_libdir}/prosody/modules/mod_pubsub.lua %{_libdir}/prosody/modules/mod_register.lua %{_libdir}/prosody/modules/mod_roster.lua %dir %{_libdir}/prosody/modules/mod_s2s %{_libdir}/prosody/modules/mod_s2s/mod_s2s.lua %{_libdir}/prosody/modules/mod_s2s/s2sout.lib.lua %{_libdir}/prosody/modules/mod_saslauth.lua %{_libdir}/prosody/modules/mod_storage_internal.lua %{_libdir}/prosody/modules/mod_storage_none.lua %{_libdir}/prosody/modules/mod_storage_sql.lua %{_libdir}/prosody/modules/mod_time.lua %{_libdir}/prosody/modules/mod_tls.lua %{_libdir}/prosody/modules/mod_uptime.lua %{_libdir}/prosody/modules/mod_vcard.lua %{_libdir}/prosody/modules/mod_version.lua %{_libdir}/prosody/modules/mod_watchregistrations.lua %{_libdir}/prosody/modules/mod_welcome.lua %dir %{_libdir}/prosody/modules/muc %{_libdir}/prosody/modules/muc/mod_muc.lua %{_libdir}/prosody/modules/muc/muc.lib.lua %{_libdir}/prosody/modules/sql.lib.lua %dir %{_libdir}/prosody/modules/storage %{_libdir}/prosody/modules/storage/mod_xep0227.lua %{_libdir}/prosody/modules/storage/sqlbasic.lib.lua %{_libdir}/prosody/modules/storage/xep227store.lib.lua %dir %{_libdir}/prosody/net %{_libdir}/prosody/net/adns.lua %{_libdir}/prosody/net/connlisteners.lua %{_libdir}/prosody/net/dns.lua %dir %{_libdir}/prosody/net/http %{_libdir}/prosody/net/http/codes.lua %{_libdir}/prosody/net/http/parser.lua %{_libdir}/prosody/net/http/server.lua %{_libdir}/prosody/net/http.lua %{_libdir}/prosody/net/httpserver.lua %{_libdir}/prosody/net/server_event.lua %{_libdir}/prosody/net/server.lua %{_libdir}/prosody/net/server_select.lua %{_libdir}/prosody/prosody.version %dir %{_libdir}/prosody/util %{_libdir}/prosody/util/adhoc.lua %{_libdir}/prosody/util/array.lua %{_libdir}/prosody/util/caps.lua %{_libdir}/prosody/util/dataforms.lua %{_libdir}/prosody/util/datamanager.lua %{_libdir}/prosody/util/datetime.lua %{_libdir}/prosody/util/debug.lua %{_libdir}/prosody/util/dependencies.lua %{_libdir}/prosody/util/encodings.so %{_libdir}/prosody/util/envload.lua %{_libdir}/prosody/util/events.lua %{_libdir}/prosody/util/filters.lua %{_libdir}/prosody/util/hashes.so %{_libdir}/prosody/util/helpers.lua %{_libdir}/prosody/util/hmac.lua %{_libdir}/prosody/util/http.lua %{_libdir}/prosody/util/import.lua %{_libdir}/prosody/util/ip.lua %{_libdir}/prosody/util/iterators.lua %{_libdir}/prosody/util/jid.lua %{_libdir}/prosody/util/json.lua %{_libdir}/prosody/util/logger.lua %{_libdir}/prosody/util/multitable.lua %{_libdir}/prosody/util/net.so %{_libdir}/prosody/util/openssl.lua %{_libdir}/prosody/util/pluginloader.lua %{_libdir}/prosody/util/pposix.so %{_libdir}/prosody/util/prosodyctl.lua %{_libdir}/prosody/util/pubsub.lua %{_libdir}/prosody/util/rfc6724.lua %dir %{_libdir}/prosody/util/sasl %{_libdir}/prosody/util/sasl/anonymous.lua %{_libdir}/prosody/util/sasl_cyrus.lua %{_libdir}/prosody/util/sasl/digest-md5.lua %{_libdir}/prosody/util/sasl.lua %{_libdir}/prosody/util/sasl/plain.lua %{_libdir}/prosody/util/sasl/scram.lua %{_libdir}/prosody/util/serialization.lua %{_libdir}/prosody/util/set.lua %{_libdir}/prosody/util/signal.so %{_libdir}/prosody/util/sql.lua %{_libdir}/prosody/util/stanza.lua %{_libdir}/prosody/util/template.lua %{_libdir}/prosody/util/termcolours.lua %{_libdir}/prosody/util/throttle.lua %{_libdir}/prosody/util/timer.lua %{_libdir}/prosody/util/uuid.lua %{_libdir}/prosody/util/watchdog.lua %{_libdir}/prosody/util/x509.lua %{_libdir}/prosody/util/xml.lua %{_libdir}/prosody/util/xmppstream.lua %{_mandir}/man1/prosodyctl.1* %dir %attr(-,prosody,prosody) %{_localstatedir}/lib/prosody %dir %attr(-,prosody,prosody) %{_localstatedir}/log/prosody %if %{with systemd} %{_sbindir}/rcprosody %{_unitdir}/%{name}.service %{_tmpfilesdir}/%{name}.conf %dir %attr(0755,prosody,prosody) %ghost %{_piddir}/prosody %else %dir %attr(0755,prosody,prosody) %{_piddir}/prosody /etc/init.d/%{name} %endif # systemd %changelog * Fri Nov 4 2016 mvetter@suse.com - Update to 0.9.11: * HTTP parser: Improve buffering of incoming HTTP data and add size limits (#603) * Sessionmanager: Fix for an issue which caused people to be kicked from conferences if mod_smacks was enabled (#648) * Dependencies: Workaround for compatibility with LuaSec 0.6 (#749) * MUC: Accept missing form as "instant room" request (#377) * C2S: Fix issues with destroying disconnected connections (#590), (#641) * mod_privacy: Fix selection of the top resource(s) #694 * mod_presence: Make sure both users get each others presence after adding each other (#673) * mod_http_files: Fix traceback when serving a non-wildcard path (#611) * mod_http_files: Preserve a trailing slash in paths (#639) * util.datamanager: Fix error handling (#632) * net.server_event: Fix internal socket API to allow writing from socket.ondrain callback (#661) * net.server_event: Fix timeout (commit 1909bde0e79f) * net.server_event: Fix traceback due to write during TLS handshake (commit c774622ad9db) * net.server_event: Fix buffer length check (commit 206f9b0485ad) - Remove prosody-upstream-0.9-branch-fixes.patch: included in update * Tue Oct 11 2016 mvetter@suse.com - Change license to MIT * Thu Sep 15 2016 mvetter@suse.com - Add prosody-upstream-0.9-branch-fixes.patch: Upstream pushes all fixes for a certain release to its own branch. See: https://prosody.im/files/branches_explained.png After some time, mostly when a security bug is found, they do a new minor release. The fixes however are often needed to make prosody run smoothly with its community modules. Thus I monitor them and add the patch set. It's only fixes no new features. * Fri Jun 17 2016 mvetter@suse.com - Remove prosody-rpmlintrc: Not needed since last cleanup * Mon May 23 2016 mvetter@suse.com - Add: * prosody-0.9.10.tar.gz.asc * prosody.keyring containing Matthew and Zashs keys - Enable source verification * Mon May 23 2016 mvetter@suse.com - Move rcprosody into systemd section until we have proper sysvinit support * Fri May 20 2016 mvetter@suse.com - Pass optflags to configure - Install service file and create directories if needed in one run - Dont strip debug symbols - Dont need to verify permissions since we set them - Create systemd tempfile properly - Install config files with file glob - Remove sysvinit stuff - Cleanup systemd conditionals * Tue Apr 26 2016 mvetter@suse.com - Use less rights * Thu Feb 11 2016 mvetter@suse.com - Update to 0.9.10 Security: * mod_dialback: Adopt key generation algorithm from XEP-0185, to prevent impersonation attacks (CVE-2016-0756) Fixes and improvements: * Startup: Open /dev/urandom read-only, to fix a failure to start on some systems * Networking: Improve handling of the 'select' network backend running out of file descriptors Minor changes: * Networking: Increase default internal read size to prevent connections stalling with LuaEvent * DNS: Discard queries that failed to send due to connection errors * c2s, s2s: Lower priority of shutdown handler, so that modules such as MUC can always send shutdown notifications to (remote) users * Thu Feb 11 2016 mvetter@suse.com - Update to 0.9.9 Security fixes: * Fix path traversal vulnerability in mod_http_files (CVE-2016-1231) * Fix use of weak PRNG in generation of dialback secrets (CVE-2016-1232) Bugs: * Improve handling of CNAME records in DNS * Fix traceback when deleting a user in some configurations (issue #496) * MUC: restrict_room_creation could prevent users from joining rooms (issue #458) * MUC: fix occasional dropping of iq stanzas sent privately between occupants * Fix a potential memory leak in mod_pep Additions: * Add http:list() command to telnet to view active HTTP services * IPv4/v6 address selection code for outgoing s2s * Add support for importing SCRAM hashes from ejabberd * Sat May 2 2015 nekolayer@yandex.ru - fix broken prosody-makefile.patch for correct lib path [bnc#926932] * Tue Apr 7 2015 g.bluehut@gmail.com - Clean up spec file - Update to 0.9.8 * Ensure only valid UTF-8 is passed to libidn * Fix traceback caused when DNS server IP is unroutable * HTTP client: More robust handling of chunked encoding across packet boundaries * Stanza router: Fix handling of 'error' <iq>'s with multiple children * c2s: Fix error reply when clients try to bind multiple resources on the same stream * s2s: Ensure to/from attributes are always present on stream headers, even if empty * Build scripts: Add –libdir option to ./configure to simplify building on some platforms * Fix traceback in datamanager when used outside of Prosody * mod_admin_telnet: Fix potential traceback in server:memory() command * util.stanza: Don't XML-escape whitespace * prosodyctl: Fix traceback in 'about' command with LuaRocks 2.2.0 * Mon Oct 20 2014 i@marguerite.su - update version 0.9.6 * certmanager, net.http: Disable SSLv3 by default * net.http.parser: Support status code 101 and allow handling of the received data by plugins * util.filters: Ignore filters being added twice (fixes issues on removal, i.e. when some plugins are reloaded/unloaded) * mod_s2s: Close offending s2s streams missing an 'id' attribute with a stream error instead of throwing an unhandled error * Networking API: Add 'ondetach' callback for listener objects, to prevent leaks when connections have their listener changed * core.stanza_router: Stricter validation of stanzas * mod_admin_adhoc: Mark 'accountjids' field as required in 'end user sessions' command * mod_admin_adhoc: Add required to field in user deletion form too * net.dns: Avoid duplicate cache entries * util.stanza: Escape newlines and tabs (\r\n\t) when serializing stanzas. * util/dataforms: Make sure we iterate over field tags only * mod_s2s: Capitalize log message * mod_pubsub: Fix error type of 'forbidden' (change from 'cancel' to 'auth') * Wed Aug 20 2014 i@marguerite.su - install pid to %%%%{_piddir}, fix for factory * Wed Aug 20 2014 i@marguerite.su - update version 0.9.4 * Compression: Disallow compression on unauthenticated streams * Core: Limit default read size and maximum stanza size * Core: Enable SASL EXTERNAL by default for component s2s * S2S: Warn if `s2s_secure_auth` and `s2s_require_encryption` have been set in conflicting ways * S2S: Warn if no local network addresses were found, preventing successful s2s * MUC: Fix traceback when a non-occupant tried to change an occupant's role * MUC: API: Fire an event when temporary rooms are destroyed after the last person leaves * Telnet: Fixed traceback when listing users * Telnet: Apply normalization to JIDs in user management commands * HTTP: Fix directory detection in file server on Windows * Plugins: Fix paths on Windows * MOTD: Don't strip blank lines from the message provided in the config * prosodyctl: Better error reporting when generating certificates * Makefile: Improve FreeBSD compatibility * Multiple fixes to our migration tools, and support for importing MUCs from ejabberd * Fri Feb 28 2014 i@marguerite.su - fix bnc#865781 * /var/lib/prosody should be owned by prosody:prosody. * Wed Feb 26 2014 i@marguerite.su - update version 0.9.3 * A config file passed as command line argument is no longer forgotten when config is reloaded * MUC: Allow admins to always bypass restrict_room_creation * Strip trailing '.' when normalizing hostnames * HTTP: Prevent silent connection failures * Components: Alow easier overriding of component authentication by plugins * Components: Enable TCP keepalives * Migrator: Better error reporting and improved robustness * S2S: Include IP in log messages, if hostname is unavailable * TLS: Log error when initialization fails * Tue Feb 4 2014 i@marguerite.su - "After" mysql.service, as if it starts before mysql, prosody can read account infos. * Thu Jan 23 2014 i@marguerite.su - update to 0.8.2 * IPv6 support for c2s, s2s and all other services (e.g. HTTP) * Server-to-server authentication using certificates (SASL EXTERNAL) * A new HTTP subsystem, supporting virtual hosts, and fully reloadable modules * Client and server connections are now handled by modules: mod_c2s, mod_s2s * mod_pubsub: Basic pubsub service (some features not yet implemented) * prosodyctl about - show information about a Prosody installation * prosodyctl cert - command to generate XMPP certificates and CSRs * Many very nice enhancements to our module API * MUC: Configurable per-room history length * MUC: Plugins can now extend the room configuration form - if you're upgrading from 0.8.x or older, please read: * http://prosody.im/doc/release/0.9.0#upgrading * Fri Jun 28 2013 i@marguerite.su - add systemd service - fix CFG_SOURCEDIR in /usr/bin/{prosody,prosodyctl} - create prosody:prosody. * Sat Oct 1 2011 t1locs@gmail.com - prosody 0.8.2 has been released and fixes a small handful of bugs * Tue Jun 14 2011 florian.leparoux@gmail.com - update to 0.8.1 * Tue Apr 26 2011 florian.leparoux@gmail.com - update to 0.8.0 * Wed Apr 7 2010 stepan@coresystems.de - update to 0.7.0rc1 * Wed Mar 17 2010 florian.leparoux@gmail.com - Fix dependencies * Wed Feb 10 2010 florian.leparoux@gmail.com - Fix dependencies * Sun Jan 24 2010 florian.leparoux@gmail.com - rebuild correctly prosody on openSUSE 11.2 * Tue Dec 29 2009 florian.leparoux@gmail.com - build prosody on openSUSE 11.2
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor