Thu Jul 25 22:48:09 UTC 2019

l/SDL2-2.0.10-x86_64-1.txz:  Upgraded.
l/gmime-3.2.3-x86_64-1.txz:  Upgraded.
  Shared library .so-version bump.
n/NetworkManager-1.18.2-x86_64-1.txz:  Upgraded.
n/dhcpcd-8.0.1-x86_64-1.txz:  Upgraded.
n/openldap-client-2.4.48-x86_64-1.txz:  Upgraded.
xap/pan-0.145-x86_64-2.txz:  Rebuilt.
  Recompiled against gmime-3.2.3.
This commit is contained in:
Patrick J Volkerding 2019-07-25 22:48:09 +00:00 committed by Eric Hameleers
parent 652e0a15cf
commit 8b5c0b991d
23 changed files with 948 additions and 674 deletions

View file

@ -11,9 +11,27 @@
<description>Tracking Slackware development in git.</description>
<language>en-us</language>
<id xmlns="http://www.w3.org/2005/Atom">urn:uuid:c964f45e-6732-11e8-bbe5-107b4450212f</id>
<pubDate>Wed, 24 Jul 2019 19:27:45 GMT</pubDate>
<lastBuildDate>Thu, 25 Jul 2019 06:59:56 GMT</lastBuildDate>
<pubDate>Thu, 25 Jul 2019 22:48:09 GMT</pubDate>
<lastBuildDate>Fri, 26 Jul 2019 06:59:38 GMT</lastBuildDate>
<generator>maintain_current_git.sh v 1.11</generator>
<item>
<title>Thu, 25 Jul 2019 22:48:09 GMT</title>
<pubDate>Thu, 25 Jul 2019 22:48:09 GMT</pubDate>
<link>https://git.slackware.nl/current/tag/?h=20190725224809</link>
<guid isPermaLink="false">20190725224809</guid>
<description>
<![CDATA[<pre>
l/SDL2-2.0.10-x86_64-1.txz: Upgraded.
l/gmime-3.2.3-x86_64-1.txz: Upgraded.
Shared library .so-version bump.
n/NetworkManager-1.18.2-x86_64-1.txz: Upgraded.
n/dhcpcd-8.0.1-x86_64-1.txz: Upgraded.
n/openldap-client-2.4.48-x86_64-1.txz: Upgraded.
xap/pan-0.145-x86_64-2.txz: Rebuilt.
Recompiled against gmime-3.2.3.
</pre>]]>
</description>
</item>
<item>
<title>Wed, 24 Jul 2019 19:27:45 GMT</title>
<pubDate>Wed, 24 Jul 2019 19:27:45 GMT</pubDate>

View file

@ -1,3 +1,13 @@
Thu Jul 25 22:48:09 UTC 2019
l/SDL2-2.0.10-x86_64-1.txz: Upgraded.
l/gmime-3.2.3-x86_64-1.txz: Upgraded.
Shared library .so-version bump.
n/NetworkManager-1.18.2-x86_64-1.txz: Upgraded.
n/dhcpcd-8.0.1-x86_64-1.txz: Upgraded.
n/openldap-client-2.4.48-x86_64-1.txz: Upgraded.
xap/pan-0.145-x86_64-2.txz: Rebuilt.
Recompiled against gmime-3.2.3.
+--------------------------+
Wed Jul 24 19:27:45 UTC 2019
d/python-pip-19.2.1-x86_64-1.txz: Upgraded.
d/subversion-1.12.2-x86_64-1.txz: Upgraded.

File diff suppressed because it is too large Load diff

View file

