Bug 204184 - security/softether: Missing runtime library libiconv
Summary: security/softether: Missing runtime library libiconv
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Kurt Jaeger
Keywords: easy, patch
Depends on:
Reported: 2015-10-31 23:22 UTC by Franco Fichtner
Modified: 2015-11-02 19:49 UTC (History)
4 users (show)

See Also:
pi: maintainer-feedback+
pi: merge-quarterly+

Update for iconv / bug 203688 (236 bytes, text/plain)
2015-11-02 11:19 UTC, net
no flags Details
svn diff to address iconv issue and bug 203688 (2.28 KB, patch)
2015-11-02 11:22 UTC, net
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Franco Fichtner 2015-10-31 23:22:49 UTC
Hi there,

We noticed that softether requires libiconf as a runtime dependency, but is currently only hooked in as a build dependency.  This is an issue because libiconv was recently bumped and the softether package is not automatically reinstalled.

root@os:~ # ldd /usr/local/libexec/softether/vpncmd
	libm.so.5 => /lib/libm.so.5 (0x8009ca000)
	libthr.so.3 => /lib/libthr.so.3 (0x800bf2000)
	libssl.so.8 => /usr/local/lib/libssl.so.8 (0x800e17000)
	libcrypto.so.8 => /usr/local/lib/libcrypto.so.8 (0x801082000)
	libiconv.so.2 => /usr/local/lib/libiconv.so.2 (0x8014d5000)
	libreadline.so.8 => /lib/libreadline.so.8 (0x8017cf000)
	libncurses.so.8 => /lib/libncurses.so.8 (0x801a12000)
	libz.so.6 => /lib/libz.so.6 (0x801c5f000)
	libc.so.7 => /lib/libc.so.7 (0x801e75000)
root@os:~ # pkg info -d softether
root@os:~ #

More info at: https://forum.opnsense.org/index.php?topic=1572.0

Comment 1 Kubilay Kocak freebsd_committer freebsd_triage 2015-11-01 04:40:27 UTC
This change (if verified) has blanket/implicit approval.
Comment 2 John Marino freebsd_committer 2015-11-01 09:12:52 UTC
I was investigating another issue with this port (it's JOBS UNSAFE always, not just with openSSL) and notices that USES=iconv is *NOT* used.

This looked home-grown to me.

I suspect using BUILD_DEPENDS is a mistake that should have been caught when port was introduced last month.

I'm CC'ing pi@ who brought it in.

To summarize:

1) I think USES=iconv should be used
2) This needs MAKE_JOBS_UNSAFE=yes unconditional (It tries to build object files before /tmp/obj/ directory is created.

If 1) is wrong, the maintainer should explain specifically why libiconv handling differs from directions in Mk/Uses/iconv.mk
Comment 3 Kurt Jaeger freebsd_committer 2015-11-01 09:23:48 UTC
I just had a look at the port:

USES=iconv is in the Makefile, but when I build it without the
BUILD_DEP on iconv, it fails to build on 11 and 10.

What do you mean with "USES=iconv is not used" ?
Comment 4 John Marino freebsd_committer 2015-11-01 09:26:59 UTC
I didn't see it -- I didn't look because I assumed it wasn't there since BUILD_DEPENDS was set.

If it fails on 10 and 11, then I assume some of the configuration args defined in Uses/iconv.mk need to be used.

I suspect this > F10 is a hack that works around using iconv.mk as it was intended.
Comment 5 Kurt Jaeger freebsd_committer 2015-11-01 09:35:01 UTC
I just tried it in poudriere with USES=iconv:build, but if I do not add
the BUILD_DEP, it fails.
Comment 6 John Marino freebsd_committer 2015-11-01 09:37:48 UTC
I don't think you got what I said.

Take a look at iconv.mk.

There are many variables defined in there that are not used by default.  If the port needs that information, you are supposed to add it to CONFIGURE_ARGS, LDFLAGS, etc.

If the build is failing, then some configuration info is missing.

the ":build" thing is the wrong approach.  This PR just confirms that it needs to be set in LIBS if used.
Comment 7 John Marino freebsd_committer 2015-11-01 09:45:20 UTC
another thing you try:

