[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] [gnurl] 42/208: http2: fix OOM crash
From: |
gnunet |
Subject: |
[GNUnet-SVN] [gnurl] 42/208: http2: fix OOM crash |
Date: |
Wed, 09 Aug 2017 17:33:59 +0200 |
This is an automated email from the git hooks/post-receive script.
ng0 pushed a commit to annotated tag gnurl-7.55.0
in repository gnurl.
commit 65ca030513303747be26a9d64851784cfff6f478
Author: Daniel Stenberg <address@hidden>
AuthorDate: Sun Jun 18 23:57:45 2017 +0200
http2: fix OOM crash
torture mode with test 1021 found it
---
lib/http2.c | 8 ++++++--
lib/http2.h | 7 ++++---
2 files changed, 10 insertions(+), 5 deletions(-)
diff --git a/lib/http2.c b/lib/http2.c
index f8e23c517..98fc147a9 100644
--- a/lib/http2.c
+++ b/lib/http2.c
@@ -2134,12 +2134,15 @@ CURLcode Curl_http2_switched(struct connectdata *conn,
return CURLE_OK;
}
-void Curl_http2_add_child(struct Curl_easy *parent, struct Curl_easy *child,
- bool exclusive)
+CURLcode Curl_http2_add_child(struct Curl_easy *parent,
+ struct Curl_easy *child,
+ bool exclusive)
{
if(parent) {
struct Curl_http2_dep **tail;
struct Curl_http2_dep *dep = calloc(1, sizeof(struct Curl_http2_dep));
+ if(!dep)
+ return CURLE_OUT_OF_MEMORY;
dep->data = child;
if(parent->set.stream_dependents && exclusive) {
@@ -2170,6 +2173,7 @@ void Curl_http2_add_child(struct Curl_easy *parent,
struct Curl_easy *child,
child->set.stream_depends_on = parent;
child->set.stream_depends_e = exclusive;
+ return CURLE_OK;
}
void Curl_http2_remove_child(struct Curl_easy *parent, struct Curl_easy *child)
diff --git a/lib/http2.h b/lib/http2.h
index f405b3aeb..f597c805e 100644
--- a/lib/http2.h
+++ b/lib/http2.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2016, Daniel Stenberg, <address@hidden>, et al.
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <address@hidden>, et al.
*
* This software is licensed as described in the file COPYING, which
* you should have received as part of this distribution. The terms
@@ -53,8 +53,9 @@ void Curl_http2_setup_conn(struct connectdata *conn);
void Curl_http2_setup_req(struct Curl_easy *data);
void Curl_http2_done(struct connectdata *conn, bool premature);
CURLcode Curl_http2_done_sending(struct connectdata *conn);
-void Curl_http2_add_child(struct Curl_easy *parent, struct Curl_easy *child,
- bool exclusive);
+CURLcode Curl_http2_add_child(struct Curl_easy *parent,
+ struct Curl_easy *child,
+ bool exclusive);
void Curl_http2_remove_child(struct Curl_easy *parent,
struct Curl_easy *child);
void Curl_http2_cleanup_dependencies(struct Curl_easy *data);
--
To stop receiving notification emails like this one, please contact
address@hidden
- [GNUnet-SVN] [gnurl] 137/208: strerror: Preserve Windows error code in some functions, (continued)
- [GNUnet-SVN] [gnurl] 137/208: strerror: Preserve Windows error code in some functions, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 176/208: tests/server/util: fix curltime mistake from 4dee50b9c80f9, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 138/208: curl_setup: always define WIN32_LEAN_AND_MEAN on Windows, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 150/208: rtspd: fix GCC warning after MSVC warning fix, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 36/208: tool_wrte_cb: remove check for config == NULL, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 156/208: multi: mention integer overflow risk if using > 500 million sockets, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 191/208: test1010: verify that #1718 is fixed, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 188/208: travis: BUILD_TYPE => T, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 72/208: libtest/make: generate lib1521.c, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 159/208: test1323: verify curlx_tvdiff, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 42/208: http2: fix OOM crash,
gnunet <=
- [GNUnet-SVN] [gnurl] 163/208: tool_help: clarify --include is only for response headers, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 206/208: THANKS: 20 new contributors in 7.55.0, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 183/208: test130: verify comments in .netrc, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 142/208: travis: install libssh2, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 135/208: errno: fix non-windows builds after af0216251b94e7, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 67/208: winbuild: fix boringssl build, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 168/208: libcurl: Stop using error codes defined under CURL_NO_OLDIES, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 48/208: lib1521: add curl_easy_getinfo calls to the test set, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 184/208: darwinssl: fix curlssl_sha256sum() compiler warnings on first argument, gnunet, 2017/08/09
- [GNUnet-SVN] [gnurl] 198/208: file: output the correct buffer to the user, gnunet, 2017/08/09