@ -499,7 +499,6 @@ gzip ./source/n/nn/nn_6.7.3-10.diff
gzip ./source/n/nn/nn.badnntphost.diff
gzip ./source/n/nn/m-x86_64.h
gzip ./source/n/nn/NNTP
gzip ./source/n/NetworkManager/patches/0000-slackware-use-fqdn.diff
gzip ./source/n/NetworkManager/doinst.sh
gzip ./source/n/netwatch/netwatch.phonemyself.diff
gzip ./source/n/netwatch/netwatch.makefile.diff
@ -992,8 +991,6 @@ gzip ./source/l/gnome-keyring/doinst.sh
gzip ./source/l/libtheora/libtheora-1.1.1.latex.patch
gzip ./source/l/libtheora/libtheora-1.1.1-libpng16.patch
gzip ./source/l/libnl3/doinst.sh
gzip ./source/l/SDL2/SDL2.SDL_syswm.h.diff
gzip ./source/l/SDL2/SDL2.periodic.magnitude.patch
gzip ./source/l/PyQt/PyQt.phonon.diff
gzip ./source/l/pilot-link/pilot-link-0.12.5-redefinePerlsymbols.patch
gzip ./source/l/pilot-link/pilot-link.png14.diff
@ -1131,6 +1128,11 @@ gzip ./source/xap/easytag/easytag.revert.ogg.handle.patch
gzip ./source/xap/easytag/easytag.no.freedb.musicbrainz.org.diff
gzip ./source/xap/easytag/doinst.sh
gzip ./source/xap/gkrellm/gkrellm.theme.defaults.diff
gzip ./source/xap/pan/patches/0004-476b5a62fcda711ce2d7412a310b8182cca6940e.patch
gzip ./source/xap/pan/patches/0001-e5be4d4a1d9d08796c1b5a5c763379383b8c119a.patch
gzip ./source/xap/pan/patches/0000-b9a4154942c932a493736d2292bbae16384e35df.patch
gzip ./source/xap/pan/patches/0003-ddcd5761075a6fb3ef7b768f004fa1e6663cb65e.patch
gzip ./source/xap/pan/patches/0002-50f6c43a698dcc0ba6b490c086a73eeedbdd8a80.patch
gzip ./source/xap/pidgin/fix-gmain_h-compile-error.diff
gzip ./source/xap/pidgin/doinst.sh
gzip ./source/xap/mozilla-firefox/firefox.moz_plugin_path.diff

View file

@ -26,7 +26,7 @@ PKGNAM=eudev
VERSION=${VERSION:-$(echo eudev-*.tar.* | cut -d - -f 2 | rev | cut -f 3- -d . | rev)}
BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j7 "}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then

View file

@ -8,8 +8,8 @@
|-----handy-ruler------------------------------------------------------|
llvm: llvm (LLVM compiler toolkit)
llvm:
llvm: Low Level Virtual Machine is a toolkit for the construction of highly
llvm: optimized compilers, optimizers, and runtime environments.
llvm: LLVM is a toolkit for the construction of highly optimized compilers,
llvm: optimizers, and runtime environments.
llvm:
llvm: This package also includes the clang frontend for the C family of
llvm: languages: C, C++, Objective-C, and Objective-C++

View file

@ -1,42 +0,0 @@
# HG changeset patch
# User Ozkan Sezer <sezeroz@gmail.com>
# Date 1541526624 -10800
# Node ID 244cdac21bcdd0e4a6152ad7c28756bcb39c4aa9
# Parent 50b071ef40ab427420dbe91212473e88c7d42155
fix bug #4362 - SDL_syswm.h with SDL_PROTOTYPES_ONLY broken in C++ mode
diff -r 50b071ef40ab -r 244cdac21bcd include/SDL_syswm.h
--- a/include/SDL_syswm.h Sun Nov 04 21:11:07 2018 -0500
+++ b/include/SDL_syswm.h Tue Nov 06 20:50:24 2018 +0300
@@ -41,9 +41,9 @@
* an unhandled window event occurs. This event is ignored by default, but
* you can enable it with SDL_EventState().
*/
-#ifdef SDL_PROTOTYPES_ONLY
struct SDL_SysWMinfo;
-#else
+
+#if !defined(SDL_PROTOTYPES_ONLY)
#if defined(SDL_VIDEO_DRIVER_WINDOWS)
#ifndef WIN32_LEAN_AND_MEAN
@@ -103,6 +103,8 @@
#if defined(SDL_VIDEO_DRIVER_VIVANTE)
#include "SDL_egl.h"
#endif
+#endif /* SDL_PROTOTYPES_ONLY */
+
#include "begin_code.h"
/* Set up for C function definitions, even when using C++ */
@@ -110,6 +112,7 @@
extern "C" {
#endif
+#if !defined(SDL_PROTOTYPES_ONLY)
/**
* These are the various supported windowing subsystems
*/

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# Copyright 2017, 2018, 2019 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=SDL2
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-4}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@ -78,9 +78,6 @@ rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
zcat $CWD/SDL2.SDL_syswm.h.diff.gz | patch -p1 --verbose || exit 1
zcat $CWD/SDL2.periodic.magnitude.patch.gz | patch -p1 --verbose || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \

