[Pkg-openssl-devel] Bug#848212: libssl-dev package missing ECDSA_SIG_st structure definition

David Caldwell david at porkrind.org
Thu Dec 15 05:36:01 UTC 2016


Package: libssl-dev
Version: 1.1.0c-2
Severity: normal

Dear Maintainer,

I'm getting errors compiling a program that uses OpenSSL ECDSA
code:

  libabi/src/ossl_ec.c: In function ‘OSSL_ECDSA_do_verify_rs’:
  libabi/src/ossl_ec.c:204:15: error: storage size of ‘sig’ isn’t known
       ECDSA_SIG sig;
                 ^~~
  libabi/src/ossl_ec.c: In function ‘OSSL_ecdsa_sig_get_r’:
  libabi/src/ossl_ec.c:222:56: error: dereferencing pointer to incomplete type ‘ECDSA_SIG {aka const struct ECDSA_SIG_st}’
       return (const OSSL_BIGNUM*) ((const ECDSA_SIG*)sig)->r;
                                                        ^~

I notice that libssl-dev doesn't appear to define the ECDSA_SIG_st
structure:

  $ dpkg -L libssl-dev | grep '\.h' | xargs -d\\n grep ECDSA_SIG_st
  /usr/include/openssl/ec.h:typedef struct ECDSA_SIG_st ECDSA_SIG;


The structure *is* included in the openssl 1.1.0c source file
(openssl_1.1.0c.orig.tar.gz):

  $ grep -r ECDSA_SIG_st openssl-1.1.0c
  openssl-1.1.0c/include/openssl/ec.h:typedef struct ECDSA_SIG_st ECDSA_SIG;
  openssl-1.1.0c/crypto/ec/ec_lcl.h:struct ECDSA_SIG_st {


When I paste the ECDSA_SIG_st structure definition into the code, it
compiles and runs ok. I think this code is accidentally missing from the
debian package. But I'm also not familar with this code, so perhaps I'm just
misunderstanding how it's all supposed to work.

-David


*** Reporter, please consider answering these questions, where appropriate ***

   * What led up to the situation?
   * What exactly did you do (or not do) that was effective (or
     ineffective)?
   * What was the outcome of this action?
   * What outcome did you expect instead?

*** End of the template - remove these template lines ***


-- System Information:
Debian Release: stretch/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.8.0-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages libssl-dev depends on:
ii  libssl1.1  1.1.0c-2

Versions of packages libssl-dev recommends:
pn  libssl-doc  <none>

libssl-dev suggests no packages.

-- no debconf information



More information about the Pkg-openssl-devel mailing list