diff options
author | John Hughes <john@calva.com> | 2010-04-08 00:29:25 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-04-08 00:29:25 -0400 |
commit | f5eb917b861828da18dc28854308068c66d1449a (patch) | |
tree | aa45d1a809abbe426b55dc89b8167e5a6609d418 /include | |
parent | fd218cf9557b9bf7061365a8fe7020a56d3f767c (diff) |
x25: Patch to fix bug 15678 - x25 accesses fields beyond end of packet.
Here is a patch to stop X.25 examining fields beyond the end of the packet.
For example, when a simple CALL ACCEPTED was received:
10 10 0f
x25_parse_facilities was attempting to decode the FACILITIES field, but this
packet contains no facilities field.
Signed-off-by: John Hughes <john@calva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/net/x25.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/net/x25.h b/include/net/x25.h index 9baa07dc7d17..33f67fb78586 100644 --- a/include/net/x25.h +++ b/include/net/x25.h | |||
@@ -182,6 +182,10 @@ extern int sysctl_x25_clear_request_timeout; | |||
182 | extern int sysctl_x25_ack_holdback_timeout; | 182 | extern int sysctl_x25_ack_holdback_timeout; |
183 | extern int sysctl_x25_forward; | 183 | extern int sysctl_x25_forward; |
184 | 184 | ||
185 | extern int x25_parse_address_block(struct sk_buff *skb, | ||
186 | struct x25_address *called_addr, | ||
187 | struct x25_address *calling_addr); | ||
188 | |||
185 | extern int x25_addr_ntoa(unsigned char *, struct x25_address *, | 189 | extern int x25_addr_ntoa(unsigned char *, struct x25_address *, |
186 | struct x25_address *); | 190 | struct x25_address *); |
187 | extern int x25_addr_aton(unsigned char *, struct x25_address *, | 191 | extern int x25_addr_aton(unsigned char *, struct x25_address *, |