)]}'
{
  "log": [
    {
      "commit": "584fffc8b1965cc09ebc4b7608bafcbf12ad5244",
      "tree": "ebe4532239f556dda9770ac1e76589ac76448d1d",
      "parents": [
        "3af5b90bde5000abc739996cb03fd718e753d053"
      ],
      "author": {
        "name": "Sebastian Siewior",
        "email": "sebastian@breakpoint.cc",
        "time": "Sat Apr 05 21:04:48 2008 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Apr 21 10:19:34 2008 +0800"
      },
      "message": "[CRYPTO] kconfig: Ordering cleanup\n\nCiphers, block modes, name it, are grouped together and sorted.\n\nSigned-off-by: Sebastian Siewior \u003csebastian@breakpoint.cc\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "c3715cb90f722b1cf5f6f073be02cc8a49659b90",
      "tree": "ee1ec3eb75ee2083b41ee21dadc4342115f6e8fb",
      "parents": [
        "76cb9521795a167ae3d206343c072f602d84f815"
      ],
      "author": {
        "name": "Sebastian Siewior",
        "email": "sebastian@breakpoint.cc",
        "time": "Sun Mar 30 16:36:09 2008 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Apr 21 10:19:23 2008 +0800"
      },
      "message": "[CRYPTO] api: Make the crypto subsystem fully modular\n\nSigned-off-by: Sebastian Siewior \u003csebastian@breakpoint.cc\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "76cb9521795a167ae3d206343c072f602d84f815",
      "tree": "36aa2e201867c76ac244de69e1bb16befa0504ee",
      "parents": [
        "fd4609a8e00a867303783ade62d67953fb72adc8"
      ],
      "author": {
        "name": "Kevin Coffman",
        "email": "kwc@citi.umich.edu",
        "time": "Mon Mar 24 21:26:16 2008 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Apr 21 10:19:23 2008 +0800"
      },
      "message": "[CRYPTO] cts: Add CTS mode required for Kerberos AES support\n\nImplement CTS wrapper for CBC mode required for support of AES\nencryption support for Kerberos (rfc3962).\n\nSigned-off-by: Kevin Coffman \u003ckwc@citi.umich.edu\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "3e16bfbaf3195b4725bc87d6a1ef11bf7716e83d",
      "tree": "4d0fc88314cae0377ce55c42c0d9e81d48185709",
      "parents": [
        "76fc60a2e3c6aa6e98cd3a5cb81a1855c637b274"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sat Feb 23 11:13:00 2008 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sat Feb 23 11:13:00 2008 +0800"
      },
      "message": "[CRYPTO] authenc: Add missing Kconfig dependency on BLKCIPHER\n\nThe authenc algorithm requires BLKCIPHER to be present.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "c8620c2590f43eff864fe597fcbe5b72ab7a7b94",
      "tree": "0c1889e10f00675ac959621fc9d964f2b6be25fb",
      "parents": [
        "242f1a343776a621ad5c3446d6f2718d37863cb5"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Mon Feb 18 09:00:05 2008 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Feb 18 09:00:05 2008 +0800"
      },
      "message": "[CRYPTO] null: Add missing Kconfig dependency on BLKCIPHER\n\nThis patch fixes the following build error caused by commit \n3631c650c495d61b1dabf32eb26b46873636e918:\n\n\u003c--  snip  --\u003e\n\n...\n  LD      .tmp_vmlinux1\ncrypto/built-in.o: In function `skcipher_null_crypt\u0027:\ncrypto_null.c:(.text+0x3d14): undefined reference to `blkcipher_walk_virt\u0027\ncrypto_null.c:(.text+0x3d14): relocation truncated to fit: R_MIPS_26 against `blkcipher_walk_virt\u0027\ncrypto/built-in.o: In function `$L32\u0027:\ncrypto_null.c:(.text+0x3d54): undefined reference to `blkcipher_walk_done\u0027\ncrypto_null.c:(.text+0x3d54): relocation truncated to fit: R_MIPS_26 against `blkcipher_walk_done\u0027\ncrypto/built-in.o:(.data+0x2e8): undefined reference to `crypto_blkcipher_type\u0027\nmake[1]: *** [.tmp_vmlinux1] Error 1\n\n\u003c--  snip  --\u003e\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "242f1a343776a621ad5c3446d6f2718d37863cb5",
      "tree": "f7c7450ed06e47157cdb1e3df4aca0218adb60c2",
      "parents": [
        "f881d8290c59beb472062142aab54af2554d0d9c"
      ],
      "author": {
        "name": "Frederik Deweerdt",
        "email": "frederik.deweerdt@gmail.com",
        "time": "Fri Feb 15 19:19:33 2008 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Feb 15 19:19:33 2008 +0800"
      },
      "message": "[CRYPTO] tcrypt: Add missing Kconfig dependency on BLKCIPHER\n\nBuilding latest git fails with the following error:\n\tERROR: \"crypto_alloc_ablkcipher\" [crypto/tcrypt.ko] undefined!\nThis appears to happen because CONFIG_CRYPTO_TEST is set while\nCONFIG_CRYPTO_BLKCIPHER is not.\nThe following patch fixes the problem for me.\n\nSigned-off-by: Frederik Deweerdt \u003cfrederik.deweerdt@gmail.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "214dc54f6f1b71bcd895ef272c108c67ef046200",
      "tree": "8be88ade9e6669a9065de5641ba735c7b66801f7",
      "parents": [
        "d1cda4e39638e906f022c8ce56f566b617e1f77e"
      ],
      "author": {
        "name": "Tan Swee Heng",
        "email": "thesweeheng@gmail.com",
        "time": "Tue Dec 18 22:45:35 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:58 2008 +1100"
      },
      "message": "[CRYPTO] salsa20-asm: Remove unnecessary dependency on CRYPTO_SALSA20\n\nSigned-off-by: Tan Swee Heng \u003cthesweeheng@gmail.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "d1cda4e39638e906f022c8ce56f566b617e1f77e",
      "tree": "fae56cd644586c79f10cdca2e88100418bf5b827",
      "parents": [
        "9a7dafbba47384c330779c75a1546684efaa8c1a"
      ],
      "author": {
        "name": "Sebastian Siewior",
        "email": "sebastian@breakpoint.cc",
        "time": "Tue Dec 18 00:08:27 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:58 2008 +1100"
      },
      "message": "[CRYPTO] tcrypt: Add select of AEAD\n\n ERROR: \"crypto_aead_setauthsize\" [crypto/tcrypt.ko] undefined!\n ERROR: \"crypto_alloc_aead\" [crypto/tcrypt.ko] undefined!\n\nSigned-off-by: Sebastian Siewior \u003csebastian@breakpoint.cc\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "9a7dafbba47384c330779c75a1546684efaa8c1a",
      "tree": "0fde4a938ebc3c9deb0873b709dc5d2d69ab25c3",
      "parents": [
        "974e4b752ee623854c5dc2bbfc7c7725029ce173"
      ],
      "author": {
        "name": "Tan Swee Heng",
        "email": "thesweeheng@gmail.com",
        "time": "Tue Dec 18 00:04:40 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:57 2008 +1100"
      },
      "message": "[CRYPTO] salsa20: Add x86-64 assembly version\n\nThis is the x86-64 version of the Salsa20 stream cipher algorithm. The\noriginal assembly code came from\n\u003chttp://cr.yp.to/snuffle/salsa20/amd64-3/salsa20.s\u003e. It has been\nreformatted for clarity.\n\nSigned-off-by: Tan Swee Heng \u003cthesweeheng@gmail.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "974e4b752ee623854c5dc2bbfc7c7725029ce173",
      "tree": "e2eb69820a90058a026def6a02a397c082811934",
      "parents": [
        "dadbc53d0bbde0e84c40b9f6bc5c50eb9eb7352a"
      ],
      "author": {
        "name": "Tan Swee Heng",
        "email": "thesweeheng@gmail.com",
        "time": "Mon Dec 10 15:52:56 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:57 2008 +1100"
      },
      "message": "[CRYPTO] salsa20_i586: Salsa20 stream cipher algorithm (i586 version)\n\nThis patch contains the salsa20-i586 implementation. The original\nassembly code came from\n\u003chttp://cr.yp.to/snuffle/salsa20/x86-pm/salsa20.s\u003e. I have reformatted\nit (added indents) so that it matches the other algorithms in\narch/x86/crypto.\n\nSigned-off-by: Tan Swee Heng \u003cthesweeheng@gmail.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "4726204200327c04a77b819e2c653c063f1bc6ab",
      "tree": "5fbf6aafedca3da4257bcec45a38fa78c1ecfb31",
      "parents": [
        "6e050778c5d08a97d5d98f7cb62bc503e872615c"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Dec 14 10:19:27 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:55 2008 +1100"
      },
      "message": "[CRYPTO] seqiv: Add select AEAD in Kconfig\n\nNow that seqiv supports AEAD algorithms it needs to select the AEAD option.\n\nThanks to Erez Zadok for pointing out the problem.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "4a49b499dfa0c9e42be6d6fdd771f3434c776278",
      "tree": "f9fe2be3cf378271dca62ba6e91f63a83604a051",
      "parents": [
        "d29ce988aeb459203c74f14747f4f77e1829ef78"
      ],
      "author": {
        "name": "Joy Latten",
        "email": "latten@austin.ibm.com",
        "time": "Wed Dec 12 20:25:13 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:53 2008 +1100"
      },
      "message": "[CRYPTO] ccm: Added CCM mode\n\nThis patch adds Counter with CBC-MAC (CCM) support.\nRFC 3610 and NIST Special Publication 800-38C were referenced.\n\nSigned-off-by: Joy Latten \u003clatten@austin.ibm.com\u003e\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": "653ebd9c8510a7d647ed23e66e1338f848ebdbab",
      "tree": "99e1d59a0a944807bf10b59f874045ac8067ba68",
      "parents": [
        "2589469d7bc69bdfad4e05d88a0d2748f92ef0f3"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Nov 27 19:48:27 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:41 2008 +1100"
      },
      "message": "[CRYPTO] blkcipher: Merge ablkcipher and blkcipher into one option/module\n\nWith the impending addition of the givcipher type, both blkcipher and\nablkcipher algorithms will use it to create givcipher objects.  As such\nit no longer makes sense to split the system between ablkcipher and\nblkcipher.  In particular, both ablkcipher.c and blkcipher.c would need\nto use the givcipher type which has to reside in ablkcipher.c since it\nshares much code with it.\n\nThis patch merges the two Kconfig options as well as the modules into one.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "5e553110f27ff77591ec7305c6216ad6949f7a95",
      "tree": "8864adf96c71f51ffd09f1cce59c5eb9a54483e6",
      "parents": [
        "f17922bc75d6261dd6e0e2d687ff43b96e91e04a"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "bbpetkov@yahoo.de",
        "time": "Fri Dec 14 16:43:32 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:39 2008 +1100"
      },
      "message": "[CRYPTO] authenc: Select HASH in Kconfig\n\ni get here:\n\n----\n  LD      vmlinux\n  SYSMAP  System.map\n  SYSMAP  .tmp_System.map\n  Building modules, stage 2.\n  MODPOST 226 modules\nERROR: \"crypto_hash_type\" [crypto/authenc.ko] undefined!\nmake[1]: *** [__modpost] Error 1\nmake: *** [modules] Error 2\n---\n\nwhich fails because crypto_hash_type is declared in crypto/hash.c. You might wanna\nfix it like so:\n\nSigned-off-by: Borislav Petkov \u003cbbpetkov@yahoo.de\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "0b77abb3b2d0c2eee1da79a3f3bd4312a0edb156",
      "tree": "0a782303f8b8a86f66fc95c830cdf69c78289084",
      "parents": [
        "91755a921c4af51c355bcb74a98b717d5c1818b6"
      ],
      "author": {
        "name": "Zoltan Sogor",
        "email": "weth@inf.u-szeged.hu",
        "time": "Fri Dec 07 16:53:23 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:35 2008 +1100"
      },
      "message": "[CRYPTO] lzo: Add LZO compression algorithm support\n\nAdd LZO compression algorithm support\n\nSigned-off-by: Zoltan Sogor \u003cweth@inf.u-szeged.hu\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "28db8e3e38e593d22e2c69942bb1ca7be2a35f05",
      "tree": "65ef9ee8544001278a71340f44f9a3227b54a4d8",
      "parents": [
        "e3a4ea4fd2e5f154ae9233f1ce30e7564e5cbcfc"
      ],
      "author": {
        "name": "Mikko Herranen",
        "email": "mh1@iki.fi",
        "time": "Mon Nov 26 22:24:11 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:23 2008 +1100"
      },
      "message": "[CRYPTO] gcm: New algorithm\n\nAdd GCM/GMAC support to cryptoapi.\n\nGCM (Galois/Counter Mode) is an AEAD mode of operations for any block cipher\nwith a block size of 16.  The typical example is AES-GCM.\n\nSigned-off-by: Mikko Herranen \u003cmh1@iki.fi\u003e\nReviewed-by: Mika Kukkonen \u003cmika.kukkonen@nsn.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "2407d60872dd2a95404c6048f775f3b64d438f4b",
      "tree": "6a333c5eaae616736b2f184cee8e9f052cee966d",
      "parents": [
        "332f8840f7095d294f9bb066b175a100bcde214c"
      ],
      "author": {
        "name": "Tan Swee Heng",
        "email": "thesweeheng@gmail.com",
        "time": "Fri Nov 23 19:45:00 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:15 2008 +1100"
      },
      "message": "[CRYPTO] salsa20: Salsa20 stream cipher\n\nThis patch implements the Salsa20 stream cipher using the blkcipher interface.\n\nThe core cipher code comes from Daniel Bernstein\u0027s submission to eSTREAM:\n  http://www.ecrypt.eu.org/stream/svn/viewcvs.cgi/ecrypt/trunk/submissions/salsa20/full/ref/\n\nThe test vectors comes from:\n  http://www.ecrypt.eu.org/stream/svn/viewcvs.cgi/ecrypt/trunk/submissions/salsa20/full/\n\nIt has been tested successfully with \"modprobe tcrypt mode\u003d34\" on an\nUML instance.\n\nSigned-off-by: Tan Swee Heng \u003cthesweeheng@gmail.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "cd12fb906d2591e80da9edcbd4794b9b916d7489",
      "tree": "312f7ff32b70a1c093fd3d45e6f2a0715008f22b",
      "parents": [
        "cd7c3bfe54270f41ac52be6b725a7194d99175b4"
      ],
      "author": {
        "name": "Jonathan Lynch",
        "email": "jonathan.lynch@intel.com",
        "time": "Sat Nov 10 20:08:25 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:12 2008 +1100"
      },
      "message": "[CRYPTO] sha256-generic: Extend sha256_generic.c to support SHA-224\n\nResubmitting this patch which extends sha256_generic.c to support SHA-224 as\ndescribed in FIPS 180-2 and RFC 3874. HMAC-SHA-224 as described in RFC4231\nis then supported through the hmac interface.\n\nPatch includes test vectors for SHA-224 and HMAC-SHA-224.\n\nSHA-224 chould be chosen as a hash algorithm when 112 bits of security\nstrength is required.\n\nPatch generated against the 2.6.24-rc1 kernel and tested against\n2.6.24-rc1-git14 which includes fix for scatter gather implementation for HMAC.\n\nSigned-off-by: Jonathan Lynch \u003cjonathan.lynch@intel.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "5157dea8139cf0edc4834d528531e642c0d27e37",
      "tree": "33d14cadc04c60ea95449c6bdc64ec0102eb823d",
      "parents": [
        "b345cee90a3ffec5eca6d6c1c59bd0d1feb453d4"
      ],
      "author": {
        "name": "Sebastian Siewior",
        "email": "sebastian@breakpoint.cc",
        "time": "Sat Nov 10 19:07:16 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:10 2008 +1100"
      },
      "message": "[CRYPTO] aes-i586: Remove setkey\n\nThe setkey() function can be shared with the generic algorithm.\n\nSigned-off-by: Sebastian Siewior \u003csebastian@breakpoint.cc\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "b345cee90a3ffec5eca6d6c1c59bd0d1feb453d4",
      "tree": "cde9360657a6956476ac30107cd0c13d389bb8a9",
      "parents": [
        "81190b321548bb0bf2d6e1f172695275b0fd1363"
      ],
      "author": {
        "name": "Sebastian Siewior",
        "email": "sebastian@breakpoint.cc",
        "time": "Thu Nov 08 21:27:05 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:10 2008 +1100"
      },
      "message": "[CRYPTO] ctr: Remove default M\n\nNO other block mode is M by default.\n\nSigned-off-by: Sebastian Siewior \u003csebastian@breakpoint.cc\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "81190b321548bb0bf2d6e1f172695275b0fd1363",
      "tree": "00948bc67bf8cd450595988c4f96a5f9749ee157",
      "parents": [
        "96e82e4551d38e0863b366a7b61185bc4a9946cc"
      ],
      "author": {
        "name": "Sebastian Siewior",
        "email": "sebastian@breakpoint.cc",
        "time": "Thu Nov 08 21:25:04 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:10 2008 +1100"
      },
      "message": "[CRYPTO] aes-x86-64: Remove setkey\n\nThe setkey() function can be shared with the generic algorithm.\n\nSigned-off-by: Sebastian Siewior \u003csebastian@breakpoint.cc\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"
    },
    {
      "commit": "f19f5111c94053ba4931892f5c01c806de33942e",
      "tree": "b40dfae8fa170ebdc92fdcfeb3000c84d6203645",
      "parents": [
        "5aaff0c8f7dd3515c9f1ca57f86463f30779acc7"
      ],
      "author": {
        "name": "Rik Snel",
        "email": "rsnel@cube.dyndns.org",
        "time": "Wed Sep 19 20:23:13 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:55:45 2007 -0700"
      },
      "message": "[CRYPTO] xts: XTS blockcipher mode implementation without partial blocks\n\nXTS currently considered to be the successor of the LRW mode by the IEEE1619\nworkgroup. LRW was discarded, because it was not secure if the encyption key\nitself is encrypted with LRW.\n\nXTS does not have this problem. The implementation is pretty straightforward,\na new function was added to gf128mul to handle GF(128) elements in ble format.\nFour testvectors from the specification\n\thttp://grouper.ieee.org/groups/1619/email/pdf00086.pdf\nwere added, and they verify on my system.\n\nSigned-off-by: Rik Snel \u003crsnel@cube.dyndns.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "3c09f17c3d11f3e98928f55b600e6de22f58017a",
      "tree": "1c707e78054804fba65719a6dc87bc555fe9566b",
      "parents": [
        "b16c3a2e2c0307f5370b2b5e18bcbe1437b5f3d8"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Aug 30 16:24:15 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:55:43 2007 -0700"
      },
      "message": "[CRYPTO] aead: Add authenc\n\nThis patch adds the authenc algorithm which constructs an AEAD algorithm\nfrom an asynchronous block cipher and a hash.  The construction is done\nby concatenating the encrypted result from the cipher with the output\nfrom the hash, as is used by the IPsec ESP protocol.\n\nThe authenc algorithm exists as a template with four parameters:\n\n\tauthenc(auth, authsize, enc, enckeylen).\n\nThe authentication algorithm, the authentication size (i.e., truncating\nthe output of the authentication algorithm), the encryption algorithm,\nand the encryption key length.  Both the size field and the key length\nfield are in bytes.  For example, AES-128 with SHA1-HMAC would be\nrepresented by\n\n\tauthenc(hmac(sha1), 12, cbc(aes), 16)\n\nThe key for the authenc algorithm is the concatenation of the keys for\nthe authentication algorithm with the encryption algorithm.  For the\nabove example, if a key of length 36 bytes is given, then hmac(sha1)\nwould receive the first 20 bytes while the last 16 would be given to\ncbc(aes).\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "1ae978208e2ee9ba1b01d309164bc5e590cd242d",
      "tree": "89dac5bceddd383836de9a4da6cc7d381f374e3f",
      "parents": [
        "e2ee95b8c69e542d6afef3f6f38ea598cc146ba7"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Aug 30 15:36:14 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:55:39 2007 -0700"
      },
      "message": "[CRYPTO] api: Add aead crypto type\n\nThis patch adds crypto_aead which is the interface for AEAD\n(Authenticated Encryption with Associated Data) algorithms.\n\nAEAD algorithms perform authentication and encryption in one\nstep.  Traditionally users (such as IPsec) would use two\ndifferent crypto algorithms to perform these.  With AEAD\nthis comes down to one algorithm and one operation.\n\nOf course if traditional algorithms were used we\u0027d still\nbe doing two operations underneath.  However, real AEAD\nalgorithms may allow the underlying operations to be\noptimised as well.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "e2ee95b8c69e542d6afef3f6f38ea598cc146ba7",
      "tree": "9fea66f721fd0ca6b8b519a927a1c65fcbcb56ef",
      "parents": [
        "aa379a6ab17ff5b06552c52360ce6d9f8c7c209a"
      ],
      "author": {
        "name": "Hye-Shik Chang",
        "email": "perky@FreeBSD.org",
        "time": "Tue Aug 21 20:01:03 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:55:38 2007 -0700"
      },
      "message": "[CRYPTO] seed: New cipher algorithm\n\nThis patch adds support for the SEED cipher (RFC4269).\n\nThis patch have been used in few VPN appliance vendors in Korea for\nseveral years.  And it was verified by KISA, who developed the\nalgorithm itself.\n\nAs its importance in Korean banking industry, it would be great\nif linux incorporates the support.\n\nSigned-off-by: Hye-Shik Chang \u003cperky@FreeBSD.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "a349365e5e0e0590cf68957abd2ead1e5249fdef",
      "tree": "56c5fb1d1b090864170569d8ce646cf889b1c553",
      "parents": [
        "ec931035194709d0cde647d1c347bbf9634eec25"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Jul 17 20:31:34 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:55:36 2007 -0700"
      },
      "message": "[CRYPTO] Kconfig: Remove \"default m\"s\n\nOther options requiring specific block cipher algorithms already have\nthe appropriate select\u0027s.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "d09f51b6997f3f443c5741bc696651e479576715",
      "tree": "6d5eefcbaa9f46d44e8cad626011e886b5d1840c",
      "parents": [
        "1b1ac759d7c6bba6e5f4731ef6ea720b6636e27c",
        "e559e91cce3af215d78b7262360f19b95978aab3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Jul 14 23:47:04 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Jul 14 23:47:04 2007 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/herbert/crypto-2.6\n\nConflicts:\n\n\tcrypto/Kconfig\n"
    },
    {
      "commit": "9bc89cd82d6f88fb0ca39b30445c329a430fd66b",
      "tree": "7bd0e856abd359f84edea1bacfd1dd32edd93fbb",
      "parents": [
        "685784aaf3cd0e3ff5e36c7ecf6f441cdbf57f73"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 02 11:10:44 2007 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Jul 13 08:06:14 2007 -0700"
      },
      "message": "async_tx: add the async_tx api\n\nThe async_tx api provides methods for describing a chain of asynchronous\nbulk memory transfers/transforms with support for inter-transactional\ndependencies.  It is implemented as a dmaengine client that smooths over\nthe details of different hardware offload engine implementations.  Code\nthat is written to the api can optimize for asynchronous operation and the\napi will fit the chain of operations to the available offload resources. \n \n\tI imagine that any piece of ADMA hardware would register with the\n\t\u0027async_*\u0027 subsystem, and a call to async_X would be routed as\n\tappropriate, or be run in-line. - Neil Brown\n\nasync_tx exploits the capabilities of struct dma_async_tx_descriptor to\nprovide an api of the following general format:\n\nstruct dma_async_tx_descriptor *\nasync_\u003coperation\u003e(..., struct dma_async_tx_descriptor *depend_tx,\n\t\t\tdma_async_tx_callback cb_fn, void *cb_param)\n{\n\tstruct dma_chan *chan \u003d async_tx_find_channel(depend_tx, \u003coperation\u003e);\n\tstruct dma_device *device \u003d chan ? chan-\u003edevice : NULL;\n\tint int_en \u003d cb_fn ? 1 : 0;\n\tstruct dma_async_tx_descriptor *tx \u003d device ?\n\t\tdevice-\u003edevice_prep_dma_\u003coperation\u003e(chan, len, int_en) : NULL;\n\n\tif (tx) { /* run \u003coperation\u003e asynchronously */\n\t\t...\n\t\ttx-\u003etx_set_dest(addr, tx, index);\n\t\t...\n\t\ttx-\u003etx_set_src(addr, tx, index);\n\t\t...\n\t\tasync_tx_submit(chan, tx, flags, depend_tx, cb_fn, cb_param);\n\t} else { /* run \u003coperation\u003e synchronously */\n\t\t...\n\t\t\u003coperation\u003e\n\t\t...\n\t\tasync_tx_sync_epilog(flags, depend_tx, cb_fn, cb_param);\n\t}\n\n\treturn tx;\n}\n\nasync_tx_find_channel() returns a capable channel from its pool.  The\nchannel pool is organized as a per-cpu array of channel pointers.  The\nasync_tx_rebalance() routine is tasked with managing these arrays.  In the\nuniprocessor case async_tx_rebalance() tries to spread responsibility\nevenly over channels of similar capabilities.  For example if there are two\ncopy+xor channels, one will handle copy operations and the other will\nhandle xor.  In the SMP case async_tx_rebalance() attempts to spread the\noperations evenly over the cpus, e.g. cpu0 gets copy channel0 and xor\nchannel0 while cpu1 gets copy channel 1 and xor channel 1.  When a\ndependency is specified async_tx_find_channel defaults to keeping the\noperation on the same channel.  A xor-\u003ecopy-\u003exor chain will stay on one\nchannel if it supports both operation types, otherwise the transaction will\ntransition between a copy and a xor resource.\n\nCurrently the raid5 implementation in the MD raid456 driver has been\nconverted to the async_tx api.  A driver for the offload engines on the\nIntel Xscale series of I/O processors, iop-adma, is provided in a later\ncommit.  With the iop-adma driver and async_tx, raid456 is able to offload\ncopy, xor, and xor-zero-sum operations to hardware engines.\n \nOn iop342 tiobench showed higher throughput for sequential writes (20 - 30%\nimprovement) and sequential reads to a degraded array (40 - 55%\nimprovement).  For the other cases performance was roughly equal, +/- a few\npercentage points.  On a x86-smp platform the performance of the async_tx\nimplementation (in synchronous mode) was also +/- a few percentage points\nof the original implementation.  According to \u0027top\u0027 on iop342 CPU\nutilization drops from ~50% to ~15% during a \u0027resync\u0027 while the speed\naccording to /proc/mdstat doubles from ~25 MB/s to ~50 MB/s.\n \nThe tiobench command line used for testing was: tiobench --size 2048\n--block 4096 --block 131072 --dir /mnt/raid --numruns 5\n* iop342 had 1GB of memory available\n\nDetails:\n* if CONFIG_DMA_ENGINE\u003dn the asynchronous path is compiled away by making\n  async_tx_find_channel a static inline routine that always returns NULL\n* when a callback is specified for a given transaction an interrupt will\n  fire at operation completion time and the callback will occur in a\n  tasklet.  if the the channel does not support interrupts then a live\n  polling wait will be performed\n* the api is written as a dmaengine client that requests all available\n  channels\n* In support of dependencies the api implicitly schedules channel-switch\n  interrupts.  The interrupt triggers the cleanup tasklet which causes\n  pending operations to be scheduled on the next channel\n* Xor engines treat an xor destination address differently than a software\n  xor routine.  To the software routine the destination address is an implied\n  source, whereas engines treat it as a write-only destination.  This patch\n  modifies the xor_blocks routine to take a an explicit destination address\n  to mirror the hardware.\n\nChangelog:\n* fixed a leftover debug print\n* don\u0027t allow callbacks in async_interrupt_cond\n* fixed xor_block changes\n* fixed usage of ASYNC_TX_XOR_DROP_DEST\n* drop dma mapping methods, suggested by Chris Leech\n* printk warning fixups from Andrew Morton\n* don\u0027t use inline in C files, Adrian Bunk\n* select the API when MD is enabled\n* BUG_ON xor source counts \u003c\u003d 1\n* implicitly handle hardware concerns like channel switching and\n  interrupts, Neil Brown\n* remove the per operation type list, and distribute operation capabilities\n  evenly amongst the available channels\n* simplify async_tx_find_channel to optimize the fast path\n* introduce the channel_table_initialized flag to prevent early calls to\n  the api\n* reorganize the code to mimic crypto\n* include mm.h as not all archs include it in dma-mapping.h\n* make the Kconfig options non-user visible, Adrian Bunk\n* move async_tx under crypto since it is meant as \u0027core\u0027 functionality, and\n  the two may share algorithms in the future\n* move large inline functions into c files\n* checkpatch.pl fixes\n* gpl v2 only correction\n\nCc: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\nAcked-By: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "685784aaf3cd0e3ff5e36c7ecf6f441cdbf57f73",
      "tree": "10f99829f7d877b87614fe69be77e363c026a8d7",
      "parents": [
        "d379b01e9087a582d58f4b678208a4f8d8376fe7"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Mon Jul 09 11:56:42 2007 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Jul 13 08:06:14 2007 -0700"
      },
      "message": "xor: make \u0027xor_blocks\u0027 a library routine for use with async_tx\n\nThe async_tx api tries to use a dma engine for an operation, but will fall\nback to an optimized software routine otherwise.  Xor support is\nimplemented using the raid5 xor routines.  For organizational purposes this\nroutine is moved to a common area.\n\nThe following fixes are also made:\n* rename xor_block \u003d\u003e xor_blocks, suggested by Adrian Bunk\n* ensure that xor.o initializes before md.o in the built-in case\n* checkpatch.pl fixes\n* mark calibrate_xor_blocks __init, Adrian Bunk\n\nCc: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: NeilBrown \u003cneilb@suse.de\u003e\nCc: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "2e290f43ddb2331db2e308da206fe154bec91a7d",
      "tree": "fa25974a286f45bf88e38811315885cdfde83e08",
      "parents": [
        "4eb6bf6bfb580afaf1e1a1d30cba17a078530cf4"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@gmx.de",
        "time": "Fri May 18 15:11:01 2007 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Jul 11 20:58:53 2007 +0800"
      },
      "message": "[CRYPTO] Kconfig: Use menuconfig objects\n\nUse menuconfigs instead of menus, so the whole menu can be disabled at once\ninstead of going through all options.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@gmx.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "3dde6ad8fc3939d345a3768464ecff43c91d511a",
      "tree": "bf36419973a724f854ba69de793daaf3d916f9a0",
      "parents": [
        "ccf6780dc3d228f380e17b6858b93fc48e40afd4"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dave@jikos.cz",
        "time": "Wed May 09 07:12:20 2007 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed May 09 07:12:20 2007 +0200"
      },
      "message": "Fix trivial typos in Kconfig* files\n\nFix several typos in help text in Kconfig* files.\n\nSigned-off-by: David Sterba \u003cdave@jikos.cz\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "124b53d020622ffa24e27406f2373d5a3debd0d3",
      "tree": "e1a89ac6745ce9afea6fd2ea358ebd40e60abb76",
      "parents": [
        "a73e69965fa2647faa36caf40f4132b9c99d61fd"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Apr 16 20:49:20 2007 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed May 02 14:38:32 2007 +1000"
      },
      "message": "[CRYPTO] cryptd: Add software async crypto daemon\n\nThis patch adds the cryptd module which is a template that takes a\nsynchronous software crypto algorithm and converts it to an asynchronous\none by executing it in a kernel thread.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "b5b7f08869340aa8cfa23303f7d195f161479592",
      "tree": "dd1f3f00165e7ca31e29a52d64909439cdfab8fd",
      "parents": [
        "ebc610e5bc76df073221e64e86c3f7533a09ea40"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Apr 16 20:48:54 2007 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed May 02 14:38:31 2007 +1000"
      },
      "message": "[CRYPTO] api: Add async blkcipher type\n\nThis patch adds the mid-level interface for asynchronous block ciphers.\nIt also includes a generic queueing mechanism that can be used by other\nasynchronous crypto operations in future.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "9783e1df7a6bd1e4dc5e2cafcdc29b65a47473d6",
      "tree": "9216a285bfe23aa799ca6efa01a3f4063d798e64",
      "parents": [
        "4387ff75f29412a234d394b0276c2b239d3d3844",
        "dc2e2f33bbf07344995357314fd8887f6564dba7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 15:25:18 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 15:25:18 2007 -0800"
      },
      "message": "Merge branch \u0027HEAD\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/herbert/crypto-2.6\n\nConflicts:\n\n\tcrypto/Kconfig\n"
    },
    {
      "commit": "04ac7db3f23d98abe5d3c91d21b0e45fc09e74ea",
      "tree": "75337327cbcf07f5ea2d1f75e31f3857ae8119b0",
      "parents": [
        "09cb914f096bd38b22341af291236b65cf55ceee"
      ],
      "author": {
        "name": "Noriaki TAKAMIYA",
        "email": "takamiya@po.ntts.co.jp",
        "time": "Sun Oct 22 14:49:17 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Feb 07 09:21:03 2007 +1100"
      },
      "message": "[CRYPTO] camellia: Add Kconfig entry.\n\nThis patch adds the Kconfig entry for Camellia.\n\nSigned-off-by: Noriaki TAKAMIYA \u003ctakamiya@po.ntts.co.jp\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "90831639a65592d6d3dc888dc3341f54ebf932e6",
      "tree": "30f3c32f414ff69d76b2c733a71739229f00be97",
      "parents": [
        "91652be5d1b901673a8e926455f0ed146cfaa588"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Sat Dec 16 12:13:14 2006 +1100"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Feb 07 09:20:59 2007 +1100"
      },
      "message": "[CRYPTO] fcrypt: Add FCrypt from RxRPC\n\nAdd a crypto module to provide FCrypt encryption as used by RxRPC.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "91652be5d1b901673a8e926455f0ed146cfaa588",
      "tree": "c7a7d3f48be35f64a918472f82ec1b94dc2bcbbd",
      "parents": [
        "a28091ae170cd06695bf461905c5b97a165633ba"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Sat Dec 16 12:09:02 2006 +1100"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Feb 07 09:20:59 2007 +1100"
      },
      "message": "[CRYPTO] pcbc: Add Propagated CBC template\n\nAdd PCBC crypto template support as used by RxRPC.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "86aa9fc2456d8a662f299a70bdb70987209170f0",
      "tree": "39708583852c0b311dcb662ba9f29c412c303f67",
      "parents": [
        "347d59d7e9739ff2acbaa751b6225ecb335c3f29"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jan.glauber@de.ibm.com",
        "time": "Mon Feb 05 21:18:14 2007 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Feb 05 21:18:14 2007 +0100"
      },
      "message": "[S390] move crypto options and some cleanup.\n\nThis patch moves the config options for the s390 crypto instructions\nto the standard \"Hardware crypto devices\" menu. In addition some\ncleanup has been done: use a flag for supported keylengths, add a\nwarning about machien limitation, return ENOTSUPP in case the\nhardware has no support, remove superfluous printks and update\nemail addresses.\n\nSigned-off-by: Jan Glauber \u003cjan.glauber@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "64470f1b8510699dc357a44004dc924bc139c917",
      "tree": "188d414266091c2220bae155651b2aacc2c6b9aa",
      "parents": [
        "c494e0705d670c51ac736c8c4d92750705fe3187"
      ],
      "author": {
        "name": "Rik Snel",
        "email": "rsnel@cube.dyndns.org",
        "time": "Sun Nov 26 09:43:10 2006 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Dec 06 18:38:56 2006 -0800"
      },
      "message": "[CRYPTO] lrw: Liskov Rivest Wagner, a tweakable narrow block cipher mode\n\nMain module, this implements the Liskov Rivest Wagner block cipher mode\nin the new blockcipher API. The implementation is based on ecb.c.\n\nThe LRW-32-AES specification I used can be found at:\nhttp://grouper.ieee.org/groups/1619/email/pdf00017.pdf\n\nIt implements the optimization specified as optional in the\nspecification, and in addition it uses optimized multiplication\nroutines from gf128mul.c.\n\nSince gf128mul.[ch] is not tested on bigendian, this cipher mode\nmay currently fail badly on bigendian machines.\n\nSigned-off-by: Rik Snel \u003crsnel@cube.dyndns.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "c494e0705d670c51ac736c8c4d92750705fe3187",
      "tree": "9f00826afc317f976c03ef4e77284b13204c0c9d",
      "parents": [
        "aec3694b987900de7ab789ea5749d673e0d634c4"
      ],
      "author": {
        "name": "Rik Snel",
        "email": "rsnel@cube.dyndns.org",
        "time": "Wed Nov 29 18:59:44 2006 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Dec 06 18:38:55 2006 -0800"
      },
      "message": "[CRYPTO] lib: table driven multiplications in GF(2^128)\n\nA lot of cypher modes need multiplications in GF(2^128). LRW, ABL, GCM...\nI use functions from this library in my LRW implementation and I will\nalso use them in my ABL (Arbitrary Block Length, an unencumbered (correct\nme if I am wrong, wide block cipher mode).\n\nElements of GF(2^128) must be presented as u128 *, it encourages automatic\nand proper alignment.\n\nThe library contains support for two different representations of GF(2^128),\nsee the comment in gf128mul.h. There different levels of optimization\n(memory/speed tradeoff).\n\nThe code is based on work by Dr Brian Gladman. Notable changes:\n- deletion of two optimization modes\n- change from u32 to u64 for faster handling on 64bit machines\n- support for \u0027bbe\u0027 representation in addition to the, already implemented,\n  \u0027lle\u0027 representation.\n- move \u0027inline void\u0027 functions from header to \u0027static void\u0027 in the\n  source file\n- update to use the linux coding style conventions\n\nThe original can be found at:\nhttp://fp.gladman.plus.com/AES/modes.vc8.19-06-06.zip\n\nThe copyright (and GPL statement) of the original author is preserved.\n\nSigned-off-by: Rik Snel \u003crsnel@cube.dyndns.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "333b0d7eeacbd47159daf23757aa81368470c409",
      "tree": "e05f1a3bed92833ab4d5f7c5dcc75ab8d8fcf245",
      "parents": [
        "45789328e5aa2de96d4467e4445418364e5378d7"
      ],
      "author": {
        "name": "Kazunori MIYAZAWA",
        "email": "miyazawa@linux-ipv6.org",
        "time": "Sat Oct 28 13:15:24 2006 +1000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Dec 06 18:38:49 2006 -0800"
      },
      "message": "[CRYPTO] xcbc: New algorithm\n\nThis is core code of XCBC.\n\nXCBC is an algorithm that forms a MAC algorithm out of a cipher algorithm.\nFor example, AES-XCBC-MAC is a MAC algorithm based on the AES cipher\nalgorithm.\n\nSigned-off-by: Kazunori MIYAZAWA \u003cmiyazawa@linux-ipv6.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "43518407d57f1b685f5a9f1a981734ce66a21f76",
      "tree": "12186aa4d2ebb6b3c5ac583aa871a7a498340f16",
      "parents": [
        "9765d262b8230b735c4b2815b041c09a00833cf1"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Oct 16 21:28:58 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Oct 16 21:28:58 2006 +1000"
      },
      "message": "[CRYPTO] api: Select cryptomgr where needed\n\nSince cryptomgr is the only way to construct algorithm instances\nfor now it makes sense to let the templates depend on it as\notherwise it may be left off inadvertently.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "8425165dfed27945e8509c141cea245d1739e372",
      "tree": "c2a05344993a52bb317bb320a97d0566f3d277bf",
      "parents": [
        "878b9014666217555d16073764f30e825cf18d2f"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sun Aug 20 15:25:22 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Sep 21 11:46:20 2006 +1000"
      },
      "message": "[CRYPTO] digest: Remove old HMAC implementation\n\nThis patch removes the old HMAC implementation now that nobody uses it\nanymore.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0796ae061e6da5de7cfc1af57dfd42a73908b1bf",
      "tree": "83832b65f93f2979483640d994d72f8b37860701",
      "parents": [
        "055bcee3102dc35f019b69df9c2618e9d6dd1c09"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Aug 21 20:50:52 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Sep 21 11:46:17 2006 +1000"
      },
      "message": "[CRYPTO] hmac: Add crypto template implementation\n\nThis patch rewrites HMAC as a crypto template.  This means that HMAC is no\nlonger a hard-coded part of the API.  It\u0027s now a template that generates\nstandard digest algorithms like any other.\n\nThe old HMAC is preserved until all current users are converted.\n\nThe same structure can be used by other MACs such as AES-XCBC-MAC.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "055bcee3102dc35f019b69df9c2618e9d6dd1c09",
      "tree": "3f7c68abbbb5041d570e4cb8588f3943530bc0b7",
      "parents": [
        "7226bc877a22244e8003924031435a4bffd52654"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sat Aug 19 22:24:23 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Sep 21 11:46:17 2006 +1000"
      },
      "message": "[CRYPTO] digest: Added user API for new hash type\n\nThe existing digest user interface is inadequate for support asynchronous\noperations.  For one it doesn\u0027t return a value to indicate success or\nfailure, nor does it take a per-operation descriptor which is essential\nfor the issuing of requests while other requests are still outstanding.\n\nThis patch is the first in a series of steps to remodel the interface\nfor asynchronous operations.\n\nFor the ease of transition the new interface will be known as \"hash\"\nwhile the old one will remain as \"digest\".\n\nThis patch also changes sg_next to allow chaining.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "a9e62fadf0b02ba4a1d945d1a75652507da94319",
      "tree": "8e17290e66a3b0200d1a55b1798c81c9bb83e19d",
      "parents": [
        "28ce728a90cce3a0c6c0ed00354299de52db94b1"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Aug 21 21:39:24 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Sep 21 11:44:50 2006 +1000"
      },
      "message": "[CRYPTO] s390: Added block cipher versions of CBC/ECB\n\nThis patch adds block cipher algorithms for S390.  Once all users of the\nold cipher type have been converted the existing CBC/ECB non-block cipher\noperations will be removed.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "db131ef9084110d9e82549c0a627e157e8bb99d7",
      "tree": "65330d3557a7dda47fa48876b7ea9cac1461301d",
      "parents": [
        "5cde0af2a9825dd1edaca233bd9590566579ef21"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Sep 21 11:44:08 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Sep 21 11:44:08 2006 +1000"
      },
      "message": "[CRYPTO] cipher: Added block ciphers for CBC/ECB\n\nThis patch adds two block cipher algorithms, CBC and ECB.  These\nare implemented as templates on top of existing single-block cipher\nalgorithms.  They invoke the single-block cipher through the new\nencrypt_one/decrypt_one interface.\n\nThis also optimises the in-place encryption and decryption to remove\nthe cost of an IV copy each round.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "5cde0af2a9825dd1edaca233bd9590566579ef21",
      "tree": "e396297e3a2436d4a6ac77de63f95f2328c7a0fe",
      "parents": [
        "5c64097aa0f6dc4f27718ef47ca9a12538d62860"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Aug 22 00:07:53 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Sep 21 11:41:52 2006 +1000"
      },
      "message": "[CRYPTO] cipher: Added block cipher type\n\nThis patch adds the new type of block ciphers.  Unlike current cipher\nalgorithms which operate on a single block at a time, block ciphers\noperate on an arbitrarily long linear area of data.  As it is block-based,\nit will skip any data remaining at the end which cannot form a block.\n\nThe block cipher has one major difference when compared to the existing\nblock cipher implementation.  The sg walking is now performed by the\nalgorithm rather than the cipher mid-layer.  This is needed for drivers\nthat directly support sg lists.  It also improves performance for all\nalgorithms as it reduces the total number of indirect calls by one.\n\nIn future the existing cipher algorithm will be converted to only have\na single-block interface.  This will be done after all existing users\nhave switched over to the new block cipher type.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "2b8c19dbdc692e81243a328725a02efb77b144a5",
      "tree": "f9256d5515cc315d54971f62e0e9812d5db572ba",
      "parents": [
        "2825982d9d66ebba4b532a07391dfbb357f71c5f"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Sep 21 11:31:44 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Sep 21 11:31:44 2006 +1000"
      },
      "message": "[CRYPTO] api: Add cryptomgr\n\nThe cryptomgr module is a simple manager of crypto algorithm instances.\nIt ensures that parameterised algorithms of the type tmpl(alg) (e.g.,\ncbc(aes)) are always created.\n\nThis is meant to satisfy the needs for most users.  For more complex\ncases such as deeper combinations or multiple parameters, a netlink\nmodule will be created which allows arbitrary expressions to be parsed\nin user-space.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cce9e06d100df19a327b19f23adad76e7bf63edd",
      "tree": "ce10f50679db9ed8db92912c104eef1f05efc3c5",
      "parents": [
        "9409f38a0c8773c04bff8dda8c552d7ea013d956"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Aug 21 21:08:13 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Sep 21 11:16:30 2006 +1000"
      },
      "message": "[CRYPTO] api: Split out low-level API\n\nThe crypto API is made up of the part facing users such as IPsec and the\nlow-level part which is used by cryptographic entities such as algorithms.\nThis patch splits out the latter so that the two APIs are more clearly\ndelineated.  As a bonus the low-level API can now be modularised if all\nalgorithms are built as modules.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "eaf44088ff467410dd15a033fef118888002ffe6",
      "tree": "72b225b910342ae74e1b0915ceff61b4ead97883",
      "parents": [
        "b9f535ffe38f7eb61ac2219d32d97c377b69f70d"
      ],
      "author": {
        "name": "Joachim Fritschi",
        "email": "jfritschi@freenet.de",
        "time": "Tue Jun 20 21:12:02 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Sep 21 11:16:29 2006 +1000"
      },
      "message": "[CRYPTO] twofish: x86-64 assembly version\n\nThe patch passed the trycpt tests and automated filesystem tests.\nThis rewrite resulted in some nice perfomance increase over my last patch.\n\nShort summary of the tcrypt benchmarks:\n\nTwofish Assembler vs. Twofish C (256bit 8kb block CBC)\nencrypt: -27% Cycles\ndecrypt: -23% Cycles\n\nTwofish Assembler vs. AES Assembler (128bit 8kb block CBC)\nencrypt: +18%  Cycles\ndecrypt: +15% Cycles\n\nTwofish Assembler vs. AES Assembler (256bit 8kb block CBC)\nencrypt: -9% Cycles\ndecrypt: -8% Cycles\n\nFull Output:\nhttp://homepages.tu-darmstadt.de/~fritschi/twofish/tcrypt-speed-twofish-c-x86_64.txt\nhttp://homepages.tu-darmstadt.de/~fritschi/twofish/tcrypt-speed-twofish-asm-x86_64.txt\nhttp://homepages.tu-darmstadt.de/~fritschi/twofish/tcrypt-speed-aes-asm-x86_64.txt\n\n\nHere is another bonnie++ benchmark with encrypted filesystems. Most runs maxed\nout the hd. It should give some idea what the module can do for encrypted filesystem\nperformance even though you can\u0027t see the full numbers.\n\nhttp://homepages.tu-darmstadt.de/~fritschi/twofish/output_20060610_130806_x86_64.html\n\nSigned-off-by: Joachim Fritschi \u003cjfritschi@freenet.de\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "b9f535ffe38f7eb61ac2219d32d97c377b69f70d",
      "tree": "57e09481226ab5a25f3938963f8299c9f0cd8439",
      "parents": [
        "758f570ea785a5fbcdca026dfab2e9e1a3f89726"
      ],
      "author": {
        "name": "Joachim Fritschi",
        "email": "jfritschi@freenet.de",
        "time": "Tue Jun 20 20:59:16 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Sep 21 11:16:28 2006 +1000"
      },
      "message": "[CRYPTO] twofish: i586 assembly version\n\nThe patch passed the trycpt tests and automated filesystem tests.\nThis rewrite resulted in some nice perfomance increase over my last patch.\n\nShort summary of the tcrypt benchmarks:\n\nTwofish Assembler vs. Twofish C (256bit 8kb block CBC)\nencrypt: -33% Cycles\ndecrypt: -45% Cycles\n\nTwofish Assembler vs. AES Assembler (128bit 8kb block CBC)\nencrypt: +3%  Cycles\ndecrypt: -22% Cycles\n\nTwofish Assembler vs. AES Assembler (256bit 8kb block CBC)\nencrypt: -20% Cycles\ndecrypt: -36% Cycles\n\nFull Output:\nhttp://homepages.tu-darmstadt.de/~fritschi/twofish/tcrypt-speed-twofish-asm-i586.txt\nhttp://homepages.tu-darmstadt.de/~fritschi/twofish/tcrypt-speed-twofish-c-i586.txt\nhttp://homepages.tu-darmstadt.de/~fritschi/twofish/tcrypt-speed-aes-asm-i586.txt\n\n\nHere is another bonnie++ benchmark with encrypted filesystems. All runs with\nthe twofish assembler modules max out the drivespeed. It should give some\nidea what the module can do for encrypted filesystem performance even though\nyou can\u0027t see the full numbers.\n\nhttp://homepages.tu-darmstadt.de/~fritschi/twofish/output_20060611_205432_x86.html\n\nSigned-off-by: Joachim Fritschi \u003cjfritschi@freenet.de\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "2729bb427f686e47970406d6bde6b11892885f29",
      "tree": "6c17bab6970fc4bcc92c0de76d174e35d8043844",
      "parents": [
        "799111020c66c41aef621a3b53ad112543754124"
      ],
      "author": {
        "name": "Joachim Fritschi",
        "email": "jfritschi@freenet.de",
        "time": "Tue Jun 20 20:37:23 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Sep 21 11:16:27 2006 +1000"
      },
      "message": "[CRYPTO] twofish: Split out common c code\n\nThis patch splits up the twofish crypto routine into a common part ( key\nsetup  ) which will be uses by all twofish crypto modules ( generic-c , i586\nassembler and x86_64 assembler ) and generic-c part. It also creates a new\nheader file which will be used by all 3 modules.\n\nThis eliminates all code duplication.\n\nCorrectness was verified with the tcrypt module and automated test scripts.\n\nSigned-off-by: Joachim Fritschi \u003cjfritschi@freenet.de\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "b9d0a25a484a90c1d60b974d115eff2fe580ce16",
      "tree": "b76924924662ab1867b53001ea4a0db4a87b57ce",
      "parents": [
        "e90b1a2be6010acf01673b0625cfbf18240f7744"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sat Jun 10 18:06:34 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Jun 26 17:34:42 2006 +1000"
      },
      "message": "[CRYPTO] tcrypt: Forbid tcrypt from being built-in\n\nIt makes no sense to build tcrypt into the kernel.  In fact, now that\nthe driver init function\u0027s return status is being checked, it is in\nfact harmful to do so.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "c8a19c91b5b488fed8cce04200a84c6a35c0bf0c",
      "tree": "e0296c60f7601c5a1d1cf5fa9afd0e38f92e6995",
      "parents": [
        "5cb1454b862ab3040b78364d58330262fea1ddba"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sat Nov 05 18:06:26 2005 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Jan 09 14:15:39 2006 -0800"
      },
      "message": "[CRYPTO] Allow AES C/ASM implementations to coexist\n\nAs the Crypto API now allows multiple implementations to be registered\nfor the same algorithm, we no longer have to play tricks with Kconfig\nto select the right AES implementation.\n\nThis patch sets the driver name and priority for all the AES\nimplementations and removes the Kconfig conditions on the C implementation\nfor AES.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "347a8dc3b815f0c0fa62a1df075184ffe4cbdcf1",
      "tree": "a6ec76690127e87fe6efa42b6238caadd6c07e7b",
      "parents": [
        "9bbc8346fb21fad3f678220b067450e436e45dbf"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Jan 06 00:19:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:33:53 2006 -0800"
      },
      "message": "[PATCH] s390: cleanup Kconfig\n\nSanitize some s390 Kconfig options.  We have ARCH_S390, ARCH_S390X,\nARCH_S390_31, 64BIT, S390_SUPPORT and COMPAT.  Replace these 6 options by\nS390, 64BIT and COMPAT.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bf754ae8ef8bc443c067601d9401103e4001e7c5",
      "tree": "4241bc75205a638006f40f577e99430099bbe53e",
      "parents": [
        "0a497c17fee428604e06320272ff74415eacdc31"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jan.glauber@de.ibm.com",
        "time": "Fri Jan 06 00:19:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:33:50 2006 -0800"
      },
      "message": "[PATCH] s390: aes support\n\nAdd support for the hardware accelerated AES crypto algorithm.\n\nSigned-off-by: Jan Glauber \u003cjan.glauber@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0a497c17fee428604e06320272ff74415eacdc31",
      "tree": "b7ebb455fc908489a783a32f6171a3c36ccdcc4f",
      "parents": [
        "c1e26e1ef7ab50f30e5fbf004fe96ed44321ca78"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jan.glauber@de.ibm.com",
        "time": "Fri Jan 06 00:19:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:33:50 2006 -0800"
      },
      "message": "[PATCH] s390: sha256 support\n\nAdd support for the hardware accelerated sha256 crypto algorithm.\n\nSigned-off-by: Jan Glauber \u003cjan.glauber@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c1e26e1ef7ab50f30e5fbf004fe96ed44321ca78",
      "tree": "d4319a9441da5b776637945f9413e702296f5ad3",
      "parents": [
        "d0f4c16febf258ba8c0f917ac3ba935fc5459566"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jan.glauber@de.ibm.com",
        "time": "Fri Jan 06 00:19:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:33:50 2006 -0800"
      },
      "message": "[PATCH] s390: in-kernel crypto rename\n\nReplace all references to z990 by s390 in the in-kernel crypto files in\narch/s390/crypto.  The code is not specific to a particular machine (z990) but\nto the s390 platform.  Big diff, does nothing..\n\nSigned-off-by: Jan Glauber \u003cjan.glauber@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fb4f10ed50f01b0f953068456bfb6e2885921b01",
      "tree": "e9eb4112522d7969fdc4bbf6455b6d0d59426121",
      "parents": [
        "75c80c382fbd08acf06fbef9d54c9844e806a8b4"
      ],
      "author": {
        "name": "Aaron Grothe",
        "email": "ajgrothe@yahoo.com",
        "time": "Thu Sep 01 17:42:46 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 01 17:42:46 2005 -0700"
      },
      "message": "[CRYPTO]: Fix XTEA implementation\n\nThe XTEA implementation was incorrect due to a misinterpretation of\noperator precedence.  Because of the wide-spread nature of this\nerror, the erroneous implementation will be kept, albeit under the\nnew name of XETA.\n\nSigned-off-by: Aaron Grothe \u003cajgrothe@yahoo.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a2a892a236d03a6e985471a7e57d1c863de144c8",
      "tree": "33b52c87bdecf0f24936b952a565a445ce03c616",
      "parents": [
        "a61cc44812ff94793987bf43b70a3d9bc64a6820"
      ],
      "author": {
        "name": "Andreas Steinmetz",
        "email": "ast@domdv.de",
        "time": "Wed Jul 06 13:55:00 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 06 13:55:00 2005 -0700"
      },
      "message": "[CRYPTO] Add x86_64 asm AES\n\nImplementation:\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nThe encrypt/decrypt code is based on an x86 implementation I did a while\nago which I never published. This unpublished implementation does\ninclude an assembler based key schedule and precomputed tables. For\nsimplicity and best acceptance, however, I took Gladman\u0027s in-kernel code\nfor table generation and key schedule for the kernel port of my\nassembler code and modified this code to produce the key schedule as\nrequired by my assembler implementation. File locations and Kconfig are\nkept similar to the i586 AES assembler implementation.\nIt may seem a little bit strange to use 32 bit I/O and registers in the\nassembler implementation but this gives the best code size. My\nimplementation takes one instruction more per round compared to\nGladman\u0027s x86 assembler but it doesn\u0027t require any stack for local\nvariables or saved registers and it is less serialized than Gladman\u0027s\ncode.\nNote that all comparisons to Gladman\u0027s code were done after my code was\nimplemented. I did only use FIPS PUB 197 for the implementation so my\nimplementation is independent work.\nIf anybody has a better assembler solution for x86_64 I\u0027ll be pleased to\nhave my code replaced with the better solution.\n\nTesting:\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nThe implementation passes the in-kernel crypto testing module and I\u0027m\nrunning it without any problems on my laptop where it is mainly used for\ndm-crypt.\n\nMicrobenchmark:\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nThe microbenchmark was done in userspace with similar compile flags as\nused during kernel compile.\nEncrypt/decrypt is about 35% faster than the generic C implementation.\nAs the generic C as well as my assembler implementation are both table\nI don\u0027t really expect that there is much room for further\nimprovements though I\u0027ll be glad to be corrected here.\nThe key schedule is about 5% slower than the generic C implementation.\nThis is due to the fact that some more work has to be done in the key\nschedule routine to fit the schedule to the assembler implementation.\n\nCode Size:\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nEncrypt and decrypt are together about 2.1 Kbytes smaller than the\ngeneric C implementation which is important with regard to L1 cache\nusage. The key schedule routine is about 100 bytes larger than the\ngeneric C implementation.\n\nData Size:\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nThere\u0027s no difference in data size requirements between the assembler\nimplementation and the generic C implementation.\n\nLicense:\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nGladmans\u0027s code is dual BSD/GPL whereas my assembler code is GPLv2 only\n(I\u0027m  not going to change the license for my code). So I had to change\nthe module license for the x86_64 aes module from \u0027Dual BSD/GPL\u0027 to\n\u0027GPL\u0027 to reflect the most restrictive license within the module.\n\nSigned-off-by: Andreas Steinmetz \u003cast@domdv.de\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c45166be3cc666ce88fe623ad79276c943e74eff",
      "tree": "db59fdfb6834c112c99a5ab8692fe8372d7961ba",
      "parents": [
        "b05d85a87d9711f5f5f2eb05c79038d5d5ff1f44"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Sun May 01 08:58:54 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sun May 01 08:58:54 2005 -0700"
      },
      "message": "[PATCH] uml: support AES i586 crypto driver\n\nWe want to make possible, for the user, to enable the i586 AES implementation.\nThis requires a restructure.\n\n- Add a CONFIG_UML_X86 to notify that we are building a UML for i386.\n\n- Rename CONFIG_64_BIT to CONFIG_64BIT as is used for all other archs\n\n- Tell crypto/Kconfig that UML_X86 is as good as X86\n\n- Tell it that it must exclude not X86_64 but 64BIT, which will give the\n  same results.\n\n- Tell kbuild to descend down into arch/i386/crypto/ to build what\u0027s needed.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\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"
    }
  ]
}
