#define FileExists(name) (access(name,0)==0) char *strcat(); char * SearchPath(path, name) char *path, *name; /* ** Look for file 'name' in each directory in 'path' ** until it is found. ** Return the pathname if found, 'NULL' if not. ** The returned path is kept in a static array; ** copy it if you need to be safe. */ { static char s[1024]; if FileExists(name) return name; while (sscanf(path, "%s", s)==1) { path += strlen(s); while (*path == ' ') ++path; strcat(s, "/"), strcat(s, name); if FileExists(s) return s; } return (char *)0; }