⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 includes.inc

📁 A simple C compiler source code.
💻 INC
字号:
; Copyright (C) 1999-2002 Konstantin Boldyshev <konst@linuxassembly.org>;; $Id: includes.inc,v 1.18 2002/03/14 07:08:55 konst Exp $;; file          : includes.inc; created       : 04-Jul-1999; modified      : 14-Mar-2002; version       : 0.17; assembler     : nasm 0.98; description   : generic constants and structures from (libc) header files; author        : Konstantin Boldyshev <konst@linuxassembly.org>; comment       : included from system.inc%ifndef	__SYSTEM_INC%error "this file must be included from system.inc !"%endif%ifndef __INCLUDES_INC%define __INCLUDES_INC%assign	NULL	0%assign TRUE	1%assign FALSE	0%assign	STDIN	0%assign	STDOUT	1%assign	STDERR	2%assign	EOL	0%assign	__a	0x07%assign	__b	0x08%assign	__e	0x1b%assign	__f	0x0c%assign	__n	0x0a%assign	__r	0x0d%assign	__t	0x09%assign	__v	0x0b%assign	__s	0x20;;datatypes;%define		INT		resd%define		UINT		resd%define		LONG		resd%define		ULONG		resd%define 	SHORT		resw%define		USHORT		resw%define		CHAR		resb%define		UCHAR		resb%define		BYTE		resb%define		WORD		resw%define		DWORD		resd%define		U8		resb%define		U16		resw%define		U32		resd%define		TIME_T		LONG%define		MODE_T		UINT%define		SIZE_T		ULONG%define		OFF_T		ULONG%define		PCHAR		resd%define		PINT		resd%define		PLONG		resd%define		_INT		dd%define		_UINT		dd%define		_LONG		dd%define		_ULONG		dd%define 	_SHORT		dw%define		_USHORT		dw%define		_CHAR		db%define		_UCHAR		db%define		_BYTE		db%define		_WORD		dw%define		_DWORD		dd%define		_U8		db%define		_U16		dw%define		_U32		dd%define		_TIME_T		_LONG%define		_MODE_T		_UINT%define		_SIZE_T		_ULONG%define		_OFF_T		_ULONG;;please provide corresponding include file when adding new entries;;;fcntl.h;%assign SEEK_SET	0%assign SEEK_CUR	1%assign SEEK_END	2%assign O_RDONLY	0%assign O_WRONLY	1%assign O_RDWR		2%assign O_ACCMODE	3%assign O_CREAT		100q%assign O_EXCL		200q%assign O_NOCTTY	400q%assign O_TRUNC		1000q%assign O_APPEND	2000q%assign O_NONBLOCK	4000q%assign O_NDELAY	O_NONBLOCK%assign O_SYNC		 10000q%assign FASYNC		 20000q%assign O_DIRECT	 40000q%assign O_LARGEFILE	100000q%assign O_DIRECTORY	200000q%assign O_NOFOLLOW	400000q%assign F_DUPFD		0	;Duplicate file descriptor%assign F_GETFD		1	;Get file descriptor flags%assign F_SETFD		2	;Set file descriptor flags%assign F_GETFL		3	;Get file status flags%assign F_SETFL		4	;Set file status flags%assign F_GETLK		5	;Get record locking info%assign F_SETLK		6	;Set record locking info (non-blocking)%assign F_SETLKW	7	;Set record locking info (blocking);;unistd.h;%assign	R_OK	4	; read%assign W_OK	2	; write%assign X_OK	1	; execute%assign F_OK	0	; existence;;signal.h;%assign SIG_DFL		0%assign SIG_IGN		1%assign SIG_ERR		-1%assign	SIGHUP		1	;Hangup (POSIX)%assign	SIGINT		2	;Interrupt (ANSI)%assign	SIGQUIT		3	;Quit (POSIX)%assign	SIGILL		4	;Illegal instruction (ANSI)%assign	SIGTRAP		5	;Trace trap (POSIX)%assign	SIGABRT		6	;Abort (ANSI)%assign	SIGIOT		6	;IOT trap (4.2 BSD)%assign	SIGBUS		7	;BUS error (4.2 BSD)%assign	SIGFPE		8	;Floating-point exception (ANSI)%assign	SIGKILL		9	;Kill, unblockable (POSIX)%assign	SIGUSR1		10	;User-defined signal 1 (POSIX)%assign	SIGSEGV		11	;Segmentation violation (ANSI)%assign	SIGUSR2		12	;User-defined signal 2 (POSIX)%assign	SIGPIPE		13	;Broken pipe (POSIX)%assign	SIGALRM		14	;Alarm clock (POSIX)%assign	SIGTERM		15	;Termination (ANSI)%assign	SIGSTKFLT	16	;Stack fault%assign	SIGCHLD		17	;Child status has changed (POSIX)%assign	SIGCLD		SIGCHLD	;Same as SIGCHLD (System V)%assign	SIGCONT		18	;Continue (POSIX)%assign	SIGSTOP		19	;Stop, unblockable (POSIX)%assign	SIGTSTP		20	;Keyboard stop (POSIX)%assign	SIGTTIN		21	;Background read from tty (POSIX)%assign	SIGTTOU		22	;Background write to tty (POSIX)%assign	SIGURG		23	;Urgent condition on socket (4.2 BSD)%assign	SIGXCPU		24	;CPU limit exceeded (4.2 BSD)%assign	SIGXFSZ		25	;File size limit exceeded (4.2 BSD)%assign	SIGVTALRM	26	;Virtual alarm clock (4.2 BSD)%assign	SIGPROF		27	;Profiling alarm clock (4.2 BSD)%assign	SIGWINCH	28	;Window size change (4.3 BSD, Sun)%assign	SIGIO		29	;I/O now possible (4.2 BSD)%assign	SIGPOLL		SIGIO	;Pollable event occurred (System V)%assign	SIGPWR		30	;Power failure restart (System V)%assign SIGUNUSED	31%assign	_NSIG		64	;Biggest signal number + 1;;limits.h;%assign	NAME_MAX	255%assign	PATH_MAX	4095;;wait.h;%assign WNOHANG		1%assign WUNTRACED	2;;sys/ptrace.h;%assign PT_TRACEME 0%assign PT_PEEKDATA 2%assign PT_GETREGS 012%assign PT_SETREGS 013%assign PT_POKEDATA 5%assign PT_CONT 7%assign PT_KILL 8%assign PT_DETACH 0x11%assign PT_SINGLESTEP 9;;sys/socket.h;%assign AF_UNSPEC	0%assign AF_UNIX		1	; Unix domain sockets%assign AF_LOCAL	1	; POSIX name for AF_UNIX%assign AF_INET		2	; Internet IP Protocol%assign AF_AX25		3	; Amateur Radio AX.25%assign AF_IPX		4	; Novell IPX%assign AF_APPLETALK	5	; AppleTalk DDP%assign AF_NETROM	6	; Amateur Radio NET/ROM%assign AF_BRIDGE	7	; Multiprotocol bridge%assign AF_ATMPVC	8	; ATM PVCs%assign AF_X25		9	; Reserved for X.25 project%assign AF_INET6	10	; IP version 6%assign AF_ROSE		11	; Amateur Radio X.25 PLP%assign AF_DECnet	12	; Reserved for DECnet project%assign AF_NETBEUI	13	; Reserved for 802.2LLC project%assign AF_SECURITY	14	; Security callback pseudo AF%assign AF_KEY		15	; PF_KEY key management API%assign AF_NETLINK	16%assign AF_ROUTE	AF_NETLINK 	; Alias to emulate 4.4BSD%assign AF_PACKET	17	; Packet family%assign AF_ASH		18	; Ash%assign AF_ECONET	19	; Acorn Econet%assign AF_ATMSVC	20	; ATM SVCs%assign AF_SNA		22	; Linux SNA Project (nutters!)%assign AF_IRDA		23	; IRDA sockets%assign AF_MAX		32	; For now..%assign PF_UNSPEC	AF_UNSPEC%assign PF_UNIX		AF_UNIX%assign PF_LOCAL	AF_LOCAL%assign PF_INET		AF_INET%assign PF_AX25		AF_AX25%assign PF_IPX		AF_IPX%assign PF_APPLETALK	AF_APPLETALK%assign	PF_NETROM	AF_NETROM%assign PF_BRIDGE	AF_BRIDGE%assign PF_ATMPVC	AF_ATMPVC%assign PF_X25		AF_X25%assign PF_INET6	AF_INET6%assign PF_ROSE		AF_ROSE%assign PF_DECnet	AF_DECnet%assign PF_NETBEUI	AF_NETBEUI%assign PF_SECURITY	AF_SECURITY%assign PF_KEY		AF_KEY%assign PF_NETLINK	AF_NETLINK%assign PF_ROUTE	AF_ROUTE%assign PF_PACKET	AF_PACKET%assign PF_ASH		AF_ASH%assign PF_ECONET	AF_ECONET%assign PF_ATMSVC	AF_ATMSVC%assign PF_SNA		AF_SNA%assign PF_IRDA		AF_IRDA%assign PF_MAX		AF_MAX%assign SOCK_STREAM    1	;stream (connection) socket%assign SOCK_DGRAM     2	;datagram (conn.less) socket%assign SOCK_RAW       3	;raw socket%assign SOCK_RDM       4	;reliably-delivered message%assign SOCK_SEQPACKET 5	;sequential packet socket%assign SOCK_PACKET    10	;linux specific way of getting packets at the dev level%assign IPPROTO_IP		0		; Dummy protocol for TCP%assign IPPROTO_HOPOPTS		0		; IPv6 Hop-by-Hop options%assign IPPROTO_ICMP		1		; Internet Control Message Protocol%assign IPPROTO_IGMP		2		; Internet Group Management Protocol%assign IPPROTO_IPIP		4		; IPIP tunnels (older KA9Q tunnels use 94)%assign IPPROTO_TCP		6		; Transmission Control Protocol%assign IPPROTO_EGP		8		; Exterior Gateway Protocol%assign IPPROTO_PUP		12		; PUP protocol%assign IPPROTO_UDP		17		; User Datagram Protocol%assign IPPROTO_IDP		22		; XNS IDP protocol%assign IPPROTO_TP		29		; SO Transport Protocol Class 4%assign IPPROTO_IPV6		41		; IPv6 header%assign IPPROTO_ROUTING		43		; IPv6 routing header%assign IPPROTO_FRAGMENT 	44		; IPv6 fragmentation header%assign IPPROTO_RSVP		46		; Reservation Protocol%assign IPPROTO_GRE		47		; General Routing Encapsulation%assign IPPROTO_ESP		50		; encapsulating security payload%assign IPPROTO_AH		51		; authentication header%assign IPPROTO_ICMPV6		58		; ICMPv6%assign IPPROTO_NONE		59		; IPv6 no next header%assign IPPROTO_DSTOPTS		60		; IPv6 destination options%assign IPPROTO_MTP		92		; Multicast Transport Protocol%assign IPPROTO_ENCAP		98		; Encapsulation Header%assign IPPROTO_PIM		103		; Protocol Independent Multicast%assign IPPROTO_RAW		255		; Raw IP packets;; netinet/ip_icmp.h;%assign ICMP_ECHOREPLY          0       ; Echo Reply                   %assign ICMP_DEST_UNREACH       3       ; Destination Unreachable      %assign ICMP_SOURCE_QUENCH      4       ; Source Quench                %assign ICMP_REDIRECT           5       ; Redirect (change route)      %assign ICMP_ECHO               8       ; Echo Request                 %assign ICMP_TIME_EXCEEDED      11      ; Time Exceeded                %assign ICMP_PARAMETERPROB      12      ; Parameter Problem            %assign ICMP_TIMESTAMP          13      ; Timestamp Request            %assign ICMP_TIMESTAMPREPLY     14      ; Timestamp Reply              %assign ICMP_INFO_REQUEST       15      ; Information Request          %assign ICMP_INFO_REPLY         16      ; Information Reply            %assign ICMP_ADDRESS            17      ; Address Mask Request         %assign ICMP_ADDRESSREPLY       18      ; Address Mask Reply           %assign NR_ICMP_TYPES           18; Codes for UNREACH. %assign ICMP_NET_UNREACH        0       ; Network Unreachable          %assign ICMP_HOST_UNREACH       1       ; Host Unreachable             %assign ICMP_PROT_UNREACH       2       ; Protocol Unreachable         %assign ICMP_PORT_UNREACH       3       ; Port Unreachable             %assign ICMP_FRAG_NEEDED        4       ; Fragmentation Needed/DF set  %assign ICMP_SR_FAILED          5       ; Source Route failed          %assign ICMP_NET_UNKNOWN        6%assign ICMP_HOST_UNKNOWN       7%assign ICMP_HOST_ISOLATED      8%assign ICMP_NET_ANO            9%assign ICMP_HOST_ANO           10%assign ICMP_NET_UNR_TOS        11%assign ICMP_HOST_UNR_TOS       12%assign ICMP_PKT_FILTERED       13      ; Packet filtered %assign ICMP_PREC_VIOLATION     14      ; Precedence violation %assign ICMP_PREC_CUTOFF        15      ; Precedence cut off %assign NR_ICMP_UNREACH         15      ; instead of hardcoding immediate value ; Codes for REDIRECT. %assign ICMP_REDIR_NET          0       ; Redirect Net                 %assign ICMP_REDIR_HOST         1       ; Redirect Host                %assign ICMP_REDIR_NETTOS       2       ; Redirect Net for TOS         %assign ICMP_REDIR_HOSTTOS      3       ; Redirect Host for TOS        ; Codes for TIME_EXCEEDED. %assign ICMP_EXC_TTL            0       ; TTL count exceeded           %assign ICMP_EXC_FRAGTIME       1       ; Fragment Reass time exceeded ;;time.h;struc timespec.tv_sec		ULONG	1.tv_nsec	ULONG	1endstrucstruc timeval.tv_sec		ULONG	1.tv_usec	ULONG	1endstrucstruc tm.tm_sec		INT	1.tm_min		INT	1.tm_hour	INT	1.tm_mday	INT	1.tm_mon		INT	1.tm_year	INT	1.tm_wday	INT	1.tm_yday	INT	1.tm_isdst	INT	1.tm_gmtoff	LONG	1	;Seconds east of UTC.tm_zone	PCHAR	1	;Timezone abbreviationendstruc;;sys/utsname.h;%ifdef __BSD__%assign SYS_NMLN 32%assign MAXHOSTNAMELEN 256%else%assign SYS_NMLN 65%assign MAXHOSTNAMELEN SYS_NMLN - 1%endifstruc utsname.sysname	CHAR	SYS_NMLN.nodename	CHAR	SYS_NMLN.release	CHAR	SYS_NMLN.version	CHAR	SYS_NMLN.machine	CHAR	SYS_NMLN.domainname	CHAR	SYS_NMLNendstruc;;sys/mman.h;%assign PROT_READ	0x1%assign PROT_WRITE	0x2%assign PROT_EXEC	0x4%assign PROT_NONE	0x0%assign MAP_SHARED	0x01%assign MAP_PRIVATE	0x02%assign MAP_TYPE	0x0f%assign MAP_FIXED	0x10%assign MAP_ANONYMOUS	0x20;;sys/stat.h;%assign	S_ISUID	0004000q	;set user id on execution%assign	S_ISGID	0002000q	;set group id on execution%assign	S_ISTXT	0001000q	;sticky bit%assign	S_IRWXU	0000700q	;RWX mask for owner%assign	S_IRUSR	0000400q	;R for owner%assign	S_IWUSR	0000200q	;W for owner%assign	S_IXUSR	0000100q	;X for owner%assign	S_IREAD		S_IRUSR%assign	S_IWRITE	S_IWUSR%assign	S_IEXEC		S_IXUSR%assign	S_IRWXG	0000070q	;RWX mask for group%assign	S_IRGRP	0000040q	;R for group%assign	S_IWGRP	0000020q	;W for group%assign	S_IXGRP	0000010q	;X for group%assign	S_IRWXO	0000007q	;RWX mask for other%assign	S_IROTH	0000004q	;R for other%assign	S_IWOTH	0000002q	;W for other%assign	S_IXOTH	0000001q	;X for other%assign	S_IFMT	 0170000q	;type of file mask%assign	S_IFIFO	 0010000q	;named pipe (fifo)%assign	S_IFCHR	 0020000q	;character special%assign	S_IFDIR	 0040000q	;directory%assign	S_IFBLK	 0060000q	;block special%assign	S_IFREG	 0100000q	;regular%assign	S_IFLNK	 0120000q	;symbolic link%assign	S_IFSOCK 0140000q	;socket%assign	S_IFWHT  0160000q	;whiteout%assign	S_ISVTX	 0001000q	;save swapped text even after use;;sys/poll.h;%assign POLLIN      0x0001   ;There is data to read%assign POLLPRI     0x0002   ;There is urgent data to read%assign POLLOUT     0x0004   ;Writing now will not block%assign POLLERR     0x0008   ;Error condition%assign POLLHUP     0x0010   ;Hung up%assign POLLNVAL    0x0020   ;Invalid request: fd not open;;sys/resource.h;%assign PRIO_PROCESS	0%assign PRIO_PGRP	1%assign	PRIO_USER	2;;socket.h;struc	sockaddr.sa_family_t	USHORT	1		;address family, AF_xxx.sa_data	CHAR	14		;14 bytes of protocol addressendstruc;;in.h;struc in_addr.s_addr		U32	1endstruc;;;struc winsize.ws_row		USHORT	1.ws_col		USHORT	1.ws_xpixel	USHORT	1.ws_ypixel	USHORT	1endstruc%endif	;__INCLUDES_INC

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -