forked from KolibriOS/kolibrios
Adding menuetlibc back to its place in /programs/develop/libraries
This version of menuetlibc was taken from revision 4743, right before I made any changes git-svn-id: svn://kolibrios.org@4973 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
92
programs/develop/libraries/menuetlibc/include/dir.h
Normal file
92
programs/develop/libraries/menuetlibc/include/dir.h
Normal file
@@ -0,0 +1,92 @@
|
||||
/* Copyright (C) 1998 DJ Delorie, see COPYING.DJ for details */
|
||||
/* Copyright (C) 1995 DJ Delorie, see COPYING.DJ for details */
|
||||
#ifndef __dj_include_dir_h_
|
||||
#define __dj_include_dir_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifndef __dj_ENFORCE_ANSI_FREESTANDING
|
||||
|
||||
#ifndef __STRICT_ANSI__
|
||||
|
||||
#ifndef _POSIX_SOURCE
|
||||
|
||||
/* ffblk is also enhanced for LFNs; the dos 21 byte reserved area is used to
|
||||
hold the extra information. Fields marked LFN are only valid if the magic
|
||||
is set to LFN32 */
|
||||
|
||||
/* This is for g++ 2.7.2 and below */
|
||||
#pragma pack(push,1)
|
||||
|
||||
struct ffblk {
|
||||
char lfn_magic[6]; /* LFN */
|
||||
short lfn_handle; /* LFN */
|
||||
unsigned short lfn_ctime; /* LFN */
|
||||
unsigned short lfn_cdate; /* LFN */
|
||||
unsigned short lfn_atime; /* LFN */
|
||||
unsigned short lfn_adate; /* LFN */
|
||||
char _ff_reserved[5];
|
||||
unsigned char ff_attrib;
|
||||
unsigned short ff_ftime;
|
||||
unsigned short ff_fdate;
|
||||
unsigned long ff_fsize;
|
||||
char ff_name[260];
|
||||
};
|
||||
|
||||
struct ffblklfn {
|
||||
unsigned long fd_attrib;
|
||||
unsigned long long fd_ctime;
|
||||
unsigned long long fd_atime;
|
||||
unsigned long long fd_mtime;
|
||||
unsigned long fd_sizehi;
|
||||
unsigned long fd_size;
|
||||
unsigned long long fd_reserved;
|
||||
char fd_longname[260];
|
||||
char fd_name[14];
|
||||
};
|
||||
|
||||
#pragma pack(pop)
|
||||
|
||||
#define FA_RDONLY 1
|
||||
#define FA_HIDDEN 2
|
||||
#define FA_SYSTEM 4
|
||||
#define FA_LABEL 8
|
||||
#define FA_DIREC 16
|
||||
#define FA_ARCH 32
|
||||
|
||||
/* for fnmerge/fnsplit */
|
||||
#define MAXPATH 260
|
||||
#define MAXDRIVE 3
|
||||
#define MAXDIR 256
|
||||
#define MAXFILE 256
|
||||
#define MAXEXT 255
|
||||
|
||||
#define WILDCARDS 0x01
|
||||
#define EXTENSION 0x02
|
||||
#define FILENAME 0x04
|
||||
#define DIRECTORY 0x08
|
||||
#define DRIVE 0x10
|
||||
|
||||
int __file_tree_walk(const char *_dir, int (*_fn)(const char *_path, const struct ffblk *_ff));
|
||||
int findfirst(const char *_pathname, struct ffblk *_ffblk, int _attrib);
|
||||
int findnext(struct ffblk *_ffblk);
|
||||
void fnmerge (char *_path, const char *_drive, const char *_dir, const char *_name, const char *_ext);
|
||||
int fnsplit (const char *_path, char *_drive, char *_dir, char *_name, char *_ext);
|
||||
int getdisk(void);
|
||||
char * searchpath(const char *_program);
|
||||
int setdisk(int _drive);
|
||||
|
||||
#endif /* !_POSIX_SOURCE */
|
||||
#endif /* !__STRICT_ANSI__ */
|
||||
#endif /* !__dj_ENFORCE_ANSI_FREESTANDING */
|
||||
|
||||
#ifndef __dj_ENFORCE_FUNCTION_CALLS
|
||||
#endif /* !__dj_ENFORCE_FUNCTION_CALLS */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* !__dj_include_dir.h_ */
|
Reference in New Issue
Block a user