Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 120603
b: refs/heads/master
c: 8e3ee85
h: refs/heads/master
i:
  120601: f41e507
  120599: 74f3503
v: v3
  • Loading branch information
Herbert Xu committed Dec 25, 2008
1 parent f9fb655 commit 44c2108
Show file tree
Hide file tree
Showing 2 changed files with 51 additions and 2 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: b7e8bdadce6317eb13c13b9451d7114614aa1450
refs/heads/master: 8e3ee85e68c5d5c95451afd3e8f0997eec6f99e5
51 changes: 50 additions & 1 deletion trunk/crypto/testmgr.c
Original file line number Diff line number Diff line change
Expand Up @@ -1010,6 +1010,55 @@ static int alg_test_hash(const struct alg_test_desc *desc, const char *driver,
return err;
}

static int alg_test_crc32c(const struct alg_test_desc *desc,
const char *driver, u32 type, u32 mask)
{
struct crypto_shash *tfm;
u32 val;
int err;

err = alg_test_hash(desc, driver, type, mask);
if (err)
goto out;

tfm = crypto_alloc_shash(driver, type, mask);
if (IS_ERR(tfm)) {
printk(KERN_ERR "alg: crc32c: Failed to load transform for %s: "
"%ld\n", driver, PTR_ERR(tfm));
err = PTR_ERR(tfm);
goto out;
}

do {
struct {
struct shash_desc shash;
char ctx[crypto_shash_descsize(tfm)];
} sdesc;

sdesc.shash.tfm = tfm;
sdesc.shash.flags = 0;

*(u32 *)sdesc.ctx = le32_to_cpu(420553207);
err = crypto_shash_final(&sdesc.shash, (u8 *)&val);
if (err) {
printk(KERN_ERR "alg: crc32c: Operation failed for "
"%s: %d\n", driver, err);
break;
}

if (val != ~420553207) {
printk(KERN_ERR "alg: crc32c: Test failed for %s: "
"%d\n", driver, val);
err = -EINVAL;
}
} while (0);

crypto_free_shash(tfm);

out:
return err;
}

/* Please keep this list sorted by algorithm name. */
static const struct alg_test_desc alg_test_descs[] = {
{
Expand Down Expand Up @@ -1134,7 +1183,7 @@ static const struct alg_test_desc alg_test_descs[] = {
}
}, {
.alg = "crc32c",
.test = alg_test_hash,
.test = alg_test_crc32c,
.suite = {
.hash = {
.vecs = crc32c_tv_template,
Expand Down

0 comments on commit 44c2108

Please sign in to comment.