summaryrefslogtreecommitdiffstats
path: root/doc/functions/gnutls_prf_rfc5705
diff options
context:
space:
mode:
Diffstat (limited to 'doc/functions/gnutls_prf_rfc5705')
-rw-r--r--doc/functions/gnutls_prf_rfc570546
1 files changed, 46 insertions, 0 deletions
diff --git a/doc/functions/gnutls_prf_rfc5705 b/doc/functions/gnutls_prf_rfc5705
new file mode 100644
index 0000000..f559b75
--- /dev/null
+++ b/doc/functions/gnutls_prf_rfc5705
@@ -0,0 +1,46 @@
+
+
+
+
+@deftypefun {int} {gnutls_prf_rfc5705} (gnutls_session_t @var{session}, size_t @var{label_size}, const char * @var{label}, size_t @var{context_size}, const char * @var{context}, size_t @var{outsize}, char * @var{out})
+@var{session}: is a @code{gnutls_session_t} type.
+
+@var{label_size}: length of the @code{label} variable.
+
+@var{label}: label used in PRF computation, typically a short string.
+
+@var{context_size}: length of the @code{extra} variable.
+
+@var{context}: optional extra data to seed the PRF with.
+
+@var{outsize}: size of pre-allocated output buffer to hold the output.
+
+@var{out}: pre-allocated buffer to hold the generated data.
+
+Exports keying material from TLS/DTLS session to an application, as
+specified in RFC5705.
+
+In the TLS versions prior to 1.3, it applies the TLS
+Pseudo-Random-Function (PRF) on the master secret and the provided
+data, seeded with the client and server random fields.
+
+In TLS 1.3, it applies HKDF on the exporter master secret derived
+from the master secret.
+
+The @code{label} variable usually contains a string denoting the purpose
+for the generated data.
+
+The @code{context} variable can be used to add more data to the seed, after
+the random variables. It can be used to make sure the
+generated output is strongly connected to some additional data
+(e.g., a string used in user authentication).
+
+The output is placed in @code{out} , which must be pre-allocated.
+
+Note that, to provide the RFC5705 context, the @code{context} variable
+must be non-null.
+
+@strong{Returns:} @code{GNUTLS_E_SUCCESS} on success, or an error code.
+
+@strong{Since:} 3.4.4
+@end deftypefun