Update to claws-mail 3.9.2.

- all the plugins which were distributed separately are now bundled in.
- @conflict/@pkgpath markers added for upgrade path.
- add a pdfviewer plugin using poppler
- replace the dead gtkhtml2-based htmlviewer plugin by one using webkit.
- given the deps, pdfviewer and htmlviewer are subpackages.
- remove BDEP on libgcrypt, shouldnt be needed with gnutls >= 2.11.
- remove patches merged upstream.

From Ido Admon, thanks!
This commit is contained in:
landry 2013-09-25 08:03:13 +00:00
parent 8d585aa125
commit 5078ed4bf5
17 changed files with 209 additions and 275 deletions

View File

@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.64 2013/09/06 16:28:48 ajacoutot Exp $
# $OpenBSD: Makefile,v 1.65 2013/09/25 08:03:13 landry Exp $
SHARED_ONLY= Yes
@ -6,16 +6,17 @@ COMMENT-main= mail and news client
COMMENT-bogofilter= bogofilter plugin
COMMENT-clamav= clamav plugin
COMMENT-spamassassin= spamassassin plugin
COMMENT-htmlviewer= fancy htmlviewer plugin
COMMENT-pdfviewer= pdfviewer plugin
V= 3.8.1
V= 3.9.2
DISTNAME= claws-mail-${V}
REVISION-main= 7
REVISION-bogofilter= 6
REVISION-clamav= 1
REVISION-spamassassin= 6
PKGNAME-main= ${DISTNAME}
PKGNAME-bogofilter= claws-mail-bogofilter-${V}
PKGNAME-spamassassin= claws-mail-spamassassin-${V}
PKGNAME-htmlviewer= claws-mail-htmlviewer-${V}
PKGNAME-pdfviewer= claws-mail-pdfviewer-${V}
CATEGORIES= mail news
HOMEPAGE= http://www.claws-mail.org/
@ -28,7 +29,7 @@ EXTRACT_SUFX= .tar.bz2
DIST_SUBDIR= claws
MULTI_PACKAGES= -main -bogofilter -spamassassin
MULTI_PACKAGES= -main -bogofilter -spamassassin -htmlviewer -pdfviewer
FLAVORS= jpilot compface ldap debug
FLAVOR?=
@ -41,23 +42,32 @@ RUN_DEPENDS-spamassassin=${BUILD_PKGPATH} \
mail/p5-Mail-SpamAssassin
WANTLIB= X11 Xcomposite Xcursor Xdamage Xext Xfixes \
Xi Xinerama Xrandr Xrender atk-1.0 cairo crypto curl \
expat fontconfig freetype gio-2.0 glib-2.0 gthread-2.0 \
gmodule-2.0 gobject-2.0 idn m pango-1.0 pangocairo-1.0 \
pangoft2-1.0 pcre pixman-1 png pthread-stubs ssl \
xcb z gdk_pixbuf-2.0 pthread \
gdk-x11-2.0 gtk-x11-2.0 execinfo etpan>=13 sasl2 \
xcb-render xcb-shm heimbase krb5 roken wind \
ffi harfbuzz asn1 com_err graphite2 gssapi
Xi Xinerama Xrandr Xrender asn1 atk-1.0 bz2 cairo \
com_err crypto curl etpan>=13 execinfo expat ffi \
fontconfig freetype gdk_pixbuf-2.0 gdk-x11-2.0 gio-2.0 \
glib-2.0 gmodule-2.0 gobject-2.0 graphite2 gssapi \
gthread-2.0 gtk-x11-2.0 harfbuzz heimbase idn krb5 \
m pango-1.0 pangocairo-1.0 pangoft2-1.0 pcre \
pixman-1 png pthread pthread-stubs roken sasl2 ssl \
stdc++ wind xcb xcb-render xcb-shm z
WANTLIB-main= ${WANTLIB} ICE SM X11-xcb c dbus-1 gmp hogweed nettle \
tasn1 xcb-aux assuan startup-notification-1 stdc++ \
enchant gnutls gpgme dbus-glib-1 gpg-error p11-kit
tasn1 xcb-aux assuan startup-notification-1 enchant \
gnutls gpgme dbus-glib-1 gpg-error p11-kit perl util \
xml2
WANTLIB-htmlviewer= ${WANTLIB} EGL GL ICE SM Xt archive dbus-1 dbus-glib-1 \
enchant gailutil gcrypt geoclue gpg-error gstapp-1.0 \
gstaudio-1.0 gstbase-1.0 gstfft-1.0 gstpbutils-1.0 \
gsttag-1.0 gstreamer-1.0 gstvideo-1.0 harfbuzz-icu \
icudata icui18n icuuc javascriptcoregtk-1.0 jpeg \
orc-0.4 secret-1 soup-2.4 soup-gnome-2.4 sqlite3 \
webkitgtk-1.0 webp xml2 xslt
WANTLIB-pdfviewer= ${WANTLIB} jpeg lcms2 openjpeg poppler poppler-glib tiff
WANTLIB-docs=
# XXX libgcrypt shouldn't be needed:
BUILD_DEPENDS+= security/libgcrypt
LIB_DEPENDS= x11/gtk+2 \
devel/libexecinfo \
mail/libetpan \
@ -74,9 +84,19 @@ LIB_DEPENDS-main= ${LIB_DEPENDS} \
security/gpgme \
x11/dbus-glib
CONFIGURE_ARGS+= --disable-gnomeprint \
--disable-networkmanager-support \
--disable-dillo-viewer-plugin
LIB_DEPENDS-htmlviewer= ${LIB_DEPENDS} \
www/webkit>=2.0.0
LIB_DEPENDS-pdfviewer= ${LIB_DEPENDS} \
print/poppler
#geolocation looks for champlain <= 0.10
#python tries to dlopen libpython2.7.so
CONFIGURE_ARGS+= --disable-acpi_notifier-plugin \
--disable-geolocation-plugin \
--disable-python-plugin \
--enable-new-addrbook
MODULES= devel/gettext
USE_GMAKE= Yes
@ -84,7 +104,7 @@ USE_GROFF = Yes
LIBTOOL_FLAGS= --tag=disable-static
CONFIGURE_STYLE= autoconf
AUTOCONF_VERSION= 2.68
AUTOCONF_VERSION= 2.69
CONFIGURE_ENV+= CPPFLAGS="-I${X11BASE}/include" \
LDFLAGS="-L${X11BASE}/lib"

