XFS, and possibly other filesystems expect that the CRC field is excluded (or rather RAZ) during the CRC operation. Lets create a generic helper that is similar to the CRC32 version ul_crc32_exclude_offset() which computes the CRC while replacing exclude_len bytes of exclude_off with zeros. Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
17 lines
426 B
C
17 lines
426 B
C
/*
|
|
* No copyright is claimed. This code is in the public domain; do with it what
|
|
* you wish.
|
|
*/
|
|
#ifndef UL_CRC32C_H
|
|
#define UL_CRC32C_H
|
|
|
|
#include <sys/types.h>
|
|
#include <stdint.h>
|
|
|
|
extern uint32_t crc32c(uint32_t crc, const void *buf, size_t size);
|
|
extern uint32_t ul_crc32c_exclude_offset(uint32_t crc, const unsigned char *buf,
|
|
size_t size, size_t exclude_off,
|
|
size_t exclude_len);
|
|
|
|
|
|
#endif /* UL_CRC32C_H */
|