diff options
author | Sergey Matveychuk <sem@FreeBSD.org> | 2006-10-08 11:25:32 +0000 |
---|---|---|
committer | Sergey Matveychuk <sem@FreeBSD.org> | 2006-10-08 11:25:32 +0000 |
commit | 930b4752f78af86c50f56bd8b6541305e1b79e65 (patch) | |
tree | 984f99c21f10ef14348c11ebd50cba35f7297646 /devel/gsoap | |
parent | 414485f9972c47b2f4126322a71149cb49571e80 (diff) |
- A patch to prevent a buffer overrun
http://sourceforge.net/tracker/index.php?func=detail&aid=1534483&group_id=52781&atid=468021
PR: ports/103810
Submitted by: Simun Mikecin <numisemis at yahoo.com>
Notes
Notes:
svn path=/head/; revision=174918
Diffstat (limited to 'devel/gsoap')
-rw-r--r-- | devel/gsoap/Makefile | 2 | ||||
-rw-r--r-- | devel/gsoap/files/patch-soapcpp2-stdsoap2.c | 15 | ||||
-rw-r--r-- | devel/gsoap/files/patch-soapcpp2-stdsoap2.cpp | 13 |
3 files changed, 24 insertions, 6 deletions
diff --git a/devel/gsoap/Makefile b/devel/gsoap/Makefile index 904afd8bb18d..c2225b370f55 100644 --- a/devel/gsoap/Makefile +++ b/devel/gsoap/Makefile @@ -7,7 +7,7 @@ PORTNAME= gsoap PORTVERSION= 2.7.8c -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= devel MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} MASTER_SITE_SUBDIR= gsoap2 diff --git a/devel/gsoap/files/patch-soapcpp2-stdsoap2.c b/devel/gsoap/files/patch-soapcpp2-stdsoap2.c index 97a95f644c1b..1eb09229ddbe 100644 --- a/devel/gsoap/files/patch-soapcpp2-stdsoap2.c +++ b/devel/gsoap/files/patch-soapcpp2-stdsoap2.c @@ -1,6 +1,6 @@ ---- soapcpp2/stdsoap2.c.orig Sat May 20 00:20:40 2006 -+++ soapcpp2/stdsoap2.c Sat May 20 00:58:33 2006 -@@ -3251,7 +3251,7 @@ +--- soapcpp2/stdsoap2.c.orig Mon Jun 26 21:36:38 2006 ++++ soapcpp2/stdsoap2.c Fri Sep 29 14:22:51 2006 +@@ -3282,7 +3282,7 @@ soap->errnum = h_errno; } #elif defined(HAVE_GETHOSTBYNAME_R) @@ -9,3 +9,12 @@ #elif defined(VXWORKS) /* If the DNS resolver library resolvLib has been configured in the vxWorks * image, a query for the host IP address is sent to the DNS server, if the +@@ -7616,7 +7616,7 @@ + break; + } + if (!tp) +- { tp = (struct soap_attribute*)SOAP_MALLOC(soap, sizeof(struct soap_attribute) + strlen(soap->tmpbuf)); ++ { tp = (struct soap_attribute*)SOAP_MALLOC(soap, sizeof(struct soap_attribute) + strlen(soap->tmpbuf) + 1); + if (!tp) + return soap->error = SOAP_EOM; + strcpy(tp->name, soap->tmpbuf); diff --git a/devel/gsoap/files/patch-soapcpp2-stdsoap2.cpp b/devel/gsoap/files/patch-soapcpp2-stdsoap2.cpp index 5105d5ebba0d..d1e18682bb1e 100644 --- a/devel/gsoap/files/patch-soapcpp2-stdsoap2.cpp +++ b/devel/gsoap/files/patch-soapcpp2-stdsoap2.cpp @@ -1,5 +1,5 @@ ---- soapcpp2/stdsoap2.cpp.orig Mon Jun 26 23:36:38 2006 -+++ soapcpp2/stdsoap2.cpp Sat Aug 5 12:18:51 2006 +--- soapcpp2/stdsoap2.c.orig Mon Jun 26 21:36:38 2006 ++++ soapcpp2/stdsoap2.cpp Fri Sep 29 14:22:34 2006 @@ -3282,7 +3282,7 @@ soap->errnum = h_errno; } @@ -18,3 +18,12 @@ for (j = 0; j < sk_CONF_VALUE_num(val); j++) { CONF_VALUE *nval = sk_CONF_VALUE_value(val, j); if (nval && !strcmp(nval->name, "DNS") && !strcmp(nval->value, host)) +@@ -7616,7 +7616,7 @@ + break; + } + if (!tp) +- { tp = (struct soap_attribute*)SOAP_MALLOC(soap, sizeof(struct soap_attribute) + strlen(soap->tmpbuf)); ++ { tp = (struct soap_attribute*)SOAP_MALLOC(soap, sizeof(struct soap_attribute) + strlen(soap->tmpbuf) + 1); + if (!tp) + return soap->error = SOAP_EOM; + strcpy(tp->name, soap->tmpbuf); |