)]}'
{
  "commit": "df10eec476f2045a2ef5f85d97c7b47d992d7f7b",
  "tree": "22d7855af143100359be8ef568f85dd3fb1d636b",
  "parents": [
    "91bd6b1e030266cf87d3f567b49f0fa60a7318ba"
  ],
  "author": {
    "name": "Wei Yongjun",
    "email": "yjwei@cn.fujitsu.com",
    "time": "Thu Oct 23 01:00:21 2008 -0700"
  },
  "committer": {
    "name": "David S. Miller",
    "email": "davem@davemloft.net",
    "time": "Thu Oct 23 01:00:21 2008 -0700"
  },
  "message": "sctp: Add check for the TSN field of the SHUTDOWN chunk\n\nIf SHUTDOWN chunk is received Cumulative TSN Ack beyond the max tsn currently\nsend, SHUTDOWN chunk be accepted and the association will be broken. New data\nis send, but after received SACK it will be drop because TSN in SACK is less\nthan the Cumulative TSN, data will be retrans again and again even if correct\nSACK is received.\n\nThe packet sequence is like this:\n\nEndpoint A                       Endpoint B       ULP\n(ESTABLISHED)                    (ESTABLISHED)\n\n               \u003c-----------      DATA (TSN\u003dx-1)\n\n               \u003c-----------      DATA (TSN\u003dx)\n\n  SHUTDOWN     -----------\u003e      (Now Cumulative TSN\u003dx+1000)\n  (TSN\u003dx+1000)\n               \u003c-----------      DATA (TSN\u003dx+1)\n\n  SACK         -----------\u003e      drop the SACK\n  (TSN\u003dx+1)\n               \u003c-----------      DATA (TSN\u003dx+1)(retrans)\n\nThis patch fix this problem by terminating the association and respond to\nthe sender with an ABORT.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d4c3fbc4671e053bb1514a18c5efcf343b1902ee",
      "old_mode": 33188,
      "old_path": "net/sctp/sm_statefuns.c",
      "new_id": "12f62174f4a1a75011b8928a57fbd2fabb499380",
      "new_mode": 33188,
      "new_path": "net/sctp/sm_statefuns.c"
    }
  ]
}
