From: Alan T. DeKok Date: Thu, 8 Dec 2016 14:05:47 +0000 (-0500) Subject: move EV_ADD etc. to macro X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1944ad4ddc8389db0afdcf51c435a76a38561e18;p=thirdparty%2Ffreeradius-server.git move EV_ADD etc. to macro and add EV_CLEAR. Which (magically) now seems to work --- diff --git a/src/util/channel.c b/src/util/channel.c index 2cd81bcea74..e70a1345471 100644 --- a/src/util/channel.c +++ b/src/util/channel.c @@ -115,13 +115,18 @@ typedef struct fr_channel_t { } fr_channel_t; +/* + * To make debugging easier... + */ +#define EV_FLAG (EV_ADD | EV_CLEAR) + static int fr_channel_add_kevent_worker(struct kevent *kev, int size) { if (size < 3) return -1; - EV_SET(&kev[0], FR_CHANNEL_SIGNAL_OPEN, EVFILT_USER, EV_ADD, NOTE_FFNOP, 0, NULL); - EV_SET(&kev[1], FR_CHANNEL_SIGNAL_CLOSE, EVFILT_USER, EV_ADD, NOTE_FFNOP, 0, NULL); - EV_SET(&kev[2], FR_CHANNEL_SIGNAL_DATA_TO_WORKER, EVFILT_USER, EV_ADD, NOTE_FFNOP, 0, NULL); + EV_SET(&kev[0], FR_CHANNEL_SIGNAL_OPEN, EVFILT_USER, EV_FLAG, NOTE_FFNOP, 0, NULL); + EV_SET(&kev[1], FR_CHANNEL_SIGNAL_CLOSE, EVFILT_USER, EV_FLAG, NOTE_FFNOP, 0, NULL); + EV_SET(&kev[2], FR_CHANNEL_SIGNAL_DATA_TO_WORKER, EVFILT_USER, EV_FLAG, NOTE_FFNOP, 0, NULL); return 3; } @@ -131,9 +136,9 @@ static int fr_channel_add_kevent_receiver(struct kevent *kev, int size) { if (size < 3) return -1; - EV_SET(&kev[0], FR_CHANNEL_SIGNAL_WORKER_SLEEPING, EVFILT_USER, EV_ADD, NOTE_FFNOP, 0, NULL); - EV_SET(&kev[1], FR_CHANNEL_SIGNAL_CLOSE, EVFILT_USER, EV_ADD, NOTE_FFNOP, 0, NULL); - EV_SET(&kev[2], FR_CHANNEL_SIGNAL_DATA_FROM_WORKER, EVFILT_USER, EV_ADD, NOTE_FFNOP, 0, NULL); + EV_SET(&kev[0], FR_CHANNEL_SIGNAL_WORKER_SLEEPING, EVFILT_USER, EV_FLAG, NOTE_FFNOP, 0, NULL); + EV_SET(&kev[1], FR_CHANNEL_SIGNAL_CLOSE, EVFILT_USER, EV_FLAG, NOTE_FFNOP, 0, NULL); + EV_SET(&kev[2], FR_CHANNEL_SIGNAL_DATA_FROM_WORKER, EVFILT_USER, EV_FLAG, NOTE_FFNOP, 0, NULL); return 3; }