Mon, 28 Jan 2013 17:37:18 +0100
Correct socket error reporting improvement with IPv6 portable code,
after helpful recommendation by Saúl Ibarra Corretgé on OSips devlist.
1 Index: mutex/mut_fcntl.c
2 --- mutex/mut_fcntl.c.orig 2008-01-08 21:58:43 +0100
3 +++ mutex/mut_fcntl.c 2008-05-26 22:36:45 +0200
4 @@ -84,7 +84,7 @@
6 /* Acquire an exclusive kernel lock. */
7 k_lock.l_type = F_WRLCK;
8 - if (fcntl(env->lockfhp->fd, F_SETLKW, &k_lock))
9 + if (fcntl(env->lockfhp->fd, F_SETLKW, &k_lock) == -1)
10 goto err;
12 /* If the resource is still available, it's ours. */
13 @@ -97,7 +97,7 @@
15 /* Release the kernel lock. */
16 k_lock.l_type = F_UNLCK;
17 - if (fcntl(env->lockfhp->fd, F_SETLK, &k_lock))
18 + if (fcntl(env->lockfhp->fd, F_SETLK, &k_lock) == -1)
19 goto err;
21 /*
22 Index: os/os_open.c
23 --- os/os_open.c.orig 2008-03-26 05:11:35 +0100
24 +++ os/os_open.c 2008-05-26 22:36:05 +0200
25 @@ -67,7 +67,7 @@
26 if (LF_ISSET(DB_OSO_EXCL))
27 oflags |= O_EXCL;
29 -#ifdef HAVE_O_DIRECT
30 +#if defined(HAVE_O_DIRECT) && defined(__FreeBSD__)
31 if (LF_ISSET(DB_OSO_DIRECT))
32 oflags |= O_DIRECT;
33 #endif