head	1.1;
branch	1.1.1;
access;
symbols
	netbsd-11-0-RC4:1.1.1.2.4.1
	libXpm-3-5-19:1.1.1.3
	netbsd-11-0-RC3:1.1.1.2
	netbsd-11-0-RC2:1.1.1.2
	netbsd-11-0-RC1:1.1.1.2
	netbsd-11:1.1.1.2.0.4
	netbsd-11-base:1.1.1.2
	netbsd-10-1-RELEASE:1.1.1.2.2.2
	netbsd-10-0-RELEASE:1.1.1.2.2.2
	netbsd-10-0-RC6:1.1.1.2.2.2
	netbsd-10-0-RC5:1.1.1.2.2.2
	netbsd-10-0-RC4:1.1.1.2.2.2
	netbsd-10-0-RC3:1.1.1.2.2.2
	netbsd-10-0-RC2:1.1.1.2.2.2
	netbsd-10-0-RC1:1.1.1.2.2.2
	libXpm-3-5-17:1.1.1.2
	libXpm-3-5-16:1.1.1.2
	netbsd-10:1.1.1.2.0.2
	libXpm-3-5-15:1.1.1.2
	libXpm-3-5-14:1.1.1.1
	xorg:1.1.1;
locks; strict;
comment	@.\" @;


1.1
date	2023.01.08.06.00.57;	author mrg;	state Exp;
branches
	1.1.1.1;
next	;
commitid	pafnXA7eYXUjxH8E;

1.1.1.1
date	2023.01.08.06.00.57;	author mrg;	state Exp;
branches;
next	1.1.1.2;
commitid	pafnXA7eYXUjxH8E;

1.1.1.2
date	2023.01.19.05.12.23;	author mrg;	state Exp;
branches
	1.1.1.2.2.1
	1.1.1.2.4.1;
next	1.1.1.3;
commitid	wSF7Xz3G6uGJU6aE;

1.1.1.3
date	2026.04.21.22.17.19;	author mrg;	state Exp;
branches;
next	;
commitid	nFKAY4UHGiKMoSCG;

1.1.1.2.2.1
date	2023.01.19.05.12.23;	author martin;	state dead;
branches;
next	1.1.1.2.2.2;
commitid	Vv06MqbpJGbIDFaE;

1.1.1.2.2.2
date	2023.01.23.13.49.21;	author martin;	state Exp;
branches;
next	1.1.1.2.2.3;
commitid	Vv06MqbpJGbIDFaE;

1.1.1.2.2.3
date	2026.05.06.19.36.33;	author martin;	state Exp;
branches;
next	;
commitid	J7mvmZrn2XJr1NEG;

1.1.1.2.4.1
date	2026.05.06.19.33.32;	author martin;	state Exp;
branches;
next	;
commitid	45Sj6iR5I6840NEG;


desc
@@


1.1
log
@Initial revision
@
text
@.\" Copyright (C) 1989-95 GROUPE BULL
.\"
.\" 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
.\" GROUPE BULL 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 name of GROUPE BULL shall not be
.\" used in advertising or otherwise to promote the sale, use or other dealings
.\" in this Software without prior written authorization from GROUPE BULL.
.\"
.hw XImage
.TH  XpmCreateXpmImage __libmansuffix__ __xorgversion__ "libXpm functions"
.SH NAME
XpmCreateXpmImage \- create an Xpm image
.SH SYNOPSIS

.HP
int XpmCreateXpmImageFromData(char **data, XpmImage *image, XpmInfo *info);
.HP
int XpmCreateXpmImageFromBuffer(char *buffer, XpmImage *image, XpmInfo *info);
.HP
int XpmCreateXpmImageFromImage(Display *display, XImage *image, XImage *shapeimage, XpmImage *xpmimage, XpmAttributes *attributes);
.HP
int XpmCreateXpmImageFromPixmap(Display *display, Pixmap *pixmap, Pixmap *shapemask, XpmImage *xpmimage, XpmAttributes *attributes);

.SH ARGUMENTS

.IP \fIdata\fP  li
Specifies the location of the data.
.IP \fIimage\fP li
Specifies the image structure location.
.IP \fIinfo\fP li
Specifies the location of an XpmInfo structure to get and store information (or NULL).
.IP \fIdisplay\fP li
Specifies the connection to the X server.
.IP \fIimage\fP li
Specifies the image which is created.
.IP \fIshapeimage\fP li
Specifies the shape mask image which is created if any.
.IP \fIxpmimage\fP li
Specifies the location of an XpmImage structure.
.IP \fIattributes\fP li
Specifies the location of a structure containing information (or NULL).

