Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
OSX has a broken implementation of SOCK_SEQPACKET
Baptiste Daroussin committed 6 years ago
commit a7e9b058e721a54cc7136378c09834190f3e85c1
parent 4a68f78
1 file changed +8 -3
modified libpkg/utils.c
@@ -823,11 +823,16 @@ pkg_namecmp(struct pkg *a, struct pkg *b)
int
get_socketpair(int *pipe)
{
-
	int st = SOCK_STREAM;
+
	int r;

#ifdef HAVE_DECL_SOCK_SEQPACKET
-
	st = SOCK_SEQPACKET;
+
	r = socketpair(AF_LOCAL, SOCK_SEQPACKET, 0, pipe);
+
	if (r == -1) {
+
		r = socketpair(AF_LOCAL, SOCK_DGRAM, 0, pipe);
+
	}
+
#else
+
	r = socketpair(AF_LOCAL, SOCK_DGRAM, 0, pipe);
#endif

-
	return (socketpair(AF_UNIX, st, 0, pipe));
+
	return (r);
}