forked from mirrors/linux
		
	sctp: remove the typedef sctp_sctphdr_t
This patch is to remove the typedef sctp_sctphdr_t, and replace with struct sctphdr in the places where it's using this typedef. It is also to fix some indents and use sizeof(variable) instead of sizeof(type). Signed-off-by: Xin Long <lucien.xin@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
		
							parent
							
								
									1383445195
								
							
						
					
					
						commit
						ae146d9b76
					
				
					 7 changed files with 24 additions and 25 deletions
				
			
		|  | @ -57,12 +57,12 @@ | ||||||
| #include <uapi/linux/sctp.h> | #include <uapi/linux/sctp.h> | ||||||
| 
 | 
 | ||||||
| /* Section 3.1.  SCTP Common Header Format */ | /* Section 3.1.  SCTP Common Header Format */ | ||||||
| typedef struct sctphdr { | struct sctphdr { | ||||||
| 	__be16 source; | 	__be16 source; | ||||||
| 	__be16 dest; | 	__be16 dest; | ||||||
| 	__be32 vtag; | 	__be32 vtag; | ||||||
| 	__le32 checksum; | 	__le32 checksum; | ||||||
| } sctp_sctphdr_t; | }; | ||||||
| 
 | 
 | ||||||
| static inline struct sctphdr *sctp_hdr(const struct sk_buff *skb) | static inline struct sctphdr *sctp_hdr(const struct sk_buff *skb) | ||||||
| { | { | ||||||
|  |  | ||||||
|  | @ -38,8 +38,8 @@ get_port(const struct sk_buff *skb, int protocol, unsigned int protooff, | ||||||
| 		break; | 		break; | ||||||
| 	} | 	} | ||||||
| 	case IPPROTO_SCTP: { | 	case IPPROTO_SCTP: { | ||||||
| 		sctp_sctphdr_t _sh; | 		struct sctphdr _sh; | ||||||
| 		const sctp_sctphdr_t *sh; | 		const struct sctphdr *sh; | ||||||
| 
 | 
 | ||||||
| 		sh = skb_header_pointer(skb, protooff, sizeof(_sh), &_sh); | 		sh = skb_header_pointer(skb, protooff, sizeof(_sh), &_sh); | ||||||
| 		if (!sh) | 		if (!sh) | ||||||
|  |  | ||||||
|  | @ -1038,8 +1038,8 @@ static int ip_vs_out_icmp_v6(struct netns_ipvs *ipvs, struct sk_buff *skb, | ||||||
| static inline int is_sctp_abort(const struct sk_buff *skb, int nh_len) | static inline int is_sctp_abort(const struct sk_buff *skb, int nh_len) | ||||||
| { | { | ||||||
| 	sctp_chunkhdr_t *sch, schunk; | 	sctp_chunkhdr_t *sch, schunk; | ||||||
| 	sch = skb_header_pointer(skb, nh_len + sizeof(sctp_sctphdr_t), | 	sch = skb_header_pointer(skb, nh_len + sizeof(struct sctphdr), | ||||||
| 			sizeof(schunk), &schunk); | 				 sizeof(schunk), &schunk); | ||||||
| 	if (sch == NULL) | 	if (sch == NULL) | ||||||
| 		return 0; | 		return 0; | ||||||
| 	if (sch->type == SCTP_CID_ABORT) | 	if (sch->type == SCTP_CID_ABORT) | ||||||
|  | @ -1072,7 +1072,7 @@ static inline bool is_new_conn(const struct sk_buff *skb, | ||||||
| 	case IPPROTO_SCTP: { | 	case IPPROTO_SCTP: { | ||||||
| 		sctp_chunkhdr_t *sch, schunk; | 		sctp_chunkhdr_t *sch, schunk; | ||||||
| 
 | 
 | ||||||
| 		sch = skb_header_pointer(skb, iph->len + sizeof(sctp_sctphdr_t), | 		sch = skb_header_pointer(skb, iph->len + sizeof(struct sctphdr), | ||||||
| 					 sizeof(schunk), &schunk); | 					 sizeof(schunk), &schunk); | ||||||
| 		if (sch == NULL) | 		if (sch == NULL) | ||||||
| 			return false; | 			return false; | ||||||
|  |  | ||||||
|  | @ -16,15 +16,14 @@ sctp_conn_schedule(struct netns_ipvs *ipvs, int af, struct sk_buff *skb, | ||||||
| { | { | ||||||
| 	struct ip_vs_service *svc; | 	struct ip_vs_service *svc; | ||||||
| 	sctp_chunkhdr_t _schunkh, *sch; | 	sctp_chunkhdr_t _schunkh, *sch; | ||||||
| 	sctp_sctphdr_t *sh, _sctph; | 	struct sctphdr *sh, _sctph; | ||||||
| 	__be16 _ports[2], *ports = NULL; | 	__be16 _ports[2], *ports = NULL; | ||||||
| 
 | 
 | ||||||
| 	if (likely(!ip_vs_iph_icmp(iph))) { | 	if (likely(!ip_vs_iph_icmp(iph))) { | ||||||
| 		sh = skb_header_pointer(skb, iph->len, sizeof(_sctph), &_sctph); | 		sh = skb_header_pointer(skb, iph->len, sizeof(_sctph), &_sctph); | ||||||
| 		if (sh) { | 		if (sh) { | ||||||
| 			sch = skb_header_pointer( | 			sch = skb_header_pointer(skb, iph->len + sizeof(_sctph), | ||||||
| 				skb, iph->len + sizeof(sctp_sctphdr_t), | 						 sizeof(_schunkh), &_schunkh); | ||||||
| 				sizeof(_schunkh), &_schunkh); |  | ||||||
| 			if (sch && (sch->type == SCTP_CID_INIT || | 			if (sch && (sch->type == SCTP_CID_INIT || | ||||||
| 				    sysctl_sloppy_sctp(ipvs))) | 				    sysctl_sloppy_sctp(ipvs))) | ||||||
| 				ports = &sh->source; | 				ports = &sh->source; | ||||||
|  | @ -77,7 +76,7 @@ sctp_conn_schedule(struct netns_ipvs *ipvs, int af, struct sk_buff *skb, | ||||||
| 	return 1; | 	return 1; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static void sctp_nat_csum(struct sk_buff *skb, sctp_sctphdr_t *sctph, | static void sctp_nat_csum(struct sk_buff *skb, struct sctphdr *sctph, | ||||||
| 			  unsigned int sctphoff) | 			  unsigned int sctphoff) | ||||||
| { | { | ||||||
| 	sctph->checksum = sctp_compute_cksum(skb, sctphoff); | 	sctph->checksum = sctp_compute_cksum(skb, sctphoff); | ||||||
|  | @ -88,7 +87,7 @@ static int | ||||||
| sctp_snat_handler(struct sk_buff *skb, struct ip_vs_protocol *pp, | sctp_snat_handler(struct sk_buff *skb, struct ip_vs_protocol *pp, | ||||||
| 		  struct ip_vs_conn *cp, struct ip_vs_iphdr *iph) | 		  struct ip_vs_conn *cp, struct ip_vs_iphdr *iph) | ||||||
| { | { | ||||||
| 	sctp_sctphdr_t *sctph; | 	struct sctphdr *sctph; | ||||||
| 	unsigned int sctphoff = iph->len; | 	unsigned int sctphoff = iph->len; | ||||||
| 	bool payload_csum = false; | 	bool payload_csum = false; | ||||||
| 
 | 
 | ||||||
|  | @ -135,7 +134,7 @@ static int | ||||||
| sctp_dnat_handler(struct sk_buff *skb, struct ip_vs_protocol *pp, | sctp_dnat_handler(struct sk_buff *skb, struct ip_vs_protocol *pp, | ||||||
| 		  struct ip_vs_conn *cp, struct ip_vs_iphdr *iph) | 		  struct ip_vs_conn *cp, struct ip_vs_iphdr *iph) | ||||||
| { | { | ||||||
| 	sctp_sctphdr_t *sctph; | 	struct sctphdr *sctph; | ||||||
| 	unsigned int sctphoff = iph->len; | 	unsigned int sctphoff = iph->len; | ||||||
| 	bool payload_csum = false; | 	bool payload_csum = false; | ||||||
| 
 | 
 | ||||||
|  | @ -389,7 +388,7 @@ set_sctp_state(struct ip_vs_proto_data *pd, struct ip_vs_conn *cp, | ||||||
| 	ihl = ip_hdrlen(skb); | 	ihl = ip_hdrlen(skb); | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| 	cofs = ihl + sizeof(sctp_sctphdr_t); | 	cofs = ihl + sizeof(struct sctphdr); | ||||||
| 	sch = skb_header_pointer(skb, cofs, sizeof(_sctpch), &_sctpch); | 	sch = skb_header_pointer(skb, cofs, sizeof(_sctpch), &_sctpch); | ||||||
| 	if (sch == NULL) | 	if (sch == NULL) | ||||||
| 		return; | 		return; | ||||||
|  |  | ||||||
|  | @ -190,7 +190,7 @@ static void sctp_print_conntrack(struct seq_file *s, struct nf_conn *ct) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| #define for_each_sctp_chunk(skb, sch, _sch, offset, dataoff, count)	\ | #define for_each_sctp_chunk(skb, sch, _sch, offset, dataoff, count)	\ | ||||||
| for ((offset) = (dataoff) + sizeof(sctp_sctphdr_t), (count) = 0;	\ | for ((offset) = (dataoff) + sizeof(struct sctphdr), (count) = 0;	\ | ||||||
| 	(offset) < (skb)->len &&					\ | 	(offset) < (skb)->len &&					\ | ||||||
| 	((sch) = skb_header_pointer((skb), (offset), sizeof(_sch), &(_sch)));	\ | 	((sch) = skb_header_pointer((skb), (offset), sizeof(_sch), &(_sch)));	\ | ||||||
| 	(offset) += (ntohs((sch)->length) + 3) & ~3, (count)++) | 	(offset) += (ntohs((sch)->length) + 3) & ~3, (count)++) | ||||||
|  |  | ||||||
|  | @ -32,7 +32,7 @@ sctp_manip_pkt(struct sk_buff *skb, | ||||||
| 	       const struct nf_conntrack_tuple *tuple, | 	       const struct nf_conntrack_tuple *tuple, | ||||||
| 	       enum nf_nat_manip_type maniptype) | 	       enum nf_nat_manip_type maniptype) | ||||||
| { | { | ||||||
| 	sctp_sctphdr_t *hdr; | 	struct sctphdr *hdr; | ||||||
| 	int hdrsize = 8; | 	int hdrsize = 8; | ||||||
| 
 | 
 | ||||||
| 	/* This could be an inner header returned in imcp packet; in such
 | 	/* This could be an inner header returned in imcp packet; in such
 | ||||||
|  |  | ||||||
|  | @ -118,8 +118,8 @@ static bool | ||||||
| sctp_mt(const struct sk_buff *skb, struct xt_action_param *par) | sctp_mt(const struct sk_buff *skb, struct xt_action_param *par) | ||||||
| { | { | ||||||
| 	const struct xt_sctp_info *info = par->matchinfo; | 	const struct xt_sctp_info *info = par->matchinfo; | ||||||
| 	const sctp_sctphdr_t *sh; | 	const struct sctphdr *sh; | ||||||
| 	sctp_sctphdr_t _sh; | 	struct sctphdr _sh; | ||||||
| 
 | 
 | ||||||
| 	if (par->fragoff != 0) { | 	if (par->fragoff != 0) { | ||||||
| 		pr_debug("Dropping non-first fragment.. FIXME\n"); | 		pr_debug("Dropping non-first fragment.. FIXME\n"); | ||||||
|  | @ -136,13 +136,13 @@ sctp_mt(const struct sk_buff *skb, struct xt_action_param *par) | ||||||
| 
 | 
 | ||||||
| 	return  SCCHECK(ntohs(sh->source) >= info->spts[0] | 	return  SCCHECK(ntohs(sh->source) >= info->spts[0] | ||||||
| 			&& ntohs(sh->source) <= info->spts[1], | 			&& ntohs(sh->source) <= info->spts[1], | ||||||
| 			XT_SCTP_SRC_PORTS, info->flags, info->invflags) | 			XT_SCTP_SRC_PORTS, info->flags, info->invflags) && | ||||||
| 		&& SCCHECK(ntohs(sh->dest) >= info->dpts[0] | 		SCCHECK(ntohs(sh->dest) >= info->dpts[0] | ||||||
| 			&& ntohs(sh->dest) <= info->dpts[1], | 			&& ntohs(sh->dest) <= info->dpts[1], | ||||||
| 			XT_SCTP_DEST_PORTS, info->flags, info->invflags) | 			XT_SCTP_DEST_PORTS, info->flags, info->invflags) && | ||||||
| 		&& SCCHECK(match_packet(skb, par->thoff + sizeof(sctp_sctphdr_t), | 		SCCHECK(match_packet(skb, par->thoff + sizeof(_sh), | ||||||
| 					info, &par->hotdrop), | 				     info, &par->hotdrop), | ||||||
| 			   XT_SCTP_CHUNK_TYPES, info->flags, info->invflags); | 			XT_SCTP_CHUNK_TYPES, info->flags, info->invflags); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static int sctp_mt_check(const struct xt_mtchk_param *par) | static int sctp_mt_check(const struct xt_mtchk_param *par) | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue
	
	 Xin Long
						Xin Long