linux/include/keys/encrypted-type.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-only */
   2/*
   3 * Copyright (C) 2010 IBM Corporation
   4 * Copyright (C) 2010 Politecnico di Torino, Italy
   5 *                    TORSEC group -- http://security.polito.it
   6 *
   7 * Authors:
   8 * Mimi Zohar <zohar@us.ibm.com>
   9 * Roberto Sassu <roberto.sassu@polito.it>
  10 */
  11
  12#ifndef _KEYS_ENCRYPTED_TYPE_H
  13#define _KEYS_ENCRYPTED_TYPE_H
  14
  15#include <linux/key.h>
  16#include <linux/rcupdate.h>
  17
  18struct encrypted_key_payload {
  19        struct rcu_head rcu;
  20        char *format;           /* datablob: format */
  21        char *master_desc;      /* datablob: master key name */
  22        char *datalen;          /* datablob: decrypted key length */
  23        u8 *iv;                 /* datablob: iv */
  24        u8 *encrypted_data;     /* datablob: encrypted data */
  25        unsigned short datablob_len;    /* length of datablob */
  26        unsigned short decrypted_datalen;       /* decrypted data length */
  27        unsigned short payload_datalen;         /* payload data length */
  28        unsigned short encrypted_key_format;    /* encrypted key format */
  29        u8 *decrypted_data;     /* decrypted data */
  30        u8 payload_data[0];     /* payload data + datablob + hmac */
  31};
  32
  33extern struct key_type key_type_encrypted;
  34
  35#endif /* _KEYS_ENCRYPTED_TYPE_H */
  36