#ifndef _TYPES_H
#define _TYPES_H

#ifndef _COMPILER_H
#include <compiler.h>
#endif

#ifndef _SIZE_T
#define _SIZE_T __SIZE_TYPEDEF__
typedef _SIZE_T size_t;
#endif

#ifndef _TIME_T
#define _TIME_T long
typedef _TIME_T time_t;
#endif

typedef long off_t;

typedef unsigned char	u_char;
typedef unsigned short	u_short;
typedef unsigned long	u_long;

typedef u_short		dev_t;		/* holds a device type */
#ifndef _POSIX_SOURCE
#define major(dev)	(((dev)&0xff00)>>8)
#define minor(dev)	((dev)&0x00ff)
#define makedev(maj, min)	(((maj)<<8) | (min))
#endif

typedef u_long		ino_t;		/* holds an inode (fake under GEMDOS) */
typedef u_short		uid_t;		/* user id type */
typedef u_short		gid_t;		/* group id type */
typedef void *		caddr_t;

struct utimbuf {			/* type for utime() call */
	time_t	actime;
	time_t	modtime;
};

#endif /* _TYPES_H */
