summaryrefslogtreecommitdiff
path: root/sys/netinet/ip_ipsp.h
diff options
context:
space:
mode:
authorAngelos D. Keromytis <angelos@cvs.openbsd.org>2001-04-14 00:31:00 +0000
committerAngelos D. Keromytis <angelos@cvs.openbsd.org>2001-04-14 00:31:00 +0000
commitf026bc84847fa4cc8dd2309260420e03148ffe6a (patch)
tree47ce3df0c65eda4578ef207063e6a49c14a07a8e /sys/netinet/ip_ipsp.h
parent7c24c568652099d54183ff75ebb1a488fdffa324 (diff)
Minor changes, preparing for real socket-attached TDBs; also, more
information will be stored in the TDB. ok ho@ provos@
Diffstat (limited to 'sys/netinet/ip_ipsp.h')
-rw-r--r--sys/netinet/ip_ipsp.h21
1 files changed, 14 insertions, 7 deletions
diff --git a/sys/netinet/ip_ipsp.h b/sys/netinet/ip_ipsp.h
index f7e2a713a09..048d12c4477 100644
--- a/sys/netinet/ip_ipsp.h
+++ b/sys/netinet/ip_ipsp.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: ip_ipsp.h,v 1.82 2001/03/28 20:03:04 angelos Exp $ */
+/* $OpenBSD: ip_ipsp.h,v 1.83 2001/04/14 00:30:59 angelos Exp $ */
/*
* The authors of this code are John Ioannidis (ji@tla.org),
@@ -341,6 +341,9 @@ struct tdb_crypto {
u_int32_t tc_spi;
union sockaddr_union tc_dst;
u_int8_t tc_proto;
+ u_int32_t tc_spi2;
+ union sockaddr_union tc_dst2;
+ u_int8_t tc_proto2;
int tc_protoff;
int tc_skip;
caddr_t tc_ptr;
@@ -365,7 +368,7 @@ struct xformsw
int (*xf_init)(struct tdb *, struct xformsw *, struct ipsecinit *);
int (*xf_zeroize)(struct tdb *); /* termination */
int (*xf_input)(struct mbuf *, struct tdb *, int, int); /* input */
- int (*xf_output)(struct mbuf *, struct tdb *, struct mbuf **, int, int); /* output */
+ int (*xf_output)(struct mbuf *, struct tdb *, struct mbuf **, int, int, struct tdb *); /* output */
};
/* xform IDs */
@@ -490,7 +493,8 @@ extern int tdb_walk(int (*)(struct tdb *, void *, int), void *);
extern int ipe4_attach(void);
extern int ipe4_init(struct tdb *, struct xformsw *, struct ipsecinit *);
extern int ipe4_zeroize(struct tdb *);
-extern int ipip_output(struct mbuf *, struct tdb *, struct mbuf **, int, int);
+extern int ipip_output(struct mbuf *, struct tdb *, struct mbuf **, int, int,
+ struct tdb *);
extern void ipe4_input __P((struct mbuf *, ...));
extern void ipip_input __P((struct mbuf *, int));
@@ -511,7 +515,8 @@ extern void etherip_input __P((struct mbuf *, ...));
extern int ah_attach(void);
extern int ah_init(struct tdb *, struct xformsw *, struct ipsecinit *);
extern int ah_zeroize(struct tdb *);
-extern int ah_output(struct mbuf *, struct tdb *, struct mbuf **, int, int);
+extern int ah_output(struct mbuf *, struct tdb *, struct mbuf **, int, int,
+ struct tdb *);
extern int ah_output_cb(void *);
extern int ah_input(struct mbuf *, struct tdb *, int, int);
extern int ah_input_cb(void *);
@@ -532,7 +537,8 @@ extern int ah6_input_cb __P((struct mbuf *, int, int));
extern int esp_attach(void);
extern int esp_init(struct tdb *, struct xformsw *, struct ipsecinit *);
extern int esp_zeroize(struct tdb *);
-extern int esp_output(struct mbuf *, struct tdb *, struct mbuf **, int, int);
+extern int esp_output(struct mbuf *, struct tdb *, struct mbuf **, int, int,
+ struct tdb *);
extern int esp_output_cb(void *);
extern int esp_input(struct mbuf *, struct tdb *, int, int);
extern int esp_input_cb(void *);
@@ -568,8 +574,9 @@ extern int checkreplaywindow32(u_int32_t, u_int32_t, u_int32_t *, u_int32_t,
extern unsigned char ipseczeroes[];
/* Packet processing */
-extern int ipsp_process_packet(struct mbuf *, struct tdb *, int, int);
-extern int ipsp_process_done(struct mbuf *, struct tdb *);
+extern int ipsp_process_packet(struct mbuf *, struct tdb *, int, int,
+ struct tdb *);
+extern int ipsp_process_done(struct mbuf *, struct tdb *, struct tdb *);
extern struct tdb *ipsp_spd_lookup(struct mbuf *, int, int, int *, int,
struct tdb *, struct inpcb *);
extern int ipsec_common_input_cb(struct mbuf *, struct tdb *, int, int);