Skip to content

Commit

Permalink
net-analyzer/wireshark: Version 3.0.7
Browse files Browse the repository at this point in the history
Package-Manager: Portage-2.3.80, Repoman-2.3.19
Bug: https://bugs.gentoo.org/702028
Signed-off-by: Jeroen Roovers <[email protected]>
  • Loading branch information
Jeroen Roovers committed Dec 5, 2019
1 parent f47e0f9 commit d37b7f0
Show file tree
Hide file tree
Showing 2 changed files with 246 additions and 0 deletions.
1 change: 1 addition & 0 deletions net-analyzer/wireshark/Manifest
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,6 @@ DIST wireshark-3.0.3.tar.xz 30923980 BLAKE2B 05f29f55061d0bed9be284e145d260fca5e
DIST wireshark-3.0.4.tar.xz 30938336 BLAKE2B ab97cbfd9999a4e326787639debb67f0d0b8509572fb85297385a461dbaf081691d59fc2cb16b4a69baee8ca0ef873503f85f0238bf0fbedfcb3e0755749d3df SHA512 eb9ddc8ba3d78bc6c1f2e1d277e81c00939638793ed21b98999310231d13a0fc8a6149dc5e78f58026778b8137e954ad7f67069f8cb80465078ca2d9795b25d1
DIST wireshark-3.0.5.tar.xz 30929864 BLAKE2B 0e3d8eb37e6d1d1976e8084176fc9c75dab43a74f65f8247c9b18b85cdd82d207791b839743a59c4ad299d63f5f41a94f931901e9245dbfb3d4a239046c874c4 SHA512 237ee66cfe0a7073f0e3623f327f7eb7204d1cd274e006dcc6890972d4135c2baa6c9d2426ea03ee64b7fc6dc45cb4cfe823e5cfc6f90e252d35b3ad7750884e
DIST wireshark-3.0.6.tar.xz 30846672 BLAKE2B c20bef980edb470564dff15e0133e6d65c3273e400a136faeabf92f6e4b907236f88f025baad6d4d592703d2063e56b42de28849c84ce7babeeece950e4afdb8 SHA512 fcd621c1434db69e6319e5932e2dcc378e004055378123f86bdce8dec095bbffbf2b85a880c7f46c69555fe3c9ddb7c79ee59ca2576e0fdf2cfb7eb6ce775b25
DIST wireshark-3.0.7.tar.xz 30851928 BLAKE2B 98d31a260b2f5f74a567161e9dc0c136bb6bb29bcd4fc303f099c8b1379668194c2463e0661041061fe4c462db20c846694beae9286d322ce887332cce45341b SHA512 64e242510865ca69e688677e3ee1f72d3efa2155f07bc1aacc6de19ffab06f26b1ef8a3f91a90e91a6612b10d75651aea6400f8c5852e6a7e82e5d3f3e88e031
DIST wireshark-3.1.0.tar.xz 31052040 BLAKE2B 96ede4dcbb3f5c4ecf1d935737bb26dcaecabe24e0767b34914febd31a1402d2428580e8b26c145bc98a71ef01fddcfca6e4f5709d9a8d90634ea6ed4789bb20 SHA512 df7ca131d0e0f00ec00ef0934cf070c7f6d06e55830777e5ab62f4b1c5588b57bfb45e69009f8ab0c3f405f9dd730bf35671d09f46a9a846a09154ec47caffc9
DIST wireshark-3.1.1.tar.xz 31499140 BLAKE2B e99b525472d04bc3f8a66f02b809c0c0e91255dce6cd3423e37eb5ad77edbbe96df39fd23d354c73910c65298ea3f5895ccef005204f93bdcf56facedf0e05bd SHA512 db5dd8931459412ebaf07a6a1337f6e27aaccf35d63321f171fae6b104ea5c953d42ff2f8ea33e69466fa2c25552fa9d3393e9e0b6bb7233c3eb8fd3241f9248
245 changes: 245 additions & 0 deletions net-analyzer/wireshark/wireshark-3.0.7.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,245 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7
PYTHON_COMPAT=( python3_{5,6,7} )
inherit fcaps flag-o-matic multilib python-r1 qmake-utils user xdg-utils cmake-utils

DESCRIPTION="A network protocol analyzer formerly known as ethereal"
HOMEPAGE="https://www.wireshark.org/"
SRC_URI="https://www.wireshark.org/download/src/all-versions/${P/_/}.tar.xz"

