libraries/libvmime: Updated for version 156edf5c.

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
Willy Sudiarto Raharjo 2016-02-07 09:47:10 +07:00
parent 80917552bb
commit 4d1fe2e6e2
3 changed files with 26 additions and 171 deletions

View File

@ -26,7 +26,9 @@
# revision date 2013/03/31
PRGNAM=libvmime
VERSION=${VERSION:-0.9.1}
SRCNAM=vmime
VERSION=${VERSION:-156edf5c}
GITVER=${GITVER:-156edf5cba99a9d95bb3cfbcbd287c449a9385d9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@ -59,11 +61,11 @@ fi
set -e
rm -rf $TMP/$PRGNAM-$VERSION $PKG
rm -rf $TMP/$SRCNAM-$GITVER $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
unzip $CWD/$GITVER.zip
cd $SRCNAM-$GITVER
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@ -71,25 +73,26 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# Apply patch for newer gnutls version
patch -p1 <$CWD/libvmime_gnutls3.patch
mkdir -p build
cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
-DMAN_INSTALL_DIR=/usr/man \
-DCMAKE_BUILD_TYPE=Release ..
make
make install DESTDIR=$PKG
cd ..
EXTRA_CFLAGS=$SLKCFLAGS \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--localstatedir=/var \
--mandir=/usr/man \
--build=$ARCH-slackware-linux
make docdir=/usr/doc/$PRGNAM-$VERSION
make docdir=/usr/doc/$PRGNAM-$VERSION install DESTDIR=$PKG
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS COPYING HACKING README* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc

View File

@ -1,8 +1,8 @@
PRGNAM="libvmime"
VERSION="0.9.1"
VERSION="156edf5c"
HOMEPAGE="http://www.vmime.org/"
DOWNLOAD="http://downloads.sourceforge.net/vmime/libvmime-0.9.1.tar.bz2"
MD5SUM="d5b6de44f7f9ca0e4cefe597d1905605"
DOWNLOAD="https://github.com/kisli/vmime/archive/156edf5cba99a9d95bb3cfbcbd287c449a9385d9.zip"
MD5SUM="e31a255226d97df04f217161b835208f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libgsasl"

View File

@ -1,148 +0,0 @@
--- libvmime-0.9.1/src/net/tls/TLSSession.cpp 2010-08-19 04:44:52.000000000 -0300
+++ libvmime-0.9.1_patched/src/net/tls/TLSSession.cpp 2013-03-31 09:35:30.294331115 -0300
@@ -22,7 +22,9 @@
//
#include <gnutls/gnutls.h>
+#if GNUTLS_VERSION_NUMBER < 0x030000
#include <gnutls/extra.h>
+#endif
#include "vmime/config.hpp"
@@ -41,6 +41,9 @@
//#define GNUTLS_DEBUG 1
+#include <sstream>
+#include <iomanip>
+
#if VMIME_DEBUG && GNUTLS_DEBUG
#include <iostream>
#endif // VMIME_DEBUG && GNUTLS_DEBUG
@@ -240,119 +243,14 @@
void TLSSession::throwTLSException(const string& fname, const int code)
{
- string msg = fname + "() returned ";
-
-#define ERROR(x) \
- case x: msg += #x; break;
-
- switch (code)
- {
- ERROR(GNUTLS_E_SUCCESS)
- ERROR(GNUTLS_E_UNKNOWN_COMPRESSION_ALGORITHM)
- ERROR(GNUTLS_E_UNKNOWN_CIPHER_TYPE)
- ERROR(GNUTLS_E_LARGE_PACKET)
- ERROR(GNUTLS_E_UNSUPPORTED_VERSION_PACKET)
- ERROR(GNUTLS_E_UNEXPECTED_PACKET_LENGTH)
- ERROR(GNUTLS_E_INVALID_SESSION)
- ERROR(GNUTLS_E_FATAL_ALERT_RECEIVED)
- ERROR(GNUTLS_E_UNEXPECTED_PACKET)
- ERROR(GNUTLS_E_WARNING_ALERT_RECEIVED)
- ERROR(GNUTLS_E_ERROR_IN_FINISHED_PACKET)
- ERROR(GNUTLS_E_UNEXPECTED_HANDSHAKE_PACKET)
- ERROR(GNUTLS_E_UNKNOWN_CIPHER_SUITE)
- ERROR(GNUTLS_E_UNWANTED_ALGORITHM)
- ERROR(GNUTLS_E_MPI_SCAN_FAILED)
- ERROR(GNUTLS_E_DECRYPTION_FAILED)
- ERROR(GNUTLS_E_MEMORY_ERROR)
- ERROR(GNUTLS_E_DECOMPRESSION_FAILED)
- ERROR(GNUTLS_E_COMPRESSION_FAILED)
- ERROR(GNUTLS_E_AGAIN)
- ERROR(GNUTLS_E_EXPIRED)
- ERROR(GNUTLS_E_DB_ERROR)
- ERROR(GNUTLS_E_SRP_PWD_ERROR)
- ERROR(GNUTLS_E_INSUFFICIENT_CREDENTIALS)
- ERROR(GNUTLS_E_HASH_FAILED)
- ERROR(GNUTLS_E_BASE64_DECODING_ERROR)
- ERROR(GNUTLS_E_MPI_PRINT_FAILED)
- ERROR(GNUTLS_E_REHANDSHAKE)
- ERROR(GNUTLS_E_GOT_APPLICATION_DATA)
- ERROR(GNUTLS_E_RECORD_LIMIT_REACHED)
- ERROR(GNUTLS_E_ENCRYPTION_FAILED)
- ERROR(GNUTLS_E_PK_ENCRYPTION_FAILED)
- ERROR(GNUTLS_E_PK_DECRYPTION_FAILED)
- ERROR(GNUTLS_E_PK_SIGN_FAILED)
- ERROR(GNUTLS_E_X509_UNSUPPORTED_CRITICAL_EXTENSION)
- ERROR(GNUTLS_E_KEY_USAGE_VIOLATION)
- ERROR(GNUTLS_E_NO_CERTIFICATE_FOUND)
- ERROR(GNUTLS_E_INVALID_REQUEST)
- ERROR(GNUTLS_E_SHORT_MEMORY_BUFFER)
- ERROR(GNUTLS_E_INTERRUPTED)
- ERROR(GNUTLS_E_PUSH_ERROR)
- ERROR(GNUTLS_E_PULL_ERROR)
- ERROR(GNUTLS_E_RECEIVED_ILLEGAL_PARAMETER)
- ERROR(GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE)
- ERROR(GNUTLS_E_PKCS1_WRONG_PAD)
- ERROR(GNUTLS_E_RECEIVED_ILLEGAL_EXTENSION)
- ERROR(GNUTLS_E_INTERNAL_ERROR)
- ERROR(GNUTLS_E_DH_PRIME_UNACCEPTABLE)
- ERROR(GNUTLS_E_FILE_ERROR)
- ERROR(GNUTLS_E_TOO_MANY_EMPTY_PACKETS)
- ERROR(GNUTLS_E_UNKNOWN_PK_ALGORITHM)
- ERROR(GNUTLS_E_INIT_LIBEXTRA)
- ERROR(GNUTLS_E_LIBRARY_VERSION_MISMATCH)
- ERROR(GNUTLS_E_NO_TEMPORARY_RSA_PARAMS)
- ERROR(GNUTLS_E_LZO_INIT_FAILED)
- ERROR(GNUTLS_E_NO_COMPRESSION_ALGORITHMS)
- ERROR(GNUTLS_E_NO_CIPHER_SUITES)
- ERROR(GNUTLS_E_OPENPGP_GETKEY_FAILED)
- ERROR(GNUTLS_E_PK_SIG_VERIFY_FAILED)
- ERROR(GNUTLS_E_ILLEGAL_SRP_USERNAME)
- ERROR(GNUTLS_E_SRP_PWD_PARSING_ERROR)
- ERROR(GNUTLS_E_NO_TEMPORARY_DH_PARAMS)
- ERROR(GNUTLS_E_ASN1_ELEMENT_NOT_FOUND)
- ERROR(GNUTLS_E_ASN1_IDENTIFIER_NOT_FOUND)
- ERROR(GNUTLS_E_ASN1_DER_ERROR)
- ERROR(GNUTLS_E_ASN1_VALUE_NOT_FOUND)
- ERROR(GNUTLS_E_ASN1_GENERIC_ERROR)
- ERROR(GNUTLS_E_ASN1_VALUE_NOT_VALID)
- ERROR(GNUTLS_E_ASN1_TAG_ERROR)
- ERROR(GNUTLS_E_ASN1_TAG_IMPLICIT)
- ERROR(GNUTLS_E_ASN1_TYPE_ANY_ERROR)
- ERROR(GNUTLS_E_ASN1_SYNTAX_ERROR)
- ERROR(GNUTLS_E_ASN1_DER_OVERFLOW)
- //ERROR(GNUTLS_E_OPENPGP_TRUSTDB_VERSION_UNSUPPORTED)
- ERROR(GNUTLS_E_OPENPGP_UID_REVOKED)
- ERROR(GNUTLS_E_CERTIFICATE_ERROR)
- //ERROR(GNUTLS_E_X509_CERTIFICATE_ERROR)
- ERROR(GNUTLS_E_CERTIFICATE_KEY_MISMATCH)
- ERROR(GNUTLS_E_UNSUPPORTED_CERTIFICATE_TYPE)
- ERROR(GNUTLS_E_X509_UNKNOWN_SAN)
- ERROR(GNUTLS_E_OPENPGP_FINGERPRINT_UNSUPPORTED)
- ERROR(GNUTLS_E_X509_UNSUPPORTED_ATTRIBUTE)
- ERROR(GNUTLS_E_UNKNOWN_HASH_ALGORITHM)
- ERROR(GNUTLS_E_UNKNOWN_PKCS_CONTENT_TYPE)
- ERROR(GNUTLS_E_UNKNOWN_PKCS_BAG_TYPE)
- ERROR(GNUTLS_E_INVALID_PASSWORD)
- ERROR(GNUTLS_E_MAC_VERIFY_FAILED)
- ERROR(GNUTLS_E_CONSTRAINT_ERROR)
- ERROR(GNUTLS_E_BASE64_ENCODING_ERROR)
- ERROR(GNUTLS_E_INCOMPATIBLE_GCRYPT_LIBRARY)
- //ERROR(GNUTLS_E_INCOMPATIBLE_CRYPTO_LIBRARY)
- ERROR(GNUTLS_E_INCOMPATIBLE_LIBTASN1_LIBRARY)
- ERROR(GNUTLS_E_OPENPGP_KEYRING_ERROR)
- ERROR(GNUTLS_E_X509_UNSUPPORTED_OID)
- //ERROR(GNUTLS_E_RANDOM_FAILED)
- ERROR(GNUTLS_E_UNIMPLEMENTED_FEATURE)
-
- default:
-
- msg += "unknown error";
- break;
- }
+ std::ostringstream msg;
-#undef ERROR
+ msg << fname + "() returned code ";
+ msg << std::hex << code;
+ msg << ": ";
+ msg << gnutls_strerror(code);
- throw exceptions::tls_exception(msg);
+ throw exceptions::tls_exception(msg.str());
}