Index: head/security/gpgme/Makefile =================================================================== --- head/security/gpgme/Makefile (revision 186681) +++ head/security/gpgme/Makefile (revision 186682) @@ -1,59 +1,59 @@ # New ports collection makefile for: gpgme # Date created: 15 June 2001 # Whom: teramoto@comm.eng.osaka-u.ac.jp # # $FreeBSD$ # PORTNAME= gpgme PORTVERSION= 1.1.3 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= security MASTER_SITES= ${MASTER_SITE_GNUPG} MASTER_SITE_SUBDIR= gpgme MAINTAINER= lofi@FreeBSD.org COMMENT= A library to make access to GnuPG easier BUILD_DEPENDS= gpg2:${PORTSDIR}/security/gnupg \ gpgsm:${PORTSDIR}/security/gnupg LIB_DEPENDS= gpg-error.3:${PORTSDIR}/security/libgpg-error USE_AUTOTOOLS= libtool:15 USE_GMAKE= yes INSTALLS_SHLIB= yes CONFIGURE_TARGET=--build=${MACHINE_ARCH}-portbld-freebsd${OSREL} CONFIGURE_ARGS= --with-gpg=${LOCALBASE}/bin/gpg \ --with-gpgsm=${LOCALBASE}/bin/gpgsm \ --includedir=${PREFIX}/include/gpgme INFO= gpgme OPTIONS= PTH "Enable alternative libgpgme using GNU portable threads" off .include .if defined(WITH_PTH) LIB_DEPENDS+= pth:${PORTSDIR}/devel/pth PLIST_SUB+= WITH_PTH='' .elif defined(WITHOUT_PTH) CONFIGURE_ARGS+=--without-pth --without-pth-test PLIST_SUB+= WITH_PTH='@comment ' .endif post-patch: @${REINPLACE_CMD} -e 's|EOF||g' ${WRKSRC}/assuan/assuan-errors.c @${REINPLACE_CMD} -e 's|-lpthread|${PTHREAD_LIBS}|g' \ ${WRKSRC}/${CONFIGURE_SCRIPT} \ ${WRKSRC}/gpgme/Makefile.in \ ${WRKSRC}/gpgme/gpgme-config.in @${REINPLACE_CMD} -e 's|^clfilesdir.*|clfilesdir=$$\(libdir\)/common-lisp/gpgme|g' \ ${WRKSRC}/lang/cl/Makefile.in .if defined(WITH_PTH) .if ${OSVERSION} < 503100 || defined(PTHREAD_LIBS) && ${PTHREAD_LIBS} != "-pthread" @${REINPLACE_CMD} -e 's|t_thread1_LDADD = ../../gpgme/libgpgme-pthread.la|t_thread1_LDADD = ../../gpgme/libgpgme-pthread.la -lpthread|g' \ ${WRKSRC}/tests/gpg/Makefile.in .endif .endif .include Property changes on: head/security/gpgme/Makefile ___________________________________________________________________ Modified: cvs2svn:cvs-rev ## -1 +1 ## -1.45 \ No newline at end of property +1.46 \ No newline at end of property Index: head/security/gpgme/files/patch-gpgme-1.1.3-multiple-message.patch =================================================================== --- head/security/gpgme/files/patch-gpgme-1.1.3-multiple-message.patch (nonexistent) +++ head/security/gpgme/files/patch-gpgme-1.1.3-multiple-message.patch (revision 186682) @@ -0,0 +1,65 @@ +Index: gpgme/verify.c +=================================================================== +--- gpgme/verify.c (revision 1208) ++++ gpgme/verify.c (working copy) +@@ -40,6 +40,7 @@ + gpgme_signature_t current_sig; + int did_prepare_new_sig; + int only_newsig_seen; ++ int plaintext_seen; + } *op_data_t; + + +@@ -549,8 +550,11 @@ + } + + ++/* Parse an error status line and if SET_STATUS is true update the ++ result status as appropriate. With SET_STATUS being false, only ++ check for an error. */ + static gpgme_error_t +-parse_error (gpgme_signature_t sig, char *args) ++parse_error (gpgme_signature_t sig, char *args, int set_status) + { + gpgme_error_t err; + char *where = strchr (args, ' '); +@@ -572,7 +576,16 @@ + + err = _gpgme_map_gnupg_error (which); + +- if (!strcmp (where, "verify.findkey")) ++ if (!strcmp (where, "proc_pkt.plaintext") ++ && gpg_err_code (err) == GPG_ERR_BAD_DATA) ++ { ++ /* This indicates a double plaintext. The only solid way to ++ handle this is by failing the oepration. */ ++ return gpg_error (GPG_ERR_BAD_DATA); ++ } ++ else if (!set_status) ++ ; ++ else if (!strcmp (where, "verify.findkey")) + sig->status = err; + else if (!strcmp (where, "verify.keyusage") + && gpg_err_code (err) == GPG_ERR_WRONG_KEY_USAGE) +@@ -670,9 +683,9 @@ + + case GPGME_STATUS_ERROR: + opd->only_newsig_seen = 0; +- /* The error status is informational, so we don't return an +- error code if we are not ready to process this status. */ +- return sig ? parse_error (sig, args) : 0; ++ /* Some error stati are informational, so we don't return an ++ error code if we are not ready to process this status. */ ++ return parse_error (sig, args, !!sig ); + + case GPGME_STATUS_EOF: + if (sig && !opd->did_prepare_new_sig) +@@ -703,6 +716,8 @@ + break; + + case GPGME_STATUS_PLAINTEXT: ++ if (++opd->plaintext_seen > 1) ++ return gpg_error (GPG_ERR_BAD_DATA); + err = _gpgme_parse_plaintext (args, &opd->result.file_name); + if (err) + return err; Property changes on: head/security/gpgme/files/patch-gpgme-1.1.3-multiple-message.patch ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1 \ No newline at end of property Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property