diff options
-rw-r--r-- | include/net/sctp/constants.h | 18 | ||||
-rw-r--r-- | include/net/sctp/sm.h | 13 | ||||
-rw-r--r-- | net/sctp/associola.c | 2 | ||||
-rw-r--r-- | net/sctp/debug.c | 8 | ||||
-rw-r--r-- | net/sctp/endpointola.c | 2 | ||||
-rw-r--r-- | net/sctp/primitive.c | 2 | ||||
-rw-r--r-- | net/sctp/probe.c | 2 | ||||
-rw-r--r-- | net/sctp/sm_sideeffect.c | 16 | ||||
-rw-r--r-- | net/sctp/sm_statefuns.c | 191 | ||||
-rw-r--r-- | net/sctp/sm_statetable.c | 9 |
10 files changed, 134 insertions, 129 deletions
diff --git a/include/net/sctp/constants.h b/include/net/sctp/constants.h index 3181e0f95b60..deaafa9b09cb 100644 --- a/include/net/sctp/constants.h +++ b/include/net/sctp/constants.h | |||
@@ -124,20 +124,20 @@ enum sctp_event_primitive { | |||
124 | /* We define here a utility type for manipulating subtypes. | 124 | /* We define here a utility type for manipulating subtypes. |
125 | * The subtype constructors all work like this: | 125 | * The subtype constructors all work like this: |
126 | * | 126 | * |
127 | * sctp_subtype_t foo = SCTP_ST_CHUNK(SCTP_CID_INIT); | 127 | * union sctp_subtype foo = SCTP_ST_CHUNK(SCTP_CID_INIT); |
128 | */ | 128 | */ |
129 | 129 | ||
130 | typedef union { | 130 | union sctp_subtype { |
131 | enum sctp_cid chunk; | 131 | enum sctp_cid chunk; |
132 | enum sctp_event_timeout timeout; | 132 | enum sctp_event_timeout timeout; |
133 | enum sctp_event_other other; | 133 | enum sctp_event_other other; |
134 | enum sctp_event_primitive primitive; | 134 | enum sctp_event_primitive primitive; |
135 | } sctp_subtype_t; | 135 | }; |
136 | 136 | ||
137 | #define SCTP_SUBTYPE_CONSTRUCTOR(_name, _type, _elt) \ | 137 | #define SCTP_SUBTYPE_CONSTRUCTOR(_name, _type, _elt) \ |
138 | static inline sctp_subtype_t \ | 138 | static inline union sctp_subtype \ |
139 | SCTP_ST_## _name (_type _arg) \ | 139 | SCTP_ST_## _name (_type _arg) \ |
140 | { sctp_subtype_t _retval; _retval._elt = _arg; return _retval; } | 140 | { union sctp_subtype _retval; _retval._elt = _arg; return _retval; } |
141 | 141 | ||
142 | SCTP_SUBTYPE_CONSTRUCTOR(CHUNK, enum sctp_cid, chunk) | 142 | SCTP_SUBTYPE_CONSTRUCTOR(CHUNK, enum sctp_cid, chunk) |
143 | SCTP_SUBTYPE_CONSTRUCTOR(TIMEOUT, enum sctp_event_timeout, timeout) | 143 | SCTP_SUBTYPE_CONSTRUCTOR(TIMEOUT, enum sctp_event_timeout, timeout) |
@@ -220,10 +220,10 @@ enum sctp_sock_state { | |||
220 | }; | 220 | }; |
221 | 221 | ||
222 | /* These functions map various type to printable names. */ | 222 | /* These functions map various type to printable names. */ |
223 | const char *sctp_cname(const sctp_subtype_t); /* chunk types */ | 223 | const char *sctp_cname(const union sctp_subtype id); /* chunk types */ |
224 | const char *sctp_oname(const sctp_subtype_t); /* other events */ | 224 | const char *sctp_oname(const union sctp_subtype id); /* other events */ |
225 | const char *sctp_tname(const sctp_subtype_t); /* timeouts */ | 225 | const char *sctp_tname(const union sctp_subtype id); /* timeouts */ |
226 | const char *sctp_pname(const sctp_subtype_t); /* primitives */ | 226 | const char *sctp_pname(const union sctp_subtype id); /* primitives */ |
227 | 227 | ||
228 | /* This is a table of printable names of sctp_state_t's. */ | 228 | /* This is a table of printable names of sctp_state_t's. */ |
229 | extern const char *const sctp_state_tbl[]; | 229 | extern const char *const sctp_state_tbl[]; |
diff --git a/include/net/sctp/sm.h b/include/net/sctp/sm.h index 96f54cff7964..1e7651c3b158 100644 --- a/include/net/sctp/sm.h +++ b/include/net/sctp/sm.h | |||
@@ -73,7 +73,7 @@ typedef struct { | |||
73 | typedef sctp_disposition_t (sctp_state_fn_t) (struct net *, | 73 | typedef sctp_disposition_t (sctp_state_fn_t) (struct net *, |
74 | const struct sctp_endpoint *, | 74 | const struct sctp_endpoint *, |
75 | const struct sctp_association *, | 75 | const struct sctp_association *, |
76 | const sctp_subtype_t type, | 76 | const union sctp_subtype type, |
77 | void *arg, | 77 | void *arg, |
78 | sctp_cmd_seq_t *); | 78 | sctp_cmd_seq_t *); |
79 | typedef void (sctp_timer_event_t) (unsigned long); | 79 | typedef void (sctp_timer_event_t) (unsigned long); |
@@ -175,10 +175,11 @@ sctp_state_fn_t sctp_sf_autoclose_timer_expire; | |||
175 | 175 | ||
176 | /* Prototypes for utility support functions. */ | 176 | /* Prototypes for utility support functions. */ |
177 | __u8 sctp_get_chunk_type(struct sctp_chunk *chunk); | 177 | __u8 sctp_get_chunk_type(struct sctp_chunk *chunk); |
178 | const sctp_sm_table_entry_t *sctp_sm_lookup_event(struct net *net, | 178 | const sctp_sm_table_entry_t *sctp_sm_lookup_event( |
179 | enum sctp_event event_type, | 179 | struct net *net, |
180 | enum sctp_state state, | 180 | enum sctp_event event_type, |
181 | sctp_subtype_t event_subtype); | 181 | enum sctp_state state, |
182 | union sctp_subtype event_subtype); | ||
182 | int sctp_chunk_iif(const struct sctp_chunk *); | 183 | int sctp_chunk_iif(const struct sctp_chunk *); |
183 | struct sctp_association *sctp_make_temp_asoc(const struct sctp_endpoint *, | 184 | struct sctp_association *sctp_make_temp_asoc(const struct sctp_endpoint *, |
184 | struct sctp_chunk *, | 185 | struct sctp_chunk *, |
@@ -313,7 +314,7 @@ struct sctp_chunk *sctp_process_strreset_resp( | |||
313 | /* Prototypes for statetable processing. */ | 314 | /* Prototypes for statetable processing. */ |
314 | 315 | ||
315 | int sctp_do_sm(struct net *net, enum sctp_event event_type, | 316 | int sctp_do_sm(struct net *net, enum sctp_event event_type, |
316 | sctp_subtype_t subtype, enum sctp_state state, | 317 | union sctp_subtype subtype, enum sctp_state state, |
317 | struct sctp_endpoint *ep, struct sctp_association *asoc, | 318 | struct sctp_endpoint *ep, struct sctp_association *asoc, |
318 | void *event_arg, gfp_t gfp); | 319 | void *event_arg, gfp_t gfp); |
319 | 320 | ||
diff --git a/net/sctp/associola.c b/net/sctp/associola.c index b53efed8ff71..dfb9651e818b 100644 --- a/net/sctp/associola.c +++ b/net/sctp/associola.c | |||
@@ -1021,11 +1021,11 @@ static void sctp_assoc_bh_rcv(struct work_struct *work) | |||
1021 | container_of(work, struct sctp_association, | 1021 | container_of(work, struct sctp_association, |
1022 | base.inqueue.immediate); | 1022 | base.inqueue.immediate); |
1023 | struct net *net = sock_net(asoc->base.sk); | 1023 | struct net *net = sock_net(asoc->base.sk); |
1024 | union sctp_subtype subtype; | ||
1024 | struct sctp_endpoint *ep; | 1025 | struct sctp_endpoint *ep; |
1025 | struct sctp_chunk *chunk; | 1026 | struct sctp_chunk *chunk; |
1026 | struct sctp_inq *inqueue; | 1027 | struct sctp_inq *inqueue; |
1027 | int state; | 1028 | int state; |
1028 | sctp_subtype_t subtype; | ||
1029 | int error = 0; | 1029 | int error = 0; |
1030 | 1030 | ||
1031 | /* The association should be held so we should be safe. */ | 1031 | /* The association should be held so we should be safe. */ |
diff --git a/net/sctp/debug.c b/net/sctp/debug.c index 2e47eb2f05cb..3f619fdcbf0a 100644 --- a/net/sctp/debug.c +++ b/net/sctp/debug.c | |||
@@ -60,7 +60,7 @@ static const char *const sctp_cid_tbl[SCTP_NUM_BASE_CHUNK_TYPES] = { | |||
60 | }; | 60 | }; |
61 | 61 | ||
62 | /* Lookup "chunk type" debug name. */ | 62 | /* Lookup "chunk type" debug name. */ |
63 | const char *sctp_cname(const sctp_subtype_t cid) | 63 | const char *sctp_cname(const union sctp_subtype cid) |
64 | { | 64 | { |
65 | if (cid.chunk <= SCTP_CID_BASE_MAX) | 65 | if (cid.chunk <= SCTP_CID_BASE_MAX) |
66 | return sctp_cid_tbl[cid.chunk]; | 66 | return sctp_cid_tbl[cid.chunk]; |
@@ -130,7 +130,7 @@ static const char *const sctp_primitive_tbl[SCTP_NUM_PRIMITIVE_TYPES] = { | |||
130 | }; | 130 | }; |
131 | 131 | ||
132 | /* Lookup primitive debug name. */ | 132 | /* Lookup primitive debug name. */ |
133 | const char *sctp_pname(const sctp_subtype_t id) | 133 | const char *sctp_pname(const union sctp_subtype id) |
134 | { | 134 | { |
135 | if (id.primitive <= SCTP_EVENT_PRIMITIVE_MAX) | 135 | if (id.primitive <= SCTP_EVENT_PRIMITIVE_MAX) |
136 | return sctp_primitive_tbl[id.primitive]; | 136 | return sctp_primitive_tbl[id.primitive]; |
@@ -143,7 +143,7 @@ static const char *const sctp_other_tbl[] = { | |||
143 | }; | 143 | }; |
144 | 144 | ||
145 | /* Lookup "other" debug name. */ | 145 | /* Lookup "other" debug name. */ |
146 | const char *sctp_oname(const sctp_subtype_t id) | 146 | const char *sctp_oname(const union sctp_subtype id) |
147 | { | 147 | { |
148 | if (id.other <= SCTP_EVENT_OTHER_MAX) | 148 | if (id.other <= SCTP_EVENT_OTHER_MAX) |
149 | return sctp_other_tbl[id.other]; | 149 | return sctp_other_tbl[id.other]; |
@@ -165,7 +165,7 @@ static const char *const sctp_timer_tbl[] = { | |||
165 | }; | 165 | }; |
166 | 166 | ||
167 | /* Lookup timer debug name. */ | 167 | /* Lookup timer debug name. */ |
168 | const char *sctp_tname(const sctp_subtype_t id) | 168 | const char *sctp_tname(const union sctp_subtype id) |
169 | { | 169 | { |
170 | BUILD_BUG_ON(SCTP_EVENT_TIMEOUT_MAX + 1 != ARRAY_SIZE(sctp_timer_tbl)); | 170 | BUILD_BUG_ON(SCTP_EVENT_TIMEOUT_MAX + 1 != ARRAY_SIZE(sctp_timer_tbl)); |
171 | 171 | ||
diff --git a/net/sctp/endpointola.c b/net/sctp/endpointola.c index 4111c00a9d9d..ee1e601a0b11 100644 --- a/net/sctp/endpointola.c +++ b/net/sctp/endpointola.c | |||
@@ -382,7 +382,7 @@ static void sctp_endpoint_bh_rcv(struct work_struct *work) | |||
382 | struct sctp_transport *transport; | 382 | struct sctp_transport *transport; |
383 | struct sctp_chunk *chunk; | 383 | struct sctp_chunk *chunk; |
384 | struct sctp_inq *inqueue; | 384 | struct sctp_inq *inqueue; |
385 | sctp_subtype_t subtype; | 385 | union sctp_subtype subtype; |
386 | enum sctp_state state; | 386 | enum sctp_state state; |
387 | int error = 0; | 387 | int error = 0; |
388 | int first_time = 1; /* is this the first time through the loop */ | 388 | int first_time = 1; /* is this the first time through the loop */ |
diff --git a/net/sctp/primitive.c b/net/sctp/primitive.c index c914166984b3..c0817f7a8964 100644 --- a/net/sctp/primitive.c +++ b/net/sctp/primitive.c | |||
@@ -53,7 +53,7 @@ | |||
53 | int sctp_primitive_ ## name(struct net *net, struct sctp_association *asoc, \ | 53 | int sctp_primitive_ ## name(struct net *net, struct sctp_association *asoc, \ |
54 | void *arg) { \ | 54 | void *arg) { \ |
55 | int error = 0; \ | 55 | int error = 0; \ |
56 | enum sctp_event event_type; sctp_subtype_t subtype; \ | 56 | enum sctp_event event_type; union sctp_subtype subtype; \ |
57 | enum sctp_state state; \ | 57 | enum sctp_state state; \ |
58 | struct sctp_endpoint *ep; \ | 58 | struct sctp_endpoint *ep; \ |
59 | \ | 59 | \ |
diff --git a/net/sctp/probe.c b/net/sctp/probe.c index 6cc2152e0740..43837dfc86a7 100644 --- a/net/sctp/probe.c +++ b/net/sctp/probe.c | |||
@@ -130,7 +130,7 @@ static const struct file_operations sctpprobe_fops = { | |||
130 | static sctp_disposition_t jsctp_sf_eat_sack(struct net *net, | 130 | static sctp_disposition_t jsctp_sf_eat_sack(struct net *net, |
131 | const struct sctp_endpoint *ep, | 131 | const struct sctp_endpoint *ep, |
132 | const struct sctp_association *asoc, | 132 | const struct sctp_association *asoc, |
133 | const sctp_subtype_t type, | 133 | const union sctp_subtype type, |
134 | void *arg, | 134 | void *arg, |
135 | sctp_cmd_seq_t *commands) | 135 | sctp_cmd_seq_t *commands) |
136 | { | 136 | { |
diff --git a/net/sctp/sm_sideeffect.c b/net/sctp/sm_sideeffect.c index b545c768cb9e..4a12d29d9aa1 100644 --- a/net/sctp/sm_sideeffect.c +++ b/net/sctp/sm_sideeffect.c | |||
@@ -52,7 +52,7 @@ | |||
52 | #include <net/sctp/sm.h> | 52 | #include <net/sctp/sm.h> |
53 | 53 | ||
54 | static int sctp_cmd_interpreter(enum sctp_event event_type, | 54 | static int sctp_cmd_interpreter(enum sctp_event event_type, |
55 | sctp_subtype_t subtype, | 55 | union sctp_subtype subtype, |
56 | enum sctp_state state, | 56 | enum sctp_state state, |
57 | struct sctp_endpoint *ep, | 57 | struct sctp_endpoint *ep, |
58 | struct sctp_association *asoc, | 58 | struct sctp_association *asoc, |
@@ -60,7 +60,8 @@ static int sctp_cmd_interpreter(enum sctp_event event_type, | |||
60 | sctp_disposition_t status, | 60 | sctp_disposition_t status, |
61 | sctp_cmd_seq_t *commands, | 61 | sctp_cmd_seq_t *commands, |
62 | gfp_t gfp); | 62 | gfp_t gfp); |
63 | static int sctp_side_effects(enum sctp_event event_type, sctp_subtype_t subtype, | 63 | static int sctp_side_effects(enum sctp_event event_type, |
64 | union sctp_subtype subtype, | ||
64 | enum sctp_state state, | 65 | enum sctp_state state, |
65 | struct sctp_endpoint *ep, | 66 | struct sctp_endpoint *ep, |
66 | struct sctp_association **asoc, | 67 | struct sctp_association **asoc, |
@@ -603,7 +604,7 @@ static void sctp_cmd_init_failed(sctp_cmd_seq_t *commands, | |||
603 | static void sctp_cmd_assoc_failed(sctp_cmd_seq_t *commands, | 604 | static void sctp_cmd_assoc_failed(sctp_cmd_seq_t *commands, |
604 | struct sctp_association *asoc, | 605 | struct sctp_association *asoc, |
605 | enum sctp_event event_type, | 606 | enum sctp_event event_type, |
606 | sctp_subtype_t subtype, | 607 | union sctp_subtype subtype, |
607 | struct sctp_chunk *chunk, | 608 | struct sctp_chunk *chunk, |
608 | unsigned int error) | 609 | unsigned int error) |
609 | { | 610 | { |
@@ -1140,7 +1141,7 @@ static void sctp_cmd_send_asconf(struct sctp_association *asoc) | |||
1140 | * good place to start. | 1141 | * good place to start. |
1141 | */ | 1142 | */ |
1142 | int sctp_do_sm(struct net *net, enum sctp_event event_type, | 1143 | int sctp_do_sm(struct net *net, enum sctp_event event_type, |
1143 | sctp_subtype_t subtype, enum sctp_state state, | 1144 | union sctp_subtype subtype, enum sctp_state state, |
1144 | struct sctp_endpoint *ep, struct sctp_association *asoc, | 1145 | struct sctp_endpoint *ep, struct sctp_association *asoc, |
1145 | void *event_arg, gfp_t gfp) | 1146 | void *event_arg, gfp_t gfp) |
1146 | { | 1147 | { |
@@ -1148,7 +1149,7 @@ int sctp_do_sm(struct net *net, enum sctp_event event_type, | |||
1148 | const sctp_sm_table_entry_t *state_fn; | 1149 | const sctp_sm_table_entry_t *state_fn; |
1149 | sctp_disposition_t status; | 1150 | sctp_disposition_t status; |
1150 | int error = 0; | 1151 | int error = 0; |
1151 | typedef const char *(printfn_t)(sctp_subtype_t); | 1152 | typedef const char *(printfn_t)(union sctp_subtype); |
1152 | static printfn_t *table[] = { | 1153 | static printfn_t *table[] = { |
1153 | NULL, sctp_cname, sctp_tname, sctp_oname, sctp_pname, | 1154 | NULL, sctp_cname, sctp_tname, sctp_oname, sctp_pname, |
1154 | }; | 1155 | }; |
@@ -1176,7 +1177,8 @@ int sctp_do_sm(struct net *net, enum sctp_event event_type, | |||
1176 | /***************************************************************** | 1177 | /***************************************************************** |
1177 | * This the master state function side effect processing function. | 1178 | * This the master state function side effect processing function. |
1178 | *****************************************************************/ | 1179 | *****************************************************************/ |
1179 | static int sctp_side_effects(enum sctp_event event_type, sctp_subtype_t subtype, | 1180 | static int sctp_side_effects(enum sctp_event event_type, |
1181 | union sctp_subtype subtype, | ||
1180 | enum sctp_state state, | 1182 | enum sctp_state state, |
1181 | struct sctp_endpoint *ep, | 1183 | struct sctp_endpoint *ep, |
1182 | struct sctp_association **asoc, | 1184 | struct sctp_association **asoc, |
@@ -1262,7 +1264,7 @@ bail: | |||
1262 | 1264 | ||
1263 | /* This is the side-effect interpreter. */ | 1265 | /* This is the side-effect interpreter. */ |
1264 | static int sctp_cmd_interpreter(enum sctp_event event_type, | 1266 | static int sctp_cmd_interpreter(enum sctp_event event_type, |
1265 | sctp_subtype_t subtype, | 1267 | union sctp_subtype subtype, |
1266 | enum sctp_state state, | 1268 | enum sctp_state state, |
1267 | struct sctp_endpoint *ep, | 1269 | struct sctp_endpoint *ep, |
1268 | struct sctp_association *asoc, | 1270 | struct sctp_association *asoc, |
diff --git a/net/sctp/sm_statefuns.c b/net/sctp/sm_statefuns.c index 5381697333df..ac6aaa046529 100644 --- a/net/sctp/sm_statefuns.c +++ b/net/sctp/sm_statefuns.c | |||
@@ -80,19 +80,19 @@ static void sctp_send_stale_cookie_err(struct net *net, | |||
80 | static sctp_disposition_t sctp_sf_do_5_2_6_stale(struct net *net, | 80 | static sctp_disposition_t sctp_sf_do_5_2_6_stale(struct net *net, |
81 | const struct sctp_endpoint *ep, | 81 | const struct sctp_endpoint *ep, |
82 | const struct sctp_association *asoc, | 82 | const struct sctp_association *asoc, |
83 | const sctp_subtype_t type, | 83 | const union sctp_subtype type, |
84 | void *arg, | 84 | void *arg, |
85 | sctp_cmd_seq_t *commands); | 85 | sctp_cmd_seq_t *commands); |
86 | static sctp_disposition_t sctp_sf_shut_8_4_5(struct net *net, | 86 | static sctp_disposition_t sctp_sf_shut_8_4_5(struct net *net, |
87 | const struct sctp_endpoint *ep, | 87 | const struct sctp_endpoint *ep, |
88 | const struct sctp_association *asoc, | 88 | const struct sctp_association *asoc, |
89 | const sctp_subtype_t type, | 89 | const union sctp_subtype type, |
90 | void *arg, | 90 | void *arg, |
91 | sctp_cmd_seq_t *commands); | 91 | sctp_cmd_seq_t *commands); |
92 | static sctp_disposition_t sctp_sf_tabort_8_4_8(struct net *net, | 92 | static sctp_disposition_t sctp_sf_tabort_8_4_8(struct net *net, |
93 | const struct sctp_endpoint *ep, | 93 | const struct sctp_endpoint *ep, |
94 | const struct sctp_association *asoc, | 94 | const struct sctp_association *asoc, |
95 | const sctp_subtype_t type, | 95 | const union sctp_subtype type, |
96 | void *arg, | 96 | void *arg, |
97 | sctp_cmd_seq_t *commands); | 97 | sctp_cmd_seq_t *commands); |
98 | static struct sctp_sackhdr *sctp_sm_pull_sack(struct sctp_chunk *chunk); | 98 | static struct sctp_sackhdr *sctp_sm_pull_sack(struct sctp_chunk *chunk); |
@@ -116,7 +116,7 @@ static sctp_disposition_t sctp_sf_violation_chunklen( | |||
116 | struct net *net, | 116 | struct net *net, |
117 | const struct sctp_endpoint *ep, | 117 | const struct sctp_endpoint *ep, |
118 | const struct sctp_association *asoc, | 118 | const struct sctp_association *asoc, |
119 | const sctp_subtype_t type, | 119 | const union sctp_subtype type, |
120 | void *arg, | 120 | void *arg, |
121 | sctp_cmd_seq_t *commands); | 121 | sctp_cmd_seq_t *commands); |
122 | 122 | ||
@@ -124,7 +124,7 @@ static sctp_disposition_t sctp_sf_violation_paramlen( | |||
124 | struct net *net, | 124 | struct net *net, |
125 | const struct sctp_endpoint *ep, | 125 | const struct sctp_endpoint *ep, |
126 | const struct sctp_association *asoc, | 126 | const struct sctp_association *asoc, |
127 | const sctp_subtype_t type, | 127 | const union sctp_subtype type, |
128 | void *arg, void *ext, | 128 | void *arg, void *ext, |
129 | sctp_cmd_seq_t *commands); | 129 | sctp_cmd_seq_t *commands); |
130 | 130 | ||
@@ -132,7 +132,7 @@ static sctp_disposition_t sctp_sf_violation_ctsn( | |||
132 | struct net *net, | 132 | struct net *net, |
133 | const struct sctp_endpoint *ep, | 133 | const struct sctp_endpoint *ep, |
134 | const struct sctp_association *asoc, | 134 | const struct sctp_association *asoc, |
135 | const sctp_subtype_t type, | 135 | const union sctp_subtype type, |
136 | void *arg, | 136 | void *arg, |
137 | sctp_cmd_seq_t *commands); | 137 | sctp_cmd_seq_t *commands); |
138 | 138 | ||
@@ -140,7 +140,7 @@ static sctp_disposition_t sctp_sf_violation_chunk( | |||
140 | struct net *net, | 140 | struct net *net, |
141 | const struct sctp_endpoint *ep, | 141 | const struct sctp_endpoint *ep, |
142 | const struct sctp_association *asoc, | 142 | const struct sctp_association *asoc, |
143 | const sctp_subtype_t type, | 143 | const union sctp_subtype type, |
144 | void *arg, | 144 | void *arg, |
145 | sctp_cmd_seq_t *commands); | 145 | sctp_cmd_seq_t *commands); |
146 | 146 | ||
@@ -148,13 +148,13 @@ static enum sctp_ierror sctp_sf_authenticate( | |||
148 | struct net *net, | 148 | struct net *net, |
149 | const struct sctp_endpoint *ep, | 149 | const struct sctp_endpoint *ep, |
150 | const struct sctp_association *asoc, | 150 | const struct sctp_association *asoc, |
151 | const sctp_subtype_t type, | 151 | const union sctp_subtype type, |
152 | struct sctp_chunk *chunk); | 152 | struct sctp_chunk *chunk); |
153 | 153 | ||
154 | static sctp_disposition_t __sctp_sf_do_9_1_abort(struct net *net, | 154 | static sctp_disposition_t __sctp_sf_do_9_1_abort(struct net *net, |
155 | const struct sctp_endpoint *ep, | 155 | const struct sctp_endpoint *ep, |
156 | const struct sctp_association *asoc, | 156 | const struct sctp_association *asoc, |
157 | const sctp_subtype_t type, | 157 | const union sctp_subtype type, |
158 | void *arg, | 158 | void *arg, |
159 | sctp_cmd_seq_t *commands); | 159 | sctp_cmd_seq_t *commands); |
160 | 160 | ||
@@ -217,7 +217,7 @@ sctp_chunk_length_valid(struct sctp_chunk *chunk, __u16 required_length) | |||
217 | sctp_disposition_t sctp_sf_do_4_C(struct net *net, | 217 | sctp_disposition_t sctp_sf_do_4_C(struct net *net, |
218 | const struct sctp_endpoint *ep, | 218 | const struct sctp_endpoint *ep, |
219 | const struct sctp_association *asoc, | 219 | const struct sctp_association *asoc, |
220 | const sctp_subtype_t type, | 220 | const union sctp_subtype type, |
221 | void *arg, | 221 | void *arg, |
222 | sctp_cmd_seq_t *commands) | 222 | sctp_cmd_seq_t *commands) |
223 | { | 223 | { |
@@ -303,7 +303,7 @@ sctp_disposition_t sctp_sf_do_4_C(struct net *net, | |||
303 | sctp_disposition_t sctp_sf_do_5_1B_init(struct net *net, | 303 | sctp_disposition_t sctp_sf_do_5_1B_init(struct net *net, |
304 | const struct sctp_endpoint *ep, | 304 | const struct sctp_endpoint *ep, |
305 | const struct sctp_association *asoc, | 305 | const struct sctp_association *asoc, |
306 | const sctp_subtype_t type, | 306 | const union sctp_subtype type, |
307 | void *arg, | 307 | void *arg, |
308 | sctp_cmd_seq_t *commands) | 308 | sctp_cmd_seq_t *commands) |
309 | { | 309 | { |
@@ -497,7 +497,7 @@ nomem: | |||
497 | sctp_disposition_t sctp_sf_do_5_1C_ack(struct net *net, | 497 | sctp_disposition_t sctp_sf_do_5_1C_ack(struct net *net, |
498 | const struct sctp_endpoint *ep, | 498 | const struct sctp_endpoint *ep, |
499 | const struct sctp_association *asoc, | 499 | const struct sctp_association *asoc, |
500 | const sctp_subtype_t type, | 500 | const union sctp_subtype type, |
501 | void *arg, | 501 | void *arg, |
502 | sctp_cmd_seq_t *commands) | 502 | sctp_cmd_seq_t *commands) |
503 | { | 503 | { |
@@ -647,7 +647,7 @@ sctp_disposition_t sctp_sf_do_5_1C_ack(struct net *net, | |||
647 | sctp_disposition_t sctp_sf_do_5_1D_ce(struct net *net, | 647 | sctp_disposition_t sctp_sf_do_5_1D_ce(struct net *net, |
648 | const struct sctp_endpoint *ep, | 648 | const struct sctp_endpoint *ep, |
649 | const struct sctp_association *asoc, | 649 | const struct sctp_association *asoc, |
650 | const sctp_subtype_t type, void *arg, | 650 | const union sctp_subtype type, void *arg, |
651 | sctp_cmd_seq_t *commands) | 651 | sctp_cmd_seq_t *commands) |
652 | { | 652 | { |
653 | struct sctp_chunk *chunk = arg; | 653 | struct sctp_chunk *chunk = arg; |
@@ -874,7 +874,7 @@ nomem: | |||
874 | sctp_disposition_t sctp_sf_do_5_1E_ca(struct net *net, | 874 | sctp_disposition_t sctp_sf_do_5_1E_ca(struct net *net, |
875 | const struct sctp_endpoint *ep, | 875 | const struct sctp_endpoint *ep, |
876 | const struct sctp_association *asoc, | 876 | const struct sctp_association *asoc, |
877 | const sctp_subtype_t type, void *arg, | 877 | const union sctp_subtype type, void *arg, |
878 | sctp_cmd_seq_t *commands) | 878 | sctp_cmd_seq_t *commands) |
879 | { | 879 | { |
880 | struct sctp_chunk *chunk = arg; | 880 | struct sctp_chunk *chunk = arg; |
@@ -951,7 +951,7 @@ nomem: | |||
951 | /* Generate and sendout a heartbeat packet. */ | 951 | /* Generate and sendout a heartbeat packet. */ |
952 | static sctp_disposition_t sctp_sf_heartbeat(const struct sctp_endpoint *ep, | 952 | static sctp_disposition_t sctp_sf_heartbeat(const struct sctp_endpoint *ep, |
953 | const struct sctp_association *asoc, | 953 | const struct sctp_association *asoc, |
954 | const sctp_subtype_t type, | 954 | const union sctp_subtype type, |
955 | void *arg, | 955 | void *arg, |
956 | sctp_cmd_seq_t *commands) | 956 | sctp_cmd_seq_t *commands) |
957 | { | 957 | { |
@@ -977,7 +977,7 @@ static sctp_disposition_t sctp_sf_heartbeat(const struct sctp_endpoint *ep, | |||
977 | sctp_disposition_t sctp_sf_sendbeat_8_3(struct net *net, | 977 | sctp_disposition_t sctp_sf_sendbeat_8_3(struct net *net, |
978 | const struct sctp_endpoint *ep, | 978 | const struct sctp_endpoint *ep, |
979 | const struct sctp_association *asoc, | 979 | const struct sctp_association *asoc, |
980 | const sctp_subtype_t type, | 980 | const union sctp_subtype type, |
981 | void *arg, | 981 | void *arg, |
982 | sctp_cmd_seq_t *commands) | 982 | sctp_cmd_seq_t *commands) |
983 | { | 983 | { |
@@ -1025,7 +1025,7 @@ sctp_disposition_t sctp_sf_sendbeat_8_3(struct net *net, | |||
1025 | sctp_disposition_t sctp_sf_send_reconf(struct net *net, | 1025 | sctp_disposition_t sctp_sf_send_reconf(struct net *net, |
1026 | const struct sctp_endpoint *ep, | 1026 | const struct sctp_endpoint *ep, |
1027 | const struct sctp_association *asoc, | 1027 | const struct sctp_association *asoc, |
1028 | const sctp_subtype_t type, void *arg, | 1028 | const union sctp_subtype type, void *arg, |
1029 | sctp_cmd_seq_t *commands) | 1029 | sctp_cmd_seq_t *commands) |
1030 | { | 1030 | { |
1031 | struct sctp_transport *transport = arg; | 1031 | struct sctp_transport *transport = arg; |
@@ -1076,7 +1076,7 @@ sctp_disposition_t sctp_sf_send_reconf(struct net *net, | |||
1076 | sctp_disposition_t sctp_sf_beat_8_3(struct net *net, | 1076 | sctp_disposition_t sctp_sf_beat_8_3(struct net *net, |
1077 | const struct sctp_endpoint *ep, | 1077 | const struct sctp_endpoint *ep, |
1078 | const struct sctp_association *asoc, | 1078 | const struct sctp_association *asoc, |
1079 | const sctp_subtype_t type, | 1079 | const union sctp_subtype type, |
1080 | void *arg, | 1080 | void *arg, |
1081 | sctp_cmd_seq_t *commands) | 1081 | sctp_cmd_seq_t *commands) |
1082 | { | 1082 | { |
@@ -1151,7 +1151,7 @@ nomem: | |||
1151 | sctp_disposition_t sctp_sf_backbeat_8_3(struct net *net, | 1151 | sctp_disposition_t sctp_sf_backbeat_8_3(struct net *net, |
1152 | const struct sctp_endpoint *ep, | 1152 | const struct sctp_endpoint *ep, |
1153 | const struct sctp_association *asoc, | 1153 | const struct sctp_association *asoc, |
1154 | const sctp_subtype_t type, | 1154 | const union sctp_subtype type, |
1155 | void *arg, | 1155 | void *arg, |
1156 | sctp_cmd_seq_t *commands) | 1156 | sctp_cmd_seq_t *commands) |
1157 | { | 1157 | { |
@@ -1416,7 +1416,7 @@ static sctp_disposition_t sctp_sf_do_unexpected_init( | |||
1416 | struct net *net, | 1416 | struct net *net, |
1417 | const struct sctp_endpoint *ep, | 1417 | const struct sctp_endpoint *ep, |
1418 | const struct sctp_association *asoc, | 1418 | const struct sctp_association *asoc, |
1419 | const sctp_subtype_t type, | 1419 | const union sctp_subtype type, |
1420 | void *arg, sctp_cmd_seq_t *commands) | 1420 | void *arg, sctp_cmd_seq_t *commands) |
1421 | { | 1421 | { |
1422 | struct sctp_chunk *chunk = arg, *repl, *err_chunk; | 1422 | struct sctp_chunk *chunk = arg, *repl, *err_chunk; |
@@ -1627,7 +1627,7 @@ cleanup: | |||
1627 | sctp_disposition_t sctp_sf_do_5_2_1_siminit(struct net *net, | 1627 | sctp_disposition_t sctp_sf_do_5_2_1_siminit(struct net *net, |
1628 | const struct sctp_endpoint *ep, | 1628 | const struct sctp_endpoint *ep, |
1629 | const struct sctp_association *asoc, | 1629 | const struct sctp_association *asoc, |
1630 | const sctp_subtype_t type, | 1630 | const union sctp_subtype type, |
1631 | void *arg, | 1631 | void *arg, |
1632 | sctp_cmd_seq_t *commands) | 1632 | sctp_cmd_seq_t *commands) |
1633 | { | 1633 | { |
@@ -1681,7 +1681,7 @@ sctp_disposition_t sctp_sf_do_5_2_1_siminit(struct net *net, | |||
1681 | sctp_disposition_t sctp_sf_do_5_2_2_dupinit(struct net *net, | 1681 | sctp_disposition_t sctp_sf_do_5_2_2_dupinit(struct net *net, |
1682 | const struct sctp_endpoint *ep, | 1682 | const struct sctp_endpoint *ep, |
1683 | const struct sctp_association *asoc, | 1683 | const struct sctp_association *asoc, |
1684 | const sctp_subtype_t type, | 1684 | const union sctp_subtype type, |
1685 | void *arg, | 1685 | void *arg, |
1686 | sctp_cmd_seq_t *commands) | 1686 | sctp_cmd_seq_t *commands) |
1687 | { | 1687 | { |
@@ -1704,7 +1704,7 @@ sctp_disposition_t sctp_sf_do_5_2_2_dupinit(struct net *net, | |||
1704 | sctp_disposition_t sctp_sf_do_5_2_3_initack(struct net *net, | 1704 | sctp_disposition_t sctp_sf_do_5_2_3_initack(struct net *net, |
1705 | const struct sctp_endpoint *ep, | 1705 | const struct sctp_endpoint *ep, |
1706 | const struct sctp_association *asoc, | 1706 | const struct sctp_association *asoc, |
1707 | const sctp_subtype_t type, | 1707 | const union sctp_subtype type, |
1708 | void *arg, sctp_cmd_seq_t *commands) | 1708 | void *arg, sctp_cmd_seq_t *commands) |
1709 | { | 1709 | { |
1710 | /* Per the above section, we'll discard the chunk if we have an | 1710 | /* Per the above section, we'll discard the chunk if we have an |
@@ -2027,7 +2027,7 @@ nomem: | |||
2027 | sctp_disposition_t sctp_sf_do_5_2_4_dupcook(struct net *net, | 2027 | sctp_disposition_t sctp_sf_do_5_2_4_dupcook(struct net *net, |
2028 | const struct sctp_endpoint *ep, | 2028 | const struct sctp_endpoint *ep, |
2029 | const struct sctp_association *asoc, | 2029 | const struct sctp_association *asoc, |
2030 | const sctp_subtype_t type, | 2030 | const union sctp_subtype type, |
2031 | void *arg, | 2031 | void *arg, |
2032 | sctp_cmd_seq_t *commands) | 2032 | sctp_cmd_seq_t *commands) |
2033 | { | 2033 | { |
@@ -2146,7 +2146,7 @@ sctp_disposition_t sctp_sf_shutdown_pending_abort( | |||
2146 | struct net *net, | 2146 | struct net *net, |
2147 | const struct sctp_endpoint *ep, | 2147 | const struct sctp_endpoint *ep, |
2148 | const struct sctp_association *asoc, | 2148 | const struct sctp_association *asoc, |
2149 | const sctp_subtype_t type, | 2149 | const union sctp_subtype type, |
2150 | void *arg, | 2150 | void *arg, |
2151 | sctp_cmd_seq_t *commands) | 2151 | sctp_cmd_seq_t *commands) |
2152 | { | 2152 | { |
@@ -2188,7 +2188,7 @@ sctp_disposition_t sctp_sf_shutdown_pending_abort( | |||
2188 | sctp_disposition_t sctp_sf_shutdown_sent_abort(struct net *net, | 2188 | sctp_disposition_t sctp_sf_shutdown_sent_abort(struct net *net, |
2189 | const struct sctp_endpoint *ep, | 2189 | const struct sctp_endpoint *ep, |
2190 | const struct sctp_association *asoc, | 2190 | const struct sctp_association *asoc, |
2191 | const sctp_subtype_t type, | 2191 | const union sctp_subtype type, |
2192 | void *arg, | 2192 | void *arg, |
2193 | sctp_cmd_seq_t *commands) | 2193 | sctp_cmd_seq_t *commands) |
2194 | { | 2194 | { |
@@ -2239,7 +2239,7 @@ sctp_disposition_t sctp_sf_shutdown_ack_sent_abort( | |||
2239 | struct net *net, | 2239 | struct net *net, |
2240 | const struct sctp_endpoint *ep, | 2240 | const struct sctp_endpoint *ep, |
2241 | const struct sctp_association *asoc, | 2241 | const struct sctp_association *asoc, |
2242 | const sctp_subtype_t type, | 2242 | const union sctp_subtype type, |
2243 | void *arg, | 2243 | void *arg, |
2244 | sctp_cmd_seq_t *commands) | 2244 | sctp_cmd_seq_t *commands) |
2245 | { | 2245 | { |
@@ -2266,7 +2266,7 @@ sctp_disposition_t sctp_sf_shutdown_ack_sent_abort( | |||
2266 | sctp_disposition_t sctp_sf_cookie_echoed_err(struct net *net, | 2266 | sctp_disposition_t sctp_sf_cookie_echoed_err(struct net *net, |
2267 | const struct sctp_endpoint *ep, | 2267 | const struct sctp_endpoint *ep, |
2268 | const struct sctp_association *asoc, | 2268 | const struct sctp_association *asoc, |
2269 | const sctp_subtype_t type, | 2269 | const union sctp_subtype type, |
2270 | void *arg, | 2270 | void *arg, |
2271 | sctp_cmd_seq_t *commands) | 2271 | sctp_cmd_seq_t *commands) |
2272 | { | 2272 | { |
@@ -2330,7 +2330,7 @@ sctp_disposition_t sctp_sf_cookie_echoed_err(struct net *net, | |||
2330 | static sctp_disposition_t sctp_sf_do_5_2_6_stale(struct net *net, | 2330 | static sctp_disposition_t sctp_sf_do_5_2_6_stale(struct net *net, |
2331 | const struct sctp_endpoint *ep, | 2331 | const struct sctp_endpoint *ep, |
2332 | const struct sctp_association *asoc, | 2332 | const struct sctp_association *asoc, |
2333 | const sctp_subtype_t type, | 2333 | const union sctp_subtype type, |
2334 | void *arg, | 2334 | void *arg, |
2335 | sctp_cmd_seq_t *commands) | 2335 | sctp_cmd_seq_t *commands) |
2336 | { | 2336 | { |
@@ -2452,7 +2452,7 @@ nomem: | |||
2452 | sctp_disposition_t sctp_sf_do_9_1_abort(struct net *net, | 2452 | sctp_disposition_t sctp_sf_do_9_1_abort(struct net *net, |
2453 | const struct sctp_endpoint *ep, | 2453 | const struct sctp_endpoint *ep, |
2454 | const struct sctp_association *asoc, | 2454 | const struct sctp_association *asoc, |
2455 | const sctp_subtype_t type, | 2455 | const union sctp_subtype type, |
2456 | void *arg, | 2456 | void *arg, |
2457 | sctp_cmd_seq_t *commands) | 2457 | sctp_cmd_seq_t *commands) |
2458 | { | 2458 | { |
@@ -2489,7 +2489,7 @@ sctp_disposition_t sctp_sf_do_9_1_abort(struct net *net, | |||
2489 | static sctp_disposition_t __sctp_sf_do_9_1_abort(struct net *net, | 2489 | static sctp_disposition_t __sctp_sf_do_9_1_abort(struct net *net, |
2490 | const struct sctp_endpoint *ep, | 2490 | const struct sctp_endpoint *ep, |
2491 | const struct sctp_association *asoc, | 2491 | const struct sctp_association *asoc, |
2492 | const sctp_subtype_t type, | 2492 | const union sctp_subtype type, |
2493 | void *arg, | 2493 | void *arg, |
2494 | sctp_cmd_seq_t *commands) | 2494 | sctp_cmd_seq_t *commands) |
2495 | { | 2495 | { |
@@ -2527,7 +2527,7 @@ static sctp_disposition_t __sctp_sf_do_9_1_abort(struct net *net, | |||
2527 | sctp_disposition_t sctp_sf_cookie_wait_abort(struct net *net, | 2527 | sctp_disposition_t sctp_sf_cookie_wait_abort(struct net *net, |
2528 | const struct sctp_endpoint *ep, | 2528 | const struct sctp_endpoint *ep, |
2529 | const struct sctp_association *asoc, | 2529 | const struct sctp_association *asoc, |
2530 | const sctp_subtype_t type, | 2530 | const union sctp_subtype type, |
2531 | void *arg, | 2531 | void *arg, |
2532 | sctp_cmd_seq_t *commands) | 2532 | sctp_cmd_seq_t *commands) |
2533 | { | 2533 | { |
@@ -2566,7 +2566,7 @@ sctp_disposition_t sctp_sf_cookie_wait_abort(struct net *net, | |||
2566 | sctp_disposition_t sctp_sf_cookie_wait_icmp_abort(struct net *net, | 2566 | sctp_disposition_t sctp_sf_cookie_wait_icmp_abort(struct net *net, |
2567 | const struct sctp_endpoint *ep, | 2567 | const struct sctp_endpoint *ep, |
2568 | const struct sctp_association *asoc, | 2568 | const struct sctp_association *asoc, |
2569 | const sctp_subtype_t type, | 2569 | const union sctp_subtype type, |
2570 | void *arg, | 2570 | void *arg, |
2571 | sctp_cmd_seq_t *commands) | 2571 | sctp_cmd_seq_t *commands) |
2572 | { | 2572 | { |
@@ -2581,7 +2581,7 @@ sctp_disposition_t sctp_sf_cookie_wait_icmp_abort(struct net *net, | |||
2581 | sctp_disposition_t sctp_sf_cookie_echoed_abort(struct net *net, | 2581 | sctp_disposition_t sctp_sf_cookie_echoed_abort(struct net *net, |
2582 | const struct sctp_endpoint *ep, | 2582 | const struct sctp_endpoint *ep, |
2583 | const struct sctp_association *asoc, | 2583 | const struct sctp_association *asoc, |
2584 | const sctp_subtype_t type, | 2584 | const union sctp_subtype type, |
2585 | void *arg, | 2585 | void *arg, |
2586 | sctp_cmd_seq_t *commands) | 2586 | sctp_cmd_seq_t *commands) |
2587 | { | 2587 | { |
@@ -2653,7 +2653,7 @@ static sctp_disposition_t sctp_stop_t1_and_abort(struct net *net, | |||
2653 | sctp_disposition_t sctp_sf_do_9_2_shutdown(struct net *net, | 2653 | sctp_disposition_t sctp_sf_do_9_2_shutdown(struct net *net, |
2654 | const struct sctp_endpoint *ep, | 2654 | const struct sctp_endpoint *ep, |
2655 | const struct sctp_association *asoc, | 2655 | const struct sctp_association *asoc, |
2656 | const sctp_subtype_t type, | 2656 | const union sctp_subtype type, |
2657 | void *arg, | 2657 | void *arg, |
2658 | sctp_cmd_seq_t *commands) | 2658 | sctp_cmd_seq_t *commands) |
2659 | { | 2659 | { |
@@ -2742,7 +2742,7 @@ out: | |||
2742 | sctp_disposition_t sctp_sf_do_9_2_shut_ctsn(struct net *net, | 2742 | sctp_disposition_t sctp_sf_do_9_2_shut_ctsn(struct net *net, |
2743 | const struct sctp_endpoint *ep, | 2743 | const struct sctp_endpoint *ep, |
2744 | const struct sctp_association *asoc, | 2744 | const struct sctp_association *asoc, |
2745 | const sctp_subtype_t type, | 2745 | const union sctp_subtype type, |
2746 | void *arg, | 2746 | void *arg, |
2747 | sctp_cmd_seq_t *commands) | 2747 | sctp_cmd_seq_t *commands) |
2748 | { | 2748 | { |
@@ -2795,7 +2795,7 @@ sctp_disposition_t sctp_sf_do_9_2_shut_ctsn(struct net *net, | |||
2795 | sctp_disposition_t sctp_sf_do_9_2_reshutack(struct net *net, | 2795 | sctp_disposition_t sctp_sf_do_9_2_reshutack(struct net *net, |
2796 | const struct sctp_endpoint *ep, | 2796 | const struct sctp_endpoint *ep, |
2797 | const struct sctp_association *asoc, | 2797 | const struct sctp_association *asoc, |
2798 | const sctp_subtype_t type, | 2798 | const union sctp_subtype type, |
2799 | void *arg, | 2799 | void *arg, |
2800 | sctp_cmd_seq_t *commands) | 2800 | sctp_cmd_seq_t *commands) |
2801 | { | 2801 | { |
@@ -2859,7 +2859,7 @@ nomem: | |||
2859 | sctp_disposition_t sctp_sf_do_ecn_cwr(struct net *net, | 2859 | sctp_disposition_t sctp_sf_do_ecn_cwr(struct net *net, |
2860 | const struct sctp_endpoint *ep, | 2860 | const struct sctp_endpoint *ep, |
2861 | const struct sctp_association *asoc, | 2861 | const struct sctp_association *asoc, |
2862 | const sctp_subtype_t type, | 2862 | const union sctp_subtype type, |
2863 | void *arg, | 2863 | void *arg, |
2864 | sctp_cmd_seq_t *commands) | 2864 | sctp_cmd_seq_t *commands) |
2865 | { | 2865 | { |
@@ -2915,7 +2915,7 @@ sctp_disposition_t sctp_sf_do_ecn_cwr(struct net *net, | |||
2915 | sctp_disposition_t sctp_sf_do_ecne(struct net *net, | 2915 | sctp_disposition_t sctp_sf_do_ecne(struct net *net, |
2916 | const struct sctp_endpoint *ep, | 2916 | const struct sctp_endpoint *ep, |
2917 | const struct sctp_association *asoc, | 2917 | const struct sctp_association *asoc, |
2918 | const sctp_subtype_t type, | 2918 | const union sctp_subtype type, |
2919 | void *arg, | 2919 | void *arg, |
2920 | sctp_cmd_seq_t *commands) | 2920 | sctp_cmd_seq_t *commands) |
2921 | { | 2921 | { |
@@ -2972,7 +2972,7 @@ sctp_disposition_t sctp_sf_do_ecne(struct net *net, | |||
2972 | sctp_disposition_t sctp_sf_eat_data_6_2(struct net *net, | 2972 | sctp_disposition_t sctp_sf_eat_data_6_2(struct net *net, |
2973 | const struct sctp_endpoint *ep, | 2973 | const struct sctp_endpoint *ep, |
2974 | const struct sctp_association *asoc, | 2974 | const struct sctp_association *asoc, |
2975 | const sctp_subtype_t type, | 2975 | const union sctp_subtype type, |
2976 | void *arg, | 2976 | void *arg, |
2977 | sctp_cmd_seq_t *commands) | 2977 | sctp_cmd_seq_t *commands) |
2978 | { | 2978 | { |
@@ -3092,7 +3092,7 @@ discard_noforce: | |||
3092 | sctp_disposition_t sctp_sf_eat_data_fast_4_4(struct net *net, | 3092 | sctp_disposition_t sctp_sf_eat_data_fast_4_4(struct net *net, |
3093 | const struct sctp_endpoint *ep, | 3093 | const struct sctp_endpoint *ep, |
3094 | const struct sctp_association *asoc, | 3094 | const struct sctp_association *asoc, |
3095 | const sctp_subtype_t type, | 3095 | const union sctp_subtype type, |
3096 | void *arg, | 3096 | void *arg, |
3097 | sctp_cmd_seq_t *commands) | 3097 | sctp_cmd_seq_t *commands) |
3098 | { | 3098 | { |
@@ -3183,7 +3183,7 @@ sctp_disposition_t sctp_sf_eat_data_fast_4_4(struct net *net, | |||
3183 | sctp_disposition_t sctp_sf_eat_sack_6_2(struct net *net, | 3183 | sctp_disposition_t sctp_sf_eat_sack_6_2(struct net *net, |
3184 | const struct sctp_endpoint *ep, | 3184 | const struct sctp_endpoint *ep, |
3185 | const struct sctp_association *asoc, | 3185 | const struct sctp_association *asoc, |
3186 | const sctp_subtype_t type, | 3186 | const union sctp_subtype type, |
3187 | void *arg, | 3187 | void *arg, |
3188 | sctp_cmd_seq_t *commands) | 3188 | sctp_cmd_seq_t *commands) |
3189 | { | 3189 | { |
@@ -3257,7 +3257,7 @@ sctp_disposition_t sctp_sf_eat_sack_6_2(struct net *net, | |||
3257 | static sctp_disposition_t sctp_sf_tabort_8_4_8(struct net *net, | 3257 | static sctp_disposition_t sctp_sf_tabort_8_4_8(struct net *net, |
3258 | const struct sctp_endpoint *ep, | 3258 | const struct sctp_endpoint *ep, |
3259 | const struct sctp_association *asoc, | 3259 | const struct sctp_association *asoc, |
3260 | const sctp_subtype_t type, | 3260 | const union sctp_subtype type, |
3261 | void *arg, | 3261 | void *arg, |
3262 | sctp_cmd_seq_t *commands) | 3262 | sctp_cmd_seq_t *commands) |
3263 | { | 3263 | { |
@@ -3307,7 +3307,7 @@ static sctp_disposition_t sctp_sf_tabort_8_4_8(struct net *net, | |||
3307 | sctp_disposition_t sctp_sf_operr_notify(struct net *net, | 3307 | sctp_disposition_t sctp_sf_operr_notify(struct net *net, |
3308 | const struct sctp_endpoint *ep, | 3308 | const struct sctp_endpoint *ep, |
3309 | const struct sctp_association *asoc, | 3309 | const struct sctp_association *asoc, |
3310 | const sctp_subtype_t type, | 3310 | const union sctp_subtype type, |
3311 | void *arg, | 3311 | void *arg, |
3312 | sctp_cmd_seq_t *commands) | 3312 | sctp_cmd_seq_t *commands) |
3313 | { | 3313 | { |
@@ -3345,7 +3345,7 @@ sctp_disposition_t sctp_sf_operr_notify(struct net *net, | |||
3345 | sctp_disposition_t sctp_sf_do_9_2_final(struct net *net, | 3345 | sctp_disposition_t sctp_sf_do_9_2_final(struct net *net, |
3346 | const struct sctp_endpoint *ep, | 3346 | const struct sctp_endpoint *ep, |
3347 | const struct sctp_association *asoc, | 3347 | const struct sctp_association *asoc, |
3348 | const sctp_subtype_t type, | 3348 | const union sctp_subtype type, |
3349 | void *arg, | 3349 | void *arg, |
3350 | sctp_cmd_seq_t *commands) | 3350 | sctp_cmd_seq_t *commands) |
3351 | { | 3351 | { |
@@ -3428,7 +3428,7 @@ nomem: | |||
3428 | sctp_disposition_t sctp_sf_ootb(struct net *net, | 3428 | sctp_disposition_t sctp_sf_ootb(struct net *net, |
3429 | const struct sctp_endpoint *ep, | 3429 | const struct sctp_endpoint *ep, |
3430 | const struct sctp_association *asoc, | 3430 | const struct sctp_association *asoc, |
3431 | const sctp_subtype_t type, | 3431 | const union sctp_subtype type, |
3432 | void *arg, | 3432 | void *arg, |
3433 | sctp_cmd_seq_t *commands) | 3433 | sctp_cmd_seq_t *commands) |
3434 | { | 3434 | { |
@@ -3521,7 +3521,7 @@ sctp_disposition_t sctp_sf_ootb(struct net *net, | |||
3521 | static sctp_disposition_t sctp_sf_shut_8_4_5(struct net *net, | 3521 | static sctp_disposition_t sctp_sf_shut_8_4_5(struct net *net, |
3522 | const struct sctp_endpoint *ep, | 3522 | const struct sctp_endpoint *ep, |
3523 | const struct sctp_association *asoc, | 3523 | const struct sctp_association *asoc, |
3524 | const sctp_subtype_t type, | 3524 | const union sctp_subtype type, |
3525 | void *arg, | 3525 | void *arg, |
3526 | sctp_cmd_seq_t *commands) | 3526 | sctp_cmd_seq_t *commands) |
3527 | { | 3527 | { |
@@ -3583,7 +3583,7 @@ static sctp_disposition_t sctp_sf_shut_8_4_5(struct net *net, | |||
3583 | sctp_disposition_t sctp_sf_do_8_5_1_E_sa(struct net *net, | 3583 | sctp_disposition_t sctp_sf_do_8_5_1_E_sa(struct net *net, |
3584 | const struct sctp_endpoint *ep, | 3584 | const struct sctp_endpoint *ep, |
3585 | const struct sctp_association *asoc, | 3585 | const struct sctp_association *asoc, |
3586 | const sctp_subtype_t type, | 3586 | const union sctp_subtype type, |
3587 | void *arg, | 3587 | void *arg, |
3588 | sctp_cmd_seq_t *commands) | 3588 | sctp_cmd_seq_t *commands) |
3589 | { | 3589 | { |
@@ -3608,7 +3608,7 @@ sctp_disposition_t sctp_sf_do_8_5_1_E_sa(struct net *net, | |||
3608 | sctp_disposition_t sctp_sf_do_asconf(struct net *net, | 3608 | sctp_disposition_t sctp_sf_do_asconf(struct net *net, |
3609 | const struct sctp_endpoint *ep, | 3609 | const struct sctp_endpoint *ep, |
3610 | const struct sctp_association *asoc, | 3610 | const struct sctp_association *asoc, |
3611 | const sctp_subtype_t type, void *arg, | 3611 | const union sctp_subtype type, void *arg, |
3612 | sctp_cmd_seq_t *commands) | 3612 | sctp_cmd_seq_t *commands) |
3613 | { | 3613 | { |
3614 | struct sctp_chunk *chunk = arg; | 3614 | struct sctp_chunk *chunk = arg; |
@@ -3725,7 +3725,8 @@ sctp_disposition_t sctp_sf_do_asconf(struct net *net, | |||
3725 | sctp_disposition_t sctp_sf_do_asconf_ack(struct net *net, | 3725 | sctp_disposition_t sctp_sf_do_asconf_ack(struct net *net, |
3726 | const struct sctp_endpoint *ep, | 3726 | const struct sctp_endpoint *ep, |
3727 | const struct sctp_association *asoc, | 3727 | const struct sctp_association *asoc, |
3728 | const sctp_subtype_t type, void *arg, | 3728 | const union sctp_subtype type, |
3729 | void *arg, | ||
3729 | sctp_cmd_seq_t *commands) | 3730 | sctp_cmd_seq_t *commands) |
3730 | { | 3731 | { |
3731 | struct sctp_chunk *asconf_ack = arg; | 3732 | struct sctp_chunk *asconf_ack = arg; |
@@ -3843,7 +3844,7 @@ sctp_disposition_t sctp_sf_do_asconf_ack(struct net *net, | |||
3843 | sctp_disposition_t sctp_sf_do_reconf(struct net *net, | 3844 | sctp_disposition_t sctp_sf_do_reconf(struct net *net, |
3844 | const struct sctp_endpoint *ep, | 3845 | const struct sctp_endpoint *ep, |
3845 | const struct sctp_association *asoc, | 3846 | const struct sctp_association *asoc, |
3846 | const sctp_subtype_t type, void *arg, | 3847 | const union sctp_subtype type, void *arg, |
3847 | sctp_cmd_seq_t *commands) | 3848 | sctp_cmd_seq_t *commands) |
3848 | { | 3849 | { |
3849 | struct sctp_paramhdr *err_param = NULL; | 3850 | struct sctp_paramhdr *err_param = NULL; |
@@ -3919,7 +3920,7 @@ sctp_disposition_t sctp_sf_do_reconf(struct net *net, | |||
3919 | sctp_disposition_t sctp_sf_eat_fwd_tsn(struct net *net, | 3920 | sctp_disposition_t sctp_sf_eat_fwd_tsn(struct net *net, |
3920 | const struct sctp_endpoint *ep, | 3921 | const struct sctp_endpoint *ep, |
3921 | const struct sctp_association *asoc, | 3922 | const struct sctp_association *asoc, |
3922 | const sctp_subtype_t type, | 3923 | const union sctp_subtype type, |
3923 | void *arg, | 3924 | void *arg, |
3924 | sctp_cmd_seq_t *commands) | 3925 | sctp_cmd_seq_t *commands) |
3925 | { | 3926 | { |
@@ -3990,7 +3991,7 @@ sctp_disposition_t sctp_sf_eat_fwd_tsn_fast( | |||
3990 | struct net *net, | 3991 | struct net *net, |
3991 | const struct sctp_endpoint *ep, | 3992 | const struct sctp_endpoint *ep, |
3992 | const struct sctp_association *asoc, | 3993 | const struct sctp_association *asoc, |
3993 | const sctp_subtype_t type, | 3994 | const union sctp_subtype type, |
3994 | void *arg, | 3995 | void *arg, |
3995 | sctp_cmd_seq_t *commands) | 3996 | sctp_cmd_seq_t *commands) |
3996 | { | 3997 | { |
@@ -4082,7 +4083,7 @@ static enum sctp_ierror sctp_sf_authenticate( | |||
4082 | struct net *net, | 4083 | struct net *net, |
4083 | const struct sctp_endpoint *ep, | 4084 | const struct sctp_endpoint *ep, |
4084 | const struct sctp_association *asoc, | 4085 | const struct sctp_association *asoc, |
4085 | const sctp_subtype_t type, | 4086 | const union sctp_subtype type, |
4086 | struct sctp_chunk *chunk) | 4087 | struct sctp_chunk *chunk) |
4087 | { | 4088 | { |
4088 | struct sctp_authhdr *auth_hdr; | 4089 | struct sctp_authhdr *auth_hdr; |
@@ -4157,7 +4158,7 @@ nomem: | |||
4157 | sctp_disposition_t sctp_sf_eat_auth(struct net *net, | 4158 | sctp_disposition_t sctp_sf_eat_auth(struct net *net, |
4158 | const struct sctp_endpoint *ep, | 4159 | const struct sctp_endpoint *ep, |
4159 | const struct sctp_association *asoc, | 4160 | const struct sctp_association *asoc, |
4160 | const sctp_subtype_t type, | 4161 | const union sctp_subtype type, |
4161 | void *arg, | 4162 | void *arg, |
4162 | sctp_cmd_seq_t *commands) | 4163 | sctp_cmd_seq_t *commands) |
4163 | { | 4164 | { |
@@ -4254,7 +4255,7 @@ sctp_disposition_t sctp_sf_eat_auth(struct net *net, | |||
4254 | sctp_disposition_t sctp_sf_unk_chunk(struct net *net, | 4255 | sctp_disposition_t sctp_sf_unk_chunk(struct net *net, |
4255 | const struct sctp_endpoint *ep, | 4256 | const struct sctp_endpoint *ep, |
4256 | const struct sctp_association *asoc, | 4257 | const struct sctp_association *asoc, |
4257 | const sctp_subtype_t type, | 4258 | const union sctp_subtype type, |
4258 | void *arg, | 4259 | void *arg, |
4259 | sctp_cmd_seq_t *commands) | 4260 | sctp_cmd_seq_t *commands) |
4260 | { | 4261 | { |
@@ -4334,7 +4335,7 @@ sctp_disposition_t sctp_sf_unk_chunk(struct net *net, | |||
4334 | sctp_disposition_t sctp_sf_discard_chunk(struct net *net, | 4335 | sctp_disposition_t sctp_sf_discard_chunk(struct net *net, |
4335 | const struct sctp_endpoint *ep, | 4336 | const struct sctp_endpoint *ep, |
4336 | const struct sctp_association *asoc, | 4337 | const struct sctp_association *asoc, |
4337 | const sctp_subtype_t type, | 4338 | const union sctp_subtype type, |
4338 | void *arg, | 4339 | void *arg, |
4339 | sctp_cmd_seq_t *commands) | 4340 | sctp_cmd_seq_t *commands) |
4340 | { | 4341 | { |
@@ -4374,7 +4375,7 @@ sctp_disposition_t sctp_sf_discard_chunk(struct net *net, | |||
4374 | sctp_disposition_t sctp_sf_pdiscard(struct net *net, | 4375 | sctp_disposition_t sctp_sf_pdiscard(struct net *net, |
4375 | const struct sctp_endpoint *ep, | 4376 | const struct sctp_endpoint *ep, |
4376 | const struct sctp_association *asoc, | 4377 | const struct sctp_association *asoc, |
4377 | const sctp_subtype_t type, | 4378 | const union sctp_subtype type, |
4378 | void *arg, | 4379 | void *arg, |
4379 | sctp_cmd_seq_t *commands) | 4380 | sctp_cmd_seq_t *commands) |
4380 | { | 4381 | { |
@@ -4402,7 +4403,7 @@ sctp_disposition_t sctp_sf_pdiscard(struct net *net, | |||
4402 | sctp_disposition_t sctp_sf_violation(struct net *net, | 4403 | sctp_disposition_t sctp_sf_violation(struct net *net, |
4403 | const struct sctp_endpoint *ep, | 4404 | const struct sctp_endpoint *ep, |
4404 | const struct sctp_association *asoc, | 4405 | const struct sctp_association *asoc, |
4405 | const sctp_subtype_t type, | 4406 | const union sctp_subtype type, |
4406 | void *arg, | 4407 | void *arg, |
4407 | sctp_cmd_seq_t *commands) | 4408 | sctp_cmd_seq_t *commands) |
4408 | { | 4409 | { |
@@ -4540,7 +4541,7 @@ static sctp_disposition_t sctp_sf_violation_chunklen( | |||
4540 | struct net *net, | 4541 | struct net *net, |
4541 | const struct sctp_endpoint *ep, | 4542 | const struct sctp_endpoint *ep, |
4542 | const struct sctp_association *asoc, | 4543 | const struct sctp_association *asoc, |
4543 | const sctp_subtype_t type, | 4544 | const union sctp_subtype type, |
4544 | void *arg, | 4545 | void *arg, |
4545 | sctp_cmd_seq_t *commands) | 4546 | sctp_cmd_seq_t *commands) |
4546 | { | 4547 | { |
@@ -4560,7 +4561,7 @@ static sctp_disposition_t sctp_sf_violation_paramlen( | |||
4560 | struct net *net, | 4561 | struct net *net, |
4561 | const struct sctp_endpoint *ep, | 4562 | const struct sctp_endpoint *ep, |
4562 | const struct sctp_association *asoc, | 4563 | const struct sctp_association *asoc, |
4563 | const sctp_subtype_t type, | 4564 | const union sctp_subtype type, |
4564 | void *arg, void *ext, | 4565 | void *arg, void *ext, |
4565 | sctp_cmd_seq_t *commands) | 4566 | sctp_cmd_seq_t *commands) |
4566 | { | 4567 | { |
@@ -4603,7 +4604,7 @@ static sctp_disposition_t sctp_sf_violation_ctsn( | |||
4603 | struct net *net, | 4604 | struct net *net, |
4604 | const struct sctp_endpoint *ep, | 4605 | const struct sctp_endpoint *ep, |
4605 | const struct sctp_association *asoc, | 4606 | const struct sctp_association *asoc, |
4606 | const sctp_subtype_t type, | 4607 | const union sctp_subtype type, |
4607 | void *arg, | 4608 | void *arg, |
4608 | sctp_cmd_seq_t *commands) | 4609 | sctp_cmd_seq_t *commands) |
4609 | { | 4610 | { |
@@ -4623,7 +4624,7 @@ static sctp_disposition_t sctp_sf_violation_chunk( | |||
4623 | struct net *net, | 4624 | struct net *net, |
4624 | const struct sctp_endpoint *ep, | 4625 | const struct sctp_endpoint *ep, |
4625 | const struct sctp_association *asoc, | 4626 | const struct sctp_association *asoc, |
4626 | const sctp_subtype_t type, | 4627 | const union sctp_subtype type, |
4627 | void *arg, | 4628 | void *arg, |
4628 | sctp_cmd_seq_t *commands) | 4629 | sctp_cmd_seq_t *commands) |
4629 | { | 4630 | { |
@@ -4698,7 +4699,7 @@ static sctp_disposition_t sctp_sf_violation_chunk( | |||
4698 | sctp_disposition_t sctp_sf_do_prm_asoc(struct net *net, | 4699 | sctp_disposition_t sctp_sf_do_prm_asoc(struct net *net, |
4699 | const struct sctp_endpoint *ep, | 4700 | const struct sctp_endpoint *ep, |
4700 | const struct sctp_association *asoc, | 4701 | const struct sctp_association *asoc, |
4701 | const sctp_subtype_t type, | 4702 | const union sctp_subtype type, |
4702 | void *arg, | 4703 | void *arg, |
4703 | sctp_cmd_seq_t *commands) | 4704 | sctp_cmd_seq_t *commands) |
4704 | { | 4705 | { |
@@ -4810,7 +4811,7 @@ nomem: | |||
4810 | sctp_disposition_t sctp_sf_do_prm_send(struct net *net, | 4811 | sctp_disposition_t sctp_sf_do_prm_send(struct net *net, |
4811 | const struct sctp_endpoint *ep, | 4812 | const struct sctp_endpoint *ep, |
4812 | const struct sctp_association *asoc, | 4813 | const struct sctp_association *asoc, |
4813 | const sctp_subtype_t type, | 4814 | const union sctp_subtype type, |
4814 | void *arg, | 4815 | void *arg, |
4815 | sctp_cmd_seq_t *commands) | 4816 | sctp_cmd_seq_t *commands) |
4816 | { | 4817 | { |
@@ -4850,7 +4851,7 @@ sctp_disposition_t sctp_sf_do_9_2_prm_shutdown( | |||
4850 | struct net *net, | 4851 | struct net *net, |
4851 | const struct sctp_endpoint *ep, | 4852 | const struct sctp_endpoint *ep, |
4852 | const struct sctp_association *asoc, | 4853 | const struct sctp_association *asoc, |
4853 | const sctp_subtype_t type, | 4854 | const union sctp_subtype type, |
4854 | void *arg, | 4855 | void *arg, |
4855 | sctp_cmd_seq_t *commands) | 4856 | sctp_cmd_seq_t *commands) |
4856 | { | 4857 | { |
@@ -4906,7 +4907,7 @@ sctp_disposition_t sctp_sf_do_9_1_prm_abort( | |||
4906 | struct net *net, | 4907 | struct net *net, |
4907 | const struct sctp_endpoint *ep, | 4908 | const struct sctp_endpoint *ep, |
4908 | const struct sctp_association *asoc, | 4909 | const struct sctp_association *asoc, |
4909 | const sctp_subtype_t type, | 4910 | const union sctp_subtype type, |
4910 | void *arg, | 4911 | void *arg, |
4911 | sctp_cmd_seq_t *commands) | 4912 | sctp_cmd_seq_t *commands) |
4912 | { | 4913 | { |
@@ -4943,7 +4944,7 @@ sctp_disposition_t sctp_sf_do_9_1_prm_abort( | |||
4943 | sctp_disposition_t sctp_sf_error_closed(struct net *net, | 4944 | sctp_disposition_t sctp_sf_error_closed(struct net *net, |
4944 | const struct sctp_endpoint *ep, | 4945 | const struct sctp_endpoint *ep, |
4945 | const struct sctp_association *asoc, | 4946 | const struct sctp_association *asoc, |
4946 | const sctp_subtype_t type, | 4947 | const union sctp_subtype type, |
4947 | void *arg, | 4948 | void *arg, |
4948 | sctp_cmd_seq_t *commands) | 4949 | sctp_cmd_seq_t *commands) |
4949 | { | 4950 | { |
@@ -4957,7 +4958,7 @@ sctp_disposition_t sctp_sf_error_closed(struct net *net, | |||
4957 | sctp_disposition_t sctp_sf_error_shutdown(struct net *net, | 4958 | sctp_disposition_t sctp_sf_error_shutdown(struct net *net, |
4958 | const struct sctp_endpoint *ep, | 4959 | const struct sctp_endpoint *ep, |
4959 | const struct sctp_association *asoc, | 4960 | const struct sctp_association *asoc, |
4960 | const sctp_subtype_t type, | 4961 | const union sctp_subtype type, |
4961 | void *arg, | 4962 | void *arg, |
4962 | sctp_cmd_seq_t *commands) | 4963 | sctp_cmd_seq_t *commands) |
4963 | { | 4964 | { |
@@ -4984,7 +4985,7 @@ sctp_disposition_t sctp_sf_cookie_wait_prm_shutdown( | |||
4984 | struct net *net, | 4985 | struct net *net, |
4985 | const struct sctp_endpoint *ep, | 4986 | const struct sctp_endpoint *ep, |
4986 | const struct sctp_association *asoc, | 4987 | const struct sctp_association *asoc, |
4987 | const sctp_subtype_t type, | 4988 | const union sctp_subtype type, |
4988 | void *arg, | 4989 | void *arg, |
4989 | sctp_cmd_seq_t *commands) | 4990 | sctp_cmd_seq_t *commands) |
4990 | { | 4991 | { |
@@ -5019,7 +5020,7 @@ sctp_disposition_t sctp_sf_cookie_echoed_prm_shutdown( | |||
5019 | struct net *net, | 5020 | struct net *net, |
5020 | const struct sctp_endpoint *ep, | 5021 | const struct sctp_endpoint *ep, |
5021 | const struct sctp_association *asoc, | 5022 | const struct sctp_association *asoc, |
5022 | const sctp_subtype_t type, | 5023 | const union sctp_subtype type, |
5023 | void *arg, sctp_cmd_seq_t *commands) | 5024 | void *arg, sctp_cmd_seq_t *commands) |
5024 | { | 5025 | { |
5025 | /* There is a single T1 timer, so we should be able to use | 5026 | /* There is a single T1 timer, so we should be able to use |
@@ -5046,7 +5047,7 @@ sctp_disposition_t sctp_sf_cookie_wait_prm_abort( | |||
5046 | struct net *net, | 5047 | struct net *net, |
5047 | const struct sctp_endpoint *ep, | 5048 | const struct sctp_endpoint *ep, |
5048 | const struct sctp_association *asoc, | 5049 | const struct sctp_association *asoc, |
5049 | const sctp_subtype_t type, | 5050 | const union sctp_subtype type, |
5050 | void *arg, | 5051 | void *arg, |
5051 | sctp_cmd_seq_t *commands) | 5052 | sctp_cmd_seq_t *commands) |
5052 | { | 5053 | { |
@@ -5095,7 +5096,7 @@ sctp_disposition_t sctp_sf_cookie_echoed_prm_abort( | |||
5095 | struct net *net, | 5096 | struct net *net, |
5096 | const struct sctp_endpoint *ep, | 5097 | const struct sctp_endpoint *ep, |
5097 | const struct sctp_association *asoc, | 5098 | const struct sctp_association *asoc, |
5098 | const sctp_subtype_t type, | 5099 | const union sctp_subtype type, |
5099 | void *arg, | 5100 | void *arg, |
5100 | sctp_cmd_seq_t *commands) | 5101 | sctp_cmd_seq_t *commands) |
5101 | { | 5102 | { |
@@ -5121,7 +5122,7 @@ sctp_disposition_t sctp_sf_shutdown_pending_prm_abort( | |||
5121 | struct net *net, | 5122 | struct net *net, |
5122 | const struct sctp_endpoint *ep, | 5123 | const struct sctp_endpoint *ep, |
5123 | const struct sctp_association *asoc, | 5124 | const struct sctp_association *asoc, |
5124 | const sctp_subtype_t type, | 5125 | const union sctp_subtype type, |
5125 | void *arg, | 5126 | void *arg, |
5126 | sctp_cmd_seq_t *commands) | 5127 | sctp_cmd_seq_t *commands) |
5127 | { | 5128 | { |
@@ -5148,7 +5149,7 @@ sctp_disposition_t sctp_sf_shutdown_sent_prm_abort( | |||
5148 | struct net *net, | 5149 | struct net *net, |
5149 | const struct sctp_endpoint *ep, | 5150 | const struct sctp_endpoint *ep, |
5150 | const struct sctp_association *asoc, | 5151 | const struct sctp_association *asoc, |
5151 | const sctp_subtype_t type, | 5152 | const union sctp_subtype type, |
5152 | void *arg, | 5153 | void *arg, |
5153 | sctp_cmd_seq_t *commands) | 5154 | sctp_cmd_seq_t *commands) |
5154 | { | 5155 | { |
@@ -5179,7 +5180,7 @@ sctp_disposition_t sctp_sf_shutdown_ack_sent_prm_abort( | |||
5179 | struct net *net, | 5180 | struct net *net, |
5180 | const struct sctp_endpoint *ep, | 5181 | const struct sctp_endpoint *ep, |
5181 | const struct sctp_association *asoc, | 5182 | const struct sctp_association *asoc, |
5182 | const sctp_subtype_t type, | 5183 | const union sctp_subtype type, |
5183 | void *arg, | 5184 | void *arg, |
5184 | sctp_cmd_seq_t *commands) | 5185 | sctp_cmd_seq_t *commands) |
5185 | { | 5186 | { |
@@ -5215,7 +5216,7 @@ sctp_disposition_t sctp_sf_do_prm_requestheartbeat( | |||
5215 | struct net *net, | 5216 | struct net *net, |
5216 | const struct sctp_endpoint *ep, | 5217 | const struct sctp_endpoint *ep, |
5217 | const struct sctp_association *asoc, | 5218 | const struct sctp_association *asoc, |
5218 | const sctp_subtype_t type, | 5219 | const union sctp_subtype type, |
5219 | void *arg, | 5220 | void *arg, |
5220 | sctp_cmd_seq_t *commands) | 5221 | sctp_cmd_seq_t *commands) |
5221 | { | 5222 | { |
@@ -5247,7 +5248,7 @@ sctp_disposition_t sctp_sf_do_prm_requestheartbeat( | |||
5247 | sctp_disposition_t sctp_sf_do_prm_asconf(struct net *net, | 5248 | sctp_disposition_t sctp_sf_do_prm_asconf(struct net *net, |
5248 | const struct sctp_endpoint *ep, | 5249 | const struct sctp_endpoint *ep, |
5249 | const struct sctp_association *asoc, | 5250 | const struct sctp_association *asoc, |
5250 | const sctp_subtype_t type, | 5251 | const union sctp_subtype type, |
5251 | void *arg, | 5252 | void *arg, |
5252 | sctp_cmd_seq_t *commands) | 5253 | sctp_cmd_seq_t *commands) |
5253 | { | 5254 | { |
@@ -5264,7 +5265,7 @@ sctp_disposition_t sctp_sf_do_prm_asconf(struct net *net, | |||
5264 | sctp_disposition_t sctp_sf_do_prm_reconf(struct net *net, | 5265 | sctp_disposition_t sctp_sf_do_prm_reconf(struct net *net, |
5265 | const struct sctp_endpoint *ep, | 5266 | const struct sctp_endpoint *ep, |
5266 | const struct sctp_association *asoc, | 5267 | const struct sctp_association *asoc, |
5267 | const sctp_subtype_t type, | 5268 | const union sctp_subtype type, |
5268 | void *arg, sctp_cmd_seq_t *commands) | 5269 | void *arg, sctp_cmd_seq_t *commands) |
5269 | { | 5270 | { |
5270 | struct sctp_chunk *chunk = arg; | 5271 | struct sctp_chunk *chunk = arg; |
@@ -5282,7 +5283,7 @@ sctp_disposition_t sctp_sf_ignore_primitive( | |||
5282 | struct net *net, | 5283 | struct net *net, |
5283 | const struct sctp_endpoint *ep, | 5284 | const struct sctp_endpoint *ep, |
5284 | const struct sctp_association *asoc, | 5285 | const struct sctp_association *asoc, |
5285 | const sctp_subtype_t type, | 5286 | const union sctp_subtype type, |
5286 | void *arg, | 5287 | void *arg, |
5287 | sctp_cmd_seq_t *commands) | 5288 | sctp_cmd_seq_t *commands) |
5288 | { | 5289 | { |
@@ -5306,7 +5307,7 @@ sctp_disposition_t sctp_sf_do_no_pending_tsn( | |||
5306 | struct net *net, | 5307 | struct net *net, |
5307 | const struct sctp_endpoint *ep, | 5308 | const struct sctp_endpoint *ep, |
5308 | const struct sctp_association *asoc, | 5309 | const struct sctp_association *asoc, |
5309 | const sctp_subtype_t type, | 5310 | const union sctp_subtype type, |
5310 | void *arg, | 5311 | void *arg, |
5311 | sctp_cmd_seq_t *commands) | 5312 | sctp_cmd_seq_t *commands) |
5312 | { | 5313 | { |
@@ -5338,7 +5339,7 @@ sctp_disposition_t sctp_sf_do_9_2_start_shutdown( | |||
5338 | struct net *net, | 5339 | struct net *net, |
5339 | const struct sctp_endpoint *ep, | 5340 | const struct sctp_endpoint *ep, |
5340 | const struct sctp_association *asoc, | 5341 | const struct sctp_association *asoc, |
5341 | const sctp_subtype_t type, | 5342 | const union sctp_subtype type, |
5342 | void *arg, | 5343 | void *arg, |
5343 | sctp_cmd_seq_t *commands) | 5344 | sctp_cmd_seq_t *commands) |
5344 | { | 5345 | { |
@@ -5408,7 +5409,7 @@ sctp_disposition_t sctp_sf_do_9_2_shutdown_ack( | |||
5408 | struct net *net, | 5409 | struct net *net, |
5409 | const struct sctp_endpoint *ep, | 5410 | const struct sctp_endpoint *ep, |
5410 | const struct sctp_association *asoc, | 5411 | const struct sctp_association *asoc, |
5411 | const sctp_subtype_t type, | 5412 | const union sctp_subtype type, |
5412 | void *arg, | 5413 | void *arg, |
5413 | sctp_cmd_seq_t *commands) | 5414 | sctp_cmd_seq_t *commands) |
5414 | { | 5415 | { |
@@ -5481,7 +5482,7 @@ nomem: | |||
5481 | sctp_disposition_t sctp_sf_ignore_other(struct net *net, | 5482 | sctp_disposition_t sctp_sf_ignore_other(struct net *net, |
5482 | const struct sctp_endpoint *ep, | 5483 | const struct sctp_endpoint *ep, |
5483 | const struct sctp_association *asoc, | 5484 | const struct sctp_association *asoc, |
5484 | const sctp_subtype_t type, | 5485 | const union sctp_subtype type, |
5485 | void *arg, | 5486 | void *arg, |
5486 | sctp_cmd_seq_t *commands) | 5487 | sctp_cmd_seq_t *commands) |
5487 | { | 5488 | { |
@@ -5509,7 +5510,7 @@ sctp_disposition_t sctp_sf_ignore_other(struct net *net, | |||
5509 | sctp_disposition_t sctp_sf_do_6_3_3_rtx(struct net *net, | 5510 | sctp_disposition_t sctp_sf_do_6_3_3_rtx(struct net *net, |
5510 | const struct sctp_endpoint *ep, | 5511 | const struct sctp_endpoint *ep, |
5511 | const struct sctp_association *asoc, | 5512 | const struct sctp_association *asoc, |
5512 | const sctp_subtype_t type, | 5513 | const union sctp_subtype type, |
5513 | void *arg, | 5514 | void *arg, |
5514 | sctp_cmd_seq_t *commands) | 5515 | sctp_cmd_seq_t *commands) |
5515 | { | 5516 | { |
@@ -5597,7 +5598,7 @@ sctp_disposition_t sctp_sf_do_6_3_3_rtx(struct net *net, | |||
5597 | sctp_disposition_t sctp_sf_do_6_2_sack(struct net *net, | 5598 | sctp_disposition_t sctp_sf_do_6_2_sack(struct net *net, |
5598 | const struct sctp_endpoint *ep, | 5599 | const struct sctp_endpoint *ep, |
5599 | const struct sctp_association *asoc, | 5600 | const struct sctp_association *asoc, |
5600 | const sctp_subtype_t type, | 5601 | const union sctp_subtype type, |
5601 | void *arg, | 5602 | void *arg, |
5602 | sctp_cmd_seq_t *commands) | 5603 | sctp_cmd_seq_t *commands) |
5603 | { | 5604 | { |
@@ -5628,7 +5629,7 @@ sctp_disposition_t sctp_sf_do_6_2_sack(struct net *net, | |||
5628 | sctp_disposition_t sctp_sf_t1_init_timer_expire(struct net *net, | 5629 | sctp_disposition_t sctp_sf_t1_init_timer_expire(struct net *net, |
5629 | const struct sctp_endpoint *ep, | 5630 | const struct sctp_endpoint *ep, |
5630 | const struct sctp_association *asoc, | 5631 | const struct sctp_association *asoc, |
5631 | const sctp_subtype_t type, | 5632 | const union sctp_subtype type, |
5632 | void *arg, | 5633 | void *arg, |
5633 | sctp_cmd_seq_t *commands) | 5634 | sctp_cmd_seq_t *commands) |
5634 | { | 5635 | { |
@@ -5692,7 +5693,7 @@ sctp_disposition_t sctp_sf_t1_init_timer_expire(struct net *net, | |||
5692 | sctp_disposition_t sctp_sf_t1_cookie_timer_expire(struct net *net, | 5693 | sctp_disposition_t sctp_sf_t1_cookie_timer_expire(struct net *net, |
5693 | const struct sctp_endpoint *ep, | 5694 | const struct sctp_endpoint *ep, |
5694 | const struct sctp_association *asoc, | 5695 | const struct sctp_association *asoc, |
5695 | const sctp_subtype_t type, | 5696 | const union sctp_subtype type, |
5696 | void *arg, | 5697 | void *arg, |
5697 | sctp_cmd_seq_t *commands) | 5698 | sctp_cmd_seq_t *commands) |
5698 | { | 5699 | { |
@@ -5742,7 +5743,7 @@ sctp_disposition_t sctp_sf_t1_cookie_timer_expire(struct net *net, | |||
5742 | sctp_disposition_t sctp_sf_t2_timer_expire(struct net *net, | 5743 | sctp_disposition_t sctp_sf_t2_timer_expire(struct net *net, |
5743 | const struct sctp_endpoint *ep, | 5744 | const struct sctp_endpoint *ep, |
5744 | const struct sctp_association *asoc, | 5745 | const struct sctp_association *asoc, |
5745 | const sctp_subtype_t type, | 5746 | const union sctp_subtype type, |
5746 | void *arg, | 5747 | void *arg, |
5747 | sctp_cmd_seq_t *commands) | 5748 | sctp_cmd_seq_t *commands) |
5748 | { | 5749 | { |
@@ -5813,7 +5814,7 @@ sctp_disposition_t sctp_sf_t4_timer_expire( | |||
5813 | struct net *net, | 5814 | struct net *net, |
5814 | const struct sctp_endpoint *ep, | 5815 | const struct sctp_endpoint *ep, |
5815 | const struct sctp_association *asoc, | 5816 | const struct sctp_association *asoc, |
5816 | const sctp_subtype_t type, | 5817 | const union sctp_subtype type, |
5817 | void *arg, | 5818 | void *arg, |
5818 | sctp_cmd_seq_t *commands) | 5819 | sctp_cmd_seq_t *commands) |
5819 | { | 5820 | { |
@@ -5884,7 +5885,7 @@ sctp_disposition_t sctp_sf_t4_timer_expire( | |||
5884 | sctp_disposition_t sctp_sf_t5_timer_expire(struct net *net, | 5885 | sctp_disposition_t sctp_sf_t5_timer_expire(struct net *net, |
5885 | const struct sctp_endpoint *ep, | 5886 | const struct sctp_endpoint *ep, |
5886 | const struct sctp_association *asoc, | 5887 | const struct sctp_association *asoc, |
5887 | const sctp_subtype_t type, | 5888 | const union sctp_subtype type, |
5888 | void *arg, | 5889 | void *arg, |
5889 | sctp_cmd_seq_t *commands) | 5890 | sctp_cmd_seq_t *commands) |
5890 | { | 5891 | { |
@@ -5921,7 +5922,7 @@ sctp_disposition_t sctp_sf_autoclose_timer_expire( | |||
5921 | struct net *net, | 5922 | struct net *net, |
5922 | const struct sctp_endpoint *ep, | 5923 | const struct sctp_endpoint *ep, |
5923 | const struct sctp_association *asoc, | 5924 | const struct sctp_association *asoc, |
5924 | const sctp_subtype_t type, | 5925 | const union sctp_subtype type, |
5925 | void *arg, | 5926 | void *arg, |
5926 | sctp_cmd_seq_t *commands) | 5927 | sctp_cmd_seq_t *commands) |
5927 | { | 5928 | { |
@@ -5963,7 +5964,7 @@ sctp_disposition_t sctp_sf_autoclose_timer_expire( | |||
5963 | sctp_disposition_t sctp_sf_not_impl(struct net *net, | 5964 | sctp_disposition_t sctp_sf_not_impl(struct net *net, |
5964 | const struct sctp_endpoint *ep, | 5965 | const struct sctp_endpoint *ep, |
5965 | const struct sctp_association *asoc, | 5966 | const struct sctp_association *asoc, |
5966 | const sctp_subtype_t type, | 5967 | const union sctp_subtype type, |
5967 | void *arg, | 5968 | void *arg, |
5968 | sctp_cmd_seq_t *commands) | 5969 | sctp_cmd_seq_t *commands) |
5969 | { | 5970 | { |
@@ -5981,7 +5982,7 @@ sctp_disposition_t sctp_sf_not_impl(struct net *net, | |||
5981 | sctp_disposition_t sctp_sf_bug(struct net *net, | 5982 | sctp_disposition_t sctp_sf_bug(struct net *net, |
5982 | const struct sctp_endpoint *ep, | 5983 | const struct sctp_endpoint *ep, |
5983 | const struct sctp_association *asoc, | 5984 | const struct sctp_association *asoc, |
5984 | const sctp_subtype_t type, | 5985 | const union sctp_subtype type, |
5985 | void *arg, | 5986 | void *arg, |
5986 | sctp_cmd_seq_t *commands) | 5987 | sctp_cmd_seq_t *commands) |
5987 | { | 5988 | { |
@@ -6002,7 +6003,7 @@ sctp_disposition_t sctp_sf_bug(struct net *net, | |||
6002 | sctp_disposition_t sctp_sf_timer_ignore(struct net *net, | 6003 | sctp_disposition_t sctp_sf_timer_ignore(struct net *net, |
6003 | const struct sctp_endpoint *ep, | 6004 | const struct sctp_endpoint *ep, |
6004 | const struct sctp_association *asoc, | 6005 | const struct sctp_association *asoc, |
6005 | const sctp_subtype_t type, | 6006 | const union sctp_subtype type, |
6006 | void *arg, | 6007 | void *arg, |
6007 | sctp_cmd_seq_t *commands) | 6008 | sctp_cmd_seq_t *commands) |
6008 | { | 6009 | { |
diff --git a/net/sctp/sm_statetable.c b/net/sctp/sm_statetable.c index f7cdb7014244..d437f3801399 100644 --- a/net/sctp/sm_statetable.c +++ b/net/sctp/sm_statetable.c | |||
@@ -77,10 +77,11 @@ static const sctp_sm_table_entry_t bug = { | |||
77 | rtn; \ | 77 | rtn; \ |
78 | }) | 78 | }) |
79 | 79 | ||
80 | const sctp_sm_table_entry_t *sctp_sm_lookup_event(struct net *net, | 80 | const sctp_sm_table_entry_t *sctp_sm_lookup_event( |
81 | enum sctp_event event_type, | 81 | struct net *net, |
82 | enum sctp_state state, | 82 | enum sctp_event event_type, |
83 | sctp_subtype_t event_subtype) | 83 | enum sctp_state state, |
84 | union sctp_subtype event_subtype) | ||
84 | { | 85 | { |
85 | switch (event_type) { | 86 | switch (event_type) { |
86 | case SCTP_EVENT_T_CHUNK: | 87 | case SCTP_EVENT_T_CHUNK: |