)]}'
{
  "log": [
    {
      "commit": "86937c05cb44654649a089744cd49ab0dc6873a8",
      "tree": "a283a8ee7d4cb38dcbaf6b239d422b079c47130b",
      "parents": [
        "cff109768b2d9c03095848f4cd4b0754117262aa"
      ],
      "author": {
        "name": "Zhao Hongjiang",
        "email": "zhaohongjiang@huawei.com",
        "time": "Fri Nov 16 03:03:02 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 18 20:32:45 2012 -0500"
      },
      "message": "user_ns: get rid of duplicate code in net_ctl_permissions\n\nGet rid of duplicate code in net_ctl_permissions and fix the comment.\n\nSigned-off-by: Zhao Hongjiang \u003czhaohongjiang@huawei.com\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cff109768b2d9c03095848f4cd4b0754117262aa",
      "tree": "353b3a45a3520d12171182862ecc328958be3c5e",
      "parents": [
        "dfc47ef8639facd77210e74be831943c2fdd9c74"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Nov 16 03:03:01 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 18 20:32:45 2012 -0500"
      },
      "message": "net: Update the per network namespace sysctls to be available to the network namespace owner\n\n- Allow anyone with CAP_NET_ADMIN rights in the user namespace of the\n  the netowrk namespace to change sysctls.\n- Allow anyone the uid of the user namespace root the same\n  permissions over the network namespace sysctls as the global root.\n- Allow anyone with gid of the user namespace root group the same\n  permissions over the network namespace sysctl as the global root group.\n\nSigned-off-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "73f7ef435934e952c1d70d83d69921ea5d1f6bd4",
      "tree": "a5d0bbe5e1154eaec96f859507e90bae4b34d0b9",
      "parents": [
        "d328b836823cd4a76611a45f52e208f8ce3d75d7"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Nov 16 03:02:58 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 18 20:30:55 2012 -0500"
      },
      "message": "sysctl: Pass useful parameters to sysctl permissions\n\n- Current is implicitly avaiable so passing current-\u003ensproxy isn\u0027t useful.\n- The ctl_table_header is needed to find how the sysctl table is connected\n  to the rest of sysctl.\n- ctl_table_root is avaiable in the ctl_table_header so no need to it.\n\nWith these changes it becomes possible to write a version of\nnet_sysctl_permission that takes into account the network namespace of\nthe sysctl table, an important feature in extending the user namespace.\n\nAcked-by: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nSigned-off-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "211ed865108e24697b44bee5daac502ee6bdd4a4",
      "tree": "2a902c914f96298f265ef52cba5e463c5c8dea32",
      "parents": [
        "60eea6cf2964beea6c38d9050bc3823a93db97e0"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu May 10 17:14:35 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue May 15 20:14:35 2012 -0400"
      },
      "message": "net: delete all instances of special processing for token ring\n\nWe are going to delete the Token ring support.  This removes any\nspecial processing in the core networking for token ring, (aside\nfrom net/tr.c itself), leaving the drivers and remaining tokenring\nsupport present but inert.\n\nThe mass removal of the drivers and net/tr.c will be in a separate\ncommit, so that the history of these files that we still care\nabout won\u0027t have the giant deletion tied into their history.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "5f568e5afe35721f2f692bccab243ba87cd8f87a",
      "tree": "cf768cf2fc95974f9228848722aa1afb8fd02a33",
      "parents": [
        "a5347fe36b313c07d59b065d00a8fa56362c5f97"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:46:06 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:22:30 2012 -0400"
      },
      "message": "net: Remove register_net_sysctl_table\n\nAll of the users have been converted to use registera_net_sysctl so we\nno longer need register_net_sysctl.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4344475797a16ef948385780943f7a5cf09f0675",
      "tree": "1cd80eae7c46a1e3f2f5c546212d84d007a5dffa",
      "parents": [
        "2ca794e5e86c800d7f98c4ebb8bd325099c0afe8"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:22:55 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:21:17 2012 -0400"
      },
      "message": "net: Kill register_sysctl_rotable\n\nregister_sysctl_rotable never caught on as an interesting way to\nregister sysctls.  My take on the situation is that what we want are\nsysctls that we can only see in the initial network namespace.  What we\nhave implemented with register_sysctl_rotable are sysctls that we can\nsee in all of the network namespaces and can only change in the initial\nnetwork namespace.\n\nThat is a very silly way to go.  Just register the network sysctls\nin the initial network namespace and we don\u0027t have any weird special\ncases to deal with.\n\nThe sysctls affected are:\n/proc/sys/net/ipv4/ipfrag_secret_interval\n/proc/sys/net/ipv4/ipfrag_max_dist\n/proc/sys/net/ipv6/ip6frag_secret_interval\n/proc/sys/net/ipv6/mld_max_msf\n\nI really don\u0027t expect anyone will miss them if they can\u0027t read them in a\nchild user namespace.\n\nCC: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2ca794e5e86c800d7f98c4ebb8bd325099c0afe8",
      "tree": "f0ae38f58dec5a07ae57e31aca4943c85ffe9d65",
      "parents": [
        "bc8a36942a5c05896d373a8e98d5e6b14514b4bc"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:20:32 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:21:16 2012 -0400"
      },
      "message": "net sysctl: Initialize the network sysctls sooner to avoid problems.\n\nIf the netfilter code is modified to use register_net_sysctl_table the\nkernel fails to boot because the per net sysctl infrasturce is not setup\nsoon enough.  So to avoid races call net_sysctl_init from sock_init().\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bc8a36942a5c05896d373a8e98d5e6b14514b4bc",
      "tree": "178bddda37da663a4bcc4dd57bf68f53b6b8a4bf",
      "parents": [
        "ab41a2ca50d27ee2dc8b9eef07aeb251168271be"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:19:46 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:21:16 2012 -0400"
      },
      "message": "net sysctl: Register an empty /proc/sys/net\n\nImplementation limitations of the sysctl core won\u0027t let /proc/sys/net\nreside in a network namespace.  /proc/sys/net at least must be registered\nas a normal sysctl.  So register /proc/sys/net early as an empty directory\nto guarantee we don\u0027t violate this constraint and hit bugs in the sysctl\nimplementation.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ab41a2ca50d27ee2dc8b9eef07aeb251168271be",
      "tree": "f564a922248d90a0007b9958fbef4964501d98f9",
      "parents": [
        "167de77fd4e5646f98f67bd9f0a0054a891f6ff4"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:18:47 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:21:15 2012 -0400"
      },
      "message": "net: Implement register_net_sysctl.\n\nRight now all of the networking sysctl registrations are running in a\ncompatibiity mode.  The natvie sysctl registration api takes a cstring\nfor a path and a simple ctl_table.  Implement register_net_sysctl so\nthat we can register network sysctls without needing to use\ncompatiblity code in the sysctl core.\n\nSwitching from a ctl_path to a cstring results in less boiler plate\nand denser code that is a little easier to read.\n\nI would simply have changed the arguments to register_net_sysctl_table\ninstead of keeping two functions in parallel but gcc will allow a\nctl_path pointer to be passed to a char * pointer with only issuing a\nwarning resulting in completely incorrect code can be built.  Since I\nhave to change the function name I am taking advantage of the situation\nto let both register_net_sysctl and register_net_sysctl_table live for a\nshort time in parallel which makes clean conversion patches a bit easier\nto read and write.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "60a47a2e823cbe6b609346bffff61a00c0c76470",
      "tree": "b19ac63068757893d6f110cf31d27fb59942d005",
      "parents": [
        "0e47c99d7fe25e0f3907d9f3401079169d904891"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sun Jan 08 00:02:37 2012 -0800"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Jan 24 16:40:30 2012 -0800"
      },
      "message": "sysctl: Modify __register_sysctl_paths to take a set instead of a root and an nsproxy\n\nAn nsproxy argument here has always been awkard and now the nsproxy argument\nis completely unnecessary so remove it, replacing it with the set we want\nthe registered tables to show up in.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "9eb47c26f09e27506d343ef52e634b2a50ee21ef",
      "tree": "6055ec285771cf35c233d63c783b5c8381847094",
      "parents": [
        "6a75ce167c53b41f15088d3c2c7e51c89dc8798a"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sun Jan 22 21:26:00 2012 -0800"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Jan 24 16:40:29 2012 -0800"
      },
      "message": "sysctl: Add a root pointer to ctl_table_set\n\nAdd a ctl_table_root pointer to ctl_table set so it is easy to\ngo from a ctl_table_set to a ctl_table_root.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "bd295b56cfae85f2dd6c2b03951480c91e6d08f3",
      "tree": "7f8667dbf6c297897b6427d228885d565e263c66",
      "parents": [
        "97324cd804b7b9fb6044e114329335db79810425"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sun Jan 22 21:10:21 2012 -0800"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Jan 24 16:37:55 2012 -0800"
      },
      "message": "sysctl: Remove the unnecessary sysctl_set parent concept.\n\nIn sysctl_net register the two networking roots in the proper order.\n\nIn register_sysctl walk the sysctl sets in the reverse order of the\nsysctl roots.\n\nRemove parent from ctl_table_set and setup_sysctl_set as it is no\nlonger needed.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "97324cd804b7b9fb6044e114329335db79810425",
      "tree": "ffebd82bb36069d38b9063328920f39434eb5155",
      "parents": [
        "a15e20982e2fbb06e85da584a0f150784042c17d"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Jan 09 22:19:13 2012 -0800"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Jan 24 16:37:55 2012 -0800"
      },
      "message": "sysctl: Implement retire_sysctl_set\n\nThis adds a small helper retire_sysctl_set to remove the intimate knowledge about\nthe how a sysctl_set is implemented from net/sysct_net.c\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "de4e83bd6b5e16d491ec068cd22801d5d063b07a",
      "tree": "d6b38f1284186abe5f20cfe996be9a4853c503b4",
      "parents": [
        "0ce8974d504913a0f0ae2d97b20a5ac665431a41"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Jan 06 03:34:20 2012 -0800"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Jan 24 16:37:54 2012 -0800"
      },
      "message": "sysctl: Register the base sysctl table like any other sysctl table.\n\nSimplify the code by treating the base sysctl table like any other\nsysctl table and register it with register_sysctl_table.\n\nTo ensure this table is registered early enough to avoid problems\ncall sysctl_init from proc_sys_init.\n\nRename sysctl_net.c:sysctl_init() to net_sysctl_init() to avoid\nname conflicts now that kernel/sysctl.c:sysctl_init() is no longer\nstatic.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\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": "3fa21e07e6acefa31f974d57fba2b6920a7ebd1a",
      "tree": "4254644ef2579e9ac96db6ec0535b5e4231fd18e",
      "parents": [
        "b60b6592baa69c43a5a0f55d6300a7feaab15338"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon May 17 23:08:21 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 17 23:23:14 2010 -0700"
      },
      "message": "net: Remove unnecessary returns from void function()s\n\nThis patch removes from net/ (but not any netfilter files)\nall the unnecessary return; statements that precede the\nlast closing brace of void functions.\n\nIt does not remove the returns that are immediately\npreceded by a label as gcc doesn\u0027t like that.\n\nDone via:\n$ grep -rP --include\u003d*.[ch] -l \"return;\\n}\" net/ | \\\n  xargs perl -i -e \u0027local $/ ; while (\u003c\u003e) { s/\\n[ \\t\\n]+return;\\n}/\\n}/g; print; }\u0027\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2c8c1e7297e19bdef3c178c3ea41d898a7716e3e",
      "tree": "4d336562e8d5379732a0646e17b0bb1750111ef6",
      "parents": [
        "72659ecce68588b74f6c46862c2b4cec137d7a5a"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sun Jan 17 03:35:32 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 17 19:16:02 2010 -0800"
      },
      "message": "net: spread __net_init, __net_exit\n\n__net_init/__net_exit are apparently not going away, so use them\nto full extent.\n\nIn some cases __net_init was removed, because it was called from\n__net_exit code.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "81a1d3c31e3517f9939b3e04d21cf4a6b0997419",
      "tree": "bf0195c4f92cf7b2211781c7b46001d696f22a17",
      "parents": [
        "acc738fec03bdaa5b77340c32a82fbfedaaabef0"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Mon Mar 16 16:23:30 2009 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Mar 16 16:23:30 2009 +0100"
      },
      "message": "net: sysctl_net - use net_eq to compare nets\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nAcked-by: Daniel Lezcano \u003cdaniel.lezcano@free.fr\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "eeb61f719c00c626115852bbc91189dc3011a844",
      "tree": "b52cddf222ee55082c0aeee5627049aa0d12afa4",
      "parents": [
        "bfbcf034798b2ca45338cee5049b5694b7ddc865"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ZenIV.linux.org.uk",
        "time": "Sun Jul 27 08:59:33 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 27 09:45:34 2008 -0700"
      },
      "message": "missing bits of net-namespace / sysctl\n\nPiss-poor sysctl registration API strikes again, film at 11...\n\nWhat we really need is _pathname_ required to be present in already\nregistered table, so that kernel could warn about bad order.  That\u0027s the\nnext target for sysctl stuff (and generally saner and more explicit\norder of initialization of ipv[46] internals wouldn\u0027t hurt either).\n\nFor the time being, here are full fixups required by ..._rotable()\nstuff; we make per-net sysctl sets descendents of \"ro\" one and make sure\nthat sufficient skeleton is there before we start registering per-net\nsysctls.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "734550921e9b7ab924a43aa3d0bd4239dac4fbf1",
      "tree": "7be4b0808ba9860f1d953b45120262a277866021",
      "parents": [
        "7ac6cd653d7c31ad6b7bb5b88c549c4ebf628c34"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jul 14 21:22:20 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:08 2008 -0400"
      },
      "message": "[PATCH] beginning of sysctl cleanup - ctl_table_set\n\nNew object: set of sysctls [currently - root and per-net-ns].\nContains: pointer to parent set, list of tables and \"should I see this set?\"\nmethod (-\u003eis_seen(set)).\nCurrent lists of tables are subsumed by that; net-ns contains such a beast.\n-\u003elookup() for ctl_table_root returns pointer to ctl_table_set instead of\nthat to -\u003elist of that ctl_table_set.\n\n[folded compile fixes by rdd for configs without sysctl]\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "4ecb90090c84210a8bd2a9d7a5906e616735873c",
      "tree": "a7baec8859ff9750296be318400ba4475eb40b6c",
      "parents": [
        "99541c23cd32bacf1a591ca537a7c0cb9053ad7e"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Jul 25 01:48:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:45 2008 -0700"
      },
      "message": "sysctl: allow override of /proc/sys/net with CAP_NET_ADMIN\n\nExtend the permission check for networking sysctl\u0027s to allow modification\nwhen current process has CAP_NET_ADMIN capability and is not root.  This\nversion uses the until now unused permissions hook to override the mode\nvalue for /proc/sys/net if accessed by a user with capabilities.\n\nFound while working with Quagga.  It is impossible to turn forwarding\non/off through the command interface because Quagga uses secure coding\npractice of dropping privledges during initialization and only raising via\ncapabilities when necessary.  Since the dameon has reset real/effective\nuid after initialization, all attempts to access /proc/sys/net variables\nwill fail.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nAcked-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Andrew Morgan \u003cmorgan@kernel.org\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0b040829952d84bf2a62526f0e24b624e0699447",
      "tree": "b2e836e7e64343f19b949e50099bbe2ea554ec30",
      "parents": [
        "573bf470e693f73a6ac437b17a64a10902ba54bf"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Jun 10 22:46:50 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 11 21:00:38 2008 -0700"
      },
      "message": "net: remove CVS keywords\n\nThis patch removes CVS keywords that weren\u0027t updated for a long time\nfrom comments.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d62c612ef8a66be534a3ada598cfa28d40cd0b3c",
      "tree": "d076e1ceaaff2aca70883a915bfb771c56034487",
      "parents": [
        "5b06c85c3b96fa8db632f1ee94f99a2bd0215f3a"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon May 19 13:45:33 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 19 13:45:33 2008 -0700"
      },
      "message": "netns: Introduce sysctl root for read-only net sysctls.\n\nThis one stores all ctl-heads in one list and restricts the\npermissions not give write access to non-init net namespaces.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ab59859de1946a098b091308380179e92dc7683b",
      "tree": "96a066bb435283485472221c9cc60cf627e11982",
      "parents": [
        "c2a3b233450d5bc426c063ea2d8a74351db29ea4"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Thu May 01 02:47:38 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 01 02:47:38 2008 -0700"
      },
      "message": "net: fix returning void-valued expression warnings\n\ndrivers/net/8390.c:37:2: warning: returning void-valued expression\ndrivers/net/bnx2.c:1635:3: warning: returning void-valued expression\ndrivers/net/xen-netfront.c:1806:2: warning: returning void-valued expression\nnet/ipv4/tcp_hybla.c:105:3: warning: returning void-valued expression\nnet/ipv4/tcp_vegas.c:171:3: warning: returning void-valued expression\nnet/ipv4/tcp_veno.c:123:3: warning: returning void-valued expression\nnet/sysctl_net.c:85:2: warning: returning void-valued expression\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nAcked-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "08913681e484f3f0db949dd0809012e089846216",
      "tree": "5fd37f75f1de49d21fb49bb4e51f2bd4f1dcf849",
      "parents": [
        "36f0bebd9865dc7e327777fca34b75e65cbfd1a6"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Dec 05 01:42:49 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:29 2008 -0800"
      },
      "message": "[NET]: Remove the empty net_table\n\nI have removed all the entries from this table (core_table,\nipv4_table and tr_table), so now we can safely drop it.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "36f0bebd9865dc7e327777fca34b75e65cbfd1a6",
      "tree": "394626193facaaa5dd86e284617c74fb6c8a0494",
      "parents": [
        "3e37c3f9978839d91188e4ca0cc662a7245f28e4"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Jan 24 17:04:49 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:28 2008 -0800"
      },
      "message": "[TR]: Use ctl paths to register net/token-ring/ table\n\nThe same thing for token-ring - use ctl paths and get\nrid of external references on the tr_table.\n\nUnfortunately, I couldn\u0027t split this patch into cleanup and\nuse-the-paths parts.\n\nAs a lame excuse I can say, that the cleanup is just moving\nthe tr_table from one file to another - closet to a single\nvariable, that this ctl table tunes. Since the source  file\nbecomes empty after the move, I remove it.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3e37c3f9978839d91188e4ca0cc662a7245f28e4",
      "tree": "56574ce30de6f52e2d476b1a3a9993a380edcec6",
      "parents": [
        "9ba639797606acbcd97be886f41fbce163914e7b"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Dec 05 01:41:26 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:27 2008 -0800"
      },
      "message": "[IPV4]: Use ctl paths to register net/ipv4/ table\n\nThis is the same as I did for the net/core/ table in the\nsecond patch in his series: use the paths and isolate the\nwhole table in the .c file.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "33eb9cfc700ae9ce621d47d6ca6d6b4ad7cd97f3",
      "tree": "d5e3c0e9644249fa327c613571613c43ec474c6b",
      "parents": [
        "7e2e109cef0d59abcb9aca8b82993e304ed8970c"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Dec 05 01:37:34 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:26 2008 -0800"
      },
      "message": "[NET]: Isolate the net/core/ sysctl table\n\nUsing ctl paths we can put all the stuff, related to net/core/\nsysctl table, into one file and remove all the references on it.\n\nAs a good side effect this hides the \"core_table\" name from\nthe global scope :)\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "95bdfccb2bf4ea21c0065772c6a2c75cbaf6ad0d",
      "tree": "779993b29b8e348e14497496f3c9d318fb0b0d0e",
      "parents": [
        "e51b6ba077791f2f8c876022b37419be7a2ceec3"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Nov 30 23:55:42 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:18 2008 -0800"
      },
      "message": "[NET]: Implement the per network namespace sysctl infrastructure\n\nThe user interface is: register_net_sysctl_table and\nunregister_net_sysctl_table.  Very much like the current\ninterface except there is a network namespace parameter.\n\nWith this any sysctl registered with register_net_sysctl_table\nwill only show up to tasks in the same network namespace.\n\nAll other sysctls continue to be globally visible.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\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": "6569a351da7e58d6f0fbc92fcf0bef5d4a4bc0a4",
      "tree": "9057632e3b8d7abf6c0398723c1c0bbb825937dd",
      "parents": [
        "92cd6eeea62e235fcb6634d87d1572c3da59f088"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Mon Jun 05 15:34:11 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 05 15:34:11 2006 -0700"
      },
      "message": "[NET]: Eliminate unused /proc/sys/net/ethernet\n\nThe /proc/sys/net/ethernet directory has been sitting empty for more than\n10 years!  Time to eliminate it!\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "496a22b08fa326bf17c11eb900e0505aa9da3506",
      "tree": "abf14a82d195d0ead07d3ec1cafd77ee31d1bbc4",
      "parents": [
        "81c3d5470ecc70564eb9209946730fe2be93ad06"
      ],
      "author": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Mon Oct 03 14:16:34 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 03 14:16:34 2005 -0700"
      },
      "message": "[NET]: Fix \"sysctl_net.c:36: error: \u0027core_table\u0027 undeclared here\"\n\nDuring the build for ARM machine type \"fortunet\", this error occurred:\n\n  CC      net/sysctl_net.o\nnet/sysctl_net.c:36: error: \u0027core_table\u0027 undeclared here (not in a function)\n\nIt appears that the following configuration settings cause this error\ndue to a missing include:\nCONFIG_SYSCTL\u003dy\nCONFIG_NET\u003dy\n# CONFIG_INET is not set\n\ncore_table appears to be declared in net/sock.h.  if CONFIG_INET were\ndefined, net/sock.h would have been included via:\n  sysctl_net.c -\u003e net/ip.h -\u003e linux/ip.h -\u003e net/sock.h\n\nso include it directly.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "20380731bc2897f2952ae055420972ded4cd786e",
      "tree": "abd31e5ebfadcf4f9024634eec8b11855029e512",
      "parents": [
        "9deff7f2365958c5c5aa8cb5a0dd651c4dd83f8f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Aug 16 02:18:02 2005 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 16:01:32 2005 -0700"
      },
      "message": "[NET]: Fix sparse warnings\n\nOf this type, mostly:\n\nCHECK   net/ipv6/netfilter.c\nnet/ipv6/netfilter.c:96:12: warning: symbol \u0027ipv6_netfilter_init\u0027 was not declared. Should it be static?\nnet/ipv6/netfilter.c:101:6: warning: symbol \u0027ipv6_netfilter_fini\u0027 was not declared. Should it be static?\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
