Go to the previous, next section.

ipc

SYSNOPSIS

int sys_ipc (uint call, int first, int second, int third, void *ptr);

PARAMETERS

call: [in] the ipc call to perform.

first, second, third: parameters. Depend on call.

ptr: [in] pointer to a buffer.

DESCRIPTION

This is an in kernel wrapper for other ipc calls. call can take the following values:

SEMOP
sys_semop(first, (struct sembuf *)ptr, second);

SEMGET
sys_semget (first, second, third);

SEMCTL
sys_semctl (first, second, third, ptr);

MSGSND
sys_msgsnd (first, (struct msgbuf *) ptr, second, third);

MSGRCV
This one is a little tricky...

struct ipc_kludge tmp; if (!ptr) return -EINVAL;

memcpy_fromfs (&tmp,(struct ipc_kludge *) ptr, sizeof (tmp));

return sys_msgrcv (first, tmp.msgp, second, tmp.msgtyp, third);

MSGGET
sys_msgget ((key_t) first, second);

MSGCTL
sys_msgctl (first, second, (struct msqid_ds *) ptr);

SHMAT
sys_shmat (first, (char *) ptr, second, (ulong *) third);

SHMDT
sys_shmdt ((char *)ptr);

SHMGET
sys_shmget (first, second, third);

SHMCTL
sys_shmctl (first, second, (struct shmid_ds *) ptr);

Go to the previous, next section.