1 /*
2  * rdlar.h - definitions of new RDOFF library/archive format.
3  */
4 
5 #ifndef RDOFF_RDLAR_H
6 #define RDOFF_RDLAR_H 1
7 
8 #include "compiler.h"
9 
10 /* For non-POSIX operating systems */
11 #ifndef HAVE_GETUID
12 # define getuid() 0
13 #endif
14 #ifndef HAVE_GETGID
15 # define getgid() 0
16 #endif
17 
18 #define RDLAMAG		0x414C4452      /* Archive magic */
19 #define RDLMMAG		0x4D4C4452      /* Member magic */
20 
21 #define MAXMODNAMELEN	256     /* Maximum length of module name */
22 
23 struct rdlm_hdr {
24     uint32_t magic;        /* Must be RDLAMAG */
25     uint32_t hdrsize;      /* Header size + sizeof(module_name) */
26     uint32_t date;         /* Creation date */
27     uint32_t owner;        /* UID */
28     uint32_t group;        /* GID */
29     uint32_t mode;         /* File mode */
30     uint32_t size;         /* File size */
31     /* NULL-terminated module name immediately follows */
32 };
33 
34 #endif
35