aboutsummaryrefslogtreecommitdiffstats
path: root/net/sctp
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@redhat.com>2011-10-31 09:09:32 -0200
committerMauro Carvalho Chehab <mchehab@redhat.com>2011-10-31 09:09:32 -0200
commit2c699499df3f57e62725fcd56842090fb5e82600 (patch)
tree5a9d5b3b5df3d98de92f605b7dee0815d03b5fc8 /net/sctp
parentddbb67caef2ecd0070c6ebed4d932c51ace1619f (diff)
parentc3b92c8787367a8bb53d57d9789b558f1295cc96 (diff)
Merge tag 'v3.1'old/cs_2c699499df3f
* tag 'v3.1': (537 commits) Linux 3.1 x86: Fix S4 regression dm kcopyd: fix job_pool leak ARM: S3C24XX: Fix s3c24xx build errors if !CONFIG_PM crypto: ghash - Avoid null pointer dereference if no key is set ARM: S5P: fix offset calculation on gpio-interrupt hwmon: (w83627ehf) Fix negative 8-bit temperature values mm: fix race between mremap and removing migration entry sparc: Add alignment flag to PCI expansion resources fib_rules: fix unresolved_rules counting r8169: fix wrong eee setting for rlt8111evl r8169: fix driver shutdown WoL regression. ehea: Change maintainer to me [media] videodev: fix a NULL pointer dereference in v4l2_device_release() intel-iommu: fix superpage support in pfn_to_dma_pte() intel-iommu: set iommu_superpage on VM domains to lowest common denominator intel-iommu: fix return value of iommu_unmap() API MAINTAINERS: Update VT-d entry for drivers/pci -> drivers/iommu move drm/radeon/kms/atom: fix handling of FB scratch indices pptp: pptp_rcv_core() misses pskb_may_pull() call ...
Diffstat (limited to 'net/sctp')
-rw-r--r--net/sctp/sm_sideeffect.c5
-rw-r--r--net/sctp/sm_statefuns.c6
2 files changed, 11 insertions, 0 deletions
diff --git a/net/sctp/sm_sideeffect.c b/net/sctp/sm_sideeffect.c
index 167c880cf8da..76388b083f28 100644
--- a/net/sctp/sm_sideeffect.c
+++ b/net/sctp/sm_sideeffect.c
@@ -1689,6 +1689,11 @@ static int sctp_cmd_interpreter(sctp_event_t event_type,
case SCTP_CMD_PURGE_ASCONF_QUEUE:
sctp_asconf_queue_teardown(asoc);
break;
+
+ case SCTP_CMD_SET_ASOC:
+ asoc = cmd->obj.asoc;
+ break;
+
default:
pr_warn("Impossible command: %u, %p\n",
cmd->verb, cmd->obj.ptr);
diff --git a/net/sctp/sm_statefuns.c b/net/sctp/sm_statefuns.c
index 49b847b00f99..a0f31e6c1c63 100644
--- a/net/sctp/sm_statefuns.c
+++ b/net/sctp/sm_statefuns.c
@@ -2047,6 +2047,12 @@ sctp_disposition_t sctp_sf_do_5_2_4_dupcook(const struct sctp_endpoint *ep,
sctp_add_cmd_sf(commands, SCTP_CMD_NEW_ASOC, SCTP_ASOC(new_asoc));
sctp_add_cmd_sf(commands, SCTP_CMD_DELETE_TCB, SCTP_NULL());
+ /* Restore association pointer to provide SCTP command interpeter
+ * with a valid context in case it needs to manipulate
+ * the queues */
+ sctp_add_cmd_sf(commands, SCTP_CMD_SET_ASOC,
+ SCTP_ASOC((struct sctp_association *)asoc));
+
return retval;
nomem:

Privacy Policy