Make opensslecdsa_parse use fromlabel

When 'opensslecdsa_parse()' encounters a label tag in the private key
file, load the private key with 'opensslecdsa_fromlabel()'. Otherwise
load it from the private structure.

This was attempted before with 'load_privkey()' and 'uses_engine()',
but had the same flaw as 'opensslecdsa_fromlabel()' had previously,
that is getting the private and public key separately, juggling with
pointers between EC_KEY and EVP_PKEY, did not create a valid
cryptographic key that could be used for signing.
76 jobs for !4495 with 2178-dnssec-fromlabel-ec_crash in 18 minutes and 1 second (queued for 8 seconds)
detached
Status Job ID Name Coverage
  Autoconf
passed #1387262
amd64 linux
autoreconf

00:00:18

 
  Precheck
passed #1387264
amd64 linux
clang-format

00:00:17

passed #1387265
amd64 linux
coccinelle

00:03:45

failed #1387266
amd64 linux
danger

00:00:17

passed #1387263
amd64 linux
misc

00:00:18

passed #1387267
amd64 linux
tarball-create

00:01:38

 
  Build
passed #1387280
amd64 linux
clang:asan

00:02:01

passed #1387284
amd64 linux
clang:buster:amd64

00:01:16

passed #1387287
amd64 libvirt
clang:freebsd11:amd64

00:01:12

passed #1387288
amd64 libvirt
clang:freebsd12:amd64

00:01:19

passed #1387289
amd64 libvirt
clang:openbsd:amd64

00:02:27

passed #1387282
amd64 linux
clang:tsan

00:01:14

passed #1387268
amd64 linux
gcc:alpine3.12:amd64

00:01:00

passed #1387279
amd64 linux
gcc:asan

00:01:52

passed #1387272
amd64 linux
gcc:buster:amd64

00:01:02

passed #1387269
amd64 linux
gcc:centos7:amd64

00:00:55

passed #1387270
amd64 linux
gcc:centos8:amd64

00:00:54

passed #1387278
amd64 linux
gcc:focal:amd64

00:01:05

passed #1387283
amd64 linux
gcc:mutexatomics

00:01:00

passed #1387274
amd64 linux
gcc:out-of-tree

00:01:03

passed #1387273
amd64 linux
gcc:sid:amd64

00:01:08

passed #1387275
i386 linux
gcc:sid:i386

00:01:08

passed #1387285
amd64 linux
gcc:softhsm2.4

00:00:52

passed #1387286
amd64 linux
gcc:softhsm2.6

00:00:51

passed #1387271
amd64 linux
gcc:stretch:amd64

00:01:15

passed #1387281
amd64 linux
gcc:tsan

00:01:13

passed #1387276
amd64 linux
gcc:tumbleweed:amd64

00:01:04

passed #1387277
amd64 linux
gcc:xenial:amd64

00:01:04

passed #1387290
amd64 windows
msvc:windows:amd64

00:00:46

 
  Unit
passed #1387302
amd64 linux
unit:clang:asan

00:01:20

passed #1387306
amd64 linux
unit:clang:buster:amd64

00:01:03

passed #1387309
amd64 libvirt
unit:clang:freebsd11:amd64

00:01:36

passed #1387310
amd64 libvirt
unit:clang:freebsd12:amd64

00:01:38

passed #1387311
amd64 libvirt
unit:clang:openbsd:amd64

00:02:57

passed #1387304
amd64 linux
unit:clang:tsan

00:03:09

passed #1387291
amd64 linux
unit:gcc:alpine3.12:amd64

00:01:05

passed #1387301
amd64 linux
unit:gcc:asan

00:01:23

passed #1387295
amd64 linux
unit:gcc:buster:amd64

00:02:08

passed #1387292
amd64 linux
unit:gcc:centos7:amd64

00:01:08

passed #1387293
amd64 linux
unit:gcc:centos8:amd64

00:01:09

passed #1387300
amd64 linux
unit:gcc:focal:amd64

00:01:09

passed #1387305
amd64 linux
unit:gcc:mutexatomics

00:01:09

passed #1387296
amd64 linux
unit:gcc:sid:amd64

00:01:07

passed #1387297
i386 linux
unit:gcc:sid:i386

00:01:14

passed #1387307
amd64 linux
unit:gcc:softhsm2.4

00:01:11

passed #1387308
amd64 linux
unit:gcc:softhsm2.6

