#include <linux/crc64.h>
#include <linux/module.h>
#include <crypto/internal/hash.h>
#include <asm/unaligned.h>
static int chksum_init(struct shash_desc *desc)
{ … }
static int chksum_update(struct shash_desc *desc, const u8 *data,
unsigned int length)
{ … }
static int chksum_final(struct shash_desc *desc, u8 *out)
{ … }
static int __chksum_finup(u64 crc, const u8 *data, unsigned int len, u8 *out)
{ … }
static int chksum_finup(struct shash_desc *desc, const u8 *data,
unsigned int len, u8 *out)
{ … }
static int chksum_digest(struct shash_desc *desc, const u8 *data,
unsigned int length, u8 *out)
{ … }
static struct shash_alg alg = …;
static int __init crc64_rocksoft_init(void)
{ … }
static void __exit crc64_rocksoft_exit(void)
{ … }
module_init(…) …;
module_exit(crc64_rocksoft_exit);
MODULE_LICENSE(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_ALIAS_CRYPTO(…) …;
MODULE_ALIAS_CRYPTO(…) …;