Date: Tue, 1 Oct 2002 14:21:43 -0400 (EDT) From: Craig Rodrigues <rodrigc@attbi.com> To: FreeBSD-gnats-submit@FreeBSD.org Cc: petef@FreeBSD.org Subject: ports/43564: net/iperf fixes for GCC 3.2 Message-ID: <200210011821.g91ILhuR031332@dibbler.ne.client2.attbi.com>
next in thread | raw e-mail | index | archive | help
>Number: 43564 >Category: ports >Synopsis: net/iperf fixes for GCC 3.2 >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-ports >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Oct 01 11:30:01 PDT 2002 >Closed-Date: >Last-Modified: >Originator: Craig Rodrigues >Release: FreeBSD 5.0-CURRENT i386 >Organization: >Environment: System: FreeBSD dibbler.ne.client2.attbi.com 5.0-CURRENT FreeBSD 5.0-CURRENT #2: Sun Sep 8 09:39:46 EDT 2002 rodrigc@dibbler.ne.client2.attbi.com:/usr/obj/usr/src/sys/MYKERNEL1 i386 >Description: C++ fixes for net/iperf. std::vector.erase() must take an argument of type iterator. >How-To-Repeat: >Fix: diff -urN ../iperf.orig/files/patch-cfg::Listener.hpp ./files/patch-cfg::Listener.hpp --- ../iperf.orig/files/patch-cfg::Listener.hpp Wed Dec 31 19:00:00 1969 +++ ./files/patch-cfg::Listener.hpp Tue Oct 1 13:56:36 2002 @@ -0,0 +1,10 @@ +--- src/Listener.hpp.orig Tue Oct 1 13:28:28 2002 ++++ src/Listener.hpp Tue Oct 1 13:28:38 2002 +@@ -15,6 +15,7 @@ + #include "PerfSocket.hpp" + #include "Thread.hpp" + #include <vector> ++using namespace std; + + /* ------------------------------------------------------------------- */ + class Listener : public PerfSocket, public Thread diff -urN ../iperf.orig/files/patch-cfg::PerfSocket_UDP.cpp ./files/patch-cfg::PerfSocket_UDP.cpp --- ../iperf.orig/files/patch-cfg::PerfSocket_UDP.cpp Wed Dec 31 19:00:00 1969 +++ ./files/patch-cfg::PerfSocket_UDP.cpp Tue Oct 1 13:56:50 2002 @@ -0,0 +1,19 @@ +--- src/PerfSocket_UDP.cpp.orig Tue Oct 1 13:27:15 2002 ++++ src/PerfSocket_UDP.cpp Tue Oct 1 13:44:30 2002 +@@ -375,11 +375,13 @@ + + extern vector<sockaddr_in> clients; + +- for (int i=0; i < (int)(clients).size(); i++) { +- sockaddr_in t1 = clients[i]; ++ vector<sockaddr_in>::iterator iter = clients.begin(); ++ ++ for (; iter != clients.end(); iter++) { ++ sockaddr_in t1 = *iter; + if ( ((long) t1.sin_addr.s_addr == (long) peer.sin_addr.s_addr) + && ( t1.sin_port == peer.sin_port)) { +- (clients).erase(&(clients[i])); ++ clients.erase(iter); + + return; + } >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200210011821.g91ILhuR031332>