Commit graph

148 commits

Author SHA1 Message Date
Con Kolivas
14c3ce2ab4 Calling lrzip via lrzcat would fail as the proper parameters weren't being passed to the control structure. Fix. 2012-03-10 20:47:57 +11:00
Con Kolivas
dbc71eceb1 Store a copy of the control struct to be reused on subsequent files to prevent variables being modified in the control struct on the first file that
corrupt compression/decompression of the 2nd file.
2012-03-07 22:19:14 +11:00
Con Kolivas
086265c83f Update copyright notices and style to 1TBS for return codes. 2012-03-07 22:04:24 +11:00
discomfitor
949c6d7a97 another semi-clusterfuck commit: *new logging macros *allow compression to and from any FILE, not just stdin/stdout *update main.c to work with the above 2011-08-17 20:59:41 +10:00
discomfitor
6dd20d735b giant clusterfuck commit: *add and use alloca/strdupa in some spots *implement return values on almost every function *free() is now a macro which also nulls the freed pointer *when in 'library mode', fatal_exit() will not be called *fatal()/failure() are now macros which add line number and file for logging *all occurrences of fatal/failure in files other than main.c are now wrapped to use a logging callback (if specified) and then return *functions now clean up resources on returning with an error 2011-08-17 20:59:40 +10:00
discomfitor
133b201867 move more code out of main.c, allocate outfile suffix 2011-08-17 20:59:40 +10:00
discomfitor
cbff8faef7 move liblrzip.h contents to lrzip_private.h global variables----- 2011-08-17 20:59:40 +10:00
discomfitor
e85e4df0ef move compression overhead calcs out of main() 2011-08-17 20:59:40 +10:00
discomfitor
1c64dcfb31 more initialization stuff out of main(), remove weird coincidentally successful one_g variable 2011-08-17 20:59:40 +10:00
discomfitor
cfd6915b20 move some initialization stuff out of main() 2011-08-17 20:59:40 +10:00
discomfitor
87120e0f75 use liblrzip.h defines in main.c 2011-08-17 20:59:40 +10:00
discomfitor
59f10b2c9c move functions+defines out of main.c 2011-08-17 20:59:40 +10:00
Con Kolivas
d033743e6f Add lrzcat symlink which automatically decompresses to stdout.
Revert automatic compression/decompression to stdout when not outputting to a tty, to be consistent with gzip.
2011-05-07 13:22:35 +10:00
Con Kolivas
5352debf15 Change to detecting only whether lrzip is inappropriately being passed a directory since there may be other valid file types. 2011-04-22 19:35:04 +10:00
Con Kolivas
e8824afa1b Do a sanity check on infile in lrzip to ensure it's working on a file it can compress. 2011-04-22 19:23:40 +10:00
Con Kolivas
30e990fbcf Add encrypt support to lrzip.conf 2011-04-22 18:49:24 +10:00
ckolivas
77f17857e7 Use STDOUT when no filename is specified and we detect stdout is not going to the terminal. 2011-04-20 11:56:02 +10:00
ckolivas
1456fcc0c6 Merge branch 'master' of github.com:ckolivas/lrzip 2011-04-13 15:02:35 +10:00
ckolivas
271e97d8be Update displayed compression window to match what will be used. 2011-04-13 14:24:02 +10:00
Con Kolivas
c1055d173e Clamp largest 32bit usable chunk to 2/3 of 1GB. 2011-04-12 14:40:51 +10:00
Con Kolivas
e66d97ab19 Show full version properly when -V is invoked with new versioning system. 2011-04-03 20:13:16 +10:00
Con Kolivas
b27e1df879 Revert "Modify the file format to not include rzip chunk size except for STDOUT chunked files thus decreasing the file format size further."
This reverts commit 131d4c92c2.