View File

@ -1,5 +1,2 @@
MD5 (claws/claws-mail-3.8.1.tar.bz2) = 04iSn7HI8E1LyyE5+q+ecA==
RMD160 (claws/claws-mail-3.8.1.tar.bz2) = 5Q3dgFieftufHBcqg+f0Hdjew3I=
SHA1 (claws/claws-mail-3.8.1.tar.bz2) = xRnQcSG/swlcej1H5TtnJr85ftg=
SHA256 (claws/claws-mail-3.8.1.tar.bz2) = tCH9kTaU+dBGNSErDEfJgIo/IKT5pd0VtvTNUCLG7m8=
SIZE (claws/claws-mail-3.8.1.tar.bz2) = 7335864
SHA256 (claws/claws-mail-3.9.2.tar.bz2) = 45bLZ+js2ukm381Z2ks/JqYzqrwPTwCx8kyyB/P/IzA=
SIZE (claws/claws-mail-3.9.2.tar.bz2) = 9413758

View File

@ -1,39 +1,29 @@
$OpenBSD: patch-configure_ac,v 1.7 2012/01/23 18:57:33 landry Exp $
--- configure.ac.orig Wed Dec 28 21:50:29 2011
+++ configure.ac Wed Dec 28 21:52:39 2011
@@ -141,7 +141,7 @@ AM_CONDITIONAL(CYGWIN, test x"$env_cygwin" = x"yes")
$OpenBSD: patch-configure_ac,v 1.8 2013/09/25 08:03:14 landry Exp $
--- configure.ac.orig Sat Jun 8 15:58:17 2013
+++ configure.ac Tue Sep 24 00:40:33 2013
@@ -152,7 +152,7 @@ AM_CONDITIONAL(CYGWIN, test x"$env_cygwin" = x"yes")
if test "$GCC" = "yes"
then
- CFLAGS="$CFLAGS -Wno-unused-function"
+ CFLAGS="$CFLAGS -Wall"
#CFLAGS="-g -Wall -Wno-unused-function"
fi
AC_MSG_CHECKING([if gcc supports -Wno-pointer-sign])
@@ -674,6 +674,7 @@ else
AC_CHECK_LIB(resolv, res_query, LDAP_LIBS="$LDAP_LIBS -lresolv")
AC_CHECK_LIB(socket, bind, LDAP_LIBS="$LDAP_LIBS -lsocket")
AC_CHECK_LIB(nsl, gethostbyaddr, LDAP_LIBS="$LDAP_LIBS -lnsl")
+ AC_CHECK_LIB(sasl2, sasl_version, LDAP_LIBS="$LDAP_LIBS -lsasl2")
AC_CHECK_LIB(lber, ber_get_tag, LDAP_LIBS="$LDAP_LIBS -llber",,
$LDAP_LIBS)
@@ -776,6 +776,7 @@ if test x"$enable_new_addrbook" = xno; then
AC_CHECK_LIB(resolv, res_query, LDAP_LIBS="$LDAP_LIBS -lresolv")
AC_CHECK_LIB(socket, bind, LDAP_LIBS="$LDAP_LIBS -lsocket")
AC_CHECK_LIB(nsl, gethostbyaddr, LDAP_LIBS="$LDAP_LIBS -lnsl")
+ AC_CHECK_LIB(sasl2, sasl_version, LDAP_LIBS="$LDAP_LIBS -lsasl2")
AC_CHECK_LIB(lber, ber_get_tag, LDAP_LIBS="$LDAP_LIBS -llber",,
$LDAP_LIBS)
@@ -689,7 +690,8 @@ else
@@ -848,7 +849,7 @@ if test x"$enable_new_addrbook" = xno; then
AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.) ])
fi
AC_CHECK_LIB(ldap, ldap_start_tls_s,
[ ac_cv_have_tls=yes ],
- [ ac_cv_have_tls=no ])
+ [ ac_cv_have_tls=no ],
+ $LDAP_LIBS)
fi
@@ -749,7 +751,7 @@ if test "$ac_cv_enable_jpilot" = yes; then
AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.) ])
fi
- AC_CHECK_LIB(pisock, unpack_Address, [JPILOT_LIBS="-lpisock"], [JPILOT_LIBS="" ac_cv_enable_jpilot="no"])
+ AC_CHECK_LIB(pisock, unpack_Address, [JPILOT_LIBS="-lpisock -pthread"], [JPILOT_LIBS="" ac_cv_enable_jpilot="no"], -pthread)
if test x"$ac_cv_enable_jpilot" = xyes; then
AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.)
else
- AC_CHECK_LIB(pisock, unpack_Address, [JPILOT_LIBS="-lpisock"], [JPILOT_LIBS="" enable_jpilot="no"])
+ AC_CHECK_LIB(pisock, unpack_Address, [JPILOT_LIBS="-lpisock -pthread"], [JPILOT_LIBS="" enable_jpilot="no"], -pthread)
if test x"$enable_jpilot" = xyes; then
AC_DEFINE(USE_JPILOT, 1, Define if you want JPilot support in addressbook.)
else

