Index: src/modules/module-protocol-native.c
--- src/modules/module-protocol-native.c.orig
+++ src/modules/module-protocol-native.c
@@ -613,6 +613,8 @@ static struct client_data *client_new(struct server *s
 	socklen_t len;
 #if defined(__FreeBSD__) || defined(__MidnightBSD__)
 	struct xucred xucred;
+#elif defined(__OpenBSD__)
+	struct sockpeercred ucred;
 #else
 	struct ucred ucred;
 #endif
@@ -626,7 +628,7 @@ static struct client_data *client_new(struct server *s
 	if (props == NULL)
 		goto exit;
 
-#if defined(__linux__)
+#if defined(__linux__) || defined(__OpenBSD__)
 	len = sizeof(ucred);
 	if (getsockopt(fd, SOL_SOCKET, SO_PEERCRED, &ucred, &len) < 0) {
 		pw_log_warn("server %p: no peercred: %m", s);
