#include <openssl/evp.h>
#include <assert.h>
#include <openssl/dh.h>
#include <openssl/err.h>
#include <openssl/mem.h>
#include "internal.h"
DH_PKEY_CTX;
static int pkey_dh_init(EVP_PKEY_CTX *ctx) { … }
static int pkey_dh_copy(EVP_PKEY_CTX *dst, EVP_PKEY_CTX *src) { … }
static void pkey_dh_cleanup(EVP_PKEY_CTX *ctx) { … }
static int pkey_dh_keygen(EVP_PKEY_CTX *ctx, EVP_PKEY *pkey) { … }
static int pkey_dh_derive(EVP_PKEY_CTX *ctx, uint8_t *out, size_t *out_len) { … }
static int pkey_dh_ctrl(EVP_PKEY_CTX *ctx, int type, int p1, void *p2) { … }
const EVP_PKEY_METHOD dh_pkey_meth = …;
int EVP_PKEY_CTX_set_dh_pad(EVP_PKEY_CTX *ctx, int pad) { … }