[kernel] r12580 - dists/sid/linux-2.6/debian/patches/bugfix/all
Dann Frazier
dannf at alioth.debian.org
Tue Jan 20 01:18:19 UTC 2009
Author: dannf
Date: Tue Jan 20 01:18:19 2009
New Revision: 12580
Log:
was applying to wrong function, fixed
Modified:
dists/sid/linux-2.6/debian/patches/bugfix/all/sctp-avoid-memory-overflow.patch
Modified: dists/sid/linux-2.6/debian/patches/bugfix/all/sctp-avoid-memory-overflow.patch
==============================================================================
--- dists/sid/linux-2.6/debian/patches/bugfix/all/sctp-avoid-memory-overflow.patch (original)
+++ dists/sid/linux-2.6/debian/patches/bugfix/all/sctp-avoid-memory-overflow.patch Tue Jan 20 01:18:19 2009
@@ -28,8 +28,8 @@
Adjusted to apply to Debian's 2.6.26 by dann frazier <dannf at debian.org>
diff -urpN linux-source-2.6.26.orig/net/sctp/sm_statefuns.c linux-source-2.6.26/net/sctp/sm_statefuns.c
---- linux-source-2.6.26.orig/net/sctp/sm_statefuns.c 2009-01-08 16:43:13.000000000 -0700
-+++ linux-source-2.6.26/net/sctp/sm_statefuns.c 2009-01-10 10:15:32.000000000 -0700
+--- linux-source-2.6.26.orig/net/sctp/sm_statefuns.c 2009-01-10 05:42:12.000000000 -0700
++++ linux-source-2.6.26/net/sctp/sm_statefuns.c 2009-01-19 16:37:09.000000000 -0700
@@ -3641,6 +3641,7 @@ sctp_disposition_t sctp_sf_eat_fwd_tsn(c
{
struct sctp_chunk *chunk = arg;
@@ -38,7 +38,20 @@
__u16 len;
__u32 tsn;
-@@ -3701,6 +3702,7 @@ sctp_disposition_t sctp_sf_eat_fwd_tsn_f
+@@ -3670,6 +3671,12 @@ sctp_disposition_t sctp_sf_eat_fwd_tsn(c
+ if (sctp_tsnmap_check(&asoc->peer.tsn_map, tsn) < 0)
+ goto discard_noforce;
+
++ /* Silently discard the chunk if stream-id is not valid */
++ sctp_walk_fwdtsn(skip, chunk) {
++ if (ntohs(skip->stream) >= asoc->c.sinit_max_instreams)
++ goto discard_noforce;
++ }
++
+ sctp_add_cmd_sf(commands, SCTP_CMD_REPORT_FWDTSN, SCTP_U32(tsn));
+ if (len > sizeof(struct sctp_fwdtsn_hdr))
+ sctp_add_cmd_sf(commands, SCTP_CMD_PROCESS_FWDTSN,
+@@ -3701,6 +3708,7 @@ sctp_disposition_t sctp_sf_eat_fwd_tsn_f
{
struct sctp_chunk *chunk = arg;
struct sctp_fwdtsn_hdr *fwdtsn_hdr;
@@ -46,19 +59,13 @@
__u16 len;
__u32 tsn;
-@@ -3730,6 +3732,18 @@ sctp_disposition_t sctp_sf_eat_fwd_tsn_f
+@@ -3730,6 +3738,12 @@ sctp_disposition_t sctp_sf_eat_fwd_tsn_f
if (sctp_tsnmap_check(&asoc->peer.tsn_map, tsn) < 0)
goto gen_shutdown;
+ /* Silently discard the chunk if stream-id is not valid */
+ sctp_walk_fwdtsn(skip, chunk) {
+ if (ntohs(skip->stream) >= asoc->c.sinit_max_instreams)
-+ goto discard_noforce;
-+ }
-+
-+ /* Silently discard the chunk if stream-id is not valid */
-+ sctp_walk_fwdtsn(skip, chunk) {
-+ if (ntohs(skip->stream) >= asoc->c.sinit_max_instreams)
+ goto gen_shutdown;
+ }
+
More information about the Kernel-svn-changes
mailing list