.SH DESCRIPTION
.SS XpmCreateXpmImageFromBuffer
To create an XpmImage from an XPM buffer, use XpmCreateXpmImageFromBuffer.
The XpmCreateXpmImageFromBuffer function reads the given buffer to fill in the given XpmImage structure.
If the buffer does not contain valid XPM data, it returns XpmFileInvalid.
If insufficient working storage is allocated, it returns XpmNoMemory, and returns XpmSuccess on success.
If the passed XpmInfo structure pointer is not NULL, XpmCreateXpmImageFromBuffer looks for the following attributes:
XpmReturnComments and XpmReturnExtensions, and sets possibly the XpmHotspot attribute when returning.
As specified in the table (page 28), if the data related to the attributes XpmReturnComments and
XpmReturnExtensions cannot be returned as requested because of insufficient memory storage,
XpmCreateXpmImageFromBuffer will change the valuemask to mention this and will try to continue.
So the caller should check on this before accessing requested data.

Note: The valuemask of the passed XpmInfo structure must be set to some valid value,
at least zero, otherwise unpredictable errors can occur.

.SS XpmCreateXpmImageFromData
To create an XpmImage from an XPM data, use XpmCreateXpmImageFromData.
XpmCreateXpmImageFromData fills in the given XpmImage structure from the given data. If the data does not
contain validXPM data, it returns XpmFileInvalid. If insufficient working storage is allocated, it returns
XpmNoMemory, on success it returns XpmSuccess.
If the passed XpmInfo structure pointer is not NULL, XpmCreateXpmImageFromData looks for the following attributes:
XpmReturnExtensions, and sets possibly the XpmHotspot attribute when returning.
As specified in the table (page 28), if the data related to the attribute
XpmReturnExtensions cannot be returned as requested because of
insufficient memory storage, XpmCreateXpmImageFromData will change the valuemask to mention this and will
try to continue.
So the caller should check on this before accessing requested data.

Note: The valuemask of the passed  XpmInfo structure must be set to some valid value, at least zero,
otherwise unpredictable errors can occur.

.SS XpmCreateXpmImageFromImage
To create an XpmImage from an XImage, use XpmCreateXpmImageFromImage.
From the given X images and XpmAttributes if not NULL, XpmCreateXpmImageFromImage creates an
XpmImage following the same mechanism as XpmWriteFileFromImage.

.SS XpmCreateXpmImageFromPixmap
To create an XpmImage from a Pixmap, use XpmCreateXpmImageFromPixmap.
From the given pixmaps and XpmAttributes if not NULL, XpmCreateXpmImageFromPixmap gets the related XImages
by calling XGetImage, then it gives them to XpmCreateXpmImageFromImage() to create an
XpmImage which is returned to xpmimage.
Finally it destroys the created X images using XDestroyImage.


.SH "SEE ALSO"
.BR XpmCreateXpmImageFromBuffer(__libmansuffix__) ,
.BR XpmCreateXpmImageFromData(__libmansuffix__) ,
.BR XpmCreateXpmImageFromImage(__libmansuffix__) ,
.BR XpmCreateXpmImageFromPixmap(__libmansuffix__)
@


1.1.1.1
log
@initial import of libXpm-3.5.14
@
text
@@


