Up to [cvs.NetBSD.org] / pkgsrc / archivers / star
Request diff between arbitrary revisions
Default branch: MAIN
Revision 1.9 / (download) - annotate - [select for diffs], Fri Mar 12 09:57:24 2021 UTC (7 months, 1 week ago) by micha
CVS Tags: pkgsrc-2021Q3-base, pkgsrc-2021Q3, pkgsrc-2021Q2-base, pkgsrc-2021Q2, pkgsrc-2021Q1-base, pkgsrc-2021Q1, HEAD
Changes since 1.8: +1 -3 lines
Diff to previous 1.8 (colored)
archivers/star: Update to 1.6.1nb14 Symlink "ustar" is no longer installed by this package. Bump PKGREVISION.
Revision 1.8 / (download) - annotate - [select for diffs], Wed Mar 10 10:31:32 2021 UTC (7 months, 1 week ago) by micha
Changes since 1.7: +1 -6 lines
Diff to previous 1.7 (colored)
archivers/star: Update to 1.6.1nb13 Symlinks "gnutar", "suntar" and "tar" are no longer installed by this package. This should fix bug pkg/56049. Bump PKGREVISION.
Revision 1.7 / (download) - annotate - [select for diffs], Fri Jun 5 17:04:31 2020 UTC (16 months, 2 weeks ago) by micha
CVS Tags: pkgsrc-2020Q4-base, pkgsrc-2020Q4, pkgsrc-2020Q3-base, pkgsrc-2020Q3, pkgsrc-2020Q2-base, pkgsrc-2020Q2
Changes since 1.6: +2 -1 lines
Diff to previous 1.6 (colored)
archivers/star: Update to 1.6.1nb8 - Remove pkgsrc patches (merged upstream) - Move OS specific helper code to devel/smake/Makefile.common Changes from AN-2020-05-25: - libmdgest: Added a "defined(_M_ARM)" check for MSVC byte order definitions (byte_order.h). Thanks to "Excalibur" for reporting. - star: SmartOS supports aclutils.h as published include file (what we intented to include in Schillix-ON as well, since it is needed for libsec) and aclutils.h includes ctype.h. We thus need to #include <ctype.h> before star.h in acl_unix.c The problem occurred because we did already have a aclutils.h related autoconf test, even though Schillix-ON does not yet ship aclutils.h Thanks to Michael BçÖerle from pkgsrc for reporting. - star: The subst command (since 2018) malloc()s the space for a copy of the old string in case that the string Is too long for the static storage. It did however still use the static buffer instead of a pointer to the allocated space. We now use the allocated space if needed. - star: The subst command for pax now supports the \1, \2, ... escapes for \(...\) selections in the from pattern, like it is used by sed(1). Thanks to Kristyna Streitova for reminding on this. - star: A new unit test for this new feature has been added, using the example from the SUSE bug-report for the above substitute command. - star: A new subst option -pax-s has been added that supports sed(1) like substitutions. The old option -s continues to support change(1) like substititions. NOTE: Both pax -s and star -pax-s silently fall back to change(1)-like substitutions in case that a target platform does not support "regex" in libc.
Revision 1.6 / (download) - annotate - [select for diffs], Thu May 14 11:36:34 2020 UTC (17 months ago) by micha
Changes since 1.5: +3 -2 lines
Diff to previous 1.5 (colored)
archivers/star: Fix man page handling for different operating systems - Check which systems need and support processing tables with tbl The default case matches for NetBSD (no processing) - Man pages are installed into native OS sections PLIST must match this logic (use variables)
Revision 1.5 / (download) - annotate - [select for diffs], Fri Oct 4 14:27:51 2019 UTC (2 years ago) by micha
CVS Tags: pkgsrc-2020Q1-base, pkgsrc-2020Q1, pkgsrc-2019Q4-base, pkgsrc-2019Q4
Changes since 1.4: +7 -0 lines
Diff to previous 1.4 (colored)
star: Update to 1.6.1nb1 Switch to latest distfile. Update PLIST. Replaced MESSAGE with share/doc/star/INSTALL.pkgsrc. Changelog ========= Release 2019-03-29: - libschily: the lutimens() emulation no longer returns ENOSYS in case that the lstat() call fails, since this error code may e.g. be ENAMETOOLONG and used as an important indicator for long path name handling. This bug caused incorrect behavior when star extracted long pathnames on a platform without utimensat(). - star: The code restructuring to openat() from Summer 2018 did not only cause a noticeable speed up even when not using -find, it at the same time resulted in a wrong error message when a file type was seen that is not archivable (e.g. a socket while using the USTAR format). The correct message was something like "Unsupported filetype", while the bug caused a "file not found " message. This has been fixed by adding a new parameter "fd" to the function stat_to_info(). - star: header.c::get_xhtype() we did forgot to initialize: finfo.f_devminorbits and finfo.f_xflags This is now done. - star: The USTAR format now is able to create base-256 values in the field "t_devmajor". "t_devminor" did already support base-256. - star: The GNU tar format now is able to create base-256 values in the fields "t_devmajor" and "t_devminor". - star: The man page star.4 now mentions which fileds may have base-256 numbers. - star: The man page star.4 now longer contains the doubled "field field" in the explanation of the added UID/GID number for ACLs. - star: The man page star.4 now has a better description for the additional numeric fields in the ACL entries to prevent GNU tar from continuing with it's incompatible ACL implementation. - star: New ACL reference archives for the ultra compact format, that has been defined together with the libachive people, have been added to the directory testscripts/: acl-nfsv4-compact-test.tar.gz acl-nfsv4-compact-test2.tar.gz acl-nfsv4-compact-test3.tar.gz acl-nfsv4-compact-test4.tar.gz acl-nfsv4-compact-test5.tar.gz - star: Linux now uses the new <linux/fs.h> instead of <ext2/ext2_fs.h> to retrieve file flags. Thanks to a hint from Martin Matuska <email@example.com> from the libarchive team. - star: Support for the following new BSD Flags: compressed hidden offline rdonly reparse sparse system has been added. Thanks to a hint from Martin Matuska <firstname.lastname@example.org> from the libarchive team. - star: Support for the following new Linux flags: dirsync nocow notail projinherit topdir has been added. Thanks to a hint from Martin Matuska <email@example.com> from the libarchive team. - star: Support for reading non-comliant libarchive tarballs that use. "securedeletion" or "journal" instead of the documented text has been added. This was used by libarchive until March 20, when libarchive has been fixed. We introduce the above names for compatibility with old TARs created by libarchive. - star: When an "old star" archive is read and this archive is from a system like FreeBSD with non-continous minor bits, star no longer warns unless there is a device file in the archive. - star: unit tests: the scripts now contain LC_ALL=C export LC_ALL instead of just LC_ALL=C to make the environment exported. - star/libstrar: The case where iconv() returns -1 and sets errno to E2BIG is now handled correctly. - star: The testscripts/ directory now contains the tar test archives from the portability tests from Michal Gorny. Check http://cdrtools.sourceforge.net/private/portability-of-tar-features.html for an updated (to match star-1.6) variant of the results from the portability tests from Michal Gorny. - star: older versions of star did not print the messages: "WARNING: Archive is 'xxx' compressed, trying to use the -xxx option.\n" in case that the option -print-artype was in use. Later versions that added support for more than "gzip" and "bzip2" forgot to add the same exception for the new compression methods. We now ommit this message for all compression types. - star: Support for the "lzma" compression has been added. - star: Support for the "freeze2" compression has been added. - star: The compression method name list did not include the text "zstd". We added the missing text. - star: The hint messages that are printed when a compressed input archive is not seekable did forgot to mention "lzip" and "zstd". We added the forgotten messages. - star: New unit tests check whether star is able to auto-detect and auto decompress various compression formats. - star: The unit tests now include the portability tests from Michal Gorny - A new option cli=name (must be argv) allows to select all supported command line interfaces (star, suntar, gnutar, pax, cpio) when called as star. This is needed to be able to test all command line interfaces from out unit tests since star is not installed in this case and a selection from argv would not work. - star: The version date is now "2019/03/20" Release 2019-04-29: - libfind/star: the verbose listing code has ben restructured to have the file permissions in the same string as the file type. This is needed to implement the POSIX pax listformat interpreter format %M in future. - libfind/star: the verbose listing no longer prints "l" for mandatory record locking for non-directory type file, but rather only for plain files. - star: The "gnutar" emulation now prints the --help output to stdout as GNU tar does. - star: The gnutar.1 man page now mentions that the GNU tar options -g / -G did never work and it thus makes no sense to implement them. - star: very outdated code in list.c has been removed. - star: Added new unit tests for incremental backups and restores. This in special include tests that always fail with GNU tar as GNU tar is not usable and never was usable for incremental restores in case that the differences are more than trivial. - star: new version date 2019-04-01 Release 2019-06-13: - star: fixed a bug in the FIFO code that mainly happened on Linux (with a 1000x higher probability than it happens on Solaris). The bug was. caused, as a check for a flag has been done twice instead of only once where it could change it's value between both locations. As a. result, star reported "star: Implementation botch: with FIFO_MEOF" as the tar side of the FIFO did sometimes not wait for the FIFO_IWAIT state when called as "star -multivolume -tv f=... f=... ... For this reason, star incorrectly got a wakeup at the wrong location. The bug appeared in case that star -x/-t -multivol f=.. f=.. .... has been called with very small tar archives. Thanks to Heiko Eissfeldt for reporting. - star: The FIFO code renamed the "flag" member of the "m_head" structure to "gflag" for better readability. - star: The debugging code in the FIFO has been enhanced to print the names of the flag bits in addition to the hex values. - star: A deadlock situation that happens once every 500000 tries on Linux with multi-volume archives has been fixed. The problem was caused by a complex condition where the get side of the FIFO needs to check the EOF FIFO flag and the amount of data available in the FIFO and then decide whether to wait for a wakeup or not. Since the EOF flag needs to be checked first, a context switch in the get side of the FIFO could allow the put side to set the EOF flag before the get side did check the fill ratio of the FIFO. This caused both the get side and the put side to wait for a wakeup. The new code introduced a new variable mp->mayoblock that is set by the get side before checking for EOF. This new flags allows the put side to know that the get side is just in a critical situation and lets the put side wait until mp->mayoblock is no longer set, which signals a stable state in the get side. This permits to avoid the deadlock. - star: Note that the FIFO has been initially written as a lock free design in the late 1980's. This is to allow high portability to even older UNIX versions. The star FIFO works on all UNIX variants that support pipes and shared memory, which is e.g. the case for SunOS-4.0 from 1988. At the time the FIFO has been designed, the target OS did not support multi-CPU systems and problems in the FIFO first appeared with massively faster multi-CPU systems around y2000. The recently detected problems all have been triggered by a different context switch behavior on Linux, even though they could have appeared on any OS in case that many million tries are attempted. - star: bumped version to 1.6.1 Release 2019-07-15: - star: the compress unit test no longer fails on Cygwin because the gzip binary is compiled incorrectly and does not support LZW. The related test is now skipped. Thanks to Heiko Eissfeldt for reporting - star: some new unit tests failed if the schilytools source tree has been installed in a directory with spaces in it's name. Thanks to Heiko Eissfeldt for reporting - star: The unit tests for incremental backups include archives that include userid/groupid and username/groupname that may not be restorable on a different computer. We now ignore these ID meta. data when comparing the results. Thanks to Heiko Eissfeldt for reporting - star: When comparing nanoseconds in time stamps, star now has a mode that treats time stamps as equal in case that tv_nsec % 100 == 0 and the rest of the nano seconds is equal. This is needd on Cygwin since NTFS counts in 1/10 microseconds since Januar 1 1601. This applies to both star -diff and the "newer" check while extracting files. Thanks to Heiko Eissfeldt for reporting - star: a new option diffopts=dnlink has been implemented to support filesystems that do not follow the historic UNIX model for hard links on directories. Since Cygwin usually has a linkcount of 1 on directories, you need to use "star -diff diffopts=!dnlink ..." if you like to diff the meta data from a historical UNIX filesystem. Thanks to Heiko Eissfeldt for reporting - star: The incremental backup/restore tests now use. "star -diff diffopts=!dnlink ..." to make them work on Cygwin. Thanks to Heiko Eissfeldt for reporting - star: star -c -H exustar -acl -xattr-linux . did cause file not found messages from the attempt to archive the Linux xattrs. This was caused by a change from July 2018 when trying to optimize directory access in (non-find) create mode. The call to read the Linux xattrs has now been moved to the location where in former times the ACL code has already been moved. The move is needed because there is no ACL/XATTR related function that is similar to openat(). - star: A similar problem with get_xattr() did exist with star -diff - star: star -diff did not compare ACLs since getinfo() no longer includes a call to get_acl(). We now call get_xattr() and get_acl() in diff.c - star: The Solaris ACL interface now implelements lacl() / lacl_get() / lacl_set() to support very long pathnames with ACLs. - star: The Linux ACL interface now implelements lacl_get_file() / lacl_set_file() to support very long pathnames with ACLs on platforms that implement the withdrawn POSIX ACL draft. - star: The Linux xattr interface now implelements. llgetxattr() / llsetxattr() / lllistxattr() to support very long pathnames with Linux xattrs. - star: New version date Release 2019-07-22: - star: "pax -pe" no longer sets the variable "doxattr" as this caused an error message: "NFSv4 extended attribute files are not yet supported.\n" that caused the OpenSolaris-ON "nightly" compilation to abort as a result of that error and exit code != 0. Release 2019-08-13: - libschily: Various functions and *at() emulation functions call stat() even though the caller does not know about that call. This could cause a missbehavior in case that a file returns EOVERFLOW with a normal stat(). We now compile these functions in unconditional large file mode to overcome that problem. The affected files are: diropen.c lutimens.c findinpath.c linkat.c mkdirs.c searchinpath.c resolvepath.c lchmod.c renameat.c. Note that this problem affected star(1) on platforms that do not fully implement all *at() interfaces, since star started to support really long path names in July 2018. - star: Star did not compile on platforms without ACLs anymore since we did rearrange the code with schilytools 2019-07-15. We now have the needed #undef USE_ACL in diff.c as well. Thanks to Dennis Clarke for reporting. - star: Avoid a warning when a star -dump archive is unpacked on FreeBSD or Linux with non-contiguous minor bits. The warning is not needed since we only use SCHILY.dev in order to detect mount points but not to compute the major/minor parts. Release 2019-08-13: - star: star -xdev -find typically works to exclude mounted files. It still does not always do what is expected, e.g. in case that /proc is in the tree of scanned files, where files deep in the new mounted tree suddenly have the same FS ID as other filesystems, e.g. the file /proc/<pid>/path/a.out. In such cases, "star -find -xdev" is still recommended where the mounted file exclusion is done inside libfind instead of being done inside star. Before, files on other filesystems have not been honored at all when using "star -xdev -find ...".
Revision 1.4 / (download) - annotate - [select for diffs], Tue Mar 19 14:21:20 2019 UTC (2 years, 7 months ago) by wiz
CVS Tags: pkgsrc-2019Q3-base, pkgsrc-2019Q3, pkgsrc-2019Q2-base, pkgsrc-2019Q2, pkgsrc-2019Q1-base, pkgsrc-2019Q1
Changes since 1.3: +12 -0 lines
Diff to previous 1.3 (colored)
star: update to 1.6. Update provided by Michael BÃ¤uerle via pkgsrc-wip. Changelog ========= Release 2018-11-22: -libschily: resolvenpath() did not work as expected when some path names do not exist. A stat() call that should check whether we already reached the "/" directory caused a return (-1) even with (flags & RSPF_EXIST) == 0 This bug caused star to classify more symlinks as dangerous than needed. - star: A typo in the function dolchmodat() has been fixed. The bug has been introduced in July 2018 while adding support for very long path names. - star: added a new timestamp to the star version. - star: The man page now mentions incremental backups and restores in the FEATURES section. Release 2018-12-06: - star: hole.c: A memory leak in in hole.c::put_sparse() has been fixed. Thanks to Pavel Raiskup for reporting this coverity result. - star: xheader.c: the macro scopy() no longer has a semicolon at the end. Thanks to Pavel Raiskup for reporting this coverity result. Release 2019-01-22: - libstrar & star unicode.c: iconv() may return > 0 if there are characters that could not be converted into an identical meaning. We therefore now check for ret != 0 instead of ret == -1. - star: added support for auto detection of "zstd" compressed archives. - star: added a new option -zstd to support compression and uncompression using the program "zstd". - star: Recently, star did hang in the FIFO code on Solaris. This did not happen on Solaris over 20 years before... On Linux - on fast multi CPU machines - the probability that a child process from fork() starts up before the parent is 1000x higher than on Solaris, where 10 million tries were needed to reproduce the same problem. As a result, the FIFO in star on Linux could in rare cases (1 of. ~ 10000 tries) even finish the 1st read() from the input file before the "tar"-process starts with e.g. command lines like "star -tv" or. "star -x". Since star introduced auto-byte-order detection and handling in 1985, star needs a special start up sequence to do that. Star introduced the FIFO in the late 1980s and the machines from that time did always restart the parent before the fork()ed child starts. The new OS behavior thus caused a situation that was not forseeable when the FIFO has been designed. This new OS behavior caused a deadlock in aprox. 1 of 10000 star calls on Linux and 1 of 10000000 star calls on Solaris. Star now waits when entering the FIFO fill-process until the. FIFO get-process did start up before trying to wake up a waiting get process. - star: On Linux, in 1 of 1.5 million tries, star did die from SIGPIPE. Note that this did never happen on Solaris. Star now ignores SIGPIPE and it seems that this fixed the problem since it did not happen again after that change with even 100 million tries. - star: The debug printing for the FIFO has been enhanced to print more information from the FIFO control structure to make it easier to debug problems like the ones mentioned above. - star: There seems to be a problem in pipe handling in the Linux kernel. It seems that in rare cases, the read(2) on a pipe returns 0 even though the write side did write(2) one byte to the pipe just before calling exit(). Unfortunately, this problem is hard to debug as it happens only once every ~30 million tries. Our workaround is to behave as if the expected byte could be read and star currently prints something like: star: Erfolg. Sync pipe read error pid 8141 ret 0 star: Erfolg. Ib 0 Ob 1 e 0 p 1 g 0 chan 5. star: Erfolg. Trying to work around Kernel Pipe botch. before it continues. Since the star exit code in such a case is 0, we assume that this is a correct workaround and this case thus may be made completely silent in the future. - star: an even less frequent FIFO problem (occurs once every 50 million tries on fast multi CPU machines) has been identified. Star reports a hard EOF on input even though the complete file with logical EOF has been read and there is still input to process. In order to debug this problem a debug message has been added to the code. With this debug message, it turned out, that this problem happened because a context switch occurred in the FIFO read process after it did see an empty FIFO and later, after the process was resumed, the following check for the FIFO_MEOF flag did see EOF. We now first check for the FIFO_MEOF flag and later for the amount of data inside as the FIFO as FIFO_MEOF is set after the FIFO content has been updated and thus a context switch is no longer able to cause a wrong assumption about the content of the FIFO. If you still see this, please send a report. - star: added support to print debug malloc statistics to better debug memory problems in star. - star: pathname.c:: free_pspace() now only frees the path buffer if it is != NULL - star: fixed a bug in the file create.c that caused star to incorrectly grow the path buffer by 2 bytes for every archived file. This caused star to constantly grow if a larger amount of files are archived and eat up all memory available to 32 bit processes if the archived filesystem is larger than approx. 1 TB. - star: If the path name now cannot be handled because of low memory, we print a warning that includes the text "out of memory". - star: Now checking whether open of /dev/null failed while running a compress pipe. This avoids a core dump on defective OS installations. Thanks to Pavel Raiskup for poiting to a related Coverity message. - star: props.c: Added a missing /* FALLTHROUGH */ comment.. Thanks to Pavel Raiskup for poiting to a related Coverity message. - star: create.c: Add more comment for the CPIO CRC format handler to explain why the last instance if a series of hard links for a file needs to archive the data. - star: diff.c: added a filling fillbytes(&finfo, ...) to make sure that ACL pointers are initialized. Thanks to Pavel Raiskup for poiting to a related Coverity message. - star: Several /* NOTREACHED */ comments have been added to tell programs like coverity that after a NULL pointer check, there is no continuation of the program Thanks to Pavel Raiskup for poiting to a related Coverity message. - star: extract.c: A if (path->ps_path == '\0') has been corrected to if (path->ps_path == '\0') after a mktemp() call. This was a typo introduced with the new support for extremely long path names. Thanks to Pavel Raiskup for poiting to a related Coverity message. - star: extract.c An initalization for a struct pathstore has been moved to the front to verify that path.ps_path is always initialized. Thanks to Pavel Raiskup for poiting to a related Coverity message. - star: header.c: isgnumagic(&ptb->dbuf.t_vers) has been changed to isgnumagic(ptb->ustar_dbuf.t_magic) as it is a "ustar" structure that is going to be checked. Thanks to Pavel Raiskup for poiting to a related Coverity message. - star: some Cstyle changes - bsh / Bourne Shell / star: the function hop_dirs() no longer checks for p2 != NULL before calling *p2 = '/' as p2 has been granted to be != NULL from a break with strchr(p, '/') == NULL Release 2019-02-18: - star: another similar has been fixed similat to what has been fixed already in the 2019-01-22 release: An even less frequent FIFO problem (occurs once every 50 million tries on fast multi CPU machines) has been identified. Star reports a hard EOF on input even though the complete file with logical EOF has been read and there is still input to process. In order to debug this problem a debug message has been added to the code. With this debug message, it turned out, that this problem happened because a context switch occurred in the FIFO read process after it did see an empty FIFO and later, after the process was resumed, the following check for the FIFO_MEOF flag did see EOF. We now first check for the FIFO_MEOF flag and later for the amount of data inside as the FIFO as FIFO_MEOF is set after the FIFO content has been updated and thus a context switch is no longer able to cause a wrong assumption about the content of the FIFO. We now did run 250 million tests without seeing another problem. If you still see this, please send a report. - star: Note that the debug output for this problem now has been disabled. If you need to debug this, call: smake clean COPTX=-DFIFO_EOF_DEBUG all in the star directory. - star: The message "Sync pipe read error" is no longer printed when the FIFO background process dies instead of sending a final wakeup. This is needed since there is a possibility for a context switch in the foreground process that can make it later wait for a wakeup while the background process misses to see the wait flag and just exits. - star: In rare conditions (once every 2 million tries), a hang could. occur with "star -c" if the tar process fills the FIFO and sets the EOF flag and then calls wait() to wait for the FIFO tape output process. This happens in case that the tape output did not see the EOF flag because it has undergone a context switch after it checked for the not yet existing EOF flag and before waiting for a wakeup from the tar FIFO fill process. Star now closes the sync pipes before calling wait() as this always wakes up the waiting other side. We did run another 300 million tests for this condition and did not see any problem now. - star: The version is now 1.6 Short overview for what changed since the last "stable" version: - Support for "infinitely" long path names has been added. - Support for comparing timestamps with nanosecond granularity - -secure-links has been made the default when extracting archived (except when doing an incremental restore). - Added Support for NFSv4 ACLs on FreeBSD. Solaris has been supported since 2013. - Added Support to archive SELinix attributes. - Allow to configure whether "star -fsync" is the default in order to support filesystems that are slow with granted transactions (like ZFS) or platforms that are genrally slow with fsync() (like Linux). - Full UNICODE support has been added for tar headers. - Support for -zstd compression has been added. - Some rare FIFO problems have been fixed. Note that we did recently run more than a billion tests to verify the FIFO after we identified a method to trigger the problem on Linux. Release 2019-03-11: - star: Support for base-256 numbers in timestams and uid/gid has been added. This has been planned in the 1990s already, when star invented the base-256 coding, but it has been forgotten in favor of the POSIX.1-2001 enhanded archive headers. Now it seems that GNU tar. that copied the format from star uses it for timestamps and uid/gid and we need to implement it in order to get archive compatibility. Thanks to Michal Góòny (firstname.lastname@example.org) for detecting the missing feature. - star: The t_rdev field in the old star header now may use base-256 as well. - star: The function stoli() added a new parameter "fieldwidth" that allows to configure when a "unterminated octal number" warning is printed. This is needed since this function is used for 8 byte and for 12 byte fields. - star: star did print archives with illegal 32 byte user/group. names (where the nul terminator is missing) "correctly", when in. list mode but it used only the first 31 bytes when extractig. such archives - star: a new function istarnumber() is used to do better heuristics on what a valid TAR archive is. We have some special handling to work. around the non-compliance of GNU tar in some known cases. If you discover other GNU tar archives that are not detected as TAR archive, please report them to help to make th eheuristics better. The background is to make star better in detecting fool archives. - star: The directory testscripts added new files: testscripts/not_a_tar_file1 and testscripts/not_a_tar_file3 with correct checksums that fool tar implementations that use too few heuristics to identify tar archives. - star: fixed a bug in the FIFO related to extracting multi-volume archives. The bug was introduced with release 2019-02-18 and the effect was that the FIFO complained at the end of the last volume. - star/libschily: Added new error checking codes: "ID"<-->allows to control error behaviour with range errors in uid_t and gid_t values. "TIME"<>allows to control error behaviour with range errors in time_t - star: Creating multi volume archives without using the FIFO did dump core. We thus no longer set mp->chreel = TRUE; when the FIFO has. been disabled. The related bug has been introduced in January 2012. - star: Creating multi volume archives with a very small volume size could cause a hang at the end as the function startvol() did not check whether the TAR process did already decide to exit while waiting for the TAR process to calm down (stop) before writing the next multi volume header. We no longer wait in this case. - star: exprstats() now calls fifo_exit(ret) in order to avoid a FIFO Sync pipe read error message in case that star was terminated with an error. - star: Since we added better Unicode support in May 2018, star did dump core when a multi volume header with POSIX.1-2001 extensions was written in multi volume create mode. We now check for NULL pointers before we call nameascii() to decide whether the file. name needs a UTF-8 translation. - star: Creating multi volume archives without POSIX.1-2001 support no longer sets POSIX.1-2001 extension flags for the volume header. - star: The flag XF_NOTIME now works when creating POSIX.1-2001 extended headers and thus the 'x'-header with time stamps for the volume header tar header is no longer created. This avoids to write atime=1 for the volume number 1 since we encode the volume number in the otherwise useless atime of the volume header when in POSIX.1-1988 TAR mode. - star: the star.1 man page now mentions that the first tar program appeared in 1979 (3 years before star has been started as a project). - star: the star.4 man page now has a "SEE ALSO", a HISTORY and a AUTHOR section. - star: the star.4 man page now has a MULTI VOLUME ARCHIVE HANDLING section. - star: the star.4 man page added a new "BASIC TAR STRUCTURE" section. - star: The ACL reference test archives (formerly available from e.g.: http://sf.net/projects/s-tar/files/alpha/) have been added to the directory star/testscripts/. The files. acl-test.tar.gz acl-test2.tar.gz acl-test3.tar.gz acl-test4.tar.gz acl-test5.tar.gz contain ACLs that use the obsolete method from a POSIX proposal from around 1993 that was withdrawn in 1997 and never has become part of a standard. This method has been implemented in 1993 for UFS on Solaris. GNU tar claims to support this format but really does not support it at all. GNU tar fails to extract the reference tar archives from above and it fails to create a compliant tar archive in create mode. It is strange to see that GNU tar never has been tested against the reference archives that have been created in collaboration with SuSE in 2001 already. The files acl-nfsv4-test.tar.gz acl-nfsv4-test2.tar.gz acl-nfsv4-test3.tar.gz acl-nfsv4-test4.tar.gz acl-nfsv4-test5.tar.gz contain ACLs that have become part of the NFSv4 standard and that. are also used on NTFS and ZFS. This format is completely unsupported by GNU tar. - star TODO: create unit tests in order to avoid future problems with multi volume archives similar to the problems we recently fixed. - star: Updated version 1.6 (not yet published in separate tarball) Short overview for what changed since the last "stable" version: - Support for "infinitely" long path names has been added. - Support for base-256 numbers in timestams and uid/gid has been added. This has been planned in the 1990s already, when star invented the base-256 coding, but it has been forgotten in favor of the POSIX.1-2001 enhanded archive headers. - Support for comparing timestamps with nanosecond granularity - -secure-links has been made the default when extracting archived (except when doing an incremental restore). - Added Support for NFSv4 ACLs on FreeBSD. Solaris has been supported since 2013. - Added Support to archive SELinix attributes. - Allow to configure whether "star -fsync" is the default in order to support filesystems that are slow with granted transactions (like ZFS) or platforms that are genrally slow with fsync() (like Linux). - Full UNICODE support has been added for tar headers. - Support for -zstd compression has been added. - Some rare FIFO problems have been fixed. Note that we did recently run more than a billion tests to verify the FIFO after we identified a method to trigger the problem on Linux.
Revision 1.3 / (download) - annotate - [select for diffs], Sat Nov 10 19:55:54 2018 UTC (2 years, 11 months ago) by wiz
CVS Tags: pkgsrc-2018Q4-base, pkgsrc-2018Q4
Changes since 1.2: +58 -28 lines
Diff to previous 1.2 (colored)
star: update to 1.5.4nb1. Packaged for wip by Michael BÃ¤uerle. Changes: too many to list, last distfile was from 2003.
Revision 1.2 / (download) - annotate - [select for diffs], Mon Dec 16 23:21:06 2002 UTC (18 years, 10 months ago) by grant
CVS Tags: pkgsrc-2018Q3-base, pkgsrc-2018Q3, pkgsrc-2018Q2-base, pkgsrc-2018Q2, pkgsrc-2018Q1-base, pkgsrc-2018Q1, pkgsrc-2017Q4-base, pkgsrc-2017Q4, pkgsrc-2017Q3-base, pkgsrc-2017Q3, pkgsrc-2017Q2-base, pkgsrc-2017Q2, pkgsrc-2017Q1-base, pkgsrc-2017Q1, pkgsrc-2016Q4-base, pkgsrc-2016Q4, pkgsrc-2016Q3-base, pkgsrc-2016Q3, pkgsrc-2016Q2-base, pkgsrc-2016Q2, pkgsrc-2016Q1-base, pkgsrc-2016Q1, pkgsrc-2015Q4-base, pkgsrc-2015Q4, pkgsrc-2015Q3-base, pkgsrc-2015Q3, pkgsrc-2015Q2-base, pkgsrc-2015Q2, pkgsrc-2015Q1-base, pkgsrc-2015Q1, pkgsrc-2014Q4-base, pkgsrc-2014Q4, pkgsrc-2014Q3-base, pkgsrc-2014Q3, pkgsrc-2014Q2-base, pkgsrc-2014Q2, pkgsrc-2014Q1-base, pkgsrc-2014Q1, pkgsrc-2013Q4-base, pkgsrc-2013Q4, pkgsrc-2013Q3-base, pkgsrc-2013Q3, pkgsrc-2013Q2-base, pkgsrc-2013Q2, pkgsrc-2013Q1-base, pkgsrc-2013Q1, pkgsrc-2012Q4-base, pkgsrc-2012Q4, pkgsrc-2012Q3-base, pkgsrc-2012Q3, pkgsrc-2012Q2-base, pkgsrc-2012Q2, pkgsrc-2012Q1-base, pkgsrc-2012Q1, pkgsrc-2011Q4-base, pkgsrc-2011Q4, pkgsrc-2011Q3-base, pkgsrc-2011Q3, pkgsrc-2011Q2-base, pkgsrc-2011Q2, pkgsrc-2011Q1-base, pkgsrc-2011Q1, pkgsrc-2010Q4-base, pkgsrc-2010Q4, pkgsrc-2010Q3-base, pkgsrc-2010Q3, pkgsrc-2010Q2-base, pkgsrc-2010Q2, pkgsrc-2010Q1-base, pkgsrc-2010Q1, pkgsrc-2009Q4-base, pkgsrc-2009Q4, pkgsrc-2009Q3-base, pkgsrc-2009Q3, pkgsrc-2009Q2-base, pkgsrc-2009Q2, pkgsrc-2009Q1-base, pkgsrc-2009Q1, pkgsrc-2008Q4-base, pkgsrc-2008Q4, pkgsrc-2008Q3-base, pkgsrc-2008Q3, pkgsrc-2008Q2-base, pkgsrc-2008Q2, pkgsrc-2008Q1-base, pkgsrc-2008Q1, pkgsrc-2007Q4-base, pkgsrc-2007Q4, pkgsrc-2007Q3-base, pkgsrc-2007Q3, pkgsrc-2007Q2-base, pkgsrc-2007Q2, pkgsrc-2007Q1-base, pkgsrc-2007Q1, pkgsrc-2006Q4-base, pkgsrc-2006Q4, pkgsrc-2006Q3-base, pkgsrc-2006Q3, pkgsrc-2006Q2-base, pkgsrc-2006Q2, pkgsrc-2006Q1-base, pkgsrc-2006Q1, pkgsrc-2005Q4-base, pkgsrc-2005Q4, pkgsrc-2005Q3-base, pkgsrc-2005Q3, pkgsrc-2005Q2-base, pkgsrc-2005Q2, pkgsrc-2005Q1-base, pkgsrc-2005Q1, pkgsrc-2004Q4-base, pkgsrc-2004Q4, pkgsrc-2004Q3-base, pkgsrc-2004Q3, pkgsrc-2004Q2-base, pkgsrc-2004Q2, pkgsrc-2004Q1-base, pkgsrc-2004Q1, pkgsrc-2003Q4-base, pkgsrc-2003Q4, netbsd-1-6-1-base, netbsd-1-6-1, cwrapper, cube-native-xorg-base, cube-native-xorg
Changes since 1.1: +18 -0 lines
Diff to previous 1.1 (colored)
Updated star to 1.4.2. Major changes since 1.4.1: - printf() now correctly handles %X vs. %x on 64 bit machines Removed a 20 year old local extension that became non-portable. - new 'librmt', which may be used by any external program like e.g. dump/restore to improve cross platform compatibility. - librmt now allows the use of ssh(1) for remote tape access. - smt benefits from librmt and now gives platform independent 'mt status' output in remote mode. - New option -wready for smt. - Better man page for 'rmt'. - Handle a seek error problem in create mode correctly when checking for reading past max possible file size on non-large file OS. - Correctly propagate write/read errors from FIFO to star. - Add support for SIGINFO (*BSD) as a courtesy to BSD users. - Do not open /dev/tty if a newvolume script is present. This allows the use of star from cron scripts. - Fixed a bug in the ACL handling code on Linux that caused star to recognize ACL comments as ACL entries and include them in the archive. - Work around to allow star to read ACL enhanced archives that include bogus entries that really were ACL comments created by the bug above. The full list of changes can be found at: ftp://ftp.fokus.gmd.de/pub/unix/star/AN-1.4.2
Revision 220.127.116.11.4.2 / (download) - annotate - [select for diffs], Wed Aug 21 22:42:03 2002 UTC (19 years, 2 months ago) by jlam
Changes since 18.104.22.168.4.1: +14 -0 lines
Diff to previous 22.214.171.124.4.1 (colored) to branchpoint 126.96.36.199 (colored) next main 1.2 (colored)
Merge from pkgsrc-current in pkgsrc/archivers.
Revision 188.8.131.52.4.1, Wed Jun 26 13:37:01 2002 UTC (19 years, 3 months ago) by jlam
Changes since 184.108.40.206: +0 -14 lines
file PLIST was added on branch buildlink2 on 2002-08-21 22:42:03 +0000
Revision 220.127.116.11 / (download) - annotate - [select for diffs] (vendor branch), Wed Jun 26 13:37:01 2002 UTC (19 years, 3 months ago) by uebayasi
CVS Tags: pkgviews-base, pkgviews, pkgsrc-base, netbsd-1-6-RELEASE-base, netbsd-1-6, buildlink2-base
Branch point for: buildlink2
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 (colored)
Initial import of Star 1.4.1. DESCR is written by the author, Joerg Schilling <email@example.com>. Star is a full-featured tar command that can access local and remote tar archives (files and tapes). It reads and writes POSIX compliant tar archives as well as non-POSIX GNU tar archives. Star is the first POSIX.1-2001 compliant tar implementation. It includes a FIFO for speed, a pattern matcher, multi-volume support, the ability to archive sparse files and ACLs and the ability to archive extended file flags. It supports utomatic archive format detection, automatic byte order recognition, automatic archivecompression/decompression. It includes the only known platform independent "rmt" server program that implements all Sun/GNU/Schily/BSD enhancements and allows any "rmt" client from any OS to contact any OS as server.
Revision 1.1 / (download) - annotate - [select for diffs], Wed Jun 26 13:37:01 2002 UTC (19 years, 3 months ago) by uebayasi
This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.