)]}'
{
  "commit": "07153c6ec074257ade76a461429b567cff2b3a1e",
  "tree": "ca918b6b18835b650ad4a9fed8bc08b1e6c6d273",
  "parents": [
    "8430eac2f6a3c2adce22d490e2ab8bb50d59077a"
  ],
  "author": {
    "name": "Jozsef Kadlecsik",
    "email": "kadlec@blackhole.kfki.hu",
    "time": "Tue Apr 03 22:02:01 2012 +0200"
  },
  "committer": {
    "name": "Pablo Neira Ayuso",
    "email": "pablo@netfilter.org",
    "time": "Tue Apr 10 12:50:49 2012 +0200"
  },
  "message": "netfilter: nf_ct_ipv4: packets with wrong ihl are invalid\n\nIt was reported that the Linux kernel sometimes logs:\n\nklogd: [2629147.402413] kernel BUG at net / netfilter /\nnf_conntrack_proto_tcp.c: 447!\nklogd: [1072212.887368] kernel BUG at net / netfilter /\nnf_conntrack_proto_tcp.c: 392\n\nipv4_get_l4proto() in nf_conntrack_l3proto_ipv4.c and tcp_error() in\nnf_conntrack_proto_tcp.c should catch malformed packets, so the errors\nat the indicated lines - TCP options parsing - should not happen.\nHowever, tcp_error() relies on the \"dataoff\" offset to the TCP header,\ncalculated by ipv4_get_l4proto().  But ipv4_get_l4proto() does not check\nbogus ihl values in IPv4 packets, which then can slip through tcp_error()\nand get caught at the TCP options parsing routines.\n\nThe patch fixes ipv4_get_l4proto() by invalidating packets with bogus\nihl value.\n\nThe patch closes netfilter bugzilla id 771.\n\nSigned-off-by: Jozsef Kadlecsik \u003ckadlec@blackhole.kfki.hu\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "750b06afd20e9ba81a9ba3c2593b49e1a4481145",
      "old_mode": 33188,
      "old_path": "net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c",
      "new_id": "cf73cc70ed2d2e1bfe1a5c837bc9993358e9904e",
      "new_mode": 33188,
      "new_path": "net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c"
    }
  ]
}
