)]}'
{
  "commit": "d720ee298ff7ef1495e6f39cd751dd4bab1be85d",
  "tree": "47f3b26fe64f75e6e713369cc8fee234840634ef",
  "parents": [
    "f72299da3e1a010a3d77fbed0b9ee6abd0a19911"
  ],
  "author": {
    "name": "Hannes Frederic Sowa",
    "email": "hannes@stressinduktion.org",
    "time": "Sat Sep 21 06:27:00 2013 +0200"
  },
  "committer": {
    "name": "Greg Kroah-Hartman",
    "email": "gregkh@linuxfoundation.org",
    "time": "Sun Oct 13 15:42:48 2013 -0700"
  },
  "message": "ipv6: udp packets following an UFO enqueued packet need also be handled by UFO\n\n[ Upstream commit 2811ebac2521ceac84f2bdae402455baa6a7fb47 ]\n\nIn the following scenario the socket is corked:\nIf the first UDP packet is larger then the mtu we try to append it to the\nwrite queue via ip6_ufo_append_data. A following packet, which is smaller\nthan the mtu would be appended to the already queued up gso-skb via\nplain ip6_append_data. This causes random memory corruptions.\n\nIn ip6_ufo_append_data we also have to be careful to not queue up the\nsame skb multiple times. So setup the gso frame only when no first skb\nis available.\n\nThis also fixes a shortcoming where we add the current packet\u0027s length to\ncork-\u003elength but return early because of a packet \u003e mtu with dontfrag set\n(instead of sutracting it again).\n\nFound with trinity.\n\nCc: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: Hannes Frederic Sowa \u003channes@stressinduktion.org\u003e\nReported-by: Dmitry Vyukov \u003cdvyukov@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d6b9d56b5ec30bfdd0ab4e0d56b4e89681ea6f7b",
      "old_mode": 33188,
      "old_path": "net/ipv6/ip6_output.c",
      "new_id": "1acfb19cb57039a5bbd690868bacee05f508b5f2",
      "new_mode": 33188,
      "new_path": "net/ipv6/ip6_output.c"
    }
  ]
}
