ChangeLog 503 KB
Newer Older
Bdale Garbee's avatar
Bdale Garbee committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
2017-12-17  Sergey Poznyakoff  <gray@gnu.org>

	Version 1.30

	* configure.ac: Set version 1.30
	* NEWS: Update.

2017-11-20  Paul Eggert  <eggert@cs.ucla.edu>

	Fix "concatenating" typo.

	Problem reported by Rodrigo Queiro in:
	https://lists.gnu.org/r/bug-tar/2017-11/msg00021.html
	* doc/intern.texi (Extensions): Fix typo.

2017-11-18  Paul Eggert  <eggert@cs.ucla.edu>

	Port to gcc -Wimplicit-fallthrough=5

	* src/common.h (FALLTHROUGH): New macro, for use with gcc
	-Wimplicit-fallthrough=5, which is now the default when used with
	Gnulib after commit 2017-05-16T16:23:52!eggert@cs.ucla.edu
	and with --enable-gcc-warnings

2017-11-18  Paul Eggert  <eggert@cs.ucla.edu>

	Port to Texinfo 6.4

	* doc/tar.texi (Sparse Recovery): Omit ‘.’ from anchor name,
	as ‘makeinfo’ now complains about it.  All uses changed.

2017-11-18  Paul Eggert  <eggert@cs.ucla.edu>

	Document base-256 representation in GNU format

	Problem reported by Rodrigo Queiro in:
	https://lists.gnu.org/r/bug-tar/2017-11/msg00018.html
	* doc/intern.texi (Standard, Extensions):
	Document base-256 representations.

2017-11-18  Paul Eggert  <eggert@cs.ucla.edu>

	build: update gnulib submodule to latest

2017-11-18  Paul Eggert  <eggert@cs.ucla.edu>

	Fix typo caught by GCC 7.2.1

	* lib/wordsplit.c (wordsplit_perror): Add missing "break;".

2017-11-16  Sergey Poznyakoff  <gray@gnu.org.ua>

	Update docs

	* doc/Makefile.am: Add recipes.texi
	* doc/recipes.texi: New file.
	* doc/tar.texi: New appendix "Recipes"

2017-11-16  Pavel Raiskup  <praiskup@redhat.com>

	tests: more deterministic xattr07

	* tests/xattr07.at: Define order of files within tested archive.

2017-11-16  Sergey Poznyakoff  <gray@gnu.org.ua>

	Minor improvements in the docs.

2017-11-16  Sergey Poznyakoff  <gray@gnu.org.ua>

	New option --warning=failed-read

	* NEWS: Document the --warning=failed-read option.
	* doc/tar.texi: Likewise.
	* doc/tar.1: Likewise.
	* src/common.h (WARN_FAILED_READ): New constant.
	(WARNING_ENABLED): New macro.
	* src/misc.c (close_diag, open_diag)
	(read_diag_details, readlink_diag)
	(savedir_diag, seek_diag_details)
	(stat_diag): Suppress warnings if WARN_FAILED_READ is set.
	* src/warning.c (failed-read): New keyword.

2017-11-16  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix docs

	* doc/tar.texi: Fix description of the argument to
	--xattrs-exclude
	and --xattrs-include option. It is a globbing pattern, not
	a regex.

	Fix a typo (LZOP)

2017-11-16  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix the --delay-directory-restore option

	* src/extract.c (find_direct_ancestor): New function.
	(create_placeholder_file): Set after_links member on
	delayed_set_stat
	entries starting from the direct ancestor of the placeholder file.

	* tests/extrac21.at: New testcase.
	* tests/testsuite.at: Add extrac21
	* tests/Makefile.am: Likewise.

	* NEWS: Update.

2017-11-09  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix reporting of hardlink mismatch during compare

	* src/common.h (quote_n_colon): New prototype.
	* src/misc.c (quote_n_colon): New function.
	* src/compare.c (report_difference, diff_link): Use quote_n_colon.

	* tests/difflink.at: New file.
	* tests/Makefile.am: Add difflink.at
	* tests/testsuite.at: Likewise.

2017-11-09  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix --verbatim-files-from

	* src/names.c (read_next_name): Don't unquote name read from the
	file, if --verbatim-files-from option is in effect.
	(names_options): improve description of --verbatim-files-from
	* tests/T-null2.at: Test the change.

2017-11-09  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix typo

	* doc/tar.texi

2017-09-30  Sergey Poznyakoff  <gray@gnu.org>

	Fix the effect of --transform over hard link targets without
	the --absolute-names

	* src/create.c (file_count_links): Apply safer_name_suffix to the
	hard link name prior to transforming it.
	* tests/xform03.at: New test case.
	* tests/Makefile.am: Add xform03.at
	* tests/testsuite.at: Likewise.

2017-08-24  Sergey Poznyakoff  <gray@gnu.org>

	Bugfix

	* src/tar.c (tar_help_filter): Add missing break statement

2017-06-29  Troels Thomsen  <troels@thomsen.io>

	Fix typo

2017-05-29  Pavel Raiskup  <praiskup@redhat.com>

	Fix non-deterministic archive type detection

	Due to analysis of partly uninitialized read-ahead buffer
	(short_read call), we sometimes mistakenly classified very small
	compressed archives as non-compressed; which in turn caused
	extraction failure.

	* src/buffer.c (check_compressed_archive): Don't assume that
	archives smaller than BLOCKSIZE could be non-compressed, as tar
	header always has at least one block.

2017-05-29  Jonas Julino  <ml-julino@1und1.de>
	    Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix handling of directories removed during incremental tar run

	* paxutils: Upgrade
	* src/create.c (create_archive): Use file_removed_diag
	instead of calling the corresponding *_diag function
	directly.
	* tests/dirrem01.at: New testcase.
	* tests/dirrem02.at: New testcase.
	* tests/Makefile.am: Add new tests.
	* tests/testsuite.at: Likewise.

2017-05-29  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix a bug in multi-volume archive creation.

	When creating multivolume archives, the bufmap code in buffer.c
	implicitly assumed that the members are stored in the archive
	contiguously, ignoring the member (and eventual extended) headers
	between them.  This worked until the member header happened to be
	at the very beginning of the volume, in which case its length was
	included in the calculation of the stored size and size left to
	store.	Due to this, the GNUFileParts extended header contained
	invalid GNU.volume.offset value, and the resulting archive failed
	to extract properly.

	This patch also eliminates improper listing of file part headers
	as regular files, when creating multivolume posix archives
	with -v.

	* src/buffer.c (bufmap): New member nblocks.  Counts number
	of blocks
	of file data written since reset.
	(bufmap_reset): Reset nblocks to 0.
	(_flush_write): Update nblocks.  When computing offset difference
	for
	bufmap_reset, count only data blocks, not headers.
	(close_archive): Flush archive until all blocks are written.
	(add_chunk_header): Use simple_finish_header instead of
	finish_header
	to avoid listing chunk header as regular file in verbose mode.
	* tests/multiv10.at: New test case.
	* tests/Makefile.am: Add new test.
	* tests/testsuite.at: Add new test.

2017-04-07  Paul Eggert  <eggert@cs.ucla.edu>

	--numeric-owner now affects private headers too

	Problem reported by Daniel Peebles in:
	http://lists.gnu.org/archive/html/bug-tar/2017-04/msg00004.html
	* NEWS: Document this.
	* src/create.c (write_gnu_long_link): If --numeric-owner,
	leave the user and group empty in a private header.  Cache the
	names for 0.

2017-02-28  Pavel Raiskup  <praiskup@redhat.com>

	Test and document --keep-directory-symlink

	* doc/tar.1: Document the option.
	* tests/extrac20.at: New testcase.
	* tests/Makefile.am: Mention extrac20.
	* tests/testsuite.at: Likewise.

2017-02-14  Paul Eggert  <eggert@cs.ucla.edu>

	Fix incompatibility with PGI 16.10

	* src/tar.c (options): Fix incompatibility with the C standard,
	which says that arguments to macro calls cannot contain #
	directives.

2017-01-02  Sergey Poznyakoff  <gray@gnu.org>

	Update copyright years

2016-11-12  Sergey Poznyakoff  <gray@gnu.org>

	Fix description of the "escape" quoting style

2016-11-12  Sergey Poznyakoff  <gray@gnu.org>

	Better error checking in the backup script.

	* scripts/backup.in: Check exit code of MT_BEGIN
	* scripts/backup.sh.in (backup_host): Return meaningful code
	in case of remote execution.  See the comment, though.

2016-11-12  Sergey Poznyakoff  <gray@gnu.org>

	Minor documentation fix

	* doc/tar.texi: Fix example about use of --no-recursion with -T

2016-11-12  Sergey Poznyakoff  <gray@gnu.org>

	Fix the --add-file option.

	* src/common.h (name_more_files): New proto.
	(files_from_option): Remove.
	* src/names.c (name_more_files): New file.
	(names_options): Fix declaration of the
	add-file option.
	(names_parse_opt): Handle --add-file.
	* src/tar.c (struct tar_args): Remove the input_files member.
	Change all uses: use name_more_files() instead.
	* tests/Makefile.am: Add new test.
	* tests/add-file.at: New testcase.
	* tests/testsuite.at: Add new test.

2016-11-11  Sergey Poznyakoff  <gray@gnu.org.ua>

	Add missing files

2016-11-11  Pavel Raiskup  <praiskup@redhat.com>

	don't set xattrs when --skip-old-files is used

	* src/extract.c (set_xattr): Properly handle maybe_recoverable()
	output.  Throw warnings to not complicate caller.
	(extract_file): Don't handle set_xattr's error.
	* tests/xattr07.at: New testcase.
	* tests/Makefile.am: Mention new testcase.
	* tests/testsuite.at: Likewise.
	* THANKS: Dawid.

2016-11-11  Sergey Poznyakoff  <gray@gnu.org.ua>

	Minor fix

	* src/tar.h (tar_stat_info): Change type of real_size_set to bool

2016-11-11  Pavel Raiskup  <praiskup@redhat.com>

	sparse: fix pax extraction for unicode filenames

	Make sure that 'GNU.sparse.name' header has higher priority than
	(for sparse-purposes artificially modified) 'path' pax header.

	Historically, the 'GNU.sparse.name' header comes before 'path';
	this caused that modified 'path' header won and that is not what
	we want in sparse "capable" tar implementation.

	* src/tar.h (tar_stat_info): New argument sparse_name_done.
	* src/xheader.c (raw_path_decoder): Move here the unconditional
	code from path_decoder.
	(path_decoder): Apply raw_path_decoder only if sparse_path_decoder
	was not yet called.
	(sparse_path_decoder): New wrapper around raw_path_decoder.
	* tests/sparse07.at: New testcase.
	* tests/testsuite.at: Mention new testcase.
	* tests/Makefile.am: Likewise.

2016-11-10  Pavel Raiskup  <praiskup@redhat.com>

	* tests/xattr06.at: Test include/exclude during archive/exctract.

