encfs: Fails to build (test segfaults)

  • Done
  • quality assurance status badge
Details
2 participants
  • Ivan Vilata i Balaguer
  • Ludovic Courtès
Owner
unassigned
Submitted by
Ivan Vilata i Balaguer
Severity
normal
I
I
Ivan Vilata i Balaguer wrote on 4 May 2023 18:46
(address . bug-guix@gnu.org)
ZFPhfgNIuuB2dzL5@sax
Hi! It looks like one of the tests in package `encfs` consistently segfaults
in the version of Guix shown below:

```
$ LANG=C guix describe
Generation 56 May 02 2023 11:25:26 (current)
guix 3f8c489
branch: master
commit: 3f8c4899a9a67bb509a603bd21dcfcfab88c0e8e
```

This is the final part of the build log:

```
starting phase `check'
Running tests...
/gnu/store/ygab8v4ci9iklaykapq52bfsshpvi8pw-cmake-minimal-3.24.2/bin/ctest --force-new-ctest-process
Test project /tmp/guix-build-encfs-1.9.5.drv-0/build
Start 1: unit
1/1 Test #1: unit .............................***Exception: SegFault 0.01 sec
Running main() from /tmp/guix-build-encfs-1.9.5.drv-0/encfs-1.9.5/vendor/github.com/google/googletest/googletest/src/gtest_main.cc
[==========] Running 16 tests from 2 test suites.
[----------] Global test environment set-up.
[----------] 1 test from MemoryPool
[ RUN ] MemoryPool.Allocate
[ OK ] MemoryPool.Allocate (0 ms)
[----------] 1 test from MemoryPool (0 ms total)

[----------] 15 tests from CipherKey/CipherTest
[ RUN ] CipherKey/CipherTest.SaveRestoreKey/0
[ OK ] CipherKey/CipherTest.SaveRestoreKey/0 (5 ms)
[ RUN ] CipherKey/CipherTest.SaveRestoreKey/1


0% tests passed, 1 tests failed out of 1

Total Test time (real) = 0.01 sec

The following tests FAILED:
1 - unit (SEGFAULT)
Errors while running CTest
make: *** [Makefile:94: test] Error 8

Test suite failed, dumping logs.
error: in phase 'check': uncaught exception:
%exception #<&invoke-error program: "make" arguments: ("test" "-j" "4") exit-status: 2 term-signal: #f stop-signal: #f>
phase `check' failed after 0.0 seconds
command "make" "test" "-j" "4" failed with status 2
```

I saw a couple of encfs issues regarding segfaults in tests, but I don't think

Thanks a lot, and cheers!

--
Ivan Vilata i Balaguer -- https://elvil.net/
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEHpvwBPZcchIQr6TuPezBBfXdI4IFAmRT4XQACgkQPezBBfXd
I4JHcg//bMwXs4QXVqdrV/KJ1+DEvdIeU9pB47pM+7K+dPC3MGWvDp3bra6UbjJJ
3zXfcsOnN6V6HL2Y70r1Nbt4DoNmaaJNUV8O0h95Ce9lcqcYo2WwH6kF5rHg5Rtj
779dgS3UlfM/8n9HIKHynkV2+bSKo5vMZ7CqbT3SefD9dZtjX2IDKXErtqonNik2
E9QWU7hFenm36bM9Ba45gWappfuKSnZxROwxykLhaRg8WMW+l8UES/BKTHVzviHo
VGbGcr/lMqvCfEgkDE84k6Yg12QoNV9wrzSg950huYUnzN7438asm/UKZgvjc7EB
HGYbcZoYsX6BcIiO/y1MkunJ6tsvBVXFg1FtJ4Aks5AIz8w6U6hO1QQkzPJfrlY0
pq1fsufAYOWPzVgPeu93q6UNYy8ffuLqpyKIAanwJhLv9lNIAvVl7G/mK7pSAU5d
7UY7b9R2e+901qkXpT4xLIKhRFRN4fpjKWULvhq/2P4QzeGY74kvhFHIXsAvqex9
WQCyDDOg4gXMmuSfycfqPKPWPEAKxKu1HkvEPxDfhjJebNPWdqrAkNvTnxqI5hq+
LzW8reI+S5N0Ym6SZH2LQ3Ki4N2oDRzVHgMyIszu5Asol8kPTSDoPuahxXSsKqN2
y23941fovmZhRCl4onhvibwYspM66mgFyVMxp0N7/Kwch6gtn2g=
=3m+T
-----END PGP SIGNATURE-----


I
I
Ivan Vilata i Balaguer wrote on 19 May 2023 13:40
(address . 63280@debbugs.gnu.org)
ZGdgK2Ht4TkUEFxf@sax
Ivan Vilata i Balaguer (2023-05-04 18:46:54 +0200) wrote:

