)]}'
{
  "log": [
    {
      "commit": "32dc43e40a2707d0cb1ab8768d080c3e9bcfed52",
      "tree": "415f3a1935fba0db2f0410360983587bf65ee712",
      "parents": [
        "d414c104e26fd3b597f855cc29473a8b1527fb4c",
        "8fd61d34226014fe7886babfca6f45a7eff89d25"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 25 15:56:15 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 25 15:56:15 2013 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6\n\nPull crypto update from Herbert Xu:\n \"Here is the crypto update for 3.9:\n\n   - Added accelerated implementation of crc32 using pclmulqdq.\n\n   - Added test vector for fcrypt.\n\n   - Added support for OMAP4/AM33XX cipher and hash.\n\n   - Fixed loose crypto_user input checks.\n\n   - Misc fixes\"\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (43 commits)\n  crypto: user - ensure user supplied strings are nul-terminated\n  crypto: user - fix empty string test in report API\n  crypto: user - fix info leaks in report API\n  crypto: caam - Added property fsl,sec-era in SEC4.0 device tree binding.\n  crypto: use ERR_CAST\n  crypto: atmel-aes - adjust duplicate test\n  crypto: crc32-pclmul - Kill warning on x86-32\n  crypto: x86/twofish - assembler clean-ups: use ENTRY/ENDPROC, localize jump labels\n  crypto: x86/sha1 - assembler clean-ups: use ENTRY/ENDPROC\n  crypto: x86/serpent - use ENTRY/ENDPROC for assember functions and localize jump targets\n  crypto: x86/salsa20 - assembler cleanup, use ENTRY/ENDPROC for assember functions and rename ECRYPT_* to salsa20_*\n  crypto: x86/ghash - assembler clean-up: use ENDPROC at end of assember functions\n  crypto: x86/crc32c - assembler clean-up: use ENTRY/ENDPROC\n  crypto: cast6-avx: use ENTRY()/ENDPROC() for assembler functions\n  crypto: cast5-avx: use ENTRY()/ENDPROC() for assembler functions and localize jump targets\n  crypto: camellia-x86_64/aes-ni: use ENTRY()/ENDPROC() for assembler functions and localize jump targets\n  crypto: blowfish-x86_64: use ENTRY()/ENDPROC() for assembler functions and localize jump targets\n  crypto: aesni-intel - add ENDPROC statements for assembler functions\n  crypto: x86/aes - assembler clean-ups: use ENTRY/ENDPROC, localize jump targets\n  crypto: testmgr - add test vector for fcrypt\n  ...\n"
    },
    {
      "commit": "3e8afe35c36fa0e928e038667709966a71a9cfa5",
      "tree": "b74592dd4ec5e9fdcb89abf82374ecd9cd2e89b8",
      "parents": [
        "7b5c253c88ae5f6770e426b1d3f135be75483200"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "Julia.Lawall@lip6.fr",
        "time": "Tue Jan 22 12:29:26 2013 +0100"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Feb 04 21:16:53 2013 +0800"
      },
      "message": "crypto: use ERR_CAST\n\nReplace PTR_ERR followed by ERR_PTR by ERR_CAST, to be more concise.\n\nThe semantic patch that makes this change is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@@\nexpression err,x;\n@@\n-       err \u003d PTR_ERR(x);\n        if (IS_ERR(x))\n-                return ERR_PTR(err);\n+                return ERR_CAST(x);\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cJulia.Lawall@lip6.fr\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "69d3150cfc2075d1693d17dc711de61bf4e4a6c4",
      "tree": "d7adbb68df3daa6d6f8fc39b1b27c0255083f9db",
      "parents": [
        "71331da500cc13dc3c7e5db397d553c80b2e9994"
      ],
      "author": {
        "name": "Jussi Kivilinna",
        "email": "jussi.kivilinna@mbnet.fi",
        "time": "Fri Dec 28 12:04:58 2012 +0200"
      },
      "committer": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Tue Jan 08 07:03:04 2013 +0100"
      },
      "message": "crypto: ctr - make rfc3686 asynchronous block cipher\n\nSome hardware crypto drivers register asynchronous ctr(aes), which is left\nunused in IPSEC because rfc3686 template only supports synchronous block\nciphers. Some other drivers register rfc3686(ctr(aes)) to workaround this\nlimitation but not all.\n\nThis patch changes rfc3686 to use asynchronous block ciphers, to allow async\nctr(aes) algorithms to be utilized automatically by IPSEC.\n\nSigned-off-by: Jussi Kivilinna \u003cjussi.kivilinna@mbnet.fi\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\n"
    },
    {
      "commit": "8db050786aaf7a43f4c7a900a103f99ea0fb493f",
      "tree": "c9f270bd1567a09fff432b0d733611174b81251c",
      "parents": [
        "1efbd15c3bc2b79d33e033e898211109c32159fa"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Wed May 26 10:36:51 2010 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed May 26 10:36:51 2010 +1000"
      },
      "message": "crypto: Use ERR_CAST\n\nUse ERR_CAST(x) rather than ERR_PTR(PTR_ERR(x)).  The former makes more\nclear what is the purpose of the operation, which otherwise looks like a\nno-op.\n\nThe semantic patch that makes this change is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@@\ntype T;\nT x;\nidentifier f;\n@@\n\nT f (...) { \u003c+...\n- ERR_PTR(PTR_ERR(x))\n+ x\n ...+\u003e }\n\n@@\nexpression x;\n@@\n\n- ERR_PTR(PTR_ERR(x))\n+ ERR_CAST(x)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "aef27136b8b5e526f2e96ca1caa30a6d07e70f42",
      "tree": "3192bd703f2e4971318ac6a7eabb33007c1eac96",
      "parents": [
        "73fec1209433d6b33924c1b06122ee217ce98931"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Aug 13 23:10:39 2009 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Aug 13 23:10:39 2009 +1000"
      },
      "message": "crypto: ctr - Use chainiv on raw counter mode\n\nRaw counter mode only works with chainiv, which is no longer\nthe default IV generator on SMP machines.  This broke raw counter\nmode as it can no longer instantiate as a givcipher.\n\nThis patch fixes it by always picking chainiv on raw counter\nmode.  This is based on the diagnosis and a patch by Huang\nYing.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "0a270321dbf948963aeb0e8382fe17d2c2eb3771",
      "tree": "bdb6c12f88bd02b62853ff6bf26bf9d4a736fdbd",
      "parents": [
        "45d44eb56ad197cfccb8f84b5df64abff8b7cb96"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Nov 30 21:38:37 2007 +1100"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:48 2008 +1100"
      },
      "message": "[CRYPTO] seqiv: Add Sequence Number IV Generator\n\nThis generator generates an IV based on a sequence number by xoring it\nwith a salt.  This algorithm is mainly useful for CTR and similar modes.\n\nThis patch also sets it as the default IV generator for ctr.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "5311f248b7764ba8b59e6d477355f766e5609686",
      "tree": "228910c68fc3d29a6bfe82cccfdc042e4003ebd2",
      "parents": [
        "653ebd9c8510a7d647ed23e66e1338f848ebdbab"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Dec 17 21:34:32 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:41 2008 +1100"
      },
      "message": "[CRYPTO] ctr: Refactor into ctr and rfc3686\n\nAs discussed previously, this patch moves the basic CTR functionality\ninto a chainable algorithm called ctr.  The IPsec-specific variant of\nit is now placed on top with the name rfc3686.\n\nSo ctr(aes) gives a chainable cipher with IV size 16 while the IPsec\nvariant will be called rfc3686(ctr(aes)).  This patch also adjusts\ngcm accordingly.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "0971eb0de9446b66bd45696338f54948314db379",
      "tree": "379cd3396219f9187a23ea6c57bae62de1d4cef9",
      "parents": [
        "06e1a8f0505426a97292174a959560fd86ea0a3d"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Nov 30 00:23:53 2007 +1100"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:24 2008 +1100"
      },
      "message": "[CRYPTO] ctr: Fix multi-page processing\n\nWhen the data spans across a page boundary, CTR may incorrectly process\na partial block in the middle because the blkcipher walking code may\nsupply partial blocks in the middle as long as the total length of the\nsupplied data is more than a block.  CTR is supposed to return any unused\npartial block in that case to the walker.\n\nThis patch fixes this by doing exactly that, returning partial blocks to\nthe walker unless we received less than a block-worth of data to start\nwith.\n\nThis also allows us to optimise the bulk of the processing since we no\nlonger have to worry about partial blocks until the very end.\n\nThanks to Tan Swee Heng for fixes and actually testing this :)\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "3f8214ea335e422702340d7e835921e78367f99d",
      "tree": "ef8b7ef5c7e2d079e05e2a048db22eb183498235",
      "parents": [
        "d0b9007a27206fe944d9db72e13dab157b8e118c"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Nov 20 20:32:56 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:20 2008 +1100"
      },
      "message": "[CRYPTO] ctr: Use crypto_inc and crypto_xor\n\nThis patch replaces the custom inc/xor in CTR with the generic functions.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "41fdab3dd385dde36caae60ed2df82aecb7a32f0",
      "tree": "aed4c4e7630cebc8b66d33fa6e26ec20f564bbd8",
      "parents": [
        "d3e7480572bf882dee5baa2891bccbfa3db0b1a1"
      ],
      "author": {
        "name": "Joy Latten",
        "email": "latten@austin.ibm.com",
        "time": "Wed Nov 07 22:59:47 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:08 2008 +1100"
      },
      "message": "[CRYPTO] ctr: Add countersize\n\nThis patch adds countersize to CTR mode.\nThe template is now ctr(algo,noncesize,ivsize,countersize).\n\nFor example, ctr(aes,4,8,4) indicates the counterblock\nwill be composed of a salt/nonce that is 4 bytes, an iv\nthat is 8 bytes and the counter is 4 bytes.\n\nWhen noncesize + ivsize \u003c blocksize, CTR initializes the\nlast block - ivsize - noncesize portion of the block to\nzero.  Otherwise the counter block is composed of the IV\n(and nonce if necessary).\n\nIf noncesize + ivsize \u003d\u003d blocksize, then this indicates that\nuser is passing in entire counterblock. Thus countersize\nindicates the amount of bytes in counterblock to use as\nthe counter for incrementing. CTR will increment counter\nportion by 1, and begin encryption with that value.\n\nNote that CTR assumes the counter portion of the block that\nwill be incremented is stored in big endian.\n\nSigned-off-by: Joy Latten \u003clatten@austin.ibm.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "23e353c8a681cc30d42fbd4f2c2be85c44fe209b",
      "tree": "d64934fa42e3e1e2b3fcccb4e86168a1614e250d",
      "parents": [
        "490fe3f05be3f7c87d7932bcb6e6e53e3db2cd9c"
      ],
      "author": {
        "name": "Joy Latten",
        "email": "latten@austin.ibm.com",
        "time": "Tue Oct 23 08:50:32 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:01 2008 +1100"
      },
      "message": "[CRYPTO] ctr: Add CTR (Counter) block cipher mode\n\nThis patch implements CTR mode for IPsec.\nIt is based off of RFC 3686.\n\nPlease note:\n1. CTR turns a block cipher into a stream cipher.\nEncryption is done in blocks, however the last block\nmay be a partial block.\n\nA \"counter block\" is encrypted, creating a keystream\nthat is xor\u0027ed with the plaintext. The counter portion\nof the counter block is incremented after each block\nof plaintext is encrypted.\nDecryption is performed in same manner.\n\n2. The CTR counterblock is composed of,\n        nonce + IV + counter\n\nThe size of the counterblock is equivalent to the\nblocksize of the cipher.\n        sizeof(nonce) + sizeof(IV) + sizeof(counter) \u003d blocksize\n\nThe CTR template requires the name of the cipher\nalgorithm, the sizeof the nonce, and the sizeof the iv.\n        ctr(cipher,sizeof_nonce,sizeof_iv)\n\nSo for example,\n        ctr(aes,4,8)\nspecifies the counterblock will be composed of 4 bytes\nfrom a nonce, 8 bytes from the iv, and 4 bytes for counter\nsince aes has a blocksize of 16 bytes.\n\n3. The counter portion of the counter block is stored\nin big endian for conformance to rfc 3686.\n\nSigned-off-by: Joy Latten \u003clatten@austin.ibm.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    }
  ]
}
