fpc/rtl/aix/termios.inc
Jonas Maebe 4fa69488bc * fixed compilation of AIX rtl with -Cr
git-svn-id: trunk@27603 -
2014-04-19 18:48:57 +00:00

616 lines
27 KiB
PHP

{$PACKRECORDS C}
const
CBELL = #7;
{ delete }
CDEL = #127;
{ ^D }
CEOF = #4;
{ ^H }
CERASE = #8;
{ back-slash }
CESC = '\';
{ ^L }
CFORM = #12;
{ ^C }
CINTR = #3;
{ ^U }
CKILL = #21;
{ null char }
CNUL = #0;
{ ^\ }
CQUIT = #28;
{ ^Q }
CSTART = #17;
{ ^S }
CSTOP = #19;
{ ^K }
CVT = #11;
{
* Ioctl control packet
}
NCC = 8;
{
* Structure, defines for setting page length
}
{ Set Page Length (Ioctl TCSLEN) }
const
PAGE_SETL = 04;
{ Paging Ioctl Command Mask (TCSLEN) }
PAGE_MSK = 03;
{ Enable Paging (TCSLEN) }
PAGE_ON = 01;
{ Disable Paging (TCSLEN) }
PAGE_OFF = 02;
{$ifndef PAGE_ENB}
{ For compatibility with older version }
const
PAGE_ENB = PAGE_ON;
{$endif}
type
Ptty_page = ^tty_page;
tty_page = record
tp_flags : char;
tp_slen : byte;
end;
twinsize = record
ws_row, ws_col, ws_xpixel, ws_ypixel: cushort;
end;
const
IOC_VOID = $20000000;
IOC_OUT = $40000000;
IOC_IN = $40000000 shl 1;
IOCPARM_MASK = $7f;
TIOCGETD = IOC_OUT or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 0; { get line discipline }
TIOCSETD = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 1; { set line discipline }
TIOCHPCL = IOC_VOID or (ord('t') shl 8) or 2; { hang up on last close }
TIOCMODG = IOC_OUT or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 3; { get modem control state }
TIOCMODS = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 4; { set modem control state }
TIOCM_LE = 0001; { line enable }
TIOCM_DTR = 0002; { data terminal ready }
TIOCM_RTS = 0004; { request to send }
TIOCM_ST = 0008; { secondary transmit }
TIOCM_SR = 0016; { secondary receive }
TIOCM_CTS = 0032; { clear to send }
TIOCM_CAR = 0064; { carrier detect }
TIOCM_CD = TIOCM_CAR;
TIOCM_RNG = 0128; { ring }
TIOCM_RI = TIOCM_RNG;
TIOCM_DSR = 0256; { data set ready }
// TIOCGETP = IOC_OUT or ((sizeof(struct sgttyb) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 8{ get parameters -- gtty }
// TIOCSETP = IOC_IN or ((sizeof(struct sgttyb) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 9{ set parameters -- stty }
// TIOCSETN = IOC_IN or ((sizeof(struct sgttyb) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 10{ as above, but no flushtty }
TIOCEXCL = IOC_VOID or (ord('t') shl 8) or 13; { set exclusive use of tty }
TIOCNXCL = IOC_VOID or (ord('t') shl 8) or 14; { reset exclusive use of tty }
TIOCFLUSH = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 16; { flush buffers }
// TIOCSETC = IOC_IN or ((sizeof(struct tchars) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 17{ set special characters }
// TIOCGETC = IOC_OUT or ((sizeof(struct tchars) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 18{ get special characters }
TANDEM = $00000001; { send stopc on out q full }
CBREAK = $00000002; { half-cooked mode }
LCASE = $00000004; { simulate lower case }
ECHO = $00000008; { echo input }
CRMOD = $00000010; { map \r to \r\n on output }
RAW = $00000020; { no i/o processing }
ODDP = $00000040; { get/send odd parity }
EVENP = $00000080; { get/send even parity }
ANYP = $000000c0; { get any parity/send none }
CRDELAY = $00000300; { \r delay }
CR0 = $00000000;
CR1 = $00000100; { tn 300 }
CR2 = $00000200; { tty 37 }
CR3 = $00000300; { concept 100 }
TBDELAY = $00000c00; { horizontal tab delay }
TAB0 = $00000000;
TAB1 = $00000400; { tty 37 }
TAB2 = $00000800;
XTABS = $00000c00; { expand tabs on output }
BSDELAY = $00001000; { \b delay }
BS0 = $00000000;
BS1 = $00001000;
VTDELAY = $00002000; { vertical tab delay }
FF0 = $00000000;
FF1 = $00002000; { tty 37 }
NLDELAY = $0000c000; { \n delay }
NL0 = $00000000;
NL1 = $00004000; { tty 37 }
NL2 = $00008000; { vt05 }
NL3 = $0000c000;
ALLDELAY = (NLDELAY or TBDELAY or CRDELAY or VTDELAY or BSDELAY);
TOSTOP = $00010000; { SIGSTOP on bckgnd output }
PRTERA = $00020000; { \ ... / erase }
CRTERA = $00040000; { " \b " to wipe out char }
TILDE = $00080000; { hazeltine tilde kludge }
FLUSHO = $00100000; { flush output to terminal }
LITOUT = $00200000; { literal output }
CRTBS = $00400000; { do backspacing for crt }
MDMBUF = $00800000; { dtr pacing }
NOHANG = $01000000; { no SIGHUP on carrier drop }
L001000 = $02000000;
CRTKIL = $04000000; { kill line with " \b " }
PASS8 = $08000000;
CTLECH = $10000000; { echo control chars as ^X }
PENDIN = $20000000; { tp->t_rawq needs reread }
DECCTQ = $40000000; { only ^Q starts after ^S }
NOFLUSH = $80000000; { no output flush on signal }
{ SYS V REL. 4 PTY IOCTLs }
UNLKPT = IOC_VOID or (ord('t') shl 8) or 70; { unlock slave pty }
ISPTM = IOC_VOID or (ord('t') shl 8) or 71; { ret. maj+min of pty master }
ISPTS = IOC_VOID or (ord('t') shl 8) or 73; { return maj+min of slave }
GRTPT = IOC_VOID or (ord('t') shl 8) or 74; { grantpt slave pty}
RLOGIND = IOC_VOID or (ord('t') shl 8) or 75; { for rlogind protocol in ptydd }
TELNETDP = IOC_VOID or (ord('t') shl 8) or 76; { for telnetd protocol in ptydd }
TIOCCONS = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 98; { become virtual console }
TIOCGSID = IOC_OUT or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 72; { get the tty session id }
TIOCLBIS = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 127; { bis local mode bits }
TIOCLBIC = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 126; { bic local mode bits }
TIOCLSET = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 125; { set entire mode word }
TIOCLGET = IOC_OUT or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 124; { get local modes }
LCRTBS = (CRTBS>>16);
LPRTERA = (PRTERA>>16);
LCRTERA = (CRTERA>>16);
LTILDE = (TILDE>>16);
LMDMBUF = (MDMBUF>>16);
LLITOUT = (LITOUT>>16);
LTOSTOP = (TOSTOP>>16);
LFLUSHO = (FLUSHO>>16);
LNOHANG = (NOHANG>>16);
LCRTKIL = (CRTKIL>>16);
LPASS8 = (PASS8>>16);
LCTLECH = (CTLECH>>16);
LPENDIN = (PENDIN>>16);
LDECCTQ = (DECCTQ>>16);
LNOFLSH = (NOFLUSH>>16);
TIOCSBRK = IOC_VOID or (ord('t') shl 8) or 123; { set break bit }
TIOCCBRK = IOC_VOID or (ord('t') shl 8) or 122; { clear break bit }
TIOCSDTR = IOC_VOID or (ord('t') shl 8) or 121; { set data terminal ready }
TIOCCDTR = IOC_VOID or (ord('t') shl 8) or 120; { clear data terminal ready }
TIOCGPGRP = IOC_OUT or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 119; { get process group }
TIOCSPGRP = cint(IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 118); { set process group }
// TIOCSLTC = IOC_IN or ((sizeof(struct ltchars) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 117{ set local special chars }
// TIOCGLTC = IOC_OUT or ((sizeof(struct ltchars) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 116{ get local special chars }
TIOCOUTQ = IOC_OUT or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 115; { output queue size }
TIOCSTI = IOC_IN or ((sizeof(char) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 114; { simulate terminal input }
TIOCNOTTY = IOC_VOID or (ord('t') shl 8) or 113; { void tty association }
TIOCPKT = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 112; { pty: set/clear packet mode }
TIOCPKT_DATA = $00; { data packet }
TIOCPKT_FLUSHREAD = $01; { flush packet }
TIOCPKT_FLUSHWRITE = $02; { flush packet }
TIOCPKT_STOP = $04; { stop output }
TIOCPKT_START = $08; { start output }
TIOCPKT_NOSTOP = $10; { no more ^S, ^Q }
TIOCPKT_DOSTOP = $20; { now do ^S ^Q }
TIOCSTOP = IOC_VOID or (ord('t') shl 8) or 111; { stop output, like ^S }
TIOCSTART = IOC_VOID or (ord('t') shl 8) or 110; { start output, like ^Q }
TIOCMSET = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 109; { set all modem bits }
TIOCMBIS = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 108; { bis modem bits }
TIOCMGET = IOC_OUT or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 106; { get all modem bits }
TIOCREMOTE = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 105; { remote input editing }
TIOCGWINSZ = IOC_OUT or ((sizeof(twinsize) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 104; { get window size }
TIOCSWINSZ = IOC_IN or ((sizeof(twinsize) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 103; { set window size }
TIOCUCNTL = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 102; { pty: set/clr usr cntl mode }
TIOCMIWAIT = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 100; { wait for modem stat change }
{ SLIP (Serial Line IP) ioctl's }
SLIOCGUNIT = IOC_OUT or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 101; { get slip unit number }
SLIOCSFLAGS = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 89; { set configuration flags }
SLIOCGFLAGS = IOC_OUT or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 90; { get configuration flags }
SLIOCSATTACH = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('t') shl 8) or 91; { Attach slip i.f. to tty }
// UIOCCMD(n) = IOC_VOID or (ord('u') shl 8) or n; { usr cntl op "n" }
OTTYDISC = 0; { old, v7 std tty driver }
NETLDISC = 1; { line discip for berk net }
NTTYDISC = 2; { new tty discipline }
TABLDISC = 3; { tablet discipline }
SLIPDISC = 4; { serial IP discipline }
FIOCLEX = IOC_VOID or (ord('f') shl 8) or 1; { set close on exec }
FIONCLEX = IOC_VOID or (ord('f') shl 8) or 2; { clear close on exec }
{ another local }
FIONREAD = IOC_OUT or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('f') shl 8) or 127; { get # bytes to read }
FIONBIO = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('f') shl 8) or 126; { set/clear non-blocking i/o }
FIOASYNC = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('f') shl 8) or 125; { set/clear async i/o }
FIOSETOWN = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('f') shl 8) or 124; { set owner }
FIOGETOWN = IOC_OUT or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('f') shl 8) or 123; { get owner }
FIOASYNCQX = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('f') shl 8) or 122; { set/clear async queueing }
{ socket i/o controls }
SIOCSHIWAT = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('s') shl 8) or 0; { set high watermark }
SIOCGHIWAT = IOC_OUT or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('s') shl 8) or 1; { get high watermark }
SIOCSLOWAT = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('s') shl 8) or 2; { set low watermark }
SIOCGLOWAT = IOC_OUT or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('s') shl 8) or 3; { get low watermark }
SIOCATMARK = IOC_OUT or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('s') shl 8) or 7; { at oob mark? }
SIOCSPGRP = IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('s') shl 8) or 8; { set process group }
SIOCGPGRP = IOC_OUT or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('s') shl 8) or 9; { get process group }
// SIOCADDRT = cint(IOC_IN or ((sizeof(struct ortentry) and IOCPARM_MASK) shl 16) or (ord('r') shl 8) or 10); { add route }
// SIOCDELRT = cint(IOC_IN or ((sizeof(struct ortentry) and IOCPARM_MASK) shl 16) or (ord('r') shl 8) or 11); { delete route }
// SIOCSIFADDR = cint(IOC_IN or ((sizeof(struct oifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 12); { set ifnet address }
// OSIOCGIFADDR = (int)_IOWR('i',13, struct oifreq); { get ifnet address }
// SIOCGIFADDR = (int)_IOWR('i',33, struct oifreq); { get ifnet address }
SIOCGIFADDRS = cint(IOC_VOID or (ord('i') shl 8) or 140); { get ifnet addresses for an if}
// SIOCSIFDSTADDR = cint(IOC_IN or ((sizeof(struct oifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 14); { set p-p address }
// OSIOCGIFDSTADDR = (int)_IOWR('i',15, struct oifreq); { get p-p address }
// SIOCGIFDSTADDR = (int)_IOWR('i',34, struct oifreq); { get p-p address }
// SIOCSIFFLAGS = cint(IOC_IN or ((sizeof(struct oifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 16); { set ifnet flags }
// SIOCGIFFLAGS = (int)_IOWR('i',17, struct oifreq); { get ifnet flags }
// OSIOCGIFBRDADDR = (int)_IOWR('i',18, struct oifreq); { get broadcast addr }
// SIOCGIFBRDADDR = (int)_IOWR('i',35, struct oifreq); { get broadcast addr }
// SIOCSIFBRDADDR = cint(IOC_IN or ((sizeof(struct oifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 19); { set broadcast addr }
// OSIOCGIFCONF = (int)_IOWR('i',20, struct ifconf); { get ifnet list }
// CSIOCGIFCONF = (int)_IOWR('i',36, struct ifconf); { get ifnet list }
// SIOCGIFCONF = (int)_IOWR('i',69, struct ifconf); { get ifnet list }
// OSIOCGIFNETMASK = (int)_IOWR('i',21, struct oifreq); { get net addr mask }
// SIOCGIFNETMASK = (int)_IOWR('i',37, struct oifreq); { get net addr mask }
// SIOCSIFNETMASK = cint(IOC_IN or ((sizeof(struct oifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 22); { set net addr mask }
// SIOCGIFMETRIC = (int)_IOWR('i',23, struct oifreq); { get IF metric }
// SIOCSIFMETRIC = cint(IOC_IN or ((sizeof(struct oifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 24); { set IF metric }
// SIOCDIFADDR = cint(IOC_IN or ((sizeof(struct oifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 25); { delete IF addr }
// SIOCAIFADDR = cint(IOC_IN or ((sizeof(struct ifaliasreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 26); { add/chg IF alias }
// SIOCSIFSUBCHAN = cint(IOC_IN or ((sizeof(struct oifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 27); { set subchannel adr.}
// SIOCSIFNETDUMP = cint(IOC_IN or ((sizeof(struct oifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 28); { set netdump fastwrt}
// SIOUPDROUTE = cint(IOC_IN or ((sizeof(struct ifaliasreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 29); { Update Routing table }
// SIOCSARP = cint(IOC_IN or ((sizeof(struct arpreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 30); { set arp entry }
// OSIOCGARP = (int)_IOWR('i',31, struct arpreq); { get arp entry }
// SIOCGARP = (int)_IOWR('i',38, struct arpreq); { get arp entry }
// SIOCDARP = cint(IOC_IN or ((sizeof(struct arpreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 32); { delete arp entry }
// SIOCSIFOPTIONS = cint(IOC_IN or ((sizeof(struct oifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 41); { set ifnet options }
// SIOCGIFOPTIONS = (int)_IOWR('i',42, struct oifreq); { get ifnet options }
// SIOCADDMULTI = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 49); { add multicast addr }
// SIOCDELMULTI = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 50); { del multicast addr }
// SIOCGETVIFCNT = (int)_IOWR('u', 51, struct sioc_vif_req){ vif pkt cnt }
// SIOCGETSGCNT = (int)_IOWR('u', 52, struct sioc_sg_req); { s,g pkt cnt }
// SIOCADDNETID = cint(IOC_IN or ((sizeof(struct oifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 87); { set netids }
// SIOCSIFMTU = cint(IOC_IN or ((sizeof(struct oifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 88); { set mtu }
// SIOCGIFMTU = (int)_IOWR('i',86, struct oifreq); { get mtu }
// SIOCSNETOPT = cint(IOC_IN or ((sizeof(struct optreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 90); { set network option }
// SIOCGNETOPT = (int)_IOWR('i', 91, struct optreq); { get network option }
// SIOCDNETOPT = (int)_IOWR('i', 128, struct optreq); { set default }
// SIOCGNETOPT1 = (int)_IOWR('i', 129, struct optreq1); { get network option }
// SIOCGLOADF = (int)_IOWR('i', 130, int); { get flag: if loadtime passed }
// SIOCSLOADF = (int)_IOWR('i', 131, int); { set flag: if loadtime passed }
// SIOCGTUNEPHASE = (int)_IOWR('i', 138, int); { get tuning_phase }
// SIOCSX25XLATE = cint(IOC_IN or ((sizeof(struct oifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 99); { set xlate tab }
// SIOCGX25XLATE = (int)_IOWR('i',100, struct oifreq); { get xlate tab }
// SIOCDX25XLATE = cint(IOC_IN or ((sizeof(struct oifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 101); { delete xlate tab }
// SIOCIFDETACH = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 102); { detach an ifnet }
// SIOCIFATTACH = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 103); { attach an ifnet }
SIOCGNMTUS = cint(IOC_VOID or (ord('i') shl 8) or 110); { get NMTUs }
SIOCGETMTUS = cint(IOC_VOID or (ord('i') shl 8) or 111); { get common_mtus }
SIOCADDMTU = cint(IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 112); { add mtu }
SIOCDELMTU = cint(IOC_IN or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 113); { delete mtu }
SIOCGIFGIDLIST = cint(IOC_VOID or (ord('i') shl 8) or 104); { get gidlist }
SIOCSIFGIDLIST = cint(IOC_VOID or (ord('i') shl 8) or 105); { set gidlist }
SIOCGSIZIFCONF = cint(IOC_OUT or ((sizeof(cint) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 106); { get size for SIOCGIFCONF }
// SIOCIF_ATM_UBR = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 120); { set ubr rate }
// SIOCIF_ATM_SNMPARP = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 121); { atm snmp arp }
// SIOCIF_ATM_IDLE = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 122); { set idle time }
// SIOCIF_ATM_DUMPARP = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 123); { atm dump arp }
// SIOCIF_ATM_SVC = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 124); { atmif init }
// SIOCIF_ATM_DARP = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 125); { del atmarp }
// SIOCIF_ATM_GARP = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 126); { get atmarp }
// SIOCIF_ATM_SARP = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 127); { set atmarp };
{ For IP over Infiniband }
// SIOCIF_IB_DUMP_ARP = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 128); { ib dump arp }
// SIOCIF_IB_DEL_ARP = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 129); { if_ib del ibarp }
// SIOCIF_IB_GET_ARP = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 130); { get ibarp }
// SIOCIF_IB_SET_ARP = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 131); { set ibarp }
// SIOCIF_IB_SET_PKEY = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 132); { set ib port pkey value }
// SIOCIFGETPKEY = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 101); { set ubr rate }
// SIOCIF_IB_SET_PORT = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 133); { set ubr rate }
// SIOCIF_IB_SET_QSIZE = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 134); { set ib qsize }
// SIOCIF_IB_RESIZE_CQ = cint(IOC_IN or ((sizeof(struct ifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 135); { set resize IB CQ }
// SIOCGISNO = (int)_IOWR('i',107, struct oifreq); { get IF network options }
// SIOCSISNO = cint(IOC_IN or ((sizeof(struct oifreq) and IOCPARM_MASK) shl 16) or (ord('i') shl 8) or 108); { set IF network options }
// SIOCGIFBAUDRATE = (int)_IOWR('i', 109, struct oifreq); { get ifnet's if_baudrate }
SIOCADDIFVIPA = cint(IOC_VOID or (ord('i') shl 8) or 66); { specify interfaces that should use this vipa }
SIOCDELIFVIPA = cint(IOC_VOID or (ord('i') shl 8) or 67); { unconfigure interfaces using this vipa }
SIOCLISTIFVIPA = cint(IOC_VOID or (ord('i') shl 8) or 68); { list interfaces using this vipa }
TIOC = ord('T') shl 8;
TCGETS = TIOC or 1;
TCSETS = TIOC or 2;
TCSETSW = TIOC or 3;
TCSETSF = TIOC or 4;
TCGETA = TIOC or 5;
TCSETA = TIOC or 6;
TCSETAW = TIOC or 7;
TCSETAF = TIOC or 8;
{ SVID interface }
TCSBRK = TIOC or 9;
{ 0->.25 seconds else <arg>ms }
TCSBREAK = TIOC or 10;
TCXONC = TIOC or 11;
TCFLSH = TIOC or 12;
TCGLEN = TIOC or 13;
TCSLEN = TIOC or 14;
TCSAK = TIOC or 15;
TCQSAK = TIOC or 16;
TCTRUST = TIOC or 17;
TCQTRUST = TIOC or 18;
TCSMAP = TIOC or 19;
TCGMAP = TIOC or 20;
TCKEP = TIOC or 21;
TCGSAK = TIOC or 22;
TCLOOP = TIOC or 23;
TCVPD = TIOC or 24;
TCREG = TIOC or 25;
TCGSTATUS = TIOC or 26;
TCSCONTROL = TIOC or 27;
TCSCSMAP = TIOC or 28;
TCGCSMAP = TIOC or 29;
TCMGR = TCSAK;
TCQMGR = TCQSAK;
TIONREAD = FIONREAD;
{ used with TCSAK and TCQSAK }
TCSAKOFF = 0;
TCSAKON = 1;
{ used with TCTRUST and TCQTRUCT }
TCUNTRUSTED = 0;
TCTRUSTED = 1;
type
Ptcflag_t = ^tcflag_t;
tcflag_t = dword;
Pcc_t = ^cc_t;
cc_t = byte;
const
NCCS = 16;
type
Pspeed_t = ^speed_t;
speed_t = dword;
{
* Ioctl control packet
}
{ input modes }
{ output modes }
{ control modes }
{ line discipline modes }
{ control chars }
Ptermios = ^termios;
termios = record
c_iflag : tcflag_t;
c_oflag : tcflag_t;
c_cflag : tcflag_t;
c_lflag : tcflag_t;
c_cc : array[0..(NCCS)-1] of cc_t;
end;
{ use POSIX required prototypes }
function tcgetattr(_para1:longint; var _para2:termios):longint;cdecl;external;
function tcgetsid(_para1:longint):pid_t;cdecl;external;
(* Const before type ignored *)
function tcsetattr(_para1:longint; _para2:longint; constref _para3:termios):longint;cdecl;external;
//function tcsendbreak(_para1:longint; _para2:longint):longint;cdecl;external;
//function tcdrain(_para1:longint):longint;cdecl;external;
//function tcflush(_para1:longint; _para2:longint):longint;cdecl;external;
///function tcflow(_para1:longint; _para2:longint):longint;cdecl;external;
(* Const before type ignored *)
function cfgetospeed(var _para1:termios):speed_t;cdecl;external;
(* Const before type ignored *)
function cfgetispeed(var _para1:termios):speed_t;cdecl;external;
function cfsetospeed(constref _para1:termios; _para2:speed_t):longint;cdecl;external;
function cfsetispeed(var _para1:termios; _para2:speed_t):longint;cdecl;external;
{ mask name symbols for c_lflag }
{ values for optional_actions arguments to tcsetattr() }
const
TCSANOW = 0;
TCSADRAIN = 1;
TCSAFLUSH = 2;
{ values for the queue_selector argument to tcflush() }
TCIFLUSH = 0;
TCOFLUSH = 1;
TCIOFLUSH = 2;
{ values for the action argument to tcflow() }
TCOOFF = 0;
TCOON = 1;
TCIOFF = 2;
TCION = 3;
{ control characters }
VINTR = 0;
VQUIT = 1;
VERASE = 2;
VKILL = 3;
VEOF = 4;
VEOL = 5;
VSTART = 7;
VSTOP = 8;
VSUSP = 9;
VMIN = 4;
VTIME = 5;
VEOL2 = 6;
VDSUSP = 10;
VREPRINT = 11;
VDISCRD = 12;
VWERSE = 13;
VLNEXT = 14;
{ 5.4 compatability }
VSTRT = VSTART;
const
B0 = $00000000;
B50 = $00000001;
B75 = $00000002;
B110 = $00000003;
B134 = $00000004;
B150 = $00000005;
B200 = $00000006;
B300 = $00000007;
B600 = $00000008;
B1200 = $00000009;
B1800 = $0000000a;
B2400 = $0000000b;
B4800 = $0000000c;
B9600 = $0000000d;
B19200 = $0000000e;
B38400 = $0000000f;
EXTA = B19200;
EXTB = B38400;
{ _ALL_SOURCE }
{ c_iflag bits }
const
IGNBRK = $00000001;
BRKINT = $00000002;
IGNPAR = $00000004;
PARMRK = $00000008;
INPCK = $00000010;
ISTRIP = $00000020;
INLCR = $00000040;
IGNCR = $00000080;
ICRNL = $00000100;
IXON = $00000200;
IXOFF = $00000400;
const
IUCLC = $00000800;
const
IXANY = $00001000;
IMAXBEL = $00010000;
{ c_oflag bits }
const
OPOST = $00000001;
const
OLCUC = $00000002;
const
ONLCR = $00000004;
OCRNL = $00000008;
ONOCR = $00000010;
ONLRET = $00000020;
OFILL = $00000040;
OFDEL = $00000080;
CRDLY = $00000300;
// CR0 = $00000000;
// CR1 = $00000100;
// CR2 = $00000200;
// CR3 = $00000300;
TABDLY = $00000c00;
// TAB0 = $00000000;
// TAB1 = $00000400;
// TAB2 = $00000800;
// TAB3 = $00000c00;
BSDLY = $00001000;
// BS0 = $00000000;
// BS1 = $00001000;
FFDLY = $00002000;
// FF0 = $00000000;
// FF1 = $00002000;
NLDLY = $00004000;
// NL0 = $00000000;
// NL1 = $00004000;
VTDLY = $00008000;
VT0 = $00000000;
VT1 = $00008000;
DLY_MASK = ((((NLDLY or CRDLY) or TABDLY) or BSDLY) or VTDLY) or FFDLY;
{ expand tabs to spaces added }
OXTABS = $00040000;
{ on 08/05/92. }
{ discard EOT's (^D) on output }
ONOEOT = $00080000;
{ added on 08/05/92. }
{ c_cflag bits }
const
_CBAUD = $0000000f;
CBAUD = _CBAUD;
CSIZE = $00000030;
CS5 = $00000000;
CS6 = $00000010;
CS7 = $00000020;
CS8 = $00000030;
CSTOPB = $00000040;
CREAD = $00000080;
PARENB = $00000100;
PARODD = $00000200;
HUPCL = $00000400;
CLOCAL = $00000800;
_CIBAUD = $000f0000;
_IBSHIFT = 16;
CIBAUD = _CIBAUD;
IBSHIFT = _IBSHIFT;
PAREXT = $00100000;
{ c_lflag bits }
const
ISIG = $00000001;
ICANON = $00000002;
const
XCASE = $00000004;
const
// ECHO = $00000008;
ECHOE = $00000010;
ECHOK = $00000020;
ECHONL = $00000040;
NOFLSH = $00000080;
// TOSTOP = $00010000;
ECHOCTL = $00020000;
ECHOPRT = $00040000;
ECHOKE = $00080000;
// FLUSHO = $00100000;
{ use alternate WERASE }
ALTWERASE = $00400000;
{ algorithm, added ALTWERASE }
{ on 08/05/92. }
// PENDIN = $20000000;
{ ALL_SOURCE }
const
IEXTEN = $00200000;