#include <stdio.h>#include <stdlib.h>#include <string.h>#include <fcntl.h>#include <time.h>#include <signal.h>#include <unistd.h>#include <errno.h>#include <sys/types.h>#include <sys/stat.h>#include <sys/mman.h>#include <semaphore.h>#include "sharedmem.h"#include "sharedmem_private.h"Include dependency graph for sharedmem.c:

Go to the source code of this file.
Defines | |
| #define | _XOPEN_SOURCE 600 |
| #define | _POSIX_C_SOURCE 200112L |
Functions | |
| void | _sharedmem_set_error (sharedmem_t *inst, int error_code, const char *error_str) |
| int | sharedmem_create (sharedmem_t *inst, const char *name, size_t size) |
| int | sharedmem_open (sharedmem_t *inst, const char *name) |
| int | sharedmem_close (sharedmem_t *inst) |
| int | sharedmem_resize (sharedmem_t *inst, size_t size) |
| int | sharedmem_resize2 (sharedmem_t *inst) |
| int | sharedmem_size_changed (sharedmem_t *inst) |
| int | sharedmem_lock (sharedmem_t *inst) |
| int | sharedmem_unlock (sharedmem_t *inst) |
| int | sharedmem_get_error_code (sharedmem_t *inst) |
| const char * | sharedmem_get_error_string (sharedmem_t *inst) |
Variables | |
| long | sharedmem_page_size = 0 |
| #define _POSIX_C_SOURCE 200112L |
Definition at line 30 of file sharedmem.c.
| #define _XOPEN_SOURCE 600 |
Definition at line 29 of file sharedmem.c.
| void _sharedmem_set_error | ( | sharedmem_t * | inst, | |
| int | error_code, | |||
| const char * | error_str | |||
| ) |
Definition at line 60 of file sharedmem.c.
References _sharedmem_error_t::code, _sharedmem_t::error, SHAREDMEM_ERROR_SIZE, and _sharedmem_error_t::string.
| int sharedmem_close | ( | sharedmem_t * | inst | ) |
Close named shared memory.
| inst | Instance of shared memory object |
Definition at line 413 of file sharedmem.c.
References _sharedmem_t::ctrl, _sharedmem_t::fd, _sharedmem_t::name, _sharedmem_ctrl_t::ref, and _sharedmem_t::sem.
| int sharedmem_create | ( | sharedmem_t * | inst, | |
| const char * | name, | |||
| size_t | size | |||
| ) |
Create named shared memory of specified size.
| inst | Instance of shared memory object | |
| name | Name of the shared memory (with leading slash) | |
| size | Size of the shared memory |
Definition at line 295 of file sharedmem.c.
References _sharedmem_t::ctrl, _sharedmem_t::fd, _sharedmem_t::name, _sharedmem_ctrl_t::ref, _sharedmem_t::sem, SHAREDMEM_NAME_LENGTH, and _sharedmem_ctrl_t::size.
| int sharedmem_get_error_code | ( | sharedmem_t * | inst | ) |
Get error code.
| inst | Instance of shared memory object |
Definition at line 649 of file sharedmem.c.
References _sharedmem_error_t::code, and _sharedmem_t::error.
| const char* sharedmem_get_error_string | ( | sharedmem_t * | inst | ) |
Get error string.
| inst | Instance of shared memory object |
Definition at line 658 of file sharedmem.c.
References _sharedmem_t::error, and _sharedmem_error_t::string.
| int sharedmem_lock | ( | sharedmem_t * | inst | ) |
Lock shared memory.
| inst | Instance of shared memory object |
Definition at line 637 of file sharedmem.c.
| int sharedmem_open | ( | sharedmem_t * | inst, | |
| const char * | name | |||
| ) |
Open named shared memory.
| inst | Instance of shared memory object | |
| name | Name of shared memory |
Definition at line 362 of file sharedmem.c.
References _sharedmem_t::ctrl, _sharedmem_t::fd, _sharedmem_t::name, _sharedmem_ctrl_t::ref, _sharedmem_t::sem, and SHAREDMEM_NAME_LENGTH.
| int sharedmem_resize | ( | sharedmem_t * | inst, | |
| size_t | size | |||
| ) |
Resize named shared memory.
| inst | Instance of shared memory object | |
| size | New size of shared memory |
Definition at line 508 of file sharedmem.c.
References _sharedmem_t::ctrl, _sharedmem_t::fd, _sharedmem_t::mapped_size, _sharedmem_t::pdata, and _sharedmem_ctrl_t::size.
| int sharedmem_resize2 | ( | sharedmem_t * | inst | ) |
Resize named shared memory.
| inst | Instance of shared memory object |
Definition at line 570 of file sharedmem.c.
References _sharedmem_t::ctrl, _sharedmem_t::fd, _sharedmem_t::mapped_size, _sharedmem_t::pdata, and _sharedmem_ctrl_t::size.
| int sharedmem_size_changed | ( | sharedmem_t * | inst | ) |
Check for changes in named shared memory size.
| inst | Instance of shared memory object |
Definition at line 621 of file sharedmem.c.
References _sharedmem_t::ctrl, _sharedmem_t::mapped_size, and _sharedmem_ctrl_t::size.
| int sharedmem_unlock | ( | sharedmem_t * | inst | ) |
Unlock shared memory.
| inst | Instance of shared memory object |
Definition at line 643 of file sharedmem.c.
| long sharedmem_page_size = 0 |
System page size
Definition at line 56 of file sharedmem.c.
1.5.1