Page MenuHomeFreeBSD

D13538.id36748.diff
No OneTemporary

D13538.id36748.diff

Index: contrib/sendmail/include/sm/os/sm_os_freebsd.h
===================================================================
--- contrib/sendmail/include/sm/os/sm_os_freebsd.h
+++ contrib/sendmail/include/sm/os/sm_os_freebsd.h
@@ -34,7 +34,7 @@
# define SM_CONF_SHM 1
#endif /* SM_CONF_SHM */
#ifndef SM_CONF_SEM
-# define SM_CONF_SEM 1
+# define SM_CONF_SEM 2
#endif /* SM_CONF_SEM */
#ifndef SM_CONF_MSG
# define SM_CONF_MSG 1
Index: lib/libc/gen/semctl.c
===================================================================
--- lib/libc/gen/semctl.c
+++ lib/libc/gen/semctl.c
@@ -34,6 +34,7 @@
#ifndef NO_COMPAT7
#define _WANT_SEMUN_OLD
#endif
+#define _WANT_SEMUN
#include <sys/types.h>
#include <sys/ipc.h>
Index: lib/libc/sys/msgctl.2
===================================================================
--- lib/libc/sys/msgctl.2
+++ lib/libc/sys/msgctl.2
@@ -63,8 +63,8 @@
.Bd -literal
struct msqid_ds {
struct ipc_perm msg_perm; /* msg queue permission bits */
- struct msg *msg_first; /* first message in the queue */
- struct msg *msg_last; /* last message in the queue */
+ struct msg *kmsg_first; /* kernel data, don't use */
+ struct msg *kmsg_last; /* kernel data, don't use */
msglen_t msg_cbytes; /* number of bytes in use on the queue */
msgqnum_t msg_qnum; /* number of msgs in the queue */
msglen_t msg_qbytes; /* max # of bytes on the queue */
Index: lib/libc/sys/semctl.2
===================================================================
--- lib/libc/sys/semctl.2
+++ lib/libc/sys/semctl.2
@@ -145,7 +145,7 @@
.Bd -literal
struct semid_ds {
struct ipc_perm sem_perm; /* operation permission struct */
- struct sem *sem_base; /* pointer to first semaphore in set */
+ struct sem *ksem_base; /* kernel data, don't use */
u_short sem_nsems; /* number of sems in set */
time_t sem_otime; /* last operation time */
time_t sem_ctime; /* last change time */
Index: sys/compat/freebsd32/freebsd32_ipc.h
===================================================================
--- sys/compat/freebsd32/freebsd32_ipc.h
+++ sys/compat/freebsd32/freebsd32_ipc.h
@@ -43,7 +43,7 @@
struct semid_ds32 {
struct ipc_perm32 sem_perm;
- uint32_t sem_base;
+ uint32_t ksem_base;
unsigned short sem_nsems;
int32_t sem_otime;
int32_t sem_ctime;
@@ -57,8 +57,8 @@
struct msqid_ds32 {
struct ipc_perm32 msg_perm;
- uint32_t msg_first;
- uint32_t msg_last;
+ uint32_t kmsg_first;
+ uint32_t kmsg_last;
uint32_t msg_cbytes;
uint32_t msg_qnum;
uint32_t msg_qbytes;
@@ -111,7 +111,7 @@
struct semid_ds32_old {
struct ipc_perm32_old sem_perm;
- uint32_t sem_base;
+ uint32_t ksem_base;
unsigned short sem_nsems;
int32_t sem_otime;
int32_t sem_pad1;
@@ -122,8 +122,8 @@
struct msqid_ds32_old {
struct ipc_perm32_old msg_perm;
- uint32_t msg_first;
- uint32_t msg_last;
+ uint32_t kmsg_first;
+ uint32_t kmsg_last;
uint32_t msg_cbytes;
uint32_t msg_qnum;
uint32_t msg_qbytes;
Index: sys/compat/linux/linux_ipc.c
===================================================================
--- sys/compat/linux/linux_ipc.c
+++ sys/compat/linux/linux_ipc.c
@@ -160,8 +160,8 @@
struct l_msqid_ds {
struct l_ipc_perm msg_perm;
- l_uintptr_t msg_first; /* first message on queue,unused */
- l_uintptr_t msg_last; /* last message in queue,unused */
+ l_uintptr_t kmsg_first; /* first message on queue,unused */
+ l_uintptr_t kmsg_last; /* last message in queue,unused */
l_time_t msg_stime; /* last msgsnd time */
l_time_t msg_rtime; /* last msgrcv time */
l_time_t msg_ctime; /* last change time */
@@ -178,7 +178,7 @@
struct l_ipc_perm sem_perm;
l_time_t sem_otime;
l_time_t sem_ctime;
- l_uintptr_t sem_base;
+ l_uintptr_t ksem_base;
l_uintptr_t sem_pending;
l_uintptr_t sem_pending_last;
l_uintptr_t undo;
Index: sys/i386/ibcs2/ibcs2_ipc.h
===================================================================
--- sys/i386/ibcs2/ibcs2_ipc.h
+++ sys/i386/ibcs2/ibcs2_ipc.h
@@ -45,8 +45,8 @@
struct ibcs2_msqid_ds {
struct ibcs2_ipc_perm msg_perm;
- struct msg *msg_first;
- struct msg *msg_last;
+ struct msg *kmsg_first;
+ struct msg *kmsg_last;
u_short msg_cbytes;
u_short msg_qnum;
u_short msg_qbytes;
@@ -59,7 +59,7 @@
struct ibcs2_semid_ds {
struct ibcs2_ipc_perm sem_perm;
- struct ibcs2_sem *sem_base;
+ struct ibcs2_sem *ksem_base;
u_short sem_nsems;
ibcs2_time_t sem_otime;
ibcs2_time_t sem_ctime;
Index: sys/i386/ibcs2/ibcs2_ipc.c
===================================================================
--- sys/i386/ibcs2/ibcs2_ipc.c
+++ sys/i386/ibcs2/ibcs2_ipc.c
@@ -74,8 +74,8 @@
struct ibcs2_msqid_ds *ibp;
{
cvt_perm2iperm(&bp->msg_perm, &ibp->msg_perm);
- ibp->msg_first = bp->msg_first;
- ibp->msg_last = bp->msg_last;
+ ibp->kmsg_first = bp->kmsg_first;
+ ibp->kmsg_last = bp->kmsg_last;
ibp->msg_cbytes = (u_short)bp->msg_cbytes;
ibp->msg_qnum = (u_short)bp->msg_qnum;
ibp->msg_qbytes = (u_short)bp->msg_qbytes;
@@ -93,8 +93,8 @@
struct msqid_ds *bp;
{
cvt_iperm2perm(&ibp->msg_perm, &bp->msg_perm);
- bp->msg_first = ibp->msg_first;
- bp->msg_last = ibp->msg_last;
+ bp->kmsg_first = ibp->kmsg_first;
+ bp->kmsg_last = ibp->kmsg_last;
bp->msg_cbytes = ibp->msg_cbytes;
bp->msg_qnum = ibp->msg_qnum;
bp->msg_qbytes = ibp->msg_qbytes;
@@ -284,7 +284,7 @@
struct ibcs2_semid_ds *ibp;
{
cvt_perm2iperm(&bp->sem_perm, &ibp->sem_perm);
- ibp->sem_base = (struct ibcs2_sem *)bp->sem_base;
+ ibp->ksem_base = (struct ibcs2_sem *)bp->ksem_base;
ibp->sem_nsems = bp->sem_nsems;
ibp->sem_otime = bp->sem_otime;
ibp->sem_ctime = bp->sem_ctime;
@@ -297,7 +297,7 @@
struct semid_ds *bp;
{
cvt_iperm2perm(&ibp->sem_perm, &bp->sem_perm);
- bp->sem_base = (struct sem *)ibp->sem_base;
+ bp->ksem_base = (struct sem *)ibp->ksem_base;
bp->sem_nsems = ibp->sem_nsems;
bp->sem_otime = ibp->sem_otime;
bp->sem_ctime = ibp->sem_ctime;
Index: sys/kern/sysv_msg.c
===================================================================
--- sys/kern/sysv_msg.c
+++ sys/kern/sysv_msg.c
@@ -425,7 +425,7 @@
msqkptr->cred = NULL;
/* Free the message headers */
- msghdr = msqkptr->u.msg_first;
+ msghdr = msqkptr->u.kmsg_first;
while (msghdr != NULL) {
struct msg *msghdr_tmp;
@@ -573,7 +573,7 @@
* thread cannot free a certain msghdr. The msq will get
* into an inconsistent state.
*/
- for (msghdr = msqkptr->u.msg_first; msghdr != NULL;
+ for (msghdr = msqkptr->u.kmsg_first; msghdr != NULL;
msghdr = msghdr->msg_next) {
error = mac_sysvmsq_check_msgrmid(td->td_ucred, msghdr);
if (error != 0)
@@ -731,8 +731,8 @@
msqkptr->cred = crhold(cred);
/* Make sure that the returned msqid is unique */
msqkptr->u.msg_perm.seq = (msqkptr->u.msg_perm.seq + 1) & 0x7fff;
- msqkptr->u.msg_first = NULL;
- msqkptr->u.msg_last = NULL;
+ msqkptr->u.kmsg_first = NULL;
+ msqkptr->u.kmsg_last = NULL;
msqkptr->u.msg_cbytes = 0;
msqkptr->u.msg_qnum = 0;
msqkptr->u.msg_qbytes = msginfo.msgmnb;
@@ -1079,14 +1079,14 @@
/*
* Put the message into the queue
*/
- if (msqkptr->u.msg_first == NULL) {
- msqkptr->u.msg_first = msghdr;
- msqkptr->u.msg_last = msghdr;
+ if (msqkptr->u.kmsg_first == NULL) {
+ msqkptr->u.kmsg_first = msghdr;
+ msqkptr->u.kmsg_last = msghdr;
} else {
- msqkptr->u.msg_last->msg_next = msghdr;
- msqkptr->u.msg_last = msghdr;
+ msqkptr->u.kmsg_last->msg_next = msghdr;
+ msqkptr->u.kmsg_last = msghdr;
}
- msqkptr->u.msg_last->msg_next = NULL;
+ msqkptr->u.kmsg_last->msg_next = NULL;
msqkptr->u.msg_cbytes += msghdr->msg_ts;
msqkptr->u.msg_qnum++;
@@ -1194,7 +1194,7 @@
msghdr = NULL;
while (msghdr == NULL) {
if (msgtyp == 0) {
- msghdr = msqkptr->u.msg_first;
+ msghdr = msqkptr->u.kmsg_first;
if (msghdr != NULL) {
if (msgsz < msghdr->msg_ts &&
(msgflg & MSG_NOERROR) == 0) {
@@ -1210,12 +1210,12 @@
if (error != 0)
goto done2;
#endif
- if (msqkptr->u.msg_first == msqkptr->u.msg_last) {
- msqkptr->u.msg_first = NULL;
- msqkptr->u.msg_last = NULL;
+ if (msqkptr->u.kmsg_first == msqkptr->u.kmsg_last) {
+ msqkptr->u.kmsg_first = NULL;
+ msqkptr->u.kmsg_last = NULL;
} else {
- msqkptr->u.msg_first = msghdr->msg_next;
- if (msqkptr->u.msg_first == NULL)
+ msqkptr->u.kmsg_first = msghdr->msg_next;
+ if (msqkptr->u.kmsg_first == NULL)
panic("msg_first/last screwed up #1");
}
}
@@ -1224,7 +1224,7 @@
struct msg **prev;
previous = NULL;
- prev = &(msqkptr->u.msg_first);
+ prev = &(msqkptr->u.kmsg_first);
while ((msghdr = *prev) != NULL) {
/*
* Is this message's type an exact match or is
@@ -1256,20 +1256,20 @@
goto done2;
#endif
*prev = msghdr->msg_next;
- if (msghdr == msqkptr->u.msg_last) {
+ if (msghdr == msqkptr->u.kmsg_last) {
if (previous == NULL) {
if (prev !=
- &msqkptr->u.msg_first)
- panic("msg_first/last screwed up #2");
- msqkptr->u.msg_first =
+ &msqkptr->u.kmsg_first)
+ panic("kmsg_first/last screwed up #2");
+ msqkptr->u.kmsg_first =
NULL;
- msqkptr->u.msg_last =
+ msqkptr->u.kmsg_last =
NULL;
} else {
if (prev ==
- &msqkptr->u.msg_first)
- panic("msg_first/last screwed up #3");
- msqkptr->u.msg_last =
+ &msqkptr->u.kmsg_first)
+ panic("kmsg_first/last screwed up #3");
+ msqkptr->u.kmsg_last =
previous;
}
}
@@ -1674,8 +1674,8 @@
if (error)
return (error);
freebsd32_ipcperm_old_in(&msqbuf32.msg_perm, &msqbuf.msg_perm);
- PTRIN_CP(msqbuf32, msqbuf, msg_first);
- PTRIN_CP(msqbuf32, msqbuf, msg_last);
+ PTRIN_CP(msqbuf32, msqbuf, kmsg_first);
+ PTRIN_CP(msqbuf32, msqbuf, kmsg_last);
CP(msqbuf32, msqbuf, msg_cbytes);
CP(msqbuf32, msqbuf, msg_qnum);
CP(msqbuf32, msqbuf, msg_qbytes);
@@ -1691,8 +1691,8 @@
if (uap->cmd == IPC_STAT) {
bzero(&msqbuf32, sizeof(msqbuf32));
freebsd32_ipcperm_old_out(&msqbuf.msg_perm, &msqbuf32.msg_perm);
- PTROUT_CP(msqbuf, msqbuf32, msg_first);
- PTROUT_CP(msqbuf, msqbuf32, msg_last);
+ PTROUT_CP(msqbuf, msqbuf32, kmsg_first);
+ PTROUT_CP(msqbuf, msqbuf32, kmsg_last);
CP(msqbuf, msqbuf32, msg_cbytes);
CP(msqbuf, msqbuf32, msg_qnum);
CP(msqbuf, msqbuf32, msg_qbytes);
@@ -1719,8 +1719,8 @@
if (error)
return (error);
freebsd32_ipcperm_in(&msqbuf32.msg_perm, &msqbuf.msg_perm);
- PTRIN_CP(msqbuf32, msqbuf, msg_first);
- PTRIN_CP(msqbuf32, msqbuf, msg_last);
+ PTRIN_CP(msqbuf32, msqbuf, kmsg_first);
+ PTRIN_CP(msqbuf32, msqbuf, kmsg_last);
CP(msqbuf32, msqbuf, msg_cbytes);
CP(msqbuf32, msqbuf, msg_qnum);
CP(msqbuf32, msqbuf, msg_qbytes);
@@ -1735,8 +1735,8 @@
return (error);
if (uap->cmd == IPC_STAT) {
freebsd32_ipcperm_out(&msqbuf.msg_perm, &msqbuf32.msg_perm);
- PTROUT_CP(msqbuf, msqbuf32, msg_first);
- PTROUT_CP(msqbuf, msqbuf32, msg_last);
+ PTROUT_CP(msqbuf, msqbuf32, kmsg_first);
+ PTROUT_CP(msqbuf, msqbuf32, kmsg_last);
CP(msqbuf, msqbuf32, msg_cbytes);
CP(msqbuf, msqbuf32, msg_qnum);
CP(msqbuf, msqbuf32, msg_qbytes);
@@ -1844,8 +1844,8 @@
if (error)
return (error);
ipcperm_old2new(&msqold.msg_perm, &msqbuf.msg_perm);
- CP(msqold, msqbuf, msg_first);
- CP(msqold, msqbuf, msg_last);
+ CP(msqold, msqbuf, kmsg_first);
+ CP(msqold, msqbuf, kmsg_last);
CP(msqold, msqbuf, msg_cbytes);
CP(msqold, msqbuf, msg_qnum);
CP(msqold, msqbuf, msg_qbytes);
@@ -1861,8 +1861,8 @@
if (uap->cmd == IPC_STAT) {
bzero(&msqold, sizeof(msqold));
ipcperm_new2old(&msqbuf.msg_perm, &msqold.msg_perm);
- CP(msqbuf, msqold, msg_first);
- CP(msqbuf, msqold, msg_last);
+ CP(msqbuf, msqold, kmsg_first);
+ CP(msqbuf, msqold, kmsg_last);
CP(msqbuf, msqold, msg_cbytes);
CP(msqbuf, msqold, msg_qnum);
CP(msqbuf, msqold, msg_qbytes);
Index: sys/kern/sysv_sem.c
===================================================================
--- sys/kern/sysv_sem.c
+++ sys/kern/sysv_sem.c
@@ -286,7 +286,7 @@
semu = malloc(seminfo.semmnu * seminfo.semusz, M_SEM, M_WAITOK);
for (i = 0; i < seminfo.semmni; i++) {
- sema[i].u.sem_base = 0;
+ sema[i].u.ksem_base = 0;
sema[i].u.sem_perm.mode = 0;
sema[i].u.sem_perm.seq = 0;
#ifdef MAC
@@ -575,15 +575,15 @@
wakeup(semakptr);
for (i = 0; i < seminfo.semmni; i++) {
if ((sema[i].u.sem_perm.mode & SEM_ALLOC) &&
- sema[i].u.sem_base > semakptr->u.sem_base)
+ sema[i].u.ksem_base > semakptr->u.ksem_base)
mtx_lock_flags(&sema_mtx[i], LOP_DUPOK);
}
- for (i = semakptr->u.sem_base - sem; i < semtot; i++)
+ for (i = semakptr->u.ksem_base - sem; i < semtot; i++)
sem[i] = sem[i + semakptr->u.sem_nsems];
for (i = 0; i < seminfo.semmni; i++) {
if ((sema[i].u.sem_perm.mode & SEM_ALLOC) &&
- sema[i].u.sem_base > semakptr->u.sem_base) {
- sema[i].u.sem_base -= semakptr->u.sem_nsems;
+ sema[i].u.ksem_base > semakptr->u.ksem_base) {
+ sema[i].u.ksem_base -= semakptr->u.sem_nsems;
mtx_unlock(&sema_mtx[i]);
}
}
@@ -801,7 +801,7 @@
error = EINVAL;
goto done2;
}
- *rval = semakptr->u.sem_base[semnum].semncnt;
+ *rval = semakptr->u.ksem_base[semnum].semncnt;
break;
case GETPID:
@@ -813,7 +813,7 @@
error = EINVAL;
goto done2;
}
- *rval = semakptr->u.sem_base[semnum].sempid;
+ *rval = semakptr->u.ksem_base[semnum].sempid;
break;
case GETVAL:
@@ -825,7 +825,7 @@
error = EINVAL;
goto done2;
}
- *rval = semakptr->u.sem_base[semnum].semval;
+ *rval = semakptr->u.ksem_base[semnum].semval;
break;
case GETALL:
@@ -859,7 +859,7 @@
if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_R)))
goto done2;
for (i = 0; i < semakptr->u.sem_nsems; i++)
- array[i] = semakptr->u.sem_base[i].semval;
+ array[i] = semakptr->u.ksem_base[i].semval;
mtx_unlock(sema_mtxp);
error = copyout(array, arg->array, count * sizeof(*array));
mtx_lock(sema_mtxp);
@@ -874,7 +874,7 @@
error = EINVAL;
goto done2;
}
- *rval = semakptr->u.sem_base[semnum].semzcnt;
+ *rval = semakptr->u.ksem_base[semnum].semzcnt;
break;
case SETVAL:
@@ -890,7 +890,7 @@
error = ERANGE;
goto done2;
}
- semakptr->u.sem_base[semnum].semval = arg->val;
+ semakptr->u.ksem_base[semnum].semval = arg->val;
SEMUNDO_LOCK();
semundo_clear(semidx, semnum);
SEMUNDO_UNLOCK();
@@ -920,7 +920,7 @@
error = ERANGE;
break;
}
- semakptr->u.sem_base[i].semval = usval;
+ semakptr->u.ksem_base[i].semval = usval;
}
SEMUNDO_LOCK();
semundo_clear(semidx, -1);
@@ -1051,16 +1051,16 @@
sema[semid].u.sem_nsems = nsems;
sema[semid].u.sem_otime = 0;
sema[semid].u.sem_ctime = time_second;
- sema[semid].u.sem_base = &sem[semtot];
+ sema[semid].u.ksem_base = &sem[semtot];
semtot += nsems;
- bzero(sema[semid].u.sem_base,
- sizeof(sema[semid].u.sem_base[0])*nsems);
+ bzero(sema[semid].u.ksem_base,
+ sizeof(sema[semid].u.ksem_base[0])*nsems);
#ifdef MAC
mac_sysvsem_create(cred, &sema[semid]);
#endif
mtx_unlock(&sema_mtx[semid]);
DPRINTF(("sembase = %p, next = %p\n",
- sema[semid].u.sem_base, &sem[semtot]));
+ sema[semid].u.ksem_base, &sem[semtot]));
} else {
DPRINTF(("didn't find it and wasn't asked to create it\n"));
error = ENOENT;
@@ -1203,12 +1203,12 @@
for (i = 0; i < nsops; i++) {
sopptr = &sops[i];
- semptr = &semakptr->u.sem_base[sopptr->sem_num];
+ semptr = &semakptr->u.ksem_base[sopptr->sem_num];
DPRINTF((
- "semop: semakptr=%p, sem_base=%p, "
+ "semop: semakptr=%p, ksem_base=%p, "
"semptr=%p, sem[%d]=%d : op=%d, flag=%s\n",
- semakptr, semakptr->u.sem_base, semptr,
+ semakptr, semakptr->u.ksem_base, semptr,
sopptr->sem_num, semptr->semval, sopptr->sem_op,
(sopptr->sem_flg & IPC_NOWAIT) ?
"nowait" : "wait"));
@@ -1250,7 +1250,7 @@
*/
DPRINTF(("semop: rollback 0 through %d\n", i-1));
for (j = 0; j < i; j++)
- semakptr->u.sem_base[sops[j].sem_num].semval -=
+ semakptr->u.ksem_base[sops[j].sem_num].semval -=
sops[j].sem_op;
/* If we detected an error, return it */
@@ -1289,10 +1289,10 @@
/*
* Renew the semaphore's pointer after wakeup since
- * during msleep sem_base may have been modified and semptr
+ * during msleep ksem_base may have been modified and semptr
* is not valid any more
*/
- semptr = &semakptr->u.sem_base[sopptr->sem_num];
+ semptr = &semakptr->u.ksem_base[sopptr->sem_num];
/*
* The semaphore is still alive. Readjust the count of
@@ -1361,7 +1361,7 @@
}
for (j = 0; j < nsops; j++)
- semakptr->u.sem_base[sops[j].sem_num].semval -=
+ semakptr->u.ksem_base[sops[j].sem_num].semval -=
sops[j].sem_op;
DPRINTF(("error = %d from semundo_adjust\n", error));
@@ -1374,7 +1374,7 @@
/* We're definitely done - set the sempid's and time */
for (i = 0; i < nsops; i++) {
sopptr = &sops[i];
- semptr = &semakptr->u.sem_base[sopptr->sem_num];
+ semptr = &semakptr->u.ksem_base[sopptr->sem_num];
semptr->sempid = td->td_proc->p_pid;
}
semakptr->u.sem_otime = time_second;
@@ -1457,13 +1457,13 @@
suptr->un_proc, suptr->un_ent[ix].un_id,
suptr->un_ent[ix].un_num,
suptr->un_ent[ix].un_adjval,
- semakptr->u.sem_base[semnum].semval));
+ semakptr->u.ksem_base[semnum].semval));
- if (adjval < 0 && semakptr->u.sem_base[semnum].semval <
+ if (adjval < 0 && semakptr->u.ksem_base[semnum].semval <
-adjval)
- semakptr->u.sem_base[semnum].semval = 0;
+ semakptr->u.ksem_base[semnum].semval = 0;
else
- semakptr->u.sem_base[semnum].semval += adjval;
+ semakptr->u.ksem_base[semnum].semval += adjval;
wakeup(semakptr);
DPRINTF(("semexit: back from wakeup\n"));
@@ -1764,7 +1764,7 @@
if (error)
return (error);
ipcperm_old2new(&dsold.sem_perm, &dsbuf.sem_perm);
- CP(dsold, dsbuf, sem_base);
+ CP(dsold, dsbuf, ksem_base);
CP(dsold, dsbuf, sem_nsems);
CP(dsold, dsbuf, sem_otime);
CP(dsold, dsbuf, sem_ctime);
@@ -1789,7 +1789,7 @@
case IPC_STAT:
bzero(&dsold, sizeof(dsold));
ipcperm_new2old(&dsbuf.sem_perm, &dsold.sem_perm);
- CP(dsbuf, dsold, sem_base);
+ CP(dsbuf, dsold, ksem_base);
CP(dsbuf, dsold, sem_nsems);
CP(dsbuf, dsold, sem_otime);
CP(dsbuf, dsold, sem_ctime);
@@ -1861,7 +1861,7 @@
if (error)
return (error);
freebsd32_ipcperm_old_in(&dsbuf32.sem_perm, &dsbuf.sem_perm);
- PTRIN_CP(dsbuf32, dsbuf, sem_base);
+ PTRIN_CP(dsbuf32, dsbuf, ksem_base);
CP(dsbuf32, dsbuf, sem_nsems);
CP(dsbuf32, dsbuf, sem_otime);
CP(dsbuf32, dsbuf, sem_ctime);
@@ -1886,7 +1886,7 @@
case IPC_STAT:
bzero(&dsbuf32, sizeof(dsbuf32));
freebsd32_ipcperm_old_out(&dsbuf.sem_perm, &dsbuf32.sem_perm);
- PTROUT_CP(dsbuf, dsbuf32, sem_base);
+ PTROUT_CP(dsbuf, dsbuf32, ksem_base);
CP(dsbuf, dsbuf32, sem_nsems);
CP(dsbuf, dsbuf32, sem_otime);
CP(dsbuf, dsbuf32, sem_ctime);
@@ -1933,7 +1933,7 @@
if (error)
return (error);
freebsd32_ipcperm_in(&dsbuf32.sem_perm, &dsbuf.sem_perm);
- PTRIN_CP(dsbuf32, dsbuf, sem_base);
+ PTRIN_CP(dsbuf32, dsbuf, ksem_base);
CP(dsbuf32, dsbuf, sem_nsems);
CP(dsbuf32, dsbuf, sem_otime);
CP(dsbuf32, dsbuf, sem_ctime);
@@ -1958,7 +1958,7 @@
case IPC_STAT:
bzero(&dsbuf32, sizeof(dsbuf32));
freebsd32_ipcperm_out(&dsbuf.sem_perm, &dsbuf32.sem_perm);
- PTROUT_CP(dsbuf, dsbuf32, sem_base);
+ PTROUT_CP(dsbuf, dsbuf32, ksem_base);
CP(dsbuf, dsbuf32, sem_nsems);
CP(dsbuf, dsbuf32, sem_otime);
CP(dsbuf, dsbuf32, sem_ctime);
Index: sys/sys/msg.h
===================================================================
--- sys/sys/msg.h
+++ sys/sys/msg.h
@@ -63,8 +63,8 @@
defined(COMPAT_FREEBSD6) || defined(COMPAT_FREEBSD7)
struct msqid_ds_old {
struct ipc_perm_old msg_perm; /* msg queue permission bits */
- struct msg *msg_first; /* first message in the queue */
- struct msg *msg_last; /* last message in the queue */
+ struct msg *kmsg_first; /* first message in the queue */
+ struct msg *kmsg_last; /* last message in the queue */
msglen_t msg_cbytes; /* number of bytes in use on the queue */
msgqnum_t msg_qnum; /* number of msgs in the queue */
msglen_t msg_qbytes; /* max # of bytes on the queue */
@@ -88,8 +88,8 @@
struct msqid_ds {
struct ipc_perm msg_perm; /* msg queue permission bits */
- struct msg *msg_first; /* first message in the queue */
- struct msg *msg_last; /* last message in the queue */
+ struct msg *kmsg_first; /* first message in the queue */
+ struct msg *kmsg_last; /* last message in the queue */
msglen_t msg_cbytes; /* number of bytes in use on the queue */
msgqnum_t msg_qnum; /* number of msgs in the queue */
msglen_t msg_qbytes; /* max # of bytes on the queue */
@@ -100,23 +100,6 @@
time_t msg_ctime; /* time of last msgctl() */
};
-#if __BSD_VISIBLE
-/*
- * Structure describing a message. The SVID doesn't suggest any
- * particular name for this structure. There is a reference in the
- * msgop man page that reads "The structure mymsg is an example of what
- * this user defined buffer might look like, and includes the following
- * members:". This sentence is followed by two lines equivalent
- * to the mtype and mtext field declarations below. It isn't clear
- * if "mymsg" refers to the name of the structure type or the name of an
- * instance of the structure...
- */
-struct mymsg {
- long mtype; /* message type (+ve integer) */
- char mtext[1]; /* message body */
-};
-#endif
-
#ifdef _KERNEL
struct msg {
Index: sys/sys/sem.h
===================================================================
--- sys/sys/sem.h
+++ sys/sys/sem.h
@@ -31,7 +31,7 @@
defined(COMPAT_FREEBSD6) || defined(COMPAT_FREEBSD7)
struct semid_ds_old {
struct ipc_perm_old sem_perm; /* operation permission struct */
- struct sem *sem_base; /* pointer to first semaphore in set */
+ struct sem *ksem_base; /* pointer to first semaphore in set */
unsigned short sem_nsems; /* number of sems in set */
time_t sem_otime; /* last operation time */
long sem_pad1; /* SVABI/386 says I need this here */
@@ -45,7 +45,7 @@
struct semid_ds {
struct ipc_perm sem_perm; /* operation permission struct */
- struct sem *sem_base; /* pointer to first semaphore in set */
+ struct sem *ksem_base; /* pointer to first semaphore in set */
unsigned short sem_nsems; /* number of sems in set */
time_t sem_otime; /* last operation time */
time_t sem_ctime; /* last change time */
@@ -73,6 +73,7 @@
};
#endif
+#if defined(_KERNEL) || defined(_WANT_SEMUN)
/*
* semctl's arg parameter structure
*/
@@ -81,6 +82,7 @@
struct semid_ds *buf; /* buffer for IPC_STAT & IPC_SET */
unsigned short *array; /* array for GETALL & SETALL */
};
+#endif
/*
* commands for semctl
Index: usr.bin/svn/lib/libapr/apr.h
===================================================================
--- usr.bin/svn/lib/libapr/apr.h
+++ usr.bin/svn/lib/libapr/apr.h
@@ -261,7 +261,7 @@
#define APR_HAVE_STRSTR 1
#define APR_HAVE_MEMCHR 1
#define APR_HAVE_STRUCT_RLIMIT 1
-#define APR_HAVE_UNION_SEMUN 1
+#define APR_HAVE_UNION_SEMUN 0
#define APR_HAVE_SCTP 1
#define APR_HAVE_IOVEC 1

File Metadata

Mime Type
text/plain
Expires
Tue, Jul 21, 1:00 PM (8 h, 49 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
35317884
Default Alt Text
D13538.id36748.diff (22 KB)

Event Timeline