diff options
Diffstat (limited to 'specs')
-rw-r--r-- | specs/SM/xsmp.ms | 16 | ||||
-rw-r--r-- | specs/X11/CH02 | 23 | ||||
-rw-r--r-- | specs/X11/CH09 | 12 | ||||
-rw-r--r-- | specs/X11/abstract.t | 14 | ||||
-rw-r--r-- | specs/XDMCP/xdmcp.ms | 54 | ||||
-rw-r--r-- | specs/XProtocol/X11.encoding | 3 | ||||
-rw-r--r-- | specs/XProtocol/X11.protocol | 55 | ||||
-rw-r--r-- | specs/specindex.html | 113 | ||||
-rw-r--r-- | specs/xtrans/Xtrans.mm | 35 |
9 files changed, 254 insertions, 71 deletions
diff --git a/specs/SM/xsmp.ms b/specs/SM/xsmp.ms index 209c9ca..0a962e4 100644 --- a/specs/SM/xsmp.ms +++ b/specs/SM/xsmp.ms @@ -1,5 +1,6 @@ .\" Use tbl, -ms, and macros.t .\" $Xorg: xsmp.ms,v 1.3 2000/08/17 19:42:19 cpqbld Exp $ +.\" $XFree86: xc/doc/specs/SM/xsmp.ms,v 1.2 2003/07/09 15:27:25 tsi Exp $ .EH '''' .OH '''' .EF '''' @@ -10,9 +11,9 @@ .TL \s+2\fBX Session Management Protocol\fP\s-2 .sp -X Consortium Standard +X.Org Standard .sp -X Version 11, Release 6.4 +X Version 11, Release 6.7 .AU Mike Wexler .AI @@ -22,8 +23,8 @@ Kubota Pacific Computer, Inc. This document specifies a protocol that facilitates the management of groups of client applications by a session manager. The session manager can cause clients to save their state, to shut down, and to be restarted into a -previously saved state. This protocol is layered on top of the X -Consortium's ICE protocol. +previously saved state. This protocol is layered on top of the X.Org +ICE protocol. .AE .LP .bp @@ -31,9 +32,9 @@ Consortium's ICE protocol. .sp 8 .LP .DS C -X Window System is a trademark of X Consortium, Inc. +X Window System is a trademark of The Open Group. .sp -Copyright \(co 1992, 1993, 1994 X Consortium +Copyright \(co 1992, 1993, 1994, 2002 The Open Group. .DE .sp 3 .LP @@ -264,8 +265,9 @@ Version. This is currently the character `1'. Address type and address. The address type will be one of .DS .ta 0.5i -`1' a 4-byte IP address encoded as 8 hexadecimal digits +`1' a 4-byte IPv4 address encoded as 8 hexadecimal digits `2' a 6-byte DECNET address encoded as 12 hexadecimal digits +`6' a 16-byte IPv6 address encoded as 32 hexadecimal digits .DE .IP The address is the one of the network addresses of the machine where the diff --git a/specs/X11/CH02 b/specs/X11/CH02 index ab6d656..df7d676 100644 --- a/specs/X11/CH02 +++ b/specs/X11/CH02 @@ -1,4 +1,4 @@ -.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium +.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996, 2000 The Open Group .\" .\" Permission is hereby granted, free of charge, to any person obtaining .\" a copy of this software and associated documentation files (the @@ -19,10 +19,10 @@ .\" ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR .\" OTHER DEALINGS IN THE SOFTWARE. .\" -.\" Except as contained in this notice, the name of the X Consortium shall +.\" Except as contained in this notice, the name of The Open Group shall .\" not be used in advertising or otherwise to promote the sale, use or .\" other dealings in this Software without prior written authorization -.\" from the X Consortium. +.\" from The Open Group. .\" .\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by .\" Digital Equipment Corporation @@ -40,6 +40,7 @@ .\" of this documentation for any purpose. .\" It is provided ``as is'' without express or implied warranty. .\" +.\" $XFree86: xc/doc/specs/X11/CH02,v 1.2 2003/07/09 15:27:25 tsi Exp $ \& .sp 1 .ce 3 @@ -116,8 +117,13 @@ the display name or DISPLAY environment variable can be a string in the format: .Ds 0 .TA 1i .ta 1i - \fIhostname\fP\^:\^\fInumber\fP\^.\^\fIscreen_number\fP + \fIprotocol\fP\^/\^\fIhostname\fP\^:\^\fInumber\fP\^.\^\fIscreen_number\fP .De +.IP \fIprotocol\fP 1i +Specifies a protocol family or an alias for a protocol family. Supported +protocol families are implementation dependent. The protocol entry is +optional. If protocol is not specified, the / separating protocol and +hostname must also not be specified. .IP \fIhostname\fP 1i Specifies the name of the host machine on which the display is physically attached. @@ -159,11 +165,14 @@ or DECnet communications protocols, or through some local inter-process communication protocol. .IN "Protocol" "TCP" .IN "Protocol" "DECnet" -If the hostname is a host machine name and a single colon (:) +If the protocol is specified as "tcp", "inet", or "inet6", or +if no protocol is specified and the hostname is a host machine name and a single colon (:) separates the hostname and display number, .PN XOpenDisplay -connects using TCP streams. -If the hostname is not specified, +connects using TCP streams. (If the protocol is specified as "inet", TCP over +IPv4 is used. If the protocol is specified as "inet6", TCP over IPv6 is used. +Otherwise, the implementation determines which IP version is used.) +If the hostname and protocol are both not specified, Xlib uses whatever it believes is the fastest transport. If the hostname is a host machine name and a double colon (::) separates the hostname and display number, diff --git a/specs/X11/CH09 b/specs/X11/CH09 index 2dd5c5a..078bc19 100644 --- a/specs/X11/CH09 +++ b/specs/X11/CH09 @@ -1,4 +1,4 @@ -.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium +.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996, 2002 The Open Group .\" .\" Permission is hereby granted, free of charge, to any person obtaining .\" a copy of this software and associated documentation files (the @@ -19,10 +19,10 @@ .\" ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR .\" OTHER DEALINGS IN THE SOFTWARE. .\" -.\" Except as contained in this notice, the name of the X Consortium shall +.\" Except as contained in this notice, the name of The Open Group shall .\" not be used in advertising or otherwise to promote the sale, use or .\" other dealings in this Software without prior written authorization -.\" from the X Consortium. +.\" from The Open Group. .\" .\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by .\" Digital Equipment Corporation @@ -40,6 +40,7 @@ .\" of this documentation for any purpose. .\" It is provided ``as is'' without express or implied warranty. .\" +.\" $XFree86: xc/doc/specs/X11/CH09,v 1.3 2003/07/18 15:53:24 tsi Exp $ \& .sp 1 .ce 3 @@ -968,6 +969,7 @@ typedef struct { The family member specifies which protocol address family to use (for example, TCP/IP or DECnet) and can be .PN FamilyInternet , +.PN FamilyInternet6 , .PN FamilyDECnet , or .PN FamilyChaos . @@ -975,6 +977,10 @@ The length member specifies the length of the address in bytes. The address member specifies a pointer to the address. .LP For TCP/IP, the address should be in network byte order. +For IP version 4 addresses, the family should be FamilyInternet +and the length should be 4 bytes. For IP version 6 addresses, the +family should be FamilyInternet6 and the length should be 16 bytes. +.LP For the DECnet family, the server performs no automatic swapping on the address bytes. A Phase IV address is 2 bytes long. diff --git a/specs/X11/abstract.t b/specs/X11/abstract.t index 6841aa2..00abef4 100644 --- a/specs/X11/abstract.t +++ b/specs/X11/abstract.t @@ -1,3 +1,4 @@ +.\" $XFree86: xc/doc/specs/X11/abstract.t,v 1.2 2003/07/09 15:27:26 tsi Exp $ .EH '''' .OH '''' .EF '''' @@ -11,7 +12,7 @@ \s+1\fBX Consortium Standard\fP\s-1 -\s+1\fBX Version 11, Release 6.4\fP\s-1 +\s+1\fBX Version 11, Release 6.7\fP\s-1 .sp 6 .ce 4 \s-1James Gettys @@ -33,7 +34,7 @@ Chuck Adams, Tektronix, Inc. .sp 1 Vania Joloboff, Open Software Foundation .sp 1 -Hideki Hiura, SunSoft, Inc. +Hideki Hiura, Sun Microsystems, Inc. .sp 1 Bill McMahon, Hewlett-Packard Company .sp 1 @@ -50,12 +51,13 @@ Shigeru Yamada, Fujitsu OSSI .nr PS 9 .sp 8 .LP -The X Window System is a trademark of X Consortium, Inc. +The X Window System is a trademark of The Open Group. .LP TekHVC is a trademark of Tektronix, Inc. .sp 2 .LP -Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994,1996 X Consortium +Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996, 2002 +The Open Group .LP Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the @@ -76,10 +78,10 @@ OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. .LP -Except as contained in this notice, the name of the X Consortium shall +Except as contained in this notice, the name of The Open Group shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization -from the X Consortium. +from The Open Group. .sp 3 .LP Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by diff --git a/specs/XDMCP/xdmcp.ms b/specs/XDMCP/xdmcp.ms index 8f6df8a..90d31da 100644 --- a/specs/XDMCP/xdmcp.ms +++ b/specs/XDMCP/xdmcp.ms @@ -1,5 +1,6 @@ .\" Use eqn, tbl, and -ms .\" $Xorg: xdmcp.ms,v 1.3 2000/08/17 19:42:20 cpqbld Exp $ +.\" $XFree86: xc/doc/specs/XDMCP/xdmcp.ms,v 1.2 2003/07/09 15:27:26 tsi Exp $ .EQ delim @@ define oc % "\\fR{\\fP" % @@ -16,11 +17,11 @@ define cc % "\\fR}\\fP" % .ce 7 \s+2\fBX Display Manager Control Protocol\fP\s-2 -\s+1\fBVersion 1.0 +\s+1\fBVersion 1.1 -X Consortium Standard +X.Org Standard -X Version 11, Release 6.4\fP\s-1 +X Version 11, Release 6.7\fP\s-1 .sp 4 .ce 5 \s-1Keith Packard @@ -32,7 +33,7 @@ Massachusetts Institute of Technology\s+1 .br \& .sp 15 -Copyright \(co 1989 X Consortium +Copyright \(co 1989, 2002 The Open Group .sp 3 .LP Permission is hereby granted, free of charge, to any person obtaining a copy @@ -48,16 +49,16 @@ all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. .LP -Except as contained in this notice, the name of the X Consortium shall not be +Except as contained in this notice, the name of The Open Group shall not be used in advertising or otherwise to promote the sale, use or other dealings -in this Software without prior written authorization from the X Consortium. +in this Software without prior written authorization from The Open Group. .LP .sp 3 -\fIX Window System\fP is a trademark of X Consortium, Inc. +\fIX Window System\fP is a trademark of The Open Group. .de PT .ie o .tl 'XDMCP''X Display Manager Control Protocol ' .el .tl 'X Display Manager Control Protocol ''XDMCP' @@ -1691,7 +1692,10 @@ Protocol Encoding .XE .LP When XDMCP is implemented on top of the Internet User Datagram Protocol (UDP), -port number 177 is to be used. +port number 177 is to be used. When using UDP over IPv4, Broadcast Query +packets are sent via UDP broadcast. When using UDP over IPv6, Broadcast Query +packets are sent via multicast, either to the officially registered XDMCP +multicast address of (TBD) or to a locally assigned multicast address. The version number in all packets will be 1. Packet opcodes are 16-bit integers. .RS @@ -2051,10 +2055,13 @@ Other authentication protocols may be developed, depending on local needs. In an unsecure environment, the display must be able to verify that the source of the various packets is a trusted manager. These packets will contain authentication information. As an example of such a system, the -following discussion describes the "XDM-AUTHENTICATION-1" authentication -system. This system uses a 56-bit shared private key, and 64 bits of -authentication data. An associated example X authorization protocol -"XDM-AUTHORIZATION-1" will also be discussed. The 56-bit key is represented +following discussion describes the "XDM-AUTHENTICATION-1" and +"XDM-AUTHENTICATION-2" authentication systems. The "XDM-AUTHENTICATION-1" +system uses a 56-bit shared private key, and 64 bits of +authentication data. "XDM-AUTHENTICATION-2" uses a 256 bit shared private key, +and 256 bits of authentication data. Associated example X authorization +protocol "XDM-AUTHORIZATION-1" and "XDM-AUTHORIZATION-2" will also be +discussed. The 56-bit key is represented as a 64-bit number in network order (big endian). This means that the first octet in the representation will be zero. When incrementing a 64-bit value, the 8 octets of data will be interpreted in network order (big endian). @@ -2096,13 +2103,19 @@ sigma lineup = "per-session private key, generated by manager" beta lineup = "authorization data" .EN .LP -Encryption will use the DES; blocks shorter than 64 bits will be zero-filled -on the right to 64 bits. Blocks longer than 64 bits will use block chaining: +"XDM-AUTHENTICATION-1" encryption will use the Data Encryption Standard (DES, +FIPS 46-3); blocks shorter than 64 bits will be zero-filled on the right to +64 bits. Blocks longer than 64 bits will use block chaining: .EQ oc { D } cc sup kappa lineup = oc { D sub 1 } cc sup kappa " " oc { D sub 2 } " " xor " " oc { D sub 1 } cc sup kappa cc sup kappa .EN .LP +"XDM-AUTHENTICATION-2" encryption will use the Advanced Encryption Standard +(AES, FIPS-197); blocks shorter than 128 bits will be zero-filled on the right +to 128 bits. Blocks longer than 128 bits will use block chaining as shown +above. +.LP The display generates the first authentication data in the .PN Request packet: @@ -2148,7 +2161,7 @@ T lineup = "Current time in seconds on client host (32 bits)" beta lineup = oc rho N T cc sup sigma .EN .LP -For TCP connections @N@ is 48 bits long and contains the 32-bit IP address of +For TCP connections @N@ is 48 bits long and contains the 32-bit IPv4 address of the client host followed by the 16-bit port number of the client socket. Formats for other connections must be registered. The resulting value, @beta@, is 192 bits of authorization data that is sent @@ -2162,6 +2175,15 @@ been received before, the current time is set to @T@. .IP \(bu 5 No packet containing the same pair (@N@, @T@) can have been received in the last 1200 seconds (20 minutes). +.LP +``XDM-AUTHORIZATION-2'' is identical to ``XDM-AUTHORIZATION-1'', except that +for TCP connections @N@ is 256 bits long and contains the 128 bit +IPv6 address of the client host followed by the 16 bit port number of the +client socket, with the remainder filled with zeros, and @T@ is extended to +64-bits. IPv4 addresses are represented as IPv4-mapped IPv6 addresses, with +an 80-bit prefix of zero bits, followed by a 16-byte value of 0xFFFF, +followed by the IPv4 address value, as defined in IETF RFC 2373. Formats for +other connections must be registered. .bp .EH '''' .OH '''' diff --git a/specs/XProtocol/X11.encoding b/specs/XProtocol/X11.encoding index ec45ead..346a374 100644 --- a/specs/XProtocol/X11.encoding +++ b/specs/XProtocol/X11.encoding @@ -1,4 +1,5 @@ .\" $Xorg: X11.encoding,v 1.3 2000/08/17 19:42:23 cpqbld Exp $ +.\" $XFree86: xc/doc/specs/XProtocol/X11.encoding,v 1.2 2003/07/09 15:27:26 tsi Exp $ \& .sp 1 .ps 11 @@ -614,6 +615,8 @@ HOST 0 Internet 1 DECnet 2 Chaos + 5 ServerInterpreted + 6 InternetV6 1 unused 2 n length of address n LISTofBYTE address diff --git a/specs/XProtocol/X11.protocol b/specs/XProtocol/X11.protocol index 3a4d15c..9ce6121 100644 --- a/specs/XProtocol/X11.protocol +++ b/specs/XProtocol/X11.protocol @@ -1,9 +1,9 @@ -.\" $Xorg: X11.protocol,v 1.3 2000/08/17 19:42:23 cpqbld Exp $ +.\" $Xorg: X11.protocol,v 1.4 $ .\" .\" .\" .\" -.\" $XFree86: xc/doc/specs/XProtocol/X11.protocol,v 1.3 2001/01/17 16:57:42 dawes Exp $ +.\" $XFree86: xc/doc/specs/XProtocol/X11.protocol,v 1.4 2003/07/09 15:27:26 tsi Exp $ .EH '''' .OH '''' .EF '''' @@ -17,7 +17,7 @@ \s+1\fBX Consortium Standard\fP\s-1 -\s+1\fBX Version 11, Release 6.4\fP\s-1 +\s+1\fBX Version 11, Release 6.7\fP\s-1 .sp 6 .ce 5 \s-1Robert W. Scheifler @@ -29,10 +29,9 @@ X Consortium, Inc. .nr PS 9 .sp 8 .LP -X Window System is a trademark of X Consortium, Inc. +X Window System is a trademark of The Open Group. .LP -Copyright \(co 1986, 1987, 1988, 1994 -X Consortium +Copyright \(co 1986, 1987, 1988, 1994, 2002 The Open Group .LP Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the ``Software''), to deal @@ -47,13 +46,13 @@ all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. .LP -Except as contained in this notice, the name of the X Consortium shall not be +Except as contained in this notice, the name of the Open Group shall not be used in advertising or otherwise to promote the sale, use or other dealings -in this Software without prior written authorization from the X Consortium. +in this Software without prior written authorization from the Open Group. .ps 11 .nr PS 11 .bp @@ -533,6 +532,7 @@ T} HOST T{ [family: .Pn { Internet , +.PN InternetV6 , .PN DECnet , .PN Chaos } T} @@ -941,7 +941,7 @@ requests in most applications. Note that they are predefined only in the sense of having numeric values, not in the sense of having required semantics. The core protocol imposes no semantics on these names, -but semantics are specified in other X Consortium standards, +but semantics are specified in other X.Org standards, such as the \fIInter-Client Communication Conventions Manual\fP and the \fIX Logical Font Description Conventions\fP. .LP @@ -4422,7 +4422,7 @@ the ``?'' character (octal value 77) will match any single character, and the ``*'' character (octal value 52) will match any number of characters. A structured format for font names is specified in the -X Consortium standard \fIX Logical Font Description Conventions\fP. +X.Org standard \fIX Logical Font Description Conventions\fP. .LP Fonts are not associated with a particular screen and can be stored as a component of any graphics context. @@ -4587,7 +4587,7 @@ between the Y-coordinate values (y \- font-ascent) and (y + font-descent \- 1). A font is not guaranteed to have any properties. The interpretation of the property value (for example, INT32, CARD32) must be derived from \fIa priori\fP knowledge of the property. -A basic set of font properties is specified in the X Consortium +A basic set of font properties is specified in the X.Org standard \fIX Logical Font Description Conventions\fP. .LP For a character origin at [x,y], @@ -8712,15 +8712,12 @@ For the Internet family, the address must be four bytes long. The address bytes are in standard IP order; the server performs no automatic swapping on the address bytes. -For a Class A address, -the network number is the first byte in the address, -and the host number is the remaining three bytes, most significant byte first. -For a Class B address, -the network number is the first two bytes and the host number -is the last two bytes, each most significant byte first. -For a Class C address, -the network number is the first three bytes, most significant byte first, -and the last byte is the host number. +The Internet family supports IP version 4 addresses only. +.LP +For the InternetV6 family, the address must be sixteen bytes +long. The address bytes are in standard IP order; the +server performs no automatic swapping on the address bytes. +The InternetV6 family supports IP version 6 addresses only. .LP For the DECnet family, the server performs no automatic swapping on the address bytes. @@ -8735,6 +8732,20 @@ the address must be two bytes long. The host number is always the first byte in the address, and the subnet number is always the second byte. The server performs no automatic swapping on the address bytes. +.LP +The ServerInterpreted family may be of any length up to 65535 bytes. +The address is simply a string of characters which is interpreted by +the server. The server performs no automatic swapping on the address bytes. +.LP +Use of a host address in the ChangeHosts request is deprecated. It is +only useful when a host has a unique, constant address, a requirement +that is increasingly unmet as sites adopt dynamically assigned +addresses, network address translation gateways, IPv6 link local +addresses, and various other technologies. It also assumes all users of +a host share equivalent access rights, and as such has never been +suitable for many multi-user machine environments. Instead, more +secure forms of authentication, such as those based on shared secrets +or public key encryption, are recommended. .sp .LP .sM @@ -10370,7 +10381,7 @@ The owner should convert the selection based on the specified target type and send a .PN SelectionNotify back to the requestor. -A complete specification for using selections is given in the X Consortium +A complete specification for using selections is given in the X.Org standard \fIInter-Client Communication Conventions Manual\fP. .sp .LP diff --git a/specs/specindex.html b/specs/specindex.html new file mode 100644 index 0000000..e70cd60 --- /dev/null +++ b/specs/specindex.html @@ -0,0 +1,113 @@ +<html> + <head> + <title>XFree86(TM): Documentation: Specification Documents</title> + <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> +<style type="text/css"> + body { + background-color: efefef; + color: black; + } + a:link { color: blue } + a:visited { color: #551a8b } + a:active { color: red } +</style> + </head> + + <body> + <h2>XFree86™ Documentation: Specification and Related Documents</h2> + + <p><i>The formatting of some of the HTML versions of these documents may + have some problems. In such cases refer to the PDF versions.</i></p> + + <h3>Core and Extension Protocols</h3> + + <ul> + <li><a href="proto.html">Core X Protocol</a> <a href="../PDF/proto.pdf">[PDF]</a></li> + <li><a href="xlib.html">Core X Protocol Library API</a> <a href="../PDF/xlib.pdf">[PDF]</a></li> + <li><a href="mit-shm.html">MIT-SHM (shared memory) Extension</a> <a href="../PDF/mit-shm.pdf">[PDF]</a></li> + <li><a href="xc-misc.html">XC-MISC Extension</a> <a href="../PDF/xc-misc.pdf">[PDF]</a></li> + <li><a href="bigreq.html">BIGREQ (Big Requests) Extension</a> <a href="../PDF/bigreq.pdf">[PDF]</a></li> + <li><a href="shape.html">Shape (non-rectangular window) Extension Protocol</a> <a href="../PDF/shape.pdf">[PDF]</a></li> + <li><a href="shapelib.html">Shape (non-rectangular window) Extension Library API</a> <a href="../PDF/shapelib.pdf">[PDF]</a></li> + <li><a href="appgroup.html">XC-APPGROUP (Application Group) Extension</a> <a href="../PDF/appgroup.pdf">[PDF]</a></li> + <li>Security Extension <a href="../PDF/security.pdf">[PDF]</a></li> + <li><a href="tog-cup.html">TOG CUP (Colormap Utilization Policy) Extension</a> <a href="../PDF/tog-cup.pdf">[PDF]</a></li> + <li><a href="DPMS.html">DPMS (Display Power Management Signaling) extension protocol</a> <a href="../PDF/DPMS.pdf">[PDF]</a></li> + <li><a href="DPMSLib.html">DPMS (Display Power Management Signaling) Extension Client Library API</a> <a href="../PDF/DPMSLib.pdf">[PDF]</a></li> + <li><a href="evi.html">EVI (Extended Visual Information) Extension</a> <a href="../PDF/evi.pdf">[PDF]</a></li> + <li><a href="XiProtocol.html">Xi (X Input) Extension Protocol</a> <a href="../PDF/XiProtocol.pdf">[PDF]</a></li> + <li><a href="XiLib.html">Xi (X Input) Extension Library API</a> <a href="../PDF/XiLib.pdf">[PDF]</a></li> + <li><a href="XiPorting.html">Xi (X Input) Porting Information</a> <a href="../PDF/XiPorting.pdf">[PDF]</a></li> + <li><a href="buffer.html">Multi-buffer Extension (obsolete)</a> <a href="../PDF/buffer.pdf">[PDF]</a></li> + <li>Double Buffer Extension Protocol <a href="../PDF/dbe.pdf">[PDF]</a></li> + <li>Double Buffer Extension Library API <a href="../PDF/dbelib.pdf">[PDF]</a></li> + <li><a href="record.html">Record Extension Protocol</a> <a href="../PDF/record.pdf">[PDF]</a></li> + <li><a href="recordlib.html">Record Extension Library API</a> <a href="../PDF/recordlib.pdf">[PDF]</a></li> + <li><a href="xtest.html">XTEST Extension Protocol</a> <a href="../PDF/xtest.pdf">[PDF]</a></li> + <li><a href="xtestlib.html">XTEST Extension Library API</a> <a href="../PDF/xtestlib.pdf">[PDF]</a></li> + <li>Synchronization Extension Protocol <a href="../PDF/sync.pdf">[PDF]</a></li> + <li>Synchronization Extension Library API <a href="../PDF/synclib.pdf">[PDF]</a></li> + <li>XPrint Extension Protocol <a href="../PDF/xp_proto.pdf">[PDF]</a></li> + <li>XPrint Extension Library API <a href="../PDF/xp_library.pdf">[PDF]</a></li> + <li>XKEYBOARD Extension Protocol <a href="../PDF/XKBproto.pdf">[PDF]</a></li> + <li>XKEYBOARD Extension Library API <a href="../PDF/XKBlib.pdf">[PDF]</a></li> + </ul> + + <h3>Other Protocols and Interfaces</h3> + <ul> + <li><a href="Xtrans.html">X Transport Interface</a> <a href="../PDF/Xtrans.pdf">[PDF]</a></li> + <li><a href="xdmcp.html">XDMCP (X Display Manager Control Protocol)</a> <a href="../PDF/xdmcp.pdf">[PDF]</a></li> + <li><a href="fsproto.html">Font Server Protocol</a> <a href="../PDF/fsproto.pdf">[PDF]</a></li> + <li><a href="xim.html">XIM (X Input Method) Protocol</a> <a href="../PDF/xim.pdf">[PDF]</a></li> + <li><a href="XIMTransport.html">XIM Transport</a> <a href="../PDF/XIMTransport.pdf">[PDF]</a></li> + <li><a href="ice.html">ICE (Inter-Client Exchange) Protocol</a> <a href="../PDF/ice.pdf">[PDF]</a></li> + <li><a href="ICElib.html">ICE (Inter-Client Exchange) Library API</a> <a href="../PDF/ICElib.pdf">[PDF]</a></li> + <li><a href="icccm.html">ICCCM (Inter-Client Communcations Conventions Manual)</a> <a href="../PDF/icccm.pdf">[PDF]</a></li> + <li><a href="xsmp.html">SM (X Session Managemenet) Protocol</a> <a href="../PDF/xsmp.pdf">[PDF]</a></li> + <li><a href="SMlib.html">SM (X Session Management) Library API</a> <a href="../PDF/SMlib.pdf">[PDF]</a></li> + </ul> + + <h3>Internationalization</h3> + <ul> + <li><a href="i18nFramework.html">I18N Framework</a> <a href="../PDF/i18nFramework.pdf">[PDF]</a></li> + </ul> + + <h3>Client Libraries</h3> + + <ul> + <li><a href="widgets.html">Athena Widgets (Xaw)</a> <a href="../PDF/widgets.pdf">[PDF]</a></li> + <li><a href="fontlib.html">X Font Library (fontlib)</a> <a href="../PDF/fontlib.pdf">[PDF]</a></li> + <li><a href="xmu.html">Xmu Library</a> <a href="../PDF/xmu.pdf">[PDF]</a></li> + <li><a href="intrinsics.html">X Toolkit Intrinsics (Xt)</a> <a href="../PDF/intrinsics.pdf">[PDF]</a></li> + </ul> + + <h3>Formats and Encodings</h3> + + <ul> + <li><a href="bdf.html">BDF (Bitmap Distribution Format) Font Format</a> <a href="../PDF/bdf.pdf">[PDF]</a></li> + <li><a href="ctext.html">CTEXT (Compound Text) Encoding</a> <a href="../PDF/ctext.pdf">[PDF]</a></li> + <li><a href="LocaleDB.html">X Locale Database Definition</a> <a href="../PDF/LocaleDB.pdf">[PDF]</a></li> + <li><a href="xlfd.html">XLFD (X Logical Font Description) Conventions</a> <a href="../PDF/xlfd.pdf">[PDF]</a></li> + <li>The RX Document (describes the RX MIME type) <a href="../PDF/RX.pdf">[PDF]</a></li> + </ul> + + <h3>Implementation and Design</h3> + + <ul> + <li><a href="ddx.html">XServer DDX</a> <a href="../PDF/ddx.pdf">[PDF]</a></li> + <li>Security Extension Server Design <a href="../PDF/secint.pdf">[PDF]</a></li> + <li>Analysis of the X Protocol for Security Concerns <a href="../PDF/analysis.pdf">[PDF]</a></li> + <li><a href="xfs-design.html">Font Server Design</a> <a href="../PDF/xfs-design.pdf">[PDF]</a></li> + </ul> + + <h3>Miscellaneous</h3> + + <ul> + <li><a href="rstart.html">rstart</a> <a href="../PDF/rstart.pdf">[PDF]</a></li> + <li><a href="ctlseqs.html">Xterm control sequences</a> <a href="../PDF/ctlseqs.pdf">[PDF]</a></li> + </ul> + + <!-- $XFree86: xc/doc/specs/specindex.html,v 1.3 2003/10/19 02:30:29 dawes Exp $ --> +</body> +</html> + diff --git a/specs/xtrans/Xtrans.mm b/specs/xtrans/Xtrans.mm index 42fdfd6..4176ec0 100644 --- a/specs/xtrans/Xtrans.mm +++ b/specs/xtrans/Xtrans.mm @@ -1,3 +1,4 @@ +.\" $XFree86: xc/doc/specs/xtrans/Xtrans.mm,v 1.3 2003/11/16 16:40:19 herrb Exp $ '\".nr Ej 1 .PH "'''" .ce @@ -25,7 +26,7 @@ OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .sp -Copyright 1993, 1994 X Consortium +Copyright 1993, 1994, 2002 The Open Group .sp Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the ``Software''), to deal @@ -40,15 +41,15 @@ all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. .sp -Except as contained in this notice, the name of the X Consortium shall not be +Except as contained in this notice, the name of The Open Group shall not be used in advertising or otherwise to promote the sale, use or other dealings -in this Software without prior written authorization from the X Consortium. +in this Software without prior written authorization from The Open Group. .sp -X Window System is a trademark of X Consortium, Inc. +X Window System is a trademark of The Open Group, Inc. .sp Designed by Stuart Anderson (NCR) with help from Ralph Mor (X Consortium) .sp @@ -158,7 +159,8 @@ typedef struct _Xtransport { int (*CreateListener)( XtransConnInfo, /* connection */ - char * /* port */ + char *, /* port */ + int /* flags */ ); int (*ResetListener)( @@ -322,7 +324,7 @@ This function return 0 on success and -1 on failure. Note: Based on current usage, the complimentary function TRANS(GetOption)() is not necessary. .LI -int TRANS(CreateListener)(XtransConnInfo connection, char *port) +int TRANS(CreateListener)(XtransConnInfo connection, char *port, int flags) .P This function sets up the server endpoint for listening. The parameter \fIconnection\fR is an endpoint that was obtained from @@ -332,6 +334,10 @@ should be bound for listening. If \fIport\fR is NULL, then the transport may attempt to allocate any available TSAP for this connection. If the transport cannot support this, then this function will return a failure. +The \fIflags\fR parameter can be set to ADDR_IN_USE_ALLOWED to allow +the call to the underlying binding function to fail with a EADDRINUSE +error without causing the TRANS(CreateListener) function itself to +fail. This function return 0 on success and -1 on failure. .LI int TRANS(ResetListener)(XtransConnInfo connection) @@ -554,13 +560,19 @@ is not being used, because all of the option defined so far, are transport independent. This function will have to be used if a radically different transport type is added, or a transport dependent option is defined. .LI -int CreateListener (struct _Xtransport *thistrans, char *port ) +int CreateListener (struct _Xtransport *thistrans, char *port, int flags ) .P This function takes a transport endpoint opened for a server, and sets it up to listen for incoming connection requests. The parameter \fIport\fR should contain the port portion of the address that was passed to the Open function. .P +The parameter \fIflags\fR should be set to ADDR_IN_USE_ALLOWED if the +underlying transport endpoint may be already bound and this should not +be considered as an error. Otherwise \fIflags\fR sould be set to 0. +This is used by IPv6 code, where the same socket can be bound to both +an IPv6 address and then to a IPv4 address. +.P This function will bind the transport into the transport name space if applicable, and fill in the local address portion of the XtransConnInfo structure. The transport endpoint will then be set to listen for @@ -627,7 +639,8 @@ or site.def config files. .TS center; l l . -TCPCONN Enables the INET Domain Socket based transport +TCPCONN Enables the INET (IPv4) Domain Socket based transport +IPv6 Extends TCPCONN to enable IPv6 Socket based transport UNIXCONN Enables the UNIX Domain Sokcet based transport STREAMSCONN Enables the TLI based transports LOCALCONN Enables the SYSV Local connection transports @@ -647,6 +660,8 @@ Family protocol host port Internet T{ inet .br +inet6 +.br tcp .br udp @@ -770,5 +785,5 @@ T} .P The file \fIXtransint.h\fR contains much of the transport related code that previously in Xlibint.h and Xlibnet.h. This will make the definitions -available for all transport users. This should also obsolete the equivilent +available for all transport users. This should also obsolete the equivalent code in other libraries. |