summary refs log tree commit diff homepage
diff options
context:
space:
mode:
-rw-r--r--server.c16
1 files changed, 4 insertions, 12 deletions
diff --git a/server.c b/server.c
index 0a8f365..89ba03c 100644
--- a/server.c
+++ b/server.c
@@ -338,11 +338,8 @@ int main() {
 	int kq = kqueue();
 	if (kq < 0) err(EX_OSERR, "kqueue");
 
-	struct kevent event = {
-		.ident = server,
-		.filter = EVFILT_READ,
-		.flags = EV_ADD,
-	};
+	struct kevent event;
+	EV_SET(&event, server, EVFILT_READ, EV_ADD, 0, 0, 0);
 	int nevents = kevent(kq, &event, 1, NULL, 0, NULL);
 	if (nevents < 0) err(EX_OSERR, "kevent");
 
@@ -361,12 +358,7 @@ int main() {
 
 			struct Client *client = clientAdd(fd);
 
-			struct kevent event = {
-				.ident = fd,
-				.filter = EVFILT_READ,
-				.flags = EV_ADD,
-				.udata = client,
-			};
+			EV_SET(&event, fd, EVFILT_READ, EV_ADD, 0, 0, client);
 			nevents = kevent(kq, &event, 1, NULL, 0, NULL);
 			if (nevents < 0) err(EX_IOERR, "kevent");
 
@@ -375,7 +367,7 @@ int main() {
 			continue;
 		}
 
-		struct Client *client = event.udata;
+		struct Client *client = (struct Client *)event.udata;
 		if (event.flags & EV_EOF) {
 			clientRemove(client);
 			continue;