Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 29 Dec 2012 05:40:00 GMT
From:      dfilter@FreeBSD.ORG (dfilter service)
To:        gnome@FreeBSD.org
Subject:   Re: ports/171616: commit references a PR
Message-ID:  <201212290540.qBT5e0Mq076163@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR ports/171616; it has been noted by GNATS.

From: dfilter@FreeBSD.ORG (dfilter service)
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/171616: commit references a PR
Date: Sat, 29 Dec 2012 05:39:31 +0000 (UTC)

 Author: mezz
 Date: Sat Dec 29 05:39:23 2012
 New Revision: 309607
 URL: http://svnweb.freebsd.org/changeset/ports/309607
 
 Log:
   The libesd use hardcoded socket-io timeout = 100ms. This is too small for
   slow WIFI connections and sound servers on Windows. It has been solved by
   the Debian team. Patch was created by Konstantin Khlebnikov. Bump the
   PORTREVISION.
   
   PR:		ports/171616
   Submitted by:	Gabor Fischer <Gabor.Fischer@gmx.net>
   Obtained from:	http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=637064
 
 Added:
   head/audio/esound/files/patch-esound-increase-timeouts   (contents, props changed)
 Modified:
   head/audio/esound/Makefile   (contents, props changed)
 
 Modified: head/audio/esound/Makefile
 ==============================================================================
 --- head/audio/esound/Makefile	Sat Dec 29 05:29:56 2012	(r309606)
 +++ head/audio/esound/Makefile	Sat Dec 29 05:39:23 2012	(r309607)
 @@ -8,6 +8,7 @@
  
  PORTNAME=	esound
  PORTVERSION=	0.2.41
 +PORTREVISION=	1
  CATEGORIES=	audio
  MASTER_SITES=	GNOME
  DIST_SUBDIR=	gnome
 
 Added: head/audio/esound/files/patch-esound-increase-timeouts
 ==============================================================================
 --- /dev/null	00:00:00 1970	(empty, because file is newly added)
 +++ head/audio/esound/files/patch-esound-increase-timeouts	Sat Dec 29 05:39:23 2012	(r309607)
 @@ -0,0 +1,62 @@
 +libesd cannot connect to server if it work on slow hardware and/or on windows due to
 +extremely small default read/write timeout = 100ms This patch increases them up to 300ms.
 +
 +--- esdlib.c.org	2008-11-18 23:35:19.000000000 +0300
 ++++ esdlib.c	2011-04-29 21:58:56.698001331 +0400
 +@@ -30,6 +30,11 @@
 +                      + strlen ((ptr)->sun_path))
 + #endif
 + 
 ++#define TCP_CONNECT_TIMEOUT	1000
 ++#define UNIX_CONNECT_TIMEOUT	100
 ++#define SOCKET_READ_TIMEOUT	300
 ++#define SOCKET_WRITE_TIMEOUT	300
 ++
 + /*******************************************************************/
 + /* prototypes */
 + int esd_set_socket_buffers( int sock, int src_format, 
 +@@ -89,7 +94,7 @@
 + 	
 + 	do {
 + 		pfd[0].revents = 0;
 +-		rv = poll (pfd, 1, 100);
 ++		rv = poll (pfd, 1, SOCKET_READ_TIMEOUT);
 + 	} while (rv == -1 && (errno == EINTR || errno == EAGAIN));
 + 	
 + 	if (rv < 1 || !(pfd[0].revents & POLLIN)) {
 +@@ -137,7 +142,7 @@
 + 		
 + 		do {
 + 			pfd[0].revents = 0;
 +-			rv = poll (pfd, 1, 100);
 ++			rv = poll (pfd, 1, SOCKET_WRITE_TIMEOUT);
 + 		} while (rv == -1 && (errno == EINTR || errno == EAGAIN));
 + 		
 + 		if (rv < 1 || (pfd[0].revents & (POLLERR | POLLHUP | POLLOUT)) != POLLOUT) {
 +@@ -641,7 +646,7 @@
 +            goto error_out;
 +          }
 + 
 +-         if ( connect_timeout ( socket_out, res->ai_addr, res->ai_addrlen, 1000 ) != -1 ) 
 ++         if ( connect_timeout ( socket_out, res->ai_addr, res->ai_addrlen, TCP_CONNECT_TIMEOUT ) != -1 ) 
 +            break;
 + 
 +          close ( socket_out );
 +@@ -727,7 +732,7 @@
 +   
 +     if ( connect_timeout ( socket_out,
 + 			   (struct sockaddr *) &socket_addr,
 +-			   sizeof(struct sockaddr_in), 1000 ) < 0 )
 ++			   sizeof(struct sockaddr_in), TCP_CONNECT_TIMEOUT ) < 0 )
 + 	goto error_out;
 + 
 +     }
 +@@ -779,7 +784,7 @@
 +     socket_unix.sun_family = AF_UNIX;
 +     strncpy(socket_unix.sun_path, ESD_UNIX_SOCKET_NAME, sizeof(socket_unix.sun_path));
 +   
 +-    if ( connect_timeout ( socket_out, (struct sockaddr *) &socket_unix, SUN_LEN(&socket_unix), 100 ) < 0 )
 ++    if ( connect_timeout ( socket_out, (struct sockaddr *) &socket_unix, SUN_LEN(&socket_unix), UNIX_CONNECT_TIMEOUT ) < 0 )
 + 	goto error_out;
 +   
 +     return socket_out;
 _______________________________________________
 svn-ports-all@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/svn-ports-all
 To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201212290540.qBT5e0Mq076163>