else xerror(NO, YES, YES, "%s: invalid mode of operation", optarg);
break;
case 'P':
else xerror(NO, YES, YES, "%s: invalid mode of operation", optarg);
break;
case 'P':
if (do_mac != NO) {
if (mackey_opt == TFC_MACKEY_RAWKEY) skein(mackey, TF_MAX_BITS, key, key, TF_FROM_BITS(TFC_KEY_BITS));
if (do_mac != NO) {
if (mackey_opt == TFC_MACKEY_RAWKEY) skein(mackey, TF_MAX_BITS, key, key, TF_FROM_BITS(TFC_KEY_BITS));
- if (ctr_mode < TFC_MODE_OCB) {
- if (verbose) tfc_esay("%s: doing MAC calculation, processing speed "
- "will be slower.", tfc_format_pid(progname));
- if (mackey_opt) skein_init_key(&sk, mackey, macbits);
- else skein_init(&sk, macbits);
- }
+ if (verbose) tfc_esay("%s: doing MAC calculation, processing speed "
+ "will be slower.", tfc_format_pid(progname));
+ if (mackey_opt) skein_init_key(&sk, mackey, macbits);
+ else skein_init(&sk, macbits);
- if (do_mac == TFC_MAC_SIGN && ctr_mode < TFC_MODE_OCB)
- skein_update(&sk, srcblk, ldone);
+ if (do_mac == TFC_MAC_SIGN) skein_update(&sk, srcblk, ldone);
if (ctr_mode == TFC_MODE_CTR) tf_ctr_crypt(key, ctr, dstblk, srcblk, ldone);
else if (ctr_mode == TFC_MODE_STREAM) tf_stream_crypt(&tfe, dstblk, srcblk, ldone);
if (ctr_mode == TFC_MODE_CTR) tf_ctr_crypt(key, ctr, dstblk, srcblk, ldone);
else if (ctr_mode == TFC_MODE_STREAM) tf_stream_crypt(&tfe, dstblk, srcblk, ldone);
else if (ctr_mode == TFC_MODE_CBC && do_edcrypt == TFC_DO_DECRYPT)
tf_cbc_decrypt(key, ctr, dstblk, srcblk, ldone);
else if (ctr_mode == TFC_MODE_CBC && do_edcrypt == TFC_DO_DECRYPT)
tf_cbc_decrypt(key, ctr, dstblk, srcblk, ldone);
- else if (ctr_mode == TFC_MODE_OCB && do_edcrypt == TFC_DO_ENCRYPT)
- tf_ocb_encrypt(key, ctr, dstblk, do_mac == TFC_MAC_SIGN ? macresult : NULL, srcblk, ldone, xtsblocks);
- else if (ctr_mode == TFC_MODE_OCB && do_edcrypt == TFC_DO_DECRYPT)
- tf_ocb_decrypt(key, ctr, dstblk, do_mac >= TFC_MAC_VRFY ? macresult : NULL, srcblk, ldone, xtsblocks);
-
else if (ctr_mode == TFC_MODE_PLAIN)
memcpy(dstblk, srcblk, ldone);
else if (ctr_mode == TFC_MODE_PLAIN)
memcpy(dstblk, srcblk, ldone);
- if (do_mac >= TFC_MAC_VRFY && ctr_mode < TFC_MODE_OCB)
- skein_update(&sk, dstblk, ldone);
+ if (do_mac >= TFC_MAC_VRFY) skein_update(&sk, dstblk, ldone);
- if (ctr_mode < TFC_MODE_OCB) skein_final(macresult, &sk);
- else skein(macresult, macbits, mackey, macresult, TF_FROM_BITS(macbits));
+ skein_final(macresult, &sk);
if (ctr_mode == TFC_MODE_CTR) tf_ctr_crypt(key, ctr, tmpdata, macvrfy, TF_FROM_BITS(macbits));
else if (ctr_mode == TFC_MODE_STREAM) tf_stream_crypt(&tfe, tmpdata, macvrfy, TF_FROM_BITS(macbits));
else if (ctr_mode == TFC_MODE_XTS) tf_xts_decrypt(key, xtskey, ctr, tmpdata, macvrfy, TF_FROM_BITS(macbits), xtsblocks);
else if (ctr_mode == TFC_MODE_ECB) tf_ecb_decrypt(key, tmpdata, macvrfy, TF_FROM_BITS(macbits));
else if (ctr_mode == TFC_MODE_CBC) tf_cbc_decrypt(key, ctr, tmpdata, macvrfy, TF_FROM_BITS(macbits));
if (ctr_mode == TFC_MODE_CTR) tf_ctr_crypt(key, ctr, tmpdata, macvrfy, TF_FROM_BITS(macbits));
else if (ctr_mode == TFC_MODE_STREAM) tf_stream_crypt(&tfe, tmpdata, macvrfy, TF_FROM_BITS(macbits));
else if (ctr_mode == TFC_MODE_XTS) tf_xts_decrypt(key, xtskey, ctr, tmpdata, macvrfy, TF_FROM_BITS(macbits), xtsblocks);
else if (ctr_mode == TFC_MODE_ECB) tf_ecb_decrypt(key, tmpdata, macvrfy, TF_FROM_BITS(macbits));
else if (ctr_mode == TFC_MODE_CBC) tf_cbc_decrypt(key, ctr, tmpdata, macvrfy, TF_FROM_BITS(macbits));
memset(tmpdata, 0, sizeof(tmpdata));
}
else if (do_mac == TFC_MAC_SIGN) {
memset(tmpdata, 0, sizeof(tmpdata));
}
else if (do_mac == TFC_MAC_SIGN) {
- if (ctr_mode < TFC_MODE_OCB) skein_final(macresult, &sk);
- else skein(macresult, macbits, mackey, macresult, TF_FROM_BITS(macbits));
+ skein_final(macresult, &sk);
if (ctr_mode == TFC_MODE_CTR) tf_ctr_crypt(key, ctr, tmpdata, macresult, TF_FROM_BITS(macbits));
else if (ctr_mode == TFC_MODE_STREAM) tf_stream_crypt(&tfe, tmpdata, macresult, TF_FROM_BITS(macbits));
else if (ctr_mode == TFC_MODE_XTS) tf_xts_encrypt(key, xtskey, ctr, tmpdata, macresult, TF_FROM_BITS(macbits), xtsblocks);
else if (ctr_mode == TFC_MODE_ECB) tf_ecb_encrypt(key, tmpdata, macresult, TF_FROM_BITS(macbits));
else if (ctr_mode == TFC_MODE_CBC) tf_cbc_encrypt(key, ctr, tmpdata, macresult, TF_FROM_BITS(macbits));
if (ctr_mode == TFC_MODE_CTR) tf_ctr_crypt(key, ctr, tmpdata, macresult, TF_FROM_BITS(macbits));
else if (ctr_mode == TFC_MODE_STREAM) tf_stream_crypt(&tfe, tmpdata, macresult, TF_FROM_BITS(macbits));
else if (ctr_mode == TFC_MODE_XTS) tf_xts_encrypt(key, xtskey, ctr, tmpdata, macresult, TF_FROM_BITS(macbits), xtsblocks);
else if (ctr_mode == TFC_MODE_ECB) tf_ecb_encrypt(key, tmpdata, macresult, TF_FROM_BITS(macbits));
else if (ctr_mode == TFC_MODE_CBC) tf_cbc_encrypt(key, ctr, tmpdata, macresult, TF_FROM_BITS(macbits));