LICENSE="GPL-2"
SLOT="0/${PV}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc64 ~x86"
IUSE="
adns androiddump bcg729 +capinfos +captype ciscodump +dftest doc dpauxmon
+dumpcap +editcap http2 kerberos libxml2 lua lz4 maxminddb +mergecap
+netlink +pcap +qt5 +randpkt +randpktdump +reordercap sbc selinux +sharkd
smi snappy spandsp sshdump ssl sdjournal +text2pcap tfshark +tshark
+udpdump zlib
"

S=${WORKDIR}/${P/_/}

CDEPEND="
>=dev-libs/glib-2.32:2
dev-libs/libgcrypt:0
adns? ( >=net-dns/c-ares-1.5 )
bcg729? ( media-libs/bcg729 )
ciscodump? ( >=net-libs/libssh-0.6 )
filecaps? ( sys-libs/libcap )
http2? ( net-libs/nghttp2 )
kerberos? ( virtual/krb5 )
libxml2? ( dev-libs/libxml2 )
lua? ( >=dev-lang/lua-5.1:* )
lz4? ( app-arch/lz4 )
maxminddb? ( dev-libs/libmaxminddb )
netlink? ( dev-libs/libnl:3 )
pcap? ( net-libs/libpcap )
qt5? (
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtmultimedia:5
dev-qt/qtprintsupport:5
dev-qt/qtwidgets:5
x11-misc/xdg-utils
)
sbc? ( media-libs/sbc )
sdjournal? ( sys-apps/systemd )
smi? ( net-libs/libsmi )
snappy? ( app-arch/snappy )
spandsp? ( media-libs/spandsp )
sshdump? ( >=net-libs/libssh-0.6 )
ssl? ( net-libs/gnutls:= )
zlib? ( sys-libs/zlib )
${PYTHON_DEPS}
"
# We need perl for `pod2html`. The rest of the perl stuff is to block older
# and broken installs. #455122
DEPEND="
${CDEPEND}
"
BDEPEND="
!<perl-core/Pod-Simple-3.170
!<virtual/perl-Pod-Simple-3.170
dev-lang/perl
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
doc? (
app-doc/doxygen
dev-ruby/asciidoctor
)
qt5? (
dev-qt/linguist-tools:5
)
"
RDEPEND="
${CDEPEND}
qt5? ( virtual/freedesktop-icon-theme )
selinux? ( sec-policy/selinux-wireshark )
"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
"
PATCHES=(
"${FILESDIR}"/${PN}-2.4-androiddump.patch
"${FILESDIR}"/${PN}-2.6.0-redhat.patch
"${FILESDIR}"/${PN}-2.9.0-tfshark-libm.patch
"${FILESDIR}"/${PN}-99999999-androiddump-wsutil.patch
"${FILESDIR}"/${PN}-99999999-qtsvg.patch
"${FILESDIR}"/${PN}-99999999-ui-needs-wiretap.patch
)

pkg_setup() {
enewgroup wireshark
}

src_configure() {
local mycmakeargs

# Workaround bug #213705. If krb5-config --libs has -lcrypto then pass
# --with-ssl to ./configure. (Mimics code from acinclude.m4).
if use kerberos; then
case $(krb5-config --libs) in
*-lcrypto*)
ewarn "Kerberos was built with ssl support: linkage with openssl is enabled."
ewarn "Note there are annoying license incompatibilities between the OpenSSL"
ewarn "license and the GPL, so do your check before distributing such package."
mycmakeargs+=( -DENABLE_GNUTLS=$(usex ssl) )
;;
esac
fi

if use qt5; then
export QT_MIN_VERSION=5.3.0
append-cxxflags -fPIC -DPIC
fi

python_setup 'python3*'

