Skip to content

Commit

Permalink
fix sctp header structure
Browse files Browse the repository at this point in the history
  • Loading branch information
swordfeng committed Jun 5, 2015
1 parent 162493b commit a982ca4
Showing 1 changed file with 9 additions and 11 deletions.
20 changes: 9 additions & 11 deletions net.c
Expand Up @@ -75,7 +75,6 @@ struct SCTPHeader {
uint16 srcport;
uint16 dstport;
uint32 veri_tag;
uint32 checksum;
};

/* Structure of an IPv4 UDP pseudoheader. */
Expand Down Expand Up @@ -980,9 +979,9 @@ void net_process_return(void)
if ((size_t) num < sizeof(struct IPHeader) +
sizeof(struct ICMPHeader) +
sizeof (struct IPHeader) +
sizeof (struct SCTPHeader))
sizeof (struct TCPHeader))
return;
sctpheader = (struct SCTPHeader *)(packet + sizeof (struct IPHeader) +
tcpheader = (struct TCPHeader *)(packet + sizeof (struct IPHeader) +
sizeof (struct ICMPHeader) +
sizeof (struct IPHeader));

Expand All @@ -993,9 +992,9 @@ void net_process_return(void)
#ifdef ENABLE_IPV6
case AF_INET6:
if ( num < sizeof (struct ICMPHeader) +
sizeof (struct ip6_hdr) + sizeof (struct SCTPHeader) )
sizeof (struct ip6_hdr) + sizeof (struct TCPHeader) )
return;
sctpheader = (struct SCTPHeader *) ( packet +
tcpheader = (struct TCPHeader *) ( packet +
sizeof (struct ICMPHeader) +
sizeof (struct ip6_hdr) );

Expand All @@ -1017,9 +1016,9 @@ void net_process_return(void)
if ((size_t) num < sizeof(struct IPHeader) +
sizeof(struct ICMPHeader) +
sizeof (struct IPHeader) +
sizeof (struct TCPHeader))
sizeof (struct SCTPHeader))
return;
tcpheader = (struct TCPHeader *)(packet + sizeof (struct IPHeader) +
sctpheader = (struct SCTPHeader *)(packet + sizeof (struct IPHeader) +
sizeof (struct ICMPHeader) +
sizeof (struct IPHeader));

Expand All @@ -1030,9 +1029,9 @@ void net_process_return(void)
#ifdef ENABLE_IPV6
case AF_INET6:
if ( num < sizeof (struct ICMPHeader) +
sizeof (struct ip6_hdr) + sizeof (struct TCPHeader) )
sizeof (struct ip6_hdr) + sizeof (struct SCTPHeader) )
return;
tcpheader = (struct TCPHeader *) ( packet +
sctpheader = (struct SCTPHeader *) ( packet +
sizeof (struct ICMPHeader) +
sizeof (struct ip6_hdr) );

Expand All @@ -1042,11 +1041,10 @@ void net_process_return(void)
break;
#endif
}
sequence = ntohs(tcpheader->srcport);
sequence = ntohs(sctpheader->srcport);
}
break;
}

if (sequence)
net_process_ping (sequence, mpls, (void *) fromaddress, now);
}
Expand Down

0 comments on commit a982ca4

Please sign in to comment.