Commit Graph

12 Commits

Author SHA1 Message Date
Jan Pavlinec 299e5b0a9b
treewide: add PKG_CPE_ID for better cvescanner coverage
Signed-off-by: Jan Pavlinec <jan.pavlinec@nic.cz>
2019-09-17 12:40:26 +02:00
W. Michael Petullo b39f8980a4 pigeonhole: update to 0.5.5
Signed-off-by: W. Michael Petullo <mike@flyn.org>
2019-03-16 17:12:46 -04:00
W. Michael Petullo 3ae5619974 pigeonhole: update to 0.5.4
Signed-off-by: W. Michael Petullo <mike@flyn.org>
2018-12-02 09:56:41 -05:00
Daniel F. Dickinson 2b7531ad9f doveco: pigeonhole: Use stock dovecot dir locations
We move dovecot libexec binaries and modules (including the package
pigeonhole) to their standard locations.  This is okay for libexec
because it was added to core prior to 17.04 release.  Moving the
binaries normally in libexec eliminates the reason the modules were in an
unusual directory, which is that there were conflicts with
libexec binaries that were in lib, which the modules normally use.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-08-19 14:35:38 -04:00
Daniel F. Dickinson f0fb968346 dovecot: Fix managesieve-login needs libdovecot-login
When trying to use managesieve my MUA complained sieve wasn't supported.
On investigation dovecot logs the following could be seen:

    Aug 16 00:28:44 managesieve-login: Fatal: master:
      service(managesieve-login): child 1430 returned error 127
    Aug 16 00:31:32 managesieve-login: Error: Error loading shared
      library libdovecot-login.so.0: No such file or directory
      (needed by /usr/lib/dovecot/managesieve-login)
    Aug 16 00:31:32 managesieve-login: Error: Error loading
      shared library libdovecot.so.0: No such file or directory
      (needed by /usr/lib/dovecot/managesieve-login)
    Aug 16 00:31:32 managesieve-login: Error: Error relocating
      /usr/lib/dovecot/managesieve-login: net_ip2addr: symbol not found

The issue (verified with readelf on non-working build and build with my fix)
is that there is no RPATH information in the pigeonhole binaries (like
managesieve-login).

The dovecot-config that is 'installed' in the staging dir
assumes that plugins will be built on the same host as the installed files.
The 'installed' dovecot-config (partial) looks like:

LIBDOVECOT='-L/usr/lib/dovecot -ldovecot'
LIBDOVECOT_LOGIN='-ldovecot-login -L/home/user/Build/openwrt/openwrt-ath79/staging_dir/target-mips_24kc_musl/usr/lib -lssl -lcrypto'
LIBDOVECOT_SQL=-ldovecot-sql
LIBDOVECOT_COMPRESS=-ldovecot-compression
LIBDOVECOT_LDA=-ldovecot-lda
LIBDOVECOT_STORAGE='-ldovecot-storage '
LIBDOVECOT_DSYNC=-ldovecot-dsync
LIBDOVECOT_LIBFTS=-ldovecot-fts

The solution I used was to modify dovecot-config to add the rpath to
DOVECOT_BINARY_LDFLAGS, and to replace references to host directories
with staging_dir directories.

This results in RPATH being added as it needs to be, and results in a working
version of dovecot+pigeonhole.

NB: I've also touched package version of pigeonhole as this change in dovecot
results in (needed) binary changes for pigeonhole.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-08-19 14:35:23 -04:00
Val Kulkov 560485d19d dovecot-pigeonhole: fix compilation with full language support
If the full language support is enabled (CONFIG_BUILD_NLS=y),
compilation fails on undefined references to libiconv,
libiconv_open and libiconv_closed. Including nls.mk into
the package's Makefile fixes the problem.

Signed-off-by: Val Kulkov <val.kulkov@gmail.com>
2018-07-20 20:19:13 -04:00
W. Michael Petullo 46388f1c24 pigeonhole: update to 0.5.2
Signed-off-by: W. Michael Petullo <mike@flyn.org>
2018-07-09 14:06:41 -04:00
W. Michael Petullo 56584384d4 pigeonhole: update to 0.5.1
Signed-off-by: W. Michael Petullo <mike@flyn.org>
2018-06-10 14:47:28 -04:00
W. Michael Petullo 842fa46c23 pigeonhole: update to 0.4.21
Signed-off-by: W. Michael Petullo <mike@flyn.org>
2018-01-07 21:18:11 -05:00
Val Kulkov 6c6a40ab57 pigeonhole: fix runtime dependency on dovecot's ABI
Closes #5062. With ABI_VERSION declaration in dovecot's Makefile
introduced in PR #5182, pigeonhole plugin will now be rebuilt on every
dovecot upgrade. To announce the rebuilt pigeonhole plugin to opkg,
introduce a different model of version numbering. The new version
numbering now includes both dovecot and pigeonhole plugin version
numbers. Therefore, the rebuilt pigeonhole plugin will be visible to
opkg whenever dovecot or pigeonhole plugin version changes.

Rename "pigeonhole" to "dovecot-pigeonhole". There are several reasons
for renaming the package:

1. pigeonhole is a plugin. There seems to be a convention to name
plugins by adding corresponding suffixes to the parent package name,
such as lua-*, luci-*, php7-mod-*, perlbase-*, transmission-* etc.

2. When named as "dovecot-pigeonhole", the pigeonhole plugin is
displayed right next to dovecot in config manager ("make menuconfig")
and is therefore highly visible to anyone who explores the available
modules for dovecot.

3. When named as "dovecot-pigeonhole", the package version number
consisting of both dovecot and pigeonhole version numbers makes more
sense: "dovecot-pigeonhole_2.2.33.2-0.4.20-2" looks more comprehensible
than "pigeonhole_2.2.33.2-0.4.20-2", however admittedly both variants
look rather ugly.

Add ManageSieve to the package. Adding managesieve-login and its
libraries increases the size of the package by about 11% from 702061
bytes to 781294 bytes on the bcm53xx platform. As dovecot is unlikely
to be used on a low-end LEDE/OpenWrt box, the addition of ~80KB to
the package size is not likely to make a noticeable difference but it
will add the capability to use pigeonhole plugin for dovecot with
systems that talk ManageSieve, such as the RoundCube.

Signed-off-by: Val Kulkov <val.kulkov@gmail.com>
2017-11-28 02:00:42 -05:00
Lucian Cristian 6b457b8e97 pigeonhole: update to 0.4.20
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2017-08-28 17:12:05 +03:00
W. Michael Petullo cf1e6c9ba9 pigeonhole: new package
Signed-off-by: W. Michael Petullo <mike@flyn.org>
2017-07-04 21:18:45 -04:00