00:01:11

passed #1387294
amd64 linux
unit:gcc:stretch:amd64

00:01:19

passed #1387303
amd64 linux
unit:gcc:tsan

00:04:03

passed #1387298
amd64 linux
unit:gcc:tumbleweed:amd64

00:01:08

passed #1387299
amd64 linux
unit:gcc:xenial:amd64

00:01:09

 
  System
passed #1387323
amd64 linux
system:clang:asan

00:13:41

passed #1387327
amd64 linux
system:clang:buster:amd64

00:11:20

passed #1387330
amd64 libvirt
system:clang:freebsd11:amd64

00:11:57

failed #1387331
amd64 libvirt
system:clang:freebsd12:amd64

00:11:47

passed #1387325
amd64 linux
system:clang:tsan

00:15:19

passed #1387312
amd64 linux
system:gcc:alpine3.12:amd64

00:12:35

passed #1387322
amd64 linux
system:gcc:asan

00:13:38

passed #1387316
amd64 linux
system:gcc:buster:amd64

00:12:52

passed #1387313
amd64 linux
system:gcc:centos7:amd64

00:12:38

passed #1387314
amd64 linux
system:gcc:centos8:amd64

00:12:31

passed #1387321
amd64 linux
system:gcc:focal:amd64

00:12:26

passed #1387326
amd64 linux
system:gcc:mutexatomics

00:11:40

passed #1387317
amd64 linux
system:gcc:sid:amd64

00:11:37

passed #1387318
i386 linux
system:gcc:sid:i386

00:12:17

failed #1387328
amd64 linux
system:gcc:softhsm2.4

00:12:40

failed #1387329
amd64 linux
system:gcc:softhsm2.6

00:12:27

passed #1387315
amd64 linux
system:gcc:stretch:amd64

00:12:12

passed #1387324
amd64 linux
system:gcc:tsan

00:15:32

passed #1387319
amd64 linux
system:gcc:tumbleweed:amd64

00:12:31

passed #1387320
amd64 linux
system:gcc:xenial:amd64

00:11:17

 
  Docs
passed #1387332
amd64 linux
docs

00:00:37

 
  Postcheck
passed #1387336
amd64 linux
cppcheck

00:00:58

passed #1387333
amd64 linux
flake8

00:00:23

passed #1387337
amd64 linux
gcov

00:00:32

77.0%
passed #1387334
amd64 linux
pylint

00:00:25

passed #1387335
amd64 linux
scan-build

00:04:17

 
Name Stage Failure
failed
system:gcc:softhsm2.4 System
FAIL kasp (exit status: 1)

$ test -n "${OUT_OF_TREE_WORKSPACE}" && mv "${OUT_OF_TREE_WORKSPACE}" "${CI_PROJECT_DIR}"
Uploading artifacts for failed job
Uploading artifacts...
untracked: found 4631 files

Uploading artifacts as "archive" to coordinator... ok
id=1387328 responseStatus=201 Created token=3sxnRQaD
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
system:clang:freebsd12:amd64 System
$ test -n "${OUT_OF_TREE_WORKSPACE}" && mv "${OUT_OF_TREE_WORKSPACE}" "${CI_PROJECT_DIR}"
Uploading artifacts for failed job
Uploading artifacts...
Runtime platform
arch=amd64 os=freebsd pid=68548 revision=ece86343 version=13.5.0
untracked: found 4679 files

Uploading artifacts as "archive" to coordinator... ok
id=1387331 responseStatus=201 Created token=pN8Q_Xoy
Cleaning up file based variables
Unsupported run stage 'cleanup_file_variables'
ERROR: Job failed: exit status 1
failed
system:gcc:softhsm2.6 System
FAIL pkcs11 (exit status: 1)

$ test -n "${OUT_OF_TREE_WORKSPACE}" && mv "${OUT_OF_TREE_WORKSPACE}" "${CI_PROJECT_DIR}"
Uploading artifacts for failed job
Uploading artifacts...
untracked: found 1619 files

Uploading artifacts as "archive" to coordinator... ok
id=1387329 responseStatus=201 Created token=s6B2tAJn
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
danger Precheck
 * branch            main       -> FETCH_HEAD



Failing the build, there is 1 fail.
Feedback: https://gitlab.isc.org/isc-projects/bind9/merge_requests/4495#note_183932

Cleaning up file based variables
ERROR: Job failed: exit code 1