#ifndef CURVE_H #define CURVE_H #include "locking.h" #include "built_in.h" #include "ioops.h" #include "rnd.h" #include "taia.h" #include "crypto.h" struct curve25519_proto { unsigned char enonce[crypto_box_noncebytes] __aligned_16; unsigned char dnonce[crypto_box_noncebytes] __aligned_16; unsigned char key[crypto_box_beforenmbytes] __aligned_16; }; struct curve25519_struct { unsigned char *enc, *dec; size_t enc_size, dec_size; struct spinlock enc_lock, dec_lock; }; extern void curve25519_selftest(void); extern struct curve25519_struct *curve25519_tfm_alloc(void); extern void curve25519_tfm_free(struct curve25519_struct *tfm); extern void curve25519_tfm_free_void(void *tfm); extern void curve25519_proto_init(struct curve25519_proto *proto, unsigned char *pubkey_remote, size_t len); extern int curve25519_pubkey_hexparse_32(unsigned char *bin, size_t blen, const char *ascii, size_t alen); extern ssize_t curve25519_encode(struct curve25519_struct *curve, struct curve25519_proto *proto, unsigned char *plaintext, size_t size, unsigned char **ciphertext); extern ssize_t curve25519_decode(struct curve25519_struct *curve, struct curve25519_proto *proto, unsigned char *ciphertext, size_t size, unsigned char **plaintext, struct taia *arrival_taia); #endif /* CURVE_H */ alue='switch'/> net-next plumbingsTobias Klauser
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSuravee Suthikulpanit <suravee.suthikulpanit@amd.com>2016-08-23 13:52:38 -0500
committerJoerg Roedel <jroedel@suse.de>2016-09-05 12:41:46 +0200
commit8dbea3fd7becd4af8ca882c3132be4b1a857e301 (patch)
tree08f9aaa6eab2d4139c69acf105b4d80de5c3a1d3
parentbd6fcefc66f6d038406e38edf96a95d9842f819d (diff)
iommu/amd: Introduce amd_iommu_update_ga()
Introduces a new IOMMU API, amd_iommu_update_ga(), which allows KVM (SVM) to update existing posted interrupt IOMMU IRTE when load/unload vcpu. Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com> Signed-off-by: Joerg Roedel <jroedel@suse.de>
Diffstat