View File

@ -1,8 +1,8 @@
$OpenBSD: patch-src_common_defs_h,v 1.1 2012/06/29 14:02:54 landry Exp $
$OpenBSD: patch-src_common_defs_h,v 1.2 2013/09/25 08:03:14 landry Exp $
http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2642
--- src/common/defs.h.orig Fri Dec 16 09:09:34 2011
+++ src/common/defs.h Tue Apr 3 13:07:33 2012
@@ -148,6 +148,9 @@
--- src/common/defs.h.orig Tue Mar 19 02:31:04 2013
+++ src/common/defs.h Sun Sep 22 23:00:04 2013
@@ -146,6 +146,9 @@
#define BUFFSIZE 8192

View File

@ -1,8 +1,8 @@
$OpenBSD: patch-src_common_quoted-printable_c,v 1.1 2012/06/29 14:02:54 landry Exp $
$OpenBSD: patch-src_common_quoted-printable_c,v 1.2 2013/09/25 08:03:14 landry Exp $
http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2640
--- src/common/quoted-printable.c.orig Wed Jun 27 11:05:23 2012
+++ src/common/quoted-printable.c Fri Jun 29 11:08:56 2012
@@ -22,66 +22,81 @@
--- src/common/quoted-printable.c.orig Tue Mar 19 02:31:04 2013
+++ src/common/quoted-printable.c Sun Sep 22 23:00:10 2013
@@ -22,66 +22,79 @@
#include "utils.h"
@ -28,10 +28,7 @@ http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2640
- gchar *outp = out;
- guchar ch;
- gint len = 0;
+ /* counters of input/output characters */
+ gint inc = 0;
+ gint outc = 1; /* one character reserved for '=' soft line break */
-
- while (*inp != '\0') {
- ch = *inp;
-
@ -53,6 +50,9 @@ http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2640
- SOFT_LBREAK_IF_REQUIRED(1);
- *outp++ = *inp++;
- len++;
+ /* counters of input/output characters */
+ gint inc = 0;
+ gint outc = 1; /* one character reserved for '=' soft line break */
+ while(inc < len) {
+ /* allow literal linebreaks in text */
+ if(text) {
@ -88,7 +88,7 @@ http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2640
+ }
+ /* Cave: Whitespace is unconditionally output literally,
+ * but according to the RFC it must not be output before a
+ * linebreak.
+ * linebreak.
+ * This requirement is obeyed by quoting all linebreaks
+ * and therefore ending all lines with '='. */
+ else if((*in >= ' ' && *in <= '~') || *in == '\t') {
@ -121,11 +121,11 @@ http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2640
- if (len > 0)
- *outp++ = '\n';
-
- *outp = '\0';
+void qp_encode_line(gchar *out, const guchar *in) {
+ while (*in != '\0') {
+ in += qp_encode(TRUE, out, in, strlen(in));
- *outp = '\0';
+ while(*out != '\0') out++;
+ *out++ = '\n';
+ *out++ = '\0';

View File

@ -1,7 +1,7 @@
$OpenBSD: patch-src_common_quoted-printable_h,v 1.1 2012/06/29 14:02:54 landry Exp $
$OpenBSD: patch-src_common_quoted-printable_h,v 1.2 2013/09/25 08:03:14 landry Exp $
http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2640
--- src/common/quoted-printable.h.orig Wed Jun 27 11:05:23 2012
+++ src/common/quoted-printable.h Fri Jun 29 10:56:09 2012
--- src/common/quoted-printable.h.orig Tue Mar 19 02:31:04 2013
+++ src/common/quoted-printable.h Sun Sep 22 23:00:10 2013
@@ -22,6 +22,18 @@
#include <glib.h>
@ -13,10 +13,10 @@ http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2640
+ * Therefore the caller can chain multiple lines of encoded data resulting from
+ * sequential runs by glueing them together with line breaks.
+ * The number of processed input characters is returned. */
+gint qp_encode (gboolean text,
+ gchar *out,
+ const guchar *in,
+ gint len);
+gint qp_encode (gboolean text,
+ gchar *out,
+ const guchar *in,
+ gint len);
+/* Deprecated */
void qp_encode_line (gchar *out,
const guchar *in);

View File

@ -1,67 +0,0 @@
$OpenBSD: patch-src_common_smtp_c,v 1.2 2012/06/29 14:02:54 landry Exp $
http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2639
--- src/common/smtp.c.orig Fri Dec 16 09:09:34 2011
+++ src/common/smtp.c Tue Apr 3 13:03:02 2012
@@ -124,7 +124,7 @@ static void smtp_session_destroy(Session *session)
gint smtp_from(SMTPSession *session)
{
- gchar buf[MSGBUFSIZE];
+ gchar buf[MESSAGEBUFSIZE];
gchar *mail_size = NULL;
cm_return_val_if_fail(session->from != NULL, SM_ERROR);
@@ -188,7 +188,7 @@ static gint smtp_auth(SMTPSession *session)
static gint smtp_auth_recv(SMTPSession *session, const gchar *msg)
{
- gchar buf[MSGBUFSIZE];
+ gchar buf[MESSAGEBUFSIZE];
switch (session->auth_type) {
case SMTPAUTH_LOGIN:
@@ -264,7 +264,7 @@ static gint smtp_auth_recv(SMTPSession *session, const
static gint smtp_auth_login_user_recv(SMTPSession *session, const gchar *msg)
{
- gchar buf[MSGBUFSIZE];
+ gchar buf[MESSAGEBUFSIZE];
session->state = SMTP_AUTH_LOGIN_PASS;
@@ -284,7 +284,7 @@ static gint smtp_auth_login_user_recv(SMTPSession *ses
static gint smtp_ehlo(SMTPSession *session)
{
- gchar buf[MSGBUFSIZE];
+ gchar buf[MESSAGEBUFSIZE];
session->state = SMTP_EHLO;
@@ -363,7 +363,7 @@ static gint smtp_auth_cram_md5(SMTPSession *session)
static gint smtp_auth_plain(SMTPSession *session)
{
- gchar buf[MSGBUFSIZE];
+ gchar buf[MESSAGEBUFSIZE];
/*
* +1 +1 +1
@@ -428,7 +428,7 @@ static gint smtp_auth_login(SMTPSession *session)
static gint smtp_helo(SMTPSession *session)
{
- gchar buf[MSGBUFSIZE];
+ gchar buf[MESSAGEBUFSIZE];
session->state = SMTP_HELO;
@@ -443,7 +443,7 @@ static gint smtp_helo(SMTPSession *session)
static gint smtp_rcpt(SMTPSession *session)
{
- gchar buf[MSGBUFSIZE];
+ gchar buf[MESSAGEBUFSIZE];
gchar *to;
cm_return_val_if_fail(session->cur_to != NULL, SM_ERROR);

View File

@ -1,13 +0,0 @@
$OpenBSD: patch-src_common_smtp_h,v 1.3 2012/06/29 14:02:54 landry Exp $
http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2639
--- src/common/smtp.h.orig Thu Jul 3 16:31:28 2008
+++ src/common/smtp.h Sat Oct 4 16:20:27 2008
@@ -32,7 +32,7 @@ typedef struct _SMTPSession SMTPSession;
#define SMTP_SESSION(obj) ((SMTPSession *)obj)
-#define MSGBUFSIZE 8192
+#define MESSAGEBUFSIZE 8192
typedef enum
{

View File

@ -1,22 +0,0 @@
$OpenBSD: patch-src_inc_c,v 1.7 2012/06/29 14:02:54 landry Exp $
http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2639
--- src/inc.c.orig Wed Jun 27 11:05:23 2012
+++ src/inc.c Thu Jun 28 00:13:06 2012
@@ -88,7 +88,7 @@ static GdkPixbuf *currentpix;
static GdkPixbuf *errorpix;
static GdkPixbuf *okpix;
-#define MSGBUFSIZE 8192
+#define MESSAGEBUFSIZE 8192
static void inc_update_stats(gint new_msgs);
static void inc_finished (MainWindow *mainwin,
@@ -969,7 +969,7 @@ static void inc_progress_dialog_set_label(IncProgressD
static void inc_progress_dialog_set_progress(IncProgressDialog *inc_dialog,
IncSession *inc_session)
{
- gchar buf[MSGBUFSIZE];
+ gchar buf[MESSAGEBUFSIZE];
Pop3Session *pop3_session = POP3_SESSION(inc_session->session);
gchar *total_size_str;
gint cur_total;

View File

@ -1,22 +0,0 @@
$OpenBSD: patch-src_mbox_c,v 1.3 2012/06/29 14:02:54 landry Exp $
http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2639
--- src/mbox.c.orig Mon Sep 17 04:14:33 2007
+++ src/mbox.c Tue Sep 18 21:45:32 2007
@@ -52,7 +52,7 @@
#include "alertpanel.h"
#include "statusbar.h"
-#define MSGBUFSIZE 8192
+#define MESSAGEBUFSIZE 8192
#ifdef HAVE_FGETS_UNLOCKED
#define SC_FGETS fgets_unlocked
@@ -82,7 +82,7 @@ gint proc_mbox(FolderItem *dest, const gchar *mbox, gb
/* return values: -1 error, >=0 number of msgs added */
{
FILE *mbox_fp;
- gchar buf[MSGBUFSIZE];
+ gchar buf[MESSAGEBUFSIZE];
gchar *tmp_file;
gint msgs = 0;
gint lines;

View File

@ -1,8 +1,8 @@
$OpenBSD: patch-src_messageview_c,v 1.1 2012/06/29 14:02:54 landry Exp $
$OpenBSD: patch-src_messageview_c,v 1.2 2013/09/25 08:03:16 landry Exp $
http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2640
--- src/messageview.c.orig Wed Jun 27 11:05:23 2012
+++ src/messageview.c Thu Jun 28 00:13:06 2012
@@ -988,8 +988,9 @@ static gint disposition_notification_send(MsgInfo *msg
--- src/messageview.c.orig Sat Apr 13 01:16:25 2013
+++ src/messageview.c Sun Sep 22 23:00:22 2013
@@ -1026,8 +1026,9 @@ static gint disposition_notification_send(MsgInfo *msg
extract_address(orig_to);
}
if (msginfo->subject && *(msginfo->subject)) {

View File

@ -1,11 +1,11 @@
$OpenBSD: patch-src_procmime_c,v 1.8 2012/10/09 17:01:16 sthen Exp $
$OpenBSD: patch-src_procmime_c,v 1.9 2013/09/25 08:03:16 landry Exp $
http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2640
http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2641
http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2642
http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2743
--- src/procmime.c.orig Wed Jun 27 11:05:22 2012
+++ src/procmime.c Tue Oct 9 18:51:08 2012
@@ -562,16 +562,29 @@ gboolean procmime_encode_content(MimeInfo *mimeinfo, E
--- src/procmime.c.orig Wed May 8 04:46:17 2013
+++ src/procmime.c Sun Sep 22 23:00:18 2013
@@ -616,10 +616,22 @@ gboolean procmime_encode_content(MimeInfo *mimeinfo, E
g_free(tmp_file);
}
} else if (encoding == ENC_QUOTED_PRINTABLE) {
@ -14,7 +14,7 @@ http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2743
+ gint n, len = 0;
+ gboolean firstrun = TRUE;
- while (fgets(inbuf, sizeof(inbuf), infp) != NULL) {
- while (SC_FGETS(inbuf, sizeof(inbuf), infp) != NULL) {
- qp_encode_line(outbuf, inbuf);
+ while ((len += fread(inbuf + len, 1,
+ sizeof(inbuf) - len - 1,
@ -23,25 +23,16 @@ http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2743
+ if (firstrun == FALSE)
+ if (fputs("\r\n", outfp) == EOF)
+ err = TRUE;
+ inbuf[len] = '\0';
+ n = qp_encode(mimeinfo->type == MIMETYPE_TEXT,
+ outbuf, inbuf, len);
+ len -= n;
+ memmove(inbuf, inbuf + n, len);
+
if (!strncmp("From ", outbuf, sizeof("From ")-1)) {
gchar *tmpbuf = outbuf;
-
+
tmpbuf += sizeof("From ")-1;
-
+
if (fputs("=46rom ", outfp) == EOF)
err = TRUE;
if (fputs(tmpbuf, outfp) == EOF)
@@ -580,14 +593,40 @@ gboolean procmime_encode_content(MimeInfo *mimeinfo, E
if (fputs(outbuf, outfp) == EOF)
@@ -634,14 +646,39 @@ gboolean procmime_encode_content(MimeInfo *mimeinfo, E
if (SC_FPUTS(outbuf, outfp) == EOF)
err = TRUE;
}
+ firstrun = FALSE;
@ -51,9 +42,9 @@ http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2743
+ gchar buf[MAXSMTPTEXTLEN+1];
+ gint leftover = 0;
- while (fgets(buf, sizeof(buf), infp) != NULL) {
- while (SC_FGETS(buf, sizeof(buf), infp) != NULL) {
- strcrchomp(buf);
- if (fputs(buf, outfp) == EOF)
- if (SC_FPUTS(buf, outfp) == EOF)
+ while (fgets(buf + leftover,
+ sizeof(buf) - leftover,
+ infp) != NULL)
@ -75,26 +66,25 @@ http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2743
+ *c = *(c-1);
+ *--c = '\0';
+ leftover++;
+ }
+
+ }
+ if (fputs(buf, outfp) == EOF || putc('\n', outfp) == EOF)
err = TRUE;
+
err = TRUE;
+ for (l = buf; l-buf < leftover; l++)
+ *l = *++c;
}
}
@@ -1094,7 +1133,7 @@ GList *procmime_get_mime_type_list(void)
@@ -1183,7 +1220,7 @@ GList *procmime_get_mime_type_list(void)
#endif
{
fp_is_glob_file = FALSE;
- if ((fp = g_fopen("/etc/mime.types", "rb")) == NULL) {
+ if ((fp = g_fopen("/var/www/conf/mime.types", "rb")) == NULL) {
if ((fp = g_fopen(SYSCONFDIR "/mime.types", "rb"))
- if ((fp = procmime_fopen("/etc/mime.types", "rb")) == NULL) {
+ if ((fp = procmime_fopen("/var/www/conf/mime.types", "rb")) == NULL) {
if ((fp = procmime_fopen(SYSCONFDIR "/mime.types", "rb"))
== NULL) {
FILE_OP_ERROR(SYSCONFDIR "/mime.types",
@@ -1174,11 +1213,12 @@ EncodingType procmime_get_encoding_for_text_file(const
@@ -1263,11 +1300,12 @@ EncodingType procmime_get_encoding_for_text_file(const
{
FILE *fp;
guchar buf[BUFFSIZE];
@ -106,9 +96,9 @@ http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2743
gfloat octet_percentage;
- gboolean force_b64 = FALSE;
if ((fp = g_fopen(file, "rb")) == NULL) {
if ((fp = procmime_fopen(file, "rb")) == NULL) {
FILE_OP_ERROR(file, "fopen");
@@ -1190,11 +1230,27 @@ EncodingType procmime_get_encoding_for_text_file(const
@@ -1279,11 +1317,27 @@ EncodingType procmime_get_encoding_for_text_file(const
gint i;
for (p = buf, i = 0; i < len; ++p, ++i) {
@ -116,40 +106,41 @@ http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2743
- ++octet_chars;
- if (*p == '\0') {
- force_b64 = TRUE;
- *has_binary = TRUE;
+ switch (*p) {
+ case '\n':
+ if (cr) linelen--;
+ maxlinelen = MAX(linelen, maxlinelen);
+ linelen = 0;
+ cr = FALSE;
+ break;
+ case '\r':
+ cr = TRUE;
+ linelen++;
+ break;
+ case '\0':
*has_binary = TRUE;
+ maxlinelen = G_MAXINT;
+ cr = FALSE;
+ break;
+ default:
+ if (*p & 0x80)
+ octet_chars++;
+ linelen++;
+ cr = FALSE;
+ case '\n':
+ if (cr) linelen--;
+ maxlinelen = MAX(linelen, maxlinelen);
+ linelen = 0;
+ cr = FALSE;
+ break;
+ case '\r':
+ cr = TRUE;
+ linelen++;
+ break;
+ case '\0':
+ *has_binary = TRUE;
+ maxlinelen = G_MAXINT;
+ cr = FALSE;
+ break;
+ default:
+ if (*p & 0x80)
+ octet_chars++;
+ linelen++;
+ cr = FALSE;
}
}
total_len += len;
@@ -1208,15 +1264,20 @@ EncodingType procmime_get_encoding_for_text_file(const
@@ -1297,15 +1351,20 @@ EncodingType procmime_get_encoding_for_text_file(const
octet_percentage = 0.0;
debug_print("procmime_get_encoding_for_text_file(): "
- "8bit chars: %zd / %zd (%f%%)\n", octet_chars, total_len,
- 100.0 * octet_percentage);
+ "8bit chars: %zd / %zd (%f%%). "
+ "maximum line length: %d chars\n",
+ octet_chars, total_len, 100.0 * octet_percentage,
+ maxlinelen);
+ "8bit chars: %zd / %zd (%f%%). "
+ "maximum line length: %d chars\n",
+ octet_chars, total_len, 100.0 * octet_percentage,
+ maxlinelen);
- if (octet_percentage > 0.20 || force_b64) {
+ if (octet_percentage > 0.20) {
@ -165,12 +156,3 @@ http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2743
} else {
debug_print("using 7bit\n");
return ENC_7BIT;
@@ -1753,6 +1814,8 @@ static void parse_parameters(const gchar *parameters,
continue;
charset = value;
+ if (charset == NULL)
+ continue;
lang = strchr(charset, '\'');
if (lang == NULL)
continue;

View File

@ -0,0 +1 @@
Claws Mail plugin for rendering HTML using WebKit.

View File

@ -0,0 +1 @@
Claws Mail plugin for PDF support.

View File

@ -0,0 +1,5 @@
@comment $OpenBSD: PLIST-htmlviewer,v 1.1 2013/09/25 08:03:17 landry Exp $
@conflict claws-mail-htmlviewer-*
@pkgpath mail/claws-mail-htmlviewer
lib/claws-mail/plugins/fancy.la
lib/claws-mail/plugins/fancy.so

View File

@ -1,4 +1,12 @@
@comment $OpenBSD: PLIST-main,v 1.27 2012/10/09 16:41:29 sthen Exp $
@comment $OpenBSD: PLIST-main,v 1.28 2013/09/25 08:03:17 landry Exp $
@conflict claws-mail-attremover-*
@conflict claws-mail-notification-*
@conflict claws-mail-rssyl-*
@conflict claws-mail-vcalendar-*
@pkgpath mail/claws-mail-attremover
@pkgpath mail/claws-mail-notification
@pkgpath mail/claws-mail-rssyl
@pkgpath mail/claws-mail-vcalendar
@pkgpath mail/sylpheed-claws,-main[,compface][,pgpmime][,jpilot][,ldap]
@pkgpath mail/sylpheed-claws[,compface][,pgpmime][,jpilot][,ldap]
@bin bin/claws-mail
@ -25,9 +33,11 @@ include/claws-mail/addrindex.h
include/claws-mail/addritem.h
include/claws-mail/addrquery.h
include/claws-mail/addrselect.h
include/claws-mail/advsearch.h
include/claws-mail/alertpanel.h
include/claws-mail/autofaces.h
include/claws-mail/browseldap.h
include/claws-mail/claws-features.h
include/claws-mail/codeconv.h
include/claws-mail/common/
include/claws-mail/common/base64.h
@ -58,7 +68,6 @@ include/claws-mail/common/version.h
include/claws-mail/common/xml.h
include/claws-mail/common/xmlprops.h
include/claws-mail/compose.h
include/claws-mail/config.h
include/claws-mail/crash.h
include/claws-mail/customheader.h
include/claws-mail/displayheader.h
@ -148,6 +157,7 @@ include/claws-mail/matcher.h
include/claws-mail/matcher_parser.h
include/claws-mail/matcher_parser_lex.h
include/claws-mail/matcher_parser_parse.h
include/claws-mail/matchertypes.h
include/claws-mail/mbox.h
include/claws-mail/message_search.h
include/claws-mail/messageview.h
@ -162,6 +172,22 @@ include/claws-mail/noticeview.h
include/claws-mail/partial_download.h
include/claws-mail/pine.h
include/claws-mail/plugins/
include/claws-mail/plugins/claws-mail/
include/claws-mail/plugins/claws-mail/archiver.h
include/claws-mail/plugins/claws-mail/archiver_prefs.h
include/claws-mail/plugins/claws-mail/gtkhotkey/
include/claws-mail/plugins/claws-mail/gtkhotkey/eggaccelerators.h
include/claws-mail/plugins/claws-mail/gtkhotkey/gtk-hotkey-error.h
include/claws-mail/plugins/claws-mail/gtkhotkey/gtk-hotkey-info.h
include/claws-mail/plugins/claws-mail/gtkhotkey/gtk-hotkey-key-file-registry.h
include/claws-mail/plugins/claws-mail/gtkhotkey/gtk-hotkey-listener.h
include/claws-mail/plugins/claws-mail/gtkhotkey/gtk-hotkey-marshal.h
include/claws-mail/plugins/claws-mail/gtkhotkey/gtk-hotkey-registry.h
include/claws-mail/plugins/claws-mail/gtkhotkey/gtk-hotkey-utils.h
include/claws-mail/plugins/claws-mail/gtkhotkey/gtk-hotkey-x11-listener.h
include/claws-mail/plugins/claws-mail/gtkhotkey/gtkhotkey.h
include/claws-mail/plugins/claws-mail/gtkhotkey/tomboykeybinder.h
include/claws-mail/plugins/claws-mail/ical.h
include/claws-mail/plugins/pgpcore/
include/claws-mail/plugins/pgpcore/passphrase.h
include/claws-mail/plugins/pgpcore/pgp_viewer.h
@ -174,6 +200,8 @@ include/claws-mail/plugins/pgpmime/
include/claws-mail/plugins/pgpmime/pgpmime.h
include/claws-mail/plugins/smime/
include/claws-mail/plugins/smime/smime.h
include/claws-mail/plugins/vcalendar/
include/claws-mail/plugins/vcalendar/vcal_interface.h
include/claws-mail/pop.h
include/claws-mail/prefs_account.h
include/claws-mail/prefs_actions.h
@ -210,6 +238,7 @@ include/claws-mail/privacy.h
include/claws-mail/procheader.h
include/claws-mail/procmime.h
include/claws-mail/procmsg.h
include/claws-mail/proctypes.h
include/claws-mail/quote_fmt.h
include/claws-mail/quote_fmt_lex.h
include/claws-mail/quote_fmt_parse.h
@ -229,9 +258,32 @@ include/claws-mail/undo.h
include/claws-mail/unmime.h
include/claws-mail/uri_opener.h
include/claws-mail/vcard.h
include/claws-mail/viewtypes.h
include/claws-mail/wizard.h
lib/claws-mail/
lib/claws-mail/plugins/
lib/claws-mail/plugins/address_keeper.la
lib/claws-mail/plugins/address_keeper.so
lib/claws-mail/plugins/archive.la
lib/claws-mail/plugins/archive.so
lib/claws-mail/plugins/att_remover.la
lib/claws-mail/plugins/att_remover.so
lib/claws-mail/plugins/attachwarner.la
lib/claws-mail/plugins/attachwarner.so
lib/claws-mail/plugins/bsfilter.la
lib/claws-mail/plugins/bsfilter.so
lib/claws-mail/plugins/clamd.la
lib/claws-mail/plugins/clamd.so
lib/claws-mail/plugins/fetchinfo.la
lib/claws-mail/plugins/fetchinfo.so
lib/claws-mail/plugins/mailmbox.la
lib/claws-mail/plugins/mailmbox.so
lib/claws-mail/plugins/newmail.la
lib/claws-mail/plugins/newmail.so
lib/claws-mail/plugins/notification.la
lib/claws-mail/plugins/notification.so
lib/claws-mail/plugins/perl.la
lib/claws-mail/plugins/perl.so
lib/claws-mail/plugins/pgpcore.la
lib/claws-mail/plugins/pgpcore.so
lib/claws-mail/plugins/pgpinline.deps
@ -240,11 +292,17 @@ lib/claws-mail/plugins/pgpinline.so
lib/claws-mail/plugins/pgpmime.deps
lib/claws-mail/plugins/pgpmime.la
lib/claws-mail/plugins/pgpmime.so
lib/claws-mail/plugins/rssyl.la
lib/claws-mail/plugins/rssyl.so
lib/claws-mail/plugins/smime.deps
lib/claws-mail/plugins/smime.la
lib/claws-mail/plugins/smime.so
lib/claws-mail/plugins/trayicon.la
lib/claws-mail/plugins/trayicon.so
lib/claws-mail/plugins/spamreport.la
lib/claws-mail/plugins/spamreport.so
lib/claws-mail/plugins/tnef_parse.la
lib/claws-mail/plugins/tnef_parse.so
lib/claws-mail/plugins/vcalendar.la
lib/claws-mail/plugins/vcalendar.so
lib/pkgconfig/claws-mail.pc
@man man/man1/claws-mail.1
share/applications/claws-mail.desktop
@ -302,6 +360,7 @@ share/locale/en_GB/LC_MESSAGES/claws-mail.mo
share/locale/es/LC_MESSAGES/claws-mail.mo
share/locale/fi/LC_MESSAGES/claws-mail.mo
share/locale/fr/LC_MESSAGES/claws-mail.mo
share/locale/he/LC_MESSAGES/claws-mail.mo
share/locale/hu/LC_MESSAGES/claws-mail.mo
share/locale/id_ID/
share/locale/id_ID/LC_MESSAGES/

View File

@ -0,0 +1,3 @@
@comment $OpenBSD: PLIST-pdfviewer,v 1.1 2013/09/25 08:03:17 landry Exp $
lib/claws-mail/plugins/pdf_viewer.la
lib/claws-mail/plugins/pdf_viewer.so