Toggle quote (25 lines)
> Hi! It looks like one of the tests in package `encfs` consistently segfaults
> in the version of Guix shown below:
>
> ```
> […]
> commit: 3f8c4899a9a67bb509a603bd21dcfcfab88c0e8e
> ```
>
> This is the final part of the build log:
>
> ```
> starting phase `check'
> Running tests...
> /gnu/store/ygab8v4ci9iklaykapq52bfsshpvi8pw-cmake-minimal-3.24.2/bin/ctest --force-new-ctest-process
> Test project /tmp/guix-build-encfs-1.9.5.drv-0/build
> Start 1: unit
> 1/1 Test #1: unit .............................***Exception: SegFault 0.01 sec
> Running main() from /tmp/guix-build-encfs-1.9.5.drv-0/encfs-1.9.5/vendor/github.com/google/googletest/googletest/src/gtest_main.cc
> […]
> ```
>
> I saw a couple of encfs issues regarding segfaults in tests, but I don't think
> they're related: <https://github.com/vgough/encfs/issues/378>
> <https://github.com/vgough/encfs/issues/600>

I repeated the build with Guix commit 14c03807 and `encfs` tests failed in the
same way. I tested the fix in https://github.com/vgough/encfs/issues/600,
i.e. `guix build encfs --with-input=openssl=openssl@1.1.1q`, and the build
succeeded, tests and all. I also tried `--with-graft` instead of
`--with-input`, but the issue happened again.

I hope that this is useful!

--
Ivan Vilata i Balaguer -- https://elvil.net/
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEHpvwBPZcchIQr6TuPezBBfXdI4IFAmRnYCIACgkQPezBBfXd
I4L38BAAonSQmHkcxqghwFuQijDSdvIP9BzuEXfeB74wONYBHwU4lGLm6vSbMXd2
IIfJhqsLwPlbIMY90fS6lIhaSKTHm24IDDqBYfuHbQ4/fl5U6umh6rUVhEvpNnDD
CCrVY1SWKI0oEAi+c2DGai/vo0RcS3KImW1ObuGZqTS9zbeZ5FNRc3mKgVMexE8L
PwJJhPolEeKQoV0hGQYpP7nH0m8c8JUtQQicP4+5SJsSujw8DEJ+RNIf2PCXTMM0
QjfXp7R4nE9WPpHHLZcEct/PnXrq64VNPJNyq51YeTQ5ADsvOqZ8a13fOH8MWtYD
BEQ5/CK53grKA+s5ys0Wt0UWZ8BFRdqpb1Ln+urwS20usK7UdpmrGWf6+4CiwJH+
L+0HBx1tRBBDH7ndtS5CHHZsd0wuyCdXbCvrf1zmoj7DdDV4Q3VKlM69JjnSiZMx
ISN445JT1gtH39mHjWMzrIlaZcsVsrvQOPgzAB4CrkC+bJAoclBxdWhFPBRwa6+i
mVGX92wI7SD+TA3ilQnd87EM5DdjvA49Mcstoj+5yDyeHsRhIeJf0qsOH8wBg2jc
syzM7PDLnGBXPCk0GxnIWbJe5vjGYJNjUHFucv8+yUm2ruUtgAEy1VnYoWHzyw8i
+QY04xZuhgbhunh1G5dWQoz3H65LbggdCSZKmliYzjIWDqTxQiQ=
=2/LC
-----END PGP SIGNATURE-----


I
I
Ivan Vilata i Balaguer wrote on 19 May 2023 14:11
(name . Ivan Vilata i Balaguer)(address . ivan@selidor.net)(address . 63280@debbugs.gnu.org)
ZGdneUZDj5XE6W+a@sax
Ivan Vilata i Balaguer (2023-05-19 13:40:27 +0200) wrote:

Toggle quote (6 lines)
> I repeated the build with Guix commit 14c03807 and `encfs` tests failed in the
> same way. I tested the fix in <https://github.com/vgough/encfs/issues/600>,
> i.e. `guix build encfs --with-input=openssl=openssl@1.1.1q`, and the build
> succeeded, tests and all. I also tried `--with-graft` instead of
> `--with-input`, but the issue happened again.

I rebuilt `--with-git-url=encfs=https://github.com/vgough/encfs.git`with the
same result.

However, I copied the definition of the `encfs` package to another file,
changed `(inputs (list attr fuse openssl tinyxml2))` to `(inputs (list attr
fuse openssl-1.1 tinyxml2))` (i.e. `openssl -> openssl-1.1`), and the built
succeeded and tests passed.

Please note that
that, around 3 years after the release of EncFS v1.9.5 (the version used in
Guix), OpenSSL v3 was still very recent, so EncFS may have never been
thoroughly tested with it anyway.

Maybe reverting to its dependency to OpenSSL v1.1 would be a good choice
(esp. since v1.1 still receives fixes).

Cheers!

