aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet/sctp_pcb.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/netinet/sctp_pcb.h')
-rw-r--r--sys/netinet/sctp_pcb.h26
1 files changed, 25 insertions, 1 deletions
diff --git a/sys/netinet/sctp_pcb.h b/sys/netinet/sctp_pcb.h
index 9b4df183bd7a..0f75accc3d2a 100644
--- a/sys/netinet/sctp_pcb.h
+++ b/sys/netinet/sctp_pcb.h
@@ -39,6 +39,7 @@ __FBSDID("$FreeBSD$");
#include <netinet/sctp_os.h>
#include <netinet/sctp.h>
#include <netinet/sctp_constants.h>
+#include <netinet/sctp_sysctl.h>
LIST_HEAD(sctppcbhead, sctp_inpcb);
LIST_HEAD(sctpasochead, sctp_tcb);
@@ -139,6 +140,7 @@ struct sctp_tagblock {
struct sctp_timewait vtag_block[SCTP_NUMBER_IN_VTAG_BLOCK];
};
+
struct sctp_epinfo {
struct sctpasochead *sctp_asochash;
u_long hashasocmark;
@@ -237,6 +239,23 @@ struct sctp_epinfo {
};
+
+struct sctp_base_info {
+ /*
+ * All static structures that anchor the system must be here.
+ */
+ struct sctp_epinfo sctppcbinfo;
+ struct sctpstat sctpstat;
+ struct sctp_sysctl sctpsysctl;
+ uint8_t first_time;
+ char sctp_pcb_initialized;
+#if defined(SCTP_PACKET_LOGGING)
+ int packet_log_writers;
+ int packet_log_end;
+ uint8_t packet_log_buffer[SCTP_PACKET_LOG_SIZE];
+#endif
+};
+
/*-
* Here we have all the relevant information for each SCTP entity created. We
* will need to modify this as approprate. We also need to figure out how to
@@ -433,7 +452,11 @@ struct sctp_tcb {
#if defined(_KERNEL)
-extern struct sctp_epinfo sctppcbinfo;
+/* Attention Julian, this is the extern that
+ * goes with the base info. sctp_pcb.c has
+ * the real definition.
+ */
+extern struct sctp_base_info system_base_info;
#ifdef INET6
int SCTP6_ARE_ADDR_EQUAL(struct sockaddr_in6 *a, struct sockaddr_in6 *b);
@@ -556,6 +579,7 @@ int sctp_del_remote_addr(struct sctp_tcb *, struct sockaddr *);
void sctp_pcb_init(void);
+void sctp_pcb_finish(void);
void sctp_add_local_addr_restricted(struct sctp_tcb *, struct sctp_ifa *);
void sctp_del_local_addr_restricted(struct sctp_tcb *, struct sctp_ifa *);