From 6fe6bf3eeff6a086e33fe201a190dc2caffeb435 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Love=20H=C3=B6rnquist=20=C3=85strand?= Date: Tue, 19 Aug 2008 02:20:01 +0000 Subject: [PATCH] allow selecting blocksize git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@23640 ec53bebd-3082-4978-b11e-865c3cabbd6b --- lib/hcrypto/example_evp_cipher.c | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/lib/hcrypto/example_evp_cipher.c b/lib/hcrypto/example_evp_cipher.c index 7fee271c4..6cab64918 100644 --- a/lib/hcrypto/example_evp_cipher.c +++ b/lib/hcrypto/example_evp_cipher.c @@ -38,6 +38,7 @@ #include #include #include +#include /* key and initial vector */ static char key[16] = @@ -47,6 +48,9 @@ static char ivec[16] = "\xaa\xbb\x45\xd4\xaa\xbb\x45\xd4" "\xaa\xbb\x45\xd4\xaa\xbb\x45\xd4"; +static void +usage(int exit_code) __attribute__((noreturn)); + static void usage(int exit_code) { @@ -77,22 +81,20 @@ main(int argc, char **argv) } if (strcmp(argv[1], "--help") == 0) usage(0); - } else if (argc == 3) { - ifn = argv[1]; - ofn = argv[2]; + usage(1); + } else if (argc == 4) { + block_size = atoi(argv[1]); + if (block_size == 0) + errx(1, "invalid blocksize %s", argv[1]); + ifn = argv[2]; + ofn = argv[3]; } else usage(1); - /* - * Size is prime to trigger mis-match between io block size and - * encryption block size. - */ - block_size = 1021; - - in = fopen("in", "r"); + in = fopen(ifn, "r"); if (in == NULL) errx(1, "failed to open input file"); - out = fopen("out", "w"); + out = fopen(ofn, "w+"); if (out == NULL) errx(1, "failed to open output file");