cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

crypto.h (1109B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef _FS_CEPH_CRYPTO_H
      3#define _FS_CEPH_CRYPTO_H
      4
      5#include <linux/ceph/types.h>
      6#include <linux/ceph/buffer.h>
      7
      8#define CEPH_KEY_LEN			16
      9#define CEPH_MAX_CON_SECRET_LEN		64
     10
     11/*
     12 * cryptographic secret
     13 */
     14struct ceph_crypto_key {
     15	int type;
     16	struct ceph_timespec created;
     17	int len;
     18	void *key;
     19	struct crypto_sync_skcipher *tfm;
     20};
     21
     22int ceph_crypto_key_clone(struct ceph_crypto_key *dst,
     23			  const struct ceph_crypto_key *src);
     24int ceph_crypto_key_encode(struct ceph_crypto_key *key, void **p, void *end);
     25int ceph_crypto_key_decode(struct ceph_crypto_key *key, void **p, void *end);
     26int ceph_crypto_key_unarmor(struct ceph_crypto_key *key, const char *in);
     27void ceph_crypto_key_destroy(struct ceph_crypto_key *key);
     28
     29/* crypto.c */
     30int ceph_crypt(const struct ceph_crypto_key *key, bool encrypt,
     31	       void *buf, int buf_len, int in_len, int *pout_len);
     32int ceph_crypto_init(void);
     33void ceph_crypto_shutdown(void);
     34
     35/* armor.c */
     36int ceph_armor(char *dst, const char *src, const char *end);
     37int ceph_unarmor(char *dst, const char *src, const char *end);
     38
     39#endif