tldm-universe/Ardent/UV/gcidir/include/uvshm.h
2024-09-09 17:51:08 -04:00

69 lines
2.2 KiB
C
Executable File

/******************************************************************************
*
* shrmem - NT uniVerse shared memory functions include file
*
* Module %M% Version %I% Date %H%
*
* (c) Copyright 1998 Ardent Software Inc. - All Rights Reserved
* This is unpublished proprietary source code of Ardent Software Inc.
* The copyright notice above does not evidence any actual or intended
* publication of such source code.
*
*******************************************************************************
*
* Maintenence log - insert most recent change descriptions at top
*
* Date.... GTAR# WHO Description.........................................
* 10/14/98 23801 SAP Change copyrights.
* 08/23/95 17242 AGM Replace COMPUTER==WINNT test by MSWIN test
* 05/23/95 15077 GMM Added UVSHM_SUPERSEDE token
* 09/30/94 15077 GMM Module Created
*
******************************************************************************/
/*
* This include file contains the tokens and declarations required
* for using the generic shared memory routines for uniVerse.
*/
#define UVSHM_NOACCESS 1
#define UVSHM_READONLY 2
#define UVSHM_READWRITE 3
/*
* Define our segment creation tokens. On NT we have the supersede option.
* On UNIX this is the same as just CREATE.
*/
#define UVSHM_NOCREATE 0
#define UVSHM_CREATE 1
#ifdef MSWIN
#define UVSHM_SUPERSEDE 2
#else
#define UVSHM_SUPERSEDE UVSHM_CREATE
#endif
#define UVSHM_NOROUND 0
#define UVSHM_ROUND 1
typedef struct {
uid_t create_uid; /* creators uid */
pid_t create_pid; /* creators pid */
time_t change_time; /* time last changed */
uid_t perm_uid; /* owner id of the segment */
gid_t perm_gid; /* group id of the segment */
int other_access; /* other users access mode */
int num_attached; /* number attached */
} uvshm_info;
/*
* The routine declarations
*/
extern int sm_get_shm();
extern char *sm_attach_shm();
extern int sm_detach_shm();
extern int sm_remove_shm();
extern int sm_shm_getinfo();
extern int sm_shm_putinfo();
extern int sm_show_shm();