[arch-commits] Commit in libxp/repos/extra-x86_64 (4 files)
Andreas Radke
andyrtr at gemini.archlinux.org
Sat May 21 20:27:10 UTC 2022
Date: Saturday, May 21, 2022 @ 20:27:09
Author: andyrtr
Revision: 446343
archrelease: copy trunk to extra-x86_64
Added:
libxp/repos/extra-x86_64/PKGBUILD
(from rev 446342, libxp/trunk/PKGBUILD)
libxp/repos/extra-x86_64/add-proto-files.patch
(from rev 446342, libxp/trunk/add-proto-files.patch)
Deleted:
libxp/repos/extra-x86_64/PKGBUILD
libxp/repos/extra-x86_64/add-proto-files.patch
-----------------------+
PKGBUILD | 76 -
add-proto-files.patch | 2816 ++++++++++++++++++++++++------------------------
2 files changed, 1446 insertions(+), 1446 deletions(-)
Deleted: PKGBUILD
===================================================================
--- PKGBUILD 2022-05-21 20:27:02 UTC (rev 446342)
+++ PKGBUILD 2022-05-21 20:27:09 UTC (rev 446343)
@@ -1,38 +0,0 @@
-# Maintainer: AndyRTR <andyrtr at archlinux.org>
-# Maintainer: Jan de Groot <jgc at archlinux.org>
-
-pkgname=libxp
-pkgver=1.0.3
-pkgrel=4
-pkgdesc="X11 X Print Library"
-arch=('x86_64')
-license=('custom')
-url="https://xorg.freedesktop.org/"
-depends=('libxext')
-makedepends=('xorg-util-macros' 'xorgproto')
-source=(${url}/releases/individual/lib/libXp-${pkgver}.tar.bz2{,.sig}
- add-proto-files.patch)
-license=('custom')
-sha512sums=('502a2500ec0f519dae69ac035bf93c65c47e3bc301604aacb350e90043455f3485626194db45208e5521300b282843825e08b7f7c412a7497ffa02f5f1560c8d'
- 'SKIP'
- 'e2b1bf1d132f2a219901feb8bf4eaf08cd795521bb6175627a82d745d422ad189c6d24ad221d5804b5e32f5798ad75bc733bb94b3505453fa57c5b7951bdece8')
-validpgpkeys=('3BB639E56F861FA2E86505690FDD682D974CA72A') # "Matt Turner <mattst88 at gmail.com>"
-
-prepare() {
- cd libXp-${pkgver}
- patch -Np1 -i ../add-proto-files.patch
- autoreconf -vfi
-}
-
-build() {
- cd libXp-${pkgver}
- ./configure --prefix=/usr
- make
-}
-
-package() {
- cd libXp-${pkgver}
- make DESTDIR="${pkgdir}" install
- install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
- install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/"
-}
Copied: libxp/repos/extra-x86_64/PKGBUILD (from rev 446342, libxp/trunk/PKGBUILD)
===================================================================
--- PKGBUILD (rev 0)
+++ PKGBUILD 2022-05-21 20:27:09 UTC (rev 446343)
@@ -0,0 +1,38 @@
+# Maintainer: AndyRTR <andyrtr at archlinux.org>
+# Maintainer: Jan de Groot <jgc at archlinux.org>
+
+pkgname=libxp
+pkgver=1.0.3
+pkgrel=5
+pkgdesc="X11 X Print Library"
+arch=('x86_64')
+license=('custom')
+url="https://xorg.freedesktop.org/"
+depends=('libxext')
+makedepends=('xorg-util-macros' 'xorgproto')
+source=(${url}/releases/individual/lib/libXp-${pkgver}.tar.bz2{,.sig}
+ add-proto-files.patch)
+license=('custom')
+sha512sums=('502a2500ec0f519dae69ac035bf93c65c47e3bc301604aacb350e90043455f3485626194db45208e5521300b282843825e08b7f7c412a7497ffa02f5f1560c8d'
+ 'SKIP'
+ 'e2b1bf1d132f2a219901feb8bf4eaf08cd795521bb6175627a82d745d422ad189c6d24ad221d5804b5e32f5798ad75bc733bb94b3505453fa57c5b7951bdece8')
+validpgpkeys=('3BB639E56F861FA2E86505690FDD682D974CA72A') # "Matt Turner <mattst88 at gmail.com>"
+
+prepare() {
+ cd libXp-${pkgver}
+ patch -Np1 -i ../add-proto-files.patch
+ autoreconf -vfi
+}
+
+build() {
+ cd libXp-${pkgver}
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd libXp-${pkgver}
+ make DESTDIR="${pkgdir}" install
+ install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
+ install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/"
+}
Deleted: add-proto-files.patch
===================================================================
--- add-proto-files.patch 2022-05-21 20:27:02 UTC (rev 446342)
+++ add-proto-files.patch 2022-05-21 20:27:09 UTC (rev 446343)
@@ -1,1408 +0,0 @@
-diff -up libXp-1.0.3/configure.ac.jx libXp-1.0.3/configure.ac
---- libXp-1.0.3/configure.ac.jx 2015-02-21 17:04:36.000000000 -0500
-+++ libXp-1.0.3/configure.ac 2018-07-05 12:11:30.955684590 -0400
-@@ -42,11 +42,12 @@ XORG_DEFAULT_OPTIONS
- AC_PROG_LIBTOOL
-
- # Check for X and print proto
--PKG_CHECK_MODULES(XPRINT, [x11 >= 1.6] xext xextproto xau printproto)
-+PKG_CHECK_MODULES(XPRINT, [x11 >= 1.6] xext xextproto xau)
-
- AC_CONFIG_FILES([Makefile
- src/Makefile
- man/Makefile
-+ printproto.pc
- xp.pc])
- AC_OUTPUT
-
-diff -up libXp-1.0.3/include/X11/extensions/Print.h.jx libXp-1.0.3/include/X11/extensions/Print.h
---- libXp-1.0.3/include/X11/extensions/Print.h.jx 2018-07-05 12:11:12.281385412 -0400
-+++ libXp-1.0.3/include/X11/extensions/Print.h 2018-07-05 12:11:12.281385412 -0400
-@@ -0,0 +1,552 @@
-+/* $Xorg: Print.h,v 1.3 2000/08/18 04:05:44 coskrey Exp $ */
-+/******************************************************************************
-+ ******************************************************************************
-+ **
-+ ** File: Print.h
-+ **
-+ ** Description: Definitions needed by the server, library, and
-+ ** clients. Subportion restricted to library and
-+ ** clients.
-+ **
-+ ** Server, Library, Client portion has:
-+ ** o All sz_* defines
-+ ** o Revision and Name defines
-+ ** o Common defines and constants (e.g. Keywords, Masks)
-+ ** o Extension version structure
-+ **
-+ ** Library and client subportion has:
-+ ** o Convience Marcos
-+ ** o Client side data structures
-+ ** o Client side event structures (non wire)
-+ ** o Library function prototypes
-+ ** o some private stuff denoted with _whatever
-+ **
-+ ** Printstr.h for server and library, but NOT clients.
-+ **
-+ ******************************************************************************
-+ **
-+ ** (c) Copyright 1996 Hewlett-Packard Company
-+ ** (c) Copyright 1996 International Business Machines Corp.
-+ ** (c) Copyright 1996 Sun Microsystems, Inc.
-+ ** (c) Copyright 1996 Novell, Inc.
-+ ** (c) Copyright 1996 Digital Equipment Corp.
-+ ** (c) Copyright 1996 Fujitsu Limited
-+ ** (c) Copyright 1996 Hitachi, Ltd.
-+ **
-+ ** Permission is hereby granted, free of charge, to any person obtaining a copy
-+ ** of this software and associated documentation files (the "Software"), to deal
-+ ** in the Software without restriction, including without limitation the rights
-+ ** to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-+ ** copies of the Software, and to permit persons to whom the Software is
-+ ** furnished to do so, subject to the following conditions:
-+ **
-+ ** The above copyright notice and this permission notice shall be included in
-+ ** 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
-+ ** COPYRIGHT HOLDERS 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.
-+ **
-+ ** Except as contained in this notice, the names of the copyright holders shall
-+ ** not be used in advertising or otherwise to promote the sale, use or other
-+ ** dealings in this Software without prior written authorization from said
-+ ** copyright holders.
-+ **
-+ ******************************************************************************
-+ *****************************************************************************/
-+/* $XFree86: xc/include/extensions/Print.h,v 1.4 2000/01/25 18:37:31 dawes Exp $ */
-+
-+#ifndef _XpPrint_H_
-+#define _XpPrint_H_
-+
-+#ifndef _XP_PRINT_SERVER_
-+#include <X11/Xlib.h>
-+#include <X11/Xresource.h>
-+#include <X11/Xauth.h>
-+#endif /* _XP_PRINT_SERVER_ */
-+
-+#include <X11/Xfuncproto.h>
-+
-+_XFUNCPROTOBEGIN
-+
-+/******************************************************************************
-+ *
-+ * Definitions used by the server, library and client.
-+ */
-+
-+/********************************************************************
-+ *
-+ * Naming and versioning information.
-+ */
-+#define XP_PRINTNAME "XpExtension"
-+
-+/*
-+ * Add a define below for each major extension release.
-+ */
-+#define XP_DONT_CHECK 0
-+#define XP_INITIAL_RELEASE 1
-+
-+/*
-+ * For each single entry above, create one major/minor pair.
-+ */
-+#define XP_PROTO_MAJOR 1
-+#define XP_PROTO_MINOR 0
-+
-+/*
-+ * Identify current version.
-+ */
-+#define XP_MAJOR_VERSION XP_PROTO_MAJOR
-+#define XP_MINOR_VERSION XP_PROTO_MINOR
-+
-+/*
-+ * Misc version defines.
-+ */
-+#define XP_ABSENT 0 /* Prior to XP Print support */
-+#define XP_PRESENT 1 /* With XP Print support */
-+
-+/********************************************************************
-+ *
-+ * Xp Print Error codes.
-+ */
-+#define XP_ERRORS 3 /* number of error types */
-+
-+#define XPBadContext 0 /* Print Context invalid or missing */
-+#define XPBadSequence 1 /* Illegal sequence of XP operations */
-+#define XPBadResourceID 2 /* X-resource not valid */
-+
-+/********************************************************************
-+ *
-+ * Xp Print Event masks and codes.
-+ *
-+ */
-+#define XP_EVENTS 2 /* number of event types */
-+
-+#define XPNoEventMask 0 /* not an event - just a null mask */
-+#define XPPrintMask (1L<<0)
-+#define XPAttributeMask (1L<<1)
-+
-+#define XPPrintNotify 0 /* contains "detail" - see below */
-+#define XPAttributeNotify 1 /* contains "detail" - see below */
-+
-+#define XPStartJobNotify 0 /* value for "detail" in XPPrintNotify*/
-+#define XPEndJobNotify 1
-+#define XPStartDocNotify 2
-+#define XPEndDocNotify 3
-+#define XPStartPageNotify 4
-+#define XPEndPageNotify 5
-+
-+/********************************************************************
-+ *
-+ * Xp Print Attribute Object codes (subset of ISO DPA 10175). The
-+ * Xp Server can get and set any of the values, while the Xp Library
-+ * may only be able to set a subset of the attribute objects.
-+ *
-+ * note: the codes are also used as "detail" for XPAttributeNotify
-+ *
-+ * note: XPPageAttr is not defined in ISO DPA 10175. It is unique
-+ * to Xp, and its attributes are a proper subset of XPDocAttr.
-+ */
-+typedef unsigned char XPAttributes; /* type of Xp*Attr codes */
-+
-+#define XP_ATTRIBUTES 5 /* those attrs currently supported */
-+
-+#define XPJobAttr 1 /* get/set */
-+#define XPDocAttr 2 /* get/set */
-+#define XPPageAttr 3 /* get/set - subset of XPDocAttr */
-+#define XPPrinterAttr 4 /* get only (library) */
-+#define XPServerAttr 5 /* get only (library), no
-+ context needed */
-+
-+/*
-+ * note: ISO DPA 10175 defines a number of "attribute objects", of
-+ * which POSIX 1387.4 and the SI Xp will only support a
-+ * subset.
-+ */
-+#define XPMediumAttr 6 /* DPA-Object Medium */
-+#define XPFontAttr 7 /* DPA-Object Font */
-+#define XPResAttr 8 /* DPA-Object Resource */
-+#define XPTransAttr 9 /* DPA-Object Transfer method */
-+#define XPDelAttr 10 /* DPA-Object Delivery method */
-+#define XPAuxSPkg 11 /* DPA-Object Auxiliary sheet package */
-+#define XPAuxS 12 /* DPA-Object Auxiliary sheet */
-+#define XPFinishAttr 13 /* DPA-Object Finishing */
-+#define XPOutputAttr 14 /* DPA-Object Output method */
-+#define XPImpAttr 15 /* DPA-Object Imposition */
-+#define XPSchedAttr 16 /* DPA-Object Scheduler */
-+#define XPIntJobAttr 17 /* DPA-Object Initial value job */
-+#define XPIntDocAttr 18 /* DPA-Object Initial value document */
-+#define XPResConAttr 19 /* DPA-Object Resource context */
-+
-+
-+/*
-+ * Replacement rules for XpSetAttributes
-+ */
-+typedef unsigned char XPAttrReplacement;
-+#define XPAttrReplace 1
-+#define XPAttrMerge 2
-+
-+
-+/*
-+ * Return codes for XpGetDocumentData
-+ */
-+typedef unsigned char XPGetDocStatus;
-+#define XPGetDocFinished 0 /* normal termination */
-+#define XPGetDocSecondConsumer 1 /* setup error */
-+#define XPGetDocError 2 /* runtime error, see generated error */
-+
-+
-+/*
-+ * Save data types for XpStartJob.
-+ */
-+typedef unsigned char XPSaveData;
-+#define XPSpool 1 /* Job data sent to spooler */
-+#define XPGetData 2 /* Job data via XpGetDocumentData */
-+
-+
-+/*
-+ * Document types for XpStartDoc.
-+ */
-+typedef unsigned char XPDocumentType;
-+#define XPDocNormal 1 /* Doc data handled by Xserver */
-+#define XPDocRaw 2 /* Doc data passed through Xserver */
-+
-+
-+/********************************************************************
-+ *
-+ * Xp Print Property Names
-+ */
-+
-+
-+#ifndef _XP_PRINT_SERVER_
-+
-+/******************************************************************************
-+ *
-+ * Definitions used by the library and clients only.
-+ */
-+
-+/*******************************************************************
-+ *
-+ * General API defines and such.
-+ */
-+
-+/*
-+ * Print Context for XpInitContext and related calls.
-+ */
-+typedef XID XPContext;
-+
-+/*
-+ * Struct for XpGetPrinterList.
-+ */
-+typedef struct {
-+ char *name; /* name */
-+ char *desc; /* localized description */
-+} XPPrinterRec, *XPPrinterList;
-+
-+/*
-+ * Typedefs for XpGetDocumentData
-+ */
-+typedef void (*XPSaveProc)( Display *display,
-+ XPContext context,
-+ unsigned char *data,
-+ unsigned int data_len,
-+ XPointer client_data);
-+
-+typedef void (*XPFinishProc)( Display *display,
-+ XPContext context,
-+ XPGetDocStatus status,
-+ XPointer client_data);
-+
-+/*
-+ * Typedefs for XpSetLocaleHinter and XpGetLocaleHinter
-+ */
-+typedef char * (*XPHinterProc)(void);
-+
-+#if 0
-+/*******************************************************************
-+ *
-+ * Extension version structures.
-+ *
-+ **** this structure is now defined localy in the one file that uses it
-+ **** in order to avoid clashes with its definition in XI.h
-+ */
-+typedef struct {
-+ int present;
-+ short major_version;
-+ short minor_version;
-+} XExtensionVersion;
-+#endif
-+
-+/********************************************************************
-+ *
-+ * Event structs for clients.
-+ *
-+ * note: these events are relative to a print context, and
-+ * not to a window as in core X.
-+ */
-+typedef struct {
-+ int type; /* base + XPPrintNotify */
-+ unsigned long serial; /* # of last request processed by server */
-+ Bool send_event; /* true if from a SendEvent request */
-+ Display *display; /* Display the event was read from */
-+ XPContext context; /* print context where operation was requested */
-+ Bool cancel; /* was detailed event canceled */
-+ int detail; /* XPStartJobNotify, XPEndJobNotify,
-+ XPStartDocNotify, XPEndDocNotify,
-+ XPStartPageNotify, XPEndPageNotify */
-+} XPPrintEvent;
-+
-+typedef struct {
-+ int type; /* base + XPAttributeNotify */
-+ unsigned long serial; /* # of last request processed by server */
-+ Bool send_event; /* true if from a SendEvent request */
-+ Display *display; /* Display the event was read from */
-+ XPContext context; /* print context where operation was requested */
-+ int detail; /* XPJobAttr, XPDocAttr, XPPageAttr,
-+ XPPrinterAttr, XPSpoolerAttr,
-+ XPMediumAttr, XPServerAttr */
-+} XPAttributeEvent;
-+
-+typedef struct {
-+ int type; /* base + XPDataReadyNotify */
-+ unsigned long serial; /* # of last request processed by server */
-+ Bool send_event; /* true if from a SendEvent request */
-+ Display *display; /* Display the event was read from */
-+ XPContext context; /* print context where operation was requested */
-+ unsigned long available; /* bytes available for retrieval */
-+} XPDataReadyEvent;
-+
-+
-+/**********************************************************
-+ *
-+ * Function prototypes for library side.
-+ */
-+
-+extern XPContext XpCreateContext (
-+ Display *display,
-+ char *printer_name
-+);
-+
-+extern void XpSetContext (
-+ Display *display,
-+ XPContext print_context
-+);
-+
-+extern XPContext XpGetContext (
-+ Display *display
-+);
-+
-+extern void XpDestroyContext (
-+ Display *display,
-+ XPContext print_context
-+);
-+
-+extern Screen *XpGetScreenOfContext (
-+ Display *display,
-+ XPContext print_context
-+);
-+
-+extern Status XpGetPageDimensions (
-+ Display *display,
-+ XPContext print_context,
-+ unsigned short *width, /* return value */
-+ unsigned short *height, /* return value */
-+ XRectangle *reproducible_area /* return value */
-+);
-+
-+extern void XpStartJob (
-+ Display *display,
-+ XPSaveData save_data
-+);
-+
-+extern void XpEndJob (
-+ Display *display
-+);
-+
-+extern void XpCancelJob (
-+ Display *display,
-+ Bool discard
-+);
-+
-+extern void XpStartDoc (
-+ Display *display,
-+ XPDocumentType type
-+);
-+
-+extern void XpEndDoc (
-+ Display *display
-+);
-+
-+extern void XpCancelDoc (
-+ Display *display,
-+ Bool discard
-+);
-+
-+extern void XpPutDocumentData (
-+ Display *display,
-+ Drawable drawable,
-+ unsigned char *data,
-+ int data_len,
-+ char *doc_fmt,
-+ char *options
-+);
-+
-+extern Status XpGetDocumentData (
-+ Display *display,
-+ XPContext context,
-+ XPSaveProc save_proc,
-+ XPFinishProc finish_proc,
-+ XPointer client_data
-+);
-+
-+extern void XpStartPage (
-+ Display *display,
-+ Window window
-+);
-+
-+extern void XpEndPage (
-+ Display *display
-+);
-+
-+extern void XpCancelPage (
-+ Display *display,
-+ Bool discard
-+);
-+
-+extern void XpSelectInput (
-+ Display *display,
-+ XPContext print_context,
-+ unsigned long event_mask
-+);
-+
-+extern unsigned long XpInputSelected (
-+ Display *display,
-+ XPContext print_context,
-+ unsigned long *all_events_mask
-+);
-+
-+extern Bool XpSetImageResolution (
-+ Display *display,
-+ XPContext print_context,
-+ int image_res,
-+ int *prev_res
-+);
-+
-+extern int XpGetImageResolution (
-+ Display *display,
-+ XPContext print_context
-+);
-+
-+extern char *XpGetAttributes (
-+ Display *display,
-+ XPContext print_context,
-+ XPAttributes type
-+);
-+
-+extern void XpSetAttributes (
-+ Display *display,
-+ XPContext print_context,
-+ XPAttributes type,
-+ char *pool,
-+ XPAttrReplacement replacement_rule
-+);
-+
-+extern char *XpGetOneAttribute (
-+ Display *display,
-+ XPContext print_context,
-+ XPAttributes type,
-+ char *attribute_name
-+);
-+
-+extern XPPrinterList XpGetPrinterList (
-+ Display *display,
-+ char *printer_name,
-+ int *list_count /* return value */
-+);
-+
-+extern void XpFreePrinterList (
-+ XPPrinterList printer_list
-+);
-+
-+extern void XpRehashPrinterList (
-+ Display *display
-+);
-+
-+extern Status XpQueryVersion (
-+ Display *display,
-+ short *major_version, /* return value */
-+ short *minor_version /* return value */
-+);
-+
-+extern Bool XpQueryExtension (
-+ Display *display,
-+ int *event_base_return, /* return value */
-+ int *error_base_return /* return value */
-+);
-+
-+extern Screen **XpQueryScreens (
-+ Display *display,
-+ int *list_count /* return value */
-+);
-+
-+extern Status XpGetPdmStartParams (
-+ Display *print_display,
-+ Window print_window,
-+ XPContext print_context,
-+ Display *video_display,
-+ Window video_window,
-+ Display **selection_display, /* return value */
-+ Atom *selection, /* return value */
-+ Atom *type, /* return value */
-+ int *format, /* return value */
-+ unsigned char **data, /* return value */
-+ int *nelements /* return value */
-+);
-+
-+extern Status XpGetAuthParams (
-+ Display *print_display,
-+ Display *video_display,
-+ Display **selection_display, /* return value */
-+ Atom *selection, /* return value */
-+ Atom *target /* return value */
-+);
-+
-+extern Status XpSendAuth (
-+ Display *display,
-+ Window window
-+);
-+
-+extern Status XpSendOneTicket (
-+ Display *display,
-+ Window window,
-+ Xauth *ticket,
-+ Bool more
-+);
-+
-+extern void XpSetLocaleHinter (
-+ XPHinterProc hinter_proc,
-+ char *hinter_desc
-+);
-+
-+extern char *XpGetLocaleHinter (
-+ XPHinterProc *hinter_proc
-+);
-+
-+extern char *XpGetLocaleNetString(void);
-+
-+extern char *XpNotifyPdm (
-+ Display *print_display,
-+ Window print_window,
-+ XPContext print_context,
-+ Display *video_display,
-+ Window video_window,
-+ Bool auth_flag
-+);
-+
-+#endif /* _XP_PRINT_SERVER_ */
-+
-+_XFUNCPROTOEND
-+
-+#endif /* _XpPrint_H_ */
-diff -up libXp-1.0.3/include/X11/extensions/Printstr.h.jx libXp-1.0.3/include/X11/extensions/Printstr.h
---- libXp-1.0.3/include/X11/extensions/Printstr.h.jx 2018-07-05 12:11:12.282385427 -0400
-+++ libXp-1.0.3/include/X11/extensions/Printstr.h 2018-07-05 12:11:12.282385427 -0400
-@@ -0,0 +1,783 @@
-+/* $Xorg: Printstr.h,v 1.3 2000/08/18 04:05:44 coskrey Exp $ */
-+/******************************************************************************
-+ ******************************************************************************
-+ **
-+ ** File: Printstr.h
-+ **
-+ ** Description: Definitions needed by the server and library, but
-+ ** not clients.
-+ **
-+ ** Print.h for server, library and clients.
-+ **
-+ ******************************************************************************
-+ **
-+ ** (c) Copyright 1996 Hewlett-Packard Company
-+ ** (c) Copyright 1996 International Business Machines Corp.
-+ ** (c) Copyright 1996 Sun Microsystems, Inc.
-+ ** (c) Copyright 1996 Novell, Inc.
-+ ** (c) Copyright 1996 Digital Equipment Corp.
-+ ** (c) Copyright 1996 Fujitsu Limited
-+ ** (c) Copyright 1996 Hitachi, Ltd.
-+ **
-+ ** Permission is hereby granted, free of charge, to any person obtaining a copy
-+ ** of this software and associated documentation files (the "Software"), to deal
-+ ** in the Software without restriction, including without limitation the rights
-+ ** to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-+ ** copies of the Software, and to permit persons to whom the Software is
-+ ** furnished to do so, subject to the following conditions:
-+ **
-+ ** The above copyright notice and this permission notice shall be included in
-+ ** 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
-+ ** COPYRIGHT HOLDERS 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.
-+ **
-+ ** Except as contained in this notice, the names of the copyright holders shall
-+ ** not be used in advertising or otherwise to promote the sale, use or other
-+ ** dealings in this Software without prior written authorization from said
-+ ** copyright holders.
-+ **
-+ ******************************************************************************
-+ *****************************************************************************/
-+/* $XFree86: xc/include/extensions/Printstr.h,v 1.5 2001/08/01 00:44:35 tsi Exp $ */
-+
-+
-+#ifndef _XpPrintstr_H_
-+#define _XpPrintstr_H_
-+
-+/*
-+ * NEED_EVENTS and NEED_REPLIES are hacks to limit the linker symbol-table
-+ * size. When function prototypes are needed from Print.h, this sets up
-+ * a cascading dependency on Printstr.h and eventually Xproto.h to provide
-+ * the event and reply struct definitions.
-+ */
-+#ifndef NEED_EVENTS
-+#define NEED_EVENTS
-+#endif /* NEED_EVENTS */
-+
-+#define NEED_REPLIES
-+
-+#include <X11/Xproto.h>
-+#ifndef _XP_PRINT_SERVER_
-+#include <X11/Xlib.h>
-+#endif /* _XP_PRINT_SERVER_ */
-+
-+/*
-+ * Pull in other definitions. Print.h will hide some things if we're
-+ * doing server side work.
-+ */
-+#include <X11/extensions/Print.h>
-+
-+#include <X11/Xfuncproto.h>
-+
-+_XFUNCPROTOBEGIN
-+
-+/******************************************************************************
-+ *
-+ * Protocol requests constants and alignment values
-+ *
-+ * Note: Xlib macro's expect X_ABC where ABC is the name of the
-+ * protocol request.
-+ */
-+#define X_PrintQueryVersion 0
-+#define X_PrintGetPrinterList 1
-+#define X_PrintCreateContext 2
-+#define X_PrintSetContext 3
-+#define X_PrintGetContext 4
-+#define X_PrintDestroyContext 5
-+#define X_PrintGetContextScreen 6
-+#define X_PrintStartJob 7
-+#define X_PrintEndJob 8
-+#define X_PrintStartDoc 9
-+#define X_PrintEndDoc 10
-+#define X_PrintPutDocumentData 11
-+#define X_PrintGetDocumentData 12
-+#define X_PrintStartPage 13
-+#define X_PrintEndPage 14
-+#define X_PrintSelectInput 15
-+#define X_PrintInputSelected 16
-+#define X_PrintGetAttributes 17
-+#define X_PrintSetAttributes 18
-+#define X_PrintGetOneAttribute 19
-+#define X_PrintRehashPrinterList 20
-+#define X_PrintGetPageDimensions 21
-+#define X_PrintQueryScreens 22
-+#define X_PrintSetImageResolution 23
-+#define X_PrintGetImageResolution 24
-+
-+/********************************************************************
-+ *
-+ * Protocol data types
-+ */
-+#define PCONTEXT CARD32
-+#define WINDOW CARD32
-+#define DRAWABLE CARD32
-+#define BITMASK CARD32
-+
-+/******************************************************************************
-+ *
-+ * Event wire struct definitions
-+ *
-+ * Note: Xlib macro's expect xABC struct names and sz_xABC size
-+ * constants where ABC is the name of the protocol request.
-+ */
-+
-+
-+/*********************************************************************
-+ *
-+ * Events.
-+ *
-+ * See Print.h for the protocol "type" values.
-+ */
-+typedef struct _xPrintPrintEvent {
-+ BYTE type; /* XPPrintNotify + extEntry->eventBase */
-+ BYTE detail; /* XPStartJobNotify, XPEndJobNotify,
-+ XPStartDocNotify, XPEndDocNotify,
-+ XPStartPageNotify, XPEndPageNotify */
-+ CARD16 sequenceNumber B16;
-+ PCONTEXT printContext B32; /* print context */
-+ BOOL cancel; /* canceled flag */
-+ CARD8 pad1; /* rest is unused */
-+ CARD16 pad2 B16;
-+ CARD32 pad3 B32;
-+ CARD32 pad4 B32;
-+ CARD32 pad5 B32;
-+ CARD32 pad6 B32;
-+ CARD32 pad7 B32;
-+} xPrintPrintEvent;
-+#define sz_xPrintPrintEvent 32;
-+
-+typedef struct _xPrintAttributeEvent {
-+ BYTE type; /* XPAttributeNotify + extEntry->eventBase */
-+ BYTE detail; /* XPJobAttr, XPDocAttr, XPPageAttr,
-+ XPPrinterAttr, XPSpoolerAttr,
-+ XPMediumAttr, XPServerAttr */
-+ CARD16 sequenceNumber B16;
-+ PCONTEXT printContext B32; /* print context */
-+ CARD32 pad1 B32;
-+ CARD32 pad2 B32;
-+ CARD32 pad3 B32;
-+ CARD32 pad4 B32;
-+ CARD32 pad5 B32;
-+ CARD32 pad6 B32;
-+} xPrintAttributeEvent;
-+#define sz_xPrintAttributeEvent 32;
-+
-+
-+/*********************************************************************
-+ *
-+ * Requests
-+ */
-+typedef struct _PrintQueryVersion {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintQueryVersion */
-+ CARD16 length B16;
-+} xPrintQueryVersionReq;
-+#define sz_xPrintQueryVersionReq 4
-+
-+typedef struct {
-+ BYTE type; /* X_Reply */
-+ CARD8 unused; /* not used */
-+ CARD16 sequenceNumber B16;
-+ CARD32 length B32;
-+ CARD16 majorVersion B16; /* major version of Xp protocol */
-+ CARD16 minorVersion B16; /* minor version of Xp protocol */
-+ CARD32 pad1 B32;
-+ CARD32 pad2 B32;
-+ CARD32 pad3 B32;
-+ CARD32 pad4 B32;
-+ CARD32 pad5 B32;
-+} xPrintQueryVersionReply;
-+#define sz_xPrintQueryVersionReply 32
-+
-+
-+typedef struct _PrintGetPrinterList {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintGetPrinterList */
-+ CARD16 length B16;
-+ CARD32 printerNameLen B32; /* length of printer name */
-+ CARD32 localeLen B32; /* length of locale string */
-+
-+ /* variable portion *****************************************
-+ STRING8 printerName; * printer name *
-+ BYTE pad(printerNameLen) * unused *
-+ STRING8 locale; * locale *
-+ BYTE pad(localeLen) * unused *
-+ ************************************************************/
-+} xPrintGetPrinterListReq;
-+#define sz_xPrintGetPrinterListReq 12
-+
-+typedef struct {
-+ BYTE type; /* X_Reply */
-+ CARD8 unused; /* not used */
-+ CARD16 sequenceNumber B16;
-+ CARD32 length B32;
-+ CARD32 listCount B32; /* of PRINTER recs below */
-+ CARD32 pad1 B32;
-+ CARD32 pad2 B32;
-+ CARD32 pad3 B32;
-+ CARD32 pad4 B32;
-+ CARD32 pad5 B32;
-+
-+ /* variable portion *****************************************
-+ CARD32 nameLen B32; * length of name in bytes *
-+ STRING8 name; * name *
-+ BYTE pad(nameLen) * unused *
-+
-+ CARD32 descLen B32; * length of desc in bytes *
-+ STRING8 desc; * localized description *
-+ BYTE pad(descLen) * unused *
-+ ************************************************************/
-+} xPrintGetPrinterListReply;
-+#define sz_xPrintGetPrinterListReply 32
-+
-+
-+typedef struct _PrintRehashPrinterList {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintRehashPrinterList */
-+ CARD16 length B16;
-+} xPrintRehashPrinterListReq;
-+#define sz_xPrintRehashPrinterListReq 4
-+
-+
-+typedef struct _PrintCreateContext {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintInitSetContext */
-+ CARD16 length B16;
-+ CARD32 contextID B32; /* ID for context */
-+ CARD32 printerNameLen B32; /* length of printerName in bytes */
-+ CARD32 localeLen B32; /* length of locale in bytes */
-+
-+ /* variable portion *****************************************
-+ STRING8 printerName * printer name *
-+ BYTE pad(printerNameLen) * unused *
-+ STRING8 locale * locale *
-+ BYTE pad(locale) * unused *
-+ ************************************************************/
-+} xPrintCreateContextReq;
-+#define sz_xPrintCreateContextReq 16
-+
-+
-+typedef struct _PrintSetContext {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintSetContext */
-+ CARD16 length B16;
-+ PCONTEXT printContext B32; /* print context */
-+} xPrintSetContextReq;
-+#define sz_xPrintSetContextReq 8
-+
-+
-+typedef struct _PrintGetContext {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintGetContext */
-+ CARD16 length B16;
-+} xPrintGetContextReq;
-+#define sz_xPrintGetContextReq 4
-+
-+typedef struct {
-+ BYTE type; /* X_Reply */
-+ CARD8 unused; /* not used */
-+ CARD16 sequenceNumber B16;
-+ CARD32 length B32;
-+ PCONTEXT printContext B32; /* print context */
-+ CARD32 pad1 B32;
-+ CARD32 pad2 B32;
-+ CARD32 pad3 B32;
-+ CARD32 pad4 B32;
-+ CARD32 pad5 B32;
-+} xPrintGetContextReply;
-+#define sz_xPrintGetContextReply 32
-+
-+
-+typedef struct _PrintDestroyContext {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintDestroyContext */
-+ CARD16 length B16;
-+ PCONTEXT printContext B32; /* print context */
-+} xPrintDestroyContextReq;
-+#define sz_xPrintDestroyContextReq 8
-+
-+
-+typedef struct _PrintGetContextScreen {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintGetContextScreen */
-+ CARD16 length B16;
-+ PCONTEXT printContext B32; /* print context */
-+} xPrintGetContextScreenReq;
-+#define sz_xPrintGetContextScreenReq 8
-+
-+typedef struct {
-+ BYTE type; /* X_Reply */
-+ CARD8 unused; /* not used */
-+ CARD16 sequenceNumber B16;
-+ CARD32 length B32;
-+ WINDOW rootWindow; /* screenPtr represented as rootWin */
-+ CARD32 pad1 B32;
-+ CARD32 pad2 B32;
-+ CARD32 pad3 B32;
-+ CARD32 pad4 B32;
-+ CARD32 pad5 B32;
-+} xPrintGetContextScreenReply;
-+#define sz_xPrintGetContextScreenReply 32
-+
-+
-+typedef struct _PrintStartJob {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintStartJob */
-+ CARD16 length B16;
-+ CARD8 saveData; /* save data boolean */
-+ CARD8 pad1;
-+ CARD16 pad2 B16;
-+} xPrintStartJobReq;
-+#define sz_xPrintStartJobReq 8
-+
-+typedef struct _PrintEndJob {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintEndJob */
-+ CARD16 length B16;
-+ BOOL cancel; /* cancel boolean */
-+ CARD8 pad1;
-+ CARD16 pad2 B16;
-+} xPrintEndJobReq;
-+#define sz_xPrintEndJobReq 8
-+
-+
-+typedef struct _PrintStartDoc {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintStartDoc */
-+ CARD16 length B16;
-+ CARD8 type; /* type for document */
-+ CARD8 pad1;
-+ CARD16 pad2 B16;
-+} xPrintStartDocReq;
-+#define sz_xPrintStartDocReq 8
-+
-+typedef struct _PrintEndDoc {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintEndDoc */
-+ CARD16 length B16;
-+ BOOL cancel; /* cancel boolean */
-+ CARD8 pad1;
-+ CARD16 pad2 B16;
-+} xPrintEndDocReq;
-+#define sz_xPrintEndDocReq 8
-+
-+
-+typedef struct _PrintPutDocumentData {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintPutDocumentData */
-+ CARD16 length B16;
-+ DRAWABLE drawable B32; /* target drawable */
-+ CARD32 len_data B32; /* big len in bytes */
-+ CARD16 len_fmt; /* len in bytes */
-+ CARD16 len_options; /* len in bytes */
-+
-+ /* variable portion *****************************************
-+ LISTofBYTE data; * data *
-+ BYTE pad(len_data) * unused *
-+ STRING8 doc_fmt; * ISO compliant desc of data type *
-+ BYTE pad(len_fmt) * unused *
-+ STRING8 options; * additional device-dependent desc *
-+ BYTE pad(len_options) * unused *
-+ ************************************************************/
-+} xPrintPutDocumentDataReq;
-+#define sz_xPrintPutDocumentDataReq 16
-+
-+
-+typedef struct _PrintGetDocumentData {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintGetDocumentData */
-+ CARD16 length B16;
-+ PCONTEXT printContext B32; /* print context */
-+ CARD32 maxBufferSize B32; /* maximum buffer size requested */
-+} xPrintGetDocumentDataReq;
-+#define sz_xPrintGetDocumentDataReq 12
-+
-+typedef struct {
-+ BYTE type; /* X_Reply */
-+ CARD8 unused; /* not used */
-+ CARD16 sequenceNumber B16;
-+ CARD32 length B32;
-+ CARD32 statusCode B32; /* status code for reply */
-+ CARD32 finishedFlag B32; /* is this the last reply */
-+ CARD32 dataLen B32; /* data length */
-+ CARD32 pad1 B32;
-+ CARD32 pad2 B32;
-+ CARD32 pad3 B32;
-+
-+ /* variable portion *****************************************
-+ LISTofBYTE data; * data *
-+ BYTE pad(count) * unused *
-+ ************************************************************/
-+} xPrintGetDocumentDataReply;
-+#define sz_xPrintGetDocumentDataReply 32
-+
-+
-+typedef struct _PrintStartPage {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintStartPage */
-+ CARD16 length B16;
-+ WINDOW window B32; /* window */
-+} xPrintStartPageReq;
-+#define sz_xPrintStartPageReq 8
-+
-+typedef struct _PrintEndPage {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintEndPage */
-+ CARD16 length B16;
-+ BOOL cancel; /* cancel boolean */
-+ CARD8 pad1;
-+ CARD16 pad2 B16;
-+} xPrintEndPageReq;
-+#define sz_xPrintEndPageReq 8
-+
-+
-+typedef struct _PrintSelectInput {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintSelectInput */
-+ CARD16 length B16;
-+ PCONTEXT printContext B32; /* print context */
-+ BITMASK eventMask B32;
-+} xPrintSelectInputReq;
-+#define sz_xPrintSelectInputReq 12
-+
-+
-+typedef struct _PrintInputSelected {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintInputSelected */
-+ CARD16 length B16;
-+ PCONTEXT printContext B32; /* print context */
-+} xPrintInputSelectedReq;
-+#define sz_xPrintInputSelectedReq 8
-+
-+typedef struct {
-+ BYTE type; /* X_Reply */
-+ CARD8 unused; /* not used */
-+ CARD16 sequenceNumber B16;
-+ CARD32 length B32;
-+ BITMASK eventMask B32; /* your event mask */
-+ BITMASK allEventsMask B32; /* all event mask */
-+ CARD32 pad1 B32;
-+ CARD32 pad2 B32;
-+ CARD32 pad3 B32;
-+ CARD32 pad4 B32;
-+} xPrintInputSelectedReply;
-+#define sz_xPrintInputSelectedReply 32
-+
-+typedef struct _PrintGetAttributes {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintGetAttributes */
-+ CARD16 length B16;
-+ PCONTEXT printContext B32; /* print context */
-+ CARD8 type; /* type */
-+ CARD8 pad1; /* unused */
-+ CARD16 pad2 B16; /* unused */
-+} xPrintGetAttributesReq;
-+#define sz_xPrintGetAttributesReq 12
-+
-+typedef struct {
-+ BYTE type; /* X_Reply */
-+ CARD8 unused; /* not used */
-+ CARD16 sequenceNumber B16;
-+ CARD32 length B32;
-+ CARD32 stringLen B32; /* length of xrm db string */
-+ CARD32 pad1 B32;
-+ CARD32 pad2 B32;
-+ CARD32 pad3 B32;
-+ CARD32 pad4 B32;
-+ CARD32 pad5 B32;
-+
-+ /* variable portion *****************************************
-+ STRING8 string; * xrm db as a string *
-+ BYTE pad(stringLen) * unused *
-+ ************************************************************/
-+} xPrintGetAttributesReply;
-+#define sz_xPrintGetAttributesReply 32
-+
-+
-+typedef struct _PrintSetAttributes {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintSetAttributes */
-+ CARD16 length B16;
-+ PCONTEXT printContext B32; /* print context */
-+ CARD32 stringLen B32; /* length of xrm db string */
-+ CARD8 type; /* type */
-+ CARD8 rule; /* replacement rule */
-+ CARD16 pad1 B16; /* unused */
-+
-+ /* variable portion *****************************************
-+ STRING8 string; * xrm db as a string *
-+ BYTE pad(stringLen) * unused *
-+ ************************************************************/
-+} xPrintSetAttributesReq;
-+#define sz_xPrintSetAttributesReq 16
-+
-+
-+typedef struct _PrintGetOneAttribute {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintGetOneAttribute */
-+ CARD16 length B16;
-+ PCONTEXT printContext B32; /* print context */
-+ CARD32 nameLen; /* length of name string */
-+ CARD8 type; /* type */
-+ CARD8 pad1; /* unused */
-+ CARD16 pad2 B16; /* unused */
-+
-+ /* variable portion *****************************************
-+ STRING8 name; * name as a string *
-+ BYTE pad(name) * unused *
-+ ************************************************************/
-+} xPrintGetOneAttributeReq;
-+#define sz_xPrintGetOneAttributeReq 16
-+
-+typedef struct {
-+ BYTE type; /* X_Reply */
-+ CARD8 unused; /* not used */
-+ CARD16 sequenceNumber B16;
-+ CARD32 length B32;
-+ CARD32 valueLen B32; /* length of value string */
-+ CARD32 pad1 B32;
-+ CARD32 pad2 B32;
-+ CARD32 pad3 B32;
-+ CARD32 pad4 B32;
-+ CARD32 pad5 B32;
-+
-+ /* variable portion *****************************************
-+ STRING8 value; * value as a string *
-+ BYTE pad(value) * unused *
-+ ************************************************************/
-+} xPrintGetOneAttributeReply;
-+#define sz_xPrintGetOneAttributeReply 32
-+
-+
-+typedef struct _PrintGetPageDimensions {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintGetPageDimensions */
-+ CARD16 length B16;
-+ PCONTEXT printContext B32; /* print context */
-+} xPrintGetPageDimensionsReq;
-+#define sz_xPrintGetPageDimensionsReq 8
-+
-+typedef struct {
-+ BYTE type; /* X_Reply */
-+ CARD8 unused; /* not used */
-+ CARD16 sequenceNumber B16;
-+ CARD32 length B32;
-+ CARD16 width; /* total pixel width */
-+ CARD16 height; /* total pixel height */
-+ CARD16 rx; /* reproducable x pixel offset */
-+ CARD16 ry; /* reproducable y pixel offset */
-+ CARD16 rwidth; /* reproducable x pixel width */
-+ CARD16 rheight; /* reproducable y pixel width */
-+ CARD32 pad1 B32;
-+ CARD32 pad2 B32;
-+ CARD32 pad3 B32;
-+} xPrintGetPageDimensionsReply;
-+#define sz_xPrintGetPageDimensionsReply 32
-+
-+
-+typedef struct _PrintQueryScreens {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintQueryScreens */
-+ CARD16 length B16;
-+} xPrintQueryScreensReq;
-+#define sz_xPrintQueryScreensReq 4
-+
-+typedef struct {
-+ BYTE type; /* X_Reply */
-+ CARD8 unused; /* not used */
-+ CARD16 sequenceNumber B16;
-+ CARD32 length B32;
-+ CARD32 listCount; /* number of screens following */
-+ CARD32 pad1 B32;
-+ CARD32 pad2 B32;
-+ CARD32 pad3 B32;
-+ CARD32 pad4 B32;
-+ CARD32 pad5 B32;
-+
-+ /* variable portion *****************************************
-+ WINDOW rootWindow; * root window of screen *
-+ ************************************************************/
-+} xPrintQueryScreensReply;
-+#define sz_xPrintQueryScreensReply 32
-+
-+typedef struct _PrintSetImageResolution {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintSetImageResolution */
-+ CARD16 length B16;
-+ PCONTEXT printContext B32; /* print context */
-+ CARD16 imageRes B16; /* image resolution */
-+ CARD16 pad1 B16;
-+} xPrintSetImageResolutionReq;
-+#define sz_xPrintSetImageResolutionReq 12
-+
-+typedef struct {
-+ BYTE type; /* X_Reply */
-+ BOOL status; /* accepted or not */
-+ CARD16 sequenceNumber B16;
-+ CARD32 length B32;
-+ CARD16 prevRes B16; /* previous resolution */
-+ CARD16 pad1 B32;
-+ CARD32 pad2 B32;
-+ CARD32 pad3 B32;
-+ CARD32 pad4 B32;
-+ CARD32 pad5 B32;
-+ CARD32 pad6 B32;
-+} xPrintSetImageResolutionReply;
-+#define sz_xPrintSetImageResolutionReply 32
-+
-+typedef struct _PrintGetImageResolution {
-+ CARD8 reqType; /* always PrintReqCode */
-+ CARD8 printReqType; /* always X_PrintGetImageResolution */
-+ CARD16 length B16;
-+ PCONTEXT printContext B32; /* print context */
-+} xPrintGetImageResolutionReq;
-+#define sz_xPrintGetImageResolutionReq 8
-+
-+typedef struct {
-+ BYTE type; /* X_Reply */
-+ CARD8 unused;
-+ CARD16 sequenceNumber B16;
-+ CARD32 length B32;
-+ CARD16 imageRes B16; /* image resolution */
-+ CARD16 pad1 B32;
-+ CARD32 pad2 B32;
-+ CARD32 pad3 B32;
-+ CARD32 pad4 B32;
-+ CARD32 pad5 B32;
-+ CARD32 pad6 B32;
-+} xPrintGetImageResolutionReply;
-+#define sz_xPrintGetImageResolutionReply 32
-+
-+#ifndef _XP_PRINT_SERVER_
-+/***********************************************************************
-+ *
-+ * Library-only definitions.
-+ */
-+extern XPHinterProc _xp_hinter_proc;
-+extern char *_xp_hinter_desc;
-+extern int _xp_hinter_init;
-+
-+#else /* _XP_PRINT_SERVER_ */
-+
-+/***********************************************************************
-+ *
-+ * Server-only definitions shared between the extension and DDX layers.
-+ *
-+ */
-+
-+/*
-+ * Internal return code used to indicate that the requesting
-+ * client has been suspended.
-+ */
-+#define Suspended 84
-+
-+struct _XpContext;
-+
-+extern void XpRegisterPrinterScreen(
-+ ScreenPtr pScreen,
-+ int (*CreateContext)(struct _XpContext *));
-+
-+typedef struct _xpprintFuncs {
-+ int (*StartJob)(
-+ struct _XpContext * /* pContext */,
-+ Bool /* sendClientData */,
-+ ClientPtr /* client */);
-+ int (*EndJob)(struct _XpContext *, int);
-+ int (*StartDoc)(
-+ struct _XpContext * /* pContext */,
-+ XPDocumentType /* type */);
-+ int (*EndDoc)(struct _XpContext *, int);
-+ int (*StartPage)(
-+ struct _XpContext * /* pContext */,
-+ WindowPtr /* pWin */);
-+ int (*EndPage)(
-+ struct _XpContext * /* pContext */,
-+ WindowPtr /* pWin */);
-+ int (*PutDocumentData)(
-+ struct _XpContext * /* pContext */,
-+ DrawablePtr /* pDraw */,
-+ char * /* pData */,
-+ int /* len_data */,
-+ char * /* pDoc_fmt */,
-+ int /* len_fmt */,
-+ char * /* pOptions */,
-+ int /* len_options */,
-+ ClientPtr /* client */);
-+ int (*GetDocumentData)(
-+ struct _XpContext * /* pContext */,
-+ ClientPtr /* client */,
-+ int /* maxBufferSize */);
-+ int (*DestroyContext)(
-+ struct _XpContext *); /* pContext */
-+ char *(*GetAttributes)(
-+ struct _XpContext *,
-+ XPAttributes /* pool */);
-+ char *(*GetOneAttribute)(
-+ struct _XpContext * /* pContext */,
-+ XPAttributes /* pool */,
-+ char * /* attrs */);
-+ int (*SetAttributes)(
-+ struct _XpContext * /* pContext */,
-+ XPAttributes /* pool */,
-+ char * /* attrs */);
-+ int (*AugmentAttributes)(
-+ struct _XpContext * /* pContext */,
-+ XPAttributes /* pool */,
-+ char * /* attrs */);
-+ int (*GetMediumDimensions)(
-+ struct _XpContext * /* pPrintContext */,
-+ CARD16 * /* pWidth */,
-+ CARD16 * /* pHeight */);
-+ int (*GetReproducibleArea)(
-+ struct _XpContext * /* pPrintContext */,
-+ xRectangle * /* pRect */);
-+ int (*SetImageResolution)(
-+ struct _XpContext * /* pPrintContext */,
-+ int /* imageRes */,
-+ Bool * /* pStatus */);
-+} XpDriverFuncs, *XpDriverFuncsPtr;
-+
-+/*
-+ * Each print context is represented by one of the following structs
-+ * associated with a resource ID of type RTcontext . A pointer to
-+ * the context is placed in the Xp extension's devPrivates
-+ * element in each client * which establishes a context via
-+ * either initContext or setContext.
-+ * The context pointer is also placed in the struct indicated by the
-+ * RTpage resource associated with each StartPage'd window.
-+ */
-+typedef struct _XpContext {
-+ XID contextID;
-+ char *printerName;
-+ int screenNum; /* screen containing the printer */
-+ struct _XpClient *clientHead; /* list of clients */
-+ CARD32 state;
-+ VisualID pageWin;
-+ DevUnion *devPrivates;
-+ XpDriverFuncs funcs;
-+ ClientPtr clientSlept;
-+ int imageRes;
-+} XpContextRec, *XpContextPtr;
-+
-+#include <X11/fonts/fontstruct.h> /* FontResolutionPtr */
-+
-+extern Bool XpAllocateContextPrivate(int, unsigned);
-+extern FontResolutionPtr XpGetClientResolutions(ClientPtr, int *);
-+extern XpContextPtr XpContextOfClient(ClientPtr);
-+extern XpContextPtr XpGetPrintContext(ClientPtr);
-+extern int XpAllocateContextPrivateIndex(void);
-+extern int XpRehashPrinterList(void);
-+extern void XpSetFontResFunc(ClientPtr);
-+extern void XpUnsetFontResFunc(ClientPtr);
-+extern void XpRegisterInitFunc(ScreenPtr, char *, int (*)(struct _XpContext *));
-+
-+#endif /* _XP_PRINT_SERVER_ */
-+
-+_XFUNCPROTOEND
-+
-+#endif /* _XpPrintstr_H_ */
-diff -up libXp-1.0.3/Makefile.am.jx libXp-1.0.3/Makefile.am
---- libXp-1.0.3/Makefile.am.jx 2015-02-21 17:02:53.000000000 -0500
-+++ libXp-1.0.3/Makefile.am 2018-07-05 12:11:12.279385380 -0400
-@@ -23,10 +23,15 @@ AM_CFLAGS = $(XPRINT_CFLAGS)
-
- SUBDIRS = src man
-
-+printdir = $(includedir)/X11/extensions
-+print_HEADERS = \
-+ $(top_srcdir)/include/X11/extensions/Print.h \
-+ $(top_srcdir)/include/X11/extensions/Printstr.h
-+
- pkgconfigdir = $(libdir)/pkgconfig
--pkgconfig_DATA = xp.pc
-+pkgconfig_DATA = xp.pc printproto.pc
-
--EXTRA_DIST = xp.pc.in ChangeLog
-+EXTRA_DIST = xp.pc.in printproto.pc.in ChangeLog
- MAINTAINERCLEANFILES = ChangeLog
-
- .PHONY: ChangeLog
-diff -up libXp-1.0.3/printproto.pc.in.jx libXp-1.0.3/printproto.pc.in
---- libXp-1.0.3/printproto.pc.in.jx 2018-07-05 12:11:12.283385443 -0400
-+++ libXp-1.0.3/printproto.pc.in 2018-07-05 12:11:12.282385427 -0400
-@@ -0,0 +1,10 @@
-+prefix=@prefix@
-+exec_prefix=@exec_prefix@
-+libdir=@libdir@
-+includedir=@includedir@
-+
-+Name: PrintProto
-+Description: Print extension headers
-+Version: @PACKAGE_VERSION@
-+Requires: xau
-+Cflags: -I${includedir}
-diff -up libXp-1.0.3/src/Makefile.am.jx libXp-1.0.3/src/Makefile.am
---- libXp-1.0.3/src/Makefile.am.jx 2015-02-21 17:02:53.000000000 -0500
-+++ libXp-1.0.3/src/Makefile.am 2018-07-05 12:11:12.283385443 -0400
-@@ -24,7 +24,7 @@ libXp_la_LIBADD = $(XPRINT_LIBS)
-
- AM_CFLAGS = $(CWARNFLAGS) $(XPRINT_CFLAGS) $(MALLOC_ZERO_CFLAGS)
-
--AM_CPPFLAGS = -I$(top_srcdir)/include/X11/extensions
-+AM_CPPFLAGS = -I$(top_srcdir)/include/
-
- #
- # Library version number. This must match old versions on
-
Copied: libxp/repos/extra-x86_64/add-proto-files.patch (from rev 446342, libxp/trunk/add-proto-files.patch)
===================================================================
--- add-proto-files.patch (rev 0)
+++ add-proto-files.patch 2022-05-21 20:27:09 UTC (rev 446343)
@@ -0,0 +1,1408 @@
+diff -up libXp-1.0.3/configure.ac.jx libXp-1.0.3/configure.ac
+--- libXp-1.0.3/configure.ac.jx 2015-02-21 17:04:36.000000000 -0500
++++ libXp-1.0.3/configure.ac 2018-07-05 12:11:30.955684590 -0400
+@@ -42,11 +42,12 @@ XORG_DEFAULT_OPTIONS
+ AC_PROG_LIBTOOL
+
+ # Check for X and print proto
+-PKG_CHECK_MODULES(XPRINT, [x11 >= 1.6] xext xextproto xau printproto)
++PKG_CHECK_MODULES(XPRINT, [x11 >= 1.6] xext xextproto xau)
+
+ AC_CONFIG_FILES([Makefile
+ src/Makefile
+ man/Makefile
++ printproto.pc
+ xp.pc])
+ AC_OUTPUT
+
+diff -up libXp-1.0.3/include/X11/extensions/Print.h.jx libXp-1.0.3/include/X11/extensions/Print.h
+--- libXp-1.0.3/include/X11/extensions/Print.h.jx 2018-07-05 12:11:12.281385412 -0400
++++ libXp-1.0.3/include/X11/extensions/Print.h 2018-07-05 12:11:12.281385412 -0400
+@@ -0,0 +1,552 @@
++/* $Xorg: Print.h,v 1.3 2000/08/18 04:05:44 coskrey Exp $ */
++/******************************************************************************
++ ******************************************************************************
++ **
++ ** File: Print.h
++ **
++ ** Description: Definitions needed by the server, library, and
++ ** clients. Subportion restricted to library and
++ ** clients.
++ **
++ ** Server, Library, Client portion has:
++ ** o All sz_* defines
++ ** o Revision and Name defines
++ ** o Common defines and constants (e.g. Keywords, Masks)
++ ** o Extension version structure
++ **
++ ** Library and client subportion has:
++ ** o Convience Marcos
++ ** o Client side data structures
++ ** o Client side event structures (non wire)
++ ** o Library function prototypes
++ ** o some private stuff denoted with _whatever
++ **
++ ** Printstr.h for server and library, but NOT clients.
++ **
++ ******************************************************************************
++ **
++ ** (c) Copyright 1996 Hewlett-Packard Company
++ ** (c) Copyright 1996 International Business Machines Corp.
++ ** (c) Copyright 1996 Sun Microsystems, Inc.
++ ** (c) Copyright 1996 Novell, Inc.
++ ** (c) Copyright 1996 Digital Equipment Corp.
++ ** (c) Copyright 1996 Fujitsu Limited
++ ** (c) Copyright 1996 Hitachi, Ltd.
++ **
++ ** Permission is hereby granted, free of charge, to any person obtaining a copy
++ ** of this software and associated documentation files (the "Software"), to deal
++ ** in the Software without restriction, including without limitation the rights
++ ** to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
++ ** copies of the Software, and to permit persons to whom the Software is
++ ** furnished to do so, subject to the following conditions:
++ **
++ ** The above copyright notice and this permission notice shall be included in
++ ** 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
++ ** COPYRIGHT HOLDERS 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.
++ **
++ ** Except as contained in this notice, the names of the copyright holders shall
++ ** not be used in advertising or otherwise to promote the sale, use or other
++ ** dealings in this Software without prior written authorization from said
++ ** copyright holders.
++ **
++ ******************************************************************************
++ *****************************************************************************/
++/* $XFree86: xc/include/extensions/Print.h,v 1.4 2000/01/25 18:37:31 dawes Exp $ */
++
++#ifndef _XpPrint_H_
++#define _XpPrint_H_
++
++#ifndef _XP_PRINT_SERVER_
++#include <X11/Xlib.h>
++#include <X11/Xresource.h>
++#include <X11/Xauth.h>
++#endif /* _XP_PRINT_SERVER_ */
++
++#include <X11/Xfuncproto.h>
++
++_XFUNCPROTOBEGIN
++
++/******************************************************************************
++ *
++ * Definitions used by the server, library and client.
++ */
++
++/********************************************************************
++ *
++ * Naming and versioning information.
++ */
++#define XP_PRINTNAME "XpExtension"
++
++/*
++ * Add a define below for each major extension release.
++ */
++#define XP_DONT_CHECK 0
++#define XP_INITIAL_RELEASE 1
++
++/*
++ * For each single entry above, create one major/minor pair.
++ */
++#define XP_PROTO_MAJOR 1
++#define XP_PROTO_MINOR 0
++
++/*
++ * Identify current version.
++ */
++#define XP_MAJOR_VERSION XP_PROTO_MAJOR
++#define XP_MINOR_VERSION XP_PROTO_MINOR
++
++/*
++ * Misc version defines.
++ */
++#define XP_ABSENT 0 /* Prior to XP Print support */
++#define XP_PRESENT 1 /* With XP Print support */
++
++/********************************************************************
++ *
++ * Xp Print Error codes.
++ */
++#define XP_ERRORS 3 /* number of error types */
++
++#define XPBadContext 0 /* Print Context invalid or missing */
++#define XPBadSequence 1 /* Illegal sequence of XP operations */
++#define XPBadResourceID 2 /* X-resource not valid */
++
++/********************************************************************
++ *
++ * Xp Print Event masks and codes.
++ *
++ */
++#define XP_EVENTS 2 /* number of event types */
++
++#define XPNoEventMask 0 /* not an event - just a null mask */
++#define XPPrintMask (1L<<0)
++#define XPAttributeMask (1L<<1)
++
++#define XPPrintNotify 0 /* contains "detail" - see below */
++#define XPAttributeNotify 1 /* contains "detail" - see below */
++
++#define XPStartJobNotify 0 /* value for "detail" in XPPrintNotify*/
++#define XPEndJobNotify 1
++#define XPStartDocNotify 2
++#define XPEndDocNotify 3
++#define XPStartPageNotify 4
++#define XPEndPageNotify 5
++
++/********************************************************************
++ *
++ * Xp Print Attribute Object codes (subset of ISO DPA 10175). The
++ * Xp Server can get and set any of the values, while the Xp Library
++ * may only be able to set a subset of the attribute objects.
++ *
++ * note: the codes are also used as "detail" for XPAttributeNotify
++ *
++ * note: XPPageAttr is not defined in ISO DPA 10175. It is unique
++ * to Xp, and its attributes are a proper subset of XPDocAttr.
++ */
++typedef unsigned char XPAttributes; /* type of Xp*Attr codes */
++
++#define XP_ATTRIBUTES 5 /* those attrs currently supported */
++
++#define XPJobAttr 1 /* get/set */
++#define XPDocAttr 2 /* get/set */
++#define XPPageAttr 3 /* get/set - subset of XPDocAttr */
++#define XPPrinterAttr 4 /* get only (library) */
++#define XPServerAttr 5 /* get only (library), no
++ context needed */
++
++/*
++ * note: ISO DPA 10175 defines a number of "attribute objects", of
++ * which POSIX 1387.4 and the SI Xp will only support a
++ * subset.
++ */
++#define XPMediumAttr 6 /* DPA-Object Medium */
++#define XPFontAttr 7 /* DPA-Object Font */
++#define XPResAttr 8 /* DPA-Object Resource */
++#define XPTransAttr 9 /* DPA-Object Transfer method */
++#define XPDelAttr 10 /* DPA-Object Delivery method */
++#define XPAuxSPkg 11 /* DPA-Object Auxiliary sheet package */
++#define XPAuxS 12 /* DPA-Object Auxiliary sheet */
++#define XPFinishAttr 13 /* DPA-Object Finishing */
++#define XPOutputAttr 14 /* DPA-Object Output method */
++#define XPImpAttr 15 /* DPA-Object Imposition */
++#define XPSchedAttr 16 /* DPA-Object Scheduler */
++#define XPIntJobAttr 17 /* DPA-Object Initial value job */
++#define XPIntDocAttr 18 /* DPA-Object Initial value document */
++#define XPResConAttr 19 /* DPA-Object Resource context */
++
++
++/*
++ * Replacement rules for XpSetAttributes
++ */
++typedef unsigned char XPAttrReplacement;
++#define XPAttrReplace 1
++#define XPAttrMerge 2
++
++
++/*
++ * Return codes for XpGetDocumentData
++ */
++typedef unsigned char XPGetDocStatus;
++#define XPGetDocFinished 0 /* normal termination */
++#define XPGetDocSecondConsumer 1 /* setup error */
++#define XPGetDocError 2 /* runtime error, see generated error */
++
++
++/*
++ * Save data types for XpStartJob.
++ */
++typedef unsigned char XPSaveData;
++#define XPSpool 1 /* Job data sent to spooler */
++#define XPGetData 2 /* Job data via XpGetDocumentData */
++
++
++/*
++ * Document types for XpStartDoc.
++ */
++typedef unsigned char XPDocumentType;
++#define XPDocNormal 1 /* Doc data handled by Xserver */
++#define XPDocRaw 2 /* Doc data passed through Xserver */
++
++
++/********************************************************************
++ *
++ * Xp Print Property Names
++ */
++
++
++#ifndef _XP_PRINT_SERVER_
++
++/******************************************************************************
++ *
++ * Definitions used by the library and clients only.
++ */
++
++/*******************************************************************
++ *
++ * General API defines and such.
++ */
++
++/*
++ * Print Context for XpInitContext and related calls.
++ */
++typedef XID XPContext;
++
++/*
++ * Struct for XpGetPrinterList.
++ */
++typedef struct {
++ char *name; /* name */
++ char *desc; /* localized description */
++} XPPrinterRec, *XPPrinterList;
++
++/*
++ * Typedefs for XpGetDocumentData
++ */
++typedef void (*XPSaveProc)( Display *display,
++ XPContext context,
++ unsigned char *data,
++ unsigned int data_len,
++ XPointer client_data);
++
++typedef void (*XPFinishProc)( Display *display,
++ XPContext context,
++ XPGetDocStatus status,
++ XPointer client_data);
++
++/*
++ * Typedefs for XpSetLocaleHinter and XpGetLocaleHinter
++ */
++typedef char * (*XPHinterProc)(void);
++
++#if 0
++/*******************************************************************
++ *
++ * Extension version structures.
++ *
++ **** this structure is now defined localy in the one file that uses it
++ **** in order to avoid clashes with its definition in XI.h
++ */
++typedef struct {
++ int present;
++ short major_version;
++ short minor_version;
++} XExtensionVersion;
++#endif
++
++/********************************************************************
++ *
++ * Event structs for clients.
++ *
++ * note: these events are relative to a print context, and
++ * not to a window as in core X.
++ */
++typedef struct {
++ int type; /* base + XPPrintNotify */
++ unsigned long serial; /* # of last request processed by server */
++ Bool send_event; /* true if from a SendEvent request */
++ Display *display; /* Display the event was read from */
++ XPContext context; /* print context where operation was requested */
++ Bool cancel; /* was detailed event canceled */
++ int detail; /* XPStartJobNotify, XPEndJobNotify,
++ XPStartDocNotify, XPEndDocNotify,
++ XPStartPageNotify, XPEndPageNotify */
++} XPPrintEvent;
++
++typedef struct {
++ int type; /* base + XPAttributeNotify */
++ unsigned long serial; /* # of last request processed by server */
++ Bool send_event; /* true if from a SendEvent request */
++ Display *display; /* Display the event was read from */
++ XPContext context; /* print context where operation was requested */
++ int detail; /* XPJobAttr, XPDocAttr, XPPageAttr,
++ XPPrinterAttr, XPSpoolerAttr,
++ XPMediumAttr, XPServerAttr */
++} XPAttributeEvent;
++
++typedef struct {
++ int type; /* base + XPDataReadyNotify */
++ unsigned long serial; /* # of last request processed by server */
++ Bool send_event; /* true if from a SendEvent request */
++ Display *display; /* Display the event was read from */
++ XPContext context; /* print context where operation was requested */
++ unsigned long available; /* bytes available for retrieval */
++} XPDataReadyEvent;
++
++
++/**********************************************************
++ *
++ * Function prototypes for library side.
++ */
++
++extern XPContext XpCreateContext (
++ Display *display,
++ char *printer_name
++);
++
++extern void XpSetContext (
++ Display *display,
++ XPContext print_context
++);
++
++extern XPContext XpGetContext (
++ Display *display
++);
++
++extern void XpDestroyContext (
++ Display *display,
++ XPContext print_context
++);
++
++extern Screen *XpGetScreenOfContext (
++ Display *display,
++ XPContext print_context
++);
++
++extern Status XpGetPageDimensions (
++ Display *display,
++ XPContext print_context,
++ unsigned short *width, /* return value */
++ unsigned short *height, /* return value */
++ XRectangle *reproducible_area /* return value */
++);
++
++extern void XpStartJob (
++ Display *display,
++ XPSaveData save_data
++);
++
++extern void XpEndJob (
++ Display *display
++);
++
++extern void XpCancelJob (
++ Display *display,
++ Bool discard
++);
++
++extern void XpStartDoc (
++ Display *display,
++ XPDocumentType type
++);
++
++extern void XpEndDoc (
++ Display *display
++);
++
++extern void XpCancelDoc (
++ Display *display,
++ Bool discard
++);
++
++extern void XpPutDocumentData (
++ Display *display,
++ Drawable drawable,
++ unsigned char *data,
++ int data_len,
++ char *doc_fmt,
++ char *options
++);
++
++extern Status XpGetDocumentData (
++ Display *display,
++ XPContext context,
++ XPSaveProc save_proc,
++ XPFinishProc finish_proc,
++ XPointer client_data
++);
++
++extern void XpStartPage (
++ Display *display,
++ Window window
++);
++
++extern void XpEndPage (
++ Display *display
++);
++
++extern void XpCancelPage (
++ Display *display,
++ Bool discard
++);
++
++extern void XpSelectInput (
++ Display *display,
++ XPContext print_context,
++ unsigned long event_mask
++);
++
++extern unsigned long XpInputSelected (
++ Display *display,
++ XPContext print_context,
++ unsigned long *all_events_mask
++);
++
++extern Bool XpSetImageResolution (
++ Display *display,
++ XPContext print_context,
++ int image_res,
++ int *prev_res
++);
++
++extern int XpGetImageResolution (
++ Display *display,
++ XPContext print_context
++);
++
++extern char *XpGetAttributes (
++ Display *display,
++ XPContext print_context,
++ XPAttributes type
++);
++
++extern void XpSetAttributes (
++ Display *display,
++ XPContext print_context,
++ XPAttributes type,
++ char *pool,
++ XPAttrReplacement replacement_rule
++);
++
++extern char *XpGetOneAttribute (
++ Display *display,
++ XPContext print_context,
++ XPAttributes type,
++ char *attribute_name
++);
++
++extern XPPrinterList XpGetPrinterList (
++ Display *display,
++ char *printer_name,
++ int *list_count /* return value */
++);
++
++extern void XpFreePrinterList (
++ XPPrinterList printer_list
++);
++
++extern void XpRehashPrinterList (
++ Display *display
++);
++
++extern Status XpQueryVersion (
++ Display *display,
++ short *major_version, /* return value */
++ short *minor_version /* return value */
++);
++
++extern Bool XpQueryExtension (
++ Display *display,
++ int *event_base_return, /* return value */
++ int *error_base_return /* return value */
++);
++
++extern Screen **XpQueryScreens (
++ Display *display,
++ int *list_count /* return value */
++);
++
++extern Status XpGetPdmStartParams (
++ Display *print_display,
++ Window print_window,
++ XPContext print_context,
++ Display *video_display,
++ Window video_window,
++ Display **selection_display, /* return value */
++ Atom *selection, /* return value */
++ Atom *type, /* return value */
++ int *format, /* return value */
++ unsigned char **data, /* return value */
++ int *nelements /* return value */
++);
++
++extern Status XpGetAuthParams (
++ Display *print_display,
++ Display *video_display,
++ Display **selection_display, /* return value */
++ Atom *selection, /* return value */
++ Atom *target /* return value */
++);
++
++extern Status XpSendAuth (
++ Display *display,
++ Window window
++);
++
++extern Status XpSendOneTicket (
++ Display *display,
++ Window window,
++ Xauth *ticket,
++ Bool more
++);
++
++extern void XpSetLocaleHinter (
++ XPHinterProc hinter_proc,
++ char *hinter_desc
++);
++
++extern char *XpGetLocaleHinter (
++ XPHinterProc *hinter_proc
++);
++
++extern char *XpGetLocaleNetString(void);
++
++extern char *XpNotifyPdm (
++ Display *print_display,
++ Window print_window,
++ XPContext print_context,
++ Display *video_display,
++ Window video_window,
++ Bool auth_flag
++);
++
++#endif /* _XP_PRINT_SERVER_ */
++
++_XFUNCPROTOEND
++
++#endif /* _XpPrint_H_ */
+diff -up libXp-1.0.3/include/X11/extensions/Printstr.h.jx libXp-1.0.3/include/X11/extensions/Printstr.h
+--- libXp-1.0.3/include/X11/extensions/Printstr.h.jx 2018-07-05 12:11:12.282385427 -0400
++++ libXp-1.0.3/include/X11/extensions/Printstr.h 2018-07-05 12:11:12.282385427 -0400
+@@ -0,0 +1,783 @@
++/* $Xorg: Printstr.h,v 1.3 2000/08/18 04:05:44 coskrey Exp $ */
++/******************************************************************************
++ ******************************************************************************
++ **
++ ** File: Printstr.h
++ **
++ ** Description: Definitions needed by the server and library, but
++ ** not clients.
++ **
++ ** Print.h for server, library and clients.
++ **
++ ******************************************************************************
++ **
++ ** (c) Copyright 1996 Hewlett-Packard Company
++ ** (c) Copyright 1996 International Business Machines Corp.
++ ** (c) Copyright 1996 Sun Microsystems, Inc.
++ ** (c) Copyright 1996 Novell, Inc.
++ ** (c) Copyright 1996 Digital Equipment Corp.
++ ** (c) Copyright 1996 Fujitsu Limited
++ ** (c) Copyright 1996 Hitachi, Ltd.
++ **
++ ** Permission is hereby granted, free of charge, to any person obtaining a copy
++ ** of this software and associated documentation files (the "Software"), to deal
++ ** in the Software without restriction, including without limitation the rights
++ ** to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
++ ** copies of the Software, and to permit persons to whom the Software is
++ ** furnished to do so, subject to the following conditions:
++ **
++ ** The above copyright notice and this permission notice shall be included in
++ ** 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
++ ** COPYRIGHT HOLDERS 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.
++ **
++ ** Except as contained in this notice, the names of the copyright holders shall
++ ** not be used in advertising or otherwise to promote the sale, use or other
++ ** dealings in this Software without prior written authorization from said
++ ** copyright holders.
++ **
++ ******************************************************************************
++ *****************************************************************************/
++/* $XFree86: xc/include/extensions/Printstr.h,v 1.5 2001/08/01 00:44:35 tsi Exp $ */
++
++
++#ifndef _XpPrintstr_H_
++#define _XpPrintstr_H_
++
++/*
++ * NEED_EVENTS and NEED_REPLIES are hacks to limit the linker symbol-table
++ * size. When function prototypes are needed from Print.h, this sets up
++ * a cascading dependency on Printstr.h and eventually Xproto.h to provide
++ * the event and reply struct definitions.
++ */
++#ifndef NEED_EVENTS
++#define NEED_EVENTS
++#endif /* NEED_EVENTS */
++
++#define NEED_REPLIES
++
++#include <X11/Xproto.h>
++#ifndef _XP_PRINT_SERVER_
++#include <X11/Xlib.h>
++#endif /* _XP_PRINT_SERVER_ */
++
++/*
++ * Pull in other definitions. Print.h will hide some things if we're
++ * doing server side work.
++ */
++#include <X11/extensions/Print.h>
++
++#include <X11/Xfuncproto.h>
++
++_XFUNCPROTOBEGIN
++
++/******************************************************************************
++ *
++ * Protocol requests constants and alignment values
++ *
++ * Note: Xlib macro's expect X_ABC where ABC is the name of the
++ * protocol request.
++ */
++#define X_PrintQueryVersion 0
++#define X_PrintGetPrinterList 1
++#define X_PrintCreateContext 2
++#define X_PrintSetContext 3
++#define X_PrintGetContext 4
++#define X_PrintDestroyContext 5
++#define X_PrintGetContextScreen 6
++#define X_PrintStartJob 7
++#define X_PrintEndJob 8
++#define X_PrintStartDoc 9
++#define X_PrintEndDoc 10
++#define X_PrintPutDocumentData 11
++#define X_PrintGetDocumentData 12
++#define X_PrintStartPage 13
++#define X_PrintEndPage 14
++#define X_PrintSelectInput 15
++#define X_PrintInputSelected 16
++#define X_PrintGetAttributes 17
++#define X_PrintSetAttributes 18
++#define X_PrintGetOneAttribute 19
++#define X_PrintRehashPrinterList 20
++#define X_PrintGetPageDimensions 21
++#define X_PrintQueryScreens 22
++#define X_PrintSetImageResolution 23
++#define X_PrintGetImageResolution 24
++
++/********************************************************************
++ *
++ * Protocol data types
++ */
++#define PCONTEXT CARD32
++#define WINDOW CARD32
++#define DRAWABLE CARD32
++#define BITMASK CARD32
++
++/******************************************************************************
++ *
++ * Event wire struct definitions
++ *
++ * Note: Xlib macro's expect xABC struct names and sz_xABC size
++ * constants where ABC is the name of the protocol request.
++ */
++
++
++/*********************************************************************
++ *
++ * Events.
++ *
++ * See Print.h for the protocol "type" values.
++ */
++typedef struct _xPrintPrintEvent {
++ BYTE type; /* XPPrintNotify + extEntry->eventBase */
++ BYTE detail; /* XPStartJobNotify, XPEndJobNotify,
++ XPStartDocNotify, XPEndDocNotify,
++ XPStartPageNotify, XPEndPageNotify */
++ CARD16 sequenceNumber B16;
++ PCONTEXT printContext B32; /* print context */
++ BOOL cancel; /* canceled flag */
++ CARD8 pad1; /* rest is unused */
++ CARD16 pad2 B16;
++ CARD32 pad3 B32;
++ CARD32 pad4 B32;
++ CARD32 pad5 B32;
++ CARD32 pad6 B32;
++ CARD32 pad7 B32;
++} xPrintPrintEvent;
++#define sz_xPrintPrintEvent 32;
++
++typedef struct _xPrintAttributeEvent {
++ BYTE type; /* XPAttributeNotify + extEntry->eventBase */
++ BYTE detail; /* XPJobAttr, XPDocAttr, XPPageAttr,
++ XPPrinterAttr, XPSpoolerAttr,
++ XPMediumAttr, XPServerAttr */
++ CARD16 sequenceNumber B16;
++ PCONTEXT printContext B32; /* print context */
++ CARD32 pad1 B32;
++ CARD32 pad2 B32;
++ CARD32 pad3 B32;
++ CARD32 pad4 B32;
++ CARD32 pad5 B32;
++ CARD32 pad6 B32;
++} xPrintAttributeEvent;
++#define sz_xPrintAttributeEvent 32;
++
++
++/*********************************************************************
++ *
++ * Requests
++ */
++typedef struct _PrintQueryVersion {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintQueryVersion */
++ CARD16 length B16;
++} xPrintQueryVersionReq;
++#define sz_xPrintQueryVersionReq 4
++
++typedef struct {
++ BYTE type; /* X_Reply */
++ CARD8 unused; /* not used */
++ CARD16 sequenceNumber B16;
++ CARD32 length B32;
++ CARD16 majorVersion B16; /* major version of Xp protocol */
++ CARD16 minorVersion B16; /* minor version of Xp protocol */
++ CARD32 pad1 B32;
++ CARD32 pad2 B32;
++ CARD32 pad3 B32;
++ CARD32 pad4 B32;
++ CARD32 pad5 B32;
++} xPrintQueryVersionReply;
++#define sz_xPrintQueryVersionReply 32
++
++
++typedef struct _PrintGetPrinterList {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintGetPrinterList */
++ CARD16 length B16;
++ CARD32 printerNameLen B32; /* length of printer name */
++ CARD32 localeLen B32; /* length of locale string */
++
++ /* variable portion *****************************************
++ STRING8 printerName; * printer name *
++ BYTE pad(printerNameLen) * unused *
++ STRING8 locale; * locale *
++ BYTE pad(localeLen) * unused *
++ ************************************************************/
++} xPrintGetPrinterListReq;
++#define sz_xPrintGetPrinterListReq 12
++
++typedef struct {
++ BYTE type; /* X_Reply */
++ CARD8 unused; /* not used */
++ CARD16 sequenceNumber B16;
++ CARD32 length B32;
++ CARD32 listCount B32; /* of PRINTER recs below */
++ CARD32 pad1 B32;
++ CARD32 pad2 B32;
++ CARD32 pad3 B32;
++ CARD32 pad4 B32;
++ CARD32 pad5 B32;
++
++ /* variable portion *****************************************
++ CARD32 nameLen B32; * length of name in bytes *
++ STRING8 name; * name *
++ BYTE pad(nameLen) * unused *
++
++ CARD32 descLen B32; * length of desc in bytes *
++ STRING8 desc; * localized description *
++ BYTE pad(descLen) * unused *
++ ************************************************************/
++} xPrintGetPrinterListReply;
++#define sz_xPrintGetPrinterListReply 32
++
++
++typedef struct _PrintRehashPrinterList {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintRehashPrinterList */
++ CARD16 length B16;
++} xPrintRehashPrinterListReq;
++#define sz_xPrintRehashPrinterListReq 4
++
++
++typedef struct _PrintCreateContext {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintInitSetContext */
++ CARD16 length B16;
++ CARD32 contextID B32; /* ID for context */
++ CARD32 printerNameLen B32; /* length of printerName in bytes */
++ CARD32 localeLen B32; /* length of locale in bytes */
++
++ /* variable portion *****************************************
++ STRING8 printerName * printer name *
++ BYTE pad(printerNameLen) * unused *
++ STRING8 locale * locale *
++ BYTE pad(locale) * unused *
++ ************************************************************/
++} xPrintCreateContextReq;
++#define sz_xPrintCreateContextReq 16
++
++
++typedef struct _PrintSetContext {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintSetContext */
++ CARD16 length B16;
++ PCONTEXT printContext B32; /* print context */
++} xPrintSetContextReq;
++#define sz_xPrintSetContextReq 8
++
++
++typedef struct _PrintGetContext {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintGetContext */
++ CARD16 length B16;
++} xPrintGetContextReq;
++#define sz_xPrintGetContextReq 4
++
++typedef struct {
++ BYTE type; /* X_Reply */
++ CARD8 unused; /* not used */
++ CARD16 sequenceNumber B16;
++ CARD32 length B32;
++ PCONTEXT printContext B32; /* print context */
++ CARD32 pad1 B32;
++ CARD32 pad2 B32;
++ CARD32 pad3 B32;
++ CARD32 pad4 B32;
++ CARD32 pad5 B32;
++} xPrintGetContextReply;
++#define sz_xPrintGetContextReply 32
++
++
++typedef struct _PrintDestroyContext {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintDestroyContext */
++ CARD16 length B16;
++ PCONTEXT printContext B32; /* print context */
++} xPrintDestroyContextReq;
++#define sz_xPrintDestroyContextReq 8
++
++
++typedef struct _PrintGetContextScreen {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintGetContextScreen */
++ CARD16 length B16;
++ PCONTEXT printContext B32; /* print context */
++} xPrintGetContextScreenReq;
++#define sz_xPrintGetContextScreenReq 8
++
++typedef struct {
++ BYTE type; /* X_Reply */
++ CARD8 unused; /* not used */
++ CARD16 sequenceNumber B16;
++ CARD32 length B32;
++ WINDOW rootWindow; /* screenPtr represented as rootWin */
++ CARD32 pad1 B32;
++ CARD32 pad2 B32;
++ CARD32 pad3 B32;
++ CARD32 pad4 B32;
++ CARD32 pad5 B32;
++} xPrintGetContextScreenReply;
++#define sz_xPrintGetContextScreenReply 32
++
++
++typedef struct _PrintStartJob {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintStartJob */
++ CARD16 length B16;
++ CARD8 saveData; /* save data boolean */
++ CARD8 pad1;
++ CARD16 pad2 B16;
++} xPrintStartJobReq;
++#define sz_xPrintStartJobReq 8
++
++typedef struct _PrintEndJob {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintEndJob */
++ CARD16 length B16;
++ BOOL cancel; /* cancel boolean */
++ CARD8 pad1;
++ CARD16 pad2 B16;
++} xPrintEndJobReq;
++#define sz_xPrintEndJobReq 8
++
++
++typedef struct _PrintStartDoc {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintStartDoc */
++ CARD16 length B16;
++ CARD8 type; /* type for document */
++ CARD8 pad1;
++ CARD16 pad2 B16;
++} xPrintStartDocReq;
++#define sz_xPrintStartDocReq 8
++
++typedef struct _PrintEndDoc {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintEndDoc */
++ CARD16 length B16;
++ BOOL cancel; /* cancel boolean */
++ CARD8 pad1;
++ CARD16 pad2 B16;
++} xPrintEndDocReq;
++#define sz_xPrintEndDocReq 8
++
++
++typedef struct _PrintPutDocumentData {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintPutDocumentData */
++ CARD16 length B16;
++ DRAWABLE drawable B32; /* target drawable */
++ CARD32 len_data B32; /* big len in bytes */
++ CARD16 len_fmt; /* len in bytes */
++ CARD16 len_options; /* len in bytes */
++
++ /* variable portion *****************************************
++ LISTofBYTE data; * data *
++ BYTE pad(len_data) * unused *
++ STRING8 doc_fmt; * ISO compliant desc of data type *
++ BYTE pad(len_fmt) * unused *
++ STRING8 options; * additional device-dependent desc *
++ BYTE pad(len_options) * unused *
++ ************************************************************/
++} xPrintPutDocumentDataReq;
++#define sz_xPrintPutDocumentDataReq 16
++
++
++typedef struct _PrintGetDocumentData {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintGetDocumentData */
++ CARD16 length B16;
++ PCONTEXT printContext B32; /* print context */
++ CARD32 maxBufferSize B32; /* maximum buffer size requested */
++} xPrintGetDocumentDataReq;
++#define sz_xPrintGetDocumentDataReq 12
++
++typedef struct {
++ BYTE type; /* X_Reply */
++ CARD8 unused; /* not used */
++ CARD16 sequenceNumber B16;
++ CARD32 length B32;
++ CARD32 statusCode B32; /* status code for reply */
++ CARD32 finishedFlag B32; /* is this the last reply */
++ CARD32 dataLen B32; /* data length */
++ CARD32 pad1 B32;
++ CARD32 pad2 B32;
++ CARD32 pad3 B32;
++
++ /* variable portion *****************************************
++ LISTofBYTE data; * data *
++ BYTE pad(count) * unused *
++ ************************************************************/
++} xPrintGetDocumentDataReply;
++#define sz_xPrintGetDocumentDataReply 32
++
++
++typedef struct _PrintStartPage {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintStartPage */
++ CARD16 length B16;
++ WINDOW window B32; /* window */
++} xPrintStartPageReq;
++#define sz_xPrintStartPageReq 8
++
++typedef struct _PrintEndPage {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintEndPage */
++ CARD16 length B16;
++ BOOL cancel; /* cancel boolean */
++ CARD8 pad1;
++ CARD16 pad2 B16;
++} xPrintEndPageReq;
++#define sz_xPrintEndPageReq 8
++
++
++typedef struct _PrintSelectInput {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintSelectInput */
++ CARD16 length B16;
++ PCONTEXT printContext B32; /* print context */
++ BITMASK eventMask B32;
++} xPrintSelectInputReq;
++#define sz_xPrintSelectInputReq 12
++
++
++typedef struct _PrintInputSelected {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintInputSelected */
++ CARD16 length B16;
++ PCONTEXT printContext B32; /* print context */
++} xPrintInputSelectedReq;
++#define sz_xPrintInputSelectedReq 8
++
++typedef struct {
++ BYTE type; /* X_Reply */
++ CARD8 unused; /* not used */
++ CARD16 sequenceNumber B16;
++ CARD32 length B32;
++ BITMASK eventMask B32; /* your event mask */
++ BITMASK allEventsMask B32; /* all event mask */
++ CARD32 pad1 B32;
++ CARD32 pad2 B32;
++ CARD32 pad3 B32;
++ CARD32 pad4 B32;
++} xPrintInputSelectedReply;
++#define sz_xPrintInputSelectedReply 32
++
++typedef struct _PrintGetAttributes {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintGetAttributes */
++ CARD16 length B16;
++ PCONTEXT printContext B32; /* print context */
++ CARD8 type; /* type */
++ CARD8 pad1; /* unused */
++ CARD16 pad2 B16; /* unused */
++} xPrintGetAttributesReq;
++#define sz_xPrintGetAttributesReq 12
++
++typedef struct {
++ BYTE type; /* X_Reply */
++ CARD8 unused; /* not used */
++ CARD16 sequenceNumber B16;
++ CARD32 length B32;
++ CARD32 stringLen B32; /* length of xrm db string */
++ CARD32 pad1 B32;
++ CARD32 pad2 B32;
++ CARD32 pad3 B32;
++ CARD32 pad4 B32;
++ CARD32 pad5 B32;
++
++ /* variable portion *****************************************
++ STRING8 string; * xrm db as a string *
++ BYTE pad(stringLen) * unused *
++ ************************************************************/
++} xPrintGetAttributesReply;
++#define sz_xPrintGetAttributesReply 32
++
++
++typedef struct _PrintSetAttributes {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintSetAttributes */
++ CARD16 length B16;
++ PCONTEXT printContext B32; /* print context */
++ CARD32 stringLen B32; /* length of xrm db string */
++ CARD8 type; /* type */
++ CARD8 rule; /* replacement rule */
++ CARD16 pad1 B16; /* unused */
++
++ /* variable portion *****************************************
++ STRING8 string; * xrm db as a string *
++ BYTE pad(stringLen) * unused *
++ ************************************************************/
++} xPrintSetAttributesReq;
++#define sz_xPrintSetAttributesReq 16
++
++
++typedef struct _PrintGetOneAttribute {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintGetOneAttribute */
++ CARD16 length B16;
++ PCONTEXT printContext B32; /* print context */
++ CARD32 nameLen; /* length of name string */
++ CARD8 type; /* type */
++ CARD8 pad1; /* unused */
++ CARD16 pad2 B16; /* unused */
++
++ /* variable portion *****************************************
++ STRING8 name; * name as a string *
++ BYTE pad(name) * unused *
++ ************************************************************/
++} xPrintGetOneAttributeReq;
++#define sz_xPrintGetOneAttributeReq 16
++
++typedef struct {
++ BYTE type; /* X_Reply */
++ CARD8 unused; /* not used */
++ CARD16 sequenceNumber B16;
++ CARD32 length B32;
++ CARD32 valueLen B32; /* length of value string */
++ CARD32 pad1 B32;
++ CARD32 pad2 B32;
++ CARD32 pad3 B32;
++ CARD32 pad4 B32;
++ CARD32 pad5 B32;
++
++ /* variable portion *****************************************
++ STRING8 value; * value as a string *
++ BYTE pad(value) * unused *
++ ************************************************************/
++} xPrintGetOneAttributeReply;
++#define sz_xPrintGetOneAttributeReply 32
++
++
++typedef struct _PrintGetPageDimensions {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintGetPageDimensions */
++ CARD16 length B16;
++ PCONTEXT printContext B32; /* print context */
++} xPrintGetPageDimensionsReq;
++#define sz_xPrintGetPageDimensionsReq 8
++
++typedef struct {
++ BYTE type; /* X_Reply */
++ CARD8 unused; /* not used */
++ CARD16 sequenceNumber B16;
++ CARD32 length B32;
++ CARD16 width; /* total pixel width */
++ CARD16 height; /* total pixel height */
++ CARD16 rx; /* reproducable x pixel offset */
++ CARD16 ry; /* reproducable y pixel offset */
++ CARD16 rwidth; /* reproducable x pixel width */
++ CARD16 rheight; /* reproducable y pixel width */
++ CARD32 pad1 B32;
++ CARD32 pad2 B32;
++ CARD32 pad3 B32;
++} xPrintGetPageDimensionsReply;
++#define sz_xPrintGetPageDimensionsReply 32
++
++
++typedef struct _PrintQueryScreens {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintQueryScreens */
++ CARD16 length B16;
++} xPrintQueryScreensReq;
++#define sz_xPrintQueryScreensReq 4
++
++typedef struct {
++ BYTE type; /* X_Reply */
++ CARD8 unused; /* not used */
++ CARD16 sequenceNumber B16;
++ CARD32 length B32;
++ CARD32 listCount; /* number of screens following */
++ CARD32 pad1 B32;
++ CARD32 pad2 B32;
++ CARD32 pad3 B32;
++ CARD32 pad4 B32;
++ CARD32 pad5 B32;
++
++ /* variable portion *****************************************
++ WINDOW rootWindow; * root window of screen *
++ ************************************************************/
++} xPrintQueryScreensReply;
++#define sz_xPrintQueryScreensReply 32
++
++typedef struct _PrintSetImageResolution {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintSetImageResolution */
++ CARD16 length B16;
++ PCONTEXT printContext B32; /* print context */
++ CARD16 imageRes B16; /* image resolution */
++ CARD16 pad1 B16;
++} xPrintSetImageResolutionReq;
++#define sz_xPrintSetImageResolutionReq 12
++
++typedef struct {
++ BYTE type; /* X_Reply */
++ BOOL status; /* accepted or not */
++ CARD16 sequenceNumber B16;
++ CARD32 length B32;
++ CARD16 prevRes B16; /* previous resolution */
++ CARD16 pad1 B32;
++ CARD32 pad2 B32;
++ CARD32 pad3 B32;
++ CARD32 pad4 B32;
++ CARD32 pad5 B32;
++ CARD32 pad6 B32;
++} xPrintSetImageResolutionReply;
++#define sz_xPrintSetImageResolutionReply 32
++
++typedef struct _PrintGetImageResolution {
++ CARD8 reqType; /* always PrintReqCode */
++ CARD8 printReqType; /* always X_PrintGetImageResolution */
++ CARD16 length B16;
++ PCONTEXT printContext B32; /* print context */
++} xPrintGetImageResolutionReq;
++#define sz_xPrintGetImageResolutionReq 8
++
++typedef struct {
++ BYTE type; /* X_Reply */
++ CARD8 unused;
++ CARD16 sequenceNumber B16;
++ CARD32 length B32;
++ CARD16 imageRes B16; /* image resolution */
++ CARD16 pad1 B32;
++ CARD32 pad2 B32;
++ CARD32 pad3 B32;
++ CARD32 pad4 B32;
++ CARD32 pad5 B32;
++ CARD32 pad6 B32;
++} xPrintGetImageResolutionReply;
++#define sz_xPrintGetImageResolutionReply 32
++
++#ifndef _XP_PRINT_SERVER_
++/***********************************************************************
++ *
++ * Library-only definitions.
++ */
++extern XPHinterProc _xp_hinter_proc;
++extern char *_xp_hinter_desc;
++extern int _xp_hinter_init;
++
++#else /* _XP_PRINT_SERVER_ */
++
++/***********************************************************************
++ *
++ * Server-only definitions shared between the extension and DDX layers.
++ *
++ */
++
++/*
++ * Internal return code used to indicate that the requesting
++ * client has been suspended.
++ */
++#define Suspended 84
++
++struct _XpContext;
++
++extern void XpRegisterPrinterScreen(
++ ScreenPtr pScreen,
++ int (*CreateContext)(struct _XpContext *));
++
++typedef struct _xpprintFuncs {
++ int (*StartJob)(
++ struct _XpContext * /* pContext */,
++ Bool /* sendClientData */,
++ ClientPtr /* client */);
++ int (*EndJob)(struct _XpContext *, int);
++ int (*StartDoc)(
++ struct _XpContext * /* pContext */,
++ XPDocumentType /* type */);
++ int (*EndDoc)(struct _XpContext *, int);
++ int (*StartPage)(
++ struct _XpContext * /* pContext */,
++ WindowPtr /* pWin */);
++ int (*EndPage)(
++ struct _XpContext * /* pContext */,
++ WindowPtr /* pWin */);
++ int (*PutDocumentData)(
++ struct _XpContext * /* pContext */,
++ DrawablePtr /* pDraw */,
++ char * /* pData */,
++ int /* len_data */,
++ char * /* pDoc_fmt */,
++ int /* len_fmt */,
++ char * /* pOptions */,
++ int /* len_options */,
++ ClientPtr /* client */);
++ int (*GetDocumentData)(
++ struct _XpContext * /* pContext */,
++ ClientPtr /* client */,
++ int /* maxBufferSize */);
++ int (*DestroyContext)(
++ struct _XpContext *); /* pContext */
++ char *(*GetAttributes)(
++ struct _XpContext *,
++ XPAttributes /* pool */);
++ char *(*GetOneAttribute)(
++ struct _XpContext * /* pContext */,
++ XPAttributes /* pool */,
++ char * /* attrs */);
++ int (*SetAttributes)(
++ struct _XpContext * /* pContext */,
++ XPAttributes /* pool */,
++ char * /* attrs */);
++ int (*AugmentAttributes)(
++ struct _XpContext * /* pContext */,
++ XPAttributes /* pool */,
++ char * /* attrs */);
++ int (*GetMediumDimensions)(
++ struct _XpContext * /* pPrintContext */,
++ CARD16 * /* pWidth */,
++ CARD16 * /* pHeight */);
++ int (*GetReproducibleArea)(
++ struct _XpContext * /* pPrintContext */,
++ xRectangle * /* pRect */);
++ int (*SetImageResolution)(
++ struct _XpContext * /* pPrintContext */,
++ int /* imageRes */,
++ Bool * /* pStatus */);
++} XpDriverFuncs, *XpDriverFuncsPtr;
++
++/*
++ * Each print context is represented by one of the following structs
++ * associated with a resource ID of type RTcontext . A pointer to
++ * the context is placed in the Xp extension's devPrivates
++ * element in each client * which establishes a context via
++ * either initContext or setContext.
++ * The context pointer is also placed in the struct indicated by the
++ * RTpage resource associated with each StartPage'd window.
++ */
++typedef struct _XpContext {
++ XID contextID;
++ char *printerName;
++ int screenNum; /* screen containing the printer */
++ struct _XpClient *clientHead; /* list of clients */
++ CARD32 state;
++ VisualID pageWin;
++ DevUnion *devPrivates;
++ XpDriverFuncs funcs;
++ ClientPtr clientSlept;
++ int imageRes;
++} XpContextRec, *XpContextPtr;
++
++#include <X11/fonts/fontstruct.h> /* FontResolutionPtr */
++
++extern Bool XpAllocateContextPrivate(int, unsigned);
++extern FontResolutionPtr XpGetClientResolutions(ClientPtr, int *);
++extern XpContextPtr XpContextOfClient(ClientPtr);
++extern XpContextPtr XpGetPrintContext(ClientPtr);
++extern int XpAllocateContextPrivateIndex(void);
++extern int XpRehashPrinterList(void);
++extern void XpSetFontResFunc(ClientPtr);
++extern void XpUnsetFontResFunc(ClientPtr);
++extern void XpRegisterInitFunc(ScreenPtr, char *, int (*)(struct _XpContext *));
++
++#endif /* _XP_PRINT_SERVER_ */
++
++_XFUNCPROTOEND
++
++#endif /* _XpPrintstr_H_ */
+diff -up libXp-1.0.3/Makefile.am.jx libXp-1.0.3/Makefile.am
+--- libXp-1.0.3/Makefile.am.jx 2015-02-21 17:02:53.000000000 -0500
++++ libXp-1.0.3/Makefile.am 2018-07-05 12:11:12.279385380 -0400
+@@ -23,10 +23,15 @@ AM_CFLAGS = $(XPRINT_CFLAGS)
+
+ SUBDIRS = src man
+
++printdir = $(includedir)/X11/extensions
++print_HEADERS = \
++ $(top_srcdir)/include/X11/extensions/Print.h \
++ $(top_srcdir)/include/X11/extensions/Printstr.h
++
+ pkgconfigdir = $(libdir)/pkgconfig
+-pkgconfig_DATA = xp.pc
++pkgconfig_DATA = xp.pc printproto.pc
+
+-EXTRA_DIST = xp.pc.in ChangeLog
++EXTRA_DIST = xp.pc.in printproto.pc.in ChangeLog
+ MAINTAINERCLEANFILES = ChangeLog
+
+ .PHONY: ChangeLog
+diff -up libXp-1.0.3/printproto.pc.in.jx libXp-1.0.3/printproto.pc.in
+--- libXp-1.0.3/printproto.pc.in.jx 2018-07-05 12:11:12.283385443 -0400
++++ libXp-1.0.3/printproto.pc.in 2018-07-05 12:11:12.282385427 -0400
+@@ -0,0 +1,10 @@
++prefix=@prefix@
++exec_prefix=@exec_prefix@
++libdir=@libdir@
++includedir=@includedir@
++
++Name: PrintProto
++Description: Print extension headers
++Version: @PACKAGE_VERSION@
++Requires: xau
++Cflags: -I${includedir}
+diff -up libXp-1.0.3/src/Makefile.am.jx libXp-1.0.3/src/Makefile.am
+--- libXp-1.0.3/src/Makefile.am.jx 2015-02-21 17:02:53.000000000 -0500
++++ libXp-1.0.3/src/Makefile.am 2018-07-05 12:11:12.283385443 -0400
+@@ -24,7 +24,7 @@ libXp_la_LIBADD = $(XPRINT_LIBS)
+
+ AM_CFLAGS = $(CWARNFLAGS) $(XPRINT_CFLAGS) $(MALLOC_ZERO_CFLAGS)
+
+-AM_CPPFLAGS = -I$(top_srcdir)/include/X11/extensions
++AM_CPPFLAGS = -I$(top_srcdir)/include/
+
+ #
+ # Library version number. This must match old versions on
+
More information about the arch-commits
mailing list