ticket.encrypted_state_len + TAG_SIZE;
bufel =
- _gnutls_handshake_alloc(session, 4 + 2 + ticket_len,
+ _gnutls_handshake_alloc(session,
4 + 2 + ticket_len);
if (!bufel) {
gnutls_assert();
data_size = priv->response.size + 4;
bufel =
- _gnutls_handshake_alloc(session, data_size, data_size);
+ _gnutls_handshake_alloc(session, data_size);
if (!bufel)
return gnutls_assert_val(GNUTLS_E_MEMORY_ERROR);
if (again == 0) {
bufel =
- _gnutls_handshake_alloc(session, MAX_VERIFY_DATA_SIZE,
+ _gnutls_handshake_alloc(session,
MAX_VERIFY_DATA_SIZE);
if (bufel == NULL) {
gnutls_assert();
mbuffer_st *bufel;
if (again == 0) {
- bufel = _gnutls_handshake_alloc(session, 0, 0);
+ bufel = _gnutls_handshake_alloc(session, 0);
if (bufel == NULL) {
gnutls_assert();
return GNUTLS_E_MEMORY_ERROR;
*/
bufel =
- _gnutls_handshake_alloc(session, datalen,
+ _gnutls_handshake_alloc(session,
datalen + MAX_EXT_DATA_LENGTH);
if (bufel == NULL) {
gnutls_assert();
return GNUTLS_E_MEMORY_ERROR;
}
+ _mbuffer_set_udata_size(bufel, datalen);
data = _mbuffer_get_udata_ptr(bufel);
/* if we are resuming a session then we set the
bufel =
_gnutls_handshake_alloc(session,
- datalen + extdata.length,
datalen + extdata.length);
if (bufel == NULL) {
gnutls_assert();
}
bufel =
- _gnutls_handshake_alloc(session, buf.length,
+ _gnutls_handshake_alloc(session,
buf.length);
if (bufel == NULL) {
gnutls_assert();
const version_entry_st *vers;
if (again == 0) {
- bufel = _gnutls_handshake_alloc(session, 1, 1);
+ bufel = _gnutls_handshake_alloc(session, 1);
if (bufel == NULL)
return gnutls_assert_val(GNUTLS_E_MEMORY_ERROR);
/* This is a temporary function to be used before the generate_*
internal API is changed to use mbuffers. For now we don't avoid the
extra alloc + memcpy. */
-static inline int
+static int
send_handshake(gnutls_session_t session, uint8_t * data, size_t size,
gnutls_handshake_description_t type)
{
return GNUTLS_E_INVALID_REQUEST;
}
- bufel = _gnutls_handshake_alloc(session, size, size);
+ bufel = _gnutls_handshake_alloc(session, size);
if (bufel == NULL) {
gnutls_assert();
return GNUTLS_E_MEMORY_ERROR;
/* For "user" use. One can have buffer data and header.
*/
-inline static void
-_mbuffer_set_udata(mbuffer_st * bufel, void *data, size_t data_size)
-{
- memcpy(bufel->msg.data + bufel->mark + bufel->uhead_mark, data,
- data_size);
- bufel->msg.size = data_size + bufel->uhead_mark + bufel->mark;
-}
-
inline static void *_mbuffer_get_uhead_ptr(mbuffer_st * bufel)
{
return bufel->msg.data + bufel->mark;
bufel->msg.size = size + bufel->uhead_mark + bufel->mark;
}
+inline static void
+_mbuffer_set_udata(mbuffer_st * bufel, void *data, size_t data_size)
+{
+ memcpy(_mbuffer_get_udata_ptr(bufel), data,
+ data_size);
+ _mbuffer_set_udata_size(bufel, data_size);
+}
+
inline static size_t _mbuffer_get_udata_size(mbuffer_st * bufel)
{
return bufel->msg.size - bufel->uhead_mark - bufel->mark;
inline static mbuffer_st *_gnutls_handshake_alloc(gnutls_session_t session,
- size_t size,
size_t maximum)
{
mbuffer_st *bufel =
if (!bufel)
return NULL;
- _mbuffer_set_udata_size(bufel, HANDSHAKE_HEADER_SIZE(session) + size);
_mbuffer_set_uhead_size(bufel, HANDSHAKE_HEADER_SIZE(session));
+ _mbuffer_set_udata_size(bufel, maximum);
return bufel;
}