Breaks STDIN/OUT so revert this change and cope with the slightly extra file size on non-chunked files.
2011-03-23 07:59:04 +11:00
Con Kolivas
8077412ee5 Allow files with non-standard extensions to be tested or decompressed if they actually exist.
Don't allow a suffix if an actual output filename has been specified.
Convert ints to chars when they can be.
2011-03-23 01:51:40 +11:00
Con Kolivas
70e7866271 Include arpa/inet.h for those OSs that have endian details elsewhere. 2011-03-22 21:47:24 +11:00
Con Kolivas
4bc8faa526 Storage time is only meaningful on compression. 2011-03-22 21:37:10 +11:00
Con Kolivas
bdf19e2654 nloop cleanup courtesy Serge Belyshev. 2011-03-22 21:34:04 +11:00
ckolivas
f56e48c4f2 Modify maxram to mean the most we'll allocate in one chunk and add usable_ram for the most we'll allocate to one task.
Limit all maxram on 32bits to 1GB since most don't like mallocing more than this.
Update testing to allow larger total amount based on usable ram while sticking to maxram limit per alloc.
2011-03-22 12:10:21 +11:00
Con Kolivas
68cca4dea5 More streamlining of version number. Fixes problems with osx version displayed. 2011-03-22 09:06:13 +11:00
Con Kolivas
131d4c92c2 Modify the file format to not include rzip chunk size except for STDOUT chunked files thus decreasing the file format size further. 2011-03-22 09:04:24 +11:00
Con Kolivas
2736118f82 Check for different endian.h includes and variants of le32toh. 2011-03-22 07:57:32 +11:00
Con Kolivas
93f7c602d0 Fixes for 32 bit limits and osx compilation. 2011-03-22 00:46:12 +11:00
Con Kolivas
0b1db75a44 Cleanups. 2011-03-19 13:53:43 +11:00
Con Kolivas
53a6dfd723 Add manpage entry for encryption option. 2011-03-18 23:38:02 +11:00
ckolivas
5005c2dff5 Get rid of extra data in new header and stick to old header size, compacting extra info into existing space. 2011-03-18 17:32:47 +11:00
ckolivas
b8d8ecfe33 Fix warnings.
Patch ~ by Serge Belyshev.
2011-03-18 10:37:09 +11:00
Con Kolivas
f758773cd0 Fix one minor leak. 2011-03-16 13:29:47 +11:00
Con Kolivas
412cf013c4 Implement passphrase input. 2011-03-15 16:32:32 +11:00
Con Kolivas
202d972a6c Add encryption -e option and flag encryption with a control flag, removing encrypt field. 2011-03-15 15:04:58 +11:00
Con Kolivas
65f901a83c Get the seconds, salt and encryption loop data before compressing.
Store seconds in only 5 bytes which is enough for 400 years, leaving more room for random data.
2011-03-15 14:41:47 +11:00
ckolivas
fca5d4232c Refuse to perform file info from STDIN. 2011-03-15 09:56:45 +11:00
Con Kolivas
00be150cfb Add flag tests for TMP_INBUF. 2011-03-14 14:56:59 +11:00
Con Kolivas
684959efed Add fields for temporary input buffer and clamp memory accordingly in preparation. 2011-03-14 14:47:26 +11:00
Con Kolivas
9e772d3140 Make ALL decompression use temporary in-ram buffer whenever possible. 2011-03-14 12:48:40 +11:00
Con Kolivas
d9e9f0d71d No need to keep usable_ram as a rzip_control variable. 2011-03-13 22:28:28 +11:00
Con Kolivas
66fe056f30 Don't use open coded flags. 2011-03-13 22:22:46 +11:00
Con Kolivas
17c35cb331 Use the usable_ram variable just to determine the maximum size allocatable. 2011-03-13 22:16:46 +11:00
Con Kolivas
6ac74aa9f0 Create a flag to know when the temporary output buffer is in use, in preparation for when we use it on decompression. 2011-03-13 08:34:06 +11:00
Con Kolivas
d2ae072a3c Round to page for optimum efficiency. 2011-03-12 22:58:39 +11:00
Con Kolivas
9444441d51 Modify maximum ram usable when stdout is being used in preparation for temporary in-ram file during stdout and fix summary shown and 32 bit limits. 2011-03-12 12:19:02 +11:00
Con Kolivas
34a44d16b3 Close config file. 2011-03-09 13:41:16 +11:00