From 736680b96c87f1c12b91b0f010b7ce569a96dc1a Mon Sep 17 00:00:00 2001 From: Jeroen Roovers Date: Wed, 8 Jan 2020 09:16:36 +0100 Subject: net-analyzer/ethloop: EAPI=7, fix more compiler warnings Package-Manager: Portage-2.3.84, Repoman-2.3.20 Signed-off-by: Jeroen Roovers --- net-analyzer/ethloop/ethloop-10-r4.ebuild | 27 ++++++++++ net-analyzer/ethloop/files/ethloop-10-misc.patch | 65 ++++++++++++++++++++++++ 2 files changed, 92 insertions(+) create mode 100644 net-analyzer/ethloop/ethloop-10-r4.ebuild create mode 100644 net-analyzer/ethloop/files/ethloop-10-misc.patch diff --git a/net-analyzer/ethloop/ethloop-10-r4.ebuild b/net-analyzer/ethloop/ethloop-10-r4.ebuild new file mode 100644 index 000000000000..4067bea8c944 --- /dev/null +++ b/net-analyzer/ethloop/ethloop-10-r4.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit toolchain-funcs + +DESCRIPTION="Local simulator for testing Linux QoS disciplines" +HOMEPAGE="http://luxik.cdi.cz/~devik/qos/ethloop/" +SRC_URI="http://luxik.cdi.cz/~devik/qos/${PN}/${PN}${PV}.tgz" + +LICENSE="all-rights-reserved" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +RESTRICT="mirror bindist" + +S=${WORKDIR}/${PN} +PATCHES=( + "${FILESDIR}"/${P}-misc.patch +) + +src_compile() { + emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" +} + +src_install() { + dosbin ethloop +} diff --git a/net-analyzer/ethloop/files/ethloop-10-misc.patch b/net-analyzer/ethloop/files/ethloop-10-misc.patch new file mode 100644 index 000000000000..a866386a7006 --- /dev/null +++ b/net-analyzer/ethloop/files/ethloop-10-misc.patch @@ -0,0 +1,65 @@ +--- a/ethloop.c ++++ b/ethloop.c +@@ -1,5 +1,7 @@ + /* vim: cin sw=4 ts=4 + */ ++#include /* htons() */ ++#include /* recv() */ + #include + #include + #include +@@ -13,6 +15,7 @@ + #include + #include + #include ++#include + + int sock; + +@@ -133,11 +136,11 @@ + int recv_raw(int tmo) + { + struct pollfd pf = {sock,POLLIN,0}; +- int r; unsigned short proto; ++ ssize_t r; + if(poll(&pf,1,tmo) <= 0) return 0; +- r = recv(sock,&buf,1550,0); ++ r = recv(sock,&buf,sizeof(buf),0); + if (r <= 0) { +- printf("error recv (%d)\n",r); ++ printf("error recv (%ld)\n",r); + return 0; + } + if (ntohs(buf.proto) != ETH_P_CUST) { +@@ -239,10 +242,10 @@ + } + } + +-main(int c,char *av[]) ++int main(int c,char *av[]) + { +- unsigned long av_k1=0,av_k2=0,t_k1=0,t_k2=0; +- unsigned long av_k3=0,av_k4=0,t_k3=0,t_k4=0; ++ unsigned long av_k1=0,av_k2=0; ++ unsigned long av_k3=0,av_k4=0; + int x,tmo,flow,diff,lcheck = 0,lwrite = 0,i,n; + struct flowtab *fp; + sock = socket(PF_PACKET,SOCK_RAW,htons(ETH_P_ALL)); +@@ -309,7 +312,7 @@ + /* write stats every .5 second */ + if (us - ALIGN(lwrite,LOGTIME) < LOGTIME) continue; + lwrite = us; +- fprintf(stderr,"store %d at %d ms\n",slog_cnt,us/1000); ++ fprintf(stderr,"store %d at %ld ms\n",slog_cnt,us/1000); + for (fp = ftab,i=0;iav_delay[i] = fp->av_delay/EWMAC; +@@ -338,7 +341,7 @@ + printf("%d.%d",(i+1)/2,(i&1)?0:5); + for (flow = 0; flow <= maxflow; flow++) { + fp = ftab + flow; +- printf(" %d %d %d %d",stp->av_wrate[flow], ++ printf(" %ld %ld %ld %ld",stp->av_wrate[flow], + stp->av_rate[flow], stp->av_delay[flow]/1000, + stp->av_jitter[flow]); + } -- cgit v1.2.3-65-gdbad