2016-11-10  Ian McLeod	<imcleod@redhat.com>

	Bugfix - fix xattr exclude/include for archive create

	This makes archive create behavior consistent with the
	documentation.	Without this change xattr include/exclude options
	are accepted when creating an archive but are silently ignored.

	* src/xattrs.c (xattrs_xattrs_get): Apply exclude/include mask
	when fetching extended attributes
	* tests/Makefile.am: Add new test case.
	* tests/testsuite.at: Likewise.

2016-10-30  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>

	When extracting, skip ".." members

	* NEWS: Document this.
	* src/extract.c (extract_archive): Skip members whose names
	contain "..".

2016-09-26  Sergey Poznyakoff  <gray@gnu.org.ua>

	Mark all tests related to -C option with the "chdir" keyword

2016-09-26  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix interaction of -u with -C

	* src/update.c (update_archive): Pass correct change_dir
	value for addname
	* tests/update03.at: New file.
	* tests/Makefile.am: Add update03.at
	* tests/testsuite.at: Include update03.at

2016-09-21  Sergey Poznyakoff  <gray@gnu.org>

	Fix passing string values via TAR_OPTIONS

	* src/tar.c (parse_default_options): Don't free parsed words.
	* tests/options03.at: New testcase.
	* tests/Makefile.am: Add options03.at
	* tests/testsuite.at: Include options03.at

2016-05-28  Sergey Poznyakoff  <gray@gnu.org.ua>

	Tiny bugfix

2016-05-27  Sergey Poznyakoff  <gray@gnu.org.ua>

	Report positional options that were used but had no effect during
	archive creation

	* src/names.c (file_selection_option)
	(file_selection_option_name): New functions.
	(unconsumed_option_push, unconsumed_option_free)
	(unconsumed_option_report): New functions.
	(name_list_advance): Maintain a list
	of eventually unconsumed options during archive creation.
	Report unconsumed options, if any.

	* tests/positional01.at: New test case.
	* tests/positional02.at: New test case.
	* tests/positional03.at: New test case.
	* tests/Makefile.am: Add new test cases.
	* tests/testsuite.at: Likewise.

	* NEWS: Document the changes.
	* configure.ac: Version 1.29.90
	* doc/tar.texi: Document the changes.

Bdale Garbee's avatar
Bdale Garbee committed
402
403
404
405
2016-05-16  Sergey Poznyakoff  <gray@gnu.org.ua>

	Version 1.29

Bdale Garbee's avatar
Bdale Garbee committed
406
407
2016-05-16  Sergey Poznyakoff  <gray@gnu.org.ua>

Bdale Garbee's avatar
Bdale Garbee committed
408
	Minor fix
Bdale Garbee's avatar
Bdale Garbee committed
409

Bdale Garbee's avatar
Bdale Garbee committed
410
411
412
413
414
415
	* src/names.c (new_name): rename to make_file_name. All uses
	changed.

2016-04-14  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix argument handling when running external commands.
Bdale Garbee's avatar
Bdale Garbee committed
416

Bdale Garbee's avatar
Bdale Garbee committed
417
418
419
420
421
422
423
424
425
	* src/system.c (xexec): Use sh -c to run the command.  This fixed
	bug introduced by 7b5e80396 (tar 1.27)
	* doc/tar.texi: Fix checkpoint examples: (1) $TAR_FILENAME
	is not available when creating archive and (2) --checkpoint
	can't be used as abbreviation of --checkpoint-action

2016-04-06  Sergey Poznyakoff  <gray@gnu.org.ua>

	Remove iotty test
Bdale Garbee's avatar
Bdale Garbee committed
426

Bdale Garbee's avatar
Bdale Garbee committed
427
428
429
430
431
432
433
	The auxiliary utility ttyemu proved to be unreliable.
	Given existing
	differences between pty implementations and termios ioctls
	on various
	platforms, writing it in a portable way requires effort
	disproportional
	to its actual purpose.
Bdale Garbee's avatar
Bdale Garbee committed
434

Bdale Garbee's avatar
Bdale Garbee committed
435
436
437
438
439
440
441
442
443
444
445
	* configure.ac: Remove check for grantpt
	* gnulib.modules: Remove posix_openpt, ptsname, and unlockpt
	* tests/Makefile.am (TESTSUITE_AT): Remove iotty.at
	(check_PROGRAMS): Remove ttyemu.
	* tests/testsuite.at: Remove iotty.at
	* tests/iotty.at: Remove.
	* tests/ttyemu.c: Remove.

2016-04-05  Pavel Raiskup  <praiskup@redhat.com>

	xattrs: fix build on Darwin
Bdale Garbee's avatar
Bdale Garbee committed
446

Bdale Garbee's avatar
Bdale Garbee committed
447
448
	Be careful to define HAVE_XATTRS when not all needed xattr-related
	functions are properly defined either in libc or libattr.
Bdale Garbee's avatar
Bdale Garbee committed
449

Bdale Garbee's avatar
Bdale Garbee committed
450
	Reported independently by Denis Excoffier and Dominyk Tille.
Bdale Garbee's avatar
Bdale Garbee committed
451

Bdale Garbee's avatar
Bdale Garbee committed
452
453
454
455
456
457
458
459
	* acinclude.m4 (TAR_HEADERS_ATTR_XATTR_H): Check for each xattr
	function separately.  Don't AC_CHECK_LIB (LIBS is filled by
	AC_SEARCH_LIBS when necessary).
	* src/Makefile.am: The LDADD -lattr was redundant.

2016-03-24  Sergey Poznyakoff  <gray@gnu.org.ua>

	Remove --preserve option
Bdale Garbee's avatar
Bdale Garbee committed
460

Bdale Garbee's avatar
Bdale Garbee committed
461
462
463
464
	* src/tar.c: Remove --preserve option
	* NEWS: Update.
	* doc/tar.texi: Update.

Bdale Garbee's avatar
Bdale Garbee committed
465
466
2016-03-24  Sergey Poznyakoff  <gray@gnu.org.ua>

Bdale Garbee's avatar
Bdale Garbee committed
467
	Fix testcase
Bdale Garbee's avatar
Bdale Garbee committed
468

Bdale Garbee's avatar
Bdale Garbee committed
469
470
	* tests/time02.at: Sort tar -d output

Bdale Garbee's avatar
Bdale Garbee committed
471
472
2016-03-24  Sergey Poznyakoff  <gray@gnu.org.ua>

Bdale Garbee's avatar
Bdale Garbee committed
473
474
475
476
477
	Update THANKS file

2016-03-24  Jeremy Bobbio  <lunar@debian.org>

	New option --clamp-mtime
Bdale Garbee's avatar
Bdale Garbee committed
478

Bdale Garbee's avatar
Bdale Garbee committed
479
480
481
482
483
484
	The new `--clamp-mtime` option will change the behavior of
	`--mtime` to only
	use the time specified if the file mtime is newer than the
	given time.
	The `--clamp-mtime` option can only be used together with
	`--mtime`.
Bdale Garbee's avatar
Bdale Garbee committed
485

Bdale Garbee's avatar
Bdale Garbee committed
486
487
488
489
490
491
492
493
	Typical use case is to make builds reproducible: to loose less
	information, it's better to keep the original date of an archive,
	except for
	files modified during the build process. In that case, using
	a reference
	(and thus reproducible) timestamps for the latter is good
	enough. See
	<https://wiki.debian.org/ReproducibleBuilds> for more information.
Bdale Garbee's avatar
Bdale Garbee committed
494

Bdale Garbee's avatar
Bdale Garbee committed
495
496
	Patch submitted by Jeremy Bobbio and
	Daniel Kahn Gillmor <dkg@fifthhorseman.net>
Bdale Garbee's avatar
Bdale Garbee committed
497

Bdale Garbee's avatar
Bdale Garbee committed
498
499
	* doc/tar.1: Document --clamp-mtime
	* doc/tar.texi: Likewise.
Bdale Garbee's avatar
Bdale Garbee committed
500

Bdale Garbee's avatar
Bdale Garbee committed
501
502
503
504
505
506
507
	* src/common.h (set_mtime_option_mode): New enum
	(set_mtime_option): Change type to enum set_mtime_option_mode.
	(NEWER_OPTION_INITIALIZED): Rename to NEWER_OPTION_INITIALIZED.
	* src/create.c (start_header): Set mtime depending on
	set_mtime_option.
	* src/tar.c (options,parse_opt): New option --clamp-mtime
	(decode_options): Initialize mtime_option
Bdale Garbee's avatar
Bdale Garbee committed
508

Bdale Garbee's avatar
Bdale Garbee committed
509
510
511
512
513
514
515
	* tests/time02.at: New testcase.
	* tests/Makefile.am: Add new testcase
	* tests/testsuite.at: Likewise.

2016-03-21  Sergey Poznyakoff  <gray@gnu.org.ua>

	Acknowledgments
Bdale Garbee's avatar
Bdale Garbee committed
516

Bdale Garbee's avatar
Bdale Garbee committed
517
518
	* THANKS: Add Dagobert Michelsen

Bdale Garbee's avatar
Bdale Garbee committed
519
520
2016-03-21  Sergey Poznyakoff  <gray@gnu.org.ua>

Bdale Garbee's avatar
Bdale Garbee committed
521
	Fix the testsuite
Bdale Garbee's avatar
Bdale Garbee committed
522

Bdale Garbee's avatar
Bdale Garbee committed
523
524
525
526
527
528
	* tests/sparse06.at: Don't use timeout: depending on the
	filesystem
	mounted, current LA and lots of other factors, creation of
	archive can
	take much more time than the expected 2 seconds.

Bdale Garbee's avatar
Bdale Garbee committed
529
530
2016-03-21  Sergey Poznyakoff  <gray@gnu.org.ua>

Bdale Garbee's avatar
Bdale Garbee committed
531
	Fix ckmtime
Bdale Garbee's avatar
Bdale Garbee committed
532

Bdale Garbee's avatar
Bdale Garbee committed
533
534
535
536
537
538
	* gnulib.modules: Use timespec-sub
	* tests/ckmtime.c: Use second resolution.

2016-03-20  Sergey Poznyakoff  <gray@gnu.org>

	Fix the testsuite
Bdale Garbee's avatar
Bdale Garbee committed
539

Bdale Garbee's avatar
Bdale Garbee committed
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
	* tests/sparse05.at: Use autom4te magic to generate mapfile,
	instead of the shell command seq, which is not always available.
	* tests/listed03.at: Skip the test if xgetcwd fails.
	* tests/ckmtime.c: New file.
	* tests/Makefile.am: Build ckmtime
	* tests/testsuite.at (AT_CHECK_TIMESTAMP): Check whether newly
	created
	files have timestamps consistent with the creation time.
	Skip the test
	if not.
	* tests/incr01.at: Use AT_CHECK_TIMESTAMP
	* tests/incr02.at: Likewise.
	* tests/incr03.at: Likewise.
	* tests/incr04.at: Likewise.
	* tests/incr05.at: Likewise.
	* tests/incr06.at: Likewise.
	* tests/incr07.at: Likewise.
	* tests/incr08.at: Likewise.
	* tests/incr09.at: Likewise.
	* tests/incr10.at: Likewise.
	* tests/incr11.at: Likewise.
	* tests/incremental.at: Likewise.
	* tests/listed01.at: Likewise.
	* tests/listed02.at: Likewise.
	* tests/listed04.at: Likewise.
	* tests/listed05.at: Likewise.