--
Ivan Vilata i Balaguer -- https://elvil.net/
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEHpvwBPZcchIQr6TuPezBBfXdI4IFAmRnZ3AACgkQPezBBfXd
I4J1ow/+KFUuNuwQPKcV0cqSMTxdPHnbNrHBj/yRA7mfwLEYKb44ztctnpcmCka2
zoScuOARnGmJx1adTz2ysbbskg5cyCqgUx7uiFmiqw0s88Iq9hZyFBtUs2CsoaCe
VYDAsIx/LHkCeXopZy1JHuxW3Wlk9THqyC3uYCA923ZEFHjKOLaGa7V4RjIwNH9m
q0IyujZ2bPMbY5ctlgXpJUJXUMX2oAmq99NsFZ5ec/3CZZJ7ftf0kJbpexAuv7ec
0C88/g7ZZQ0Seb3Jh2Lp1xgastLK/ZxJWRrq3fxTli1ot4/anOippBcGjUEovr79
w3EIDPhsscK2h/eyUtbMrDFPsEtO9q5LeD2fG1npkvJHN154jzphKTaOOVDu8DU4
KyiPkATtAM/ZsKQxHTPD1SAhg+CleIha/ydGYucv8I8lSqHJ/6XW3Ue7Z0pwd31p
sDJ4TA1fyni3alg/5WUHejmq36cEGioPNHa/ngBUowwpJhKLXvwB0owtrCsw4oBH
v4DZ6B/OjbrA6e9+j2tpwIdPxhihU/nuco4TOs3M8BwsWiEu2+gHHl/GORZoJHTi
TT0czdf4GWbxELfHONrOx3r2SqhKpGofSexF7Xw2nr7Q2p2FuZnDo3ZT6Mi9PEam
Cneslz6oGCDzcywy/9nSpmW7Ym3GwlNOvxXUxytCwCO9XLSH6Os=
=vNsB
-----END PGP SIGNATURE-----


I
I
Ivan Vilata i Balaguer wrote on 20 May 2023 12:33
(name . Ivan Vilata i Balaguer)(address . ivan@selidor.net)(address . 63280@debbugs.gnu.org)
ZGih4PeSRdmZFzpN@sax
Ivan Vilata i Balaguer (2023-05-19 14:11:37 +0200) wrote:

Toggle quote (14 lines)
> […] I copied the definition of the `encfs` package to another file,
> changed `(inputs (list attr fuse openssl tinyxml2))` to `(inputs (list attr
> fuse openssl-1.1 tinyxml2))` (i.e. `openssl -> openssl-1.1`), and the built
> succeeded and tests passed.
>
> Please note that
> <https://github.com/vgough/encfs/issues/600#issuecomment-950026929> points out
> that, around 3 years after the release of EncFS v1.9.5 (the version used in
> Guix), OpenSSL v3 was still very recent, so EncFS may have never been
> thoroughly tested with it anyway.
>
> Maybe reverting to its dependency to OpenSSL v1.1 would be a good choice
> (esp. since v1.1 still receives fixes).

I sent a patch doing that: https://issues.guix.gnu.org/63593

(Is it better to send the patch as a reply to this thread?)

Thanks!

--
Ivan Vilata i Balaguer -- https://elvil.net/
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEHpvwBPZcchIQr6TuPezBBfXdI4IFAmRoodgACgkQPezBBfXd
I4JLKw/9FLxW8oEpWsXus1OBlDtM6a7sGM2y+oOYmgmEjF1TkJzk0w2Xl+qMYt+m
71EUnbuKaBvMI9pWG6wPrWoZLqb7xA/yiwsHeidXsPSVJAIBt4imn4pIpFEzgORK
hx6KHNJebg2leJ8ZAYFkNADlqmMgSGVYLIDxmDLnUNELFn+cftxnOMNnhvFmWblD
SGe8UNSehPhpadTCv4uZVVbSp5yFdCdCXKDxuG00hO0xzLcWLdb/KOkExdqOSeMa
GhSJGXPcTR0hDgP6WLUUk+n+qHJ9SS9nz7BaGqfdECSrLZ3GxuTibeazQ5OmiGj4
QQbuomAJUq1d3G6xd+MAC44sS7LYBMUwI1ixiBS6AuhvPqCRWO+4Z/I040J4Na7u
VGtnPbtoZ1SwXPD5iiIua+SjCeoE3ShOJwZCZ6jL2BkZ7c2RQ6gcufAxktGAE4sq
kpCMBt4PcfepwL/TfIOUZ7DWUWnydcsjEp+9BFLm3acDu0jMb5ohw6AYPuZDXdB5
BZ4xLSCKdaJKpb/8YMXGR8nAli+zwni9o6nBBhQMryzkeoCSlGD8+kB1HtV9NMHt
cKiL7EXcULHBzaw2t6BV4M9CpjjjnvJeGNfsdZ92PFCrrb7psxX40karcgNbT3wy
bdIFVAo3oKZ8ElUYR2IZupUy1H6bjW3JX5Tj3J28uIgpXjHBFhE=
=rktx
-----END PGP SIGNATURE-----


L
L
Ludovic Courtès wrote on 25 May 2023 12:38
Re: bug#63593: [PATCH] gnu: encfs: Depend on OpenSSL v1.1 to fix test segfault.
(name . Ivan Vilata i Balaguer)(address . ivan@selidor.net)
87pm6og0ga.fsf@gnu.org
Bon dia,

Ivan Vilata i Balaguer <ivan@selidor.net> skribis:

Toggle quote (5 lines)
>
> * gnu/packages/crypto.scm (encfs): Update to 1.9.
> [inputs]: Replace openssl with openssl-1.1.

Applied, thanks!

Ludo’.
Closed
?