1.1.1.2
log
@initial import of libXpm-3.5.15
@
text
@d29 1
a29 1
.nf
d31 1
a31 2
.BI "int XpmCreateXpmImageFromData(char **" data ", XpmImage *" image ,
.BI "XpmInfo *" info );
d33 1
a33 2
.BI "int XpmCreateXpmImageFromBuffer(char *" buffer ", XpmImage *" image ,
.BI "XpmInfo *" info );
d35 1
a35 3
.BI "int XpmCreateXpmImageFromImage(Display *" display ,
.BI "XImage *" image ", XImage *" shapeimage ,
.BI "XpmImage *" xpmimage ", XpmAttributes *" attributes );
d37 1
a37 4
.BI "int XpmCreateXpmImageFromPixmap(Display *" display ,
.BI "Pixmap *" pixmap ", Pixmap *" shapemask ,
.BI "XpmImage *" xpmimage ", XpmAttributes *" attributes );
.fi
d50 1
a50 1
Specifies the X image used as the source.
d52 1
a52 1
Specifies the shape mask image, if any.
d54 1
a54 1
Specifies the XPM image which is created.
d60 6
a65 16
.PP
To create an XpmImage from an XPM buffer, use
.BR XpmCreateXpmImageFromBuffer ().
The
.BR XpmCreateXpmImageFromBuffer ()
function reads the given buffer to fill in the given XpmImage structure.
If the buffer does not contain valid XPM data, it returns
.BR XpmFileInvalid .
If insufficient working storage is allocated, it returns
.BR XpmNoMemory .
On success it returns
.BR XpmSuccess .
If the passed XpmInfo structure pointer is not NULL,
.BR XpmCreateXpmImageFromBuffer ()
looks for the following attributes: XpmReturnComments and XpmReturnExtensions,
and sets possibly the XpmHotspot attribute when returning.
d68 1
a68 2
.BR XpmCreateXpmImageFromBuffer ()
will change the valuemask to mention this and will try to continue.
d70 3
a72 3
.PP
Note: The valuemask of the passed XpmInfo structure must be set to some valid
value, at least zero, otherwise unpredictable errors can occur.
d75 5
a79 14
.PP
To create an XpmImage from an XPM data, use
.BR XpmCreateXpmImageFromData ().
.BR XpmCreateXpmImageFromData ()
fills in the given XpmImage structure from the given data. If the data does not
contain valid XPM data, it returns
.BR XpmFileInvalid .
If insufficient working storage is allocated, it returns
.BR XpmNoMemory .
On success it returns
.BR XpmSuccess.
If the passed XpmInfo structure pointer is not NULL,
.BR XpmCreateXpmImageFromData ()
looks for the following attributes:
d83 2
a84 3
insufficient memory storage,
.BR XpmCreateXpmImageFromData ()
will change the valuemask to mention this and will try to continue.
d86 3
a88 3
.PP
Note: The valuemask of the passed XpmInfo structure must be set to some valid
value, at least zero, otherwise unpredictable errors can occur.
d91 3
a93 7
.PP
To create an XpmImage from an XImage, use
.BR XpmCreateXpmImageFromImage ().
From the given X images and XpmAttributes if not NULL,
.BR XpmCreateXpmImageFromImage ()
creates an XpmImage following the same mechanism as
.BR XpmWriteFileFromImage (__libmansuffix__).
d96 5
a100 11
.PP
To create an XpmImage from a Pixmap, use
.BR XpmCreateXpmImageFromPixmap ().
From the given pixmaps and XpmAttributes if not NULL,
.BR XpmCreateXpmImageFromPixmap ()
gets the related XImages by calling XGetImage, then it gives them to
.BR XpmCreateXpmImageFromImage ()
to create an XpmImage which is returned to
.IR xpmimage .
Finally it destroys the created X images using
.BR XDestroyImage (__libmansuffix__).
d104 4
a107 8
.ad l
.nh
.BR XpmFreeXpmImage (__libmansuffix__),
.BR XpmReadFileToBuffer (__libmansuffix__),
.BR XpmReadFileToData (__libmansuffix__),
.BR XpmReadFileToImage (__libmansuffix__),
.BR XpmReadFileToPixmap (__libmansuffix__),
.BR XpmWriteFileFromImage (__libmansuffix__)
@