2016-03-18  Sergey Poznyakoff  <gray@gnu.org.ua>

	Testsuite fixes.
Bdale Garbee's avatar
Bdale Garbee committed
570

Bdale Garbee's avatar
Bdale Garbee committed
571
572
573
574
575
576
577
578
579
580
	* paxutils: Update.
	* src/unlink.c (flush_deferred_unlinks): OpenSolaris sets EEXIST
	instead of ENOTEMPTY if trying to remove a non-empty directory.
	* tests/numeric.at: Avoid using awk -v: some older awks don't
	support
	that option.  Also fix environment variable usage.
	* tests/onetop05.at: Skip test if unable to set initial directory
	mode bits.
	* tests/sparse06.at: Use --quiet option.

Bdale Garbee's avatar
Bdale Garbee committed
581
582
2016-03-18  Sergey Poznyakoff  <gray@gnu.org.ua>

Bdale Garbee's avatar
Bdale Garbee committed
583
584
	Revise docs

Bdale Garbee's avatar
Bdale Garbee committed
585
586
2016-03-18  Sergey Poznyakoff  <gray@gnu.org.ua>

Bdale Garbee's avatar
Bdale Garbee committed
587
	Fix build with --enable-gcc-warnings
Bdale Garbee's avatar
Bdale Garbee committed
588

Bdale Garbee's avatar
Bdale Garbee committed
589
590
591
592
593
	* configure.ac: Disable stack-protector warnings

2016-03-17  Sergey Poznyakoff  <gray@gnu.org.ua>

	Improve testsuite
Bdale Garbee's avatar
Bdale Garbee committed
594

Bdale Garbee's avatar
Bdale Garbee committed
595
596
597
598
599
	* tests/iotty.at: Skip test if ttyemu can't do its job

2016-03-16  Sergey Poznyakoff  <gray@gnu.org.ua>

	Document xattrs, ACL and SELinux-related options.
Bdale Garbee's avatar
Bdale Garbee committed
600

Bdale Garbee's avatar
Bdale Garbee committed
601
602
603
604
605
606
	* doc/tar.1: Document all options.
	* doc/tar.texi: Likewise.

2016-03-15  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix appending to archive with changed blocking factor.
Bdale Garbee's avatar
Bdale Garbee committed
607

Bdale Garbee's avatar
Bdale Garbee committed
608
609
610
611
612
	* src/buffer.c (flush_archive): If previous reading attempt
	resulted
	in short read, correctly use the remaining record space.
	(backspace_output): Fix position calculation (still has to be
	improved).
Bdale Garbee's avatar
Bdale Garbee committed
613

Bdale Garbee's avatar
Bdale Garbee committed
614
615
616
617
618
619
620
	* tests/append05.at: New test case.
	* tests/Makefile.am: Add new test.
	* tests/testsuite.at: Likewise.

2016-03-14  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix coredump on parsing invalid traditional option
Bdale Garbee's avatar
Bdale Garbee committed
621

Bdale Garbee's avatar
Bdale Garbee committed
622
623
624
625
626
627
	* src/tar.c (find_argp_option): Fix loop termination condition.

2016-01-20  Sergey Poznyakoff  <gray@gnu.org.ua>

	Update copyright years

Bdale Garbee's avatar
Bdale Garbee committed
628
629
2016-01-20  Sergey Poznyakoff  <gray@gnu.org.ua>

Bdale Garbee's avatar
Bdale Garbee committed
630
	Allow escaped delimiters in transform expressions.
Bdale Garbee's avatar
Bdale Garbee committed
631

Bdale Garbee's avatar
Bdale Garbee committed
632
	Patch provided by Charles McGarvey and Flavio Poletti.
Bdale Garbee's avatar
Bdale Garbee committed
633

Bdale Garbee's avatar
Bdale Garbee committed
634
635
636
637
638
639
640
641
642
643
	* src/transform.c (parse_transform_expr): Allow escaped delimiters
	in transform expressions.
	* tests/xform02.at: New test case.
	* tests/Makefile.am: Add xform02.at
	* tests/testsuite.at: Include xform02.at
	* THANKS: Update.

2015-12-17  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix eventual dereference of uninitialized pointer.
Bdale Garbee's avatar
Bdale Garbee committed
644

Bdale Garbee's avatar
Bdale Garbee committed
645
646
647
648
649
	* src/exclist.c (hg_initfn): Initialize hgopt.

2015-12-17  Pavel Raiskup  <praiskup@redhat.com>

	sparse: fix use of indeterminate value
Bdale Garbee's avatar
Bdale Garbee committed
650

Bdale Garbee's avatar
Bdale Garbee committed
651
652
653
654
655
	* src/xheader.c (sparse_map_decoder): Move 'e' up from loop-block.

2015-12-11  Sergey Poznyakoff  <gray@gnu.org.ua>

	fix a typo
Bdale Garbee's avatar
Bdale Garbee committed
656

Bdale Garbee's avatar
Bdale Garbee committed
657
658
659
	* doc/tar.texi (Incremental Dumps): Add missing --file to the
	'--list' example.

Bdale Garbee's avatar
Bdale Garbee committed
660
661
2015-12-11  Sergey Poznyakoff  <gray@gnu.org.ua>

Bdale Garbee's avatar
Bdale Garbee committed
662
	Minor fixes.
Bdale Garbee's avatar
Bdale Garbee committed
663

Bdale Garbee's avatar
Bdale Garbee committed
664
665
666
667
668
669
670
671
672
673
	* doc/tar.texi: Document position-sensitive options in a
	separate subsection.
	* src/names.c (names_argp,names_argp_children): Explicitly
	initialize
	all members.

2015-12-11  Sergey Poznyakoff  <gray@gnu.org>

	Minor fix

Bdale Garbee's avatar
Bdale Garbee committed
674
675
2015-12-11  Sergey Poznyakoff  <gray@gnu.org>

Bdale Garbee's avatar
Bdale Garbee committed
676
	Fix handling of filename-selection options.
Bdale Garbee's avatar
Bdale Garbee committed
677

Bdale Garbee's avatar
Bdale Garbee committed
678
679
680
681
682
683
	Filename-selection options are --wildcards, --recursive, etc. (see
	names.c for a complete list).  These options are
	position-sensitive,
	i.e. each such option affects all filenames and filename-selection
	options that appear after it until eventually cancelled by a
	corresponding counterpart option.
Bdale Garbee's avatar
Bdale Garbee committed
684

Bdale Garbee's avatar
Bdale Garbee committed
685
686
687
688
689
690
	These options can appear in "file-from" file lists, which
	means that
	they cannot be handled right away, but instead should be put on
	the "name_elt" list and processed sequentionally, as file name
	arguments
	are.
Bdale Garbee's avatar
Bdale Garbee committed
691

Bdale Garbee's avatar
Bdale Garbee committed
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
	* src/common.h (warn_regex_usage): Remove.
	(name_add_name): Change signature.
	(name_add_dir, name_add_file): Remove prototypes.
	* src/names.c (name_add_option, name_add_dir)
	(name_add_file): Static functions.
	(names_options, is_file_selection_option, names_parse_opt):
	Static functions.
	(names_argp_children): New variable.
	(NELT_NAME, NELT_CHDIR)
	(NELT_FILE, NELT_NOOP): Redefine as enum nelt_type.
	(NELT_FMASK): Remove.
	(NELT_OPTION): New constant.
	(name_elt) <type>: Change type.
	<v.opt>: New member.
	(name_elt_alloc_matflags): Remove.
	(name_add_name): Take one argument.
	(name_add_option): New static function.
	(name_add_file): Take one argument.
	(read_next_name): Use filename_terminator and
	verbatim_files_from_option to initialize file.term and
	file.verbatim.
	* src/tar.c: Move handling of filename-selection options to
	names.c
Bdale Garbee's avatar
Bdale Garbee committed
715

Bdale Garbee's avatar
Bdale Garbee committed
716
717
718
719
720
721
	* tests/T-dir00.at: Fix typo.
	* tests/T-recurse.at: Remove expected failure.

2015-12-10  Pavel Raiskup  <praiskup@redhat.com>

	better test --{,no-}recursion options
Bdale Garbee's avatar
Bdale Garbee committed
722

Bdale Garbee's avatar
Bdale Garbee committed
723
724
725
726
727
728
729
730
731
	* tests/recurs02.at: Also test --list mode.
	* tests/T-recurse.at: New test case.  Test that -T option works
	correctly together with --{,no-}recursion.
	* tests/Makefile.am: Mention new test T-recurse.at.
	* tests/testsuite.at: Likewise.

2015-12-06  Pavel Raiskup  <praiskup@redhat.com>

	Bugfix
Bdale Garbee's avatar
Bdale Garbee committed
732

Bdale Garbee's avatar
Bdale Garbee committed
733
734
735
736
737
738
739
	* src/buffer.c (try_new_volume): Warn if user supplied malformed
	tar archive.
	Consistently use WARN (instead of ERROR) when reporting.

2015-12-06  Sergey Poznyakoff  <gray@gnu.org>

	Fix segfault when extracting from a multi-volume archive.
Bdale Garbee's avatar
Bdale Garbee committed
740

Bdale Garbee's avatar
Bdale Garbee committed
741
	Fix suggested by Pavel Raiskup.
Bdale Garbee's avatar
Bdale Garbee committed
742

Bdale Garbee's avatar
Bdale Garbee committed
743
744
745
746
747
	* src/buffer.c (try_new_volume): Fix dereferencing NULL pointer.
	* tests/multiv09.at: New testcase.
	* tests/Makefile.am: Add new testcase.
	* tests/testsuite.at: Likewise.

Bdale Garbee's avatar
Bdale Garbee committed
748
749
2015-12-06  Sergey Poznyakoff  <gray@gnu.org>

Bdale Garbee's avatar
Bdale Garbee committed
750
751
752
753
754
	Fix NEWS

2015-12-06  Pavel Raiskup  <praiskup@redhat.com>

	numeric-owner: print big UID/GID correctly
Bdale Garbee's avatar
Bdale Garbee committed
755

Bdale Garbee's avatar
Bdale Garbee committed
756
757
758
759
760
761
762
763
764
765
	* src/list.c (simple_print_header): Do not parse ustar header
	for UID/GID again (tar_stat_info has already been correctly
	filled with respect to possible uid/gid extended headers).
	* tests/numeric.at: New testcase for --numeric-owner option.
	* tests/Makefile.am: Add new testcase.
	* tests/testsuite.at: Likewise.

2015-12-06  Sergey Poznyakoff  <gray@gnu.org.ua>

	Use SEEK_HOLE for hole detection
Bdale Garbee's avatar
Bdale Garbee committed
766

