FreeBSD kernel kern code
sysv_ipc.c File Reference
#include <sys/cdefs.h>
#include "opt_sysvipc.h"
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/sem.h>
#include <sys/shm.h>
#include <sys/ipc.h>
#include <sys/priv.h>
#include <sys/proc.h>
#include <sys/ucred.h>
Include dependency graph for sysv_ipc.c:

Go to the source code of this file.

Functions

 __FBSDID ("$FreeBSD$")
 
void shmfork (struct proc *p1, struct proc *p2)
 
void shmexit (struct vmspace *vm)
 
int ipcperm (struct thread *td, struct ipc_perm *perm, int acc_mode)
 

Variables

void(* shmfork_hook )(struct proc *, struct proc *) = NULL
 
void(* shmexit_hook )(struct vmspace *) = NULL
 

Function Documentation

◆ __FBSDID()

__FBSDID ( "$FreeBSD$"  )

◆ ipcperm()

int ipcperm ( struct thread *  td,
struct ipc_perm *  perm,
int  acc_mode 
)

Definition at line 90 of file sysv_ipc.c.

References groupmember(), and priv_check().

Referenced by kern_msgctl(), kern_msgrcv(), kern_msgsnd(), kern_semctl(), kern_shmat_locked(), kern_shmctl_locked(), sys_msgget(), sys_semget(), and sys_semop().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ shmexit()

void shmexit ( struct vmspace *  vm)

Definition at line 70 of file sysv_ipc.c.

References shmexit_hook.

Referenced by exec_new_vmspace().

Here is the caller graph for this function:

◆ shmfork()

void shmfork ( struct proc *  p1,
struct proc *  p2 
)

Definition at line 59 of file sysv_ipc.c.

References shmfork_hook.

Variable Documentation

◆ shmexit_hook

void(* shmexit_hook) (struct vmspace *) ( struct vmspace *  ) = NULL

Definition at line 55 of file sysv_ipc.c.

Referenced by shmexit(), shminit(), and shmunload().

◆ shmfork_hook

void(* shmfork_hook) (struct proc *, struct proc *) ( struct proc *  ,
struct proc *   
) = NULL

Definition at line 54 of file sysv_ipc.c.

Referenced by shmfork(), shminit(), and shmunload().