1.1.1.2.4.1
log
@Pull up the following, requested by mrg in ticket #259:

	xsrc/external/mit/libXpm/dist/doc/README.AMIGA       delete
	xsrc/external/mit/libXpm/dist/doc/README.MSW         delete
	xsrc/external/mit/libXpm/dist/src/amigax.c           delete
	xsrc/external/mit/libXpm/dist/src/amigax.h           delete
	xsrc/external/mit/libXpm/dist/src/rgbtab.h           delete
	xsrc/external/mit/libXpm/dist/src/simx.c             delete
	xsrc/external/mit/libXpm/dist/src/simx.h             delete
	xsrc/external/mit/libXpm/dist/ChangeLog              up to 1.1.1.12
	xsrc/external/mit/libXpm/dist/Makefile.in            up to 1.1.1.11
	xsrc/external/mit/libXpm/dist/aclocal.m4             up to 1.1.1.12
	xsrc/external/mit/libXpm/dist/compile                up to 1.1.1.6
	xsrc/external/mit/libXpm/dist/config.guess           up to 1.1.1.10
	xsrc/external/mit/libXpm/dist/config.h.in            up to 1.1.1.9
	xsrc/external/mit/libXpm/dist/config.sub             up to 1.1.1.11
	xsrc/external/mit/libXpm/dist/configure              up to 1.1.1.12
	xsrc/external/mit/libXpm/dist/configure.ac           up to 1.1.1.12
	xsrc/external/mit/libXpm/dist/depcomp                up to 1.1.1.8
	xsrc/external/mit/libXpm/dist/install-sh             up to 1.1.1.8
	xsrc/external/mit/libXpm/dist/ltmain.sh              up to 1.1.1.12
	xsrc/external/mit/libXpm/dist/missing                up to 1.1.1.9
	xsrc/external/mit/libXpm/dist/tap-driver.sh          up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/test-driver            up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/cxpm/Makefile.in       up to 1.1.1.11
	xsrc/external/mit/libXpm/dist/doc/Makefile.am        up to 1.1.1.2
	xsrc/external/mit/libXpm/dist/doc/Makefile.in        up to 1.1.1.9
	xsrc/external/mit/libXpm/dist/include/Makefile.in    up to 1.1.1.9
	xsrc/external/mit/libXpm/dist/include/X11/xpm.h      up to 1.1.1.5
	xsrc/external/mit/libXpm/dist/m4/libtool.m4          up to 1.1.1.7
	xsrc/external/mit/libXpm/dist/m4/ltoptions.m4        up to 1.1.1.6
	xsrc/external/mit/libXpm/dist/m4/ltsugar.m4          up to 1.1.1.6
	xsrc/external/mit/libXpm/dist/m4/ltversion.m4        up to 1.1.1.6
	xsrc/external/mit/libXpm/dist/m4/lt~obsolete.m4      up to 1.1.1.6
	xsrc/external/mit/libXpm/dist/man/Makefile.in        up to 1.1.1.8
	xsrc/external/mit/libXpm/dist/man/XpmCreateBuffer.man up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/XpmCreateData.man  up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/XpmCreateImage.man up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/XpmCreatePixmap.man up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/XpmCreateXpmImage.man up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/XpmMisc.man        up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/XpmRead.man        up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/XpmWrite.man       up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/cxpm.man           up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/sxpm.man           up to 1.1.1.2
	xsrc/external/mit/libXpm/dist/src/CrBufFrI.c         up to 1.1.1.6
	xsrc/external/mit/libXpm/dist/src/CrDatFrI.c         up to 1.1.1.7
	xsrc/external/mit/libXpm/dist/src/Makefile.am        up to 1.1.1.4
	xsrc/external/mit/libXpm/dist/src/Makefile.in        up to 1.1.1.11
	xsrc/external/mit/libXpm/dist/src/RdFToBuf.c         up to 1.1.1.8
	xsrc/external/mit/libXpm/dist/src/RdFToI.c           up to 1.1.1.8
	xsrc/external/mit/libXpm/dist/src/WrFFrI.c           up to 1.1.1.10
	xsrc/external/mit/libXpm/dist/src/XpmI.h             up to 1.1.1.7
	xsrc/external/mit/libXpm/dist/src/create.c           up to 1.8
	xsrc/external/mit/libXpm/dist/src/data.c             up to 1.1.1.7
	xsrc/external/mit/libXpm/dist/src/misc.c             up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/src/parse.c            up to 1.1.1.10
	xsrc/external/mit/libXpm/dist/src/rgb.c              up to 1.1.1.6
	xsrc/external/mit/libXpm/dist/src/scan.c             up to 1.1.1.6
	xsrc/external/mit/libXpm/dist/sxpm/Makefile.in       up to 1.1.1.11
	xsrc/external/mit/libXpm/dist/test/Makefile.in       up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/test/XpmWrite.c        up to 1.1.1.4
	xsrc/external/mit/libXpm/dist/test/pixmaps/good/chromesphere.xpm up to 1.1.1.2

Apply upstream fixes for CVE-2026-4367.
@
text
@d48 1
a48 1
.IP \fIdata\fP  1i
d50 1
a50 1
.IP \fIimage\fP 1i
d52 3
a54 4
.IP \fIinfo\fP 1i
Specifies the location of an XpmInfo structure to get and store information
(or NULL).
.IP \fIdisplay\fP 1i
d56 1
a56 1
.IP \fIimage\fP 1i
d58 1
a58 1
.IP \fIshapeimage\fP 1i
d60 1
a60 1
.IP \fIxpmimage\fP 1i
d62 1
a62 1
.IP \fIattributes\fP 1i
d67 1
d83 2
a84 3
As specified in the table (page 28),
if the data related to the attributes XpmReturnComments and XpmReturnExtensions
cannot be returned as requested because of insufficient memory storage,
d93 1
d97 2
a98 2
fills in the given XpmImage structure from the given data.
If the data does not contain valid XPM data, it returns
d103 1
a103 1
.BR XpmSuccess .
d119 1
d128 1
@


1.1.1.3
log
@initial import of libXpm-3.5.19
@
text
@d48 1
a48 1
.IP \fIdata\fP  1i
d50 1
a50 1
.IP \fIimage\fP 1i
d52 3
a54 4
.IP \fIinfo\fP 1i
Specifies the location of an XpmInfo structure to get and store information
(or NULL).
.IP \fIdisplay\fP 1i
d56 1
a56 1
.IP \fIimage\fP 1i
d58 1
a58 1
.IP \fIshapeimage\fP 1i
d60 1
a60 1
.IP \fIxpmimage\fP 1i
d62 1
a62 1
.IP \fIattributes\fP 1i
d67 1
d83 2
a84 3
As specified in the table (page 28),
if the data related to the attributes XpmReturnComments and XpmReturnExtensions
cannot be returned as requested because of insufficient memory storage,
d93 1
d97 2
a98 2
fills in the given XpmImage structure from the given data.
If the data does not contain valid XPM data, it returns
d103 1
a103 1
.BR XpmSuccess .
d119 1
d128 1
@