Bdale Garbee's avatar
Bdale Garbee committed
767
	Based on patch by Pavel Raiskup.
Bdale Garbee's avatar
Bdale Garbee committed
768

Bdale Garbee's avatar
Bdale Garbee committed
769
770
	Use SEEK_HOLE/SEEK_DATA feature of lseek on systems that support
	it.  This can make archiving of sparse files much faster.
Bdale Garbee's avatar
Bdale Garbee committed
771

Bdale Garbee's avatar
Bdale Garbee committed
772
773
	Implement the --hole-detection option to allow users to select
	hole-detection method.
Bdale Garbee's avatar
Bdale Garbee committed
774

Bdale Garbee's avatar
Bdale Garbee committed
775
776
777
778
779
780
781
782
	* src/common.h (hole_detection_method): New enum.
	(hole_detection): New global.
	* src/sparse.c	(sparse_scan_file_wholesparse): New function as a
	method for detecting sparse files without any data.
	(sparse_scan_file_raw): Rename from sparse_scan_file; with edits.
	(sparse_scan_file_seek): New function.
	(sparse_scan_file): Reimplement function.
	* src/tar.c: New option --hole-detection
Bdale Garbee's avatar
Bdale Garbee committed
783

Bdale Garbee's avatar
Bdale Garbee committed
784
785
786
787
788
789
790
791
792
	* tests/checkseekhole.c: New file.
	* tests/.gitignore: Mention two test binaries.
	* tests/Makefile.am: Add new tests.
	* tests/testsuite.at (AT_SEEKHOLE_PREREQ): New macro.
	Include sparse06.at.
	* tests/sparse06.at: New test case.
	* tests/sparse02.at: Force raw hole-detection method.
	* tests/sparsemv.at: Likewise.
	* tests/sparsemvp.at: Likewise.
Bdale Garbee's avatar
Bdale Garbee committed
793

Bdale Garbee's avatar
Bdale Garbee committed
794
795
796
797
798
799
800
801
	* doc/tar.1: Document --hole-detection option.
	* doc/tar.texi: Document hole-detection algorithms and
	command-line options.
	* NEWS: Document hole-detection.

2015-12-05  Sergey Poznyakoff  <gray@gnu.org.ua>

	Catch compressor execution errors.
Bdale Garbee's avatar
Bdale Garbee committed
802

Bdale Garbee's avatar
Bdale Garbee committed
803
804
805
806
807
808
809
810
811
812
813
814
815
	* src/misc.c (write_fatal_details): Move to buffer.c
	* src/buffer.c (write_fatal_details): Close the archive and
	wait for
	the compressor program to terminate in order to catch eventual
	execution
	errors.
	* src/system.c (sys_child_open_for_compress): Ignore SIGPIPE so
	tar will
	not silently terminate when unable to write to the compressor.
	* tests/comperr.at: New file.
	* tests/Makefile.am: Add comperr.at
	* tests/testsuite.at: Include comperr.at

Bdale Garbee's avatar
Bdale Garbee committed
816
817
2015-12-05  Sergey Poznyakoff  <gray@gnu.org.ua>

Bdale Garbee's avatar
Bdale Garbee committed
818
819
820
821
822
823
	Upgrade paxutils

2015-11-29  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix extraction from concatenated incremental archives with
	renamed directories.
Bdale Garbee's avatar
Bdale Garbee committed
824

Bdale Garbee's avatar
Bdale Garbee committed
825
	Complements 15c02c2b.
Bdale Garbee's avatar
Bdale Garbee committed
826

Bdale Garbee's avatar
Bdale Garbee committed
827
828
829
830
831
	* src/extract.c (delayed_set_stat): Change type of file_name.
	(delay_set_stat): Allocate file_name member.
	(free_delayed_set_stat): Free file_name.
	(fixup_delayed_set_stat): New function.
	(rename_directory): Call fixup_delayed_set_stat on success.
Bdale Garbee's avatar
Bdale Garbee committed
832

Bdale Garbee's avatar
Bdale Garbee committed
833
834
835
836
837
838
839
840
	* tests/incr11.at: New testcase.
	* tests/incr10.at: Improve description.
	* tests/Makefile.am: Add incr11.at
	* tests/testsuite.at: Add incr11.at

2015-11-21  Sergey Poznyakoff  <gray@gnu.org>

	Fix bug in the inplementation of --one-top-level.
Bdale Garbee's avatar
Bdale Garbee committed
841

Bdale Garbee's avatar
Bdale Garbee committed
842
843
844
845
846
	When extracting an archive that contains './' with the
	--one-top-level option,
	the mode and ownership of '.' would be incorrectly applied to
	the current
	working directory, instead of the requested top-level directory.
Bdale Garbee's avatar
Bdale Garbee committed
847

Bdale Garbee's avatar
Bdale Garbee committed
848
849
850
851
852
853
854
855
856
857
858
859
860
	* src/list.c (enforce_one_top_level): Map '.' to the top-level
	directory.
	* tests/Makefile.am: Add onetop05.at
	* tests/testsuite.at: Include onetop05.at.
	* tests/onetop05.at: New file.
	* tests/onetop01.at: Fix keywords.
	* tests/onetop02.at: Likewise.
	* tests/onetop03.at: Likewise.
	* tests/onetop04.at: Likewise.

2015-11-11  Sergey Poznyakoff  <gray@gnu.org>

	Work around unlinkat bug on FreeBSD and GNU/Hurd
Bdale Garbee's avatar
Bdale Garbee committed
861

Bdale Garbee's avatar
Bdale Garbee committed
862
863
864
865
866
867
868
869
870
871
872
873
874
875
	* src/unlink.c (dunlink_insert): New function.
	(flush_deferred_unlinks): Skip cwds and nonempty directories
	at the first pass.  If force is requested, run a second pass
	removing them.
	(queue_deferred_unlink): Make sure current working directory
	entries are sorted in descending order by the value of dir_idx.
	This makes sure they will be removed in right order, which works
	around unlinkat bug on FreeBSD and GNU/Hurd.
	* tests/remfiles08b.at: Remove expected failure.
	* tests/remfiles09b.at: Likewise.

2015-11-10  Sergey Poznyakoff  <gray@gnu.org>

	Fix coredump on FreeBSD when TAR_OPTIONS is set
Bdale Garbee's avatar
Bdale Garbee committed
876

Bdale Garbee's avatar
Bdale Garbee committed
877
878
879
880
881
882
883
884
885
886
887
	* src/tar.c (parse_default_options): Use program_name instead of
	program_invocation_short_name.	On some systems the latter is
	NULL when
	the function is called, which causes coredumps.
	(tar_set_quoting_style): Likewise.
	* src/names.c: Likewise.

2015-11-02  Sergey Poznyakoff  <gray@gnu.org>

	Use sort in T-dir tests.

Bdale Garbee's avatar
Bdale Garbee committed
888
889
2015-11-02  Sergey Poznyakoff  <gray@gnu.org>

Bdale Garbee's avatar
Bdale Garbee committed
890
	Fix distclean in tests/
Bdale Garbee's avatar
Bdale Garbee committed
891

Bdale Garbee's avatar
Bdale Garbee committed
892
893
	* tests/Makefile.am: Remove "download"

Bdale Garbee's avatar
Bdale Garbee committed
894
895
2015-11-02  Sergey Poznyakoff  <gray@gnu.org>

Bdale Garbee's avatar
Bdale Garbee committed
896
	New options: --owner-map and --group-map.
Bdale Garbee's avatar
Bdale Garbee committed
897

Bdale Garbee's avatar
Bdale Garbee committed
898
899
900
	* NEWS: Update.
	* doc/tar.1: Document --owner-map and --group-map
	* doc/tar.texi: Likewise.
Bdale Garbee's avatar
Bdale Garbee committed
901

Bdale Garbee's avatar
Bdale Garbee committed
902
903
904
905
906
907
908
909
	* src/map.c: New file.
	* src/Makefile.am: Add map.c
	* src/common.h (owner_map_read, owner_map_translate)
	(group_map_read, group_map_translate): New protos.
	* src/create.c (start_header): Use owner_map_translate
	and group_map_translate to optionally translate user/group
	names/ids.
	* src/tar.c: New options --owner-map and --group-map.
Bdale Garbee's avatar
Bdale Garbee committed
910

Bdale Garbee's avatar
Bdale Garbee committed
911
912
913
914
915
916
917
	* tests/map.at: New file.
	* tests/Makefile.am: Add map.at
	* tests/testsuite.at: Include map.at.

2015-09-24  Kir Kolyshkin  <kir@openvz.org>  (tiny change)

	doc: fix font and spelling typos
Bdale Garbee's avatar
Bdale Garbee committed
918

Bdale Garbee's avatar
Bdale Garbee committed
919
920
921
922
923
	* doc/tar.1: Fix font and spelling typos in man page.

2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>

	Fix problems caught by static checking
Bdale Garbee's avatar
Bdale Garbee committed
924

Bdale Garbee's avatar
Bdale Garbee committed
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
	Most of these can be caught by configuring with
	--enable-gcc-warnings.
	Problem reported by Pavel Raiskup in:
	http://lists.gnu.org/archive/html/bug-tar/2015-09/msg00001.html
	* src/buffer.c (format_total_stats):
	Prefer pointer to const when it’s OK to use const.
	(default_total_format): Now const.
	* src/buffer.c (default_total_format):
	* src/exclist.c (excfile_head, excfile_tail, vcs_ignore_files):
	* src/misc.c (namebuf_add_dir, namebuf_finish):
	* src/tar.c (verbatim_files_from_option, option_set_in_cl)
	(optloc_eq, set_old_files_option):
	Now static.
	* src/common.h: Adjust to match the other changes described here.
	* src/exclist.c (info_cleanup_exclist):
	* src/tar.c (argp_program_version, argp_program_bug_address):
	Remove; unused.
	(parse_default_options): Define via prototype instead of old
	style.
	(parse_default_options, decode_options):
	Fill out incomplete initializers.

2015-08-31  Sergey Poznyakoff  <gray@gnu.org>

	Improve option sanity checking
Bdale Garbee's avatar
Bdale Garbee committed
950

Bdale Garbee's avatar
Bdale Garbee committed
951
952
953
954
955
	Any two conflicting options are reported only if they both
	occur in
	the command line.  Otherwise, options defined in the command line
	silently override those set in the TAR_OPTIONS environment
	variable.
Bdale Garbee's avatar
Bdale Garbee committed
956

Bdale Garbee's avatar
Bdale Garbee committed
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
	* src/common.h (option_source): New enum.
	(option_locus): New struct.
	* src/names.c (name_elt): New member: line.
	(name_add_file): Initialize line.
	(read_name_from_file): Keep track of input line number for
	diagnostic
	purposes.
	(handle_option): Take a pointer to struct name_elt as 2nd
	parameter;
	pass locus info to more_options().
	* src/tar.c (tar_args): New member: loc.
	(option_class): New enum.
	(optloc_save,optloc_lookup)
	(option_set_in_cl,optloc_eq): New functions.
	(set_use_compress_program_option): Take into account option
	location.
	(set_old_files_option): New function.
	(parse_opt): Keep track of option locations.
	(more_options): Improve error reporting.
	(parse_default_options): New function.
	(decode_options): Parse TAR_OPTION and command line separately.
	Options from the latter silently override those from the former.
