)]}'
{
  "log": [
    {
      "commit": "18e1d836002ad970f42736bad09b7be9cfe99545",
      "tree": "2e704da1e24eba0f1a09d4b983a34bcc5b51f29d",
      "parents": [
        "e0bcfb0c6a6ed9ebd68746b306298dc5797fd426"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Sat Jul 26 11:59:10 2008 +0100"
      },
      "committer": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sat Jul 26 11:59:10 2008 +0100"
      },
      "message": "dccp: Fix incorrect length check for ICMPv4 packets\n\nUnlike TCP, which only needs 8 octets of original packet data, DCCP requires\nminimally 12 or 16 bytes for ICMP-payload sequence number checks.\n\nThis patch replaces the insufficient length constant of 8 with a two-stage\ntest, making sure that 12 bytes are available, before computing the basic\nheader length required for sequence number checks.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\n"
    },
    {
      "commit": "d68f0866f76e2bc4ddc07e88e2cb1bc8959a6d7e",
      "tree": "2cab08fd8de1c81c6d5a545a5b2aa96743cb6862",
      "parents": [
        "73f18fdbca3f92b90aeaee16f5175fe30496e218"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Sat Jul 26 11:59:10 2008 +0100"
      },
      "committer": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sat Jul 26 11:59:10 2008 +0100"
      },
      "message": "dccp: Fix sequence number check for ICMPv4 packets\n\nThe payload of ICMP message is a part of the packet sent by ourself,\nso the sequence number check must use AWL and AWH, not SWL and SWH.\n\nFor example:\n     Endpoint A                  Endpoint B\n\n     DATA-ACK       --------\u003e\n     (SEQ\u003dX)\n                    \u003c--------    ICMP (Fragmentation Needed)\n                                 (SEQ\u003dX)\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nAcked-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\n"
    },
    {
      "commit": "547b792cac0a038b9dbf958d3c120df3740b5572",
      "tree": "08554d083b0ca7d65739dc1ce12f9b12a9b8e1f8",
      "parents": [
        "53e5e96ec18da6f65e89f05674711e1c93d8df67"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Fri Jul 25 21:43:18 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 25 21:43:18 2008 -0700"
      },
      "message": "net: convert BUG_TRAP to generic WARN_ON\n\nRemoves legacy reinvent-the-wheel type thing. The generic\nmachinery integrates much better to automated debugging aids\nsuch as kerneloops.org (and others), and is unambiguous due to\nbetter naming. Non-intuively BUG_TRAP() is actually equal to\nWARN_ON() rather than BUG_ON() though some might actually be\npromoted to BUG_ON() but I left that to future.\n\nI could make at least one BUILD_BUG_ON conversion.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "de0744af1fe2d0a3d428f6af0f2fe1f6179b1a9c",
      "tree": "68d02820b1aa13e8fa9743c0ece5930a13d5a205",
      "parents": [
        "4e6734447dbc7a0a85e09616821c0782d9fb1141"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Jul 16 20:31:16 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 16 20:31:16 2008 -0700"
      },
      "message": "mib: add net to NET_INC_STATS_BH\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7c73a6faffae0bfae70639113aecf06af666e714",
      "tree": "3d7910c4674b673b061f3168b140454b1950c346",
      "parents": [
        "5e38e270444f2629de7a706b5a9ca1b333d14517"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Jul 16 20:20:11 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 16 20:20:11 2008 -0700"
      },
      "message": "mib: add net to IP_INC_STATS_BH\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dcfc23cac103b54dbc00a6f52f47656ad5c75844",
      "tree": "f9a61572791da6c37a50a2d17b73b5f89a6b5fc4",
      "parents": [
        "75c939bb4d6da790f758a2a3dcc7432f6d8778ee"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Jul 14 23:03:00 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 14 23:05:29 2008 -0700"
      },
      "message": "mib: add struct net to ICMP_INC_STATS_BH\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fd54d716b1f6a3551ec17a4bb34027727b2db09a",
      "tree": "c8afca51e9292740d3d2261e8a3f95e65a1135ee",
      "parents": [
        "0388b0042624714e6f8db8cc7994101a0a02d392"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Jul 14 23:01:40 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 14 23:05:26 2008 -0700"
      },
      "message": "inet: toss struct net initialization around\n\nSome places, that deal with ICMP statistics already have where\nto get a struct net from, but use it directly, without declaring\na separate variable on the stack.\n\nSince I will need this net soon, I declare a struct net on the\nstack and use it in the existing places in a separate patch not\nto spoil the future ones.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ce4a7d0d48bbaed78ccbb0bafb9229651a40303a",
      "tree": "df8770ef69c71a0d6935154add3ff3f4bb8dbc3a",
      "parents": [
        "45d465bc237ab1e1ebb4c65b9b318830dafb7509"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Jun 10 12:39:35 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 10 12:39:35 2008 -0700"
      },
      "message": "inet{6}_request_sock: Init -\u003eopt and -\u003epktopts in the constructor\n\nWei Yongjun noticed that we may call reqsk_free on request sock objects where\nthe opt fields may not be initialized, fix it by introducing inet_reqsk_alloc\nwhere we initialize -\u003eopt to NULL and set -\u003epktopts to NULL in\ninet6_reqsk_alloc.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6079a463cf95fafcc704a4e5e92a4da12444bd3c",
      "tree": "00080f77f8bef52b78cdbb8762c2625dac18b4fc",
      "parents": [
        "289c79a4bd350e8a25065102563ad1a183d1b402"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Tue May 27 06:22:38 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 27 06:22:38 2008 -0700"
      },
      "message": "dccp: Fix to handle short sequence numbers packet correctly\n\nRFC4340 said:\n  8.5.  Pseudocode\n       ...\n       If P.type is not Data, Ack, or DataAck and P.X \u003d\u003d 0 (the packet\n             has short sequence numbers), drop packet and return\n\nBut DCCP has some mistake to handle short sequence numbers packet, now\nit drop packet only if P.type is Data, Ack, or DataAck and P.X \u003d\u003d 0.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nAcked-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "13f51d82acb003918d71ce4639ae77fceaa58cad",
      "tree": "cdb06ee7338e197ac449bf2439ccb270ae5861bf",
      "parents": [
        "df39e8ba56a788733d369068c7319e04b1da3cd5"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Apr 14 02:38:45 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 14 02:38:45 2008 -0700"
      },
      "message": "[DCCP]: Fix comment about control sockets.\n\nThese sockets now have a bit other names and are no longer global.\n\nShame on me, I haven\u0027t provided a good comment for this when\nsending DCCP netnsization patches.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "df39e8ba56a788733d369068c7319e04b1da3cd5",
      "tree": "1e9be853bdb455e341cdbf957656f342cfa2eb9e",
      "parents": [
        "f5572855ec492334d8c3ec0e0e86c31865d5cf07",
        "159d83363b629c91d020734207c1bc788b96af5a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 14 02:30:23 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 14 02:30:23 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/ehea/ehea_main.c\n\tdrivers/net/wireless/iwlwifi/Kconfig\n\tdrivers/net/wireless/rt2x00/rt61pci.c\n\tnet/ipv4/inet_timewait_sock.c\n\tnet/ipv6/raw.c\n\tnet/mac80211/ieee80211_sta.c\n"
    },
    {
      "commit": "fc5f8580d31d52890f17526ea739b124bd4e56f4",
      "tree": "dddbaef88fca366dcff053af94e75c97cec12a09",
      "parents": [
        "b9901a84c98fe27c6a598c0f3ec944a7f17a5f97"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sun Apr 13 22:31:05 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 13 22:31:05 2008 -0700"
      },
      "message": "[NETNS][DCCPV4]: Enable DCCPv4 in net namespaces.\n\nThis enables sockets creation with IPPROTO_DCCP and enables\nthe ip level to pass DCCP packets to the DCCP level.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b9901a84c98fe27c6a598c0f3ec944a7f17a5f97",
      "tree": "42e43b306154705ee17ccb350914e486308040ca",
      "parents": [
        "f54873982c6aac9bc5c7eef62a9ce4d52b1dfc19"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sun Apr 13 22:30:43 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 13 22:30:43 2008 -0700"
      },
      "message": "[NETNS][DCCPV4]: Make per-net socket lookup.\n\nThe inet_lookup family of functions requires a net to lookup\na socket in, so give a proper one to them.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f54873982c6aac9bc5c7eef62a9ce4d52b1dfc19",
      "tree": "df285d76f0ada79cd588f607a276757b2a4630ec",
      "parents": [
        "b76c4b27fee9c88294d3152784291fc6f6d23401"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sun Apr 13 22:30:19 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 13 22:30:19 2008 -0700"
      },
      "message": "[NETNS][DCCPV4]: Use proper net to route the reset packet.\n\nThe dccp_v4_route_skb used in dccp_v4_ctl_send_reset, currently\nworks with init_net\u0027s routing tables - fix it.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b76c4b27fee9c88294d3152784291fc6f6d23401",
      "tree": "afdaf5706f8d930d9ac5441ebdb6245e1a136fa7",
      "parents": [
        "7b1cffa8c90269dc3dc721d084d1e0d742d87c31"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sun Apr 13 22:29:59 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 13 22:29:59 2008 -0700"
      },
      "message": "[NETNS][DCCPV4]: Actually create ctl socket on each net and use it.\n\nMove the call to inet_ctl_sock_create to init callback (and\ninet_ctl_sock_destroy to exit one) and use proper ctl sock\nin dccp_v4_ctl_send_reset.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7b1cffa8c90269dc3dc721d084d1e0d742d87c31",
      "tree": "790914a5574a2cf33a7ee3672629bf0a31f77b71",
      "parents": [
        "72a2d6138224298a576bcdc33d7d0004de604856"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sun Apr 13 22:29:37 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 13 22:29:37 2008 -0700"
      },
      "message": "[NETNS][DCCPV4]: Move the dccp_v4_ctl_sk on the struct net.\n\nAnd replace all its usage with init_net\u0027s socket.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "72a2d6138224298a576bcdc33d7d0004de604856",
      "tree": "f2bebe6490dd58214140046945d55c8519aa44e0",
      "parents": [
        "67019cc9ee3f4868c8e5e493b2873c4722306019"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sun Apr 13 22:29:13 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 13 22:29:13 2008 -0700"
      },
      "message": "[NETNS][DCCPV4]: Add dummy per-net operations.\n\nThey will be responsible for ctl socket initialization, but\ncurrently they are void.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "028b027524b162eef90839a92ba4b8bddf23e06c",
      "tree": "5c128717f73ff6fb93c361cfae6961267ed52082",
      "parents": [
        "ae1b6a31b1f9ef2c7ba5ef89799f210a9ba6937c"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Apr 12 18:35:41 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 12 18:35:41 2008 -0700"
      },
      "message": "[DCCP]: Fix skb-\u003ecb conflicts with IP\n\ndev_queue_xmit() and the other IP output functions expect to get a skb\nwith clear or properly initialized skb-\u003ecb. Unlike TCP and UDP, the\ndccp_skb_cb doesn\u0027t contain a struct inet_skb_parm at the beginning,\nso the DCCP-specific data is interpreted by the IP output functions.\nThis can cause false negatives for the conditional POST_ROUTING hook\ninvocation, making the packet bypass the hook.\n\nAdd a inet_skb_parm/inet6_skb_parm union to the beginning of\ndccp_skb_cb to avoid clashes. Also add a BUILD_BUG_ON to make\nsure it fits in the cb.\n\n[ Combined with patch from Gerrit Renker to remove two now unnecessary\n  memsets of IPCB(skb)-\u003eopt ]\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5677242f432102dea9e6eceec1dc089e2f709ca4",
      "tree": "73036437b91f2e8cd5427be48a588bff3af587eb",
      "parents": [
        "eee4fe4ded6e9c196168aee8f9787771f4df9c90"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Thu Apr 03 14:28:30 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 03 14:28:30 2008 -0700"
      },
      "message": "[NETNS]: Inet control socket should not hold a namespace.\n\nThis is a generic requirement, so make inet_ctl_sock_create namespace\naware and create a inet_ctl_sock_destroy wrapper around\nsk_release_kernel.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eee4fe4ded6e9c196168aee8f9787771f4df9c90",
      "tree": "271a5837eef0a7f25bf7c8e1e36f413271dd70c7",
      "parents": [
        "8258175c811440e93baa15ab1962a5905686dda3"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Thu Apr 03 14:27:58 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 03 14:27:58 2008 -0700"
      },
      "message": "[INET]: Let inet_ctl_sock_create return sock rather than socket.\n\nAll upper protocol layers are already use sock internally.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3d58b5fa8e4c461ab09afdacd3d1754fccca06ad",
      "tree": "b5793c1cc2f0d41657c5e5d101cc00e07c515a60",
      "parents": [
        "4f049b4f33d07bd11335c3a074ebef14213a3e37"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Thu Apr 03 14:22:32 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 03 14:22:32 2008 -0700"
      },
      "message": "[INET]: Rename inet_csk_ctl_sock_create to inet_ctl_sock_create.\n\nThis call is nothing common with INET connection sockets code. It\nsimply creates an unhashes kernel sockets for protocol messages.\n\nMove the new call into af_inet.c after the rename.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4f049b4f33d07bd11335c3a074ebef14213a3e37",
      "tree": "01b9ce8cee9e75cf69269779b457c82b4c32cb77",
      "parents": [
        "7630f026810a63464e47391ab1e03674c33eb1b8"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Thu Apr 03 14:21:33 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 03 14:21:33 2008 -0700"
      },
      "message": "[DCCP]: dccp_v(4|6)_ctl_socket is leaked.\n\nThis seems a purism as module can\u0027t be unloaded, but though if cleanup\nmethod is present it should be correct and clean all staff created.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7630f026810a63464e47391ab1e03674c33eb1b8",
      "tree": "05ff3b2f6a750e659de4484c4b825953ecce1659",
      "parents": [
        "14c0c8e8e0fb85e7a57e88606c009377746b39d9"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Thu Apr 03 14:20:52 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 03 14:20:52 2008 -0700"
      },
      "message": "[DCCP]: Replace socket with sock for reset sending.\n\nReplace dccp_v(4|6)_ctl_socket with sock to unify a code with TCP/ICMP.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bdcde3d71a67e97f25e851f3ca97c9bb5ef03e7f",
      "tree": "eab4a66777582718ffe2eff9038324331106ec18",
      "parents": [
        "60e7663d462af3994f292cb3691ea4f7371a9220"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Mar 28 16:39:33 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 28 16:39:33 2008 -0700"
      },
      "message": "[SOCK]: Drop inuse pcounter from struct proto (v2).\n\nAn uppercut - do not use the pcounter on struct proto.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "39d8cda76cfb1178455f9d196b39e773878e6c05",
      "tree": "b58af892ccb3fd232078a87148c1dc9622be0c84",
      "parents": [
        "22aba383ce52f8ca8740f9a74dc66b1b68138813"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sat Mar 22 16:50:58 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 22 16:50:58 2008 -0700"
      },
      "message": "[SOCK]: Add udp_hash member to struct proto.\n\nInspired by the commit ab1e0a13 ([SOCK] proto: Add hashinfo member to \nstruct proto) from Arnaldo, I made similar thing for UDP/-Lite IPv4 \nand -v6 protocols.\n\nThe result is not that exciting, but it removes some levels of\nindirection in udpxxx_get_port and saves some space in code and text.\n\nThe first step is to union existing hashinfo and new udp_hash on the\nstruct proto and give a name to this union, since future initialization \nof tcpxxx_prot, dccp_vx_protinfo and udpxxx_protinfo will cause gcc \nwarning about inability to initialize anonymous member this way.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ee6b967301b4aa5d4a4b61e2f682f086266db9fb",
      "tree": "197c2430f87733dc80d00d1971f1be2a0e562358",
      "parents": [
        "a05c44f6d5fb6cd29da04f96bf5ffaa05f545ac5"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Wed Mar 05 18:30:47 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 05 18:30:47 2008 -0800"
      },
      "message": "[IPV4]: Add \u0027rtable\u0027 field in struct sk_buff to alias \u0027dst\u0027 and avoid casts\n\n(Anonymous) unions can help us to avoid ugly casts.\n\nA common cast it the (struct rtable *)skb-\u003edst one.\n\nDefining an union like  :\nunion {\n     struct dst_entry *dst;\n     struct rtable *rtable;\n};\npermits to use skb-\u003ertable in place.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fd80eb942ad9761f241c9b287b3b9a342b20690d",
      "tree": "664b7a2351dab82419ccf7fa91e6f89ede52065c",
      "parents": [
        "58fbbed4fbc0094fc808a568fe99a915f85402ee"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Fri Feb 29 11:43:03 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 29 11:43:03 2008 -0800"
      },
      "message": "[INET]: Remove struct dst_entry *dst from request_sock_ops.rtx_syn_ack.\n\nIt looks like dst parameter is used in this API due to historical\nreasons.  Actually, it is really used in the direct call to\ntcp_v4_send_synack only.  So, create a wrapper for tcp_v4_send_synack\nand remove dst from rtx_syn_ack.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ab1e0a13d70299e792fd0527cefd070c1405fa5b",
      "tree": "d470e7b94b0e33ea59b12713366f1bee0b94f78c",
      "parents": [
        "9dc7f30e3bac329998a2a9bb814bd0abc7cb58e2"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun Feb 03 04:06:04 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 03 04:28:52 2008 -0800"
      },
      "message": "[SOCK] proto: Add hashinfo member to struct proto\n\nThis way we can remove TCP and DCCP specific versions of\n\nsk-\u003esk_prot-\u003eget_port: both v4 and v6 use inet_csk_get_port\nsk-\u003esk_prot-\u003ehash:     inet_hash is directly used, only v6 need\n                       a specific version to deal with mapped sockets\nsk-\u003esk_prot-\u003eunhash:   both v4 and v6 use inet_hash directly\n\nstruct inet_connection_sock_af_ops also gets a new member, bind_conflict, so\nthat inet_csk_get_port can find the per family routine.\n\nNow only the lookup routines receive as a parameter a struct inet_hashtable.\n\nWith this we further reuse code, reducing the difference among INET transport\nprotocols.\n\nEventually work has to be done on UDP and SCTP to make them share this\ninfrastructure and get as a bonus inet_diag interfaces so that iproute can be\nused with these protocols.\n\nnet-2.6/net/ipv4/inet_hashtables.c:\n  struct proto\t\t\t     |   +8\n  struct inet_connection_sock_af_ops |   +8\n 2 structs changed\n  __inet_hash_nolisten               |  +18\n  __inet_hash                        | -210\n  inet_put_port                      |   +8\n  inet_bind_bucket_create            |   +1\n  __inet_hash_connect                |   -8\n 5 functions changed, 27 bytes added, 218 bytes removed, diff: -191\n\nnet-2.6/net/core/sock.c:\n  proto_seq_show                     |   +3\n 1 function changed, 3 bytes added, diff: +3\n\nnet-2.6/net/ipv4/inet_connection_sock.c:\n  inet_csk_get_port                  |  +15\n 1 function changed, 15 bytes added, diff: +15\n\nnet-2.6/net/ipv4/tcp.c:\n  tcp_set_state                      |   -7\n 1 function changed, 7 bytes removed, diff: -7\n\nnet-2.6/net/ipv4/tcp_ipv4.c:\n  tcp_v4_get_port                    |  -31\n  tcp_v4_hash                        |  -48\n  tcp_v4_destroy_sock                |   -7\n  tcp_v4_syn_recv_sock               |   -2\n  tcp_unhash                         | -179\n 5 functions changed, 267 bytes removed, diff: -267\n\nnet-2.6/net/ipv6/inet6_hashtables.c:\n  __inet6_hash |   +8\n 1 function changed, 8 bytes added, diff: +8\n\nnet-2.6/net/ipv4/inet_hashtables.c:\n  inet_unhash                        | +190\n  inet_hash                          | +242\n 2 functions changed, 432 bytes added, diff: +432\n\nvmlinux:\n 16 functions changed, 485 bytes added, 492 bytes removed, diff: -7\n\n/home/acme/git/net-2.6/net/ipv6/tcp_ipv6.c:\n  tcp_v6_get_port                    |  -31\n  tcp_v6_hash                        |   -7\n  tcp_v6_syn_recv_sock               |   -9\n 3 functions changed, 47 bytes removed, diff: -47\n\n/home/acme/git/net-2.6/net/dccp/proto.c:\n  dccp_destroy_sock                  |   -7\n  dccp_unhash                        | -179\n  dccp_hash                          |  -49\n  dccp_set_state                     |   -7\n  dccp_done                          |   +1\n 5 functions changed, 1 bytes added, 242 bytes removed, diff: -241\n\n/home/acme/git/net-2.6/net/dccp/ipv4.c:\n  dccp_v4_get_port                   |  -31\n  dccp_v4_request_recv_sock          |   -2\n 2 functions changed, 33 bytes removed, diff: -33\n\n/home/acme/git/net-2.6/net/dccp/ipv6.c:\n  dccp_v6_get_port                   |  -31\n  dccp_v6_hash                       |   -7\n  dccp_v6_request_recv_sock          |   +5\n 3 functions changed, 5 bytes added, 38 bytes removed, diff: -33\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c67499c0e772064b37ad75eb69b28fc218752636",
      "tree": "7d2873308f16080c0c3801d6024881360dd8e196",
      "parents": [
        "941b1d22cc035ad58b3d9b44a1c74efac2d7e499"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Jan 31 05:06:40 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 31 19:28:19 2008 -0800"
      },
      "message": "[NETNS]: Tcp-v4 sockets per-net lookup.\n\nAdd a net argument to inet_lookup and propagate it further\ninto lookup calls. Plus tune the __inet_check_established.\n\nThe dccp and inet_diag, which use that lookup functions\npass the init_net into them.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f1b050bf7a88910f9f00c9c8989c1bf5a67dd140",
      "tree": "37e8dce4268cb657a75e5074a38db48264f1e42f",
      "parents": [
        "611c183ebcb5af384df3a4ddb391034a1b6ac255"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Jan 22 22:07:10 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 15:11:06 2008 -0800"
      },
      "message": "[NETNS]: Add namespace parameter to ip_route_output_flow.\n\nNeeded to propagate it down to the __ip_route_output_key.\n\nSigned_off_by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "152da81deb9a4870aeac352336184b2b14d4b2ba",
      "tree": "63db8e49be92e7f23667d8c3356177840287118f",
      "parents": [
        "d6701191329b51793bc56724548f0863d2149c29"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Dec 20 15:31:33 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:59:26 2008 -0800"
      },
      "message": "[INET]: Uninline the __inet_hash function.\n\nThis one is used in quite many places in the networking code and\nseems to big to be inline.\n\nAfter the patch net/ipv4/build-in.o loses ~650 bytes:\nadd/remove: 2/0 grow/shrink: 0/5 up/down: 461/-1114 (-653)\nfunction                                     old     new   delta\n__inet_hash_nolisten                           -     282    +282\n__inet_hash                                    -     179    +179\ntcp_sacktag_write_queue                     2255    2254      -1\n__inet_lookup_listener                       284     274     -10\ntcp_v4_syn_recv_sock                         755     493    -262\ntcp_v4_hash                                  389      35    -354\ninet_hash_connect                           1086     599    -487\n\nThis version addresses the issue pointed by Eric, that\nwhile being inline this function was optimized by gcc\nin respect to the \u0027listen_possible\u0027 argument.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8b819412481494fb6861c08d360b75fabcbbfbbf",
      "tree": "ddd9f976f051fb5cff794992b38613bbbfcb9cc1",
      "parents": [
        "7913350663e2756ecb91dd3a7c773806b943426e"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Thu Dec 13 12:29:24 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:57:50 2008 -0800"
      },
      "message": "[DCCP]: Allow to parse options on Request Sockets\n\nThe option parsing code currently only parses on full sk\u0027s. This causes a problem for\noptions sent during the initial handshake (in particular timestamps and feature-negotiation\noptions). Therefore, this patch extends the option parsing code with an additional argument\nfor request_socks: if it is non-NULL, options are parsed on the request socket, otherwise\nthe normal path (parsing on the sk) is used.\n\nSubsequent patches, which implement feature negotiation during connection setup, make use\nof this facility.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c62cf5cb173a5b8446e513a14448460cad435db2",
      "tree": "a9726aa7f820347e7022eb5bcaeafc85f3ca139f",
      "parents": [
        "8295b6d9e623879344ed0ca7565336e4fd698e42"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Nov 05 23:42:25 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Nov 07 04:09:01 2007 -0800"
      },
      "message": "[DCCP]: Use DEFINE_PROTO_INUSE infrastructure.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1238d0873b29f7a2de75d576b4cc706c1c75ffbf",
      "tree": "350b9d10cca89994bd44a0b96ca665419f2d2c7a",
      "parents": [
        "fde20105f332614b23a3131d706cd90bdd7db72d"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Oct 24 10:18:06 2007 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Wed Oct 24 10:18:06 2007 -0200"
      },
      "message": "[DCCP]: One more exemption from full sequence number checks\n\nThis fixes the following problem: client connects to peer which has no DCCP\nenabled or loaded; ICMP error messages (\"Protocol Unavailable\") can be seen\non the wire, but the application hangs. Reason: ICMP packets don\u0027t get through\nto dccp_v4_err.\n\nWhen reporting errors, a sequence number check is made for the DCCP packet\nthat had caused an ICMP error to arrive.\nSuch checks can not be made if the socket is in state LISTEN, RESPOND (which\nin the implementation is the same as LISTEN), or REQUEST, since update_gsr()\nhas not been called in these states, hence the sequence window is 0..0.\n\nThis patch fixes the problem by adding the REQUEST state as another exemption\nto the window check. The error reporting now works as expected on connecting.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\n"
    },
    {
      "commit": "fde20105f332614b23a3131d706cd90bdd7db72d",
      "tree": "217c186a8c038a7a6d7bcc775081f9566b903e36",
      "parents": [
        "03cf786c4e83dba404ad23ca58f49147ae52dffd"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Oct 24 10:12:09 2007 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Wed Oct 24 10:12:09 2007 -0200"
      },
      "message": "[DCCP]: Retrieve packet sequence number for error reporting\n\nThis fixes a problem when analysing erroneous packets in dccp_v{4,6}_err:\n* dccp_hdr_seq currently takes an skb\n* however, the transport headers in the skb are shifted, due to the\n  preceding IPv4/v6 header.\nFixed for v4 and v6 by changing dccp_hdr_seq to take a struct dccp_hdr as\nargument. Verified that the correct sequence number is now reported in the\nerror handler.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "7131c6c73656b92aea806c6e688e97aa49ff911e",
      "tree": "33b3395b6c77b2ecfe9511e46ec266098b6a7473",
      "parents": [
        "305e1e96911417d8cda2699f6a20a6f434616a8c"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "jdelvare@suse.de",
        "time": "Sun Oct 21 16:45:03 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Oct 22 02:59:54 2007 -0700"
      },
      "message": "[INET]: Use MODULE_ALIAS_NET_PF_PROTO_TYPE where possible.\n\nNow that we have this new macro, use it where possible.\n\nSigned-off-by: Jean Delvare \u003cjdelvare@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4a5409a5a850c84505d658ddf36f98b2c542ec07",
      "tree": "2cc197e3e942513eca7126bac67ea67dafbacc79",
      "parents": [
        "2bfd754d1bf29d3324270e52ef11ce6367bb0685"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Thu Oct 04 14:52:28 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:54:38 2007 -0700"
      },
      "message": "[DCCP]: Twice the wrong reset code in receiving connection-Requests\n\nThis fixes two bugs in processing of connection-Requests in\nv{4,6}_conn_request:\n\n 1. Due to using the variable `reset_code\u0027, the Reset code generated\n    internally by dccp_parse_options() is overwritten with the\n    initialised value (\"Too Busy\") of reset_code, which is not what is\n    intended.\n\n 2. When receiving a connection-Request on a multicast or broadcast\n    address, no Reset should be generated, to avoid storms of such\n    packets. Instead of jumping to the `drop\u0027 label, the\n    v{4,6}_conn_request functions now return 0. Below is why in my\n    understanding this is correct:\n\n    When the conn_request function returns \u003c 0, then the caller,\n    dccp_rcv_state_process(), returns 1. In all instances where\n    dccp_rcv_state_process is called (dccp_v4_do_rcv, dccp_v6_do_rcv,\n    and dccp_child_process), a return value of !\u003d 0 from\n    dccp_rcv_state_process() means that a Reset is generated.\n\n    If on the other hand the conn_request function returns 0, the\n    packet is discarded and no Reset is generated.\n\nNote: There may be a related problem when sending the Response, due to\nthe following.\n\n\tif (dccp_v6_send_response(sk, req, NULL))\n\t\tgoto drop_and_free;\n\t/* ... */\n\tdrop_and_free:\n\t\treturn -1;\n\nIn this case, if send_response fails due to transmission errors, the\nnext thing that is generated is a Reset with a code \"Too Busy\". I\nhaven\u0027t been able to conjure up such a condition, but it might be good\nto change the behaviour here also (not done by this patch).\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e356d37a096a990ea1a74c44c15640122e56110b",
      "tree": "174fea2bce6bbd6d6001c7ea1b0bb914053571d0",
      "parents": [
        "9bf55cda9b2487fa7316dad3880acb0031ad3c0f"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Sep 26 14:35:19 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:52:44 2007 -0700"
      },
      "message": "[DCCP]: Factor out common code for generating Resets\n\nThis factors code common to dccp_v{4,6}_ctl_send_reset into a separate function,\nand adds support for filling in the Data 1 ... Data 3 fields from RFC 4340, 5.6.\n\nIt is useful to have this separate, since the following Reset codes will always\nbe generated from the control socket rather than via dccp_send_reset:\n * Code 3, \"No Connection\", cf. 8.3.1;\n * Code 4, \"Packet Error\" (identification for Data 1 added);\n * Code 5, \"Option Error\" (identification for Data 1..3 added, will be used later);\n * Code 6, \"Mandatory Error\" (same as Option Error);\n * Code 7, \"Connection Refused\" (what on Earth is the difference to \"No Connection\"?);\n * Code 8, \"Bad Service Code\";\n * Code 9, \"Too Busy\";\n * Code 10, \"Bad Init Cookie\" (not used).\n\nCode 0 is not recommended by the RFC, the following codes would be used in\ndccp_send_reset() instead, since they all relate to an established DCCP connection:\n * Code 1, \"Closed\";\n * Code 2, \"Aborted\";\n * Code 11, \"Aggression Penalty\" (12.3).\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\n"
    },
    {
      "commit": "9bf55cda9b2487fa7316dad3880acb0031ad3c0f",
      "tree": "ed4e30691351b9d59583f17a6811f14d0fbcb9e1",
      "parents": [
        "a94f0f970549e63e54c80c4509db299c514d8c11"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Sep 26 11:32:49 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:52:43 2007 -0700"
      },
      "message": "[DCCP]: Sequence number wrap-around when sending reset\n\nThis replaces normal addition with mod-48 addition so that sequence number\nwraparound is respected.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\n"
    },
    {
      "commit": "c7261872256f9172eb26438b96725b6f2115e955",
      "tree": "17988b691ca95e81a6c4f1da83f9759a654c548a",
      "parents": [
        "1dfcae776548f464bee793d06484be275ba8efe7"
      ],
      "author": {
        "name": "Micah Gruber",
        "email": "micah.gruber@gmail.com",
        "time": "Wed Sep 05 07:58:14 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:48:59 2007 -0700"
      },
      "message": "[DCCP]: Remove unneeded pointer newdp from dccp_v4_request_recv_sock()\n\nThis trivial patch removes the unneeded pointer newdp, which is never used.\n\nSigned-off-by: Micah Gruber \u003cmicah.gruber@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "88c7664f13bd1a36acb8566b93892a4c58759ac6",
      "tree": "18ead610bf54ef87f3832c61d64a4bad30d4f78e",
      "parents": [
        "4bedb45203eab92a87b4c863fe2d0cded633427f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Mar 13 14:43:18 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:23 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce icmp_hdr(), remove skb-\u003eh.icmph\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eddc9ec53be2ecdbf4efe0efd4a83052594f0ac0",
      "tree": "4a38ab4dbd9d61fdf5a5ea6ed61463e0b9e33ba7",
      "parents": [
        "e023dd643798c4f06c16466af90b4d250e4b8bd7"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Apr 20 22:47:35 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:10 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce ip_hdr(), remove skb-\u003enh.iph\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c9eaf17341834de00351bf79f16b2d879c8aea96",
      "tree": "d8b2005197444fa6b6bdf8e8c8fd6eaf2db9ecd7",
      "parents": [
        "4ec93edb14fe5fdee9fae6335f2cbba204627eac"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Feb 09 23:24:38 2007 +0900"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 10 23:19:27 2007 -0800"
      },
      "message": "[NET] DCCP: Fix whitespace errors.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8eb9086f21c73b38b5ca27558db4c91d62d0e70b",
      "tree": "1fa2694f1e5eac966cc8db2fb8d5f3d684b09803",
      "parents": [
        "ba7808eac17360dda459f82222859b0e3879854b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 02:09:21 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 12:38:45 2007 -0800"
      },
      "message": "[IPV4/IPV6]: Always wait for IPSEC SA resolution in socket contexts.\n\nDo this even for non-blocking sockets.  This avoids the silly -EAGAIN\nthat applications can see now, even for non-blocking sockets in some\ncases (f.e. connect()).\n\nWith help from Venkat Tekkirala.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8109b02b5397ed52a32c116163a62a34f4768b26",
      "tree": "0dbeae8cc999d2f6b71807b942eda7ff686ba7d2",
      "parents": [
        "1fba78b6cba14bd37fdb12c5367f1e4d58ff2e0f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Sun Dec 10 16:01:18 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:35:00 2006 -0800"
      },
      "message": "[DCCP]: Whitespace cleanups\n\nThat accumulated over the last months hackaton, shame on me for not\nusing git-apply whitespace helping hand, will do that from now on.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "59348b19efebfd6a8d0791ff81d207b16594c94b",
      "tree": "a9212a7bf62bd594cf02d23b9e33eb45a46d414d",
      "parents": [
        "b1308dc015eb09cf094ca169296738a13ae049ad"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Mon Nov 20 18:39:23 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:24:38 2006 -0800"
      },
      "message": "[DCCP]: Simplified conditions due to use of enum:8 states\n\nThis reaps the benefit of the earlier patch, which changed the type of\nCCID 3 states to use enums, in that many conditions are now simplified\nand the number of possible (unexpected) values is greatly reduced.\n\nIn a few instances, this also allowed to simplify pre-conditions; where\ncare has been taken to retain logical equivalence.\n\n[DCCP]: Introduce a consistent BUG/WARN message scheme\n\nThis refines the existing set of DCCP messages so that\n * BUG(), BUG_ON(), WARN_ON() have meaningful DCCP-specific counterparts\n * DCCP_CRIT (for severe warnings) is not rate-limited\n * DCCP_WARN() is introduced as rate-limited wrapper\n\nUsing these allows a faster and cleaner transition to their original\ncounterparts once the code has matured into a full DCCP implementation.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "58a5a7b9555ea231b557ebef5cabeaf8e951df0b",
      "tree": "9dac36b3483e9667a967f79982c965abd707e03d",
      "parents": [
        "e523a1550e877f8a8ff87a50269b7ee7bfb43464"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Thu Nov 16 14:06:06 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:51 2006 -0800"
      },
      "message": "[NET]: Conditionally use bh_lock_sock_nested in sk_receive_skb\n\nSpotted by Ian McDonald, tentatively fixed by Gerrit Renker:\n\nhttp://www.mail-archive.com/dccp%40vger.kernel.org/msg00599.html\n\nRewritten not to unroll sk_receive_skb, in the common case, i.e. no lock\ndebugging, its optimized away.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "e523a1550e877f8a8ff87a50269b7ee7bfb43464",
      "tree": "5450113bb3e5994bac06722f1ef39631fc6129e7",
      "parents": [
        "3c6952624a8f600f9a0fbc1f5db5560a7ef9b13e"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Thu Nov 16 12:23:58 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:50 2006 -0800"
      },
      "message": "[DCCP]: One NET_INC_STATS() could be NET_INC_STATS_BH in dccp_v4_err()\n\nSpotted by Eric Dumazet in tcp_v4_rcv().\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "2bda2853150e20ca2a44627d00b5f85af0b24a42",
      "tree": "7e2b3f0de3f8fbe506e59d58b6d71bc1422dea58",
      "parents": [
        "6b11687ef003ed595033da89643c8995676f929d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:28:51 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:30 2006 -0800"
      },
      "message": "[NET]: Annotate csum_tcpudp_magic() callers in net/*\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cfb6eeb4c860592edd123fdea908d23c6ad1c7dc",
      "tree": "361c073622faa540ef6602ef1b0a6e8c0a17fc60",
      "parents": [
        "bf6bce71eae386dbc37f93af7e5ad173450d9945"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Nov 14 19:07:45 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:39 2006 -0800"
      },
      "message": "[TCP]: MD5 Signature Option (RFC2385) support.\n\nBased on implementation by Rick Payne.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "09dbc3895e3242346bd434dae743c456fd28fc6a",
      "tree": "a7bc1d0879b025152bff9e4a0ba44beaa5da654b",
      "parents": [
        "c02fdc0e81e9c735d8d895af1e201b235df326d8"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Nov 14 12:57:34 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:30 2006 -0800"
      },
      "message": "[DCCP]: Miscellaneous code tidy-ups\n\nThis patch does not change code; it performs some trivial clean/tidy-ups:\n\n  * removal of a `debug_prefix\u0027 string in favour of the\n    already existing dccp_role(sk)\n\n  * add documentation of structures and constants\n\n  * separated out the cases for invalid packets (step 1\n    of the packet validation)\n\n  * removing duplicate statements\n\n  * combining declaration \u0026 initialisation\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "b9df3cb8cf9a96e63dfdcd3056a9cbc71f2459e7",
      "tree": "46d19124b1bbfd9eaa26af3d6ba2293b4e8f326d",
      "parents": [
        "1ed176a801b83915b7c8ab80e0a2a6376a2d6051"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Nov 14 11:21:36 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:27 2006 -0800"
      },
      "message": "[TCP/DCCP]: Introduce net_xmit_eval\n\nThroughout the TCP/DCCP (and tunnelling) code, it often happens that the\nreturn code of a transmit function needs to be tested against NET_XMIT_CN\nwhich is a value that does not indicate a strict error condition.\n\nThis patch uses a macro for these recurring situations which is consistent\nwith the already existing macro net_xmit_errno, saving on duplicated code.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "d7f7365f5776723da6df73540d855069c2daaa5c",
      "tree": "cc63c8a85c4d6a768cee8da00577900215e786a8",
      "parents": [
        "865e9022d88ceedd89fa1079a6e1f9266ccd3711"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Mon Nov 13 13:34:38 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:22 2006 -0800"
      },
      "message": "[DCCPv6]: Choose a genuine initial sequence number\n\nThis\n\t* resolves a FIXME - DCCPv6 connections started all with\n\t  an initial sequence number of 1;\n\t* provides a redirection `secure_dccpv6_sequence_number\u0027\n\t  in case the init_sequence_v6 code should be updated later;\n\t* concentrates the update of S.GAR into dccp_connect_init();\n\t* removes a duplicate dccp_update_gss() in ipv4.c;\n\t* uses inet-\u003edport instead of usin-\u003esin_port, due to the\n\t  following assignment in dccp_v4_connect():\n \t\tinet-\u003edport \u003d usin-\u003esin_port;\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "865e9022d88ceedd89fa1079a6e1f9266ccd3711",
      "tree": "bc276752f832226f9a506f1fe65bff000bea557e",
      "parents": [
        "4ed800d02cfb639b4f8375a0f0f04f0efea64e7f"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Mon Nov 13 13:31:50 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:21 2006 -0800"
      },
      "message": "[DCCP]: Remove redundant statements in init_sequence (ISS)\n\nThis patch removes the following redundancies:\n\n 1) The test skb-\u003eprotocol \u003d\u003d htons(ETH_P_IPV6) in dccp_v6_init_sequence\n    is always true since\n     * dccp_v6_conn_request() is the only calling function\n     * dccp_v6_conn_request() redirects all skb\u0027s with ETH_P_IP to\n       dccp_v4_conn_request()\n\n 2) The first argument, `struct sock *sk\u0027, of dccp_v{4,6}_init_sequence()\n    is never used.\n\n(This is similar for tcp_v{4,6}_init_sequence, an analogous patch has been\n submitted to netdev and merged.)\n\nBy the way - are the `sport\u0027 / `dport\u0027 arguments in the right order?\nI have made them consistent among calls but they seem to be in the\nreverse order.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "afb0a34dd3e20b3f534de19993271b8664cf10bb",
      "tree": "f7660923d8dfa7e75ea655b99a6b608d67dea327",
      "parents": [
        "2e2e9e92bd723244ea20fa488b1780111f2b05e1"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Mon Nov 13 13:25:41 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:19 2006 -0800"
      },
      "message": "[DCCP]: Introduce a consistent naming scheme for sysctls\n\nIn order to make their function clearer and obtain a consistent naming\nscheme to identify sysctls, all existing DCCP sysctls have been prefixed\nwith `sysctl_dccp\u0027, following the same convention as used by TCP.\n\nFeature-specific sysctls retain the `feat\u0027 in the middle, although the\n`default\u0027 has been dropped, since it is obvious from use.\n\nAlso removed a duplicate `dccp_feat_default_sequence_window\u0027 in ipv4.c.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "6f4e5fff1e4d46714ea554fd83e44eab534e8b11",
      "tree": "4b14344fd825bbcefb6e8514e98e3e796b2dc1bd",
      "parents": [
        "a11d206d0f88e092419877c7f706cafb5e1c2e57"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Fri Nov 10 17:43:06 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:09 2006 -0800"
      },
      "message": "[DCCP]: Support for partial checksums (RFC 4340, sec. 9.2)\n\nThis patch does the following:\n  a) introduces variable-length checksums as specified in [RFC 4340, sec. 9.2]\n  b) provides necessary socket options and documentation as to how to use them\n  c) basic support and infrastructure for the Minimum Checksum Coverage feature\n     [RFC 4340, sec. 9.2.1]: acceptability tests, user notification and user\n     interface\n\nIn addition, it\n\n (1) fixes two bugs in the DCCPv4 checksum computation:\n \t* pseudo-header used checksum_len instead of skb-\u003elen\n\t* incorrect checksum coverage calculation based on dccph_x\n (2) removes dccp_v4_verify_checksum() since it reduplicates code of the\n     checksum computation; code calling this function is updated accordingly.\n (3) now uses skb_checksum(), which is safer than checksum_partial() if the\n     sk_buff has is a non-linear buffer (has pages attached to it).\n (4) fixes an outstanding TODO item:\n        * If P.CsCov is too large for the packet size, drop packet and return.\n\nThe code has been tested with applications, the latest version of tcpdump now\ncomes with support for partial DCCP checksums.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "d83ca5accb256de1b44835cd222bfdc3207bd7dc",
      "tree": "c7be8b1f61d4403fe15bd279ecf9d52619134592",
      "parents": [
        "cf557926f6955b4c3fa55e81fdb3675e752e8eed"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Fri Nov 10 16:29:14 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:04 2006 -0800"
      },
      "message": "[DCCP]: Update code comments for Step 2/3\n\nSorts out the comments for processing steps 2,3 in section 8.5 of RFC 4340.\nAll comments have been updated against this document, and the reference to step\n2 has been made consistent throughout the files.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "cf557926f6955b4c3fa55e81fdb3675e752e8eed",
      "tree": "672d24def170058545736be30040ef2249741cc3",
      "parents": [
        "f45b3ec481581f24719d8ab0bc812c02fcedc2bc"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Fri Nov 10 16:08:37 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:03 2006 -0800"
      },
      "message": "[DCCP]: tidy up dccp_v{4,6}_conn_request\n\nThis is a code simplification to remove reduplicated code\nby concentrating and abstracting shared code.\n\nDetailed Changes:\n"
    },
    {
      "commit": "3d2fe62b8d8522722c4fe46b8af13520b73848c4",
      "tree": "8189632c135a89943a81dc27b5728ede25a295bc",
      "parents": [
        "8a73cd09d96aa01743316657fc4e6864fe79b703"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Fri Nov 10 12:52:36 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:59 2006 -0800"
      },
      "message": "[DCCPv4]: remove forward declarations in ipv4.c\n\nThis relates to Arnaldo\u0027s announcement in\nhttp://www.mail-archive.com/dccp@vger.kernel.org/msg00604.html\n\nOriginally this had been part of the Oops fix and is a revised variant of\nhttp://www.mail-archive.com/dccp@vger.kernel.org/msg00598.html\n\nNo code change, merely reshuffling, with the particular objective of\nhaving all request_sock_ops close(r) together for more clarity.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "8a73cd09d96aa01743316657fc4e6864fe79b703",
      "tree": "fa22ed8ac78c5c76cc8ee3afd8bf72607290d42d",
      "parents": [
        "f6484f7c7ad22e4bb018875c386d6a7aaa441426"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Fri Nov 10 12:32:01 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:58 2006 -0800"
      },
      "message": "[DCCP]: calling dccp_v{4,6}_reqsk_send_ack is a BUG\n\nThis patch removes two functions, the send_ack functions of request_sock,\nwhich are not called/used by the DCCP code. It is correct that these\nfunctions are not called, below is a justification why calling these\nfunctions (on a passive socket in the LISTEN/RESPOND state) would mean\na DCCP protocol violation.\n\nA) Background: using request_sock in TCP:\n"
    },
    {
      "commit": "d23c7107bfbaac955289685c522c7ff99dad3780",
      "tree": "9926a1d0275bd6cf7e05eb4bbceb03f1dabceacd",
      "parents": [
        "9b42078ed6edfe04e9dc9a59b946ad912aeef717"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Fri Nov 10 11:46:34 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:56 2006 -0800"
      },
      "message": "[DCCP]: Simplify jump labels in dccp_v{4,6}_rcv\n\nThis is a code simplification and was singled out from the\nDCCPv6 Oops patch on\nhttp://www.mail-archive.com/dccp@vger.kernel.org/msg00600.html\n\nIt mainly makes the code consistent between ipv{4,6}.c for the functions\n        dccp_v4_rcv\n        dccp_v6_rcv\nand removes the do_time_wait label to simplify code somewhat.\n\nCommiter note: fixed up a compile problem, trivial.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "9b42078ed6edfe04e9dc9a59b946ad912aeef717",
      "tree": "d3d20e17aa85e1bb16b99397f98f151d197b3177",
      "parents": [
        "89e7e57778ecd8744fee97491300f05a9fb1388a"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Fri Nov 10 11:22:32 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:55 2006 -0800"
      },
      "message": "[DCCP]: Combine allocating \u0026 zeroing header space on skb\n\nThis is a code simplification:\nit combines three often recurring operations into one inline function,\n\n        * allocate `len\u0027 bytes header space in skb\n        * fill these `len\u0027 bytes with zeroes\n        * cast the start of this header space as dccp_hdr\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "494b4e7d819246bad67c40897b9eeaf0ce18d5ff",
      "tree": "d09d274814dc469da9edba08c0043859ae1f340c",
      "parents": [
        "72a3effaf633bcae9034b7e176bdbd78d64a71db"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Nov 09 16:23:22 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:45 2006 -0800"
      },
      "message": "[DCCP]: Fix typo _read_mostly --\u003e __read_mostly.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "72a3effaf633bcae9034b7e176bdbd78d64a71db",
      "tree": "b7a331527f1b15335a358f97809134f35587e57a",
      "parents": [
        "3c62f75aac7348ee262b1295cfcfeb3473f76815"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Thu Nov 16 02:30:37 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:44 2006 -0800"
      },
      "message": "[NET]: Size listen hash tables using backlog hint\n\nWe currently allocate a fixed size (TCP_SYNQ_HSIZE\u003d512) slots hash table for\neach LISTEN socket, regardless of various parameters (listen backlog for\nexample)\n\nOn x86_64, this means order-1 allocations (might fail), even for \u0027small\u0027\nsockets, expecting few connections. On the contrary, a huge server wanting a\nbacklog of 50000 is slowed down a bit because of this fixed limit.\n\nThis patch makes the sizing of listen hash table a dynamic parameter,\ndepending of :\n- net.core.somaxconn tunable (default is 128)\n- net.ipv4.tcp_max_syn_backlog tunable (default : 256, 1024 or 128)\n- backlog value given by user application  (2nd parameter of listen())\n\nFor large allocations (bigger than PAGE_SIZE), we use vmalloc() instead of\nkmalloc().\n\nWe still limit memory allocation with the two existing tunables (somaxconn \u0026\ntcp_max_syn_backlog). So for standard setups, this patch actually reduce RAM\nusage.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0e64e94e477f8ed04e9295b11a5898d443c28a47",
      "tree": "0a02a3017d41a3a21038ff081b93b5b6359e1692",
      "parents": [
        "977a415f2b70b5693aaa23b1a16ad57ea20a1dce"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Oct 24 16:17:51 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 24 16:17:51 2006 -0700"
      },
      "message": "[DCCP]: Update documentation references.\n\nUpdates the references to spec documents throughout the code, taking into\naccount that\n\n* the DCCP, CCID 2, and CCID 3 drafts all became RFCs in March this year\n\n* RFC 1063 was obsoleted by RFC 1191\n\n* draft-ietf-tcpimpl-pmtud-0x.txt was published as an Informational\n  RFC, RFC 2923 on 2000-09-22.\n\nAll references verified.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "82709531a800fcf8de71bb8c5d8e92462fb81f84",
      "tree": "f5b91c66d478db78af46ca7a9863951b82d28c06",
      "parents": [
        "5cfc35cf79d46af998346e3d5cc66fa344d1af0e"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Oct 11 16:26:54 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Oct 21 19:55:20 2006 -0700"
      },
      "message": "[DCCP]: Fix Oops in DCCPv6\n\nI think I got the cause for the Oops observed in\nhttp://www.mail-archive.com/dccp@vger.kernel.org/msg00578.html\n\nThe problem is always with applications listening on PF_INET6 sockets. Apart\nfrom the mentioned oops, I observed another one one, triggered at irregular\nintervals via timer interrupt:\n\n    run_timer_softirq -\u003e dccp_keepalive_timer\n                      -\u003e inet_csk_reqsk_queue_prune\n                      -\u003e reqsk_free\n                      -\u003e dccp_v6_reqsk_destructor\n\nThe latter function is the problem and is also the last function to be called\nin said kernel panic.\n\nIn any case, there is a real problem with allocating the right request_sock\nwhich is what this patch tackles.\n\nIt fixes the following problem:\n - application listens on PF_INET6\n - DCCPv4 packet comes in, is handed over to dccp_v4_do_rcv, from there\n   to dccp_v4_conn_request\n\nNow: socket is PF_INET6, packet is IPv4. The following code then furnishes the\nconnection with IPv6 - request_sock operations:\n\n   req \u003d reqsk_alloc(sk-\u003esk_prot-\u003ersk_prot);\n\nThe first problem is that all further incoming packets will get a Reset since\nthe connection can not be looked up.\n\nThe second problem is worse:\n --\u003e reqsk_alloc is called instead of inet6_reqsk_alloc\n --\u003e consequently inet6_rsk_offset is never set (dangling pointer)\n --\u003e the request_sock_ops are nevertheless still dccp6_request_ops\n --\u003e destructor is called via reqsk_free\n --\u003e dccp_v6_reqsk_destructor tries to free random memory location (inet6_rsk_offset not set)\n --\u003e panic\n\nI have tested this for a while, DCCP sockets are now handled correctly in all\nthree scenarios (v4/v6 only/v4-mapped).\n\nCommiter note: I\u0027ve added the dccp_request_sock_ops forward declaration to keep\n               the tree building and to reduce the size of the patch for 2.6.19,\n               later I\u0027ll move the functions to the top of the affected source\n               code to match what we have in the TCP counterpart, where this\n               problem hasn\u0027t existed in the first place, dumb me not to have\n               done the same thing on DCCP land 8)\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "9469c7b4aa210ce94c6e7208cfadbd0aca0ebe08",
      "tree": "3461046e3c0a63577dc26d70246bac6892fe342c",
      "parents": [
        "496c98dff8e353880299168d36fa082d6fba5237"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Oct 10 19:41:46 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 11 23:59:58 2006 -0700"
      },
      "message": "[NET]: Use typesafe inet_twsk() inline function instead of cast.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bada8adc4e6622764205921e6ba3f717aa03c882",
      "tree": "6052ffa8b3f6fbb8e11566f7a0e3f1f557acccd2",
      "parents": [
        "f2c3fe24119ee4f8faca08699f0488f500014a27"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Sep 26 21:27:15 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 17:54:06 2006 -0700"
      },
      "message": "[IPV4]: ip_route_connect() ipv4 address arguments annotated\n\nannotated address arguments (port number left alone for now); ditto\nfor inferred net-endian variables in callers.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "00e4d116a7ef94eb910be037912b0b2fc09f608b",
      "tree": "81e8a52c7529691b3c07605613da65cae80f41c9",
      "parents": [
        "1ab9dd0902df4f4ff56fbf672220549090ab28ba"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Fri Sep 22 09:33:58 2006 +0100"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Sun Sep 24 17:49:26 2006 -0300"
      },
      "message": "[DCCP]: Allow default/fallback service code.\n\nThis has been discussed on dccp@vger and removes the necessity for applications\nto supply service codes in each and every case.\n\nIf an application does not want to provide a service code, that\u0027s fine, it will\nbe given 0. Otherwise, service codes can be set via socket options as before.\n\nThis patch has been tested using various client/server configurations\n(including listening on multiple service codes).\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "8f491069b40be5d627007a343f99759e9da6a178",
      "tree": "ba2be735de32fa30015fe22febf4329c8e79ca25",
      "parents": [
        "832b4c5e184391773e462653aa862a8cab71f38d"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Aug 09 15:47:12 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 14:54:14 2006 -0700"
      },
      "message": "[IPV4]: Use network-order dport for all visible inet_lookup_*\n\nRight now most inet_lookup_* functions take a host-order hnum instead\nof a network-order dport because that\u0027s how it is represented\ninternally.\n\nThis means that users of these functions have to be careful about\nusing the right byte-order.  To add more confusion, inet_lookup takes\na network-order dport unlike all other functions.\n\nSo this patch changes all visible inet_lookup functions to take a\ndport and move all dport-\u003ehnum conversion inside them.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4237c75c0a35535d7f9f2bfeeb4b4df1e068a0bf",
      "tree": "02adcb6fe6c346a8b99cf161ba5233ed1e572727",
      "parents": [
        "cb969f072b6d67770b559617f14e767f47e77ece"
      ],
      "author": {
        "name": "Venkat Yekkirala",
        "email": "vyekkirala@TrustedCS.com",
        "time": "Mon Jul 24 23:32:50 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 14:53:29 2006 -0700"
      },
      "message": "[MLSXFRM]: Auto-labeling of child sockets\n\nThis automatically labels the TCP, Unix stream, and dccp child sockets\nas well as openreqs to be at the same MLS level as the peer. This will\nresult in the selection of appropriately labeled IPSec Security\nAssociations.\n\nThis also uses the sock\u0027s sid (as opposed to the isec sid) in SELinux\nenforcement of secmark in rcv_skb and postroute_last hooks.\n\nSigned-off-by: Venkat Yekkirala \u003cvyekkirala@TrustedCS.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "beb8d13bed80f8388f1a9a107d07ddd342e627e8",
      "tree": "19d5763b9b3b8ff3969997565e5ec0edd6e4bd33",
      "parents": [
        "4e2ba18eae7f370c7c3ed96eaca747cc9b39f917"
      ],
      "author": {
        "name": "Venkat Yekkirala",
        "email": "vyekkirala@TrustedCS.com",
        "time": "Fri Aug 04 23:12:42 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 14:53:27 2006 -0700"
      },
      "message": "[MLSXFRM]: Add flow labeling\n\nThis labels the flows that could utilize IPSec xfrms at the points the\nflows are defined so that IPSec policy and SAs at the right label can\nbe used.\n\nThe following protos are currently not handled, but they should\ncontinue to be able to use single-labeled IPSec like they currently\ndo.\n\nipmr\nip_gre\nipip\nigmp\nsit\nsctp\nip6_tunnel (IPv6 over IPv6 tunnel device)\ndecnet\n\nSigned-off-by: Venkat Yekkirala \u003cvyekkirala@TrustedCS.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4b79f0af48d529a360d3529def01835dc5d45fe1",
      "tree": "0d5013514dd5f19a09f9c2d32dee2ba0f4f4827a",
      "parents": [
        "8fdf679fdb00f588b65abb9c775c178098a05aeb"
      ],
      "author": {
        "name": "Ian McDonald",
        "email": "ian.mcdonald@jandi.co.nz",
        "time": "Sun Jul 23 23:33:28 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Jul 24 12:44:21 2006 -0700"
      },
      "message": "[DCCP]: Fix default sequence window size\n\nWhen using the default sequence window size (100) I got the following in\nmy logs:\n\nJun 22 14:24:09 localhost kernel: [ 1492.114775] DCCP: Step 6 failed for\nDATA packet, (LSWL(6279674225) \u003c\u003d P.seqno(6279674749) \u003c\u003d\nS.SWH(6279674324)) and (P.ackno doesn\u0027t exist or LAWL(18798206530) \u003c\u003d\nP.ackno(1125899906842620) \u003c\u003d S.AWH(18798206548), sending SYNC...\nJun 22 14:24:09 localhost kernel: [ 1492.115147] DCCP: Step 6 failed for\nDATA packet, (LSWL(6279674225) \u003c\u003d P.seqno(6279674750) \u003c\u003d\nS.SWH(6279674324)) and (P.ackno doesn\u0027t exist or LAWL(18798206530) \u003c\u003d\nP.ackno(1125899906842620) \u003c\u003d S.AWH(18798206549), sending SYNC...\n\nI went to alter the default sysctl and it didn\u0027t take for new sockets.\nBelow patch fixes this.\n\nI think the default is too low but it is what the DCCP spec specifies.\n\nAs a side effect of this my rx speed using iperf goes from about 2.8 Mbits/sec\nto 3.5. This is still far too slow but it is a step in the right direction.\n\nCompile tested only for IPv6 but not particularly complex change.\n\nSigned off by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6ab3d5624e172c553004ecc862bfeac16d9d68b7",
      "tree": "6d98881fe91fd9583c109208d5c27131b93fa248",
      "parents": [
        "e02169b682bc448ccdc819dc8639ed34a23cedd8"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "message": "Remove obsolete #include \u003clinux/config.h\u003e\n\nSigned-off-by: Jörn Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "b8282dcf0417bbc8a0786c129fdff9cc768f8f3c",
      "tree": "f9610328753accb586949c065ee7e1f8fbae0b10",
      "parents": [
        "b7595b4955b5178e28906838cc3e8efa62d8caee"
      ],
      "author": {
        "name": "Eric Sesterhenn",
        "email": "snakebyte@gmx.de",
        "time": "Mon Apr 10 16:43:03 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Apr 11 17:21:06 2006 -0700"
      },
      "message": "[DCCP]: Fix leak in net/dccp/ipv4.c\n\nwe dont free req if we cant parse the options.\nThis fixes coverity bug id #1046\n\nSigned-off-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "543d9cfeec4d58ad3fd974db5531b06b6b95deb4",
      "tree": "b5f79a92ec01b4a97f26d48cae11566498641822",
      "parents": [
        "f94691acf9df35d5cd828373e35391bdc4a3fde6"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 22:48:35 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:48:35 2006 -0800"
      },
      "message": "[NET]: Identation \u0026 other cleanups related to compat_[gs]etsockopt cset\n\nNo code changes, just tidying up, in some cases moving EXPORT_SYMBOLs\nto just after the function exported, etc.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3fdadf7d27e3fbcf72930941884387d1f4936f04",
      "tree": "167072cf1e60b6b307610563614b435ff0caa52d",
      "parents": [
        "c750360938b403e6cc193d293cfbcb099dd6c60e"
      ],
      "author": {
        "name": "Dmitry Mishin",
        "email": "dim@openvz.org",
        "time": "Mon Mar 20 22:45:21 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:45:21 2006 -0800"
      },
      "message": "[NET]: {get|set}sockopt compatibility layer\n\nThis patch extends {get|set}sockopt compatibility layer in order to\nmove protocol specific parts to their place and avoid huge universal\nnet/compat.c file in the future.\n\nSigned-off-by: Dmitry Mishin \u003cdim@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c5fed1597ebb2c1bf55a7334cce2d0e8d18ef5b7",
      "tree": "7fd3a91c0afe7f57be7fdb217cb070acb9bfbbcb",
      "parents": [
        "118b2c9532c853ebdf15c21128d30a343b89ea45"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 22:31:26 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:31:26 2006 -0800"
      },
      "message": "[DCCP]: ditch dccp_v[46]_ctl_send_ack\n\nMerging it with its only user: dccp_v[46]_reqsk_send_ack.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "118b2c9532c853ebdf15c21128d30a343b89ea45",
      "tree": "1974a1850b4bfebb08424a241228ac66076c276f",
      "parents": [
        "e5a6de915ba9ba828751ade5d3e874072a89a00a"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 22:31:09 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:31:09 2006 -0800"
      },
      "message": "[DCCP]: Use sk-\u003esk_prot-\u003emax_header consistently for non-data packets\n\nUsing this also provides opportunities for introducing\ninet_csk_alloc_skb that would call alloc_skb, account it to the sock\nand skb_reserve(max_header), but I\u0027ll leave this for later, for now\nusing sk_prot-\u003emax_header consistently is enough.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c4d9390941aee136fd35bb38eb1d6de4e3b1487d",
      "tree": "fcaf0032ba5971145b5f527b8635cd7aa3a39d8c",
      "parents": [
        "72478873571d869906f7a250b09e12fa5b65e321"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 22:01:03 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:01:03 2006 -0800"
      },
      "message": "[ICSK]: Introduce inet_csk_ctl_sock_create\n\nConsolidating open coded sequences in tcp and dccp, v4 and v6.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "72478873571d869906f7a250b09e12fa5b65e321",
      "tree": "562e6179922a5eef9c1f3eb7b1bf3813a6e53545",
      "parents": [
        "c25a18ba347f091d1ce620ba33e6772b60a528e1"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 22:00:37 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:00:37 2006 -0800"
      },
      "message": "[DCCP] ipv6: Add missing ipv6 control socket\n\nI guess I forgot to add it, nah, now it just works:\n\n18:04:33.274066 IP6 ::1.1476 \u003e ::1.5001: request (service\u003d0)\n18:04:33.334482 IP6 ::1.5001 \u003e ::1.1476: reset (code\u003dbad_service_code)\n\nDitched IP_DCCP_UNLOAD_HACK, as now we would have to do it for both\nIPv6 and IPv4, so I\u0027ll come up with another way for freeing the\ncontrol sockets in upcoming changesets.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5e0817f84c33285c2ac7d3848e8896d025b5deff",
      "tree": "c394b80761d68d57128775da1e6832df4ff2170b",
      "parents": [
        "d76e60a5b510bab0af130fca9f4ed06499be4d2f"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Mar 20 21:58:29 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 21:58:29 2006 -0800"
      },
      "message": "[DCCP] ipv4: make struct dccp_v4_prot static\n\nThere\u0027s no reason for struct dccp_v4_prot being global.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b61fafc4ef3faf54236d57e3b230ca19167663bf",
      "tree": "d928d79a28556ee06fda685458d3f398b6e57d40",
      "parents": [
        "46f09ffa7db595f49fb42338e013417756816d37"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 21:25:11 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 21:25:11 2006 -0800"
      },
      "message": "[DCCP]: Move the IPv4 specific bits from proto.c to ipv4.c\n\nWith this patch in place we can break down the complexity by better\ncompartmentalizing the code that is common to ipv6 and ipv4.\n\nNow we have these modules:\nModule                  Size  Used by\ndccp_diag               1344  0\ninet_diag               9448  1 dccp_diag\ndccp_ccid3             15856  0\ndccp_tfrc_lib          12320  1 dccp_ccid3\ndccp_ccid2              5764  0\ndccp_ipv4              16996  2\ndccp                   48208  4 dccp_diag,dccp_ccid3,dccp_ccid2,dccp_ipv4\n\ndccp_ipv6 still requires dccp_ipv4 due to dccp_ipv6_mapped, that is\nthe next target to work on the \"hey, ipv4 is legacy, I only want ipv6\ndude!\" direction.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "075ae86611011e1acdda9df6a7e30f8508b31fd6",
      "tree": "964bd1489ca16e3bbdc41a455b2a2db8e7801f2a",
      "parents": [
        "0a1ec676ddbee712e1c1da679be4bdc529caf215"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 21:24:19 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 21:24:19 2006 -0800"
      },
      "message": "[DCCP]: Move dccp_hashinfo from ipv4.c to the core\n\nAs it is used by both ipv4 and ipv6.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0a1ec676ddbee712e1c1da679be4bdc529caf215",
      "tree": "709db39592784baebb9f43f5d1bbd33c70fdcbeb",
      "parents": [
        "c985ed705ffc682ce40d46a5f7bf98db86b27899"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 21:23:59 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 21:23:59 2006 -0800"
      },
      "message": "[DCCP]: Dont use dccp_v4_checksum in dccp_make_response\n\ndccp_make_response is shared by ipv4/6 and the ipv6 code was\nrecalculating the checksum, not good, so move the dccp_v4_checksum\ncall to dccp_v4_send_response.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c985ed705ffc682ce40d46a5f7bf98db86b27899",
      "tree": "20272a6d8f7b896e9b31397d4c4ff563bfdf16b2",
      "parents": [
        "3e0fadc51f2fde01e0e22f481370a9b5f073bfc3"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 21:23:39 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 21:23:39 2006 -0800"
      },
      "message": "[DCCP]: Move dccp_[un]hash from ipv4.c to the core\n\nAs this is used by both ipv4 and ipv6 and is not ipv4 specific.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3e0fadc51f2fde01e0e22f481370a9b5f073bfc3",
      "tree": "0254dd8d495d2e4a2a1a9adb17b7dc10541796d8",
      "parents": [
        "017487d7d1e905a5bb529f6a2bc8cf8ea14e2307"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 21:23:15 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 21:23:15 2006 -0800"
      },
      "message": "[DCCP]: Move dccp_v4_{init,destroy}_sock to the core\n\nRemoving one more ipv6 uses ipv4 stuff case in dccp land.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "017487d7d1e905a5bb529f6a2bc8cf8ea14e2307",
      "tree": "6a68904ea48ccae0c4c17f7dc248831fd46bd3e6",
      "parents": [
        "e55d912f5b75723159348a7fc7692f869a86636a"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 19:25:24 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 19:25:24 2006 -0800"
      },
      "message": "[DCCP]: Generalize dccp_v4_send_reset\n\nRenaming it to dccp_send_reset and moving it from the ipv4 specific\ncode to the core dccp code.\n\nThis fixes some bugs in IPV6 where timers would send v4 resets, etc.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "04e2661e9c00386412b64612549cf24c8baef67c",
      "tree": "d2c53123806041dfe4c0dc2b18a890a1f5333105",
      "parents": [
        "057fc6755a2381b4e81636659ef519e069f38623"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 19:24:41 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 19:24:41 2006 -0800"
      },
      "message": "[DCCP]: Call dccp_feat_init more early in dccp_v4_init_sock\n\nSo that dccp_feat_clean doesn\u0027t get confused with uninitialized\nlist_heads.\n\nNoticed when testing with no ccid kernel modules.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "60fe62e789076ae7c13f7ffb35fec4b24802530d",
      "tree": "cc8d507a4276c3d5a2bcb72746660d485bc2e045",
      "parents": [
        "a193a4abdd1f742a57f3f70b6a83c3e536876e97"
      ],
      "author": {
        "name": "Andrea Bittau",
        "email": "a.bittau@cs.ucl.ac.uk",
        "time": "Mon Mar 20 19:23:32 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 19:23:32 2006 -0800"
      },
      "message": "[DCCP]: sparse endianness annotations\n\nThis also fixes the layout of dccp_hdr short sequence numbers, problem\nwas not fatal now as we only support long (48 bits) sequence numbers.\n\nSigned-off-by: Andrea Bittau \u003ca.bittau@cs.ucl.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "91f0ebf7b6d5cb2b6e818d48587566144821babe",
      "tree": "505c66f36bd72014d7eacb7a04ea011bae2e9a3a",
      "parents": [
        "f38c39d6ce8226519455a6dfe91c2ad84f363f6f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 19:21:44 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 19:21:44 2006 -0800"
      },
      "message": "[DCCP] CCID: Improve CCID infrastructure\n\n1. No need for -\u003eccid_init nor -\u003eccid_exit, this is what module_{init,exit}\n   does and anynways neither ccid2 nor ccid3 were using it.\n\n2. Rename struct ccid to struct ccid_operations and introduce struct ccid\n   with a pointer to ccid_operations and rigth after it the rx or tx\n   private state.\n\n3. Remove the pointer to the state of the half connections from struct\n   dccp_sock, now its derived thru ccid_priv() from the ccid pointer.\n\nNow we also can implement the setsockopt for changing the CCID easily as\nno ccid init routines can affect struct dccp_sock in any way that prevents\nother CCIDs from working if a CCID switch operation is asked by apps.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "afe00251dd9b53d51de91ff0099961f42bbf3754",
      "tree": "a56aa987140662cf3e6e65be402b8591298c5ced",
      "parents": [
        "2a91aa3967398fb94eccc8da67c82bce9f67afdf"
      ],
      "author": {
        "name": "Andrea Bittau",
        "email": "a.bittau@cs.ucl.ac.uk",
        "time": "Mon Mar 20 17:43:56 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:43:56 2006 -0800"
      },
      "message": "[DCCP]: Initial feature negotiation implementation\n\nStill needs more work, but boots and doesn\u0027t crashes, even\ndoes some negotiation!\n\n18:38:52.174934  127.0.0.1.43458 \u003e 127.0.0.1.5001: request \u003cchange_l ack_ratio 2, change_r ccid 2, change_l ccid 2\u003e\n18:38:52.218526  127.0.0.1.5001 \u003e 127.0.0.1.43458: response \u003cnop, nop, change_l ack_ratio 2, confirm_r ccid 2 2, confirm_l ccid 2 2, confirm_r ack_ratio 2\u003e\n18:38:52.185398  127.0.0.1.43458 \u003e 127.0.0.1.5001: \u003cnop, confirm_r ack_ratio 2, ack_vector0 0x00, elapsed_time 212\u003e\n\n:-)\n\nSigned-off-by: Andrea Bittau \u003ca.bittau@cs.ucl.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2a91aa3967398fb94eccc8da67c82bce9f67afdf",
      "tree": "62bf003487121bc629919c85810df11e52016b8f",
      "parents": [
        "aa5d7df3b20e0e493e90e1151510ab3ae8366bb5"
      ],
      "author": {
        "name": "Andrea Bittau",
        "email": "a.bittau@cs.ucl.ac.uk",
        "time": "Mon Mar 20 17:41:47 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:41:47 2006 -0800"
      },
      "message": "[DCCP] CCID2: Initial CCID2 (TCP-Like) implementation\n\nOriginal work by Andrea Bittau, Arnaldo Melo cleaned up and fixed several\nissues on the merge process.\n\nFor now CCID2 was turned the default for all SOCK_DCCP connections, but this\nwill be remedied soon with the merge of the feature negotiation code.\n\nSigned-off-by: Andrea Bittau \u003ca.bittau@cs.ucl.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9833d6da00c95e8a471411fb079da6b25787b05e",
      "tree": "0d76b97beb3587723ad318fe0713193ebccb9374",
      "parents": [
        "d5e9b2c737ecaedae66e3dffdd0d92d2a189ec5c"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 17:34:53 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:34:53 2006 -0800"
      },
      "message": "[DCCP]: Don\u0027t alloc ack vector for the control sock\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7400d781105d18bf5bba89f8b986a413f14144a8",
      "tree": "39bba6735fa99c5b2aa755b81c0cebc0ac901931",
      "parents": [
        "0af5f6c1eba4a18e6b2ed518b589927d778c6c16"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 17:15:42 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:15:42 2006 -0800"
      },
      "message": "[DCCP] ackvec: Ditch dccpav_buf_len\n\nSimplifying the code a bit as we\u0027re always using DCCP_MAX_ACKVEC_LEN.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5d39a795bfa217b5f7637028c83ab5cb291f37bf",
      "tree": "025bee4ea9c90b5fac7a7c939664a89120303170",
      "parents": [
        "7fb76aa07facce5cb9c8d26a0de09001a31eed0c"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jan 31 17:35:35 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 31 17:35:35 2006 -0800"
      },
      "message": "[IPV4]: Always set fl.proto in ip_route_newports\n\nip_route_newports uses the struct flowi from the struct rtable returned\nby ip_route_connect for the new route lookup and just replaces the port\nnumbers if they have changed. If an IPsec policy exists which doesn\u0027t match\nport 0 the struct flowi won\u0027t have the proto field set and no xfrm lookup\nis done for the changed ports.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eb9c7ebe6980c41cf6ae889e301c3b49f473ee9f",
      "tree": "419103d15b9de9c26c8400c698625231df55da91",
      "parents": [
        "b59c270104f03960069596722fea70340579244d"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Jan 06 23:06:30 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Jan 07 12:57:37 2006 -0800"
      },
      "message": "[NETFILTER]: Handle NAT in IPsec policy checks\n\nHandle NAT of decapsulated IPsec packets by reconstructing the struct flowi\nof the original packet from the conntrack information for IPsec policy\nchecks.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b59c270104f03960069596722fea70340579244d",
      "tree": "5d038835626047899097b622695ead5c1eb1c499",
      "parents": [
        "5c901daaea3be0d900b3ae1fc9b5f64ff94e4f02"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Jan 06 23:06:10 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Jan 07 12:57:36 2006 -0800"
      },
      "message": "[NETFILTER]: Keep conntrack reference until IPsec policy checks are done\n\nKeep the conntrack reference until policy checks have been performed for\nIPsec NAT support. The reference needs to be dropped before a packet is\nqueued to avoid having the conntrack module unloadable.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "14c850212ed8f8cbb5972ad6b8812e08a0bc901c",
      "tree": "53c88f03e7bbac4064f6e80d462ad484ee038326",
      "parents": [
        "25995ff577675b58dbd848b7758e7bad87411947"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Dec 27 02:43:12 2005 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 03 13:11:21 2006 -0800"
      },
      "message": "[INET_SOCK]: Move struct inet_sock \u0026 helper functions to net/inet_sock.h\n\nTo help in reducing the number of include dependencies, several files were\ntouched as they were getting needed headers indirectly for stuff they use.\n\nThanks also to Alan Menegotto for pointing out that net/dccp/proto.c had\nlinux/dccp.h include twice.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "25995ff577675b58dbd848b7758e7bad87411947",
      "tree": "4d47595b01f8645552fa8af7b2be2019f133fefb",
      "parents": [
        "ce1d4d3e88b3a69d23c3feb436a0b36b6ca0642b"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Dec 27 02:42:22 2005 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 03 13:11:19 2006 -0800"
      },
      "message": "[SOCK]: Introduce sk_receive_skb\n\nIts common enough to to justify that, TCP still can\u0027t use it as it has the\nprequeueing stuff, still to be made generic in the not so distant future :-)\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "d83d8461f902c672bc1bd8fbc6a94e19f092da97"
}
