| /linux/drivers/s390/cio/ |
| H A D | airq.c | 130 struct airq_iv *iv; in airq_iv_create() local 133 iv = kzalloc_obj(*iv); in airq_iv_create() 134 if (!iv) in airq_iv_create() 136 iv->bits = bits; in airq_iv_create() 137 iv->flags = flags; in airq_iv_create() 145 iv->vector = dma_pool_zalloc(airq_iv_cache, GFP_KERNEL, in airq_iv_create() 146 &iv->vector_dma); in airq_iv_create() 147 if (!iv->vector) in airq_iv_create() 150 iv->vector = vec; in airq_iv_create() 152 iv->vector = cio_dma_zalloc(size); in airq_iv_create() [all …]
|
| /linux/arch/s390/include/asm/ |
| H A D | airq.h | 53 void airq_iv_release(struct airq_iv *iv); 54 unsigned long airq_iv_alloc(struct airq_iv *iv, unsigned long num); 55 void airq_iv_free(struct airq_iv *iv, unsigned long bit, unsigned long num); 56 unsigned long airq_iv_scan(struct airq_iv *iv, unsigned long start, 59 static inline unsigned long airq_iv_alloc_bit(struct airq_iv *iv) in airq_iv_alloc_bit() argument 61 return airq_iv_alloc(iv, 1); in airq_iv_alloc_bit() 64 static inline void airq_iv_free_bit(struct airq_iv *iv, unsigned long bit) in airq_iv_free_bit() argument 66 airq_iv_free(iv, bit, 1); in airq_iv_free_bit() 69 static inline unsigned long airq_iv_end(struct airq_iv *iv) in airq_iv_end() argument 71 return iv->end; in airq_iv_end() [all …]
|
| /linux/net/mac80211/ |
| H A D | wep.c | 28 /* start WEP IV from a random value */ in ieee80211_wep_init() 32 static inline bool ieee80211_wep_weak_iv(u32 iv, int keylen) in ieee80211_wep_weak_iv() argument 39 if ((iv & 0xff00) == 0xff00) { in ieee80211_wep_weak_iv() 40 u8 B = (iv >> 16) & 0xff; in ieee80211_wep_weak_iv() 49 int keylen, int keyidx, u8 *iv) in ieee80211_wep_get_iv() argument 55 if (!iv) in ieee80211_wep_get_iv() 58 *iv++ = (local->wep_iv >> 16) & 0xff; in ieee80211_wep_get_iv() 59 *iv++ = (local->wep_iv >> 8) & 0xff; in ieee80211_wep_get_iv() 60 *iv++ = local->wep_iv & 0xff; in ieee80211_wep_get_iv() 61 *iv++ = keyidx << 6; in ieee80211_wep_get_iv() [all …]
|
| H A D | aes_gmac.c | 21 u8 *zero, *__aad, iv[AES_BLOCK_SIZE]; in ieee80211_aes_gmac() local 57 memcpy(iv, nonce, GMAC_NONCE_LEN); in ieee80211_aes_gmac() 58 memset(iv + GMAC_NONCE_LEN, 0, sizeof(iv) - GMAC_NONCE_LEN); in ieee80211_aes_gmac() 59 iv[AES_BLOCK_SIZE - 1] = 0x01; in ieee80211_aes_gmac() 62 aead_request_set_crypt(aead_req, sg, sg, 0, iv); in ieee80211_aes_gmac()
|
| /linux/drivers/net/wireless/intel/ipw2x00/ |
| H A D | libipw_crypto_wep.c | 24 u32 iv; member 45 /* start WEP IV from a random value */ in libipw_wep_init() 46 get_random_bytes(&priv->iv, 4); in libipw_wep_init() 56 /* Add WEP IV/key info to a frame that has at least 4 bytes of headroom */ 73 wep->iv++; in libipw_wep_build_iv() 78 if ((wep->iv & 0xff00) == 0xff00) { in libipw_wep_build_iv() 79 u8 B = (wep->iv >> 16) & 0xff; in libipw_wep_build_iv() 81 wep->iv += 0x0100; in libipw_wep_build_iv() 84 /* Prepend 24-bit IV to RC4 key and TX frame */ in libipw_wep_build_iv() 85 *pos++ = (wep->iv >> 16) & 0xff; in libipw_wep_build_iv() [all …]
|
| /linux/drivers/net/wireless/ralink/rt2x00/ |
| H A D | rt2x00crypto.c | 74 * Extend frame length to include IV/EIV/ICV/MMIC, in rt2x00crypto_tx_overhead() 98 /* Copy IV/EIV data */ in rt2x00crypto_tx_copy_iv() 99 memcpy(skbdesc->iv, skb->data + txdesc->iv_offset, txdesc->iv_len); in rt2x00crypto_tx_copy_iv() 109 /* Copy IV/EIV data */ in rt2x00crypto_tx_remove_iv() 110 memcpy(skbdesc->iv, skb->data + txdesc->iv_offset, txdesc->iv_len); in rt2x00crypto_tx_remove_iv() 119 /* IV/EIV data has officially been stripped */ in rt2x00crypto_tx_remove_iv() 127 ((!!(skbdesc->iv[0])) * 4) + ((!!(skbdesc->iv[1])) * 4); in rt2x00crypto_tx_insert_iv() 137 /* Copy IV/EIV data */ in rt2x00crypto_tx_insert_iv() 138 memcpy(skb->data + header_length, skbdesc->iv, iv_len); in rt2x00crypto_tx_insert_iv() 140 /* IV/EIV data has returned into the frame */ in rt2x00crypto_tx_insert_iv() [all …]
|
| /linux/net/sunrpc/auth_gss/ |
| H A D | gss_krb5_crypto.c | 69 * encryption IV is always all zeroes, the confounder also effectively 70 * functions like an IV. Thus, not only must it be unique from message 89 * @iv: pointer to an IV 94 * @iv may be NULL to force the use of an all-zero IV. 95 * The buffer containing the IV must be as large as the 105 void * iv, in krb5_encrypt() argument 119 dprintk("RPC: gss_k5encrypt: tfm iv size too large %d\n", in krb5_encrypt() 124 if (iv) in krb5_encrypt() 125 memcpy(local_iv, iv, crypto_sync_skcipher_ivsize(tfm)); in krb5_encrypt() 225 u8 iv[GSS_KRB5_MAX_BLOCKSIZE]; member [all …]
|
| /linux/arch/arm64/crypto/ |
| H A D | sm4-neon-glue.c | 24 u8 *iv, unsigned int nblocks); 26 u8 *iv, unsigned int nblocks); 88 const u8 *iv = walk.iv; in sm4_cbc_encrypt() local 93 crypto_xor_cpy(dst, src, iv, SM4_BLOCK_SIZE); in sm4_cbc_encrypt() 95 iv = dst; in sm4_cbc_encrypt() 100 if (iv != walk.iv) in sm4_cbc_encrypt() 101 memcpy(walk.iv, iv, SM4_BLOCK_SIZE); in sm4_cbc_encrypt() 128 walk.iv, nblocks); in sm4_cbc_decrypt() 156 walk.iv, nblocks); in sm4_ctr_crypt() 167 sm4_crypt_block(ctx->rkey_enc, keystream, walk.iv); in sm4_ctr_crypt() [all …]
|
| H A D | aes-neonbs-glue.c | 36 int rounds, int blocks, u8 iv[]); 39 int rounds, int blocks, u8 iv[]); 42 int rounds, int blocks, u8 iv[]); 44 int rounds, int blocks, u8 iv[]); 167 walk.iv); in cbc_encrypt() 192 walk.iv); in cbc_decrypt() 219 walk.iv); in ctr_encrypt() 233 walk.iv); in ctr_encrypt() 273 int rounds, int blocks, u8 iv[])) in __xts_crypt() argument 301 req->iv); in __xts_crypt() [all …]
|
| H A D | sm4-ce-glue.c | 32 u8 *iv, unsigned int nblocks); 34 u8 *iv, unsigned int nblocks); 36 u8 *iv, unsigned int nbytes); 38 u8 *iv, unsigned int nbytes); 40 u8 *iv, unsigned int nblks); 170 walk.iv, nblocks); in sm4_cbc_crypt() 173 walk.iv, nblocks); in sm4_cbc_crypt() 226 req->iv); in sm4_cbc_cts_crypt() 241 req->iv); in sm4_cbc_cts_crypt() 250 walk.src.virt.addr, walk.iv, walk.nbytes); in sm4_cbc_cts_crypt() [all …]
|
| /linux/net/qrtr/ |
| H A D | ns.c | 134 struct kvec iv; 139 iv.iov_base = &pkt; in service_announce_del() 140 iv.iov_len = sizeof(pkt); in service_announce_del() local 152 return kernel_sendmsg(qrtr_ns.sock, &msg, &iv, 1, sizeof(pkt)); in service_announce_del() 160 struct kvec iv; in service_announce_del() 166 iv.iov_base = &pkt; in lookup_notify() 167 iv.iov_len = sizeof(pkt); in lookup_notify() 179 ret = kernel_sendmsg(qrtr_ns.sock, &msg, &iv, 1, sizeof(pkt)); in lookup_notify() 191 struct kvec iv; in lookup_notify() 194 iv in lookup_notify() 114 struct kvec iv; service_announce_new() local 171 struct kvec iv; lookup_notify() local 303 struct kvec iv; say_hello() local 343 struct kvec iv; ctrl_cmd_bye() local 396 struct kvec iv; ctrl_cmd_del_client() local 597 struct kvec iv; qrtr_ns_worker() local [all...] |
| /linux/include/linux/ |
| H A D | ccp.h | 151 * @iv: IV to be used for this AES operation 152 * @iv_len: length in bytes of iv 162 * - iv, iv_len for any mode other than ECB 166 * The iv variable is used as both input and output. On completion of the 167 * AES operation the new IV overwrites the old IV. 179 struct scatterlist *iv; member 218 * @iv: IV to be used for this XTS AES operation 219 * @iv_len: length in bytes of iv 226 * - action, unit_size, key, key_len, iv, iv_len, src, dst, src_len, final 228 * The iv variable is used as both input and output. On completion of the [all …]
|
| /linux/tools/testing/crypto/chacha20-s390/ |
| H A D | test-cipher.c | 54 u8 iv[16], key[32]; in test_lib_chacha() local 58 memset(iv, 'I', sizeof(iv)); in test_lib_chacha() 64 print_hex_dump(KERN_INFO, "iv: ", DUMP_PREFIX_OFFSET, in test_lib_chacha() 65 16, 1, iv, 16, 1); in test_lib_chacha() 69 chacha_init(&chacha_state, (u32 *)key, iv); in test_lib_chacha() 84 chacha_init(&chacha_state, (u32 *)key, iv); in test_lib_chacha() 131 u8 iv[16], key[32]; in test_skcipher() local 153 memset(iv, 'I', sizeof(iv)); in test_skcipher() [all...] |
| /linux/drivers/crypto/cavium/nitrox/ |
| H A D | nitrox_req.h | 22 * Params tell the iv and enc/dec data offsets. 88 /* IV from context */ 90 /* IV from Input data */ 127 * @iv: Encryption IV or Tweak for AES-XTS 134 u8 iv[AES_BLOCK_SIZE]; member 181 * @iv_source: Encryption IV source 184 * 1 - Authentication IV and KEY, microcode calculates OPAD/IPAD 226 * @iv: IV data 227 * @ivsize: IV data length 240 u8 *iv; member [all …]
|
| H A D | nitrox_aead.c | 94 struct scatterlist *src, char *iv, int ivsize, in alloc_src_sglist() argument 103 /* IV entry */ in alloc_src_sglist() 105 /* Allocate buffer to hold IV and input scatterlist array */ in alloc_src_sglist() 110 nitrox_creq_copy_iv(nkreq->src, iv, ivsize); in alloc_src_sglist() 125 /* IV, ORH, COMPLETION entries */ in alloc_dst_sglist() 175 ret = alloc_src_sglist(&rctx->nkreq, rctx->src, rctx->iv, rctx->ivsize, in nitrox_set_creq() 225 memcpy(fctx->crypto.iv, areq->iv, GCM_AES_SALT_SIZE); in nitrox_aes_gcm_enc() 231 rctx->iv = &areq->iv[GCM_AES_SALT_SIZE]; in nitrox_aes_gcm_enc() 259 memcpy(fctx->crypto.iv, areq->iv, GCM_AES_SALT_SIZE); in nitrox_aes_gcm_dec() 265 rctx->iv = &areq->iv[GCM_AES_SALT_SIZE]; in nitrox_aes_gcm_dec() [all …]
|
| /linux/crypto/ |
| H A D | seqiv.c | 3 * seqiv: Sequence Number IV Generator 5 * This generator generates an IV based on a sequence number by xoring it 33 memcpy(req->iv, subreq->iv, crypto_aead_ivsize(geniv)); in seqiv_aead_encrypt_complete2() 36 kfree_sensitive(subreq->iv); in seqiv_aead_encrypt_complete2() 66 info = req->iv; in seqiv_aead_encrypt() 75 info = kmemdup(req->iv, ivsize, req->base.flags & in seqiv_aead_encrypt() 118 req->cryptlen - ivsize, req->iv); in seqiv_aead_decrypt() 121 scatterwalk_map_and_copy(req->iv, req->src, req->assoclen, ivsize, 0); in seqiv_aead_decrypt() 177 MODULE_DESCRIPTION("Sequence Number IV Generator");
|
| H A D | essiv.c | 5 * This template encapsulates the ESSIV IV generation algorithm used by 8 * skcipher key as encryption key. Usually, the input IV is a 64-bit sector 9 * number in LE representation zero-padded to the size of the IV, but this 18 * as the authenc template, and deals with the way the encrypted IV is 147 crypto_cipher_encrypt_one(tctx->essiv_cipher, req->iv, req->iv); in essiv_skcipher_crypt() 151 req->iv); in essiv_skcipher_crypt() 197 crypto_cipher_encrypt_one(tctx->essiv_cipher, req->iv, req->iv); in essiv_aead_crypt() 200 * dm-crypt embeds the sector number and the IV in the AAD region, so in essiv_aead_crypt() 201 * we have to copy the converted IV into the right scatterlist before in essiv_aead_crypt() 206 scatterwalk_map_and_copy(req->iv, req->dst, ssize, ivsize, 1); in essiv_aead_crypt() [all …]
|
| /linux/tools/testing/selftests/bpf/progs/ |
| H A D | linked_list_fail.c | 11 struct map_value *v, *v2, *iv, *iv2; \ 25 iv = bpf_map_lookup_elem(map, &(int){ 0 }); \ 26 if (!iv) \ 66 CHECK(inner_map, pop_front, &iv->head); 67 CHECK(inner_map, pop_back, &iv->head); 89 CHECK(inner_map, push_front, &iv->head, &f->node2); 90 CHECK(inner_map, push_back, &iv->head, &f->node2); 109 CHECK(kptr_inner_map, op, &f1->lock, &iv->head); \ 114 CHECK(global_inner_map, op, &glock, &iv->head); \ 119 CHECK(map_inner_map, op, &v->lock, &iv->head); \ [all …]
|
| /linux/io_uring/ |
| H A D | rsrc.h | 74 int io_prep_reg_iovec(struct io_kiocb *req, struct iou_vec *iv, 143 void io_vec_free(struct iou_vec *iv); 144 int io_vec_realloc(struct iou_vec *iv, unsigned nr_entries); 146 static inline void io_vec_reset_iovec(struct iou_vec *iv, in io_vec_reset_iovec() argument 149 io_vec_free(iv); in io_vec_reset_iovec() 150 iv->iovec = iovec; in io_vec_reset_iovec() 151 iv->nr = nr; in io_vec_reset_iovec() 154 static inline void io_alloc_cache_vec_kasan(struct iou_vec *iv) in io_alloc_cache_vec_kasan() argument 157 io_vec_free(iv); in io_alloc_cache_vec_kasan()
|
| /linux/net/rxrpc/ |
| H A D | rxkad.c | 197 struct rxrpc_crypt iv; in rxkad_prime_packet_security() local 218 memcpy(&iv, token->kad->session_key, sizeof(iv)); in rxkad_prime_packet_security() 228 skcipher_request_set_crypt(req, &sg, &sg, tmpsize, iv.x); in rxkad_prime_packet_security() 264 struct rxrpc_crypt iv; in rxkad_secure_packet_auth() local 285 memset(&iv, 0, sizeof(iv)); in rxkad_secure_packet_auth() 290 skcipher_request_set_crypt(req, &sg, &sg, 8, iv.x); in rxkad_secure_packet_auth() 307 struct rxrpc_crypt iv; in rxkad_secure_packet_encrypt() local 328 memcpy(&iv, token->kad->session_key, sizeof(iv)); in rxkad_secure_packet_encrypt() 333 skcipher_request_set_crypt(req, &sg, &sg, txb->pkt_len, iv.x); in rxkad_secure_packet_encrypt() 345 struct rxrpc_crypt iv; in rxkad_secure_packet() local [all …]
|
| /linux/Documentation/admin-guide/device-mapper/ |
| H A D | dm-crypt.rst | 17 Encryption cipher, encryption mode and Initial Vector (IV) generator. 30 format (selected by capi: prefix). The IV specification is the same 56 in combination with the selected iv mode. 57 Note that for some iv modes the key string can contain additional 58 keys (for example IV seed) so the key contains more parts concatenated 82 The IV offset is a sector count that is added to the sector number 83 before creating the IV. 142 The <type> can be "none" if metadata is used only for persistent IV. 147 used for storing authentication tag (and persistent IV if needed). 160 IV generators will use sector number counted in <sector_size> units [all …]
|
| /linux/arch/x86/crypto/ |
| H A D | aria-avx.h | 22 u8 *keystream, u8 *iv); 29 u8 *keystream, u8 *iv); 37 u8 *keystream, u8 *iv); 44 u8 *keystream, u8 *iv); 50 u8 *keystream, u8 *iv); 54 u8 *keystream, u8 *iv); 58 u8 *keystream, u8 *iv);
|
| /linux/drivers/ssb/ |
| H A D | host_soc.c | 177 struct ssb_init_invariants *iv) in ssb_host_soc_get_invariants() argument 183 memset(&iv->boardinfo, 0, sizeof(struct ssb_boardinfo)); in ssb_host_soc_get_invariants() 187 err = kstrtou16(strim(buf), 0, &iv->boardinfo.vendor); in ssb_host_soc_get_invariants() 192 if (!iv->boardinfo.vendor) in ssb_host_soc_get_invariants() 193 iv->boardinfo.vendor = SSB_BOARDVENDOR_BCM; in ssb_host_soc_get_invariants() 197 err = kstrtou16(strim(buf), 0, &iv->boardinfo.type); in ssb_host_soc_get_invariants() 203 memset(&iv->sprom, 0, sizeof(struct ssb_sprom)); in ssb_host_soc_get_invariants() 204 ssb_fill_sprom_with_fallback(bus, &iv->sprom); in ssb_host_soc_get_invariants() 207 iv->has_cardbus_slot = !!simple_strtoul(buf, NULL, 10); in ssb_host_soc_get_invariants()
|
| /linux/drivers/crypto/ |
| H A D | padlock-aes.c | 203 u8 *iv, struct cword *control_word, int count) in rep_xcrypt_cbc() argument 206 : "+S" (input), "+D" (output), "+a" (iv) in rep_xcrypt_cbc() 208 return iv; in rep_xcrypt_cbc() 226 u8 *iv, struct cword *cword, int count) in cbc_crypt_copy() argument 236 return rep_xcrypt_cbc(tmp, out, key, iv, cword, count); in cbc_crypt_copy() 254 u8 *iv, struct cword *cword, int count) in cbc_crypt() argument 258 return cbc_crypt_copy(in, out, key, iv, cword, count); in cbc_crypt() 260 return rep_xcrypt_cbc(in, out, key, iv, cword, count); in cbc_crypt() 286 u8 *iv, void *control_word, u32 count) in padlock_xcrypt_cbc() argument 291 return cbc_crypt(input, output, key, iv, control_word, count); in padlock_xcrypt_cbc() [all …]
|
| /linux/security/keys/encrypted-keys/ |
| H A D | encrypted.c | 164 * <encrypted iv + data> 276 u8 *iv = epayload->iv; in datablob_format() 290 /* convert the hex encoded iv, encrypted-data and HMAC to ascii */ in datablob_format() 293 bufp = hex_byte_pack(bufp, iv[i]); in datablob_format() 435 u8 iv[AES_BLOCK_SIZE]; in derived_key_encrypt() 454 memcpy(iv, epayload->iv, sizeof(iv)); in derived_key_encrypt() 455 skcipher_request_set_crypt(req, sg_in, sg_out, encrypted_datalen, iv); in derived_key_encrypt() 275 u8 *iv = epayload->iv; datablob_format() local 434 u8 iv[AES_BLOCK_SIZE]; derived_key_encrypt() local 535 u8 iv[AES_BLOCK_SIZE]; derived_key_decrypt() local [all...] |