Bdale Garbee's avatar
Bdale Garbee committed
979

Bdale Garbee's avatar
Bdale Garbee committed
980
981
982
983
984
985
986
	* lib/prepargs.c: Remove.
	* lib/prepargs.h: Remove.
	* lib/Makefile.am: Update.

2015-08-24  Sergey Poznyakoff  <gray@gnu.org>

	Improve check-full
Bdale Garbee's avatar
Bdale Garbee committed
987

Bdale Garbee's avatar
Bdale Garbee committed
988
989
990
991
992
	* tests/atlocal.in: Download external archives to
	$abs_builddir/download.
	(tarball_prereq): Create destination directory if necessary.
	* tests/.gitignore: Add download

Bdale Garbee's avatar
Bdale Garbee committed
993
994
2015-08-24  Sergey Poznyakoff  <gray@gnu.org>

Bdale Garbee's avatar
Bdale Garbee committed
995
	Fix check-full
Bdale Garbee's avatar
Bdale Garbee committed
996

Bdale Garbee's avatar
Bdale Garbee committed
997
998
999
	* tests/atlocal.in (TAR_DATA_URL): Berlios is dead.  Get
	test archives from gnu.org.ua

Bdale Garbee's avatar
Bdale Garbee committed
1000
1001
2015-08-24  Sergey Poznyakoff  <gray@gnu.org>

Bdale Garbee's avatar
Bdale Garbee committed
1002
	Include gnulib and paxutils as submodules.
Bdale Garbee's avatar
Bdale Garbee committed
1003

Bdale Garbee's avatar
Bdale Garbee committed
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
	* .gitmodules: New file.
	* README-alpha: Update.
	* README-hacking: Update.
	* bootstrap: Install slightly modified version from the gnulib
	repo.
	* bootstrap.conf: Add paxutils-related stuff.
	* .gitignore: Update.
	* doc/.gitignore: Update.
	* po/.gitignore: Update.
	* gnu/Makefile.am

Bdale Garbee's avatar
Bdale Garbee committed
1015
1016
2015-08-24  Sergey Poznyakoff  <gray@gnu.org>

Bdale Garbee's avatar
Bdale Garbee committed
1017
	Update docs.
Bdale Garbee's avatar
Bdale Garbee committed
1018

Bdale Garbee's avatar
Bdale Garbee committed
1019
1020
1021
1022
1023
	* doc/tar.1: Document --verbatim-files-from option.

2015-08-20  Sergey Poznyakoff  <gray@gnu.org.ua>

	Add missing VCS files to --exclude-vcs list
Bdale Garbee's avatar
Bdale Garbee committed
1024

Bdale Garbee's avatar
Bdale Garbee committed
1025
1026
1027
1028
1029
1030
	* src/tar.c (vcs_file_table): Add .gitmodules and .gitattributes
	* doc/tar.texi: Update.

2015-08-03  Sergey Poznyakoff  <gray@gnu.org.ua>

	Options to control option handling in file lists.
Bdale Garbee's avatar
Bdale Garbee committed
1031

Bdale Garbee's avatar
Bdale Garbee committed
1032
1033
	The --verbatim-files-from option disables option handling in
	file lists.  The --no-verbatim-files-from reverts its effect.
Bdale Garbee's avatar
Bdale Garbee committed
1034

Bdale Garbee's avatar
Bdale Garbee committed
1035
1036
	The --null option implies --verbatim-files-from.  This restores
	the documented behavior, broken by 26538c9b.
Bdale Garbee's avatar
Bdale Garbee committed
1037

Bdale Garbee's avatar
Bdale Garbee committed
1038
1039
1040
1041
1042
1043
1044
	* src/common.h (verbatim_files_from_option): New global.
	* src/names.c (name_elt): New member: file.verbatim
	(name_add_file): Take 'verbatim' state as its third parameter.
	(read_next_name): Don't call handle_option if file.verbatim
	is set.
	* src/tar.c: New options --verbatim-files-from and
	--no-verbatim-files-from.
Bdale Garbee's avatar
Bdale Garbee committed
1045

Bdale Garbee's avatar
Bdale Garbee committed
1046
1047
1048
1049
	* doc/tar.texi: Document --verbatim-files-from and
	--no-verbatim-files-from options.
	* NEWS: Update.
	* configure.ac: Version 1.28.90
Bdale Garbee's avatar
Bdale Garbee committed
1050

Bdale Garbee's avatar
Bdale Garbee committed
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
	* tests/T-null2.at: New testcase.
	* tests/Makefile.am: Update.
	* tests/testsuite.at: Update.

2015-07-25  Anders Jonsson  <anders.jonsson@norsjovallen.se>  (tiny
change)

	Fix typos (preceeded etc.)

2015-07-13  Paul Eggert  <eggert@cs.ucla.edu>

	tar: fix symlink race and symlink transform bug
Bdale Garbee's avatar
Bdale Garbee committed
1063

Bdale Garbee's avatar
Bdale Garbee committed
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
	Problem reported by Tobias Stoeckmann in:
	http://lists.gnu.org/archive/html/bug-tar/2015-07/msg00004.html
	* gnulib.modules: Add areadlinkat-with-size.
	* src/create.c: Include areadlink.h.
	(dump_file0): Use areadlinkat_with_size, rather than trying to do
	it by hand, incorrectly.  This also avoids assumption that
	the symlink contents fit on the stack.	Also, use the transformed
	link name, not the original link name, when deciding whether the
	name is long enough to require writing a long link.

Bdale Garbee's avatar
Bdale Garbee committed
1074
1075
2015-07-13  Paul Eggert  <eggert@cs.ucla.edu>

Bdale Garbee's avatar
Bdale Garbee committed
1076
	tar: port -d to longer symlinks
Bdale Garbee's avatar
Bdale Garbee committed
1077

Bdale Garbee's avatar
Bdale Garbee committed
1078
1079
1080
1081
1082
1083
	* src/compare.c (diff_symlink):
	Don't use alloca on symlink length; it might be too big for
	the stack.
	Don't assume that readlinkat's return value fits in 'int'.
	Prefer memcmp to strncmp where either will do.

Bdale Garbee's avatar
Bdale Garbee committed
1084
1085
2015-07-13  Paul Eggert  <eggert@cs.ucla.edu>

Bdale Garbee's avatar
Bdale Garbee committed
1086
	tar: port to recent gnulib
Bdale Garbee's avatar
Bdale Garbee committed
1087

Bdale Garbee's avatar
Bdale Garbee committed
1088
1089
	* gnulib.modules: Remove 'acl' and add 'file-has-acl'.

Bdale Garbee's avatar
Bdale Garbee committed
1090
1091
2015-07-13  Paul Eggert  <eggert@cs.ucla.edu>

Bdale Garbee's avatar
Bdale Garbee committed
1092
	tar: pacify GCC 5.1 -Wformat-signedness
Bdale Garbee's avatar
Bdale Garbee committed
1093

Bdale Garbee's avatar
Bdale Garbee committed
1094
1095
1096
1097
1098
1099
1100
1101
1102
	* lib/wordsplit.c (struct wordsplit_node.flags):
	Now unsigned, so that 'printf ("%x", p->flags)' doesn't provoke
	GCC.
	* src/incremen.c (read_num, dumpdir_ok):
	Don't printf an int with %x or %o.

2015-04-16  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix extraction from concatenated incremental archives.
Bdale Garbee's avatar
Bdale Garbee committed
1103

Bdale Garbee's avatar
Bdale Garbee committed
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
	* src/common.h (remove_delayed_set_stat): New proto.
	* src/extract.c (free_delayed_set_stat)
	(remove_delayed_set_stat): New function.
	(apply_nonancestor_delayed_set_stat): Use free_delayed_set_stat.
	* src/misc.c (safer_rmdir): Remove delayed_set_stat entry
	corresponding to the removed directory.
	* tests/incr10.at: New test case.
	* tests/Makefile.am: Add new test.
	* tests/testsuite.at: Likewise.

2015-04-10  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix make installcheck
Bdale Garbee's avatar
Bdale Garbee committed
1117

Bdale Garbee's avatar
Bdale Garbee committed
1118
1119
1120
	Make installcheck would fail unless make check had been run
	before it.
	Reported by Erik Brangs <erik.brangs@gmx.de>
Bdale Garbee's avatar
Bdale Garbee committed
1121

Bdale Garbee's avatar
Bdale Garbee committed
1122
1123
1124
1125
1126
1127
	* tests/Makefile.am (installcheck-local): Depend on
	$(check_PROGRAMS)

2015-03-18  Paul Eggert  <eggert@cs.ucla.edu>

	tar: don't assume GZIP
Bdale Garbee's avatar
Bdale Garbee committed
1128

Bdale Garbee's avatar
Bdale Garbee committed
1129
1130
1131
1132
1133
1134
	* Makefile.am (dist-hook): Port to gzip implementations that
	warn about nontrivial settings in the GZIP environment var.

2015-03-17  Paul Eggert  <eggert@cs.ucla.edu>

	tar: don't suggest GZIP
Bdale Garbee's avatar
Bdale Garbee committed
1135

Bdale Garbee's avatar
Bdale Garbee committed
1136
1137
1138
1139
1140
1141
	* doc/tar.texi (gzip): Don't suggest using the GZIP environment
	variable, as it will be deprecated in the next gzip release.

2015-02-19  Sergey Poznyakoff  <gray@gnu.org.ua>

	Improve compression format recognition
Bdale Garbee's avatar
Bdale Garbee committed
1142

Bdale Garbee's avatar
Bdale Garbee committed
1143
1144
1145
	Some comressed archives can pass the checksum test, which
	makes tar
	treat them as uncompressed archives.
Bdale Garbee's avatar
Bdale Garbee committed
1146

Bdale Garbee's avatar
Bdale Garbee committed
1147
1148
1149
1150
1151
1152
1153
	* src/buffer.c (check_compressed_archive): Test the checksum only
	if the block we read looks like a valid tar header (i.e. has
	a magic string).

2015-01-06  Paul Eggert  <eggert@cs.ucla.edu>

	tar: port xattr-at.c to Solaris 10
Bdale Garbee's avatar
Bdale Garbee committed
1154

Bdale Garbee's avatar
Bdale Garbee committed
1155
1156
1157
1158
1159
	* lib/xattr-at.c (setxattrat, lsetxattrat, getxattrat,
	lgetxattrat)
	(listxattrat, llistxattrat): Compile only if HAVE_XATTRS, so that
	the code doesn't call functions that are not declared.

Bdale Garbee's avatar
Bdale Garbee committed
1160
1161
2015-01-06  Paul Eggert  <eggert@cs.ucla.edu>

Bdale Garbee's avatar
Bdale Garbee committed
1162
	tar: port wordsplit attribute to Sun C
Bdale Garbee's avatar
Bdale Garbee committed
1163

Bdale Garbee's avatar
Bdale Garbee committed
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
	Reported by Ted Carr in:
	http://lists.gnu.org/archive/html/bug-tar/2015-01/msg00002.html
	* lib/wordsplit.h (__WORDSPLIT_ATTRIBUTE_FORMAT):
	New macro, taken from Gnulib.
	(struct wordsplit): Use it.
	* lib/wordsplit.c (_wsplt_error): Use it.

2014-12-17  Sergey Poznyakoff  <gray@gnu.org>

	Silent a cc warning
Bdale Garbee's avatar
Bdale Garbee committed
1174

Bdale Garbee's avatar
Bdale Garbee committed
1175
1176
1177
1178
1179
1180
	* src/xheader.c (xheader_string_end): Make sure pointer
	arithmetics applies on char*.

2014-12-12  Paul Eggert  <eggert@cs.ucla.edu>

	tar: port ISFOUND, WASFOUND to C89
Bdale Garbee's avatar
Bdale Garbee committed
1181

Bdale Garbee's avatar
Bdale Garbee committed
1182
1183
1184
1185
1186
1187
1188
	Problem reported by Romano Maspero in:
	http://lists.gnu.org/archive/html/bug-tar/2014-12/msg00010.html
	* src/common.h (ISFOUND, WASFOUND): Port to C89.

2014-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix tar -c -l file file
Bdale Garbee's avatar
Bdale Garbee committed
1189

Bdale Garbee's avatar
Bdale Garbee committed
1190
1191
	When the same file is added several times to the archive, count
	correctly the number of hard links.  See also 37ddfb0b.
Bdale Garbee's avatar
Bdale Garbee committed
1192

Bdale Garbee's avatar
Bdale Garbee committed
1193
1194
1195
1196
1197
1198
	* src/create.c (dump_hard_link): Don't decrease nlink if it is 0.
	* tests/link04.at: Test -cl options.

2014-11-07  Sergey Poznyakoff  <gray@gnu.org>

	Honor the pax-option overrides when creating archive.
Bdale Garbee's avatar
Bdale Garbee committed
1199

Bdale Garbee's avatar
Bdale Garbee committed
1200
	Changes proposed by Denis Excoffier.
Bdale Garbee's avatar
Bdale Garbee committed
1201

Bdale Garbee's avatar
Bdale Garbee committed
1202
1203
1204
1205
1206
1207
1208
1209
	* NEWS: Fix typos.
	* doc/tar.texi: Fix typos.  Improve recipe for creation of binary
	equivalent archives.
	* src/create.c (write_extended): Use the value of the
	--mtime option (if specified) as the default for exthdr.mtime.
	* src/xheader.c (xheader_store): Create the header if at least
	one override is supplied in --pax-option.

Bdale Garbee's avatar
Bdale Garbee committed
1210
1211
2014-11-07  Sergey Poznyakoff  <gray@gnu.org>

Bdale Garbee's avatar
Bdale Garbee committed
1212
	Add testcase for the previous commit.
Bdale Garbee's avatar
Bdale Garbee committed
1213

Bdale Garbee's avatar
Bdale Garbee committed
1214
1215
1216
1217
1218
1219
1220
	* tests/sparse05.at: New file.
	* tests/Makefile.am: Add sparse05.at
	* tests/testsuite.at: Include sparse05.at

2014-11-07  Pavel Raiskup  <praiskup@redhat.com>

	Fix bug in sparse file listing
Bdale Garbee's avatar
Bdale Garbee committed
1221

Bdale Garbee's avatar
Bdale Garbee committed
1222
1223
1224
1225
1226
1227
1228
	List posix archives containing sparse files >8GB correctly and
	do not fail.
	This fixes also bug in format of listing for sparse files >8GB -
	now the
	real size is printed instead of the effective one (this is
	not strictly
	posix format related).
Bdale Garbee's avatar
Bdale Garbee committed
1229

Bdale Garbee's avatar
Bdale Garbee committed
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
	* src/list.c: Remove redundant assignment.
	* src/tar.h: Add new 'real_size' and 'real_size_set' fields in
	  tar_stat_info struct.
	* src/xheader.c: Correctly handle (especially sparse) file sizes
	directly in
	  xheader_decode().

2014-10-15  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix a typo

2014-10-01  Sergey Poznyakoff  <gray@gnu.org>

	Fix README
Bdale Garbee's avatar
Bdale Garbee committed
1244

Bdale Garbee's avatar
Bdale Garbee committed
1245
1246
1247
1248
1249
	Remove the reference to PORTS

2014-09-25  Sergey Poznyakoff  <gray@gnu.org>

	Bugfixes.
Bdale Garbee's avatar
Bdale Garbee committed
1250

Bdale Garbee's avatar
Bdale Garbee committed
1251
1252
1253
1254
1255
1256
1257
1258
	* doc/tar.1: Fix typo in font spec.
	* src/tar.c (sort_mode_arg, sort_mode_flag): Protect "inode"
	(SAVEDIR_SORT_INODE) with D_INO_IN_DIRENT

2014-09-18  Sergey Poznyakoff  <gray@gnu.org.ua>

	Bugfix: entries read from the -T file did not get proper
	matching_flag.
Bdale Garbee's avatar
Bdale Garbee committed
1259

Bdale Garbee's avatar
Bdale Garbee committed
1260
1261
1262
1263
1264
1265
	* src/common.h (name_add_file): Change signature.
	* src/names.c (name_elt_alloc_matflags): New function.
	(name_add_name): Use name_elt_alloc_matflags.
	(name_add_file): Take matching flags as third argument.
	(read_next_name): Remove trailing slashes.
	* src/tar.c (parse_opt): Pass matching_flags to name_add_file.
Bdale Garbee's avatar
Bdale Garbee committed
1266

Bdale Garbee's avatar
Bdale Garbee committed
1267
1268
1269
1270
1271
1272
1273
1274
	* tests/T-dir00.at: New file.
	* tests/T-dir01.at: New file.
	* tests/Makefile.am: Add new testcases.
	* tests/testsuite.at: Likewise.

2014-08-16  Sergey Poznyakoff  <gray@gnu.org>

	Improve documentation.
Bdale Garbee's avatar
Bdale Garbee committed
1275

Bdale Garbee's avatar
Bdale Garbee committed
1276
1277
1278
	* doc/tar.1: Document --skip-old-files and --warning=existing-file
	* doc/tar.texi: Document --warning=existing-file

Bdale Garbee's avatar
Bdale Garbee committed
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
2014-07-27  Sergey Poznyakoff  <gray@gnu.org>

	Version 1.28

2014-07-27  Nathan Stratton Treadway  <nathanst@ontko.com>

	Minor change in docstrings. nor ch#

	Restructure the remfiles testsuite.

2014-07-22  Sergey Poznyakoff  <gray@gnu.org>

	Don't build ttyemu and run tty I/O test if grantpt is not
	available.
Bdale Garbee's avatar
Bdale Garbee committed
1293

Bdale Garbee's avatar
Bdale Garbee committed
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
	* configure.ac (TAR_COND_GRANTPT): Define conditional depending
	on whether grantpt is available.
	* gnulib.modules: Remove grantpt. It relies upon a helper binary
	pt_chown which it installs and which is useless in the testsuite.
	* tests/Makefile.am [TAR_COND_GRANTPT]: Build ttyemu
	* tests/iotty.at: Skip test if ttyemu is not build.
	* tests/ttyemu.c (noecho): Fix error message
	(main): Use TIOCSCTTY if it is defined.

2014-07-22  Benno Schulenberg  <bensberg@justemail.net>

	Fix a typo and some wordings in the documentation.
Bdale Garbee's avatar
Bdale Garbee committed
1306

Bdale Garbee's avatar
Bdale Garbee committed
1307
1308
1309
1310
1311
1312
	* doc/tar.texi: Fix some missing articles, and make it clearer
	that "any" does not mean "anything" but "either of the two".

2014-07-22  Nathan Stratton Treadway  <nathanst@ontko.com>

	Fix the testsuite
Bdale Garbee's avatar
Bdale Garbee committed
1313

Bdale Garbee's avatar
Bdale Garbee committed
1314
1315
1316
1317
1318
	* tests/incr07.at: Don't assume case-sensitive filesystem.

2014-07-11  Paul Eggert  <eggert@cs.ucla.edu>

	tar: minor fixups related to recent checkpoint.c change
Bdale Garbee's avatar
Bdale Garbee committed
1319

Bdale Garbee's avatar
Bdale Garbee committed
1320
1321
1322
1323
1324
1325
1326
1327
	* src/checkpoint.c (getwidth, format_checkpoint_string):
	Use long and strtol, not int, to avoid overflow issues.
	(getwidth): Don't assume termios.h defines TIOCGWINSZ,
	as it doesn't on some older hosts.

2014-07-11  Sergey Poznyakoff  <gray@gnu.org>

	Bugfixes
Bdale Garbee's avatar
Bdale Garbee committed
1328

Bdale Garbee's avatar
Bdale Garbee committed
1329
1330
1331
1332
1333
1334
	* gnulib.modules: Add faccessat
	* src/checkpoint.c: Include termios.h

2014-06-29  Nathan Stratton Treadway  <nathanst@ontko.com>

	tar: document xgetcwd test case better
Bdale Garbee's avatar
Bdale Garbee committed
1335

Bdale Garbee's avatar
Bdale Garbee committed
1336
1337
1338
1339
1340
1341
1342
	* src/misc.c (normalize_filename): Add commentary for clarity.
	* tests/extrac09.at: Retitle test case and add comments for
	clarity.

2014-06-24  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix typos in ChangeLog
Bdale Garbee's avatar
Bdale Garbee committed
1343

Bdale Garbee's avatar
Bdale Garbee committed
1344
1345
1346
1347
1348
1349
1350
	* ChangeLog.CVS: Fix typos.
	* ChangeLog.amend: New file.
	* Makefile.am: Define changelog_amend_file.

2014-04-30  Paul Eggert  <eggert@cs.ucla.edu>

	tar: do not dereference NULL pointer with '--remove-files .'
Bdale Garbee's avatar
Bdale Garbee committed
1351

Bdale Garbee's avatar
Bdale Garbee committed
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
	Problem reported by Thorsten Hirsch in:
	http://lists.gnu.org/archive/html/bug-tar/2014-04/msg00011.html
	* src/unlink.c (flush_deferred_unlinks):
	Do not attempt to find the parent of "." when "." is
	at the top level.
	* tests/remfiles10.at: New file.
	* tests/Makefile.am (TESTSUITE_AT):
	* tests/testsuite.at: Add it.

2014-03-27  Sergey Poznyakoff  <gray@gnu.org>

	Refuse to write archive contents to a tty.
Bdale Garbee's avatar
Bdale Garbee committed
1364

Bdale Garbee's avatar
Bdale Garbee committed
1365
1366
1367
1368
1369
1370
1371
	* NEWS: Update.
	* src/buffer.c (_open_archive): Refuse to write to a tty.
	* tests/iotty.at: Test output to a tty.