1.1.1.2.2.1
log
@file XpmCreateXpmImage.man was added on branch netbsd-10 on 2023-01-23 13:49:21 +0000
@
text
@d1 149
@


1.1.1.2.2.2
log
@Sync with HEAD, requested by mrg in ticket #59:

	external/mit/libXpm/dist/man/XpmAttributesSize.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreateBuffer.man up to 1.1.1.2
	external/mit/libXpm/dist/man/XpmCreateBufferFromImage.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreateBufferFromPixmap.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreateBufferFromXpmImage.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreateData.man  up to 1.1.1.2
	external/mit/libXpm/dist/man/XpmCreateDataFromImage.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreateDataFromPixmap.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreateDataFromXpmImage.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreateImage.man up to 1.1.1.2
	external/mit/libXpm/dist/man/XpmFree.man        up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreateImageFromBuffer.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreateImageFromData.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreateImageFromXpmImage.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreatePixmap.man up to 1.1.1.2
	external/mit/libXpm/dist/man/XpmCreatePixmapFromBuffer.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreatePixmapFromData.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreatePixmapFromXpmImage.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreateXpmImage.man up to 1.1.1.2
	external/mit/libXpm/dist/man/XpmCreateXpmImageFromBuffer.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreateXpmImageFromData.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreateXpmImageFromImage.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmCreateXpmImageFromPixmap.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmFreeAttributes.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmFreeXpmImage.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmFreeExtensions.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmFreeXpmInfo.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmGetErrorString.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmLibraryVersion.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmMisc.man        up to 1.1.1.2
	external/mit/libXpm/dist/man/XpmRead.man        up to 1.1.1.2
	external/mit/libXpm/dist/man/XpmReadFileToBuffer.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmReadFileToData.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmReadFileToImage.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmReadFileToPixmap.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmReadFileToXpmImage.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmWrite.man       up to 1.1.1.2
	external/mit/libXpm/dist/man/XpmWriteFileFromBuffer.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmWriteFileFromImage.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmWriteFileFromPixmap.man up to 1.1.1.1
	external/mit/libXpm/dist/man/XpmWriteFileFromXpmImage.man up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/good/BlueCurves.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/good/Dimple.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/good/Dolphins.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/good/Miniweave.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/good/Squares.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/good/Swirl.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/good/Utah-teapot.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/good/chromesphere.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/good/plaid-lisp.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/good/plaid-v1.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/good/plaid-v2.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/good/plaid-v3.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/good/xorg-bw.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/good/xorg.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/invalid/CVE-2016-10164-poc.xpm.gz.gz.gz up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/invalid/doom.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/invalid/doom2.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/invalid/invalid-type.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/invalid/no-contents.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/invalid/unending-comment-c.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/invalid/zero-width-v1.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/invalid/zero-width.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/pixmaps/no-mem/oversize.xpm up to 1.1.1.1
	external/mit/libXpm/dist/test/CompareXpmImage.h up to 1.1.1.1
	external/mit/libXpm/dist/test/Makefile.am       up to 1.1.1.1
	external/mit/libXpm/dist/test/Makefile.in       up to 1.1.1.1
	external/mit/libXpm/dist/test/TestAllFiles.h    up to 1.1.1.1
	external/mit/libXpm/dist/test/XpmCreate.c       up to 1.1.1.1
	external/mit/libXpm/dist/test/XpmMisc.c         up to 1.1.1.1
	external/mit/libXpm/dist/test/XpmRead.c         up to 1.1.1.1
	external/mit/libXpm/dist/test/XpmWrite.c        up to 1.1.1.1
	external/mit/libXpm/dist/test/tap-test          up to 1.1.1.1
	external/mit/libXpm/dist/tap-driver.sh          up to 1.1.1.1
	external/mit/libXpm/dist/test-driver            up to 1.1.1.1
	external/mit/libXpm/dist/AUTHORS                up to 1.1.1.2
	external/mit/libXpm/dist/COPYING                up to 1.1.1.4
	external/mit/libXpm/dist/ChangeLog              up to 1.1.1.9
	external/mit/libXpm/dist/Makefile.am            up to 1.1.1.6
	external/mit/libXpm/dist/Makefile.in            up to 1.1.1.9
	external/mit/libXpm/dist/README.md              up to 1.1.1.3
	external/mit/libXpm/dist/aclocal.m4             up to 1.1.1.9
	external/mit/libXpm/dist/compile                up to 1.1.1.4
	external/mit/libXpm/dist/config.guess           up to 1.1.1.7
	external/mit/libXpm/dist/config.h.in            up to 1.1.1.6
	external/mit/libXpm/dist/config.sub             up to 1.1.1.8
	external/mit/libXpm/dist/configure              up to 1.1.1.9
	external/mit/libXpm/dist/configure.ac           up to 1.1.1.9
	external/mit/libXpm/dist/depcomp                up to 1.1.1.6
	external/mit/libXpm/dist/install-sh             up to 1.1.1.6
	external/mit/libXpm/dist/ltmain.sh              up to 1.1.1.9
	external/mit/libXpm/dist/missing                up to 1.1.1.7
	external/mit/libXpm/dist/cxpm/Makefile.in       up to 1.1.1.9
	external/mit/libXpm/dist/cxpm/cxpm.c            up to 1.1.1.5
	external/mit/libXpm/dist/doc/Makefile.in        up to 1.1.1.7
	external/mit/libXpm/dist/doc/README.MSW         up to 1.1.1.3
	external/mit/libXpm/dist/doc/README.html        up to 1.1.1.3
	external/mit/libXpm/dist/include/Makefile.in    up to 1.1.1.7
	external/mit/libXpm/dist/m4/libtool.m4          up to 1.1.1.4
	external/mit/libXpm/dist/man/Makefile.am        up to 1.1.1.2
	external/mit/libXpm/dist/man/Makefile.in        up to 1.1.1.6
	external/mit/libXpm/dist/src/Makefile.in        up to 1.1.1.9
	external/mit/libXpm/dist/src/RdFToI.c           up to 1.1.1.5
	external/mit/libXpm/dist/src/WrFFrI.c           up to 1.1.1.7
	external/mit/libXpm/dist/src/create.c           up to 1.5
	external/mit/libXpm/dist/src/data.c             up to 1.1.1.5
	external/mit/libXpm/dist/src/hashtab.c          up to 1.1.1.4
	external/mit/libXpm/dist/src/parse.c            up to 1.1.1.8
	external/mit/libXpm/dist/src/rgbtab.h           up to 1.1.1.2
	external/mit/libXpm/dist/src/scan.c             up to 1.1.1.5
	external/mit/libXpm/dist/sxpm/Makefile.in       up to 1.1.1.9

