Спустя год с момента прошлого выпуска вышел (http://lists.gnu.org/archive/html/bug-tar/2010-03/msg00014.html) релиз архиватора GNU Tar 1.23. Из интересных новшеств можно отметить:- При выполнении операций, требующих только чтения (--list или --extract), для увеличения скорости обработки файла теперь используется операция lseek;
- Поддержка автоопределения размера записей при просмотре содержимого или распаковке архива, полученного не только через прямое чтение с устройства, но и при работе с файлом или pipe.
- Для включения или отключения вывода отдельного вида предупреждений во время работы tar добавлена опция "--warning" (пример использования: "--warning=no-alone-zero-block");
- Для установки уровня инкрементального дампа добавлена новая опция "--level";
- Изменено поведение при удалении файла или директории во время выполнения инкрементального дампа, если удаленный файл/директория явно фигурируют в командной строке при запуске tar, то выводится фатальная оши...
URL: http://lists.gnu.org/archive/html/bug-tar/2010-03/msg00014.html
Новость: http://www.opennet.me/opennews/art.shtml?num=25755
> * При выполнении операций, требующих только чтения (--list или --extract), для увеличения скорости обработки файла теперь используется операция lseek;0__o
а какже теперь мои ленточные накопители? o__0
иcпользуйте bsd-tar
Та-дам-м-м-м...В функции ‘strcpy’, включённом из ‘write_gnu_long_link’ в create.c:578:10:
предупреждение: call to __builtin___strcpy_chk will always overflow destination buffer
В функции ‘strcpy’, включённом из ‘start_header’ в create.c:915:14:
предупреждение: call to __builtin___strcpy_chk will always overflow destination buffer
--- a/create.c 2010-03-09 15:52:41.000000000 +0300
+++ b/create.c 2010-03-11 20:32:32.679100518 +0300
@@ -575,7 +576,8 @@
GNAME_TO_CHARS (tmpname, header->header.gname);
free (tmpname);- strcpy (header->header.magic, OLDGNU_MAGIC);
+ memcpy(header->header.magic, OLDGNU_MAGIC, 8);
header->header.typeflag = type;
finish_header (st, header, -1);@@ -912,7 +914,7 @@
case OLDGNU_FORMAT:
case GNU_FORMAT: /*FIXME?*/
/* Overwrite header->header.magic and header.version in one blow. */
- strcpy (header->header.magic, OLDGNU_MAGIC);
+ memcpy (header->header.magic, OLDGNU_MAGIC, 8);
break;// src/tar.h:#define OLDGNU_MAGIC "ustar " /* 7 chars and a null */