diff options
Diffstat (limited to 'community/ucarp/02-fix-downscript-on-error.c')
-rw-r--r-- | community/ucarp/02-fix-downscript-on-error.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/community/ucarp/02-fix-downscript-on-error.c b/community/ucarp/02-fix-downscript-on-error.c new file mode 100644 index 000000000..08af568b4 --- /dev/null +++ b/community/ucarp/02-fix-downscript-on-error.c @@ -0,0 +1,12 @@ +--- ucarp-1.5.1.orig/src/carp.c ++++ ucarp-1.5.1/src/carp.c +@@ -843,6 +843,9 @@ + if ((pfds[0].revents & (POLLERR | POLLHUP)) != 0) { + logfile(LOG_ERR, _("exiting: pfds[0].revents = %d"), + pfds[0].revents); ++ if ((sc.sc_state != BACKUP) && (shutdown_at_exit != 0)) { ++ (void) spawn_handler(dev_desc_fd, downscript); ++ } + break; + } + if (gettimeofday(&now, NULL) != 0) { |