Upstream fixes for CVE-2022-46285, CVE-2022-44617, and CVE-2022-4883.
@
text
@a0 149
.\" Copyright (C) 1989-95 GROUPE BULL
.\"
.\" 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
.\" GROUPE BULL 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 name of GROUPE BULL shall not be
.\" used in advertising or otherwise to promote the sale, use or other dealings
.\" in this Software without prior written authorization from GROUPE BULL.
.\"
.hw XImage
.TH  XpmCreateXpmImage __libmansuffix__ __xorgversion__ "libXpm functions"
.SH NAME
XpmCreateXpmImage \- create an Xpm image
.SH SYNOPSIS
.nf
.HP
.BI "int XpmCreateXpmImageFromData(char **" data ", XpmImage *" image ,
.BI "XpmInfo *" info );
.HP
.BI "int XpmCreateXpmImageFromBuffer(char *" buffer ", XpmImage *" image ,
.BI "XpmInfo *" info );
.HP
.BI "int XpmCreateXpmImageFromImage(Display *" display ,
.BI "XImage *" image ", XImage *" shapeimage ,
.BI "XpmImage *" xpmimage ", XpmAttributes *" attributes );
.HP
.BI "int XpmCreateXpmImageFromPixmap(Display *" display ,
.BI "Pixmap *" pixmap ", Pixmap *" shapemask ,
.BI "XpmImage *" xpmimage ", XpmAttributes *" attributes );
.fi

.SH ARGUMENTS

.IP \fIdata\fP  li
Specifies the location of the data.
.IP \fIimage\fP li
Specifies the image structure location.
.IP \fIinfo\fP li
Specifies the location of an XpmInfo structure to get and store information (or NULL).
.IP \fIdisplay\fP li
Specifies the connection to the X server.
.IP \fIimage\fP li
Specifies the X image used as the source.
.IP \fIshapeimage\fP li
Specifies the shape mask image, if any.
.IP \fIxpmimage\fP li
Specifies the XPM image which is created.
.IP \fIattributes\fP li
Specifies the location of a structure containing information (or NULL).

