)]}'
{
  "log": [
    {
      "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": "411447019ab583c659600b0519db5658a2444f11",
      "tree": "3bf3e7c655c91097cead92c65334a4ebbb51906e",
      "parents": [
        "02bcf28c82c8e4b72c4b89bddbbb6fea1a646d07"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 17:20:23 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:20:23 2006 -0800"
      },
      "message": "[DCCP] CCID: Allow ccid_{init,exit} to be NULL\n\nTesting if the ccid being instantiated has these methods in\nccid_init().\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7c657876b63cb1d8a2ec06f8fc6c37bb8412e66c",
      "tree": "3cb2732870c9cf8f976cb6fa57e0223f1c648e2a",
      "parents": [
        "c4365c9235f80128c3c3d5993074173941b1c1f0"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Tue Aug 09 20:14:34 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:49:46 2005 -0700"
      },
      "message": "[DCCP]: Initial implementation\n\nDevelopment to this point was done on a subversion repository at:\n\nhttp://oops.ghostprotocols.net:81/cgi-bin/viewcvs.cgi/dccp-2.6/\n\nThis repository will be kept at this site for the foreseable future,\nso that interested parties can see the history of this code,\nattributions, etc.\n\nIf I ever decide to take this offline I\u0027ll provide the full history at\nsome other suitable place.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ]
}
