2 ** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2000.
3 ** See ../LICENSE for license information.
13 /* Macro to substitute for ## because VAX C currently doesn't allow it. */
15 /* Use an intermediate paste macro so PASTE macro arguments will get */
16 /* evaluated. Therefore, PASTE(PASTE(a,b),c) will work. */
18 # define IPASTE(L,R) L ## R
20 # define PASTE(L,R) IPASTE(L,R)
23 # define PASTE(L,R ) L/**/R
26 /* Macro to substitute for # because VAX C currently doesn't allow it. */
31 # define STR(x) ISTR(x)
36 # define STR(x) ISTR(x)
40 ** MAXPATHLEN defines the longest permissable path length.
41 ** Is defined in <sys/param.h> in MIPS/Ultrix, but it not defined on the VAX.
42 ** Define here so available on both systems.
45 /*@constant int MAXPATHLEN; @*/
46 # define MAXPATHLEN 1024
51 OSD_PATHTOOLONG } filestatus;
53 extern /*@only@*/ char *LSLRootName (char *p_filespec) /*@*/ ;
56 osd_getPath (char *p_path, char *p_file, /*@out@*/ char **p_returnPath)
57 /*@modifies *p_returnPath@*/ ;
60 osd_getExePath (char *p_path, char *p_file, /*@out@*/ char **p_returnPath)
61 /*@modifies *p_returnPath@*/ ;
63 extern bool osd_fileExists (char *p_filespec) /*@*/ ;
64 extern /*@observer@*/ char *
65 osd_getEnvironment (char *p_env, /*@returned@*/ char *p_def) /*@*/ ;
67 extern filestatus osd_findOnLarchPath (char *p_file, /*@out@*/ char **p_returnPath)
68 /*@modifies *p_returnPath@*/ ;
70 extern /*@observer@*/ /*@null@*/ char *osd_getHomeDir (void) /*@*/ ;
72 extern /*@observer@*/ /*@null@*/ char *osd_getEnvironmentVariable (char *) ;
75 /*@constant int CALL_SUCCESS@*/
76 # define CALL_SUCCESS 0
78 extern int osd_system (const char *p_cmd) /*@modifies fileSystem@*/ ;
81 extern int osd_unlink (const char *) /*@modifies fileSystem@*/ ;
82 extern cstring osd_fixDefine (char *);
83 extern bool osd_fileIsReadable (char *);
85 extern bool osd_isConnectChar (char) /*@*/ ;
88 extern int osd_getPid (void) ;
90 extern int /*pid_t*/ osd_getPid (void) ;
94 # error "Multiple include"