Bug 1313590 - libsrtp should use upstream's pkg-config file instead of its own
libsrtp should use upstream's pkg-config file instead of its own
Status: CLOSED ERRATA
Product: Fedora
Classification: Fedora
Component: libsrtp (Show other bugs)
rawhide
All All
unspecified Severity low
: ---
: ---
Assigned To: Tom "spot" Callaway
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2016-03-01 19:57 EST by Nirbheek Chauhan
Modified: 2016-03-28 15:49 EDT (History)
2 users (show)

See Also:
Fixed In Version: libsrtp-1.5.4-3.fc23 libsrtp-1.5.4-3.fc22
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2016-03-09 10:51:44 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Nirbheek Chauhan 2016-03-01 19:57:05 EST
As can be seen here:

http://pkgs.fedoraproject.org/cgit/rpms/libsrtp.git/tree/libsrtp.spec

The libsrtp spec file uses its own hand-written copy of libsrtp.pc instead of the one shipped and built by upstream:

https://github.com/cisco/libsrtp/blob/v1.5.4/libsrtp.pc.in

This causes a number of issues:

1) The version is wrong (outdated)
2) The upstream project URL is wrong (outdated)
3) The "Cflags" value is wrong. Everyone includes srtp headers as <srtp/err.h> etc.

(3) in particular is very bad because libsrtp ships srtp/config.h, and if /usr/include/srtp is in the include path, autotools projects can include that as config.h instead of the output of configure and fail to build.

The fix is to use the pkg-config file shipped by upstream.
Comment 1 Nirbheek Chauhan 2016-03-01 20:08:53 EST
It's actually even worse. That directory has several other headers with common names that should never pollute the include namespace. Some choice examples:

err.h
rtp.h
crypto.h
aes.h
auth.h
cipher.h
alloc.h
datatypes.h
stat.h (!)

This is more severe than I thought...
Comment 2 Tom "spot" Callaway 2016-03-02 11:39:54 EST
You're absolutely right. The Fedora specific .pc file dates back from an era where there wasn't an upstream .pc file (and the source code was different then too). I'm fixing this in rawhide right now, and I'll review the stable branches to see if it needs fixing there too.
Comment 3 Fedora Update System 2016-03-02 12:21:57 EST
libsrtp-1.5.4-3.fc22 has been submitted as an update to Fedora 22. https://bodhi.fedoraproject.org/updates/FEDORA-2016-200692e169
Comment 4 Fedora Update System 2016-03-02 12:21:58 EST
libsrtp-1.5.4-3.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2016-ed8b2d49bd
Comment 5 Nirbheek Chauhan 2016-03-03 11:06:18 EST
(In reply to Tom "spot" Callaway from comment #2)
> You're absolutely right. The Fedora specific .pc file dates back from an era
> where there wasn't an upstream .pc file (and the source code was different
> then too). I'm fixing this in rawhide right now, and I'll review the stable
> branches to see if it needs fixing there too.

Thanks so much for looking into and fixing this so quickly!
Comment 6 Fedora Update System 2016-03-03 16:55:25 EST
libsrtp-1.5.4-3.fc22 has been pushed to the Fedora 22 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-200692e169
Comment 7 Fedora Update System 2016-03-03 16:58:37 EST
libsrtp-1.5.4-3.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-ed8b2d49bd
Comment 8 Fedora Update System 2016-03-09 10:51:42 EST
libsrtp-1.5.4-3.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.
Comment 9 Fedora Update System 2016-03-09 15:12:12 EST
libsrtp-1.5.4-3.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.
Comment 10 Fedora Update System 2016-03-28 15:49:10 EDT
libsrtp-1.5.4-3.fc22 has been pushed to the Fedora 22 stable repository. If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.