1*20036252SHerbert Xu /* 2*20036252SHerbert Xu * Hash algorithms. 3*20036252SHerbert Xu * 4*20036252SHerbert Xu * Copyright (c) 2008 Herbert Xu <herbert@gondor.apana.org.au> 5*20036252SHerbert Xu * 6*20036252SHerbert Xu * This program is free software; you can redistribute it and/or modify it 7*20036252SHerbert Xu * under the terms of the GNU General Public License as published by the Free 8*20036252SHerbert Xu * Software Foundation; either version 2 of the License, or (at your option) 9*20036252SHerbert Xu * any later version. 10*20036252SHerbert Xu * 11*20036252SHerbert Xu */ 12*20036252SHerbert Xu 13*20036252SHerbert Xu #ifndef _CRYPTO_INTERNAL_HASH_H 14*20036252SHerbert Xu #define _CRYPTO_INTERNAL_HASH_H 15*20036252SHerbert Xu 16*20036252SHerbert Xu #include <crypto/algapi.h> 17*20036252SHerbert Xu 18*20036252SHerbert Xu struct ahash_request; 19*20036252SHerbert Xu struct scatterlist; 20*20036252SHerbert Xu 21*20036252SHerbert Xu struct crypto_hash_walk { 22*20036252SHerbert Xu char *data; 23*20036252SHerbert Xu 24*20036252SHerbert Xu unsigned int offset; 25*20036252SHerbert Xu unsigned int alignmask; 26*20036252SHerbert Xu 27*20036252SHerbert Xu struct page *pg; 28*20036252SHerbert Xu unsigned int entrylen; 29*20036252SHerbert Xu 30*20036252SHerbert Xu unsigned int total; 31*20036252SHerbert Xu struct scatterlist *sg; 32*20036252SHerbert Xu 33*20036252SHerbert Xu unsigned int flags; 34*20036252SHerbert Xu }; 35*20036252SHerbert Xu 36*20036252SHerbert Xu int crypto_hash_walk_done(struct crypto_hash_walk *walk, int err); 37*20036252SHerbert Xu int crypto_hash_walk_first(struct ahash_request *req, 38*20036252SHerbert Xu struct crypto_hash_walk *walk); 39*20036252SHerbert Xu 40*20036252SHerbert Xu #endif /* _CRYPTO_INTERNAL_HASH_H */ 41*20036252SHerbert Xu 42