sctp_structs.h (206137) | sctp_structs.h (208160) |
---|---|
1/*- 2 * Copyright (c) 2001-2008, by Cisco Systems, Inc. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions are met: 6 * 7 * a) Redistributions of source code must retain the above copyright notice, 8 * this list of conditions and the following disclaimer. --- 17 unchanged lines hidden (view full) --- 26 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 27 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 28 * THE POSSIBILITY OF SUCH DAMAGE. 29 */ 30 31/* $KAME: sctp_structs.h,v 1.13 2005/03/06 16:04:18 itojun Exp $ */ 32 33#include <sys/cdefs.h> | 1/*- 2 * Copyright (c) 2001-2008, by Cisco Systems, Inc. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions are met: 6 * 7 * a) Redistributions of source code must retain the above copyright notice, 8 * this list of conditions and the following disclaimer. --- 17 unchanged lines hidden (view full) --- 26 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 27 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 28 * THE POSSIBILITY OF SUCH DAMAGE. 29 */ 30 31/* $KAME: sctp_structs.h,v 1.13 2005/03/06 16:04:18 itojun Exp $ */ 32 33#include <sys/cdefs.h> |
34__FBSDID("$FreeBSD: head/sys/netinet/sctp_structs.h 206137 2010-04-03 15:40:14Z tuexen $"); | 34__FBSDID("$FreeBSD: head/sys/netinet/sctp_structs.h 208160 2010-05-16 17:03:56Z rrs $"); |
35 36#ifndef __sctp_structs_h__ 37#define __sctp_structs_h__ 38 39#include <netinet/sctp_os.h> 40#include <netinet/sctp_header.h> 41#include <netinet/sctp_auth.h> 42 --- 60 unchanged lines hidden (view full) --- 103 104typedef void (*asoc_func) (struct sctp_inpcb *, struct sctp_tcb *, void *ptr, 105 uint32_t val); 106typedef int (*inp_func) (struct sctp_inpcb *, void *ptr, uint32_t val); 107typedef void (*end_func) (void *ptr, uint32_t val); 108 109struct sctp_iterator { 110 TAILQ_ENTRY(sctp_iterator) sctp_nxt_itr; | 35 36#ifndef __sctp_structs_h__ 37#define __sctp_structs_h__ 38 39#include <netinet/sctp_os.h> 40#include <netinet/sctp_header.h> 41#include <netinet/sctp_auth.h> 42 --- 60 unchanged lines hidden (view full) --- 103 104typedef void (*asoc_func) (struct sctp_inpcb *, struct sctp_tcb *, void *ptr, 105 uint32_t val); 106typedef int (*inp_func) (struct sctp_inpcb *, void *ptr, uint32_t val); 107typedef void (*end_func) (void *ptr, uint32_t val); 108 109struct sctp_iterator { 110 TAILQ_ENTRY(sctp_iterator) sctp_nxt_itr; |
111 struct vnet *vn; |
|
111 struct sctp_timer tmr; 112 struct sctp_inpcb *inp; /* current endpoint */ 113 struct sctp_tcb *stcb; /* current* assoc */ | 112 struct sctp_timer tmr; 113 struct sctp_inpcb *inp; /* current endpoint */ 114 struct sctp_tcb *stcb; /* current* assoc */ |
115 struct sctp_inpcb *next_inp; /* special hook to skip to */ |
|
114 asoc_func function_assoc; /* per assoc function */ 115 inp_func function_inp; /* per endpoint function */ 116 inp_func function_inp_end; /* end INP function */ 117 end_func function_atend;/* iterator completion function */ 118 void *pointer; /* pointer for apply func to use */ 119 uint32_t val; /* value for apply func to use */ 120 uint32_t pcb_flags; /* endpoint flags being checked */ 121 uint32_t pcb_features; /* endpoint features being checked */ 122 uint32_t asoc_state; /* assoc state being checked */ 123 uint32_t iterator_flags; 124 uint8_t no_chunk_output; 125 uint8_t done_current_ep; 126}; 127 128/* iterator_flags values */ 129#define SCTP_ITERATOR_DO_ALL_INP 0x00000001 130#define SCTP_ITERATOR_DO_SINGLE_INP 0x00000002 131 | 116 asoc_func function_assoc; /* per assoc function */ 117 inp_func function_inp; /* per endpoint function */ 118 inp_func function_inp_end; /* end INP function */ 119 end_func function_atend;/* iterator completion function */ 120 void *pointer; /* pointer for apply func to use */ 121 uint32_t val; /* value for apply func to use */ 122 uint32_t pcb_flags; /* endpoint flags being checked */ 123 uint32_t pcb_features; /* endpoint features being checked */ 124 uint32_t asoc_state; /* assoc state being checked */ 125 uint32_t iterator_flags; 126 uint8_t no_chunk_output; 127 uint8_t done_current_ep; 128}; 129 130/* iterator_flags values */ 131#define SCTP_ITERATOR_DO_ALL_INP 0x00000001 132#define SCTP_ITERATOR_DO_SINGLE_INP 0x00000002 133 |
134 |
|
132TAILQ_HEAD(sctpiterators, sctp_iterator); 133 134struct sctp_copy_all { 135 struct sctp_inpcb *inp; /* ep */ 136 struct mbuf *m; 137 struct sctp_sndrcvinfo sndrcv; 138 int sndlen; 139 int cnt_sent; 140 int cnt_failed; 141}; 142 143struct sctp_asconf_iterator { 144 struct sctpladdr list_of_work; 145 int cnt; 146}; 147 | 135TAILQ_HEAD(sctpiterators, sctp_iterator); 136 137struct sctp_copy_all { 138 struct sctp_inpcb *inp; /* ep */ 139 struct mbuf *m; 140 struct sctp_sndrcvinfo sndrcv; 141 int sndlen; 142 int cnt_sent; 143 int cnt_failed; 144}; 145 146struct sctp_asconf_iterator { 147 struct sctpladdr list_of_work; 148 int cnt; 149}; 150 |
151struct iterator_control { 152 struct mtx ipi_iterator_wq_mtx; 153 struct mtx it_mtx; 154 SCTP_PROCESS_STRUCT thread_proc; 155 struct sctpiterators iteratorhead; 156 struct sctp_iterator *cur_it; 157 uint32_t iterator_running; 158 uint32_t iterator_flags; 159}; 160 161#define SCTP_ITERATOR_MUST_EXIT 0x00000001 162#define SCTP_ITERATOR_STOP_CUR_IT 0x00000002 163#define SCTP_ITERATOR_STOP_CUR_INP 0x00000004 164 |
|
148struct sctp_net_route { 149 sctp_rtentry_t *ro_rt; 150 void *ro_lle; 151 union sctp_sockstore _l_addr; /* remote peer addr */ 152 struct sctp_ifa *_s_addr; /* our selected src addr */ 153}; 154 155struct htcp { --- 920 unchanged lines hidden --- | 165struct sctp_net_route { 166 sctp_rtentry_t *ro_rt; 167 void *ro_lle; 168 union sctp_sockstore _l_addr; /* remote peer addr */ 169 struct sctp_ifa *_s_addr; /* our selected src addr */ 170}; 171 172struct htcp { --- 920 unchanged lines hidden --- |