51 broke -E logic completely, rewise it
[tfcrypt.git] / tfcrypt.h
index 58d77d56f7ccd9aba43c72535ff45a4024ceffe6..acc31df2b4a6e35a7339fb34c9fa9b6b3cbb0c99 100644 (file)
--- a/tfcrypt.h
+++ b/tfcrypt.h
@@ -158,7 +158,7 @@ extern int do_edcrypt, do_stop, quiet, error_action;
 extern int counter_opt, mackey_opt, do_mac, do_outfmt, rawkey;
 extern int idx, write_flags;
 extern tfc_yesno catch_all_errors, ignore_seek_errors, password, overwrite_source, do_fsync, do_pad, do_ftrunc;
-extern tfc_yesno do_preserve_time, do_stats_in_gibs, do_statline_dynamic, do_less_stats, show_pid;
+extern tfc_yesno do_preserve_time, do_stats_in_gibs, do_statline_dynamic, do_less_stats, show_pid, read_only;
 extern tfc_yesno no_repeat, do_full_hexdump, verbose, statline_was_shown, show_secrets, show_when_done;
 extern char *srcfname, *dstfname, *do_mac_file, *counter_file, *sksum_hashlist_file;
 extern char *saltf, *genkeyf, *mackeyf, *tweakf;
@@ -170,8 +170,6 @@ extern struct getpasswd_state getps;
 size_t xread(int fd, void *data, size_t szdata);
 size_t xwrite(int fd, const void *data, size_t szdata);
 
-extern tfc_yesno xexit_no_nl;
-
 void xerror(tfc_yesno noexit, tfc_yesno noerrno, tfc_yesno nostats, const char *fmt, ...);
 void xexit(int status);
 void usage(void);
@@ -189,8 +187,11 @@ void tfc_describescale(tfc_fsize num, double *w, int *scale);
 size_t blk_len_adj(tfc_fsize filelen, tfc_fsize read_already, size_t blklen);
 tfc_yesno xor_shrink(void *dst, size_t szdst, const void *src, size_t szsrc);
 tfc_yesno str_empty(const char *str);
+int xxopen(tfc_yesno noerr, const char *pathname, int flags);
+int xopen(const char *pathname, int flags);
 void xclose(int fd);
 const char *tfc_modename(int mode);
+tfc_yesno tfc_is_freestream(int mode);
 void tfc_getcurtime(tfc_useconds *tx);
 char *tfc_format_time(tfc_useconds t);
 char *tfc_format_pid(const char *str);
@@ -230,10 +231,11 @@ enum { TFC_MACKEY_RAWKEY = 1, TFC_MACKEY_PASSWORD, TFC_MACKEY_FILE };
 enum { TFC_RAWKEY_KEYFILE = 1, TFC_RAWKEY_ASKSTR, TFC_RAWKEY_ASKHEX };
 enum { TFC_OUTFMT_HEX = 1, TFC_OUTFMT_B64, TFC_OUTFMT_RAW };
 enum {
-       TFC_MODE_SKSUM = -2, TFC_MODE_PLAIN = -1, TFC_MODE_CTR = 1,
-       TFC_MODE_STREAM, TFC_MODE_XTS, TFC_MODE_ECB, TFC_MODE_CBC, TFC_MODE_OCB
+       TFC_MODE_SKSUM = -3, TFC_MODE_XOR = -2, TFC_MODE_PLAIN = -1, TFC_MODE_CTR = 1,
+       TFC_MODE_STREAM, TFC_MODE_XTS, TFC_MODE_ECB, TFC_MODE_CBC, TFC_MODE_PCBC
 };
 enum { TFC_CTR_SHOW = 1, TFC_CTR_HEAD, TFC_CTR_RAND, TFC_CTR_ZERO, TFC_CTR_SSET };
 enum { TFC_NO_FTRUNC, TFC_DO_FTRUNC, TFC_FTRUNC_TAIL };
+enum { TFC_SIGLAST = -2, TFC_SIGERR = -1, TFC_SIGSTAT = 0 };
 
 #endif