tech-userlevel archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: libarchive patches



In article <8dc6ce3d-5d37-db07-4fe6-accf7948b0a0%gmx.com@localhost>,
Kamil Rytarowski  <n54%gmx.com@localhost> wrote:
>-=-=-=-=-=-
>-=-=-=-=-=-

>Can we sync incompatible command line arguments, at least for sysinst?
>
>https://nxr.netbsd.org/xref/src/usr.sbin/sysinst/defs.h#511

511 #ifdef	USING_PAXASTAR
512 #define	TAR_EXTRACT_FLAGS	"-xhepf"
513 #else
514 #define	TAR_EXTRACT_FLAGS	"-xpPf"
515 #endif

So the different flags are:

pax-as-tar:
	-e exits after first error, does not change behavior much
	except that it aborts quicker. We could add it to bsdtar,
	but it is not critical (the letter is free).

	-h Does not work the same way. In pax-as-tar internally is
	called Lflag and is allowed both in creation and extraction.
	In creation it follows symlink and puts the actual destinations
	of symlinks in archives; in extraction it follows symlinks
	before creating directories instead of replacing symlinks
	with directories; it does not make a difference for files.
	In bsdtar it is translated to -L and only allowed in
	creation, not extraction, having the same semantics as
	pax-as-tar. After the patch in pull 1300 bsdtar behaves
	like -h was given when extracting. I think that the pax-as-tar
	behavior is better (to require -h to follow symlinks on
	extraction).

	Both these can be fixed.

bsdtar:
	-P is not needed anymore, since with the pullup 1300 bsdtar
	always preserves existing symlinks (but perhaps it should not 
	for directories unless -h is given, like pax-as-tar does)

christos



Home | Main Index | Thread Index | Old Index