--- libaitio/inc/defs.h 2012/07/03 08:51:05 1.6 +++ libaitio/inc/defs.h 2013/06/26 22:48:53 1.11 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: defs.h,v 1.6 2012/07/03 08:51:05 misho Exp $ +* $Id: defs.h,v 1.11 2013/06/26 22:48:53 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -12,7 +12,7 @@ terms: All of the documentation and software included in the ELWIX and AITNET Releases is copyrighted by ELWIX - Sofia/Bulgaria -Copyright 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 +Copyright 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 by Michael Pounov . All rights reserved. Redistribution and use in source and binary forms, with or without @@ -47,35 +47,22 @@ SUCH DAMAGE. #define __DEFS_H -#define STRSIZ 256 #define RECV_TIMEOUT 5000 #define BUFIO_MODE_LIMIT 0 #define BUFIO_MODE_INFINIT 1 -/* memory pool helper macros */ +#define SESS_AIT_MAGIC 0x3CC3 -#define MEM_MAGIC_START 0xAAAAAAAA -#define MEM_MAGIC_STOP 0x55555555 -#define MEM_ALLOC_MAX 0xFFFFFFF3 +#define SESS_MEM_MODE 0640 +#define SESS_MEM_DELIM "\n" -#define MEM_MIN_BUCKET 4 -#define MEM_MAX_BUCKET 32 +#define SESS_MAX_ATTRIBUTE 64 -#define MEM_PTR2LINT(x) ((u_int) ((uintptr_t)(x)) & 0xFFFFFFFF) -#define MEM_PTR2HINT(x) ((u_int) (sizeof(uintptr_t) == sizeof(u_int)) ? 0 : \ - (((uintptr_t)(x)) >> 32) & 0xFFFFFFFF) -#define MEM_INT2PTR(x) ((void*) ((uintptr_t)(x))) +#define SEMNAME_MAX 14 -#define MEM_BADADDR(x) (MEM_PTR2LINT(x) < 0x00001000U || MEM_PTR2LINT(x) > 0xFFFFF000U) -#define MEM_CORRUPT(x) (!(x) || ((u_int*)(x))[-1] != MEM_MAGIC_START || \ - ((u_int*)(x))[((u_int*)(x))[-2]] != MEM_MAGIC_STOP) +#define BPF_DEV_MAX 10 -#define mem_data(x, _type) (assert((x)), (_type) ((x)->alloc_mem ? ((x)->alloc_mem + 2) : NULL)) -#define mem_len(x) (assert((x)), (x)->alloc_mem ? *(x)->alloc_mem : 0) -#define mem_size(x) (mem_len((x)) * sizeof(u_int)) - - #define LOGERR { \ io_Errno = errno; \ strlcpy(io_Error, strerror(errno), STRSIZ); \ @@ -92,12 +79,29 @@ struct tagBufIO { void (*buf_unmap)(); }; +/* +union semun { + int val; + struct semid_ds *buf; + unsigned short int *array; + struct seminfo *__buf; +}; */ +#ifndef HAVE_UNION_SEMUN +union semun { + int val; /* value for SETVAL */ + struct semid_ds *buf; /* buffer for IPC_STAT & IPC_SET */ + unsigned short *array; /* array for GETALL & SETALL */ +}; +#endif -extern mpool_t *io_mpool; -extern int use_mm; +typedef struct _tagSessHdr { + uint16_t hdr_magic; + uint16_t hdr_argc; +} sess_hdr_t; + extern int io_Errno; -extern char io_Error[]; +extern char io_Error[STRSIZ]; inline void io_SetErr(int eno, char *estr, ...);