Files
my-os-project2/share/sysdefs/ioctl.h

40 lines
708 B
C

#ifndef SHARE_SYSDEFS_IOCTL_H_
#define SHARE_SYSDEFS_IOCTL_H_
#define IOCTL_NOHANDLE (-1)
#define IOCTL_OPENF 0
#define IOCTL_CLOSEF 1
#define IOCTL_READ 2
#define IOCTL_STAT 3
#define IOCTL_WRITE 4
#define IOCTL_FETCHDIRENT 5
#define IOCTL_F_READ (1<<0)
#define IOCTL_F_WRITE (1<<1)
#define IOCTL_F_MAKE (1<<2)
#define IOCTLSTAT_DIR 0
#define IOCTLSTAT_FILE 1
#if !defined(__ASSEMBLER__)
#include <stdint.h>
#include <stddef.h>
typedef struct IoctlStat {
size_t size;
int32_t type;
} IoctlStat;
typedef struct IoctlDirent {
IoctlStat stat;
char name[0x100];
} IoctlDirent;
typedef int32_t IOH;
#endif
#endif // SHARE_SYSDEFS_IOCTL_H_