diff options
author | Randall Stewart <rrs@FreeBSD.org> | 2008-05-20 13:47:46 +0000 |
---|---|---|
committer | Randall Stewart <rrs@FreeBSD.org> | 2008-05-20 13:47:46 +0000 |
commit | c54a18d26b6afde430af32090857d70da0983532 (patch) | |
tree | 2eb09e824f0a51e8694f455f2aa95ba0da7b95d8 /sys/netinet/sctp_os_bsd.h | |
parent | 7840976da5073f560b12aaaf595dc1941ae65773 (diff) | |
download | src-c54a18d26b6afde430af32090857d70da0983532.tar.gz src-c54a18d26b6afde430af32090857d70da0983532.zip |
- Adds support for the multi-asconf (From Kozuka-san)
- Adds some prepwork (Not all yet) for vimage in particular
support the delete the sctppcbinfo.xx structs. There is
still a leak in here if it were to be called plus we stil
need the regrouping (From Me and Michael Tuexen)
- Adds support for UDP tunneling. For BSD there is no
socket yet setup so its disabled, but major argument
changes are in here to emcompass the passing of the port
number (zero when you don't have a udp tunnel, the default
for BSD). Will add some hooks in UDP here shortly (discussed
with Robert) that will allow easy tunneling. (Mainly from
Peter Lei and Michael Tuexen with some BSD work from me :-D)
- Some ease for windows, evidently leave is reserved by their
compile move label leave: -> out:
MFC after: 1 week
Notes
Notes:
svn path=/head/; revision=179157
Diffstat (limited to 'sys/netinet/sctp_os_bsd.h')
-rw-r--r-- | sys/netinet/sctp_os_bsd.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/netinet/sctp_os_bsd.h b/sys/netinet/sctp_os_bsd.h index 01c0fcb0d469..2d01952ad815 100644 --- a/sys/netinet/sctp_os_bsd.h +++ b/sys/netinet/sctp_os_bsd.h @@ -202,6 +202,7 @@ MALLOC_DECLARE(SCTP_M_SOCKOPT); #define SCTP_INIT_VRF_TABLEID(vrf) #define SCTP_IFN_IS_IFT_LOOP(ifn) ((ifn)->ifn_type == IFT_LOOP) +#define SCTP_ROUTE_IS_REAL_LOOP(ro) ((ro)->ro_rt && (ro)->ro_rt->rt_ifa && (ro)->ro_rt->rt_ifa->ifa_ifp && (ro)->ro_rt->rt_ifa->ifa_ifp->if_type == IFT_LOOP) /* * Access to IFN's to help with src-addr-selection @@ -234,6 +235,7 @@ MALLOC_DECLARE(SCTP_M_SOCKOPT); * zone allocation functions */ #include <vm/uma.h> + /* SCTP_ZONE_INIT: initialize the zone */ typedef struct uma_zone *sctp_zone_t; @@ -244,6 +246,8 @@ typedef struct uma_zone *sctp_zone_t; uma_zone_set_max(zone, number); \ } +#define SCTP_ZONE_DESTROY(zone) uma_zdestroy(zone) + /* SCTP_ZONE_GET: allocate element from the zone */ #define SCTP_ZONE_GET(zone, type) \ (type *)uma_zalloc(zone, M_NOWAIT); @@ -251,6 +255,7 @@ typedef struct uma_zone *sctp_zone_t; /* SCTP_ZONE_FREE: free element from the zone */ #define SCTP_ZONE_FREE(zone, element) \ uma_zfree(zone, element); + #define SCTP_HASH_INIT(size, hashmark) hashinit_flags(size, M_PCB, hashmark, HASH_NOWAIT) #define SCTP_HASH_FREE(table, hashmark) hashdestroy(table, M_PCB, hashmark) @@ -262,6 +267,7 @@ typedef struct uma_zone *sctp_zone_t; #include <sys/callout.h> typedef struct callout sctp_os_timer_t; + #define SCTP_OS_TIMER_INIT(tmr) callout_init(tmr, 1) #define SCTP_OS_TIMER_START callout_reset #define SCTP_OS_TIMER_STOP callout_stop |