/* * Diffie-Hellman secret to be used with kpp API along with helper functions * * Copyright (c) 2016, Intel Corporation * Authors: Salvatore Benedetto * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the Free * Software Foundation; either version 2 of the License, or (at your option) * any later version. * */ #ifndef _CRYPTO_DH_ #define _CRYPTO_DH_ /** * DOC: DH Helper Functions * * To use DH with the KPP cipher API, the following data structure and * functions should be used. * * To use DH with KPP, the following functions should be used to operate on * a DH private key. The packet private key that can be set with * the KPP API function call of crypto_kpp_set_secret. */ /** * struct dh - define a DH private key * * @key: Private DH key * @p: Diffie-Hellman parameter P * @g: Diffie-Hellman generator G * @key_size: Size of the private DH key * @p_size: Size of DH parameter P * @g_size: Size of DH generator G */ struct dh { void *key; void *p; void *g; unsigned int key_size; unsigned int p_size; unsigned int g_size; }; /** * crypto_dh_key_len() - Obtain the size of the private DH key * @params: private DH key * * This function returns the packet DH key size. A caller can use that * with the provided DH private key reference to obtain the required * memory size to hold a packet key. * * Return: size of the key in bytes */ int crypto_dh_key_len(const struct dh *params); /** * crypto_dh_encode_key() - encode the private key * @buf: Buffer allocated by the caller to hold the packet DH * private key. The buffer should be at least crypto_dh_key_len * bytes in size. * @len: Length of the packet private key buffer * @params: Buffer with the caller-specified private key * * The DH implementations operate on a packet representation of the private * key. * * Return: -EINVAL if buffer has insufficient size, 0 on success */ int crypto_dh_encode_key(char *buf, unsigned int len, const struct dh *params); /** * crypto_dh_decode_key() - decode a private key * @buf: Buffer holding a packet key that should be decoded * @len: Lenth of the packet private key buffer * @params: Buffer allocated by the caller that is filled with the * unpacket DH private key. * * The unpacking obtains the private key by pointing @p to the correct location * in @buf. Thus, both pointers refer to the same memory. * * Return: -EINVAL if buffer has insufficient size, 0 on success */ int crypto_dh_decode_key(const char *buf, unsigned int len, struct dh *params); #endif b52b277f8'>root/include/sound
ModeNameSize
-rw-r--r--ac97_codec.h29072logplain
-rw-r--r--aci.h2419logplain
-rw-r--r--ad1816a.h5514logplain
-rw-r--r--ad1843.h1516logplain
-rw-r--r--adau1373.h699logplain
-rw-r--r--aess.h1668logplain
-rw-r--r--ak4113.h11112logplain
-rw-r--r--ak4114.h10424logplain
-rw-r--r--ak4117.h9193logplain
-rw-r--r--ak4531_codec.h3173logplain
-rw-r--r--ak4641.h622logplain
-rw-r--r--ak4xxx-adda.h3416logplain
-rw-r--r--alc5623.h497logplain
-rw-r--r--asequencer.h3670logplain
-rw-r--r--asound.h1285logplain
-rw-r--r--asoundef.h17098logplain
-rw-r--r--atmel-abdac.h639logplain
-rw-r--r--atmel-ac97c.h1342logplain
-rw-r--r--compress_driver.h6772logplain
-rw-r--r--control.h8704logplain
-rw-r--r--core.h14380logplain
-rw-r--r--cs35l33.h1034logplain
-rw-r--r--cs35l34.h887logplain
-rw-r--r--cs4231-regs.h8480logplain
-rw-r--r--cs4271.h1417logplain
-rw-r--r--cs42l52.h738logplain
-rw-r--r--cs42l56.h1192logplain
-rw-r--r--cs42l73.h507logplain
-rw-r--r--cs8403.h8833logplain
-rw-r--r--cs8427.h10649logplain
-rw-r--r--da7213.h1178logplain
-rw-r--r--da7218.h2681logplain
-rw-r--r--da7219-aad.h2476logplain
-rw-r--r--da7219.h1064logplain
-rw-r--r--da9055.h914logplain
-rw-r--r--designware_i2s.h2249logplain
-rw-r--r--dmaengine_pcm.h6157logplain
-rw-r--r--emu10k1.h91396logplain
-rw-r--r--emu10k1_synth.h1382logplain
-rw-r--r--emu8000.h4109logplain
-rw-r--r--emu8000_reg.h10459logplain
-rw-r--r--emux_legacy.h5503logplain
-rw-r--r--emux_synth.h7649logplain
-rw-r--r--es1688.h3618logplain
-rw-r--r--gus.h20691logplain
-rw-r--r--hda_chmap.h2621logplain
-rw-r--r--hda_hwdep.h1412logplain
-rw-r--r--hda_i915.h1645logplain
-rw-r--r--hda_register.h9475logplain
-rw-r--r--hda_regmap.h6714logplain
-rw-r--r--hda_verbs.h17130logplain
-rw-r--r--hdaudio.h18455logplain
-rw-r--r--hdaudio_ext.h7119logplain
-rw-r--r--hdmi-codec.h2254logplain
-rw-r--r--hwdep.h2624logplain
-rw-r--r--i2c.h3555logplain
-rw-r--r--info.h7584logplain