author | Ryan C. Gordon <icculus@icculus.org> |
Fri, 06 Jul 2001 21:29:37 +0000 | |
changeset 12 | a4041c91d715 |
parent 11 | 677e01f5109e |
child 15 | 418eacc97ac8 |
permissions | -rw-r--r-- |
9 | 1 |
/* |
2 |
* Internal function/structure declaration. Do NOT include in your |
|
3 |
* application. |
|
4 |
* |
|
5 |
* Please see the file LICENSE in the source's root directory. |
|
6 |
* |
|
7 |
* This file written by Ryan C. Gordon. |
|
8 |
*/ |
|
9 |
||
10 |
#ifndef _INCLUDE_PHYSFS_INTERNAL_H_ |
|
11 |
#define _INCLUDE_PHYSFS_INTERNAL_H_ |
|
12 |
||
13 |
#ifndef __PHYSICSFS_INTERNAL__ |
|
14 |
#error Do not include this header from your applications. |
|
15 |
#endif |
|
16 |
||
17 |
struct __PHYSFS_DIRREADER__; |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
18 |
struct __PHYSFS_FILEFUNCTIONS__; |
9 | 19 |
|
20 |
typedef struct __PHYSFS_FILEHANDLE__ |
|
21 |
{ |
|
22 |
/* |
|
23 |
* This is reserved for the driver to store information. |
|
24 |
*/ |
|
25 |
void *opaque; |
|
26 |
||
27 |
/* |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
28 |
* This should be the DirHandle that created this FileHandle. |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
29 |
*/ |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
30 |
const struct __PHYSFS_DIRREADER__ *dirReader; |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
31 |
|
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
32 |
/* |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
33 |
* Pointer to the file i/o functions for this filehandle. |
9 | 34 |
*/ |
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
35 |
const struct __PHYSFS_FILEFUNCTIONS__ *funcs; |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
36 |
} FileHandle; |
9 | 37 |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
38 |
|
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
39 |
typedef struct __PHYSFS_FILEFUNCTIONS__ |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
40 |
{ |
9 | 41 |
/* |
42 |
* Read more from the file. |
|
43 |
*/ |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
44 |
int (*read)(FileHandle *handle, void *buffer, |
9 | 45 |
unsigned int objSize, unsigned int objCount); |
46 |
||
47 |
/* |
|
48 |
* Write more to the file. Archives don't have to implement this. |
|
49 |
* (Set it to NULL if not implemented). |
|
50 |
*/ |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
51 |
int (*write)(FileHandle *handle, void *buffer, |
9 | 52 |
unsigned int objSize, unsigned int objCount); |
53 |
||
54 |
/* |
|
55 |
* Returns non-zero if at end of file. |
|
56 |
*/ |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
57 |
int (*eof)(FileHandle *handle); |
9 | 58 |
|
59 |
/* |
|
60 |
* Returns byte offset from start of file. |
|
61 |
*/ |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
62 |
int (*tell)(FileHandle *handle); |
9 | 63 |
|
64 |
/* |
|
65 |
* Move read/write pointer to byte offset from start of file. |
|
66 |
* Returns non-zero on success, zero on error. |
|
67 |
*/ |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
68 |
int (*seek)(FileHandle *handle, int offset); |
9 | 69 |
|
70 |
/* |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
71 |
* Close the file, and free the FileHandle structure (including "opaque"). |
9 | 72 |
*/ |
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
73 |
int (*close)(FileHandle *handle); |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
74 |
} FileFunctions; |
9 | 75 |
|
76 |
||
77 |
typedef struct __PHYSFS_DIRREADER__ |
|
78 |
{ |
|
79 |
/* |
|
80 |
* This is reserved for the driver to store information. |
|
81 |
*/ |
|
82 |
void *opaque; |
|
83 |
||
84 |
/* |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
85 |
* Pointer to the directory i/o functions for this reader. |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
86 |
*/ |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
87 |
const struct __PHYSFS_DIRFUNCTIONS__ *funcs; |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
88 |
} DirHandle; |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
89 |
|
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
90 |
|
12
a4041c91d715
Redesign of enumerateFiles code. More efficient and clean, less memory
Ryan C. Gordon <icculus@icculus.org>
parents:
11
diff
changeset
|
91 |
typedef struct __PHYSFS_LINKEDSTRINGLIST__ |
a4041c91d715
Redesign of enumerateFiles code. More efficient and clean, less memory
Ryan C. Gordon <icculus@icculus.org>
parents:
11
diff
changeset
|
92 |
{ |
a4041c91d715
Redesign of enumerateFiles code. More efficient and clean, less memory
Ryan C. Gordon <icculus@icculus.org>
parents:
11
diff
changeset
|
93 |
char *str; |
a4041c91d715
Redesign of enumerateFiles code. More efficient and clean, less memory
Ryan C. Gordon <icculus@icculus.org>
parents:
11
diff
changeset
|
94 |
struct __PHYSFS_LINKEDSTRINGLIST__ *next; |
a4041c91d715
Redesign of enumerateFiles code. More efficient and clean, less memory
Ryan C. Gordon <icculus@icculus.org>
parents:
11
diff
changeset
|
95 |
} LinkedStringList; |
a4041c91d715
Redesign of enumerateFiles code. More efficient and clean, less memory
Ryan C. Gordon <icculus@icculus.org>
parents:
11
diff
changeset
|
96 |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
97 |
/* |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
98 |
* Symlinks should always be followed; PhysicsFS will use |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
99 |
* DirFunctions->isSymLink() and make a judgement on whether to |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
100 |
* continue to call other methods based on that. |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
101 |
*/ |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
102 |
typedef struct __PHYSFS_DIRFUNCTIONS__ |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
103 |
{ |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
104 |
/* |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
105 |
* Returns non-zero if (filename) is a valid archive that this |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
106 |
* driver can handle. This filename is in platform-dependent |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
107 |
* notation. |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
108 |
*/ |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
109 |
int (*isArchive)(const char *filename); |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
110 |
|
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
111 |
/* |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
112 |
* Return a DirHandle for dir/archive (name). |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
113 |
* This filename is in platform-dependent notation. |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
114 |
* return (NULL) on error. |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
115 |
*/ |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
116 |
DirHandle *(*openArchive)(const char *name); |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
117 |
|
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
118 |
/* |
12
a4041c91d715
Redesign of enumerateFiles code. More efficient and clean, less memory
Ryan C. Gordon <icculus@icculus.org>
parents:
11
diff
changeset
|
119 |
* Returns a list of all files in dirname. Each element of this list |
a4041c91d715
Redesign of enumerateFiles code. More efficient and clean, less memory
Ryan C. Gordon <icculus@icculus.org>
parents:
11
diff
changeset
|
120 |
* (and its "str" field) will be deallocated with the system's free() |
a4041c91d715
Redesign of enumerateFiles code. More efficient and clean, less memory
Ryan C. Gordon <icculus@icculus.org>
parents:
11
diff
changeset
|
121 |
* function by the caller, so be sure to explicitly malloc() each |
a4041c91d715
Redesign of enumerateFiles code. More efficient and clean, less memory
Ryan C. Gordon <icculus@icculus.org>
parents:
11
diff
changeset
|
122 |
* chunk. |
a4041c91d715
Redesign of enumerateFiles code. More efficient and clean, less memory
Ryan C. Gordon <icculus@icculus.org>
parents:
11
diff
changeset
|
123 |
* If you have a memory failure, return as much as you can. |
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
124 |
* This dirname is in platform-independent notation. |
9 | 125 |
*/ |
12
a4041c91d715
Redesign of enumerateFiles code. More efficient and clean, less memory
Ryan C. Gordon <icculus@icculus.org>
parents:
11
diff
changeset
|
126 |
LinkedStringList **(*enumerateFiles)(DirHandle *r, const char *dirname); |
9 | 127 |
|
128 |
/* |
|
129 |
* Returns non-zero if filename is really a directory. |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
130 |
* This filename is in platform-independent notation. |
9 | 131 |
*/ |
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
132 |
int (*isDirectory)(DirHandle *r, const char *name); |
9 | 133 |
|
134 |
/* |
|
135 |
* Returns non-zero if filename is really a symlink. |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
136 |
* This filename is in platform-independent notation. |
9 | 137 |
*/ |
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
138 |
int (*isSymLink)(DirHandle *r, const char *name); |
9 | 139 |
|
140 |
/* |
|
141 |
* Returns non-zero if filename can be opened for reading. |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
142 |
* This filename is in platform-independent notation. |
9 | 143 |
*/ |
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
144 |
int (*isOpenable)(DirHandle *r, const char *name); |
9 | 145 |
|
146 |
/* |
|
147 |
* Open file for reading, and return a FileHandle. |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
148 |
* This filename is in platform-independent notation. |
9 | 149 |
*/ |
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
150 |
FileHandle *(*openRead)(DirHandle *r, const char *filename); |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
151 |
|
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
152 |
/* |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
153 |
* Open file for writing, and return a FileHandle. |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
154 |
* This filename is in platform-independent notation. |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
155 |
* This method may be NULL. |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
156 |
*/ |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
157 |
FileHandle *(*openWrite)(DirHandle *r, const char *filename); |
9 | 158 |
|
159 |
/* |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
160 |
* Open file for appending, and return a FileHandle. |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
161 |
* This filename is in platform-independent notation. |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
162 |
* This method may be NULL. |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
163 |
*/ |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
164 |
FileHandle *(*openAppend)(DirHandle *r, const char *filename); |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
165 |
|
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
166 |
/* |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
167 |
* Close directories/archives, and free the handle, including |
9 | 168 |
* the "opaque" entry. This should assume that it won't be called if |
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
169 |
* there are still files open from this DirHandle. |
9 | 170 |
*/ |
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
171 |
void (*close)(DirHandle *r); |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
172 |
} DirFunctions; |
9 | 173 |
|
174 |
||
175 |
/* error messages... */ |
|
176 |
#define ERR_IS_INITIALIZED "Already initialized" |
|
177 |
#define ERR_NOT_INITIALIZED "Not initialized" |
|
178 |
#define ERR_INVALID_ARGUMENT "Invalid argument" |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
179 |
#define ERR_FILES_OPEN_READ "Files still open for reading" |
9 | 180 |
#define ERR_FILES_OPEN_WRITE "Files still open for writing" |
181 |
#define ERR_NO_DIR_CREATE "Failed to create directories" |
|
182 |
#define ERR_OUT_OF_MEMORY "Out of memory" |
|
183 |
#define ERR_NOT_IN_SEARCH_PATH "No such entry in search path" |
|
184 |
#define ERR_NOT_SUPPORTED "Operation not supported" |
|
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
185 |
#define ERR_UNSUPPORTED_ARCHIVE "Archive type unsupported" |
9 | 186 |
|
187 |
||
188 |
/* |
|
189 |
* Call this to set the message returned by PHYSFS_getLastError(). |
|
190 |
* Please only use the ERR_* constants above, or add new constants to the |
|
191 |
* above group, but I want these all in one place. |
|
192 |
*/ |
|
193 |
void __PHYSFS_setError(const char *err); |
|
194 |
||
195 |
||
196 |
/* This gets used all over for lessening code clutter. */ |
|
197 |
#define BAIL_IF_MACRO(c, e, r) if (c) { __PHYSFS_setError(e); return(r); } |
|
198 |
||
199 |
||
200 |
||
201 |
||
202 |
/*--------------------------------------------------------------------------*/ |
|
203 |
/*--------------------------------------------------------------------------*/ |
|
204 |
/*------------ ----------------*/ |
|
205 |
/*------------ You MUST implement the following functions ----------------*/ |
|
206 |
/*------------ if porting to a new platform. ----------------*/ |
|
207 |
/*------------ (see unix.c for an example) ----------------*/ |
|
208 |
/*------------ ----------------*/ |
|
209 |
/*--------------------------------------------------------------------------*/ |
|
210 |
/*--------------------------------------------------------------------------*/ |
|
211 |
||
212 |
||
213 |
/* |
|
214 |
* The dir separator; "/" on unix, "\\" on win32, ":" on MacOS, etc... |
|
215 |
* Obviously, this isn't a function, but it IS a null-terminated string. |
|
216 |
*/ |
|
217 |
extern const char *__PHYSFS_PlatformDirSeparator; |
|
218 |
||
219 |
/* |
|
220 |
* Platform implementation of PHYSFS_getCdRomDirs()... |
|
221 |
* See physfs.h. The retval should be freeable via PHYSFS_freeList(). |
|
222 |
*/ |
|
223 |
char **__PHYSFS_platformDetectAvailableCDs(void); |
|
224 |
||
225 |
/* |
|
226 |
* Calculate the base dir, if your platform needs special consideration. |
|
227 |
* Just return NULL if the standard routines will suffice. (see |
|
228 |
* calculateBaseDir() in physfs.c ...) |
|
229 |
* Caller will free() the retval if it's not NULL. |
|
230 |
*/ |
|
231 |
char *__PHYSFS_platformCalcBaseDir(char *argv0); |
|
232 |
||
233 |
/* |
|
234 |
* Get the platform-specific user name. |
|
235 |
* Caller will free() the retval if it's not NULL. If it's NULL, the username |
|
236 |
* will default to "default". |
|
237 |
*/ |
|
238 |
char *__PHYSFS_platformGetUserName(void); |
|
239 |
||
240 |
/* |
|
241 |
* Get the platform-specific user dir. |
|
242 |
* Caller will free() the retval if it's not NULL. If it's NULL, the userdir |
|
243 |
* will default to basedir/username. |
|
244 |
*/ |
|
245 |
char *__PHYSFS_platformGetUserDir(void); |
|
246 |
||
247 |
/* |
|
248 |
* Return a number that uniquely identifies the current thread. |
|
249 |
* On a platform without threading, (1) will suffice. These numbers are |
|
250 |
* arbitrary; the only requirement is that no two threads have the same |
|
251 |
* number. |
|
252 |
*/ |
|
253 |
int __PHYSFS_platformGetThreadID(void); |
|
254 |
||
255 |
/* |
|
256 |
* This is a pass-through to whatever stricmp() is called on your platform. |
|
257 |
*/ |
|
258 |
int __PHYSFS_platformStricmp(const char *str1, const char *str2); |
|
259 |
||
11
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
260 |
/* |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
261 |
* Return non-zero if filename (in platform-dependent notation) is a symlink. |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
262 |
*/ |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
263 |
int __PHYSFS_platformIsSymlink(const char *fname); |
677e01f5109e
Progress toward complete implementation continues...
Ryan C. Gordon <icculus@icculus.org>
parents:
9
diff
changeset
|
264 |
|
9 | 265 |
|
266 |
#ifdef __cplusplus |
|
267 |
extern "C" { |
|
268 |
#endif |
|
269 |
||
270 |
#endif |
|
271 |
||
272 |
/* end of physfs_internal.h ... */ |
|
273 |