Subversion Repositories tendra.SVN

Rev

Rev 7 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 7u83 1
/*
7 7u83 2
 * Copyright (c) 2002-2005 The TenDRA Project <http://www.tendra.org/>.
3
 * All rights reserved.
4
 *
5
 * Redistribution and use in source and binary forms, with or without
6
 * modification, are permitted provided that the following conditions are met:
7
 *
8
 * 1. Redistributions of source code must retain the above copyright notice,
9
 *    this list of conditions and the following disclaimer.
10
 * 2. Redistributions in binary form must reproduce the above copyright notice,
11
 *    this list of conditions and the following disclaimer in the documentation
12
 *    and/or other materials provided with the distribution.
13
 * 3. Neither the name of The TenDRA Project nor the names of its contributors
14
 *    may be used to endorse or promote products derived from this software
15
 *    without specific, prior written permission.
16
 *
17
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
18
 * IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
19
 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
20
 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR
21
 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22
 * EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
23
 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
24
 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
25
 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
26
 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
27
 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
 *
29
 * $Id$
30
 */
31
/*
2 7u83 32
    		 Crown Copyright (c) 1997
7 7u83 33
 
2 7u83 34
    This TenDRA(r) Computer Program is subject to Copyright
35
    owned by the United Kingdom Secretary of State for Defence
36
    acting through the Defence Evaluation and Research Agency
37
    (DERA).  It is made available to Recipients with a
38
    royalty-free licence for its use, reproduction, transfer
39
    to other parties and amendment for any purpose not excluding
40
    product development provided that any such use et cetera
41
    shall be deemed to be acceptance of the following conditions:-
7 7u83 42
 
2 7u83 43
        (1) Its Recipients shall ensure that this Notice is
44
        reproduced upon any copies or amended versions of it;
7 7u83 45
 
2 7u83 46
        (2) Any amended version of it shall be clearly marked to
47
        show both the nature of and the organisation responsible
48
        for the relevant amendment or amendments;
7 7u83 49
 
2 7u83 50
        (3) Its onward transfer from a recipient to another
51
        party shall be deemed to be that party's acceptance of
52
        these conditions;
7 7u83 53
 
2 7u83 54
        (4) DERA gives no warranty or assurance as to its
55
        quality or suitability for any purpose and DERA accepts
56
        no liability whatsoever in relation to any use to which
57
        it may be put.
58
*/
59
 
60
 
61
#ifndef CONFIG_INCLUDED
62
#define CONFIG_INCLUDED
63
 
64
 
65
/*
7 7u83 66
 * BASIC API SPECIFICATION
67
 *
68
 * The API for this program is ANSI plus a few extensions from POSIX and XPG3.
69
 * The ANSI headers are included here, with the FS_* macros being used to
70
 * control inclusion of the additional features.
71
 */
2 7u83 72
 
73
#include <stdio.h>
74
#include <stdlib.h>
75
#include <string.h>
76
#include <signal.h>
77
 
78
#ifndef EXIT_SUCCESS
79
#define EXIT_SUCCESS		0
80
#define EXIT_FAILURE		1
81
#endif
82
 
83
#ifndef SEEK_SET
84
#define SEEK_SET		0
85
#define SEEK_CUR		1
86
#define SEEK_END		2
87
#endif
88
 
89 7u83 89
 
2 7u83 90
#ifndef FS_POSIX
89 7u83 91
#define FS_POSIX		0
2 7u83 92
#endif
93
 
94
#ifndef FS_XPG3
95
#define FS_XPG3			FS_POSIX
96
#endif
97
 
98
#ifndef FS_DIRENT
99
#define FS_DIRENT		FS_POSIX
100
#endif
101
 
102
#ifndef FS_FORK
103
#define FS_FORK			FS_POSIX
104
#endif
105
 
106
#ifndef FS_GETCWD
107
#define FS_GETCWD		FS_POSIX
108
#endif
109
 
110
#ifndef FS_STAT
111
#define FS_STAT			FS_POSIX
112
#endif
113
 
114
#ifndef FS_SYS_TYPES
115
#define FS_SYS_TYPES		FS_POSIX
116
#endif
117
 
118
#ifndef FS_TEMPNAM
119
#define FS_TEMPNAM		FS_XPG3
120
#endif
121
 
122
#ifndef FS_WAIT
123
#define FS_WAIT			FS_POSIX
124
#endif
125
 
126
 
127
/*
7 7u83 128
 * CODING STANDARD MACROS
129
 *
130
 * The program is written to conform to the local OSSG coding standard. This
131
 * header defines the standard macros used in the program.
132
 */
2 7u83 133
 
134
 
7 7u83 135
#include "tendra.h"
2 7u83 136
 
137
 
138
/*
7 7u83 139
 * BASIC TYPES
140
 *
141
 * These types are so ubiquitous that this is the only suitable place for them.
142
 */
2 7u83 143
 
7 7u83 144
typedef int boolean;
145
typedef void *pointer;
2 7u83 146
 
147
 
148
/*
7 7u83 149
 * UTILITY MACROS
150
 *
151
 * These macros are just a matter of programming style.
152
 */
2 7u83 153
 
7 7u83 154
#define null		NULL
155
#define streq(X, Y)	(strcmp((X), (Y)) == 0)
156
#define strneq(X, Y, Z)	(strncmp((X), (Y), (size_t)(Z)) == 0)
157
#define MAX_LINE	1024
2 7u83 158
 
159
 
160
#endif