[#SRP_Calc_u_ex]
= SRP&lowbar;Calc&lowbar;u&lowbar;ex
:mrdocs:

Compute the SRP scrambling parameter u &equals; H(PAD(A) &verbar;&verbar; PAD(B))&period;

== Synopsis

Declared in `&lt;openssl&sol;srp&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lsqb;&lsqb;deprecated&rsqb;&rsqb;
xref:BIGNUM.adoc[BIGNUM]*
SRP&lowbar;Calc&lowbar;u&lowbar;ex(
    xref:BIGNUM.adoc[BIGNUM] const* A,
    xref:BIGNUM.adoc[BIGNUM] const* B,
    xref:BIGNUM.adoc[BIGNUM] const* N,
    xref:OSSL_LIB_CTX.adoc[OSSL&lowbar;LIB&lowbar;CTX]* libctx,
    char const* propq);
----

[WARNING]
====
https://en.cppreference.com/cpp/language/attributes/deprecated[Deprecated^]. Use of this entity is allowed but discouraged.
====
== Return Value

Newly allocated u value, or NULL on error&period; Caller must free&period;

== Parameters

[cols="1,4"]
|===
| Name| Description
| *A*
| Client public value&period;
| *B*
| Server public value&period;
| *N*
| Safe prime modulus used for padding width&period;
| *libctx*
| Library context for algorithm fetching, or NULL for default&period;
| *propq*
| Property query for algorithm fetching, or NULL&period;
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