View file

@ -1,20 +0,0 @@
# HG changeset patch
# User Ethan Lee <flibitijibibo@flibitijibibo.com>
# Date 1544124378 18000
# Node ID 1f8d0b1afe07d1cef54d05b46770ac2c5c8f0c09
# Parent 99d8b18acf8a2a5f8344150ca55c3b3f382bab2f
Linux Haptic: Fix periodic.magnitude value
diff -r 99d8b18acf8a -r 1f8d0b1afe07 src/haptic/linux/SDL_syshaptic.c
--- a/src/haptic/linux/SDL_syshaptic.c Sat Dec 08 11:22:50 2018 -0800
+++ b/src/haptic/linux/SDL_syshaptic.c Thu Dec 06 14:26:18 2018 -0500
@@ -801,8 +801,7 @@
else if (periodic->type == SDL_HAPTIC_SAWTOOTHDOWN)
dest->u.periodic.waveform = FF_SAW_DOWN;
dest->u.periodic.period = CLAMP(periodic->period);
- /* Linux expects 0-65535, so multiply by 2 */
- dest->u.periodic.magnitude = CLAMP(periodic->magnitude) * 2;
+ dest->u.periodic.magnitude = periodic->magnitude;
dest->u.periodic.offset = periodic->offset;
/* Linux phase is defined in interval "[0x0000, 0x10000[", corresponds with "[0deg, 360deg[" phase shift. */
dest->u.periodic.phase = ((Uint32)periodic->phase * 0x10000U) / 36000;

View file

@ -54,6 +54,8 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
# Work around -Werror failure with gcc-8.2.0.
# NOTE: Until the next glibc release takes care of this issue, this will
# likely need to be updated with every new gcc release's version. Yes, we
@ -125,8 +127,6 @@ CVSVER=${VERSION}${CHECKOUT}
TMP=${TMP:-/tmp}
mkdir -p $TMP
NUMJOBS=${NUMJOBS:-" -j7 "}
# This function fixes a doinst.sh file for x86_64.
# With thanks to Fred Emmott.
fix_doinst() {

View file

@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gmime
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | cut -d - -f 2 | rev | cut -f 3- -d . | rev)}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
BUILD=${BUILD:-4}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then

View file

@ -1,31 +0,0 @@
--- ./src/nm-hostname-manager.c.orig 2017-11-10 09:46:25.000000000 -0600
+++ ./src/nm-hostname-manager.c 2017-11-10 17:42:41.829996568 -0600
@@ -134,8 +134,7 @@
{
gs_free char *contents = NULL;
gs_strfreev char **all_lines = NULL;
- char *tmp;
- guint i, j = 0;
+ guint i = 0;
if (!g_file_get_contents (path, &contents, NULL, NULL))
return NULL;
@@ -145,17 +144,7 @@
g_strstrip (all_lines[i]);
if (all_lines[i][0] == '#' || all_lines[i][0] == '\0')
continue;
- tmp = &all_lines[i][0];
- /* We only want up to the first '.' -- the rest of the */
- /* fqdn is defined in /etc/hosts */
- while (tmp[j] != '\0') {
- if (tmp[j] == '.') {
- tmp[j] = '\0';
- break;
- }
- j++;
- }
- return g_shell_unquote (tmp, NULL);
+ return g_shell_unquote (&all_lines[i][0], NULL);
}
return NULL;
}

View file

@ -1 +0,0 @@
SHA256 (dhcpcd-7.2.3.tar.xz) = 74ab38177548abe968c2abacefffdd97b573acaedd4f77b6c0a54ae38f68566e

View file

