From: Zdeněk Salvet Date: Wed, 1 Feb 2006 10:08:58 +0000 (+0000) Subject: Minimal fix for bug #14766 (common code merger would be better but very X-Git-Tag: glite-lb-common_R_3_0_3~2 X-Git-Url: http://scientific.zcu.cz/git/?a=commitdiff_plain;h=e5bd07fccf7a1d1f85201eb93fca714d06c052af;p=jra1mw.git Minimal fix for bug #14766 (common code merger would be better but very large change). Patchlevel incremented. --- diff --git a/org.glite.lb.common/project/version.properties b/org.glite.lb.common/project/version.properties index df681cf..a6d696b 100644 --- a/org.glite.lb.common/project/version.properties +++ b/org.glite.lb.common/project/version.properties @@ -1,4 +1,4 @@ #Fri Sep 02 14:17:07 CEST 2005 -module.version=3.0.2 +module.version=3.0.3 module.build=2 module.age=1 diff --git a/org.glite.lb.common/src/lb_plain_io.c b/org.glite.lb.common/src/lb_plain_io.c index 92bbf2b..7d0c63a 100644 --- a/org.glite.lb.common/src/lb_plain_io.c +++ b/org.glite.lb.common/src/lb_plain_io.c @@ -2,6 +2,7 @@ #include #include #include +#include #include #include #include @@ -173,7 +174,11 @@ int edg_wll_plain_write_full( int ct = -1; fd_set fds; struct timeval timeout, before, after; + struct sigaction sa,osa; + memset(&sa,0,sizeof(sa)); assert(sa.sa_handler == NULL); + sa.sa_handler = SIG_IGN; + sigaction(SIGPIPE,&sa,&osa); if ( to ) { memcpy(&timeout, to, sizeof(timeout)); @@ -204,5 +209,7 @@ end: if (to->tv_sec < 0) to->tv_sec = to->tv_usec = 0; } + sigaction(SIGPIPE,&osa,NULL); + if (errno == EPIPE) errno = ENOTCONN; return (errno)? -1: written; }