.SH DESCRIPTION
.SS XpmCreateXpmImageFromBuffer
.PP
To create an XpmImage from an XPM buffer, use
.BR XpmCreateXpmImageFromBuffer ().
The
.BR XpmCreateXpmImageFromBuffer ()
function reads the given buffer to fill in the given XpmImage structure.
If the buffer does not contain valid XPM data, it returns
.BR XpmFileInvalid .
If insufficient working storage is allocated, it returns
.BR XpmNoMemory .
On success it returns
.BR XpmSuccess .
If the passed XpmInfo structure pointer is not NULL,
.BR XpmCreateXpmImageFromBuffer ()
looks for the following attributes: XpmReturnComments and XpmReturnExtensions,
and sets possibly the XpmHotspot attribute when returning.
As specified in the table (page 28), if the data related to the attributes XpmReturnComments and
XpmReturnExtensions cannot be returned as requested because of insufficient memory storage,
.BR XpmCreateXpmImageFromBuffer ()
will change the valuemask to mention this and will try to continue.
So the caller should check on this before accessing requested data.
.PP
Note: The valuemask of the passed XpmInfo structure must be set to some valid
value, at least zero, otherwise unpredictable errors can occur.

.SS XpmCreateXpmImageFromData
.PP
To create an XpmImage from an XPM data, use
.BR XpmCreateXpmImageFromData ().
.BR XpmCreateXpmImageFromData ()
fills in the given XpmImage structure from the given data. If the data does not
contain valid XPM data, it returns
.BR XpmFileInvalid .
If insufficient working storage is allocated, it returns
.BR XpmNoMemory .
On success it returns
.BR XpmSuccess.
If the passed XpmInfo structure pointer is not NULL,
.BR XpmCreateXpmImageFromData ()
looks for the following attributes:
XpmReturnExtensions, and sets possibly the XpmHotspot attribute when returning.
As specified in the table (page 28), if the data related to the attribute
XpmReturnExtensions cannot be returned as requested because of
insufficient memory storage,
.BR XpmCreateXpmImageFromData ()
will change the valuemask to mention this and will try to continue.
So the caller should check on this before accessing requested data.
.PP
Note: The valuemask of the passed XpmInfo structure must be set to some valid
value, at least zero, otherwise unpredictable errors can occur.

.SS XpmCreateXpmImageFromImage
.PP
To create an XpmImage from an XImage, use
.BR XpmCreateXpmImageFromImage ().
From the given X images and XpmAttributes if not NULL,
.BR XpmCreateXpmImageFromImage ()
creates an XpmImage following the same mechanism as
.BR XpmWriteFileFromImage (__libmansuffix__).

.SS XpmCreateXpmImageFromPixmap
.PP
To create an XpmImage from a Pixmap, use
.BR XpmCreateXpmImageFromPixmap ().
From the given pixmaps and XpmAttributes if not NULL,
.BR XpmCreateXpmImageFromPixmap ()
gets the related XImages by calling XGetImage, then it gives them to
.BR XpmCreateXpmImageFromImage ()
to create an XpmImage which is returned to
.IR xpmimage .
Finally it destroys the created X images using
.BR XDestroyImage (__libmansuffix__).


.SH "SEE ALSO"
.ad l
.nh
.BR XpmFreeXpmImage (__libmansuffix__),
.BR XpmReadFileToBuffer (__libmansuffix__),
.BR XpmReadFileToData (__libmansuffix__),
.BR XpmReadFileToImage (__libmansuffix__),
.BR XpmReadFileToPixmap (__libmansuffix__),
.BR XpmWriteFileFromImage (__libmansuffix__)
@


