u_int32_t sadb_sa_flags;
};
+#ifdef __APPLE_API_PRIVATE
+struct sadb_sa_2 {
+ struct sadb_sa sa;
+ u_int16_t sadb_sa_natt_port;
+ u_int16_t sadb_reserved0;
+ u_int32_t sadb_reserved1;
+};
+#endif
+
struct sadb_lifetime {
u_int16_t sadb_lifetime_len;
u_int16_t sadb_lifetime_exttype;
u_int8_t sadb_x_sa2_mode;
u_int8_t sadb_x_sa2_reserved1;
u_int16_t sadb_x_sa2_reserved2;
- u_int32_t sadb_x_sa2_reserved3;
+ u_int32_t sadb_x_sa2_sequence;
u_int32_t sadb_x_sa2_reqid;
};
/* `flags' in sadb_sa structure holds followings */
#define SADB_X_EXT_NONE 0x0000 /* i.e. new format. */
#define SADB_X_EXT_OLD 0x0001 /* old format. */
+#ifdef __APPLE_API_PRIVATE
+#define SADB_X_EXT_NATT 0x0002 /* Use UDP encapsulation to traverse NAT */
+#define SADB_X_EXT_NATT_KEEPALIVE 0x0004 /* Local node is behind NAT, send keepalives */
+ /* Should only be set for outbound SAs */
+#endif
#define SADB_X_EXT_IV4B 0x0010 /* IV length of 4 bytes in use */
#define SADB_X_EXT_DERIV 0x0020 /* DES derived */