-/* $OpenBSD: dispatch.h,v 1.7 2001/12/20 22:50:24 djm Exp $ */
+/* $OpenBSD: dispatch.h,v 1.11 2006/04/20 09:27:09 djm Exp $ */
/*
* Copyright (c) 2000 Markus Friedl. All rights reserved.
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+
+#include <signal.h>
+
enum {
DISPATCH_BLOCK,
DISPATCH_NONBLOCK
};
-typedef void dispatch_fn(int, int, u_int32_t, void *);
+typedef void dispatch_fn(int, u_int32_t, void *);
void dispatch_init(dispatch_fn *);
void dispatch_set(int, dispatch_fn *);
-void dispatch_run(int, int *, void *);
-void dispatch_protocol_error(int, int, u_int32_t, void *);
+void dispatch_range(u_int, u_int, dispatch_fn *);
+void dispatch_run(int, volatile sig_atomic_t *, void *);
+void dispatch_protocol_error(int, u_int32_t, void *);
+void dispatch_protocol_ignore(int, u_int32_t, void *);