1.1.1.2.2.3
log
@Pull up the following, requested by mrg in ticket #1256:

	xsrc/external/mit/libXpm/dist/doc/README.AMIGA       delete
	xsrc/external/mit/libXpm/dist/doc/README.MSW         delete
	xsrc/external/mit/libXpm/dist/src/amigax.c           delete
	xsrc/external/mit/libXpm/dist/src/amigax.h           delete
	xsrc/external/mit/libXpm/dist/src/rgbtab.h           delete
	xsrc/external/mit/libXpm/dist/src/simx.c             delete
	xsrc/external/mit/libXpm/dist/src/simx.h             delete
	xsrc/external/mit/libXpm/dist/ChangeLog              up to 1.1.1.12
	xsrc/external/mit/libXpm/dist/Makefile.in            up to 1.1.1.11
	xsrc/external/mit/libXpm/dist/aclocal.m4             up to 1.1.1.12
	xsrc/external/mit/libXpm/dist/compile                up to 1.1.1.6
	xsrc/external/mit/libXpm/dist/config.guess           up to 1.1.1.10
	xsrc/external/mit/libXpm/dist/config.h.in            up to 1.1.1.9
	xsrc/external/mit/libXpm/dist/config.sub             up to 1.1.1.11
	xsrc/external/mit/libXpm/dist/configure              up to 1.1.1.12
	xsrc/external/mit/libXpm/dist/configure.ac           up to 1.1.1.12
	xsrc/external/mit/libXpm/dist/depcomp                up to 1.1.1.8
	xsrc/external/mit/libXpm/dist/install-sh             up to 1.1.1.8
	xsrc/external/mit/libXpm/dist/ltmain.sh              up to 1.1.1.12
	xsrc/external/mit/libXpm/dist/missing                up to 1.1.1.9
	xsrc/external/mit/libXpm/dist/tap-driver.sh          up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/test-driver            up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/cxpm/Makefile.in       up to 1.1.1.11
	xsrc/external/mit/libXpm/dist/doc/Makefile.am        up to 1.1.1.2
	xsrc/external/mit/libXpm/dist/doc/Makefile.in        up to 1.1.1.9
	xsrc/external/mit/libXpm/dist/include/Makefile.in    up to 1.1.1.9
	xsrc/external/mit/libXpm/dist/include/X11/xpm.h      up to 1.1.1.5
	xsrc/external/mit/libXpm/dist/m4/libtool.m4          up to 1.1.1.7
	xsrc/external/mit/libXpm/dist/m4/ltoptions.m4        up to 1.1.1.6
	xsrc/external/mit/libXpm/dist/m4/ltsugar.m4          up to 1.1.1.6
	xsrc/external/mit/libXpm/dist/m4/ltversion.m4        up to 1.1.1.6
	xsrc/external/mit/libXpm/dist/m4/lt~obsolete.m4      up to 1.1.1.6
	xsrc/external/mit/libXpm/dist/man/Makefile.in        up to 1.1.1.8
	xsrc/external/mit/libXpm/dist/man/XpmCreateBuffer.man up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/XpmCreateData.man  up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/XpmCreateImage.man up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/XpmCreatePixmap.man up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/XpmCreateXpmImage.man up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/XpmMisc.man        up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/XpmRead.man        up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/XpmWrite.man       up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/cxpm.man           up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/man/sxpm.man           up to 1.1.1.2
	xsrc/external/mit/libXpm/dist/src/CrBufFrI.c         up to 1.1.1.6
	xsrc/external/mit/libXpm/dist/src/CrDatFrI.c         up to 1.1.1.7
	xsrc/external/mit/libXpm/dist/src/Makefile.am        up to 1.1.1.4
	xsrc/external/mit/libXpm/dist/src/Makefile.in        up to 1.1.1.11
	xsrc/external/mit/libXpm/dist/src/RdFToBuf.c         up to 1.1.1.8
	xsrc/external/mit/libXpm/dist/src/RdFToI.c           up to 1.1.1.8
	xsrc/external/mit/libXpm/dist/src/WrFFrI.c           up to 1.1.1.10
	xsrc/external/mit/libXpm/dist/src/XpmI.h             up to 1.1.1.7
	xsrc/external/mit/libXpm/dist/src/create.c           up to 1.8
	xsrc/external/mit/libXpm/dist/src/data.c             up to 1.1.1.7
	xsrc/external/mit/libXpm/dist/src/misc.c             up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/src/parse.c            up to 1.1.1.10
	xsrc/external/mit/libXpm/dist/src/rgb.c              up to 1.1.1.6
	xsrc/external/mit/libXpm/dist/src/scan.c             up to 1.1.1.6
	xsrc/external/mit/libXpm/dist/sxpm/Makefile.in       up to 1.1.1.11
	xsrc/external/mit/libXpm/dist/test/Makefile.in       up to 1.1.1.3
	xsrc/external/mit/libXpm/dist/test/XpmWrite.c        up to 1.1.1.4
	xsrc/external/mit/libXpm/dist/test/pixmaps/good/chromesphere.xpm up to 1.1.1.2

Apply upstream fixes for CVE-2026-4367.
@
text
@d48 1
a48 1
.IP \fIdata\fP  1i
d50 1
a50 1
.IP \fIimage\fP 1i
d52 3
a54 4
.IP \fIinfo\fP 1i
Specifies the location of an XpmInfo structure to get and store information
(or NULL).
.IP \fIdisplay\fP 1i
d56 1
a56 1
.IP \fIimage\fP 1i
d58 1
a58 1
.IP \fIshapeimage\fP 1i
d60 1
a60 1
.IP \fIxpmimage\fP 1i
d62 1
a62 1
.IP \fIattributes\fP 1i
d67 1
d83 2
a84 3
As specified in the table (page 28),
if the data related to the attributes XpmReturnComments and XpmReturnExtensions
cannot be returned as requested because of insufficient memory storage,
d93 1
d97 2
a98 2
fills in the given XpmImage structure from the given data.
If the data does not contain valid XPM data, it returns
d103 1
a103 1
.BR XpmSuccess .
d119 1
d128 1
@


