libexplain  1.4.D001
Functions
libexplain/buffer/eacces/shm.c File Reference
#include <libexplain/ac/sys/shm.h>
#include <libexplain/ac/sys/stat.h>
#include <libexplain/ac/unistd.h>
#include <libexplain/buffer/dac.h>
#include <libexplain/buffer/eacces.h>
#include <libexplain/buffer/gettext.h>
#include <libexplain/buffer/gid.h>
#include <libexplain/buffer/group_permission_ignored.h>
#include <libexplain/buffer/others_permission.h>
#include <libexplain/buffer/others_permission_ignored.h>
#include <libexplain/buffer/rwx.h>
#include <libexplain/buffer/uid.h>
#include <libexplain/capability.h>
#include <libexplain/gettext.h>
#include <libexplain/option.h>
#include <libexplain/translate.h>

Go to the source code of this file.

Functions

static void owner_permission_mode_used (explain_string_buffer_t *sb, const struct ipc_perm *perm, uid_t proc_uid, const char *proc_uid_caption, const char *whatsit, const char *ipc_uid_caption)
static void owner_permission_mode_mismatch (explain_string_buffer_t *sb, const struct ipc_perm *perm, int proc_uid, const char *proc_uid_caption, const char *whatsit, int shm_uid, const char *shm_uid_caption)
static void group_permission_mode_used (explain_string_buffer_t *sb, const struct ipc_perm *perm, int proc_gid, const char *proc_gid_caption, const char *whatsit, const char *ipc_gid_caption)
static void group_permission_mode_mismatch (explain_string_buffer_t *sb, const struct ipc_perm *perm, int proc_gid, const char *proc_gid_caption, const char *whatsit, int ipc_gid, const char *ipc_gid_caption)
static const char * translate_owner_uid (void)
static const char * translate_creator_uid (void)
static const char * translate_owner_gid (void)
static const char * translate_creator_gid (void)
static void no_ipc_permission (explain_string_buffer_t *sb, const char *whatsit)
static int buffer_eacces_shm (explain_string_buffer_t *sb, const struct ipc_perm *perm, int read_only, const char *whatsit)
int explain_buffer_eacces_shmat (explain_string_buffer_t *sb, const struct ipc_perm *perm, int read_only)
void explain_buffer_eacces_shmat_vague (explain_string_buffer_t *sb)

Function Documentation

static int buffer_eacces_shm ( explain_string_buffer_t sb,
const struct ipc_perm *  perm,
int  read_only,
const char *  whatsit 
) [static]

Definition at line 328 of file shm.c.

int explain_buffer_eacces_shmat ( explain_string_buffer_t sb,
const struct ipc_perm *  perm,
int  read_only 
)

The explain_buffer_eacces_shmat function is use dto explain EACCES error returned by shmat (and friends?).

Parameters:
sbThe string buffer to print into.
permThe access permission attached to the shared memory segment.
read_onlyWhether or no read only access was requested (if false, read-write access is requested).
Returns:
0 if it printed nothing, 1 if it printed an explanation

Definition at line 503 of file shm.c.

The explain_buffer_eacces_shmat_vague function is use dto explain EACCES error returned by shmat, when no specific error can be determined.

Parameters:
sbThe string buffer to print into.

Definition at line 518 of file shm.c.

static void group_permission_mode_mismatch ( explain_string_buffer_t sb,
const struct ipc_perm *  perm,
int  proc_gid,
const char *  proc_gid_caption,
const char *  whatsit,
int  ipc_gid,
const char *  ipc_gid_caption 
) [static]

Definition at line 182 of file shm.c.

static void group_permission_mode_used ( explain_string_buffer_t sb,
const struct ipc_perm *  perm,
int  proc_gid,
const char *  proc_gid_caption,
const char *  whatsit,
const char *  ipc_gid_caption 
) [static]

Definition at line 134 of file shm.c.

static void no_ipc_permission ( explain_string_buffer_t sb,
const char *  whatsit 
) [static]

Definition at line 307 of file shm.c.

static void owner_permission_mode_mismatch ( explain_string_buffer_t sb,
const struct ipc_perm *  perm,
int  proc_uid,
const char *  proc_uid_caption,
const char *  whatsit,
int  shm_uid,
const char *  shm_uid_caption 
) [static]

Definition at line 84 of file shm.c.

static void owner_permission_mode_used ( explain_string_buffer_t sb,
const struct ipc_perm *  perm,
uid_t  proc_uid,
const char *  proc_uid_caption,
const char *  whatsit,
const char *  ipc_uid_caption 
) [static]

Definition at line 39 of file shm.c.

static const char* translate_creator_gid ( void  ) [static]

Definition at line 289 of file shm.c.

static const char* translate_creator_uid ( void  ) [static]

Definition at line 253 of file shm.c.

static const char* translate_owner_gid ( void  ) [static]

Definition at line 271 of file shm.c.

static const char* translate_owner_uid ( void  ) [static]

Definition at line 235 of file shm.c.