sadb_sa
struct sadb_sa *sa_ext;
struct sadb_sa sadb1, sadb2;
struct sadb_sa *sa;
struct sadb_sa sadb;
struct sadb_sa sadb;
struct sadb_sa *sa = (struct sadb_sa *)ext;
struct sadb_sa *sa;
sa = (struct sadb_sa *)extensions[SADB_EXT_SA];
struct sadb_sa *sa, *sa2;
sa = (struct sadb_sa *)extensions[SADB_EXT_SA];
sa2 = (struct sadb_sa *)extensions[SADB_X_EXT_SA2];
struct sadb_sa sa;
struct sadb_sa sa1, sa2;
struct sadb_sa ssa;
struct sadb_sa *ssa;
struct sadb_sa sa1, sa2;
struct sadb_sa *sa;
struct sadb_sa *ssa;
ssa = (struct sadb_sa *)ext;
struct sadb_sa ssa;
struct sadb_sa *ssa;
freeme_sz = sizeof(struct sadb_sa);
ssa = (struct sadb_sa *) headers[SADB_EXT_SA];
ssa = (struct sadb_sa *) headers[SADB_EXT_SA];
ssa = (struct sadb_sa *) headers[SADB_EXT_SA];
ssa = (struct sadb_sa *) headers[SADB_EXT_SA];
ssa = (struct sadb_sa *) headers[SADB_EXT_SA];
ssa = (struct sadb_sa *) headers[SADB_X_EXT_SA2];
i = sizeof(struct sadb_msg) + sizeof(struct sadb_sa) +
i = sizeof(struct sadb_sa) + sizeof(struct sadb_lifetime) +
i += sizeof(struct sadb_sa);
void import_sa(struct tdb *, struct sadb_sa *, struct ipsecinit *);
import_sa(struct tdb *tdb, struct sadb_sa *sadb_sa, struct ipsecinit *ii)
if (!sadb_sa)
ii->ii_encalg = sadb_sa->sadb_sa_encrypt;
ii->ii_authalg = sadb_sa->sadb_sa_auth;
ii->ii_compalg = sadb_sa->sadb_sa_encrypt; /* Yeurk! */
tdb->tdb_spi = sadb_sa->sadb_sa_spi;
tdb->tdb_wnd = sadb_sa->sadb_sa_replay;
if (sadb_sa->sadb_sa_flags & SADB_SAFLAGS_PFS)
if (sadb_sa->sadb_sa_flags & SADB_X_SAFLAGS_TUNNEL)
if (sadb_sa->sadb_sa_flags & SADB_X_SAFLAGS_UDPENCAP)
if (sadb_sa->sadb_sa_flags & SADB_X_SAFLAGS_ESN)
if (sadb_sa->sadb_sa_state != SADB_SASTATE_MATURE)
struct sadb_sa *sadb_sa = (struct sadb_sa *) *p;
sadb_sa->sadb_sa_len = sizeof(struct sadb_sa) / sizeof(uint64_t);
sadb_sa->sadb_sa_spi = tdb->tdb_spi;
sadb_sa->sadb_sa_replay = tdb->tdb_wnd;
sadb_sa->sadb_sa_state = SADB_SASTATE_LARVAL;
sadb_sa->sadb_sa_state = SADB_SASTATE_MATURE;
sadb_sa->sadb_sa_encrypt = SADB_X_CALG_DEFLATE;
sadb_sa->sadb_sa_auth = SADB_AALG_MD5HMAC;
sadb_sa->sadb_sa_auth = SADB_AALG_SHA1HMAC;
sadb_sa->sadb_sa_auth = SADB_X_AALG_RIPEMD160HMAC;
sadb_sa->sadb_sa_auth = SADB_X_AALG_SHA2_256;
sadb_sa->sadb_sa_auth = SADB_X_AALG_SHA2_384;
sadb_sa->sadb_sa_auth = SADB_X_AALG_SHA2_512;
sadb_sa->sadb_sa_auth = SADB_X_AALG_AES128GMAC;
sadb_sa->sadb_sa_auth = SADB_X_AALG_AES192GMAC;
sadb_sa->sadb_sa_auth = SADB_X_AALG_AES256GMAC;
sadb_sa->sadb_sa_auth = SADB_X_AALG_CHACHA20POLY1305;
sadb_sa->sadb_sa_encrypt = SADB_EALG_NULL;
sadb_sa->sadb_sa_encrypt = SADB_EALG_3DESCBC;
sadb_sa->sadb_sa_encrypt = SADB_X_EALG_AES;
sadb_sa->sadb_sa_encrypt = SADB_X_EALG_AESCTR;
sadb_sa->sadb_sa_encrypt = SADB_X_EALG_AESGCM16;
sadb_sa->sadb_sa_encrypt = SADB_X_EALG_AESGMAC;
sadb_sa->sadb_sa_encrypt = SADB_X_EALG_CAST;
sadb_sa->sadb_sa_encrypt = SADB_X_EALG_BLF;
sadb_sa->sadb_sa_encrypt = SADB_X_EALG_CHACHA20POLY1305;
sadb_sa->sadb_sa_flags |= SADB_SAFLAGS_PFS;
sadb_sa->sadb_sa_flags |= SADB_X_SAFLAGS_TUNNEL;
sadb_sa->sadb_sa_flags |= SADB_X_SAFLAGS_UDPENCAP;
sadb_sa->sadb_sa_flags |= SADB_X_SAFLAGS_ESN;
*p += sizeof(struct sadb_sa);
struct sadb_sa *sadb_sa = (struct sadb_sa *)p;
if (i != sizeof(struct sadb_sa)) {
if (sadb_sa->sadb_sa_state > SADB_SASTATE_MAX) {
sadb_sa->sadb_sa_state,
if (sadb_sa->sadb_sa_state == SADB_SASTATE_DEAD) {
if (sadb_sa->sadb_sa_encrypt > SADB_EALG_MAX) {
sadb_sa->sadb_sa_encrypt,
if (sadb_sa->sadb_sa_auth > SADB_AALG_MAX) {
sadb_sa->sadb_sa_auth,
if (sadb_sa->sadb_sa_replay > 64) {
sadb_sa->sadb_sa_replay,
if (((struct sadb_sa *)headers[SADB_EXT_SA])->sadb_sa_state !=
if (((struct sadb_sa *)headers[SADB_EXT_SA])->sadb_sa_state !=
struct sadb_sa *sa;
sa = (struct sadb_sa *) ext;
struct sadb_sa sa;
struct sadb_sa *sa;
sa = (struct sadb_sa *) ext;
struct sadb_sa sa;