and gnutls_psk_allocate_server_credentials2() functions, the
application can use other MAC algorithms such as HMAC-SHA384.
+** libgnutls: Expose a new function to provide the maximum record send size
+ A new function gnutls_record_get_max_send_size() has been added to
+ determine the maximum size of a TLS record to be sent to the peer.
+
** API and ABI modifications:
gnutls_psk_allocate_client_credentials2: New function
gnutls_psk_allocate_server_credentials2: New function
+gnutls_record_get_max_send_size: New function
* Version 3.8.10 (released 2025-07-08)
gnutls_record_set_max_early_data_size@GNUTLS_3_6_4
gnutls_record_set_max_recv_size@GNUTLS_3_6_8
gnutls_record_set_max_size@GNUTLS_3_4
+gnutls_record_get_max_send_size@GNUTLS_3_8_11
gnutls_record_set_state@GNUTLS_3_4
gnutls_record_set_timeout@GNUTLS_3_4
gnutls_record_uncork@GNUTLS_3_4
FUNCS += functions/gnutls_record_set_max_recv_size.short
FUNCS += functions/gnutls_record_set_max_size
FUNCS += functions/gnutls_record_set_max_size.short
+FUNCS += functions/gnutls_record_get_max_send_size
+FUNCS += functions/gnutls_record_get_max_send_size.short
FUNCS += functions/gnutls_record_set_state
FUNCS += functions/gnutls_record_set_state.short
FUNCS += functions/gnutls_record_set_timeout
APIMANS += gnutls_record_set_max_early_data_size.3
APIMANS += gnutls_record_set_max_recv_size.3
APIMANS += gnutls_record_set_max_size.3
+APIMANS += gnutls_record_get_max_send_size.3
APIMANS += gnutls_record_set_state.3
APIMANS += gnutls_record_set_timeout.3
APIMANS += gnutls_record_uncork.3
return 0;
}
+
+/**
+ * gnutls_record_get_max_send_size:
+ * @session: is a #gnutls_session_t type.
+ *
+ * Get the maximum plaintext send size. This maybe negotiated, or user specified.
+ *
+ * Returns: The maximum plaintext send size.
+ *
+ * Since: 3.8.11
+ **/
+size_t gnutls_record_get_max_send_size(gnutls_session_t session)
+{
+ return max_record_send_size(session);
+}
ssize_t gnutls_record_recv_early_data(gnutls_session_t session, void *data,
size_t data_size);
+size_t gnutls_record_get_max_send_size(gnutls_session_t session);
+
void gnutls_session_force_valid(gnutls_session_t session);
int gnutls_prf(gnutls_session_t session, size_t label_size, const char *label,
global:
gnutls_psk_allocate_client_credentials2;
gnutls_psk_allocate_server_credentials2;
+ gnutls_record_get_max_send_size;
local:
*;
} GNUTLS_3_8_6;