Re: Bug in dar version 2.7.8 (?)

Andrea Vai <[email protected]> Tue, 5 Sep 2023 17:51:50 +0200
Newsgroups gmane.comp.sysutils.backup.dar.support
Message-ID <CAOsYWL0pfnSZ_kLa4wJWAdM7A5+cTG6EnFDjRj=nU6YycVhTVA@mail.gmail.com>
Hi,
Il giorno mar, 05/09/2023 alle 12.27 +0200, Andrea Vai ha scritto:

> I am now compiling dar with your patch, and will let you know.


I have uninstalled dar using dnf, downloaded dar source, patched, compiled
it and it seems I get the same error:

---- exception type = [BUG] ----------

[source]

	File slice_layout.cpp line 48 : it seems to be a bug here

	stack dump : /usr/local/lib/libdar64.so.6000(_ZN6libdar4EbugC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEi+0x132)
[0x7fde4bd35d32]

	stack dump : /usr/local/lib/libdar64.so.6000(+0xce0e5) [0x7fde4bcce0e5]

	stack dump : /usr/local/lib/libdar64.so.6000(_ZN6libdar14header_version4readERNS_12generic_fileERNS_16user_interactionEb+0x264)
[0x7fde4bd73cf4]

	stack dump : /usr/local/lib/libdar64.so.6000(_ZN6libdar24macro_tools_open_archiveERKSt10shared_ptrINS_16user_interactionEERKS0_INS_8entrepotEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_8limitintImEESG_NS_11crypto_algoERKNS_11secu_stringEjRNS_4pileERNS_14header_versionESG_SG_SG_RSI_bbbbRNS9_4listINS_8signatorESaISV_EEERNS_12slice_layoutEmmb+0x392)
[0x7fde4bd9a5f2]

	stack dump : /usr/local/lib/libdar64.so.6000(_ZN6libdar7archive9i_archiveC1ERKSt10shared_ptrINS_16user_interactionEERKNS_4pathERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESH_RKNS_20archive_options_readE+0x454)
[0x7fde4bd78b84]

	stack dump : /usr/local/lib/libdar64.so.6000(_ZN6libdar7archiveC2ERKSt10shared_ptrINS_16user_interactionEERKNS_4pathERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESG_RKNS_20archive_options_readE+0xd0)
[0x7fde4bce87a0]

	stack dump : /usr/local/bin/dar() [0x4410c3]

	stack dump : /usr/local/bin/dar() [0x449bb0]

	stack dump : /usr/local/bin/dar() [0x41f2ae]

	stack dump : /lib64/libc.so.6(+0x27510) [0x7fde4b56a510]

	stack dump : /lib64/libc.so.6(__libc_start_main+0x89) [0x7fde4b56a5c9]

	stack dump : /usr/local/bin/dar() [0x41f415]

[most outside call]

-----------------------------------


 dar version 2.7.12, Copyright (C) 2002-2023 Denis Corbin

   Long options support         : YES


 Using libdar 6.7.0 built with compilation time options:

   gzip compression (libz)      : YES

   bzip2 compression (libbzip2) : YES

   lzo compression (liblzo2)    : NO

   xz compression (liblzma)     : YES

   zstd compression (libzstd)   : YES

   lz4 compression (liblz4)     : NO

   Strong encryption (libgcrypt): NO

   Public key ciphers (gpgme)   : NO

   Extended Attributes support  : YES

   Large files support (> 2GB)  : YES

   ext2fs NODUMP flag support   : NO

   Integer size used            : 64 bits

   Thread safe support          : YES

   Furtive read mode support    : YES

   Linux ext2/3/4 FSA support   : NO

   Mac OS X HFS+ FSA support    : NO

   Linux statx() support        : YES

   Detected system/CPU endian   : little

   Posix fadvise support        : YES

   Large dir. speed optimi.     : YES

   Timestamp read accuracy      : 1 nanosecond

   Timestamp write accuracy     : 1 nanosecond

   Restores dates of symlinks   : YES

   Multiple threads (libthreads): NO

   Delta compression (librsync) : NO

   Remote repository (libcurl)  : NO

   argon2 hashing (libargon2)   : YES


 compiled the Sep  5 2023 with GNUC version 12.3.1 20230508 (Red Hat 12.3.1-1)

 dar is part of the Disk ARchive suite (Release 2.7.12)

 dar comes with ABSOLUTELY NO WARRANTY; for details

 type `dar -W'. This is free software, and you are welcome

 to redistribute it under certain conditions; type `dar -L | more'

 for details.


-------------------------------------------------

$ grep -C3 OLDER_THAN_V8 src/libdar/slice_layout.cpp
{
switch(tmp)
{
case OLDER_THAN_V8:
older_sar_than_v8 = true;
break;
case V8:
--
char tmp = V8;
if(older_sar_than_v8)
{
tmp = OLDER_THAN_V8;
}
first_size.dump(f);
other_size.dump(f);
----------------------------------------------------

(So it seems correctly patched)

I can wait for the definitive solution or use another workaround, but
it may be good to understand why this happens.


Thank you,

Andrea