@ -0,0 +1 @@
SHA256 (dhcpcd-8.0.1.tar.xz) = 031f4fbef5ad41b44714fec343ff5be898e3e3cd5e7c53d6ef3aaec43cdba931

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# Copyright 2008, 2009, 2010, 2018, 2019 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@ -46,6 +46,8 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@ -94,7 +96,7 @@ CFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux || exit 1
make depend || exit 1
make -j7 || exit 1
make $NUMJOBS || exit 1
make test || exit 1
make install DESTDIR=$PKG || exit 1

View file

@ -15,5 +15,5 @@ openldap-client: the overly complex OSI stack.
openldap-client:
openldap-client: LDAP is often used to provide authentication (such as for email).
openldap-client:
openldap-client: The OpenLDAP homepage is http://www.openldap.org/
openldap-client: Homepage: https://www.openldap.org/
openldap-client:

View file

@ -54,6 +54,8 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
# Where do we look for sources?
cd $(dirname $0) ; SRCDIR=$(pwd)
@ -214,7 +216,7 @@ cd client
--mandir=/usr/man \
--build=$ARCH-slackware-linux \
2>&1 | tee $OUTPUT/configure-${PKGNAM}.log
make -j 7 2>&1 | tee $OUTPUT/make-${PKGNAM}.log
make $NUMJOBS 2>&1 | tee $OUTPUT/make-${PKGNAM}.log
make DESTDIR=$PKG install 2>&1 |tee $OUTPUT/install-${PKGNAM}.log
cd ..
# Then the flam3 (fractal flames) renderer:

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2018, 2019 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=pan
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | cut -d - -f 2 | rev | cut -f 3- -d . | rev)}
BUILD=${BUILD:-1}
BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@ -75,6 +75,13 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
# Upstream patches to fix when using gmime-3:
zcat $CWD/patches/0000-b9a4154942c932a493736d2292bbae16384e35df.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/patches/0001-e5be4d4a1d9d08796c1b5a5c763379383b8c119a.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/patches/0002-50f6c43a698dcc0ba6b490c086a73eeedbdd8a80.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/patches/0003-ddcd5761075a6fb3ef7b768f004fa1e6663cb65e.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/patches/0004-476b5a62fcda711ce2d7412a310b8182cca6940e.patch.gz | patch -p1 --verbose || exit 1
# Configure:
CFLAGS="$SLKCFLAGS" \
./configure \
@ -84,6 +91,7 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--without-gtk3 \
--with-gnutls \
--with-gmime30 \
--with-gmime-crypto \
--with-gtkspell \
--enable-libnotify \

View file

@ -0,0 +1,25 @@
From b9a4154942c932a493736d2292bbae16384e35df Mon Sep 17 00:00:00 2001
From: Federico Cuello <fedux@fedux.com.ar>
Date: Sat, 17 Nov 2018 17:44:49 +0100
Subject: [PATCH] Fix ypart begin for bpf ranges
It was creating yparts with begin=0 and end==previous_part_begin with
multipart files. It should start from 1 and next part from previous end
+ 1.
---
uulib/uuencode.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/uulib/uuencode.c b/uulib/uuencode.c
index b9a390e..2768771 100644
--- a/uulib/uuencode.c
+++ b/uulib/uuencode.c
@@ -1740,7 +1740,7 @@ UUEncodePartial_byFSize (FILE *outfile, FILE *infile,
}
fprintf (outfile, "=ypart begin=%ld end=%ld%s",
- (partno-1)*bpf,
+ (partno-1)*bpf+1,
(partno*bpf) < progress.totsize ?
(partno*bpf) : progress.totsize,
eolstring);

View file

