autogen.sh | 4 configure.ac | 6 font.h | 4 fontproto.h | 2 fontstruct.h | 52 specs/fsproto.xml | 5079 ++++++++++++++++++++++++++++-------------------------- 6 files changed, 2745 insertions(+), 2402 deletions(-)
New commits: commit df8c05f7c0253a36589d96efa52938215eff9d4d Author: Julien Cristau <jcris...@debian.org> Date: Mon Apr 14 17:04:36 2014 +0200 fontsproto 2.1.3 diff --git a/configure.ac b/configure.ac index 1a4f44a..78f9ff5 100644 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,5 @@ AC_PREREQ([2.60]) -AC_INIT([FontsProto], [2.1.2], +AC_INIT([FontsProto], [2.1.3], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg]) AM_INIT_AUTOMAKE([foreign dist-bzip2]) commit 8ba53a78bfc443a4ee8228b9c47f7e94118d7153 Author: Keith Packard <kei...@keithp.com> Date: Fri Nov 15 21:47:31 2013 +0900 Allow paths and patterns to be const Signed-off-by: Keith Packard <kei...@keithp.com> Reviewed-by: Gaetan Nadon <mems...@videotron.ca> diff --git a/font.h b/font.h index b71046b..a834655 100644 --- a/font.h +++ b/font.h @@ -140,7 +140,7 @@ extern void EmptyFontPatternCache ( extern void CacheFontPattern ( FontPatternCachePtr /* cache */, - char * /* pattern */, + const char * /* pattern */, int /* patlen */, FontPtr /* pFont */ ); @@ -150,7 +150,7 @@ extern FontResolutionPtr GetClientResolutions( extern FontPtr FindCachedFontPattern ( FontPatternCachePtr /* cache */, - char * /* pattern */, + const char * /* pattern */, int /* patlen */ ); diff --git a/fontstruct.h b/fontstruct.h index 44bed90..55c89da 100644 --- a/fontstruct.h +++ b/fontstruct.h @@ -143,23 +143,27 @@ typedef struct _FontNames { char **names; } FontNamesRec; + /* External view of font paths */ typedef struct _FontPathElement { int name_length; - char *name; +#if FONT_PATH_ELEMENT_NAME_CONST + const +#endif + char *name; int type; int refcount; void *private; } FontPathElementRec; -typedef Bool (*NameCheckFunc) (char *name); +typedef Bool (*NameCheckFunc) (const char *name); typedef int (*InitFpeFunc) (FontPathElementPtr fpe); typedef int (*FreeFpeFunc) (FontPathElementPtr fpe); typedef int (*ResetFpeFunc) (FontPathElementPtr fpe); typedef int (*OpenFontFunc) ( void *client, FontPathElementPtr fpe, Mask flags, - char* name, + const char* name, int namelen, fsBitmapFormat format, fsBitmapFormatMask fmask, @@ -170,14 +174,14 @@ typedef int (*OpenFontFunc) ( void *client, typedef void (*CloseFontFunc) (FontPathElementPtr fpe, FontPtr pFont); typedef int (*ListFontsFunc) (void *client, FontPathElementPtr fpe, - char* pat, + const char* pat, int len, int max, FontNamesPtr names); typedef int (*StartLfwiFunc) (void *client, FontPathElementPtr fpe, - char* pat, + const char* pat, int len, int max, void ** privatep); @@ -205,7 +209,7 @@ typedef int (*LoadGlyphsFunc) (void *client, typedef int (*StartLaFunc) (void *client, FontPathElementPtr fpe, - char* pat, + const char* pat, int len, int max, void ** privatep); commit 7f951a3b8ad71211e34a52878a030d5df823c49e Author: Alan Coopersmith <alan.coopersm...@oracle.com> Date: Mon Jan 20 12:53:16 2014 -0800 spec: Make alignment of columns in Encoding section more consistent Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com> diff --git a/specs/fsproto.xml b/specs/fsproto.xml index b6c4f80..74f2428 100644 --- a/specs/fsproto.xml +++ b/specs/fsproto.xml @@ -3477,194 +3477,194 @@ multiple of four: <!-- .XE --> <literallayout class="monospaced"> <link linkend="Data_Types:ACCESSCONTEXT"><type>ACCESSCONTEXT</type></link> +4 <type>CARD32</type> access context -4 <type>CARD32</type> access context with at least one of the following bits set: + with at least one of the following bits set: -#x1fffffff + #x1fffffff -but none of the following bits set: + but none of the following bits set: -#xe0000000 zero + #xe0000000 zero <link linkend="Data_Types:ALTERNATESERVER"><type>ALTERNATESERVER</type></link> -1 <type>BOOL</type> subset -1 n length of name -n <type>STRING8</type> name -p unused, p=pad(n+2) +1 <type>BOOL</type> subset +1 n length of name +n <type>STRING8</type> name +p unused, p=pad(n+2) <link linkend="Data_Types:AUTH"><type>AUTH</type></link> - -2 n length of name -2 d length of data -n <type>STRING8</type> name -p unused, p=pad(n) -d <type>STRING8</type> data -q unused, q=pad(d) +2 n length of name +2 d length of data +n <type>STRING8</type> name +p unused, p=pad(n) +d <type>STRING8</type> data +q unused, q=pad(d) <link linkend="Data_Types:BITMAPFORMAT"><type>BITMAPFORMAT</type></link> +4 <type>CARD32</type> value, union of the following bits: -4 <type>CARD32</type> value, union of the following bits: - #x00000001 ByteOrderMSB - #x00000002 BitOrderMSB - #x00000000 <constant>ImageRectMin</constant> - #x00000004 <constant>ImageRectMaxWidth</constant> - #x00000008 <constant>ImageRectMax</constant> - #x00000000 <constant>ScanlinePad8</constant> - #x00000100 <constant>ScanlinePad16</constant> - #x00000200 <constant>ScanlinePad32</constant> - #x00000300 <constant>ScanlinePad64</constant> - #x00000000 <constant>ScanlineUnit8</constant> - #x00001000 <constant>ScanlineUnit16</constant> - #x00002000 <constant>ScanlineUnit32</constant> - #x00003000 <constant>ScanlineUnit64</constant> + #x00000001 ByteOrderMSB + #x00000002 BitOrderMSB + #x00000000 <constant>ImageRectMin</constant> + #x00000004 <constant>ImageRectMaxWidth</constant> + #x00000008 <constant>ImageRectMax</constant> + #x00000000 <constant>ScanlinePad8</constant> + #x00000100 <constant>ScanlinePad16</constant> + #x00000200 <constant>ScanlinePad32</constant> + #x00000300 <constant>ScanlinePad64</constant> + #x00000000 <constant>ScanlineUnit8</constant> + #x00001000 <constant>ScanlineUnit16</constant> + #x00002000 <constant>ScanlineUnit32</constant> + #x00003000 <constant>ScanlineUnit64</constant> -except for the following bits which must be zero: + except for the following bits which must be zero: - #xffffccf0 zero + #xffffccf0 zero -and the following of which at most one bit may be set: + and the following of which at most one bit may be set: - #x0000000c at most one bit can be set + #x0000000c at most one bit can be set <link linkend="Data_Types:BITMAPFORMATMASK"><type>BITMAPFORMATMASK</type></link> +4 <type>CARD32</type> value, mask of the following bits: -4 <type>CARD32</type> value, mask of the following bits: + #x00000001 <constant>ByteOrderMask</constant> + #x00000002 <constant>BitOrderMask</constant> + #x00000004 <constant>ImageRectMask</constant> + #x00000008 <constant>ScanlinePadMask</constant> + #x00000010 <constant>ScanlineUnitMask</constant> - #x00000001 <constant>ByteOrderMask</constant> - #x00000002 <constant>BitOrderMask</constant> - #x00000004 <constant>ImageRectMask</constant> - #x00000008 <constant>ScanlinePadMask</constant> - #x00000010 <constant>ScanlineUnitMask</constant> + except for the following bits which must be zero: -except for the following bits which must be zero: - - #xffffffe0 zero + #xffffffe0 zero <link linkend="Data_Types:BOOL"><type>BOOL</type></link> - -1 <type>BOOL</type> boolean, one of the following values: -0 <constant>False</constant> -1 <constant>True</constant> +1 <type>BOOL</type> boolean, one of the following values: + 0 <constant>False</constant> + 1 <constant>True</constant> <link linkend="Data_Types:BYTE"><type>BYTE</type></link> -1 <type>BYTE</type> unsigned byte of data +1 <type>BYTE</type> unsigned byte of data <type>CARD8</type> -1 <type>CARD8</type> 8-bit unsigned integer +1 <type>CARD8</type> 8-bit unsigned integer <type>CARD16</type> -2 <type>CARD16</type> 16-bit unsigned integer +2 <type>CARD16</type> 16-bit unsigned integer <type>CARD32</type> -4 <type>CARD32</type> 32-bit unsigned integer +4 <type>CARD32</type> 32-bit unsigned integer <link linkend="Data_Types:CHAR2B"><type>CHAR2B</type></link> -1 <type>CARD8</type> byte1 -1 <type>CARD8</type> byte2 +1 <type>CARD8</type> byte1 +1 <type>CARD8</type> byte2 <link linkend="Data_Types:EVENTMASK"><type>EVENTMASK</type></link> -4 <type>CARD32</type> event mask - for core events, this is union of the following bits: +4 <type>CARD32</type> event mask - #00000001 <constant>CatalogueListChangeMask</constant> - #00000002 <constant>FontListChangeMask</constant> + for core events, this is union of the following bits: -but none of the following bits set: + #00000001 <constant>CatalogueListChangeMask</constant> + #00000002 <constant>FontListChangeMask</constant> - #fffffffc + but none of the following bits set: -extensions define their own sets of bits + #fffffffc + + extensions define their own sets of bits <link linkend="Data_Types:FONTID"><type>FONTID</type></link> +4 <type>CARD32</type> font identifier -4 <type>CARD32</type> font identifier with at least one of -the following bits set: + with at least one of the following bits set: - #x1fffffff + #x1fffffff -but none of the following bits set: + but none of the following bits set: - #xe0000000 zero + #xe0000000 zero <type>INT8</type> -1 <type>INT8</type> 8-bit signed integer +1 <type>INT8</type> 8-bit signed integer <type>INT16</type> -2 <type>INT16</type> 16-bit signed integer +2 <type>INT16</type> 16-bit signed integer <type>INT32</type> -4 <type>INT32</type> 32-bit signed integer +4 <type>INT32</type> 32-bit signed integer <link linkend="Data_Types:OFFSET32"><type>OFFSET32</type></link> -4 <type>CARD32</type> position (or integer value) -4 <type>CARD32</type> length +4 <type>CARD32</type> position (or integer value) +4 <type>CARD32</type> length <link linkend="Data_Types:PROPINFO"><type>PROPINFO</type></link> -4 n number of <type>PROPOFFSET</type> components -4 m number of bytes of property data -20*n <type>PROPOFFSET</type> property offsets into data block -m <type>LISTofBYTE</type> property data block +4 n number of <type>PROPOFFSET</type> components +4 m number of bytes of property data +20*n <type>PROPOFFSET</type> property offsets into data block +m <type>LISTofBYTE</type> property data block <link linkend="Data_Types:PROPOFFSET"><type>PROPOFFSET</type></link> -8 <type>OFFSET32</type> name in data block -8 <type>OFFSET32</type> value in data block - -1 <type>CARD8</type> type, one of the following values: -0 <constant>String</constant> -1 <constant>Unsigned</constant> -2 <constant>Signed</constant> -3 zero +8 <type>OFFSET32</type> name in data block +8 <type>OFFSET32</type> value in data block +1 <type>CARD8</type> type, one of the following values: + 0 <constant>String</constant> + 1 <constant>Unsigned</constant> + 2 <constant>Signed</constant> + 3 zero <link linkend="Data_Types:RANGE"><type>RANGE</type></link> -2 <type>CHAR2B</type> minimum character code -2 <type>CHAR2B</type> maximum character code +2 <type>CHAR2B</type> minimum character code +2 <type>CHAR2B</type> maximum character code <link linkend="Data_Types:RESOLUTION"><type>RESOLUTION</type></link> -2 <type>CARD16</type> x resolution in pixels per inch -2 <type>CARD16</type> y resolution in pixels per inch -2 <type>CARD16</type> point size in decipoints +2 <type>CARD16</type> x resolution in pixels per inch +2 <type>CARD16</type> y resolution in pixels per inch +2 <type>CARD16</type> point size in decipoints STRNAME -1 n length of name -n <type>STRING8</type> name +1 n length of name +n <type>STRING8</type> name <link linkend="Data_Types:STRING8"><type>STRING8</type></link> -n <type>LISTofBYTE</type> array of 8-bit character values +n <type>LISTofBYTE</type> array of 8-bit character values <link linkend="Data_Types:TIMESTAMP"><type>TIMESTAMP</type></link> -4 <type>CARD32</type> milliseconds since server time origin +4 <type>CARD32</type> milliseconds since server time origin <link linkend="Data_Types:XCHARINFO"><type>XCHARINFO</type></link> -2 <type>INT16</type> left bearing -2 <type>INT16</type> right bearing -2 <type>INT16</type> width -2 <type>INT16</type> ascent -2 <type>INT16</type> descent -2 <type>CARD16</type> attributes +2 <type>INT16</type> left bearing +2 <type>INT16</type> right bearing +2 <type>INT16</type> width +2 <type>INT16</type> ascent +2 <type>INT16</type> descent +2 <type>CARD16</type> attributes <link linkend="Data_Types:XFONTINFO"><type>XFONTINFO</type></link> -4 <type>CARD32</type> flags, union of the following bits: - #x00000001 <constant>AllCharactersExist</constant> - #x00000002 <constant>InkInside</constant> - #x00000004 <constant>HorizontalOverlap</constant> - -but none of the following bits set: - - #xfffffff8 zero -4 <type>RANGE</type> range of characters in font -1 <type>CARD8</type> drawing direction - 0 <constant>LeftToRight</constant> - 1 <constant>RightToLeft</constant> -1 unused -2 <type>CHAR2B</type> default character -12 <type>XCHARINFO</type> minimum bounds -12 <type>XCHARINFO</type> maximum bounds -2 <type>INT16</type> font ascent -2 <type>INT16</type> font descent -n <type>PROPINFO</type> property data +4 <type>CARD32</type> flags, union of the following bits: + + #x00000001 <constant>AllCharactersExist</constant> + #x00000002 <constant>InkInside</constant> + #x00000004 <constant>HorizontalOverlap</constant> + + but none of the following bits set: + + #xfffffff8 zero + +4 <type>RANGE</type> range of characters in font +1 <type>CARD8</type> drawing direction + 0 <constant>LeftToRight</constant> + 1 <constant>RightToLeft</constant> +1 unused +2 <type>CHAR2B</type> default character +12 <type>XCHARINFO</type> minimum bounds +12 <type>XCHARINFO</type> maximum bounds +2 <type>INT16</type> font ascent +2 <type>INT16</type> font descent +n <type>PROPINFO</type> property data </literallayout> </section> @@ -3673,8 +3673,8 @@ n <type>PROPINFO</type> property data <para><link linkend="Requests:open_connection"><emphasis role="bold">open connection</emphasis></link></para> <literallayout class="monospaced"> 1 <type>BYTE</type> byteorder, one of the values: - #x42 MostSignificant Byte first - #x6c LeastSignificant Byte first + #x42 MostSignificant Byte first + #x6c LeastSignificant Byte first 1 <type>CARD8</type> numberof auth in auth-data 2 2 client-major-protocol-version 2 0 client-minor-protocol-version @@ -3682,10 +3682,10 @@ n <type>PROPINFO</type> property data a <type>LISTofAUTH</type> auth-data ▶ 2 <type>CARD16</type> status -0 <constant>Success</constant> -1 <constant>Continue</constant> -2 <constant>Busy</constant> -3 <constant>Denied</constant> + 0 <constant>Success</constant> + 1 <constant>Continue</constant> + 2 <constant>Busy</constant> + 3 <constant>Denied</constant> 2 2 major version 2 0 version 1 <type>CARD8</type> numberof alternate-servers-hint @@ -3714,11 +3714,11 @@ q unused, q=pad(d) ▶ 4 2+(d+q)/4 length 2 <type>CARD16</type> status - 0 <constant>Success</constant> - 1 <constant>Continue</constant> - 2 <constant>Busy</constant> - 3 <constant>Denied</constant> - 2 unused + 0 <constant>Success</constant> + 1 <constant>Continue</constant> + 2 <constant>Busy</constant> + 3 <constant>Denied</constant> +2 unused d <type>LISTofBYTE</type> more-authorization-data q unused, q=pad(d) </literallayout> @@ -3845,10 +3845,10 @@ a <type>LISTofAUTH</type> authorization-protocols 2 <type>CARD16</type> sequence-number 4 3+(d+q)/4 length 2 <type>CARD16</type> status - 0 <constant>Success</constant> - 1 <constant>Continue</constant> - 2 <constant>Busy</constant> - 3 <constant>Denied</constant> + 0 <constant>Success</constant> + 1 <constant>Continue</constant> + 2 <constant>Busy</constant> + 3 <constant>Denied</constant> 2 unused d <type>LISTofBYTE</type> authorization-data q unused, q=pad(d) @@ -3870,10 +3870,10 @@ q unused, q=pad(d) ▶ 4 2+(d+q)/4 length 2 <type>CARD16</type> status - 0 <constant>Success</constant> - 1 <constant>Continue</constant> - 2 <constant>Busy</constant> - 3 <constant>Denied</constant> + 0 <constant>Success</constant> + 1 <constant>Continue</constant> + 2 <constant>Busy</constant> + 3 <constant>Denied</constant> 2 unused d <type>LISTofBYTE</type> authorization-data q unused, q=pad(d) @@ -4099,7 +4099,7 @@ p unused, p=pad(m) 1 <type>CARD8</type> major-opcode 1 <type>CARD8</type> minor-opcode 2 unused -4 <type>FONTID</type> bad-fontid +4 <type>FONTID</type> bad-fontid <link linkend="Errors:Range"><emphasis role="bold"><errorname>Range</errorname></emphasis></link> 1 1 type error commit 73308e73ae972b1942778a52c386d4363cb15ec8 Author: Alan Coopersmith <alan.coopersm...@oracle.com> Date: Wed Jan 15 00:20:52 2014 -0800 spec: use <parameter> markup for elements of requests & replies Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com> diff --git a/specs/fsproto.xml b/specs/fsproto.xml index 5cbf614..b6c4f80 100644 --- a/specs/fsproto.xml +++ b/specs/fsproto.xml @@ -1499,28 +1499,35 @@ contains the following fields: </informaltable> </para> <para> -The MAJOR-OPCODE specifies which core request or extension package this packet -represents. If the MAJOR-OPCODE corresponds to a core request, the -MINOR-OPCODE contains 8 bits of request-specific data. Otherwise, the -MINOR-OPCODE specifies which extension request this packet represents. The -LENGTH field specifies the number of 4-byte units contained within the packet + +The <parameter>MAJOR-OPCODE</parameter> specifies which core request or +extension package this packet represents. If the +<parameter>MAJOR-OPCODE</parameter> corresponds to a core request, the +<parameter>MINOR-OPCODE</parameter> contains 8 bits of request-specific data. +Otherwise, the <parameter>MINOR-OPCODE</parameter> specifies which extension +request this packet represents. The <parameter>LENGTH</parameter> field +specifies the number of 4-byte units contained within the packet and must be at least one. If this field contains a value greater than one it -is followed by (LENGTH - 1) * 4 bytes of request-specific data. Unless +is followed by (<parameter>LENGTH</parameter> - 1) * 4 bytes +of request-specific data. Unless otherwise specified, unused bytes are not required to be zero. </para> <para> If a request packet contains too little or too much data, the server returns -a <link linkend="Errors:Length"><errorname>Length</errorname></link> error. If the server runs out of internal +a <link linkend="Errors:Length"><errorname>Length</errorname></link> error. +If the server runs out of internal resources (such as memory) while processing a request, it returns an -<link linkend="Errors:Alloc"><errorname>Alloc</errorname></link> error. If a server is -deficient (and therefore non-compliant) and is unable to process a request, it -may return an <link linkend="Errors:Implementation"><errorname>Implementation</errorname></link> error. +<link linkend="Errors:Alloc"><errorname>Alloc</errorname></link> error. +If a server is deficient (and therefore non-compliant) and is unable to +process a request, it may return an +<link linkend="Errors:Implementation"><errorname>Implementation</errorname></link> error. If a client uses an extension request without previously having issued a <link linkend="Requests:QueryExtension"><function>QueryExtension</function></link> request for that extension, the server responds with a <link linkend="Errors:Request"><errorname>Request</errorname></link> -error. If the server encounters a request -with an unknown MAJOR-OPCODE or MINOR-OPCODE, it responds with a +error. If the server encounters a request with an unknown +<parameter>MAJOR-OPCODE</parameter> or <parameter>MINOR-OPCODE</parameter>, +it responds with a <link linkend="Errors:Request"><errorname>Request</errorname></link> error. At most one error is generated per request. If more than one error condition @@ -1528,9 +1535,10 @@ is encountered in processing a requests, the choice of which error is returned is server-dependent. </para> <para> -Core requests have MAJOR-OPCODE values between 0 and 127, inclusive. Extension -requests have MAJOR-OPCODE values between 128 and 255, inclusive, that are -assigned by by the server. All MINOR-OPCODE values in extension requests are +Core requests have <parameter>MAJOR-OPCODE</parameter> values between 0 and +127, inclusive. Extension requests have <parameter>MAJOR-OPCODE</parameter> +values between 128 and 255, inclusive, that are assigned by by the server. +All <parameter>MINOR-OPCODE</parameter> values in extension requests are between 0 and 255, inclusive. </para> <para> @@ -1551,15 +1559,17 @@ Each reply is at least 8 bytes long and contains the following fields: </informaltable> </para> <para> -The TYPE field has a value of zero. The DATA-OR-UNUSED field may be used to +The <parameter>TYPE</parameter> field has a value of zero. +The <parameter>DATA-OR-UNUSED</parameter> field may be used to encode one byte of reply-specific data (see <link linkend="Encoding::Requests">Section 5.2 on request encoding</link>). The least-significant 16 bits of the sequence number of the request that -generated the reply are stored in the SEQUENCE-NUMBER field. The LENGTH field -specifies the number of 4-byte units in this reply packet, including the fields -described above, and must be at least two. If LENGTH is greater than two, the -fields described above are followed by (LENGTH - 2) * 4 bytes of additional -data. +generated the reply are stored in the <parameter>SEQUENCE-NUMBER</parameter> +field. The <parameter>LENGTH</parameter> field specifies the number of +4-byte units in this reply packet, including the fields described above, +and must be at least two. If <parameter>LENGTH</parameter> is greater +than two, the fields described above are followed by +(<parameter>LENGTH</parameter> - 2) * 4 bytes of additional data. </para> <para> Requests that have replies are described using the following syntax: @@ -1616,7 +1626,8 @@ mutually-understood virtual stream: </tgroup> </informaltable> <para> -The initial byte of the connection specifies the BYTE-ORDER in +The initial byte of the connection specifies the +<parameter>BYTE-ORDER</parameter> in which subsequent 16-bit and 32-bit numeric values are to be transmitted. The octal value <literal>102</literal> (<acronym>ASCII</acronym> uppercase <quote><literal>B</literal></quote>) @@ -1628,15 +1639,17 @@ If any other value is encountered the server closes the connection without any response. </para> <para> -The CLIENT-MAJOR-PROTOCOL-VERSION and -CLIENT-MINOR-PROTOCOL-VERSION specify which version of the +The <parameter>CLIENT-MAJOR-PROTOCOL-VERSION</parameter> and +<parameter>CLIENT-MINOR-PROTOCOL-VERSION</parameter> specify +which version of the font service protocol the client would like to use. If the client can support multiple versions, the highest version should be given. This version of the protocol has a major version of 2 and a minor version of 0. </para> <para> -The AUTHORIZATION-PROTOCOLS contains a list of protocol names and +The <parameter>AUTHORIZATION-PROTOCOLS</parameter> +contains a list of protocol names and optional initial data for which the client can provide information. The server may use this to determine which protocol to use or as part of the initial exchange of @@ -1660,8 +1673,9 @@ authorization data. </tgroup> </informaltable> <para> -The SERVER-MAJOR-PROTOCOL-VERSION and -SERVER-MINOR-PROTOCOL-VERSION specify the version of the font +The <parameter>SERVER-MAJOR-PROTOCOL-VERSION</parameter> and +<parameter>SERVER-MINOR-PROTOCOL-VERSION</parameter> specify +the version of the font service protocol that the server expects from the client. If the server supports the version specified by the client, this version number should be returned. If the client has @@ -1673,14 +1687,15 @@ It is the client's responsibility to decide whether or not it can match this version of the protocol. </para> <para> -The ALTERNATE-SERVERS-HINT is a list of other font servers +The <parameter>ALTERNATE-SERVERS-HINT</parameter> +is a list of other font servers that may have related sets of fonts (determined by means outside this protocol, typically by the system administrator). Clients may choose to contact these font servers if the connection is rejected or lost. </para> <para> -The STATUS field indicates whether the server accepted, +The <parameter>STATUS</parameter> field indicates whether the server accepted, rejected, or would like more information about the connection. It has one of the following alternate values: <informaltable frame='none'> @@ -1698,27 +1713,31 @@ It has one of the following alternate values: </informaltable> </para> <para> -If STATUS is <constant>Denied</constant>, the server has rejected the client's -authorization information. If STATUS is <constant>Busy</constant>, the server has +If <parameter>STATUS</parameter> is <constant>Denied</constant>, +the server has rejected the client's authorization information. +If <parameter>STATUS</parameter> is <constant>Busy</constant>, the server has simply decided that it cannot provide fonts to this client at this time (it may be able to at a later time). In both cases, -AUTHORIZATION-INDEX is set to zero, no authorization-data is +<parameter>AUTHORIZATION-INDEX</parameter> is set to zero, +no authorization-data is returned, and the server closes the connection after sending the data described so far. </para> <para> -Otherwise the AUTHORIZATION-INDEX is set to the index -(beginning with 1) into the AUTHORIZATION-PROTOCOLS list of -the protocol that the server will use for this connection. If +Otherwise the <parameter>AUTHORIZATION-INDEX</parameter> is set to the index +(beginning with 1) into the <parameter>AUTHORIZATION-PROTOCOLS</parameter> +list of the protocol that the server will use for this connection. If the server does not want to use any of the given protocols, -this value is set to zero. The AUTHORIZATION-DATA field is -used to send back authorization protocol-dependent data to the +this value is set to zero. The <parameter>AUTHORIZATION-DATA</parameter> +field is used to send back authorization protocol-dependent data to the client (such as a challenge, authentication of the server, etc.). </para> <para> -If STATUS is <constant>Success</constant>, the following section of protocol -is omitted. Otherwise, if STATUS is <constant>Continue</constant>, the server expects +If <parameter>STATUS</parameter> is <constant>Success</constant>, +the following section of protocol is omitted. Otherwise, if +<parameter>STATUS</parameter> is <constant>Continue</constant>, +the server expects more authorization data from the client (i.e. the connection setup is not finished, so no requests or events may be sent): <informaltable frame='none'> @@ -1737,13 +1756,15 @@ setup is not finished, so no requests or events may be sent): </informaltable> </para> <para> -The values in STATUS have the same meanings as described +The values in <parameter>STATUS</parameter> have the same meanings as described above. This section of protocol is repeated until the server -either accepts (sets STATUS to <constant>Success</constant>) or rejects (sets -STATUS to <constant>Denied</constant> or <constant>Busy</constant>) the connection. +either accepts (sets <parameter>STATUS</parameter> to +<constant>Success</constant>) or rejects (sets <parameter>STATUS</parameter> +to <constant>Denied</constant> or <constant>Busy</constant>) the connection. </para> <para> -Once the connection has been accepted and STATUS is <constant>Success</constant>, +Once the connection has been accepted and <parameter>STATUS</parameter> +is <constant>Success</constant>, an implicit AccessContext is created for the authorization data and the protocol continues with the following data sent from the server: @@ -1763,15 +1784,17 @@ from the server: </informaltable> </para> <para> -The REMAINING-LENGTH specifies the length in 4-byte units of -the remaining data to be transmitted to the client. The -MAXIMUM-REQUEST-LENGTH specifies the largest request size in -4-byte units that is accepted by the server and must have a +The <parameter>REMAINING-LENGTH</parameter> specifies the length in 4-byte +units of the remaining data to be transmitted to the client. The +<parameter>MAXIMUM-REQUEST-LENGTH</parameter> specifies the largest request +size in 4-byte units that is accepted by the server and must have a value of at least 4096. Requests with a length field larger -than this value are ignored and a <link linkend="Errors:Length"><errorname>Length</errorname></link> +than this value are ignored and a +<link linkend="Errors:Length"><errorname>Length</errorname></link> error is returned. -The VENDOR string specifies the name of the manufacturer of -the font server. The RELEASE-NUMBER specifies the particular +The <parameter>VENDOR</parameter> string specifies the name of the +manufacturer of the font server. The +<parameter>RELEASE-NUMBER</parameter> specifies the particular release of the server in a manufacturer-dependent manner. </para> </section> @@ -1851,24 +1874,27 @@ case-sensitive and are encoded in <acronym>ISO</acronym> 8859-1. </tgroup> </informaltable> <para> -This request determines whether or not the extension package -specified by NAME (encoded in <acronym>ISO</acronym> 8859-1) is supported by the -server and that there is sufficient number of major opcode, -event, and error codes available. If so, then PRESENT is set -to <constant>True</constant>, MAJOR-VERSION and MINOR-VERSION are set to the +This request determines whether or not the extension package specified by +<parameter>NAME</parameter> (encoded in <acronym>ISO</acronym> 8859-1) is +supported by the server and that there is sufficient number of major opcode, +event, and error codes available. If so, then <parameter>PRESENT</parameter> +is set to <constant>True</constant>, <parameter>MAJOR-VERSION</parameter> +and <parameter>MINOR-VERSION</parameter> are set to the respective major and minor version numbers of the protocol -that the server would prefer; MAJOR-OPCODE is set to the value -to use in extension requests; FIRST-EVENT is set to the value -of the first extension-specific event code or zero if the -extension does not have any events; NUMBER-EVENTS is set to -the number of new events that the event defines; FIRST-ERROR +that the server would prefer; <parameter>MAJOR-OPCODE</parameter> is set to +the value to use in extension requests; <parameter>FIRST-EVENT</parameter> +is set to the value of the first extension-specific event code or zero if the +extension does not have any events; <parameter>NUMBER-EVENTS</parameter> is +set to the number of new events that the event defines; +<parameter>FIRST-ERROR</parameter> is set to the value of the first extension-specific error code or zero if the extension does not define any new errors; and -NUMBER-ERRORS is set to the number of new errors the extension -defines. +<parameter>NUMBER-ERRORS</parameter> is set to the number of +new errors the extension defines. </para> <para> -Otherwise, PRESENT is set to <constant>False</constant> and the remaining fields are +Otherwise, <parameter>PRESENT</parameter> is set to +<constant>False</constant> and the remaining fields are set to zero. </para> <para> @@ -1903,20 +1929,22 @@ error is returned. </tgroup> </informaltable> <para> -This request returns a list of at most MAX-NAMES names +This request returns a list of at most <parameter>MAX-NAMES</parameter> names of collections (called catalogues) of fonts that match -the specified PATTERN. In the pattern (which is encoded +the specified <parameter>PATTERN</parameter>. In the pattern (which is encoded in <acronym>ISO</acronym> 8859-1), the <quote><literal>?</literal></quote> character (octal <literal>77</literal>) matches any single character; the <quote><literal>*</literal></quote> character (octal <literal>52</literal>) matches any series of zero or more characters; and alphabetic characters match either upper- or lowercase. The -returned NAMES are encoded in <acronym>ISO</acronym> 8859-1 and may contain +returned <parameter>NAMES</parameter> are encoded in +<acronym>ISO</acronym> 8859-1 and may contain mixed character cases. </para> <para> -If PATTERN is of zero length or MAX-NAMES is equal to zero, +If <parameter>PATTERN</parameter> is of zero length or +<parameter>MAX-NAMES</parameter> is equal to zero, one reply containing a zero-length list of names is returned. This may be used to synchronize the client with the server. </para> @@ -1932,7 +1960,7 @@ To reduce the amount of buffering needed by the server, the list of names may be split across several reply packets, so long as the names arrive in the same order that they would have appeared had they been in a single packet. The -REPLIES-FOLLOWING-HINT field in all but the last reply +<parameter>REPLIES-FOLLOWING-HINT</parameter> field in all but the last reply contains a positive value that specifies the number of replies that are likely, but not required, to follow. In the last reply, which may contain zero or more names, this field @@ -2024,7 +2052,8 @@ returned in mixed case. </informaltable> <para> This request specifies the set of maskable events that the -extension indicated by EXTENSION-OPCODE (or zero for the core) +extension indicated by <parameter>EXTENSION-OPCODE</parameter> +(or zero for the core) should generate for the client. Event masks are limited in scope to the extension (or core) for which they are defined, so expressing interest in events from one or more extensions @@ -2038,13 +2067,13 @@ is zero, indicating no interest in any maskable events. Some events are not maskable and cannot be blocked. </para> <para> -If EXTENSION-OPCODE is not a valid extension opcode previously -returned by +If <parameter>EXTENSION-OPCODE</parameter> is not a valid extension +opcode previously returned by <link linkend="Requests:QueryExtension"><function>QueryExtension</function></link> or zero, a <link linkend="Errors:Request"><errorname>Request</errorname></link> error is -returned. If EVENT-MASK contains any bits that do not +returned. If <parameter>EVENT-MASK</parameter> contains any bits that do not correspond to valid events for the specified extension (or core), an <link linkend="Errors:EventMask"><errorname>EventMask</errorname></link> @@ -2071,12 +2100,13 @@ ignored. </informaltable> <para> This request returns the set of maskable core events the -extension indicated by EXTENSION-OPCODE (or the core if zero) +extension indicated by <parameter>EXTENSION-OPCODE</parameter> +(or the core if zero) should generate for the client. Non-maskable events are always sent to the client. </para> <para> -If EXTENSION-OPCODE is not a valid extension opcode +If <parameter>EXTENSION-OPCODE</parameter> is not a valid extension opcode previously returned by <link linkend="Requests:QueryExtension"><function>QueryExtension</function></link> or zero, a @@ -2118,27 +2148,30 @@ to determine whether or not the client should be granted access to particular font information. </para> <para> -If STATUS is <constant>Denied</constant>, the server rejects the client's -authorization information and does not associate AC with any -valid -<type>AccessContext</type>. -In this case, AUTHORIZATION-INDEX is set -to zero, and zero bytes of AUTHORIZATION-DATA is returned. +If <parameter>STATUS</parameter> is <constant>Denied</constant>, the server +rejects the client's authorization information and does not associate +<parameter>AC</parameter> with any valid <type>AccessContext</type>. +In this case, <parameter>AUTHORIZATION-INDEX</parameter> is set +to zero, and zero bytes of <parameter>AUTHORIZATION-DATA</parameter> +is returned. </para> <para> -Otherwise, AUTHORIZATION-INDEX is set to the index (beginning -with 1) into the AUTHORIZATION-PROTOCOLS list of the protocol +Otherwise, <parameter>AUTHORIZATION-INDEX</parameter> is set to the index +(beginning with 1) into the <parameter>AUTHORIZATION-PROTOCOLS</parameter> +list of the protocol that the server will use for this connection. If the server does not want to use any of the given protocols, this value is -set to zero. The AUTHORIZATION-DATA field is used to send -back authorization protocol-dependent data to the client (such +set to zero. The <parameter>AUTHORIZATION-DATA</parameter> field is used +to send back authorization protocol-dependent data to the client (such as a challenge, authentication of the server, etc.). </para> <para> -If STATUS is <constant>Continue</constant>, the client is expected to continue +If <parameter>STATUS</parameter> is <constant>Continue</constant>, +the client is expected to continue the request by sending the following protocol and receiving the indicated response from the server. This continues -until STATUS is set to either <constant>Success</constant> or <constant>Denied</constant>. +until <parameter>STATUS</parameter> is set to either +<constant>Success</constant> or <constant>Denied</constant>. </para> <informaltable frame='none'> <?dbfo keep-together="always" ?> @@ -2155,11 +2188,11 @@ until STATUS is set to either <constant>Success</constant> or <constant>Denied</ </tgroup> </informaltable> <para> -Once the connection has been accepted and STATUS is <constant>Success</constant>, -the request is complete. +Once the connection has been accepted and <parameter>STATUS</parameter> +is <constant>Success</constant>, the request is complete. </para> <para> -If AC is not in the range +If <parameter>AC</parameter> is not in the range [1..2<superscript>29</superscript>-1] or is already associated with an access context, an <link linkend="Errors:IDChoice"><errorname>IDChoice</errorname></link> error is returned. </para> @@ -2181,9 +2214,9 @@ with an access context, an <link linkend="Errors:IDChoice"><errorname>IDChoice</ </tgroup> </informaltable> <para> -This request indicates that the specified AC should no longer -be associated with a valid access context. If AC is also the -current +This request indicates that the specified <parameter>AC</parameter> should +no longer be associated with a valid access context. +If <parameter>AC</parameter> is also the current <type>AccessContext</type> (as set by the <link linkend="Requests:SetAuthorization"><function>SetAuthorization</function></link> @@ -2194,14 +2227,14 @@ restore the <type>AccessContext</type> established for the initial connection setup. Operations on fonts that were opened under -AC are not affected. The client may reuse the value of AC in -a subsequent +<parameter>AC</parameter> are not affected. The client may reuse the +value of <parameter>AC</parameter> in a subsequent <link linkend="Requests:CreateAC"><function>CreateAC</function></link> request. </para> <para> -If AC isn't associated with any valid authorization previously -created by +If <parameter>AC</parameter> isn't associated with any valid authorization +previously created by <link linkend="Requests:CreateAC"><function>CreateAC</function></link>, an <link linkend="Errors:AccessContext"><errorname>AccessContext</errorname></link> error is returned. @@ -2240,13 +2273,13 @@ of the corresponding <link linkend="Requests:OpenBitmapFont"><function>OpenBitmapFont</function></link> ). -An AC of <constant>None</constant> restores the +An <parameter>AC</parameter> of <constant>None</constant> restores the <type>AccessContext</type> established for the initial connection setup. </para> <para> -If AC is neither <constant>None</constant> nor a value associated with a valid -<type>AccessContext</type> +If <parameter>AC</parameter> is neither <constant>None</constant> +nor a value associated with a valid <type>AccessContext</type> previously created by <link linkend="Requests:CreateAC"><function>CreateAC</function></link>, an @@ -2335,8 +2368,9 @@ a server-dependent default value is returned. </tgroup> -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/e1wzlrv-0002ib...@moszumanska.debian.org