Accepting request 889534 from Base:System

- Update to dd_rescue-1.99.11:
  * Drop (backported) checksum_file-clear-errno.diff.
  * Minor scheduling improvements for x86_64 and ARM asm.
  * Work around compiler weirdness, passing two in/out parameters
    in the same register (when they are provably the same),
    causing x2 breakage on armv7.
  * 256bit VAES support on x86-64 (0.23 cycles/byte on Zen3!).
  * Needed to compile aesni twice for this, once with avx.
  * Full asm versions for (non-x2) CTR and CBC on arm64
    (achieving 0.40 cycles/byte on Cortex X-1).
  * Avoid test failures with incompressible tweak in fuzz_lzo.
  * test_aes improvements: Options, help, IV comparison, memcpy.
  * Full crypto test coverage 0 -- 130 bytes len.
  * Code safety against len==0 en/decryption.

OBS-URL: https://build.opensuse.org/request/show/889534
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/dd_rescue?expand=0&rev=50
This commit is contained in:
2021-05-02 16:35:16 +00:00
committed by Git OBS Bridge
7 changed files with 38 additions and 71 deletions

View File

@@ -1,49 +0,0 @@
commit 91461f37813dfce13c4a30e9c7a252c1e4267b28
Author: Kurt Garloff <kurt@garloff.de>
Date: Tue Mar 9 12:31:45 2021 +0100
Avoid reporting spurious errors.
errno could have stale values which we don't want to
report by mistake.
For mysterious reasons, this caused an issue on armv7 on Fedora 32/33
and xUbuntu 20.04, but not anywhere else. Maybe glibc is lazy there
to initialize errno properly?
Signed-off-by: Kurt Garloff <kurt@garloff.de>
diff --git a/checksum_file.c b/checksum_file.c
index 61e2482..41bae1a 100644
--- a/checksum_file.c
+++ b/checksum_file.c
@@ -130,6 +130,7 @@ int get_chks(const char* cnm, const char* nm, char* chks, int wantedln)
/* update chksum */
int upd_chks(const char* cnm, const char *nm, const char *chks, int acc)
{
+ errno = 0;
FILE *f = fopen_chks(cnm, "r+", 0);
int err = 0;
char oldchks[MAXHASHSLN+2];
@@ -139,15 +140,17 @@ int upd_chks(const char* cnm, const char *nm, const char *chks, int acc)
f = fopen_chks(cnm, "w", acc);
if (!f)
return -errno;
- fprintf(f, "%s *%s\n", chks, bnm);
- err = -errno;
+ if (fprintf(f, "%s *%s\n", chks, bnm) <= 0)
+ err = -errno;
} else {
off_t pos = find_chks(f, nm, oldchks, strlen(chks));
if (pos == -ENOENT || strlen(chks) != strlen(oldchks)) {
fclose(f);
f = fopen_chks(cnm, "a", 0);
- fprintf(f, "%s *%s\n", chks, bnm);
- err = -errno;
+ if (!f)
+ return -errno;
+ if (fprintf(f, "%s *%s\n", chks, bnm) <= 0)
+ err = -errno;
} else {
if (strcmp(chks, oldchks)) {
if (pwrite(fileno(f), chks, strlen(chks), pos) <= 0)

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:100fceb65b073a2c6e4f1a6b6e2e58e5d51235a4e85162f098b03d9ff0e65c16
size 176603

View File

@@ -1,16 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEZmn3NA0x6V7FVlSQ3k8bOiv/xb8FAmBF2gwACgkQ3k8bOiv/
xb807g/+PtfQySjlfscxnwTYFyqrq1Al5TiF34q9mWGa2f+QiITHUZBhZdi1HahT
pZ3Psqa80TKJ1Ba7G6hGsI2+1T8wdcwYp79E6dnweg4Tsc68mguzedCXXVFoxeBh
eTSuq1Dyoqk1ISt4Lkap764xIt+jzyik4i81mz0+NcZtVJcfnDRbSp3G33x64YsR
PjEsU4lW2AvkK4NIRxqzLYud0Lz8S/Ye87pDi1VauQYhzyXm0SReq2/U1n3Ho7XU
hTob5QhVbeHzcTRuopAaFzBuZAftVjJNAmS/XwuzHbXs6amdsCBXrJMLpY7ttgq7
1OC+JWoBlguyeUXjAkHx4CGG+DwepTXCSN06U+7Rt78DmaBpABq7G0RqkGLAw2uj
5p5bVsgeupiOtZnFeLUWkY/iH5SzTFKqFLRzwYd5K+ezTtA6NgK7jazgjzRX8p+1
LmH7dNtlRIaRcuXP9w3la8ubdxvVOcg0d0NiKajcKwD1x3XNJ4qHOz59VSU2gml3
rOU+OjNybT4v7Ai0KrbLMuNcI60nWxTSJ5zs94/7mXjK7XcbU2AmR17De/N8wx4D
DCC77/sS67YV+KHJa8mSHZy44/+kPFQ+xCxsZ8U67nro+lMOVkeKSers6RLS0UO/
SY95SFHV4DtBUoI7IbXHI76JF0CEQmiyCdD8xJUqLidErHbytr4=
=lHzM
-----END PGP SIGNATURE-----

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:84c780919b971459e6fb18775ee097a41fc3dbdcb5aab8332e71e83a03ec645f
size 181927

View File

@@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEZmn3NA0x6V7FVlSQ3k8bOiv/xb8FAmCKgVsACgkQ3k8bOiv/
xb+o3w/8CEIbniRg5APx/qgqoapYzFpwSoueY6QE/HshW1QKbLiV90ErW5qzdXLL
mcqU/3I9nx2VHfgSXGpKQ30ZlNpJovHPhDon16R0olX9v8p/eGNCJPGydIqyT5SM
2JcHoYB1WBOU6qNg++7ZmY8WbfPBgVovDPHsBD/RYTxzqQqgI6RyplN4X8NzEx5W
g+epD2MzKml6Qh88Etm/IQJ+LZh50LQxzQKTO/pSnnpWPQDQmNiJPlSubT57I1vo
QEiQgcBQAI6F5Wt6F6HUQ6Mn3f3EtP5ewGdoU4SBr8QZr06/+9sZwWL1yTcffhel
ZJbytbdp6PENltPojyh2Ett1pZV4Deqy2tUNR7LZArxkIA10r+FjdCE6e4jYl6Xk
tjLeZJ/lAJSsivVM0xxRW67+O/y4s9uFxxDfm4QPVPauEHfziqvIQ5CTf5PWmyVS
FD2v2Nvh1DlC16P9GNGpnzqILMKSGVDd8abidtHzNaObUYFxVYF6xHrqaSlXN+MJ
KLmKIAN8ZCjBJBKcuFMmCy/b7GuxEUdhuQPUlItXlxlCQ5rzbfJan6uAx2nxL3Vs
LVkb22mNqMZVIgmWtAqv8ZRL0/p/M2u/xQF9YK3gxKwd2X03Vq7bgSSyl9vi7SpX
d873R/F/oT1gV7Fl21/eZinEZrNurAdf0IPlW+9ZnhflCtRZSfU=
=mAWr
-----END PGP SIGNATURE-----

View File

@@ -1,3 +1,21 @@
-------------------------------------------------------------------
Thu Apr 29 21:15:14 CEST 2021 - kurt@garloff.de
- Update to dd_rescue-1.99.11:
* Drop (backported) checksum_file-clear-errno.diff.
* Minor scheduling improvements for x86_64 and ARM asm.
* Work around compiler weirdness, passing two in/out parameters
in the same register (when they are provably the same),
causing x2 breakage on armv7.
* 256bit VAES support on x86-64 (0.23 cycles/byte on Zen3!).
* Needed to compile aesni twice for this, once with avx.
* Full asm versions for (non-x2) CTR and CBC on arm64
(achieving 0.40 cycles/byte on Cortex X-1).
* Avoid test failures with incompressible tweak in fuzz_lzo.
* test_aes improvements: Options, help, IV comparison, memcpy.
* Full crypto test coverage 0 -- 130 bytes len.
* Code safety against len==0 en/decryption.
-------------------------------------------------------------------
Tue Mar 9 19:00:02 CET 2021 - kurt@garloff.de

View File

@@ -21,7 +21,7 @@
%define _lto_cflags %{nil}
%endif
Name: dd_rescue
Version: 1.99.10
Version: 1.99.11
Release: 0
Summary: Data copying in the presence of I/O Errors
License: GPL-2.0-only OR GPL-3.0-only
@@ -31,7 +31,6 @@ Source0: http://garloff.de/kurt/linux/ddrescue/%{name}-%{version}.tar.bz2
Source1: http://garloff.de/kurt/linux/ddrescue/%{name}-%{version}.tar.bz2.asc
Source2: %{name}.keyring
Source99: %{name}.changes
Patch11: checksum_file-clear-errno.diff
BuildRequires: autoconf
BuildRequires: libattr-devel
BuildRequires: libopenssl-devel
@@ -115,7 +114,6 @@ FAKE_BUILDTIME=$(LC_ALL=C date -u -r %{SOURCE99} '+%%H:%%M')
FAKE_BUILDDATE=$(LC_ALL=C date -u -r %{SOURCE99} '+%%b %%e %%Y')
sed -i "s/__TIME__/\"$FAKE_BUILDTIME\"/g" dd_rescue.c
sed -i "s/__DATE__/\"$FAKE_BUILDDATE\"/g" dd_rescue.c
%autopatch -p1
%build
autoheader