USES= iconv:translit
USES= iconv:wchar_t
Comment 8 Franco Fichtner 2015-11-02 07:23:55 UTC
I just hit an unsafe jobs issue as well. Doesn't always happen, but often enough to cause annoyance.
Comment 9 net 2015-11-02 09:24:16 UTC
Sorry for the late reply but the real life needed some more attention then anything computing related.
I'll look into this issue, also the other bug reported related to the OpenSSL building problems.
When originally porting, testing was done on 9.3 / 10.0 / 10.1 (both amd64 and i386) and there hasn't been issues.
Comment 10 net 2015-11-02 11:19:34 UTC
Created attachment 162698 [details]
Update for iconv / bug 203688
Comment 11 net 2015-11-02 11:22:27 UTC
Created attachment 162699 [details]
svn diff to address iconv issue and bug 203688

Sorry - incorrectly used "File" instead of "Comment"

The attached svn diff should address the iconv problems, as well as https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=203688

Tested unter 9.3 / 10.1 - make pkg pulls in converters/libiconv as dependency.

Hope that fixes the problems.
Comment 12 John Marino freebsd_committer 2015-11-02 11:27:43 UTC
so iconv:wchar_t worked to build on all platforms?

I assume pi@ is still taking care of these softether PRs.
Comment 13 John Marino freebsd_committer 2015-11-02 11:28:41 UTC
You need to submit a new version.

Softether is jobs *unsafe*, period.

MAKE_JOBS_UNSAFE=yes needs to be set unconditionally.
Comment 14 Franco Fichtner 2015-11-02 11:31:33 UTC
We also need a revision bump. :)
Comment 15 Kurt Jaeger freebsd_committer 2015-11-02 11:40:36 UTC
Comment 16 Kurt Jaeger freebsd_committer 2015-11-02 11:46:20 UTC
I'll add the PORTREVISION and the JOBS_UNSAFE, no need for additional patches.
Comment 17 John Marino freebsd_committer 2015-11-02 11:52:23 UTC
FYI it's *move" JOBS_UNSAFE, not "add"
Comment 18 commit-hook freebsd_committer 2015-11-02 12:00:40 UTC
A commit references this bug:

Author: pi
Date: Mon Nov  2 12:00:00 UTC 2015
New revision: 400650
URL: https://svnweb.freebsd.org/changeset/ports/400650

  security/softether: fixes

  - iconv build
  - build with No-SSLv3
  - MAKE_JOBS_UNSAFE=yes unconditionally

  PR:		203688, 204184
  Submitted by:	net@arrishq.net (maintainer)

Comment 19 Kurt Jaeger freebsd_committer 2015-11-02 12:01:33 UTC
Committed, thanks for the bug reports and the patch!
Comment 20 Kubilay Kocak freebsd_committer freebsd_triage 2015-11-02 12:05:09 UTC
@Kurt MFH?
Comment 21 Kurt Jaeger freebsd_committer 2015-11-02 12:13:52 UTC
I'll MFH.
Comment 22 John Marino freebsd_committer 2015-11-02 14:00:20 UTC
I didn't notice this before:

"iconv:translit iconv:wchar_t"

It's one or the other, not both.
Comment 23 Kurt Jaeger freebsd_committer 2015-11-02 14:10:37 UTC
Well, the last one wins, as we learned from the 'USES should be sorted, but has side effects beyond that' thread. So...
Comment 24 commit-hook freebsd_committer 2015-11-02 14:11:55 UTC
A commit references this bug:

Author: pi
Date: Mon Nov  2 14:11:09 UTC 2015
New revision: 400655
URL: https://svnweb.freebsd.org/changeset/ports/400655

  security/softether: fix USES

  PR:		204184
  Submitted by:	marino
  Approved by:	maintainer (implicit)

Comment 25 commit-hook freebsd_committer 2015-11-02 19:45:20 UTC
A commit references this bug:

Author: pi
Date: Mon Nov  2 19:44:44 UTC 2015
New revision: 400670
URL: https://svnweb.freebsd.org/changeset/ports/400670

  MFH: r400650

  - iconv build
  - build with No-SSLv3
  - MAKE_JOBS_UNSAFE=yes unconditionally

  PR:		204184
  Approved by:	ports-secteam (feld)

Comment 26 Kurt Jaeger freebsd_committer 2015-11-02 19:49:42 UTC
If I'd believe in vampires, I'd apply silver bullets now 8-}