/****************************************************************************** * * 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();