summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Bastien-Filiatrault <joe@x2a.org>2010-09-17 20:33:38 -0400
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2011-02-17 22:23:10 +0100
commit183bc93e31faa4d127ce07c4b86b9428612f49eb (patch)
treea1adbe0806a6cefdd69e146c4178c3f64a2b1d91
parentbe09a50d4839d717fc16db2bbd0d91b4ede6a8fb (diff)
downloadgnutls-183bc93e31faa4d127ce07c4b86b9428612f49eb.tar.gz
Allocate session buffers of size, depending on type of session.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
-rw-r--r--lib/ext_session_ticket.c3
-rw-r--r--lib/gnutls_handshake.c13
-rw-r--r--lib/gnutls_kx.c2
-rw-r--r--lib/gnutls_mbuffers.h2
4 files changed, 8 insertions, 12 deletions
diff --git a/lib/ext_session_ticket.c b/lib/ext_session_ticket.c
index 25a01a05f9..9c44b90555 100644
--- a/lib/ext_session_ticket.c
+++ b/lib/ext_session_ticket.c
@@ -648,8 +648,7 @@ _gnutls_send_new_session_ticket (gnutls_session_t session, int again)
ticket_len = KEY_NAME_SIZE + IV_SIZE + 2 + ticket.encrypted_state_len
+ MAC_SIZE;
- bufel =
- _gnutls_handshake_alloc (4 + 2 + ticket_len, 4 + 2 + ticket_len);
+ bufel = _gnutls_handshake_alloc (session, 4 + 2 + ticket_len, 4+2+ticket_len);
if (!bufel)
{
gnutls_assert ();
diff --git a/lib/gnutls_handshake.c b/lib/gnutls_handshake.c
index 84fb9e120c..75751edae5 100644
--- a/lib/gnutls_handshake.c
+++ b/lib/gnutls_handshake.c
@@ -672,8 +672,7 @@ _gnutls_send_finished (gnutls_session_t session, int again)
if (again == 0)
{
- bufel =
- _gnutls_handshake_alloc (MAX_VERIFY_DATA_SIZE, MAX_VERIFY_DATA_SIZE);
+ bufel = _gnutls_handshake_alloc (session, MAX_VERIFY_DATA_SIZE, MAX_VERIFY_DATA_SIZE);
if (bufel == NULL)
{
gnutls_assert ();
@@ -1093,7 +1092,7 @@ _gnutls_send_empty_handshake (gnutls_session_t session,
if (again == 0)
{
- bufel = _gnutls_handshake_alloc (0, 0);
+ bufel = _gnutls_handshake_alloc (session, 0, 0);
if (bufel == NULL)
{
gnutls_assert ();
@@ -2049,8 +2048,7 @@ _gnutls_send_client_hello (gnutls_session_t session, int again)
/* 2 for version, (4 for unix time + 28 for random bytes==GNUTLS_RANDOM_SIZE)
*/
- bufel =
- _gnutls_handshake_alloc (datalen, datalen + MAX_EXT_DATA_LENGTH);
+ bufel = _gnutls_handshake_alloc (session, datalen, datalen+MAX_EXT_DATA_LENGTH);
if (bufel == NULL)
{
gnutls_assert ();
@@ -2224,8 +2222,7 @@ _gnutls_send_server_hello (gnutls_session_t session, int again)
goto fail;
}
- bufel =
- _gnutls_handshake_alloc (datalen + extdata.length, datalen + extdata.length);
+ bufel = _gnutls_handshake_alloc (session, datalen + extdatalen, datalen + extdatalen);
if (bufel == NULL)
{
gnutls_assert ();
@@ -2541,7 +2538,7 @@ _gnutls_send_supplemental (gnutls_session_t session, int again)
return ret;
}
- bufel = _gnutls_handshake_alloc (buf.length, buf.length);
+ bufel = _gnutls_handshake_alloc(session, buf.length, buf.length);
if (bufel == NULL)
{
gnutls_assert ();
diff --git a/lib/gnutls_kx.c b/lib/gnutls_kx.c
index 24e0b83140..d105c166a7 100644
--- a/lib/gnutls_kx.c
+++ b/lib/gnutls_kx.c
@@ -58,7 +58,7 @@ send_handshake (gnutls_session_t session, opaque * data, size_t size,
return GNUTLS_E_INVALID_REQUEST;
}
- bufel = _gnutls_handshake_alloc (size, size);
+ bufel = _gnutls_handshake_alloc(session, size, size);
if (bufel == NULL)
{
gnutls_assert ();
diff --git a/lib/gnutls_mbuffers.h b/lib/gnutls_mbuffers.h
index 99b0addf4b..6b3f424859 100644
--- a/lib/gnutls_mbuffers.h
+++ b/lib/gnutls_mbuffers.h
@@ -93,7 +93,7 @@ _mbuffer_set_uhead_size (mbuffer_st * bufel, size_t size)
inline static mbuffer_st *
-_gnutls_handshake_alloc (size_t size, size_t maximum)
+_gnutls_handshake_alloc (gnutls_session_t session, size_t size, size_t maximum)
{
mbuffer_st *ret = _mbuffer_alloc (HANDSHAKE_HEADER_SIZE + size,
HANDSHAKE_HEADER_SIZE + maximum);