@ -0,0 +1,215 @@
From e5be4d4a1d9d08796c1b5a5c763379383b8c119a Mon Sep 17 00:00:00 2001
From: Detlef Graef <detlef.graef@yahoo.de>
Date: Fri, 19 Apr 2019 15:12:27 +0200
Subject: [PATCH] Fix to build Pan with options --with-gmime30 and
--with-gmime-crypto
---
pan/usenet-utils/gpg.cc | 76 ++++++++++++++++++++++++++--------
pan/usenet-utils/mime-utils.cc | 35 ++++++++++++++++
2 files changed, 94 insertions(+), 17 deletions(-)
diff --git a/pan/usenet-utils/gpg.cc b/pan/usenet-utils/gpg.cc
index f24e723..4df4525 100644
--- a/pan/usenet-utils/gpg.cc
+++ b/pan/usenet-utils/gpg.cc
@@ -70,6 +70,45 @@ namespace pan
signer.key_id = sig->cert->keyid ? sig->cert->keyid : "(null)";
signer.fpr = sig->cert->fingerprint ? sig->cert->fingerprint : "(null)";
+#ifdef HAVE_GMIME_30
+ switch (sig->cert->trust) {
+ case GMIME_TRUST_UNKNOWN:
+ signer.trust = "None";
+ break;
+ case GMIME_TRUST_NEVER:
+ signer.trust = "Never";
+ break;
+ case GMIME_TRUST_UNDEFINED:
+ signer.trust = "Undefined";
+ break;
+ case GMIME_TRUST_MARGINAL:
+ signer.trust = "Marginal";
+ break;
+ case GMIME_TRUST_FULL:
+ signer.trust = "Fully";
+ break;
+ case GMIME_TRUST_ULTIMATE:
+ signer.trust = "Ultimate";
+ break;
+ }
+
+ switch (sig->status) {
+ case GMIME_SIGNATURE_STATUS_GREEN:
+ signer.status = "GOOD";
+ break;
+ case GMIME_SIGNATURE_STATUS_RED:
+ signer.status = "BAD";
+ break;
+ case GMIME_SIGNATURE_STATUS_SYS_ERROR:
+ signer.status = "ERROR";
+ break;
+ }
+
+ signer.created = sig->created;
+ signer.expires = sig->expires;
+ if (sig->expires == (time_t) 0)
+ signer.never_expires = true;
+#else
switch (sig->cert->trust) {
case GMIME_CERTIFICATE_TRUST_NONE:
signer.trust = "None";
@@ -102,25 +141,28 @@ namespace pan
signer.status = "ERROR";
break;
}
+#endif
signer.created = sig->created;
signer.expires = sig->expires;
if (sig->expires == (time_t) 0)
signer.never_expires = true;
- if (sig->errors) {
-
- if (sig->errors & GMIME_SIGNATURE_ERROR_EXPSIG)
- signer.error = "Expired";
- if (sig->errors & GMIME_SIGNATURE_ERROR_NO_PUBKEY)
- signer.error = "No Pub Key";
- if (sig->errors & GMIME_SIGNATURE_ERROR_EXPKEYSIG)
- signer.error = "Key Expired";
- if (sig->errors & GMIME_SIGNATURE_ERROR_REVKEYSIG)
- signer.error = "Key Revoked";
- } else {
- signer.error = "No errors for this signer";
- }
+// https://developer.gnome.org/gmime/stable/gmime-changes-3-0.html
+// GMimeSignatureStatus and GMimeSignatureErrors have been merged into a single bitfield (GMimeSignatureStatus) ...
+// if (sig->errors) {
+
+// if (sig->errors & GMIME_SIGNATURE_ERROR_EXPSIG)
+// signer.error = "Expired";
+// if (sig->errors & GMIME_SIGNATURE_ERROR_NO_PUBKEY)
+// signer.error = "No Pub Key";
+// if (sig->errors & GMIME_SIGNATURE_ERROR_EXPKEYSIG)
+// signer.error = "Key Expired";
+// if (sig->errors & GMIME_SIGNATURE_ERROR_REVKEYSIG)
+// signer.error = "Key Revoked";
+// } else {
+// signer.error = "No errors for this signer";
+// }
info.signers.push_back(signer);
}
@@ -128,11 +170,11 @@ namespace pan
void init_gpg()
{
- gpg_ctx = g_mime_gpg_context_new (request_passwd, "gpg2");
+// gpg_ctx = g_mime_gpg_context_new (request_passwd, "gpg2");
if (!gpg_ctx) gpg_inited = false; else gpg_inited = true;
- g_mime_gpg_context_set_auto_key_retrieve(GMIME_GPG_CONTEXT(gpg_ctx),true);
- g_mime_gpg_context_set_always_trust(GMIME_GPG_CONTEXT(gpg_ctx),false);
- g_mime_gpg_context_set_use_agent(GMIME_GPG_CONTEXT(gpg_ctx), false);
+// g_mime_gpg_context_set_auto_key_retrieve(GMIME_GPG_CONTEXT(gpg_ctx),true);
+// g_mime_gpg_context_set_always_trust(GMIME_GPG_CONTEXT(gpg_ctx),false);
+// g_mime_gpg_context_set_use_agent(GMIME_GPG_CONTEXT(gpg_ctx), false);
}
diff --git a/pan/usenet-utils/mime-utils.cc b/pan/usenet-utils/mime-utils.cc
index 135f469..881df7b 100644
--- a/pan/usenet-utils/mime-utils.cc
+++ b/pan/usenet-utils/mime-utils.cc
@@ -1634,12 +1634,20 @@ namespace pan
GMimeSignatureStatus
get_sig_status (GMimeSignatureList *signatures)
{
+#ifdef HAVE_GMIME_30
+ GMimeSignatureStatus status = GMIME_SIGNATURE_STATUS_VALID;
+#else
GMimeSignatureStatus status = GMIME_SIGNATURE_STATUS_GOOD;
+#endif
GMimeSignature *sig;
int i;
if (!signatures || signatures->array->len == 0)
+#ifdef HAVE_GMIME_30
+ return GMIME_SIGNATURE_STATUS_SYS_ERROR;
+#else
return GMIME_SIGNATURE_STATUS_ERROR;
+#endif
for (i = 0; i < g_mime_signature_list_length (signatures); i++) {
sig = g_mime_signature_list_get_signature (signatures, i);
@@ -1673,18 +1681,30 @@ namespace pan
if (info.type == GPG_VERIFY)
{
+#ifdef HAVE_GMIME_30
+ GMimeSignatureList * sigs = g_mime_multipart_signed_verify (mps, GMIME_VERIFY_NONE, &info.err);
+#else
GMimeSignatureList * sigs = g_mime_multipart_signed_verify (mps, gpg_ctx, &info.err);
+#endif
if (info.err || !sigs) return false;
if (sigs) info.no_sigs = false;
fill_signer_info(info.signers, sigs);
+#ifdef HAVE_GMIME_30
+ bool status = get_sig_status(sigs) == GMIME_SIGNATURE_STATUS_VALID;
+#else
bool status = get_sig_status(sigs) == GMIME_SIGNATURE_STATUS_GOOD;
+#endif
g_object_unref(sigs);
return status;
}
if (info.type == GPG_DECODE)
{
+#ifdef HAVE_GMIME_30
+ info.decrypted = g_mime_multipart_encrypted_decrypt (mpe, GMIME_DECRYPT_NONE, NULL, &info.result, &info.err);
+#else
info.decrypted = g_mime_multipart_encrypted_decrypt (mpe, gpg_ctx, &info.result, &info.err);
+#endif
if (!info.decrypted)
if (info.err) return false;
@@ -1693,7 +1713,11 @@ namespace pan
{
info.no_sigs = false;
fill_signer_info(info.signers, sigs);
+#ifdef HAVE_GMIME_30
+ bool status = get_sig_status(info.result->signatures) == GMIME_SIGNATURE_STATUS_VALID;
+#else
bool status = get_sig_status(info.result->signatures) == GMIME_SIGNATURE_STATUS_GOOD;
+#endif
g_object_unref(sigs);
return status;
}
@@ -1722,7 +1746,13 @@ namespace pan
mps = g_mime_multipart_signed_new ();
/* sign the part */
+#ifdef HAVE_GMIME_30
+ GMimeObject *gmo;
+ gmo = g_mime_message_get_mime_part (body);
+ if (g_mime_multipart_signed_sign (gpg_ctx, gmo, uid.c_str(), &err) <0)
+#else
if (g_mime_multipart_signed_sign (mps, GMIME_OBJECT (part), gpg_ctx, uid.c_str(), GMIME_DIGEST_ALGO_SHA1, &err) <0)
+#endif
{
g_object_unref(mps);
g_object_unref(G_OBJECT(part));
@@ -1752,8 +1782,13 @@ namespace pan
GMimeMultipartEncrypted * mpe = g_mime_multipart_encrypted_new();
+#ifdef HAVE_GMIME_30
+ if (g_mime_multipart_encrypted_encrypt(gpg_ctx, GMIME_OBJECT (part), sign, uid.c_str(),
+ GMIME_ENCRYPT_NONE, rcp, &err) < 0)
+#else
if (g_mime_multipart_encrypted_encrypt(mpe, GMIME_OBJECT (part), gpg_ctx, sign,
uid.c_str(), GMIME_DIGEST_ALGO_SHA1, rcp, &err) < 0)
+#endif
{
g_object_unref(mpe);
g_object_unref(G_OBJECT(part));

View file

@ -0,0 +1,31 @@
From 50f6c43a698dcc0ba6b490c086a73eeedbdd8a80 Mon Sep 17 00:00:00 2001
From: Detlef Graef <detlef.graef@yahoo.de>
Date: Fri, 19 Apr 2019 18:43:21 +0200
Subject: [PATCH] Attempt to fix issue #77; segfault when build with gmime-3
---
pan/general/utf8-utils.cc | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/pan/general/utf8-utils.cc b/pan/general/utf8-utils.cc
index be79a13..58565cf 100644
--- a/pan/general/utf8-utils.cc
+++ b/pan/general/utf8-utils.cc
@@ -135,13 +135,16 @@ pan :: header_to_utf8 (const StringView & header,
const char * fallback_charset1,
const char * fallback_charset2)
{
+
+ GMimeParserOptions *gmpo = g_mime_parser_options_new();
std::string s = content_to_utf8 (header, fallback_charset1, fallback_charset2);
if (header.strstr ("=?")) {
- char * decoded (g_mime_utils_header_decode_text (NULL, s.c_str()));
+ char * decoded (g_mime_utils_header_decode_text (gmpo, s.c_str()));
s = clean_utf8 (decoded);
g_free (decoded);
}
return s;
+ g_mime_parser_options_free (gmpo);
}
#else

View file

@ -0,0 +1,33 @@
From ddcd5761075a6fb3ef7b768f004fa1e6663cb65e Mon Sep 17 00:00:00 2001
From: Detlef Graef <detlef.graef@yahoo.de>
Date: Fri, 26 Apr 2019 20:50:09 +0200
Subject: [PATCH] Revert "Attempt to fix issue #77; segfault when build with
gmime-3"
This reverts commit 50f6c43a698dcc0ba6b490c086a73eeedbdd8a80.
---
pan/general/utf8-utils.cc | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/pan/general/utf8-utils.cc b/pan/general/utf8-utils.cc
index 58565cf..be79a13 100644
--- a/pan/general/utf8-utils.cc
+++ b/pan/general/utf8-utils.cc
@@ -135,16 +135,13 @@ pan :: header_to_utf8 (const StringView & header,
const char * fallback_charset1,
const char * fallback_charset2)
{
-
- GMimeParserOptions *gmpo = g_mime_parser_options_new();
std::string s = content_to_utf8 (header, fallback_charset1, fallback_charset2);
if (header.strstr ("=?")) {
- char * decoded (g_mime_utils_header_decode_text (gmpo, s.c_str()));
+ char * decoded (g_mime_utils_header_decode_text (NULL, s.c_str()));
s = clean_utf8 (decoded);
g_free (decoded);
}
return s;
- g_mime_parser_options_free (gmpo);
}
#else

View file

@ -0,0 +1,21 @@
From 476b5a62fcda711ce2d7412a310b8182cca6940e Mon Sep 17 00:00:00 2001
From: Detlef Graef <detlef.graef@yahoo.de>
Date: Fri, 26 Apr 2019 20:59:54 +0200
Subject: [PATCH] Fix for issue #77. Segfault when build with gmime-3
---
pan/gui/pan.cc | 1 +
1 file changed, 1 insertion(+)
diff --git a/pan/gui/pan.cc b/pan/gui/pan.cc
index 8d28fdb..fb3a696 100644
--- a/pan/gui/pan.cc
+++ b/pan/gui/pan.cc
@@ -906,6 +906,7 @@ main (int argc, char *argv[])
g_thread_init (0);
#endif
#ifdef HAVE_GMIME_30
+ g_mime_init ();
#else
g_mime_init (GMIME_ENABLE_RFC2047_WORKAROUNDS);
#endif