2014-03-26  Vitezslav Cizek  <vcizek@suse.cz>

	fix an eternal loop in handle_option
Bdale Garbee's avatar
Bdale Garbee committed
1372

Bdale Garbee's avatar
Bdale Garbee committed
1373
1374
1375
1376
1377
	* src/names.c (handle_option): increment loop counter

2014-03-20  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fail if archive comes from a terminal.
Bdale Garbee's avatar
Bdale Garbee committed
1378

Bdale Garbee's avatar
Bdale Garbee committed
1379
	Based on patch from Pavel Raiskup <praiskup@redhat.com>.
Bdale Garbee's avatar
Bdale Garbee committed
1380

Bdale Garbee's avatar
Bdale Garbee committed
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
	* gnulib.modules: Add new modules.
	* src/buffer.c (_open_archive): Refuse to read archive from a tty.
	* tests/Makefile.am (TESTSUITE_AT): Add iotty.at
	(check_PROGRAMS): New program ttyemu
	* tests/testsuite.at: Include iotty.at
	* tests/iotty.at: New file.
	* tests/ttyemu.c: New file.

2014-03-13  Paul Eggert  <eggert@cs.ucla.edu>

	tar: port to Solaris 9
Bdale Garbee's avatar
Bdale Garbee committed
1392

Bdale Garbee's avatar
Bdale Garbee committed
1393
1394
1395
1396
1397
1398
1399
	Problem reported by Jesse C in:
	http://lists.gnu.org/archive/html/bug-tar/2014-03/msg00034.html
	* gnulib.modules: Add strtoimax and strtoumax, since tar invokes
	these functions directly and they don't exist on Solaris 9.

2014-02-25  Sergey Poznyakoff  <gray@gnu.org.ua>

Bdale Garbee's avatar
Bdale Garbee committed
1400
	Test the --[no-]recursive options (see commit 2bd9c153).
Bdale Garbee's avatar
Bdale Garbee committed
1401

Bdale Garbee's avatar
Bdale Garbee committed
1402
1403
1404
1405
1406
1407
1408
	* tests/recurs02.at: New test case.
	* tests/Makefile.am: Add new file.
	* tests/testsuite.at: Add new file.

2014-02-22  Sergey Poznyakoff  <gray@gnu.org.ua>

	Support exclusion patterns from various VCS ignore lists.
Bdale Garbee's avatar
Bdale Garbee committed
1409

Bdale Garbee's avatar
Bdale Garbee committed
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
	* src/Makefile.am (tar_SOURCES): Add exclist.c
	* src/common.h (EXCL_DEFAULT, EXCL_RECURSIVE)
	(EXCL_NON_RECURSIVE): New flags.
	(excfile_add, info_attach_exclist)
	(info_cleanup_exclist,info_free_exclist)
	(exclude_vcs_ignores): New prototypes.
	* src/create.c (dump_dir0): Call info_attach_exclist.
	* src/exclist.c: New file.
	* src/incremen.c (scan_directory): Call info_attach_exclist.
	* src/names.c (excluded_name): Moved to exclist.c. Change
	signature.
	All uses updated.
	* src/tar.c: New options: --exclude-ignore,
	--exclude-ignore-recursive
	and --exclude-vcs-ignores.
	(tar_stat_destroy): Free exclist.
	* src/tar.h (tar_stat_info): New member exclude_list.
Bdale Garbee's avatar
Bdale Garbee committed
1427

Bdale Garbee's avatar
Bdale Garbee committed
1428
1429
1430
1431
1432
1433
1434
	* NEWS: Document new exclusion options.
	* doc/tar.texi: Likewise.
	* doc/tar.1: Likewise.

2014-02-14  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix in testsuite
Bdale Garbee's avatar
Bdale Garbee committed
1435

Bdale Garbee's avatar
Bdale Garbee committed
1436
1437
1438
1439
1440
	* acls03.at: Fix improper invocation of setfacl.

2014-02-14  Pavel Raiskup  <praiskup@redhat.com>

	testsuite: add test for buggy default ACLs
Bdale Garbee's avatar
Bdale Garbee committed
1441

Bdale Garbee's avatar
Bdale Garbee committed
1442
1443
1444
1445
	* tests/Makefile.am: Mention acls03.at.
	* tests/testsuite.at: Likewise.
	* tests/acls03.at: New testcase.

Bdale Garbee's avatar
Bdale Garbee committed
1446
1447
2014-02-14  Pavel Raiskup  <praiskup@redhat.com>

Bdale Garbee's avatar
Bdale Garbee committed
1448
	acls: bugfix for default ACLs extraction
Bdale Garbee's avatar
Bdale Garbee committed
1449

Bdale Garbee's avatar
Bdale Garbee committed
1450
1451
1452
1453
	When --acls option is on (regardless of tarball contents or
	tarball format), we should explicitly set OR delete default ACLs
	for extracted directories.  Prior to this update, we always
	created arbitrary default ACLs based standard file permissions.
Bdale Garbee's avatar
Bdale Garbee committed
1454

Bdale Garbee's avatar
Bdale Garbee committed
1455
1456
1457
1458
1459
	* configure.ac (with_posix_acls): Check also for acl_free and
	acl_delete_def_file to mark IEEE 1003.1e ACLs as supported.
	* src/xattrs.c (acl_delete_def_file_at): New function.
	(xattrs__acls_set): Do not treat acls_option at all;  Delete
	default ACLs if appropriate.
Bdale Garbee's avatar
Bdale Garbee committed
1460

Bdale Garbee's avatar
Bdale Garbee committed
1461
1462
1463
1464
	References:
	http://www.mail-archive.com/bug-tar@gnu.org/msg04355.html
	Thanks: Juan J. Martínez and Mark Steinborn

Bdale Garbee's avatar
Bdale Garbee committed
1465
1466
2014-02-14  Pavel Raiskup  <praiskup@redhat.com>

Bdale Garbee's avatar
Bdale Garbee committed
1467
	tar: imply --xattrs when --xattrs-{inc,exc}lude used
Bdale Garbee's avatar
Bdale Garbee committed
1468

Bdale Garbee's avatar
Bdale Garbee committed
1469
1470
	Options --xattrs-include=MASK and --xattrs-exclude=MASK now turn
	on the --xattrs option.
Bdale Garbee's avatar
Bdale Garbee committed
1471

Bdale Garbee's avatar
Bdale Garbee committed
1472
1473
	Fix also bug in printing in xattrs.c - don't print when option is
	negative.
Bdale Garbee's avatar
Bdale Garbee committed
1474

Bdale Garbee's avatar
Bdale Garbee committed
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
	* src/tar.c (set_xattr_option): New static function.
	(parse_opt): Call new function when --xatrrs, --xattrs-include or
	--xattrs-exclude option is used.
	* src/xattrs.c (xattrs_print, xattrs_print_char): Expect positive
	values in options.

2014-02-14  Sergey Poznyakoff  <gray@gnu.org.ua>

	THANKS: Add Anthony G. Basile.

Bdale Garbee's avatar
Bdale Garbee committed
1485
1486
2014-02-14  Sergey Poznyakoff  <gray@gnu.org.ua>

Bdale Garbee's avatar
Bdale Garbee committed
1487
	Use correct headers/libraries when providing xattr support
Bdale Garbee's avatar
Bdale Garbee committed
1488

Bdale Garbee's avatar
Bdale Garbee committed
1489
1490
	See https://savannah.gnu.org/patch/index.php?8252. Patch provided
	by Anthony G. Basile.
Bdale Garbee's avatar
Bdale Garbee committed
1491

Bdale Garbee's avatar
Bdale Garbee committed
1492
1493
1494
1495
1496
1497
1498
	* acinclude.m4 (TAR_HEADERS_ATTR_XATTR_H): Look for <sys/xattr.h>
	first and then for <attr/xattr.h>.  Link against libattr.so if
	needed.
	* lib/xattr-at.h: Include sys/xattr.h or attr/xattr.h, depending
	on which one is detected.
	* src/Makefile.am [TAR_LIB_ATTR] (tar_LDADD): Link against -lattr.

Bdale Garbee's avatar
Bdale Garbee committed
1499
1500
2014-02-14  Sergey Poznyakoff  <gray@gnu.org.ua>

Bdale Garbee's avatar
Bdale Garbee committed
1501
	Minor change
Bdale Garbee's avatar
Bdale Garbee committed
1502

Bdale Garbee's avatar
Bdale Garbee committed
1503
1504
1505
1506
1507
1508
	* src/tar.c (decode_options): Silently ignore --one-top-level
	if used with a non-reading command.

2014-02-14  Sergey Poznyakoff  <gray@gnu.org>

	New option --sort=ORDER
Bdale Garbee's avatar
Bdale Garbee committed
1509

Bdale Garbee's avatar
Bdale Garbee committed
1510
	This option makes tar sort the entries of directories that will be
Bdale Garbee's avatar
Bdale Garbee committed
1511
	added to an archive according to ORDER (none, name, or inode).
Bdale Garbee's avatar
Bdale Garbee committed
1512

