sctp: remove the typedef sctp_sm_table_entry_t
This patch is to remove the typedef sctp_sm_table_entry_t, and replace with struct sctp_sm_table_entry in the places where it's using this typedef. It is also to fix some indents. Signed-off-by: Xin Long <lucien.xin@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>zero-colors
parent
eb662a6a9b
commit
8ee821aea3
|
@ -72,10 +72,10 @@ typedef sctp_disposition_t (sctp_state_fn_t) (struct net *,
|
||||||
void *arg,
|
void *arg,
|
||||||
struct sctp_cmd_seq *);
|
struct sctp_cmd_seq *);
|
||||||
typedef void (sctp_timer_event_t) (unsigned long);
|
typedef void (sctp_timer_event_t) (unsigned long);
|
||||||
typedef struct {
|
struct sctp_sm_table_entry {
|
||||||
sctp_state_fn_t *fn;
|
sctp_state_fn_t *fn;
|
||||||
const char *name;
|
const char *name;
|
||||||
} sctp_sm_table_entry_t;
|
};
|
||||||
|
|
||||||
/* A naming convention of "sctp_sf_xxx" applies to all the state functions
|
/* A naming convention of "sctp_sf_xxx" applies to all the state functions
|
||||||
* currently in use.
|
* currently in use.
|
||||||
|
@ -170,7 +170,7 @@ sctp_state_fn_t sctp_sf_autoclose_timer_expire;
|
||||||
|
|
||||||
/* Prototypes for utility support functions. */
|
/* Prototypes for utility support functions. */
|
||||||
__u8 sctp_get_chunk_type(struct sctp_chunk *chunk);
|
__u8 sctp_get_chunk_type(struct sctp_chunk *chunk);
|
||||||
const sctp_sm_table_entry_t *sctp_sm_lookup_event(
|
const struct sctp_sm_table_entry *sctp_sm_lookup_event(
|
||||||
struct net *net,
|
struct net *net,
|
||||||
enum sctp_event event_type,
|
enum sctp_event event_type,
|
||||||
enum sctp_state state,
|
enum sctp_state state,
|
||||||
|
|
|
@ -1146,7 +1146,7 @@ int sctp_do_sm(struct net *net, enum sctp_event event_type,
|
||||||
void *event_arg, gfp_t gfp)
|
void *event_arg, gfp_t gfp)
|
||||||
{
|
{
|
||||||
struct sctp_cmd_seq commands;
|
struct sctp_cmd_seq commands;
|
||||||
const sctp_sm_table_entry_t *state_fn;
|
const struct sctp_sm_table_entry *state_fn;
|
||||||
sctp_disposition_t status;
|
sctp_disposition_t status;
|
||||||
int error = 0;
|
int error = 0;
|
||||||
typedef const char *(printfn_t)(union sctp_subtype);
|
typedef const char *(printfn_t)(union sctp_subtype);
|
||||||
|
|
|
@ -45,27 +45,27 @@
|
||||||
#include <net/sctp/sctp.h>
|
#include <net/sctp/sctp.h>
|
||||||
#include <net/sctp/sm.h>
|
#include <net/sctp/sm.h>
|
||||||
|
|
||||||
static const sctp_sm_table_entry_t
|
static const struct sctp_sm_table_entry
|
||||||
primitive_event_table[SCTP_NUM_PRIMITIVE_TYPES][SCTP_STATE_NUM_STATES];
|
primitive_event_table[SCTP_NUM_PRIMITIVE_TYPES][SCTP_STATE_NUM_STATES];
|
||||||
static const sctp_sm_table_entry_t
|
static const struct sctp_sm_table_entry
|
||||||
other_event_table[SCTP_NUM_OTHER_TYPES][SCTP_STATE_NUM_STATES];
|
other_event_table[SCTP_NUM_OTHER_TYPES][SCTP_STATE_NUM_STATES];
|
||||||
static const sctp_sm_table_entry_t
|
static const struct sctp_sm_table_entry
|
||||||
timeout_event_table[SCTP_NUM_TIMEOUT_TYPES][SCTP_STATE_NUM_STATES];
|
timeout_event_table[SCTP_NUM_TIMEOUT_TYPES][SCTP_STATE_NUM_STATES];
|
||||||
|
|
||||||
static const sctp_sm_table_entry_t *sctp_chunk_event_lookup(
|
static const struct sctp_sm_table_entry *sctp_chunk_event_lookup(
|
||||||
struct net *net,
|
struct net *net,
|
||||||
enum sctp_cid cid,
|
enum sctp_cid cid,
|
||||||
enum sctp_state state);
|
enum sctp_state state);
|
||||||
|
|
||||||
|
|
||||||
static const sctp_sm_table_entry_t bug = {
|
static const struct sctp_sm_table_entry bug = {
|
||||||
.fn = sctp_sf_bug,
|
.fn = sctp_sf_bug,
|
||||||
.name = "sctp_sf_bug"
|
.name = "sctp_sf_bug"
|
||||||
};
|
};
|
||||||
|
|
||||||
#define DO_LOOKUP(_max, _type, _table) \
|
#define DO_LOOKUP(_max, _type, _table) \
|
||||||
({ \
|
({ \
|
||||||
const sctp_sm_table_entry_t *rtn; \
|
const struct sctp_sm_table_entry *rtn; \
|
||||||
\
|
\
|
||||||
if ((event_subtype._type > (_max))) { \
|
if ((event_subtype._type > (_max))) { \
|
||||||
pr_warn("table %p possible attack: event %d exceeds max %d\n", \
|
pr_warn("table %p possible attack: event %d exceeds max %d\n", \
|
||||||
|
@ -77,7 +77,7 @@ static const sctp_sm_table_entry_t bug = {
|
||||||
rtn; \
|
rtn; \
|
||||||
})
|
})
|
||||||
|
|
||||||
const sctp_sm_table_entry_t *sctp_sm_lookup_event(
|
const struct sctp_sm_table_entry *sctp_sm_lookup_event(
|
||||||
struct net *net,
|
struct net *net,
|
||||||
enum sctp_event event_type,
|
enum sctp_event event_type,
|
||||||
enum sctp_state state,
|
enum sctp_state state,
|
||||||
|
@ -394,7 +394,8 @@ const sctp_sm_table_entry_t *sctp_sm_lookup_event(
|
||||||
*
|
*
|
||||||
* For base protocol (RFC 2960).
|
* For base protocol (RFC 2960).
|
||||||
*/
|
*/
|
||||||
static const sctp_sm_table_entry_t chunk_event_table[SCTP_NUM_BASE_CHUNK_TYPES][SCTP_STATE_NUM_STATES] = {
|
static const struct sctp_sm_table_entry
|
||||||
|
chunk_event_table[SCTP_NUM_BASE_CHUNK_TYPES][SCTP_STATE_NUM_STATES] = {
|
||||||
TYPE_SCTP_DATA,
|
TYPE_SCTP_DATA,
|
||||||
TYPE_SCTP_INIT,
|
TYPE_SCTP_INIT,
|
||||||
TYPE_SCTP_INIT_ACK,
|
TYPE_SCTP_INIT_ACK,
|
||||||
|
@ -453,7 +454,8 @@ static const sctp_sm_table_entry_t chunk_event_table[SCTP_NUM_BASE_CHUNK_TYPES][
|
||||||
/* The primary index for this table is the chunk type.
|
/* The primary index for this table is the chunk type.
|
||||||
* The secondary index for this table is the state.
|
* The secondary index for this table is the state.
|
||||||
*/
|
*/
|
||||||
static const sctp_sm_table_entry_t addip_chunk_event_table[SCTP_NUM_ADDIP_CHUNK_TYPES][SCTP_STATE_NUM_STATES] = {
|
static const struct sctp_sm_table_entry
|
||||||
|
addip_chunk_event_table[SCTP_NUM_ADDIP_CHUNK_TYPES][SCTP_STATE_NUM_STATES] = {
|
||||||
TYPE_SCTP_ASCONF,
|
TYPE_SCTP_ASCONF,
|
||||||
TYPE_SCTP_ASCONF_ACK,
|
TYPE_SCTP_ASCONF_ACK,
|
||||||
}; /*state_fn_t addip_chunk_event_table[][] */
|
}; /*state_fn_t addip_chunk_event_table[][] */
|
||||||
|
@ -480,7 +482,8 @@ static const sctp_sm_table_entry_t addip_chunk_event_table[SCTP_NUM_ADDIP_CHUNK_
|
||||||
/* The primary index for this table is the chunk type.
|
/* The primary index for this table is the chunk type.
|
||||||
* The secondary index for this table is the state.
|
* The secondary index for this table is the state.
|
||||||
*/
|
*/
|
||||||
static const sctp_sm_table_entry_t prsctp_chunk_event_table[SCTP_NUM_PRSCTP_CHUNK_TYPES][SCTP_STATE_NUM_STATES] = {
|
static const struct sctp_sm_table_entry
|
||||||
|
prsctp_chunk_event_table[SCTP_NUM_PRSCTP_CHUNK_TYPES][SCTP_STATE_NUM_STATES] = {
|
||||||
TYPE_SCTP_FWD_TSN,
|
TYPE_SCTP_FWD_TSN,
|
||||||
}; /*state_fn_t prsctp_chunk_event_table[][] */
|
}; /*state_fn_t prsctp_chunk_event_table[][] */
|
||||||
|
|
||||||
|
@ -506,7 +509,8 @@ static const sctp_sm_table_entry_t prsctp_chunk_event_table[SCTP_NUM_PRSCTP_CHUN
|
||||||
/* The primary index for this table is the chunk type.
|
/* The primary index for this table is the chunk type.
|
||||||
* The secondary index for this table is the state.
|
* The secondary index for this table is the state.
|
||||||
*/
|
*/
|
||||||
static const sctp_sm_table_entry_t reconf_chunk_event_table[SCTP_NUM_RECONF_CHUNK_TYPES][SCTP_STATE_NUM_STATES] = {
|
static const struct sctp_sm_table_entry
|
||||||
|
reconf_chunk_event_table[SCTP_NUM_RECONF_CHUNK_TYPES][SCTP_STATE_NUM_STATES] = {
|
||||||
TYPE_SCTP_RECONF,
|
TYPE_SCTP_RECONF,
|
||||||
}; /*state_fn_t reconf_chunk_event_table[][] */
|
}; /*state_fn_t reconf_chunk_event_table[][] */
|
||||||
|
|
||||||
|
@ -532,11 +536,12 @@ static const sctp_sm_table_entry_t reconf_chunk_event_table[SCTP_NUM_RECONF_CHUN
|
||||||
/* The primary index for this table is the chunk type.
|
/* The primary index for this table is the chunk type.
|
||||||
* The secondary index for this table is the state.
|
* The secondary index for this table is the state.
|
||||||
*/
|
*/
|
||||||
static const sctp_sm_table_entry_t auth_chunk_event_table[SCTP_NUM_AUTH_CHUNK_TYPES][SCTP_STATE_NUM_STATES] = {
|
static const struct sctp_sm_table_entry
|
||||||
|
auth_chunk_event_table[SCTP_NUM_AUTH_CHUNK_TYPES][SCTP_STATE_NUM_STATES] = {
|
||||||
TYPE_SCTP_AUTH,
|
TYPE_SCTP_AUTH,
|
||||||
}; /*state_fn_t auth_chunk_event_table[][] */
|
}; /*state_fn_t auth_chunk_event_table[][] */
|
||||||
|
|
||||||
static const sctp_sm_table_entry_t
|
static const struct sctp_sm_table_entry
|
||||||
chunk_event_table_unknown[SCTP_STATE_NUM_STATES] = {
|
chunk_event_table_unknown[SCTP_STATE_NUM_STATES] = {
|
||||||
/* SCTP_STATE_CLOSED */
|
/* SCTP_STATE_CLOSED */
|
||||||
TYPE_SCTP_FUNC(sctp_sf_ootb),
|
TYPE_SCTP_FUNC(sctp_sf_ootb),
|
||||||
|
@ -693,7 +698,8 @@ chunk_event_table_unknown[SCTP_STATE_NUM_STATES] = {
|
||||||
/* The primary index for this table is the primitive type.
|
/* The primary index for this table is the primitive type.
|
||||||
* The secondary index for this table is the state.
|
* The secondary index for this table is the state.
|
||||||
*/
|
*/
|
||||||
static const sctp_sm_table_entry_t primitive_event_table[SCTP_NUM_PRIMITIVE_TYPES][SCTP_STATE_NUM_STATES] = {
|
static const struct sctp_sm_table_entry
|
||||||
|
primitive_event_table[SCTP_NUM_PRIMITIVE_TYPES][SCTP_STATE_NUM_STATES] = {
|
||||||
TYPE_SCTP_PRIMITIVE_ASSOCIATE,
|
TYPE_SCTP_PRIMITIVE_ASSOCIATE,
|
||||||
TYPE_SCTP_PRIMITIVE_SHUTDOWN,
|
TYPE_SCTP_PRIMITIVE_SHUTDOWN,
|
||||||
TYPE_SCTP_PRIMITIVE_ABORT,
|
TYPE_SCTP_PRIMITIVE_ABORT,
|
||||||
|
@ -741,7 +747,8 @@ static const sctp_sm_table_entry_t primitive_event_table[SCTP_NUM_PRIMITIVE_TYPE
|
||||||
TYPE_SCTP_FUNC(sctp_sf_ignore_other), \
|
TYPE_SCTP_FUNC(sctp_sf_ignore_other), \
|
||||||
}
|
}
|
||||||
|
|
||||||
static const sctp_sm_table_entry_t other_event_table[SCTP_NUM_OTHER_TYPES][SCTP_STATE_NUM_STATES] = {
|
static const struct sctp_sm_table_entry
|
||||||
|
other_event_table[SCTP_NUM_OTHER_TYPES][SCTP_STATE_NUM_STATES] = {
|
||||||
TYPE_SCTP_OTHER_NO_PENDING_TSN,
|
TYPE_SCTP_OTHER_NO_PENDING_TSN,
|
||||||
TYPE_SCTP_OTHER_ICMP_PROTO_UNREACH,
|
TYPE_SCTP_OTHER_ICMP_PROTO_UNREACH,
|
||||||
};
|
};
|
||||||
|
@ -955,7 +962,8 @@ static const sctp_sm_table_entry_t other_event_table[SCTP_NUM_OTHER_TYPES][SCTP_
|
||||||
TYPE_SCTP_FUNC(sctp_sf_timer_ignore), \
|
TYPE_SCTP_FUNC(sctp_sf_timer_ignore), \
|
||||||
}
|
}
|
||||||
|
|
||||||
static const sctp_sm_table_entry_t timeout_event_table[SCTP_NUM_TIMEOUT_TYPES][SCTP_STATE_NUM_STATES] = {
|
static const struct sctp_sm_table_entry
|
||||||
|
timeout_event_table[SCTP_NUM_TIMEOUT_TYPES][SCTP_STATE_NUM_STATES] = {
|
||||||
TYPE_SCTP_EVENT_TIMEOUT_NONE,
|
TYPE_SCTP_EVENT_TIMEOUT_NONE,
|
||||||
TYPE_SCTP_EVENT_TIMEOUT_T1_COOKIE,
|
TYPE_SCTP_EVENT_TIMEOUT_T1_COOKIE,
|
||||||
TYPE_SCTP_EVENT_TIMEOUT_T1_INIT,
|
TYPE_SCTP_EVENT_TIMEOUT_T1_INIT,
|
||||||
|
@ -969,7 +977,7 @@ static const sctp_sm_table_entry_t timeout_event_table[SCTP_NUM_TIMEOUT_TYPES][S
|
||||||
TYPE_SCTP_EVENT_TIMEOUT_AUTOCLOSE,
|
TYPE_SCTP_EVENT_TIMEOUT_AUTOCLOSE,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const sctp_sm_table_entry_t *sctp_chunk_event_lookup(
|
static const struct sctp_sm_table_entry *sctp_chunk_event_lookup(
|
||||||
struct net *net,
|
struct net *net,
|
||||||
enum sctp_cid cid,
|
enum sctp_cid cid,
|
||||||
enum sctp_state state)
|
enum sctp_state state)
|
||||||
|
|
Loading…
Reference in New Issue