Index: provider/libserver/ECSession.cpp
--- provider/libserver/ECSession.cpp.orig
+++ provider/libserver/ECSession.cpp
@@ -46,6 +46,10 @@
 #include <kcoidc.h>
 #endif
 
+#if defined(__OpenBSD__)
+#include <signal.h>
+#endif
+
 #define WHITESPACE " \t\n\r"
 
 namespace KC {
@@ -565,6 +569,8 @@ ECAuthSession::~ECAuthSession()
 		close(m_stderr);
 	}
 
+// XXX no sigtimedwait() on OpenBSD
+#if !defined(__OpenBSD__)
 	// wait for SIGCHLD from child process with a 60 second timeout.
 	sigset_t mask;
 	sigset_t orig_mask;
@@ -607,6 +613,7 @@ ECAuthSession::~ECAuthSession()
 		}
 		break;
 	}
+#endif
 
 	waitpid(m_NTLM_pid, &status, 0);
 	if (status == -1) {
