Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8ee821ae authored by Xin Long's avatar Xin Long Committed by David S. Miller
Browse files

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: default avatarXin Long <lucien.xin@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent eb662a6a
Loading
Loading
Loading
Loading
+3 −3
Original line number Original line Diff line number Diff line
@@ -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,
+1 −1
Original line number Original line Diff line number Diff line
@@ -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);
+25 −17
Original line number Original line Diff line number Diff line
@@ -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)