ports/78574: [MAINTAINER] comms/echolinux: [SUMMARIZE CHANGES]
Diane Bruce
db at db.net
Tue Mar 8 05:50:03 UTC 2005
>Number: 78574
>Category: ports
>Synopsis: [MAINTAINER] comms/echolinux: [SUMMARIZE CHANGES]
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: maintainer-update
>Submitter-Id: current-users
>Arrival-Date: Tue Mar 08 05:50:02 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator: Diane Bruce
>Release: FreeBSD 5.3-STABLE i386
>Organization:
>Environment:
System: FreeBSD night.dbn 5.3-STABLE FreeBSD 5.3-STABLE #5: Sat Nov 20 15:12:34 EST 2004
>Description:
[DESCRIBE CHANGES]
Generated with FreeBSD Port Tools 0.63
Bug in code meant it would timeout as it would not reply to a
"heartbeat" check. There is no way the original linux version would work
properly without this code. Original programmer will be contacted, meanwhile,
this gets the FreeBSD version working..
>How-To-Repeat:
>Fix:
--- echolinux-0.16a_2.patch begins here ---
diff -ruN --exclude=CVS /usr/ports/comms/echolinux/Makefile /usr/ports/comms/fixed_echolinux/echolinux/Makefile
--- /usr/ports/comms/echolinux/Makefile Mon Nov 15 18:17:54 2004
+++ /usr/ports/comms/fixed_echolinux/echolinux/Makefile Sun Mar 6 00:52:34 2005
@@ -7,7 +7,7 @@
PORTNAME= echolinux
PORTVERSION= 0.16a
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= comms
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= cqinet
diff -ruN --exclude=CVS /usr/ports/comms/echolinux/files/patch-echolinux_control.c /usr/ports/comms/fixed_echolinux/echolinux/files/patch-echolinux_control.c
--- /usr/ports/comms/echolinux/files/patch-echolinux_control.c Sun Jul 4 19:28:32 2004
+++ /usr/ports/comms/fixed_echolinux/echolinux/files/patch-echolinux_control.c Mon Mar 7 15:53:15 2005
@@ -1,5 +1,14 @@
--- echolinux/control.c.orig Mon Feb 2 22:29:46 2004
-+++ echolinux/control.c Fri Jul 2 00:58:38 2004
++++ echolinux/control.c Mon Mar 7 15:52:46 2005
+@@ -13,7 +13,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <sys/ioctl.h>
+-#include <linux/soundcard.h>
++#include <sys/soundcard.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <sys/ioctl.h>
@@ -24,7 +24,8 @@
#include <arpa/inet.h>
#include <netdb.h>
@@ -10,3 +19,76 @@
#include <signal.h>
#include <string.h>
#include <sys/time.h>
+@@ -354,7 +355,7 @@
+ timeout.tv_sec = 10;
+ timeout.tv_usec = 0;
+ }
+-
++
+ if((i == 0) && (audioPid > 0)){ // timeout & connected
+ connectTimeout++;
+ if(connectTimeout == CONNECT_TRY){
+@@ -388,28 +389,32 @@
+ disconnect(FALSE);
+ }
+ if(isRTCPSdespacket(inBuffer, length)){
+- if((audioPid > 0) &&
+- (inAddr.sin_addr.s_addr == destAddr.sin_addr.s_addr)){
+- sdesItems.nitems = 1;
+- sdesItems.item[0].r_item = RTCP_SDES_NAME;
+- sdesItems.item[0].r_text = NULL;
+- remoteName[0] = 0;
+- parseSDES(inBuffer, &sdesItems);
+- if(sdesItems.item[0].r_text != NULL){
+- copySDESitem(sdesItems.item[0].r_text, &remoteName[2]);
+- }
+- remoteName[0] = CONNECT;
+- remoteName[1] = ' ';
+- puts(remoteName);
+- if(atemptingConnect){
+- atemptingConnect = 0;
+- fputs("P connect.wav\n", audioOutFd);
+- fputs("I\n", audioOutFd);
+- }
+- connectTimeout = 0; // reset the counter
+- }
+- else {
+- if(audioPid<=0){
++ if (audioPid > 0) {
++ sendto(outControlSocket,
++ *sdesPacket,
++ sdesLength,
++ 0,
++ (struct sockaddr *)&destAddr,
++ sizeof destAddr);
++ if(inAddr.sin_addr.s_addr == destAddr.sin_addr.s_addr){
++ sdesItems.nitems = 1;
++ sdesItems.item[0].r_item = RTCP_SDES_NAME;
++ sdesItems.item[0].r_text = NULL;
++ remoteName[0] = 0;
++ parseSDES(inBuffer, &sdesItems);
++ if(sdesItems.item[0].r_text != NULL){
++ copySDESitem(sdesItems.item[0].r_text, &remoteName[2]);
++ }
++ remoteName[0] = CONNECT;
++ remoteName[1] = ' ';
++ puts(remoteName);
++ if(atemptingConnect){
++ atemptingConnect = 0;
++ fputs("P connect.wav\n", audioOutFd);
++ fputs("I\n", audioOutFd);
++ }
++ connectTimeout = 0; // reset the counter
++ } else { /* audioPid <= 0 */
+ sdesItems.nitems = 1;
+ sdesItems.item[0].r_item = RTCP_SDES_NAME;
+ sdesItems.item[0].r_text = NULL;
+@@ -424,8 +429,6 @@
+ makeConnection(inet_ntoa(inAddr.sin_addr));
+ fputs("P connect.wav\n", audioOutFd);
+ fputs("I\n", audioOutFd);
+- }
+- else {
+ }
+ }
+ }
--- echolinux-0.16a_2.patch ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list