summaryrefslogtreecommitdiff
path: root/encrypt.c
diff options
context:
space:
mode:
Diffstat (limited to 'encrypt.c')
-rw-r--r--encrypt.c22
1 files changed, 13 insertions, 9 deletions
diff --git a/encrypt.c b/encrypt.c
index 056d0da..880e2c9 100644
--- a/encrypt.c
+++ b/encrypt.c
@@ -3,36 +3,40 @@
#include <string.h>
int main(int argc, char** argv) {
-
+
// We need a file to encrypt
- if(argc==1) {
+ if (argc != 2) {
fprintf(stderr, "Usage: encrypt <file>");
- 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;