Hello, I am new to the crypto framework in linux kernel and mailing list in general. I am porting a driver omap-aes.c to my platform and having problems with IV being modified against my will. I am doing AES-128-CTR and I need the IV to increment by 1 every 16 bytes. Instead some garbage IV is being returned to me after I do an encrypt operation. I have no idea how the IV is being manipulated since the omap-aes.c driver accepts and write the IV to the Hardware that comes from upper layers but it never writes it back to the upper layers after doing encryption. I found this entry in the algo registration structure in the device driver .cra_u.ablkcipher = { .min_keysize = AES_MIN_KEY_SIZE, .max_keysize = AES_MAX_KEY_SIZE, .geniv = "seqiv", >From some clues I got online the .geniv is telling a module to generate the IV? The module says that it will salt the IV but my requirements are that the IV must be used as is without salt. I removed the .geniv line from the source code but still my IV seems to be getting corrupted/modified. Does anybody know what I should do to fix this or which resource online I should read to learn how to deal with this? -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html