New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

irssi 1.0.0 fails to compile on Solaris 11 because OpenSSL is not compiled with EC support #598

Closed
Slarky opened this Issue Jan 5, 2017 · 5 comments

Comments

Projects
None yet
3 participants
@Slarky

Slarky commented Jan 5, 2017

Hi,

irssi 1.0.0 (0.8.20 was fine) does not compile on Solaris 11(.3) anymore:

  CC       network-openssl.o
"network-openssl.c", line 258: warning: statement not reached
"network-openssl.c", line 304: warning: statement not reached
"network-openssl.c", line 649: undefined symbol: EC_KEY
"network-openssl.c", line 649: undefined symbol: ec_key
"network-openssl.c", line 649: syntax error before or at: =
"network-openssl.c", line 662: warning: implicit function declaration: EVP_PKEY_get1_EC_KEY
"network-openssl.c", line 663: warning: implicit function declaration: EC_GROUP_get_curve_name
"network-openssl.c", line 663: warning: implicit function declaration: EC_KEY_get0_group
"network-openssl.c", line 664: warning: implicit function declaration: EC_KEY_free
cc: acomp failed for network-openssl.c
gmake[3]: *** [network-openssl.o] Error 2
gmake[3]: Leaving directory `/tmp/irssi-1.0.0/src/core'

Is there any chance of making the EC stuff optional? Because of patent issues Oracle has decided to ship base OpenSSL 1.0.2 in Solaris 11.3 without EC support…

@dequis

This comment has been minimized.

Member

dequis commented Jan 5, 2017

Because of patent issues

Citation?

@Slarky

This comment has been minimized.

Slarky commented Jan 5, 2017

Hm, they say "legal issues" (see https://bugzilla.mindrot.org/show_bug.cgi?id=2376)… So maybe not exactly patent issues

openssl(5) on Solaris 11.3 also vaguely states:

       The following features are omitted  from   the   binaries   for  issues
       including but not limited to patents, trademark, and US export restric-
       tions: ECC, ...

There will be EC support in the next major Solaris release though:

PSARC/2016/417 OpenSSL Elliptic Curve Cryptography
23058111 Enable Elliptic Curve Cryptography in OpenSSL

see https://java.net/hg/solaris-userland~gate/rev/6e7ab6702602?revcount=960

They also had to disable EC stuff in OpenSSH https://java.net/hg/solaris-userland~gate/rev/7cfcde36f97f and GnuTLS https://java.net/hg/solaris-userland~gate/file/2c4755d11126/components/gnutls-3/patches/02_remove_elliptical.patch

PS: RedHat had legal issues with ECC, too… https://bugzilla.redhat.com/show_bug.cgi?id=1021897#c7

Anyway, can we get back to the compile issue? :)

EDIT: typo

@Slarky

This comment has been minimized.

Slarky commented Jan 5, 2017

@ahf

This comment has been minimized.

Member

ahf commented Jan 6, 2017

I was close to writing some silly comment on Solaris, but thank you so much for providing a patch for the issue yourself. I will check that your patch plays well with our other platforms and get it in if there is no problems :-)

If you want attribution you should re-submit the patch as a pull-request here or using git-format-patch :-)

@Slarky

This comment has been minimized.

Slarky commented Jan 6, 2017

Attribution for two #ifdefs is not needed, thanks :)

dequis added a commit to dequis/irssi that referenced this issue Jan 6, 2017

Add OPENSSL_NO_EC for solaris 11.3, see issue irssi#598
Original patch by 'Slarky'

According to that ticket, the next major version of solaris won't need
this. Consider reverting this when solaris 11.3 stops being relevant.

ailin-nemui added a commit that referenced this issue Jan 6, 2017

Merge pull request #604 from dequis/solaris
Add OPENSSL_NO_EC for solaris 11.3, see issue #598

ailin-nemui added a commit to ailin-nemui/irssi that referenced this issue Feb 5, 2017

Merge pull request irssi#604 from dequis/solaris
Add OPENSSL_NO_EC for solaris 11.3, see issue irssi#598
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment