Annotation of libaitio/example/aes.c, revision 1.2
1.2 ! misho 1: #include <stdio.h>
! 2: #include <string.h>
! 3: #include <aitio.h>
! 4:
! 5:
! 6: int
! 7: main(int argc, char **argv)
! 8: {
! 9: char *str2 = NULL, *str = NULL;
! 10: int i, n;
! 11: char ivec[16];
! 12:
! 13: if (argc < 4)
! 14: return 1;
! 15:
! 16: printf("String=%s\nKey=%s IV=%s\n\n", argv[1], argv[2], argv[3]);
! 17: /* encode */
! 18: memset(ivec, 0, sizeof ivec);
! 19: strlcpy(ivec, argv[3], sizeof ivec);
! 20: printf("io_ctr_AES() -> %d\n", (n = io_ctr_AES(argv[1], strlen(argv[1]), (u_char**) &str, argv[2], ivec)));
! 21: printf("Cipher: ");
! 22: for (i = 0; i < n; i++)
! 23: printf("%02hhx", str[i]);
! 24: printf("\n");
! 25:
! 26: /* decode */
! 27: memset(ivec, 0, sizeof ivec);
! 28: strlcpy(ivec, argv[3], sizeof ivec);
! 29: printf("io_ctr_AES() -> %d\n", (n = io_ctr_AES(str, n, (u_char**) &str2, argv[2], ivec)));
! 30: printf("Plain: ");
! 31: for (i = 0; i < n; i++)
! 32: printf("%c", str2[i]);
! 33: printf("\n");
! 34:
! 35: printf("\n\n");
! 36: if (!strcmp(argv[1], str2))
! 37: printf("%s == %s ... Test passed\n", argv[1], str2);
! 38: else
! 39: printf("%s != %s ... Test FAILED\n", argv[1], str2);
! 40:
! 41: if (str)
! 42: free(str);
! 43: if (str2)
! 44: free(str2);
! 45:
! 46: return 0;
! 47: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>