crypto: doc - Use ahash
authorHerbert Xu <herbert@gondor.apana.org.au>
Mon, 1 Feb 2016 13:36:50 +0000 (21:36 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Sat, 6 Feb 2016 07:33:11 +0000 (15:33 +0800)
This patch replaces the crypto_hash example in api-intro.txt with
crypto_ahash.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Documentation/crypto/api-intro.txt

index 8b49302712a890365ff3edaa2571971608ccd381..beda682e8d7750492a182380737aee06441cf432 100644 (file)
@@ -49,28 +49,33 @@ under development.
 
 Here's an example of how to use the API:
 
-       #include <linux/crypto.h>
+       #include <crypto/ahash.h>
        #include <linux/err.h>
        #include <linux/scatterlist.h>
        
        struct scatterlist sg[2];
        char result[128];
-       struct crypto_hash *tfm;
-       struct hash_desc desc;
+       struct crypto_ahash *tfm;
+       struct ahash_request *req;
        
-       tfm = crypto_alloc_hash("md5", 0, CRYPTO_ALG_ASYNC);
+       tfm = crypto_alloc_ahash("md5", 0, CRYPTO_ALG_ASYNC);
        if (IS_ERR(tfm))
                fail();
                
        /* ... set up the scatterlists ... */
 
-       desc.tfm = tfm;
-       desc.flags = 0;
-       
-       if (crypto_hash_digest(&desc, sg, 2, result))
+       req = ahash_request_alloc(tfm, GFP_ATOMIC);
+       if (!req)
                fail();
+
+       ahash_request_set_callback(req, 0, NULL, NULL);
+       ahash_request_set_crypt(req, sg, result, 2);
        
-       crypto_free_hash(tfm);
+       if (crypto_ahash_digest(req))
+               fail();
+
+       ahash_request_free(req);
+       crypto_free_ahash(tfm);
 
     
 Many real examples are available in the regression test module (tcrypt.c).