-X: add simple XOR mode (embedded xor tool)
[tfcrypt.git] / tfc_random.c
index 9ef321d43304e51fbe35ce29c301d13339a64877..99612d34d3c01d131feb155fd8e8fbf933614ca5 100644 (file)
@@ -143,15 +143,14 @@ void gen_write_bytes(const char *foutname, tfc_fsize offset, tfc_fsize nrbytes)
                fd = 1;
                foutname = TFC_STDOUT_NAME;
        }
-       else fd = open(foutname, O_WRONLY | O_CREAT | O_LARGEFILE | write_flags, 0666);
-       if (fd == -1) xerror(NO, NO, YES, "%s", foutname);
+       else fd = xopen(foutname, O_WRONLY | O_CREAT | O_LARGEFILE | write_flags);
 
        if (offset) {
                if (lseek(fd, offset, SEEK_SET) == -1)
                        xerror(ignore_seek_errors, NO, NO, "%s: seek failed", foutname);
        }
 
-       if (ctr_mode == TFC_MODE_PLAIN) memset(srcblk, 0, sizeof(srcblk));
+       if (do_edcrypt == TFC_DO_PLAIN) memset(srcblk, 0, sizeof(srcblk));
 
        if (verbose) tfc_nfsay(stderr, "%s: writing %lld bytes to %s ... ",
                tfc_format_pid(progname), nrbytes, foutname);
@@ -163,7 +162,7 @@ void gen_write_bytes(const char *foutname, tfc_fsize offset, tfc_fsize nrbytes)
                pblk = srcblk;
                lblock = lrem = blk_len_adj(nrbytes, total_processed_src, blksize);
 
-               if (ctr_mode != TFC_MODE_PLAIN) tfc_getrandom(srcblk, lblock);
+               if (do_edcrypt != TFC_DO_PLAIN) tfc_getrandom(srcblk, lblock);
 
                if (error_action == TFC_ERRACT_SYNC) wrpos = tfc_fdgetpos(fd);
 _wagain:       lio = xwrite(fd, pblk, lrem);