Bdale Garbee's avatar
Bdale Garbee committed
1513
1514
	Based on proposition by Dick Streefland
	(https://savannah.gnu.org/patch/?7892).
Bdale Garbee's avatar
Bdale Garbee committed
1515

Bdale Garbee's avatar
Bdale Garbee committed
1516
1517
1518
1519
	* src/common.h (savedir_sort_order): New global.
	* src/create.c: Pass savedir_sort_order to streamsavedir.
	* src/misc.c: Likewise.
	* src/tar.c: New option --sort.
Bdale Garbee's avatar
Bdale Garbee committed
1520

Bdale Garbee's avatar
Bdale Garbee committed
1521
1522
1523
1524
1525
1526
1527
	* NEWS: Update.
	* doc/tar.texi: Document the --sort option.
	* doc/tar.1: Likewise.

2014-02-13  Sergey Poznyakoff  <gray@gnu.org>

	Fix the testsuite
Bdale Garbee's avatar
Bdale Garbee committed
1528

Bdale Garbee's avatar
Bdale Garbee committed
1529
1530
1531
1532
1533
1534
	* tests/opcomp01.at: Update expected error messages.
	* tests/opcomp03.at: Likewise.

2014-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix --one-top-level used together with --list.
Bdale Garbee's avatar
Bdale Garbee committed
1535

Bdale Garbee's avatar
Bdale Garbee committed
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
	* src/extract.c: Move one_top_level stuff to tar.c
	(decode_options).
	* src/tar.c (option_conflict_error): New function.
	(decode_options): Use option_conflict_error to complain about
	conflicting options in a uniform manner.
	Process one_top_level options here.
	(request_stdin): Fix error message.
	* tests/onetop04.at: New testcase: check --one-top-level with
	--list.
	* tests/Makefile.am: Add new testcase.
	* tests/testsuite.at: Add new testcase.

Bdale Garbee's avatar
Bdale Garbee committed
1548
1549
2014-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>

Bdale Garbee's avatar
Bdale Garbee committed
1550
	Fix NEWS
Bdale Garbee's avatar
Bdale Garbee committed
1551

Bdale Garbee's avatar
Bdale Garbee committed
1552
1553
1554
1555
1556
1557
	* NEWS: Remove duplicate description of the --one-top-level
	option.

2014-02-12  Sergey Poznyakoff  <gray@gnu.org.ua>

	configure.ac: look for host-prefixed ar
Bdale Garbee's avatar
Bdale Garbee committed
1558

Bdale Garbee's avatar
Bdale Garbee committed
1559
1560
1561
1562
1563
	See https://savannah.gnu.org/patch/?8183

2014-02-10  Sergey Poznyakoff  <gray@gnu.org>

	Bugfix
Bdale Garbee's avatar
Bdale Garbee committed
1564

Bdale Garbee's avatar
Bdale Garbee committed
1565
1566
1567
1568
1569
1570
	* src/suffix.c (find_compression_suffix): Fix eventual coredump.

2014-02-10  Sergey Poznyakoff  <gray@gnu.org.ua>

	Fix docs.

Bdale Garbee's avatar
Bdale Garbee committed
1571
1572
2014-02-10  Sergey Poznyakoff  <gray@gnu.org.ua>

Bdale Garbee's avatar
Bdale Garbee committed
1573
	Update docs.
Bdale Garbee's avatar
Bdale Garbee committed
1574

Bdale Garbee's avatar
Bdale Garbee committed
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
	* NEWS: Document --one-top-level
	* THANKS: Mention Connor Behan

2014-01-30  Sergey Poznyakoff  <gray@gnu.org.ua>

	Update copyright years.

2014-01-28  Sergey Poznyakoff  <gray@gnu.org.ua>

	Improve one-top-level functionality
Bdale Garbee's avatar
Bdale Garbee committed
1585

Bdale Garbee's avatar
Bdale Garbee committed
1586
1587
	Make sure the changes become visible with
	--show-transformed-names.
Bdale Garbee's avatar
Bdale Garbee committed
1588

Bdale Garbee's avatar
Bdale Garbee committed
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
	* src/common.h (strip_compression_suffix): New function.
	(one_top_level): Rename to one_top_level_dir. All uses changed.
	* src/extract.c (extr_init): Use strip_compression_suffix.
	Bail out if unable to determine top-level directory.
	(maybe_prepend_name): Remove. All uses removed.
	* src/tar.c (options): --one-top-level takes optional argument.
	(parse_opt): Handle it.
	* src/list.c (enforce_one_top_level): New function.
	(transform_stat_info): Call enforce_one_top_level if required.
	* src/suffix.c (compression_suffixes): List "tar" (no
	compression);
	terminate with NULL entry.
	(find_compression_suffix): New static.
	(strip_compression_suffix): New function.
Bdale Garbee's avatar
Bdale Garbee committed
1603

Bdale Garbee's avatar
Bdale Garbee committed
1604
1605
	* doc/tar.1: Update.
	* doc/tar.texi: Update.
Bdale Garbee's avatar
Bdale Garbee committed
1606

Bdale Garbee's avatar
Bdale Garbee committed
1607
1608
1609
1610
1611
1612
1613
1614
1615
	* tests/onetop01.at: New testcase.
	* tests/onetop02.at: New testcase.
	* tests/onetop03.at: New testcase.
	* tests/Makefile.am: Add new testcases.
	* tests/testsuite.at: Likewise.

2014-01-27  Connor Behan  <connor.behan@gmail.com>

	Detect tarbombs while extracting
Bdale Garbee's avatar
Bdale Garbee committed
1616

Bdale Garbee's avatar
Bdale Garbee committed
1617
1618
1619
1620
1621
1622
1623
1624
	* src/common.h (one_top_level_option): New global.
	(one_top_level): New global.
	* src/extract.c (extr_init): If one_top_level_option is set,
	determine
	the name one_top_level that might have to be prepended.
	(extract_archive): If one_top_level_option is set, prepend
	one_top_level
	to all names that don't already start with it.
Bdale Garbee's avatar
Bdale Garbee committed
1625
	* src/tar.c (ONE_TOP_LEVEL_OPTION): New content.
Bdale Garbee's avatar
Bdale Garbee committed
1626
1627
1628
1629
1630
1631
1632
	(options): New option --one-top-level.
	(parse_opt): Handle this option.
	(decode_options): Make it conflict with --absolute-names.

2014-01-27  Sergey Poznyakoff  <gray@gnu.org.ua>

	Don't install rmt.8 if rmt is not built.
Bdale Garbee's avatar
Bdale Garbee committed
1633

Bdale Garbee's avatar
Bdale Garbee committed
1634
1635
1636
	* doc/Makefile.am [PU_RMT_COND]: Define RMT_8
	(dist_man_MANS): use RMT_8 instead of the hardcoded rmt.8

Bdale Garbee's avatar
Bdale Garbee committed
1637
1638
2014-01-27  Sergey Poznyakoff  <gray@gnu.org.ua>

Bdale Garbee's avatar
Bdale Garbee committed
1639
	Provide tar(1) and rmt(8) manpages.
Bdale Garbee's avatar
Bdale Garbee committed
1640

Bdale Garbee's avatar
Bdale Garbee committed
1641
1642
1643
	* NEWS: Update.
	* doc/Makefile.am: Add manpages.
	* doc/tar.1: New file.
Bdale Garbee's avatar
Bdale Garbee committed
1644

Bdale Garbee's avatar
Bdale Garbee committed
1645
1646
1647
1648
1649
	* src/tar.c (tar_help_filter): Handle LZOP_OPTION.

2014-01-23  Sergey Poznyakoff  <gray@gnu.org.ua>

	Make sure transformed file names retain trailing slash in listing.
Bdale Garbee's avatar
Bdale Garbee committed
1650

Bdale Garbee's avatar
Bdale Garbee committed
1651
1652
1653
1654
1655
1656
1657
	* src/list.c (simple_print_header): Print trailing slash
	if using the transformed name.
	Use had_trailing_slash instead of analyzing last byte if temp_name

2014-01-22  Sergey Poznyakoff  <gray@gnu.org.ua>

	checkpoint actions: further improvements.
Bdale Garbee's avatar
Bdale Garbee committed
1658

Bdale Garbee's avatar
Bdale Garbee committed
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
	* NEWS: Update.
	* doc/tar.texi: Update.
	* src/buffer.c (print_stats): Avoid use of additional string
	buffer.
	Allow for text to be NULL.
	Call gettext if it is not.
	(format_total_stats): Don't use gettext when calling print_stats.
	* src/checkpoint.c (def_format): Change default format.
	(format_checkpoint_string): Implement optional arguments for
	T conversion.
	(finish_checkpoint_actions): Rename to checkpoint_flush_actions,
	make extern.  All uses changed.
	* src/common.h (checkpoint_flush_actions): New proto.
	* src/tar.c (main): Set error_hook

2014-01-22  Sergey Poznyakoff  <gray@gnu.org>

	Improve checkpoint interface.
Bdale Garbee's avatar
Bdale Garbee committed
1677

Bdale Garbee's avatar
Bdale Garbee committed
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
	* src/buffer.c (format_total_stats): The format arg is const
	All uses updated.
	(default_total_format): const
	* src/checkpoint.c (tty, tty_cleanup): New static.
	(format_checkpoint_string): New "canned" format %c
	(checkpoint_finish): New function.
	* src/common.h (checkpoint_finish): New proto.
	* src/tar.c (main): Call checkpoint_finish.`

2014-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>

	Implement statistics display in checkpoint actions.
Bdale Garbee's avatar
Bdale Garbee committed
1690

Bdale Garbee's avatar
Bdale Garbee committed
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
	* NEWS: Update.
	* configure.ac: Version 1.27.90
	* gnulib.modules: Add fprintftime.
	* doc/tar.texi: Document the "totals" action and new format
	specifiers
	for echo and ttyout checkpoint actions.
	* src/buffer.c (compute_duration): Return computed value.
	(print_stats): Don't print trailing newline.  Return number of
	characters output.
	(format_total_stats): New function.
	(print_total_stats): Rewrite via format_total_stats.
	* src/checkpoint.c (checkpoint_opcode) <cop_totals>: New opcode.
	(checkpoint_compile_action): Handle cop_totals.
	(expand_checkpoint_string): Remove.
	(format_checkpoint_string): New function to be used instead of
	expand_checkpoint_string.  All callers updated.
	* src/common.h (TF_READ,TF_WRITE)
	(TF_DELETED): New constants.
	(format_total_stats,print_total_stats): New protos.

2014-01-10  Sergey Poznyakoff  <gray@gnu.org.ua>

	Remove shar archives from distribution.
Bdale Garbee's avatar
Bdale Garbee committed
1714

Bdale Garbee's avatar
Bdale Garbee committed
1715
1716
1717
1718
1719
	These are going to phase out in automake 2.0

2014-01-10  Sergey Poznyakoff  <gray@gnu.org>

	Fix the use of --no-recursion and --recursion options.
Bdale Garbee's avatar
Bdale Garbee committed
1720

Bdale Garbee's avatar
Bdale Garbee committed
1721
	Each option remains in effect until cancelled by the next
Bdale Garbee's avatar
Bdale Garbee committed
1722
	occurrence
Bdale Garbee's avatar
Bdale Garbee committed
1723
	of its counterpart, as stated in the documentation.
Bdale Garbee's avatar
Bdale Garbee committed
1724

Bdale Garbee's avatar
Bdale Garbee committed
1725
1726
1727
1728
1729
1730
	* src/names.c (name_next_elt): Restore recursion_option from the
	value of matching_flags.

2014-01-09  Sergey Poznyakoff  <gray@gnu.org.ua>

	Minor bugfixes
Bdale Garbee's avatar
Bdale Garbee committed
1731

Bdale Garbee's avatar
Bdale Garbee committed
1732
1733
1734
1735
1736
1737
1738
	* src/compare.c (diff_dumpdir): Close descriptor if fstat failed.
	(diff_multivol): Make sure the descriptor is closed and eventual
	errors reported if lseek fails.
	Both reported by Jiri Kukacka.

2014-01-07  Paul Eggert  <eggert@cs.ucla.edu>

Bdale Garbee's avatar
Bdale Garbee committed
1739
	tar: work around IBM XL C bug
Bdale Garbee's avatar
Bdale Garbee committed
1740

Bdale Garbee's avatar
Bdale Garbee committed
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
	* src/incremen.c (show_snapshot_field_ranges)
	(write_directory_file_entry): Use simpler array size expression,
	one that evaluates to the same value.  This works around
	a compiler
	bug with IBM XL C.  Problem reported by Yannick Bergeron in
	<http://lists.gnu.org/archive/html/bug-tar/2014-01/msg00009.html>.

2014-01-03  Paul Eggert  <eggert@cs.ucla.edu>

	tar: update ancient configure cruft
Bdale Garbee's avatar
Bdale Garbee committed
1751

Bdale Garbee's avatar
Bdale Garbee committed
1752