From 96e91e89ed0acb1a0002bd7b8b27aa85109d4ddb Mon Sep 17 00:00:00 2001 From: Nathan Lasseter Date: Tue, 5 Jun 2012 21:21:15 +0100 Subject: Code tidy and check file exists! --- encrypt.c | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) (limited to 'encrypt.c') diff --git a/encrypt.c b/encrypt.c index 056d0da..880e2c9 100644 --- a/encrypt.c +++ b/encrypt.c @@ -3,36 +3,40 @@ #include int main(int argc, char** argv) { - + // We need a file to encrypt - if(argc==1) { + if (argc != 2) { fprintf(stderr, "Usage: encrypt "); - return 1; + return EXIT_FAILURE; } - + // Now lets open that file FILE* file = fopen(argv[1], "r"); + if (file == NULL) { + fprintf(stderr, "No file specified\n"); + return EXIT_FAILURE; + } // Now we need the passphrase. Get it char *passphrase = malloc(256); do { printf("Enter Passphrase: "); - if ( fgets(passphrase, 255, stdin) == NULL ) { + if (fgets(passphrase, 255, stdin) == NULL) { fclose(file); fprintf(stderr, "Read error or end of file"); - exit(EXIT_FAILURE); + return EXIT_FAILURE; } } while (strlen(passphrase) <= 0); - + // And a temporary file to hold the encrypted data char tpath[] = "SimCr.XXXXXX"; int tempfd = mkstemp(tpath); FILE* temp = fdopen(tempfd, "w"); - + // Now we encrypt! int passlen = strlen(passphrase) - 1; int c,j=0; - while ( (c=fgetc(file)) != EOF ) { + while ((c=fgetc(file)) != EOF) { if (j == passlen) { fputc(c ^ passphrase[0], temp); j=1; -- cgit v1.2.1