allocation. Frees all the allocated data inside the DH context. */
void silc_dh_free(SilcDH dh);
-/* Generates random private value `x' such that 0 < x < lpf. Returns FALSE
- if the random number could not be generated. Returns the generated
- value into `x' pointer sent as argument, unless the `x' is NULL. The
- returned `x' must no be freed by the caller. */
+/* Generates random private value `x' such that 0 < x < lpf at most of
+ length of lpf. Returns FALSE if the random number could not be generated.
+ Returns the generated value into `x' pointer sent as argument, unless
+ the `x' is NULL. The returned `x' must no be freed by the caller. */
int silc_dh_generate_private(SilcDH dh, SilcInt **x);
/* Computes the public key y = g ^ x mod p, and returns it to the `y'
/* Sets the remote end's public value y' into the DH context. This must be
done before computing the secret key. Returns FALSE on error. */
-int silc_dh_set_remote_public(SilcDH dh, SilcInt **y);
+int silc_dh_set_remote_public(SilcDH dh, SilcInt *y);
/* Computes the secret key z = y' ^ x mod p, and returns the key to the
`z' pointer sent as argument, unless the `z' is NULL. Returns FALSE if
/* Same as above but returns the computed secret key as octet binary
string. */
int silc_dh_compute_key_data(SilcDH dh, unsigned char **z,
- unsigned int *z_len);
+ uint32 *z_len);
#endif