Index: head/devel/libsoup/Makefile =================================================================== --- head/devel/libsoup/Makefile (revision 454572) +++ head/devel/libsoup/Makefile (revision 454573) @@ -1,78 +1,78 @@ # Created by: Joe Marcus Clarke # $FreeBSD$ PORTNAME= libsoup PORTVERSION= 2.54.1 PORTREVISION= 0 CATEGORIES= devel gnome MASTER_SITES= GNOME DIST_SUBDIR= gnome2 MAINTAINER= gnome@FreeBSD.org COMMENT= SOAP (Simple Object Access Protocol) implementation in C BUILD_DEPENDS= glib-networking>=2.29.18:net/glib-networking LIB_DEPENDS= libgcrypt.so:security/libgcrypt RUN_DEPENDS= glib-networking>=2.29.18:net/glib-networking USES= tar:xz PORTSCOUT= limitw:1,even .if !defined(REFERENCE_PORT) USES+= gettext gmake gnome libtool pathfix pkgconfig \ python:3:build sqlite:3 tar:xz USE_GNOME= glib20 intlhack introspection:build \ libxml2 referencehack USE_LDCONFIG= yes GNU_CONFIGURE= yes CONFIGURE_ARGS= --disable-more-warnings \ --disable-vala CPPFLAGS+= -I${LOCALBASE}/include LIBS+= -L${LOCALBASE}/lib INSTALL_TARGET= install-strip -LIBVERSION= 1.7.0 +LIBVERSION= 1.8.0 PLIST_SUB= VERSION="2.4" LIBVERSION=${LIBVERSION} .if defined(SOUP_SLAVE) USES+= sqlite LIB_DEPENDS+= libsoup-2.4.so:devel/libsoup CONFIGURE_ARGS+=--with-gnome .else CONFIGURE_ARGS+=--without-gnome .endif post-patch: @${REINPLACE_CMD} -e 's|-Wmissing-include-dirs||g' \ ${WRKSRC}/configure @${REINPLACE_CMD} -e 's|env python|env ${PYTHON_VERSION}|g' \ ${WRKSRC}/libsoup/tld-parser.py @${REINPLACE_CMD} -e 's|DATADIRNAME=lib|DATADIRNAME=share|g' \ ${WRKSRC}/configure .if defined(SOUP_SLAVE) do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/share/gir-1.0/ ${INSTALL_DATA} ${WRKSRC}/libsoup/SoupGNOME-2.4.gir ${STAGEDIR}${PREFIX}/share/gir-1.0/ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/girepository-1.0/ ${INSTALL_DATA} ${WRKSRC}/libsoup/SoupGNOME-2.4.typelib ${STAGEDIR}${PREFIX}/lib/girepository-1.0/ ${INSTALL_PROGRAM} ${WRKSRC}/libsoup/.libs/libsoup-gnome-2.4.so ${STAGEDIR}${PREFIX}/lib/ ${INSTALL_PROGRAM} ${WRKSRC}/libsoup/.libs/libsoup-gnome-2.4.so.1 ${STAGEDIR}${PREFIX}/lib/ ${INSTALL_PROGRAM} ${WRKSRC}/libsoup/.libs/libsoup-gnome-2.4.so.${LIBVERSION} ${STAGEDIR}${PREFIX}/lib/ cd ${WRKSRC}/libsoup && DESTDIR=${STAGEDIR} ${GMAKE} install-libsoupgnomeincludeHEADERS .endif post-install: .if defined(SOUP_SLAVE) @${MKDIR} ${STAGEDIR}${PREFIX}/libdata/pkgconfig ${INSTALL_DATA} ${WRKSRC}/libsoup-gnome-2.4.pc \ ${STAGEDIR}${PREFIX}/libdata/pkgconfig/ .else ${INSTALL_DATA} ${WRKSRC}/libsoup/soup-connection.h \ ${STAGEDIR}${PREFIX}/include/libsoup-2.4/libsoup/soup-connection.h .endif .include .endif Index: head/devel/libsoup/files/patch-libsoup_Makefile.in =================================================================== --- head/devel/libsoup/files/patch-libsoup_Makefile.in (revision 454572) +++ head/devel/libsoup/files/patch-libsoup_Makefile.in (revision 454573) @@ -1,29 +1,29 @@ ---- libsoup/Makefile.in.orig 2014-03-10 13:11:37.184605224 +0000 -+++ libsoup/Makefile.in 2014-03-10 13:13:20.683597512 +0000 -@@ -176,7 +176,7 @@ - $(AM_CFLAGS) $(CFLAGS) $(libsoup_2_4_la_LDFLAGS) $(LDFLAGS) -o \ - $@ +--- libsoup/Makefile.in.orig 2016-04-26 12:36:13 UTC ++++ libsoup/Makefile.in +@@ -290,7 +290,7 @@ libsoup_2_4_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(libsoup_2_4_la_CFLAGS) $(CFLAGS) $(libsoup_2_4_la_LDFLAGS) \ + $(LDFLAGS) -o $@ @BUILD_LIBSOUP_GNOME_TRUE@libsoup_gnome_2_4_la_DEPENDENCIES = \ -@BUILD_LIBSOUP_GNOME_TRUE@ libsoup-2.4.la $(am__DEPENDENCIES_1) +@BUILD_LIBSOUP_GNOME_TRUE@ $(am__DEPENDENCIES_1) am__libsoup_gnome_2_4_la_SOURCES_DIST = soup-cookie-jar-sqlite.c \ soup-gnome-features.c soup-proxy-resolver-gnome.h \ soup-proxy-resolver-gnome.c soup-password-manager-gnome.h \ -@@ -629,7 +629,7 @@ - @BUILD_LIBSOUP_GNOME_TRUE@ -export-symbols $(srcdir)/libsoup-gnome-2.4.sym +@@ -788,7 +788,7 @@ TLD_DATA_FILE = $(top_srcdir)/data/effective_tld_names + @BUILD_LIBSOUP_GNOME_TRUE@ -export-dynamic @BUILD_LIBSOUP_GNOME_TRUE@libsoup_gnome_2_4_la_LIBADD = \ -@BUILD_LIBSOUP_GNOME_TRUE@ libsoup-2.4.la \ +@BUILD_LIBSOUP_GNOME_TRUE@ -lsoup-2.4 \ @BUILD_LIBSOUP_GNOME_TRUE@ $(GLIB_LIBS) @BUILD_LIBSOUP_GNOME_TRUE@libsoup_gnome_2_4_la_SOURCES = \ -@@ -682,7 +682,7 @@ +@@ -848,7 +848,7 @@ INTROSPECTION_COMPILER_ARGS = --includedir=. @BUILD_LIBSOUP_GNOME_TRUE@@HAVE_INTROSPECTION_TRUE@ --include-uninstalled=$(builddir)/Soup-2.4.gir @BUILD_LIBSOUP_GNOME_TRUE@@HAVE_INTROSPECTION_TRUE@SoupGNOME_2_4_gir_CFLAGS = $(AM_CPPFLAGS) -@BUILD_LIBSOUP_GNOME_TRUE@@HAVE_INTROSPECTION_TRUE@SoupGNOME_2_4_gir_LIBS = libsoup-gnome-2.4.la libsoup-2.4.la +@BUILD_LIBSOUP_GNOME_TRUE@@HAVE_INTROSPECTION_TRUE@SoupGNOME_2_4_gir_LIBS = libsoup-gnome-2.4.la soup-2.4 @BUILD_LIBSOUP_GNOME_TRUE@@HAVE_INTROSPECTION_TRUE@SoupGNOME_2_4_gir_FILES = $(addprefix $(srcdir)/,$(gi_soup_gnome_files)) @BUILD_LIBSOUP_GNOME_TRUE@@HAVE_INTROSPECTION_TRUE@SoupGNOME_2_4_gir_EXPORT_PACKAGES = libsoup-gnome-2.4 @HAVE_INTROSPECTION_TRUE@girdir = $(datadir)/gir-1.0 Index: head/devel/libsoup/files/patch-libsoup_soup-auth-negotiate.c =================================================================== --- head/devel/libsoup/files/patch-libsoup_soup-auth-negotiate.c (nonexistent) +++ head/devel/libsoup/files/patch-libsoup_soup-auth-negotiate.c (revision 454573) @@ -0,0 +1,10 @@ +--- libsoup/soup-auth-negotiate.c.orig 2016-03-14 16:19:35 UTC ++++ libsoup/soup-auth-negotiate.c +@@ -14,7 +14,6 @@ + + #ifdef LIBSOUP_HAVE_GSSAPI + #include +-#include + #endif /* LIBSOUP_HAVE_GSSAPI */ + + #include "soup-auth-negotiate.h" Property changes on: head/devel/libsoup/files/patch-libsoup_soup-auth-negotiate.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/devel/libsoup/files/patch-libsoup_soup-filter-input-stream.c =================================================================== --- head/devel/libsoup/files/patch-libsoup_soup-filter-input-stream.c (revision 454572) +++ head/devel/libsoup/files/patch-libsoup_soup-filter-input-stream.c (revision 454573) @@ -1,58 +1,49 @@ From 03c91c76daf70ee227f38304c5e45a155f45073d Mon Sep 17 00:00:00 2001 From: Dan Winship Date: Thu, 3 Aug 2017 09:56:43 -0400 Subject: Fix chunked decoding buffer overrun (CVE-2017-2885) https://bugzilla.gnome.org/show_bug.cgi?id=785774 ---- - libsoup/soup-filter-input-stream.c | 22 +++++++++++----------- - 1 file changed, 11 insertions(+), 11 deletions(-) - -diff --git a/libsoup/soup-filter-input-stream.c b/libsoup/soup-filter-input-stream.c -index cde4d12..2c30bf9 100644 ---- libsoup/soup-filter-input-stream.c +--- libsoup/soup-filter-input-stream.c.orig 2016-02-05 15:05:33 UTC +++ libsoup/soup-filter-input-stream.c -@@ -198,7 +198,7 @@ soup_filter_input_stream_read_until (SoupFilterInputStream *fstream, +@@ -201,7 +201,7 @@ soup_filter_input_stream_read_until (SoupFilterInputSt GCancellable *cancellable, GError **error) { - gssize nread; + gssize nread, read_length; guint8 *p, *buf, *end; gboolean eof = FALSE; GError *my_error = NULL; -@@ -251,10 +251,11 @@ soup_filter_input_stream_read_until (SoupFilterInputStream *fstream, +@@ -254,10 +254,11 @@ soup_filter_input_stream_read_until (SoupFilterInputSt } else buf = fstream->priv->buf->data; - /* Scan for the boundary */ - end = buf + fstream->priv->buf->len; - if (!eof) - end -= boundary_length; + /* Scan for the boundary within the range we can possibly return. */ + if (include_boundary) + end = buf + MIN (fstream->priv->buf->len, length) - boundary_length; + else + end = buf + MIN (fstream->priv->buf->len - boundary_length, length); for (p = buf; p <= end; p++) { if (*p == *(guint8*)boundary && !memcmp (p, boundary, boundary_length)) { -@@ -268,10 +269,9 @@ soup_filter_input_stream_read_until (SoupFilterInputStream *fstream, +@@ -271,10 +272,9 @@ soup_filter_input_stream_read_until (SoupFilterInputSt if (!*got_boundary && fstream->priv->buf->len < length && !eof) goto fill_buffer; - /* Return everything up to 'p' (which is either just after the boundary if - * include_boundary is TRUE, just before the boundary if include_boundary is - * FALSE, @boundary_len - 1 bytes before the end of the buffer, or end-of- - * file). - */ - return read_from_buf (fstream, buffer, p - buf); + if (eof && !*got_boundary) + read_length = MIN (fstream->priv->buf->len, length); + else + read_length = p - buf; + return read_from_buf (fstream, buffer, read_length); } --- -cgit v0.12 -