1 #ifndef __EMUL_HANDLER_INTERN_H
2 #define __EMUL_HANDLER_INTERN_H
4 Copyright © 1995-2007, The AROS Development Team. All rights reserved.
7 Desc: Internal header-file for emulation-handler.
13 #include <exec/libraries.h>
14 #include <exec/types.h>
15 #include <dos/dosextens.h>
16 #include <hidd/hidd.h>
19 #define timeval sys_timeval
21 //#include <sys/types.h>
27 /* nlorentz: Cal it eb_std* because std* is reserved */
28 struct Unit
* eb_stdin
;
29 struct Unit
* eb_stdout
;
30 struct Unit
* eb_stderr
;
31 struct SignalSemaphore sem
;
32 struct SignalSemaphore memsem
;
33 char * current_volume
;
41 char * name
; /* full name including pathname */
42 int type
; /* type can either be FHD_FILE or FHD_DIRECTORY */
43 char * pathname
; /* if type == FHD_FILE then you'll find the pathname here */
44 long dirpos
; /* and how to reach it via seekdir(.,dirpos) here. */
45 void * DIR; /* both of these vars will be filled in by examine *only* (at the moment) */
51 #define FHD_DIRECTORY 1
54 /* Support functions */
55 static LONG
makefilename(struct emulbase
*, char **dest
, STRPTR path
, STRPTR filename
);
58 static LONG
read_softlink(struct emulbase
*, struct filehandle
*, STRPTR
, ULONG
);
63 #define EHND_Dummy (TAG_USER + 0x03210000)
64 #define EHND_OpenImpl (EHND_Dummy+1)
65 #define EHND_CloseImpl (EHND_Dummy+2)
66 #define EHND_OpenDirImpl (EHND_Dummy+3)
67 #define EHND_CloseDirImpl (EHND_Dummy+4)
68 #define EHND_StatImpl (EHND_Dummy+5)
69 #define EHND_LStatImpl (EHND_Dummy+6)
70 #define EHND_CheckDirImpl (EHND_Dummy+7)
71 #define EHND_DirNameImpl (EHND_Dummy+8)
72 #define EHND_TellDirImpl (EHND_Dummy+9)
73 #define EHND_SeekDirImpl (EHND_Dummy+10)
74 #define EHND_RewindDirImpl (EHND_Dummy+11)
75 #define EHND_DeleteImpl (EHND_Dummy+12)
76 #define EHND_RenameImpl (EHND_Dummy+13)
77 #define EHND_GetEnvImpl (EHND_Dummy+14)
78 #define EHND_GetHomeImpl (EHND_Dummy+15)
79 #define EHND_GetCWDImpl (EHND_Dummy+16)
80 #define EHND_ClosePWImpl (EHND_Dummy+17)
81 #define EHND_StatFSImpl (EHND_Dummy+18)
82 #define EHND_ChDirImpl (EHND_Dummy+19)
83 #define EHND_IsattyImpl (EHND_Dummy+20)
84 #define EHND_LinkImpl (EHND_Dummy+21)
85 #define EHND_LSeekImpl (EHND_Dummy+22)
86 #define EHND_ChmodImpl (EHND_Dummy+23)
87 #define EHND_SymLinkImpl (EHND_Dummy+24)
88 #define EHND_MKDirImpl (EHND_Dummy+25)
89 #define EHND_ReadImpl (EHND_Dummy+26)
90 #define EHND_ReadLinkImpl (EHND_Dummy+27)
91 #define EHND_WriteImpl (EHND_Dummy+28)
94 #endif /* __EMUL_HANDLER_INTERN_H */