Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12:Update
pacemaker.9287
pacemaker-services-sigpipe-default.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File pacemaker-services-sigpipe-default.patch of Package pacemaker.9287
commit e3aa0b293611b41713a343e0b4f19160fd8d6bc7 Author: David Vossel <dvossel@redhat.com> Date: Mon Aug 11 14:12:41 2014 -0500 Low: services: restore SIGPIPE default behavior for child processes Commands in OCF scripts behave slightly differently when SIGPIPE is ignored versus when SIGPIPE is handled by the default behavior. It is best to launch OCF scripts without SIGPIPE being ignored by the environment, and let the scripts themselves handle SIGPIPE however they want. diff --git a/lib/services/services_linux.c b/lib/services/services_linux.c index ec5c328..dd7bb64 100644 --- a/lib/services/services_linux.c +++ b/lib/services/services_linux.c @@ -435,6 +435,14 @@ services_os_action_execute(svc_action_t * op, gboolean synchronous) return FALSE; } case 0: /* Child */ + + /* SIGPIPE is ignored (which is different from signal blocking) by the gnutls library. + * Depending on the libqb version in use, libqb may set SIGPIPE to be ignored as well. + * We do not want this to be inherited by the child process. By resetting this the signal + * to the default behavior, we avoid some potential odd problems that occur during OCF + * scripts when SIGPIPE is ignored by the environment. */ + signal(SIGPIPE, SIG_DFL); + #if defined(HAVE_SCHED_SETSCHEDULER) if (sched_getscheduler(0) != SCHED_OTHER) { struct sched_param sp;
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor