From e5bd07fccf7a1d1f85201eb93fca714d06c052af Mon Sep 17 00:00:00 2001 From: =?utf8?q?Zden=C4=9Bk=20Salvet?= Date: Wed, 1 Feb 2006 10:08:58 +0000 Subject: [PATCH] Minimal fix for bug #14766 (common code merger would be better but very large change). Patchlevel incremented. --- org.glite.lb.common/project/version.properties | 2 +- org.glite.lb.common/src/lb_plain_io.c | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) 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; } -- 1.8.2.3