mycmakeargs+=(
$(use androiddump && use pcap && echo -DEXTCAP_ANDROIDDUMP_LIBPCAP=yes)
$(usex qt5 LRELEASE=$(qt5_get_bindir)/lrelease '')
$(usex qt5 MOC=$(qt5_get_bindir)/moc '')
$(usex qt5 RCC=$(qt5_get_bindir)/rcc '')
$(usex qt5 UIC=$(qt5_get_bindir)/uic '')
-DBUILD_androiddump=$(usex androiddump)
-DBUILD_capinfos=$(usex capinfos)
-DBUILD_captype=$(usex captype)
-DBUILD_ciscodump=$(usex ciscodump)
-DBUILD_dftest=$(usex dftest)
-DBUILD_dpauxmon=$(usex dpauxmon)
-DBUILD_dumpcap=$(usex dumpcap)
-DBUILD_editcap=$(usex editcap)
-DBUILD_mergecap=$(usex mergecap)
-DBUILD_mmdbresolve=$(usex maxminddb)
-DBUILD_randpkt=$(usex randpkt)
-DBUILD_randpktdump=$(usex randpktdump)
-DBUILD_reordercap=$(usex reordercap)
-DBUILD_sdjournal=$(usex sdjournal)
-DBUILD_sharkd=$(usex sharkd)
-DBUILD_sshdump=$(usex sshdump)
-DBUILD_text2pcap=$(usex text2pcap)
-DBUILD_tfshark=$(usex tfshark)
-DBUILD_tshark=$(usex tshark)
-DBUILD_udpdump=$(usex udpdump)
-DBUILD_wireshark=$(usex qt5)
-DCMAKE_INSTALL_DOCDIR="${EROOT}/usr/share/doc/${PF}"
-DDISABLE_WERROR=yes
-DENABLE_BCG729=$(usex bcg729)
-DENABLE_CAP=$(usex filecaps caps)
-DENABLE_CARES=$(usex adns)
-DENABLE_GNUTLS=$(usex ssl)
-DENABLE_KERBEROS=$(usex kerberos)
-DENABLE_LIBXML2=$(usex libxml2)
-DENABLE_LUA=$(usex lua)
-DENABLE_LZ4=$(usex lz4)
-DENABLE_NETLINK=$(usex netlink)
-DENABLE_NGHTTP2=$(usex http2)
-DENABLE_PCAP=$(usex pcap)
-DENABLE_SBC=$(usex sbc)
-DENABLE_SMI=$(usex smi)
-DENABLE_SNAPPY=$(usex snappy)
-DENABLE_SPANDSP=$(usex spandsp)
-DENABLE_ZLIB=$(usex zlib)
)

cmake-utils_src_configure
}

src_test() {
cmake-utils_src_test
}

src_install() {
cmake-utils_src_install

# FAQ is not required as is installed from help/faq.txt
dodoc AUTHORS ChangeLog NEWS README* doc/randpkt.txt doc/README*

# install headers
insinto /usr/include/wireshark
doins ws_diag_control.h ws_symbol_export.h \
"${BUILD_DIR}"/config.h "${BUILD_DIR}"/version.h

local dir dirs=(
epan
epan/crypt
epan/dfilter
epan/dissectors
epan/ftypes
epan/wmem
wiretap
wsutil
)
for dir in "${dirs[@]}"
do
insinto /usr/include/wireshark/${dir}
doins ${dir}/*.h
done

#with the above this really shouldn't be needed, but things may be looking
# in wiretap/ instead of wireshark/wiretap/
insinto /usr/include/wiretap
doins wiretap/wtap.h

if use qt5; then
local s
for s in 16 32 48 64 128 256 512 1024; do
insinto /usr/share/icons/hicolor/${s}x${s}/apps
newins image/wsicon${s}.png wireshark.png
done
for s in 16 24 32 48 64 128 256 ; do
insinto /usr/share/icons/hicolor/${s}x${s}/mimetypes
newins image/WiresharkDoc-${s}.png application-vnd.tcpdump.pcap.png
done
fi
}

pkg_postinst() {
xdg_desktop_database_update
xdg_icon_cache_update
xdg_mimeinfo_database_update

# Add group for users allowed to sniff.
enewgroup wireshark
chgrp wireshark "${EROOT}"/usr/bin/dumpcap

if use dumpcap && use pcap; then
fcaps -o 0 -g wireshark -m 4710 -M 0710 \
cap_dac_read_search,cap_net_raw,cap_net_admin \
"${EROOT}"/usr/bin/dumpcap
fi

ewarn "NOTE: To capture traffic with wireshark as normal user you have to"
ewarn "add yourself to the wireshark group. This security measure ensures"
ewarn "that only trusted users are allowed to sniff your traffic."
}

pkg_postrm() {
xdg_desktop_database_update
xdg_icon_cache_update
xdg_mimeinfo_database_update
}

0 comments on commit d37b7f0

Please sign in to comment.