)]}'
{
  "log": [
    {
      "commit": "9ffc93f203c18a70623f21950f1dd473c9ec48cd",
      "tree": "1eb3536ae183b0bfbf7f5152a6fe4f430ae881c2",
      "parents": [
        "96f951edb1f1bdbbc99b0cd458f9808bb83d58ae"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Mar 28 18:30:03 2012 +0100"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Mar 28 18:30:03 2012 +0100"
      },
      "message": "Remove all #inclusions of asm/system.h\n\nRemove all #inclusions of asm/system.h preparatory to splitting and killing\nit.  Performed with the following command:\n\nperl -p -i -e \u0027s!^#\\s*include\\s*\u003casm/system[.]h\u003e.*\\n!!\u0027 `grep -Irl \u0027^#\\s*include\\s*\u003casm/system[.]h\u003e\u0027 *`\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "058bd4d2a4ff0aaa4a5381c67e776729d840c785",
      "tree": "4d1ea864a8740676c7e7c5a03cdaa67fc5f29418",
      "parents": [
        "43db362d3adda9e0a915ddb9a8d1a41186e19179"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Mar 11 18:36:11 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 11 23:42:51 2012 -0700"
      },
      "message": "net: Convert printks to pr_\u003clevel\u003e\n\nUse a more current kernel messaging style.\n\nConvert a printk block to print_hex_dump.\nCoalesce formats, align arguments.\nUse %s, __func__ instead of embedding function names.\n\nSome messages that were prefixed with \u003cfoo\u003e_close are\nnow prefixed with \u003cfoo\u003e_fini.  Some ah4 and esp messages\nare now not prefixed with \"ip \".\n\nThe intent of this patch is to later add something like\n  #define pr_fmt(fmt) \"IPv4: \" fmt.\nto standardize the output messages.\n\nText size is trivially reduced. (x86-32 allyesconfig)\n\n$ size net/ipv4/built-in.o*\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n 887888\t  31558\t 249696\t1169142\t 11d6f6\tnet/ipv4/built-in.o.new\n 887934\t  31558\t 249800\t1169292\t 11d78c\tnet/ipv4/built-in.o.old\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ff4783ce78c08d2990126ce1874250ae8e72bbd2",
      "tree": "5c95885a4ab768101dd72942b57c238d452a7565",
      "parents": [
        "622121719934f60378279eb440d3cec2fc3176d2",
        "203738e548cefc3fc3c2f73a9063176c9f3583d5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 26 21:55:51 2012 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 26 21:55:51 2012 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nConflicts:\n\tdrivers/net/ethernet/sfc/rx.c\n\nOverlapping changes in drivers/net/ethernet/sfc/rx.c, one to change\nthe rx_buf-\u003eis_page boolean into a set of u16 flags, and another to\nadjust how -\u003eip_summed is initialized.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a5e7424d424f6398a198ead79d99e0a3c2f24ce8",
      "tree": "2fc4ba0c2664cefb38f47c372260ee379d0e2f79",
      "parents": [
        "115c9b81928360d769a76c632bae62d15206a94a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 21 17:59:19 2012 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 21 17:59:19 2012 -0500"
      },
      "message": "ipv4: ping: Fix recvmsg MSG_OOB error handling.\n\nDon\u0027t return an uninitialized variable as the error, return\n-EOPNOTSUPP instead.\n\nReported-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "76e21053b5bf33a07c76f99d27a74238310e3c71",
      "tree": "70ac2a67be8f19da96896950447567e156975149",
      "parents": [
        "43480aecb1f538d4f6dd8b2c5d2b71fb98659072"
      ],
      "author": {
        "name": "Erich E. Hoover",
        "email": "ehoover@mines.edu",
        "time": "Wed Feb 08 09:11:07 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 08 15:52:45 2012 -0500"
      },
      "message": "ipv4: Implement IP_UNICAST_IF socket option.\n\nThe IP_UNICAST_IF feature is needed by the Wine project.  This patch\nimplements the feature by setting the outgoing interface in a similar\nfashion to that of IP_MULTICAST_IF.  A separate option is needed to\nhandle this feature since the existing options do not provide all of\nthe characteristics required by IP_UNICAST_IF, a summary is provided\nbelow.\n\nSO_BINDTODEVICE:\n* SO_BINDTODEVICE requires administrative privileges, IP_UNICAST_IF\ndoes not.  From reading some old mailing list articles my\nunderstanding is that SO_BINDTODEVICE requires administrative\nprivileges because it can override the administrator\u0027s routing\nsettings.\n* The SO_BINDTODEVICE option restricts both outbound and inbound\ntraffic, IP_UNICAST_IF only impacts outbound traffic.\n\nIP_PKTINFO:\n* Since IP_PKTINFO and IP_UNICAST_IF are independent options,\nimplementing IP_UNICAST_IF with IP_PKTINFO will likely break some\napplications.\n* Implementing IP_UNICAST_IF on top of IP_PKTINFO significantly\ncomplicates the Wine codebase and reduces the socket performance\n(doing this requires a lot of extra communication between the\n\"server\" and \"user\" layers).\n\nbind():\n* bind() does not work on broadcast packets, IP_UNICAST_IF is\nspecifically intended to work with broadcast packets.\n* Like SO_BINDTODEVICE, bind() restricts both outbound and inbound\ntraffic.\n\nSigned-off-by: Erich E. Hoover \u003cehoover@mines.edu\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "747465ef7a082033e086dedc8189febfda43b015",
      "tree": "efbdc7a1f25f7bced035077769b4005ea1419abc",
      "parents": [
        "2b2d465631db59c144f537a9bef47a883c55d670"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Jan 16 19:27:39 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 17 10:31:12 2012 -0500"
      },
      "message": "net: fix some sparse errors\n\nmake C\u003d2 CF\u003d\"-D__CHECK_ENDIAN__\" M\u003dnet\n\nAnd fix flowi4_init_output() prototype for sport\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fb120c0a2775b0d2d095a99ea8432bfb5d444ab2",
      "tree": "3bbac5493bcb97f2103a405d0f8cb551595d886a",
      "parents": [
        "282edcece39e08d02c22492d593e4b9b94a65dff"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Nov 17 04:40:20 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 18 14:38:59 2011 -0500"
      },
      "message": "ping: dont increment ICMP_MIB_INERRORS\n\nping module incorrectly increments ICMP_MIB_INERRORS if feeded with a\nframe not belonging to its own sockets.\n\nRFC 2011 states that ICMP_MIB_INERRORS should count \"the number of ICMP\nmessages which the entiry received but determined as having\nICMP-specific errors (bad ICMP checksums, bad length, etc.).\"\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nAcked-by: Flavio Leitner \u003cfbl@redhat.com\u003e\nAcked-by: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bc3b2d7fb9b014d75ebb79ba371a763dbab5e8cf",
      "tree": "b0fd4e724bdb1c0a1783616614ae5a9dec1cfa5c",
      "parents": [
        "d9b9384215e17c68d7b6bd05d6fa409e5d4140d7"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Fri Jul 15 11:47:34 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:30:30 2011 -0400"
      },
      "message": "net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules\n\nThese files are non modular, but need to export symbols using\nthe macros now living in export.h -- call out the include so\nthat things won\u0027t break when we remove the implicit presence\nof module.h from everywhere.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "8ad2475e3555346fbd738e77da12578b97d10505",
      "tree": "da23912aab5aa9433b7f3932bdb10e0158fda37e",
      "parents": [
        "c82b9d7fe7464aec78210544948564ffe3bb2d2b"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Sun Jun 19 22:31:20 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 20 13:04:38 2011 -0700"
      },
      "message": "ipv4, ping: Remove duplicate icmp.h include\n\nRemove the duplicate inclusion of net/icmp.h from net/ipv4/ping.c\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "19a76fa9593bad778dabeeec1f6c2df6effe9ca3",
      "tree": "b22ca6963dd1baa18997eb138cfcfc50df4a8bf9",
      "parents": [
        "4867faab1e3eb8cc3f74e390357615d9b8e8cda6"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun May 22 22:23:00 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 23 16:29:24 2011 -0400"
      },
      "message": "net: ping: cleanups ping_v4_unhash()\n\nnet/ipv4/ping.c: In function ‘ping_v4_unhash’:\nnet/ipv4/ping.c:140:28: warning: variable ‘hslot’ set but not used\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nAcked-by: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "75e308c894c4a5e47c005b8e821ae5f539ad2ef3",
      "tree": "2bd8e3e35f42854fc49a34282c7c83b280c63840",
      "parents": [
        "bb0cd2fb539c4e454ed32e32194acc03b75753f3"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Wed May 18 21:16:01 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 19 16:17:51 2011 -0400"
      },
      "message": "net: ping: fix the coding style\n\nThe characters in a line should be no more than 80.\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bb0cd2fb539c4e454ed32e32194acc03b75753f3",
      "tree": "e47d019230025967f8f25bfabdfe6f51dce595c6",
      "parents": [
        "6b60d7b9df727726dfb7e59ca0a7caf14e81e0a2"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Wed May 18 21:16:00 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 19 16:17:51 2011 -0400"
      },
      "message": "net: ping: make local functions static\n\nAs these functions are only used in this file.\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f56e03e8dc149bf0ac2888d6843584f48c8700fc",
      "tree": "071864cd821423ff1caf06d824823b533cbcab77",
      "parents": [
        "6dcae1eaee2b437536b2fe928a609f9589691ebf"
      ],
      "author": {
        "name": "Vasiliy Kulikov",
        "email": "segoon@openwall.com",
        "time": "Tue May 17 00:16:56 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 17 14:16:58 2011 -0400"
      },
      "message": "net: ping: fix build failure\n\nIf CONFIG_PROC_SYSCTL\u003dn the building process fails:\n\n    ping.c:(.text+0x52af3): undefined reference to `inet_get_ping_group_range_net\u0027\n\nMoved inet_get_ping_group_range_net() to ping.c.\n\nReported-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1a8218e96271790a07dd7065a2ef173e0f67e328",
      "tree": "3bf2696f434e21c92809b4812fa34b57061ce783",
      "parents": [
        "534ea99b063de7c30262a8e22f0ab44dd7d11a71"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun May 15 21:26:31 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 16 11:49:39 2011 -0400"
      },
      "message": "net: ping: dont call udp_ioctl()\n\nudp_ioctl() really handles UDP and UDPLite protocols.\n\n1) It can increment UDP_MIB_INERRORS in case first_packet_length() finds\na frame with bad checksum.\n\n2) It has a dependency on sizeof(struct udphdr), not applicable to\nICMP/PING\n\nIf ping sockets need to handle SIOCINQ/SIOCOUTQ ioctl, this should be\ndone differently.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nAcked-by: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1b1cb1f78a5e9d54c13e176020c3e8ded5d081ce",
      "tree": "bc29b3c20433a678af2868aa5a49a56b8b9468dc",
      "parents": [
        "89c64d755fbf04d7541d526931dc4b38301946d1"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri May 13 22:59:19 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 15 01:22:21 2011 -0400"
      },
      "message": "net: ping: small changes\n\nping_table is not __read_mostly, since it contains one rwlock,\nand is static to ping.c\n\nping_port_rover \u0026 ping_v4_lookup are static\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c319b4d76b9e583a5d88d6bf190e079c4e43213d",
      "tree": "22fcc6f1c671908d640145c1f82e5290cd40f715",
      "parents": [
        "f20190302e3e697a166cc28ebef43058749dedda"
      ],
      "author": {
        "name": "Vasiliy Kulikov",
        "email": "segoon@openwall.com",
        "time": "Fri May 13 10:01:00 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 13 16:08:13 2011 -0400"
      },
      "message": "net: ipv4: add IPPROTO_ICMP socket kind\n\nThis patch adds IPPROTO_ICMP socket kind.  It makes it possible to send\nICMP_ECHO messages and receive the corresponding ICMP_ECHOREPLY messages\nwithout any special privileges.  In other words, the patch makes it\npossible to implement setuid-less and CAP_NET_RAW-less /bin/ping.  In\norder not to increase the kernel\u0027s attack surface, the new functionality\nis disabled by default, but is enabled at bootup by supporting Linux\ndistributions, optionally with restriction to a group or a group range\n(see below).\n\nSimilar functionality is implemented in Mac OS X:\nhttp://www.manpagez.com/man/4/icmp/\n\nA new ping socket is created with\n\n    socket(PF_INET, SOCK_DGRAM, PROT_ICMP)\n\nMessage identifiers (octets 4-5 of ICMP header) are interpreted as local\nports. Addresses are stored in struct sockaddr_in. No port numbers are\nreserved for privileged processes, port 0 is reserved for API (\"let the\nkernel pick a free number\"). There is no notion of remote ports, remote\nport numbers provided by the user (e.g. in connect()) are ignored.\n\nData sent and received include ICMP headers. This is deliberate to:\n1) Avoid the need to transport headers values like sequence numbers by\nother means.\n2) Make it easier to port existing programs using raw sockets.\n\nICMP headers given to send() are checked and sanitized. The type must be\nICMP_ECHO and the code must be zero (future extensions might relax this,\nsee below). The id is set to the number (local port) of the socket, the\nchecksum is always recomputed.\n\nICMP reply packets received from the network are demultiplexed according\nto their id\u0027s, and are returned by recv() without any modifications.\nIP header information and ICMP errors of those packets may be obtained\nvia ancillary data (IP_RECVTTL, IP_RETOPTS, and IP_RECVERR). ICMP source\nquenches and redirects are reported as fake errors via the error queue\n(IP_RECVERR); the next hop address for redirects is saved to ee_info (in\nnetwork order).\n\nsocket(2) is restricted to the group range specified in\n\"/proc/sys/net/ipv4/ping_group_range\".  It is \"1 0\" by default, meaning\nthat nobody (not even root) may create ping sockets.  Setting it to \"100\n100\" would grant permissions to the single group (to either make\n/sbin/ping g+s and owned by this group or to grant permissions to the\n\"netadmins\" group), \"0 4294967295\" would enable it for the world, \"100\n4294967295\" would enable it for the users, but not daemons.\n\nThe existing code might be (in the unlikely case anyone needs it)\nextended rather easily to handle other similar pairs of ICMP messages\n(Timestamp/Reply, Information Request/Reply, Address Mask Request/Reply\netc.).\n\nUserspace ping util \u0026 patch for it:\nhttp://openwall.info/wiki/people/segoon/ping\n\nFor Openwall GNU/*/Linux it was the last step on the road to the\nsetuid-less distro.  A revision of this patch (for RHEL5/OpenVZ kernels)\nis in use in Owl-current, such as in the 2011/03/12 LiveCD ISOs:\nhttp://mirrors.kernel.org/openwall/Owl/current/iso/\n\nInitially this functionality was written by Pavel Kankovsky for\nLinux 2.4.32, but unfortunately it was never made public.\n\nAll ping options (-b, -p, -Q, -R, -s, -t, -T, -M, -I), are tested with\nthe patch.\n\nPATCH v3:\n    - switched to flowi4.\n    - minor changes to be consistent with raw sockets code.\n\nPATCH v2:\n    - changed ping_debug() to pr_debug().\n    - removed CONFIG_IP_PING.\n    - removed ping_seq_fops.owner field (unused for procfs).\n    - switched to proc_net_fops_create().\n    - switched to %pK in seq_printf().\n\nPATCH v1:\n    - fixed checksumming bug.\n    - CAP_NET_RAW may not create icmp sockets anymore.\n\nRFC v2:\n    - minor cleanups.\n    - introduced sysctl\u0027able group range to restrict socket(2).\n\nSigned-off-by: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ]
}
