/* * PDB- IPSec ESP Header Modification Options
*/ #define PDBHMO_ESP_DECAP_SHIFT 28 #define PDBHMO_ESP_ENCAP_SHIFT 28 /* * Encap and Decap - Decrement TTL (Hop Limit) - Based on the value of the * Options Byte IP version (IPvsn) field: * if IPv4, decrement the inner IP header TTL field (byte 8); * if IPv6 decrement the inner IP header Hop Limit field (byte 7).
*/ #define PDBHMO_ESP_DECAP_DEC_TTL (0x02 << PDBHMO_ESP_DECAP_SHIFT) #define PDBHMO_ESP_ENCAP_DEC_TTL (0x02 << PDBHMO_ESP_ENCAP_SHIFT) /* * Decap - DiffServ Copy - Copy the IPv4 TOS or IPv6 Traffic Class byte * from the outer IP header to the inner IP header.
*/ #define PDBHMO_ESP_DIFFSERV (0x01 << PDBHMO_ESP_DECAP_SHIFT) /* * Encap- Copy DF bit -if an IPv4 tunnel mode outer IP header is coming from * the PDB, copy the DF bit from the inner IP header to the outer IP header.
*/ #define PDBHMO_ESP_DFBIT (0x04 << PDBHMO_ESP_ENCAP_SHIFT)
/** * ipsec_decap_ccm - PDB part for IPsec CCM decapsulation * @salt: 3-byte salt (lower 24 bits) * @ccm_opt: CCM algorithm options - MSB-LSB description: * b0_flags (8b) - CCM B0; use 0x5B for 8-byte ICV, 0x6B for 12-byte ICV, * 0x7B for 16-byte ICV (cf. RFC4309, RFC3610) * ctr_flags (8b) - counter flags; constant equal to 0x3 * ctr_initial (16b) - initial count constant
*/ struct ipsec_decap_ccm {
u8 salt[4];
u32 ccm_opt;
};
/** * ipsec_decap_gcm - PDB part for IPsec GCN decapsulation * @salt: 4-byte salt * @rsvd: reserved, do not use
*/ struct ipsec_decap_gcm {
u8 salt[4];
u32 resvd;
};
/** * RSA Decrypt PDB - Private Key Form #2 * @sgf : scatter-gather field * @g_dma : dma address of encrypted input data * @f_dma : dma address of output data * @d_dma : dma address of RSA private exponent * @p_dma : dma address of RSA prime factor p of RSA modulus n * @q_dma : dma address of RSA prime factor q of RSA modulus n * @tmp1_dma: dma address of temporary buffer. CAAM uses this temporary buffer * as internal state buffer. It is assumed to be as long as p. * @tmp2_dma: dma address of temporary buffer. CAAM uses this temporary buffer * as internal state buffer. It is assumed to be as long as q. * @p_q_len : length in bytes of first two prime factors of the RSA modulus n
*/ struct rsa_priv_f2_pdb {
u32 sgf;
dma_addr_t g_dma;
dma_addr_t f_dma;
dma_addr_t d_dma;
dma_addr_t p_dma;
dma_addr_t q_dma;
dma_addr_t tmp1_dma;
dma_addr_t tmp2_dma;
u32 p_q_len;
};
/** * RSA Decrypt PDB - Private Key Form #3 * This is the RSA Chinese Reminder Theorem (CRT) form for two prime factors of * the RSA modulus. * @sgf : scatter-gather field * @g_dma : dma address of encrypted input data * @f_dma : dma address of output data * @c_dma : dma address of RSA CRT coefficient * @p_dma : dma address of RSA prime factor p of RSA modulus n * @q_dma : dma address of RSA prime factor q of RSA modulus n * @dp_dma : dma address of RSA CRT exponent of RSA prime factor p * @dp_dma : dma address of RSA CRT exponent of RSA prime factor q * @tmp1_dma: dma address of temporary buffer. CAAM uses this temporary buffer * as internal state buffer. It is assumed to be as long as p. * @tmp2_dma: dma address of temporary buffer. CAAM uses this temporary buffer * as internal state buffer. It is assumed to be as long as q. * @p_q_len : length in bytes of first two prime factors of the RSA modulus n
*/ struct rsa_priv_f3_pdb {
u32 sgf;
dma_addr_t g_dma;
dma_addr_t f_dma;
dma_addr_t c_dma;
dma_addr_t p_dma;
dma_addr_t q_dma;
dma_addr_t dp_dma;
dma_addr_t dq_dma;
dma_addr_t tmp1_dma;
dma_addr_t tmp2_dma;
u32 p_q_len;
};
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.