summaryrefslogtreecommitdiff
path: root/lib/libXpm/ChangeLog
blob: 047b81dd0f4b27de592401e0c028f3c3f541975c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
commit a154f12b6e56f131bd5880fc96f11615ff940b29
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Tue Oct 3 08:43:57 2023 -0700

    libXpm 3.5.17
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 91f887b41bf75648df725a4ed3be036da02e911e
Author: Yair Mizrahi <yairm@jfrog.com>
Date:   Thu Sep 7 16:59:07 2023 -0700

    Avoid CVE-2023-43787 (integer overflow in XCreateImage)
    
    This doesn't fix the CVE - that has to happen in libX11, this
    just tries to avoid triggering it from libXpm, and saves time
    in not pretending we can successfully create an X Image for
    which the width * depth would overflow the signed int used to
    store the bytes_per_line value.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 00348988396c88150f6ddfea3d3195cbf01d60c2
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Thu Sep 7 16:55:25 2023 -0700

    test: Add test case for CVE-2023-43787 (integer overflow in XCreateImage)
    
    Provided by Yair Mizrahi of the JFrog Vulnerability Research team
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 84fb14574c039f19ad7face87eb9acc31a50701c
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Wed Sep 6 17:34:33 2023 -0700

    Avoid CVE-2023-43786: stack exhaustion in XPutImage()
    
    This doesn't fix the CVE - that has to happen in libX11, this
    just tries to avoid triggering it from libXpm, and saves time
    in not pretending we can successfully create an X11 pixmap with
    dimensions larger than the unsigned 16-bit integers used in the
    X11 protocol for the dimensions.
    
    Reported by Yair Mizrahi of the JFrog Vulnerability Research team
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit edb97396620f019f8d2e707ad3fbaf6bbbd5ed36
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Tue Sep 5 17:01:58 2023 -0700

    test: Add test case for CVE-2023-43786 (stack exhaustion in PutImage)
    
    Provided by Yair Mizrahi of the JFrog Vulnerability Research team
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 7e21cb63b9a1ca760a06cc4cd9b19bbc3fcd8f51
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Apr 29 18:30:34 2023 -0700

    Fix CVE-2023-43789: Out of bounds read on XPM with corrupted colormap
    
    Found with clang's libfuzzer
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit a21e7bcf0ca3d8c1605b2721a545440260870438
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Apr 29 18:29:29 2023 -0700

    test: Add test case for CVE-2023-43789 (corrupt colormap info)
    
    Generated by clang's -fsanitize/libfuzzer
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 2fa554b01ef6079a9b35df9332bdc4f139ed67e0
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Apr 29 17:50:39 2023 -0700

    Fix CVE-2023-43788: Out of bounds read in XpmCreateXpmImageFromBuffer
    
    When the test case for CVE-2022-46285 was run with the Address Sanitizer
    enabled, it found an out-of-bounds read in ParseComment() when reading
    from a memory buffer instead of a file, as it continued to look for the
    closing comment marker past the end of the buffer.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 7f60f3428aa21d5d643eb75bfd9417cfabf48970
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Tue Sep 5 17:35:55 2023 -0700

    Explicitly mark non-static symbols as export or hidden
    
    Hides private API from external linkage
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 2695ccda5df58af60ebb15bb17f1570437554adb
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat May 20 13:47:52 2023 -0700

    test: use g_pattern_spec_match_string if available
    
    g_pattern_spec_match_string was introduced in glib 2.70 to replace
    g_pattern_match_string which is deprecated in glib 2.70 and later.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 4524c578581b427145ae136844fc655a89e94777
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Mon Mar 27 18:35:46 2023 -0700

    Set close-on-exec when opening files
    
    Relies on platforms with O_CLOEXEC support following POSIX requirement
    to not copy the close-on-exec flag to the new fd in dup2(), but to leave
    it unset instead, since that's how fd's are passed to child processes
    to handled compressed files.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit f131de92d6c4e2f62934e85b012287276ecf009c
Author: Matt Turner <mattst88@gmail.com>
Date:   Mon Apr 17 15:22:35 2023 -0400

    libXpm 3.5.16
    
    Signed-off-by: Matt Turner <mattst88@gmail.com>

commit 8b9c4e4c5d278409dc41d19f0c8a8940403cd5c7
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Mon Mar 27 18:21:12 2023 -0700

    xpmReadRgbNames: constify filename argument
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit fd620b4f6c59674090b956a9d9e188a1250a4663
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Mon Mar 27 18:15:41 2023 -0700

    test: Add simple test cases for functions in src/rgb.c
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit e01d691aa684d0d1247f772b7c537ec3254bb9bc
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Mon Mar 27 18:03:13 2023 -0700

    test: Use PACKAGE_BUGREPORT instead of hard-coded URL's
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 92030dd4c221e8043521ae4dc9d32d50e6ff44c4
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Feb 12 13:22:57 2023 -0800

    parse.c: remove unused function xstrlcpy()
    
    parse.c:74:1: warning: unused function 'xstrlcpy' [-Wunused-function]
    xstrlcpy(char *dst, const char *src, size_t dstsize)
    ^
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 8e0e63519069bed43b3bf1ce1f11fd0cd516d3e4
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Feb 12 10:51:46 2023 -0800

    parse.c: Wrap FREE_CIDX definition in do { ... } while(0)
    
    Makes it match the definition in create.c and eliminates
    clang warnings:
    
    create.c:2409:13: warning: empty expression statement has no effect;
     remove unnecessary ';' to silence this warning [-Wextra-semi-stmt]
                            FREE_CIDX;
                                     ^
    create.c:2440:17: warning: empty expression statement has no effect;
     remove unnecessary ';' to silence this warning [-Wextra-semi-stmt]
                                FREE_CIDX;
                                         ^
    create.c:2444:13: warning: empty expression statement has no effect;
     remove unnecessary ';' to silence this warning [-Wextra-semi-stmt]
                            FREE_CIDX;
                                     ^
    create.c:2449:15: warning: empty expression statement has no effect;
     remove unnecessary ';' to silence this warning [-Wextra-semi-stmt]
                FREE_CIDX;
                         ^
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 25616112983cd3f8bfe5379771b5bfd63b3c3621
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Feb 12 09:23:09 2023 -0800

    XpmCreateDataFromXpmImage: Fix misleading indentation
    
    CrDatFrI.c: In function ‘XpmCreateDataFromXpmImage’:
    CrDatFrI.c:245:13: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
      245 |             if (header[l])
          |             ^~
    In file included from CrDatFrI.c:40:
    XpmI.h:80:22: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
       80 | #define XpmFree(ptr) free(ptr)
          |                      ^~~~
    CrDatFrI.c:247:17: note: in expansion of macro ‘XpmFree’
      247 |                 XpmFree(header);
          |                 ^~~~~~~
    CrDatFrI.c: In function ‘CreateColors’:
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 45d8f4f20665c77dd1924b78559fb2494a77ad7a
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Feb 12 09:20:44 2023 -0800

    Require LT_INIT from libtool 2 instead of deprecated AC_PROG_LIBTOOL
    
    AC_PROG_LIBTOOL was replaced by LT_INIT in libtool 2 in 2008,
    so it's time to rely on it.
    
    configure.ac:14: warning: The macro `AC_PROG_LIBTOOL' is obsolete.
    configure.ac:14: You should run autoupdate.
    m4/libtool.m4:100: AC_PROG_LIBTOOL is expanded from...
    configure.ac:14: the top level
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit c52082c6e4811958dd741d67e1178b4e36a09923
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Feb 5 12:14:43 2023 -0800

    open-zfile: Make compress & uncompress commands optional
    
    If compress is not found, we disable writing to .Z files,
    but leave the rest of the compression code active.
    
    If uncompress is not found, we use gzip to read .Z files.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 77e3b389eb92b8d8f94f5b83c1d3d7cd4db5b037
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Mon Jan 23 19:57:28 2023 +1000

    Fix a memleak in ParsePixels error code path
    
    In this particular error path we have already allocated cidx[0..256]
    with 256 instances of fresh and juicy memory. Freeing that is annoying,
    but luckily there's a helpful FREE_CIDX macro that does exactly that.
    
    Fixes f80fa6a:
      Fix CVE-2022-44617: Runaway loop with width of 0 and enormous height
    
    Found by covscan
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

commit 71d7149cb356b96cc83e2ec95d06df4022039e2c
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Thu Jan 19 12:16:26 2023 -0800

    configure: correct error message to suggest --disable-open-zfile
    
    When one of the compression helper programs is not found, the message
    suggesting how to compile without it should say --disable-open-zfile,
    not --disable-stat-zfile.
    
    Fixes: 515294b ("Fix CVE-2022-4883: compression commands depend on $PATH")
    Closes: #4
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 9bc32a1a9c788eed2982d3fd35f2295a95af3817
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Thu Jan 19 12:06:38 2023 -0800

    gitlab CI: build with each of --enable-open-zfile & --disable-open-zfile
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit d9cbea1c6bc2b7f2c11964da0d437130bed82279
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Tue Jan 17 18:41:32 2023 -0800

    test: skip compressed file tests when --disable-open-zfile is used
    
    Reported-by: T.J. Townsend
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit ddd8339e262cbb7b25993599299ad40e0c95ccf6
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Tue Jan 17 08:19:26 2023 -0800

    libXpm 3.5.15
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 8178eb0834d82242e1edbc7d4fb0d1b397569c68
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Mon Jan 16 19:44:52 2023 +1000

    Use gzip -d instead of gunzip
    
    GNU gunzip [1] is a shell script that exec's `gzip -d`. Even if we call
    /usr/bin/gunzip with the correct built-in path, the actual gzip call
    will use whichever gzip it finds first, making our patch pointless.
    
    Fix this by explicitly calling gzip -d instead.
    
    https://git.savannah.gnu.org/cgit/gzip.git/tree/gunzip.in
    
    [Part of the fix for CVE-2022-4883]
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

commit c5ab17bcc34914c0b0707d2135dbebe9a367c5f0
Author: Matthieu Herrb <matthieu@herrb.eu>
Date:   Thu Jan 12 15:05:39 2023 +1000

    Prevent a double free in the error code path
    
    xpmParseDataAndCreate() calls XDestroyImage() in the error path.
    Reproducible with sxpm "zero-width.xpm", that file is in the test/
    directory.
    
    The same approach is needed in the bytes_per_line == 0 condition though
    here it just plugs a memory leak.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 515294bb8023a45ff916696d0a14308ff4f3a376
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Fri Jan 6 12:50:48 2023 -0800

    Fix CVE-2022-4883: compression commands depend on $PATH
    
    By default, on all platforms except MinGW, libXpm will detect if a
    filename ends in .Z or .gz, and will when reading such a file fork off
    an uncompress or gunzip command to read from via a pipe, and when
    writing such a file will fork off a compress or gzip command to write
    to via a pipe.
    
    In libXpm 3.5.14 or older these are run via execlp(), relying on $PATH
    to find the commands.  If libXpm is called from a program running with
    raised privileges, such as via setuid, then a malicious user could set
    $PATH to include programs of their choosing to be run with those
    privileges.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit f80fa6ae47ad4a5beacb287c0030c9913b046643
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Jan 7 12:44:28 2023 -0800

    Fix CVE-2022-44617: Runaway loop with width of 0 and enormous height
    
    When reading XPM images from a file with libXpm 3.5.14 or older, if a
    image has a width of 0 and a very large height, the ParsePixels() function
    will loop over the entire height calling getc() and ungetc() repeatedly,
    or in some circumstances, may loop seemingly forever, which may cause a
    denial of service to the calling program when given a small crafted XPM
    file to parse.
    
    Closes: #2
    
    Reported-by: Martin Ettl <ettl.martin78@googlemail.com>
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit f7fbbb92f6d383b21dd1587c3703a5de37c625b5
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Tue Jan 3 17:23:58 2023 -0800

    test: add test cases for CVE-2022-44617 (zero-width w/enormous height)
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit a3a7c6dcc3b629d765014816c566c63165c63ca8
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Dec 17 12:23:45 2022 -0800

    Fix CVE-2022-46285: Infinite loop on unclosed comments
    
    When reading XPM images from a file with libXpm 3.5.14 or older, if a
    comment in the file is not closed (i.e. a C-style comment starts with
    "/*" and is missing the closing "*/"), the ParseComment() function will
    loop forever calling getc() to try to read the rest of the comment,
    failing to notice that it has returned EOF, which may cause a denial of
    service to the calling program.
    
    Reported-by: Marco Ivaldi <raptor@0xdeadbeef.info>
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit f7a167a48a950b89b91f5123a0ec8d9a7cb97495
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Dec 17 12:18:24 2022 -0800

    test: add test case for CVE-2022-46285 (unclosed comments)
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 0ff2c6af823ce7712c06150c43c9b403846a035f
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Jan 7 15:43:20 2023 -0800

    cxpm: getc/ungetc wrappers should not adjust position when c == EOF
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 501494c6c68a84114fdd0b44d4b67ef9cde776c9
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Jan 7 13:39:56 2023 -0800

    test: Add unit tests using glib framework
    
    Includes rudimentary tests for XpmReadFileToXpmImage, XpmReadFileToData,
    XpmReadFileToBuffer, XpmCreateXpmImageFromData, XpmCreateXpmImageFromBuffer,
    XpmWriteFileFromXpmImage, XpmWriteFileFromData, XpmWriteFileFromBuffer,
    XpmAttributesSize, XpmGetErrorString, XpmLibraryVersion
    
    Includes test cases for CVE-2004-0687
    
    Tests .Z and .gz files if --enable-open-zfile is active
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 4841039e5385f264d12757903894f47c64f59361
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Thu Jan 5 15:42:36 2023 -0800

    configure: add --disable-open-zfile instead of requiring -DNO_ZPIPE
    
    Documents the two compression options in the README, makes their
    configure options reflect the interdependency of their implementation,
    and makes the configure script report their configuration.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit aef0c8dd129838ac35b3cf8a7cdf04c7fd67dff1
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Jan 1 14:19:17 2023 -0800

    man pages: Apply standard man page style/formatting
    
    Function & macro names in bold, argument names in italics.
    
    In the man page body, bold function names followed by plain ()
    for functions defined in this page, plain (3) for functions defined
    in other man pages.
    
    New paragraphs start with .PP, not just a blank line.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 5d55a0be3f8a8d3e53c65c286878fc3224fce135
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Jan 1 10:48:01 2023 -0800

    man pages: Replace "See Also" entries with more useful ones
    
    "See Also" entries in man pages should list other man pages to
    look at, not the alternate names for the current man page.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 392cb8fb444ae632176829076f412cb4029dbdbc
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Jan 1 10:21:38 2023 -0800

    man pages: Fix typos and other minor editing
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 08bc174f28af028b6ebaa9edeccd3ff56c396e92
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Nov 19 12:23:53 2022 -0800

    libXpm 3.5.14
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit f0857c0de206e90777a5321cce9602083b283080
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Aug 27 10:06:23 2022 -0700

    man pages: Correct Copyright/License notices
    
    Since the text was copied from doc/xpm.PS.gz, the copyright and license
    notices need to be copied from there as well.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit deb81a9a210527b0a00f002b1796e5e21e492879
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Fri Aug 26 18:39:17 2022 -0700

    man pages: Fix typos
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 2d5fa4c2079494f502f9a576d749fa1e205f2144
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Fri Aug 26 18:29:05 2022 -0700

    man pages: Add missing word 'function' where needed
    
    A number of instances of 'The Xpm... function' were missing the word
    "function", so read awkwardly.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 2b7357e83e38e2a860687ee4150ef60bd6c0a47f
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Fri Aug 26 18:16:42 2022 -0700

    man pages: Make function synopses more consistent with other pages
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit fb8590c9c57d661ec4a29da243e05b9d87b999d3
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Fri Aug 26 18:06:51 2022 -0700

    man pages: Fix shadow man pages
    
    Shadow man pages have a .so line that needs to list the file to be
    shown, not the name of the shadow page.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit bfaebfdcc92433a8b78c004de4bb3c5a8a545e75
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Fri Aug 26 17:49:25 2022 -0700

    man pages: Make file names consistent with their displayed names
    
    Lets users view the pages using the name displayed on the pages
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 7a138a5278890e122731eb94b8e5a7d6ef543243
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Jul 17 16:29:35 2022 -0700

    gitlab CI: add a basic build test
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 3433f4334db7c30864c112639a929c5ae8bd3c3b
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Jul 17 16:27:01 2022 -0700

    man: strip trailing whitespace
    
    git diff -w shows no changes from this commit
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 961245427855ab6d30a5fa2dbb98aaffa571d728
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Jul 17 16:25:38 2022 -0700

    Fix spelling/wording issues
    
    Found by using:
        codespell --builtin clear,rare,usage,informal,code,names
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit fa16fbda9c90f932a74cd80c90eee88432d987d7
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Jul 17 16:23:04 2022 -0700

    Build xz tarballs instead of bzip2
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 83e5427f9cd5d32602bcf647547e0030ea361f00
Author: Walter Harms <wharms@bfs.de>
Date:   Wed Dec 25 20:40:04 2019 +0100

    update man pages
    
    move from k&r to ansi prototypes
    improve nroff coding
    
    Signed-off-by: Walter Harms <wharms@bfs.de>

commit e48e649eb04f95ffbdbd0c8bb77d7131142f5e9a
Author: Walter Harms <wharms@bfs.de>
Date:   Tue Dec 24 17:20:09 2019 +0100

    add man pages based on doc/xpm.PS
    
    More or less hand crafted man pages based on xpm.PS.
    Prototypes are still in K&R, see also is a dud
    
    Signed-off-by: Walter Harms <wharms@bfs.de>

commit b0fc485495a694816d76a43978e2cfd5575c554d
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Fri Dec 13 14:25:06 2019 +1000

    libXpm 3.5.13
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

commit 5817fd4ac5308fe7c23301c652f174997009b7d5
Author: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Date:   Wed Dec 4 11:17:21 2019 +0100

    parse: simplify error paths in xpmParseColors()
    
    We introduced a new label to handle the errors, we should use it
    for the rest of the function.
    
    Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>

commit e1d8f704d52f70680869b7aae1da0ad2382db363
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Thu Dec 5 06:17:00 2019 +1000

    parse: avoid memleak on error with STRLCAT/STRLCPY
    
    The original macro might exit the function without freeing `colorTable`.
    
    Move the macros into a slightly less awful helper function and use goto
    to clean up in case of error.
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

commit 7af7c5e275b69daedee3696bee1e880586f30373
Author: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Date:   Fri May 3 07:59:09 2019 +0200

    Allow usage when fork() is not available
    
    When fork() is not available, we need to define NO_ZPIPE so that
    libXpm doesn't try to fork/exec to use a pipe to uncompress compressed
    .xpm files. There is obviously a loss of functionality, but loading
    uncompressed .xpm files should continue to work.
    
    Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
    [Retrieved from:
    https://git.buildroot.net/buildroot/tree/package/x11r7/xlib_libXpm/0001-fork-check.patch]
    Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>

commit 0be2c6712728cea1fa1bcc640e564c45c2c82e37
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Fri Dec 7 19:47:06 2018 -0800

    Update configure.ac bug URL for gitlab migration
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit c9f8faf1c05fb92abc6c5b1db5e45eb1a7942875
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Mon Nov 19 22:30:30 2018 -0800

    Update README for gitlab migration
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 73a1e769dcf2a603fc63f5c36626c1c6db815f46
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Sep 30 15:09:29 2018 -0700

    After fdopen(), use fclose() instead of close() in error path
    
    Found by Oracle's Parfait 2.2 static analyzer:
    
    Error: File Leak
       File Leak [file-ptr-leak]:
          Leaked File fp
            at line 94 of lib/libXpm/src/RdFToBuf.c in function 'XpmReadFileToBuffer
    '.
              fp initialized at line 86 with fdopen
              fp leaks when len < 0 at line 92.
    
    Introduced-by: commit 8b3024e6871ce50b34bf2dff924774bd654703bc
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>

commit bc1b4962f048cfa33b76be46493e10cfb256fe98
Author: Dave Bodenstab <the.tick@gmx.com>
Date:   Wed Feb 22 12:04:54 2012 +0000

    Windows build fixes
    
    https://bugs.freedesktop.org/show_bug.cgi?id=46475
    https://bugs.freedesktop.org/attachment.cgi?id=57479
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit e42ca7b484418b169fd19a4c68e23ad2a6ec7a11
Author: Mihail Konev <k.mvc@ya.ru>
Date:   Thu Jan 26 13:52:49 2017 +1000

    autogen: add default patch prefix
    
    Signed-off-by: Mihail Konev <k.mvc@ya.ru>

commit ed8f9c2e8b635eb63497c48b24a056f9e6f50609
Author: Emil Velikov <emil.l.velikov@gmail.com>
Date:   Mon Mar 9 12:00:52 2015 +0000

    autogen.sh: use quoted string variables
    
    Place quotes around the $srcdir, $ORIGDIR and $0 variables to prevent
    fall-outs, when they contain space.
    
    Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

commit 644d7c595ba29fb368666fb497e1e14a92a65a77
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Tue Jan 24 10:32:07 2017 +1000

    autogen.sh: use exec instead of waiting for configure to finish
    
    Syncs the invocation of configure with the one from the server.
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    Reviewed-by: Emil Velikov <emil.velikov@collabora.com>

commit 1fab5e81fd761f628fb68d22934615536dbd0220
Author: Matthieu Herrb <matthieu@herrb.eu>
Date:   Mon Dec 12 23:09:52 2016 +0100

    libXpm 3.5.12
    
    Signed-off-by: Matthieu Herrb <matthieu@herrb.eu>

commit 8b3024e6871ce50b34bf2dff924774bd654703bc
Author: Tobias Stoeckmann <tobias@stoeckmann.org>
Date:   Sun Dec 11 13:50:05 2016 +0100

    Handle size_t in file/buffer length
    
    The values of file sizes and buffer sizes can exceed current limits.
    Therefore, use proper variable types for these operations.
    
    Signed-off-by: Matthieu Herrb <matthieu@herrb.eu>
    Reviewed-by: Matthieu Herrb <matthieu@herrb.eu>

commit d1167418f0fd02a27f617ec5afd6db053afbe185
Author: Tobias Stoeckmann <tobias@stoeckmann.org>
Date:   Thu Dec 8 17:07:55 2016 +0100

    Avoid OOB write when handling malicious XPM files.
    
    libXpm uses unsigned int to store sizes, which fits size_t on 32 bit
    systems, but leads to issues on 64 bit systems.
    
    On 64 bit systems, it is possible to overflow 32 bit integers while
    parsing XPM extensions in a file.
    
    At first, it looks like a rather unimportant detail, because nobody
    will seriously open a 4 GB file. But unfortunately XPM has support for
    gzip compression out of the box. An attacker can therefore craft a
    compressed file which is merely 4 MB in size, which makes an attack
    much for feasable.
    
    Signed-off-by: Matthieu Herrb <matthieu@herrb.eu>
    Reviewed-by: Matthieu Herrb <matthieu@herrb.eu>

commit 1ec33006a9e4214b390045b820464e24297dc6c0
Author: Tobias Stoeckmann <tobias@stoeckmann.org>
Date:   Tue Dec 6 22:34:33 2016 +0100

    Gracefully handle EOF while parsing files.
    
    libXpm does not properly handle EOF conditions when xpmGetC is called
    multiple times in a row to construct a string. Instead of checking
    its return value for EOF, the result is automatically casted into a
    char and attached to a string.
    
    By carefully crafting the color table in an XPM file, it is possible to
    send a libXpm program like gimp into a very long lasting loop and
    massive memory allocations.
    
    Otherwise no memory issues arise, therefore this is just a purely
    functional patch to dismiss invalid input.
    
    Signed-off-by: Matthieu Herrb <matthieu@herrb.eu>
    Reviewed-by: Matthieu Herrb <Matthieu@herrb.eu>

commit c46dedeba15edf7216d62633ed6daf40cd1f5bfd
Author: Tobias Stoeckmann <tobias@stoeckmann.org>
Date:   Tue Dec 6 22:31:53 2016 +0100

    Fix out out boundary read on unknown colors
    
    libXpm is vulnerable to an out of boundary read if an XPM file contains
    a color with a symbolic name but without any default color value.
    
    A caller must set XpmColorSymbols and a color with a NULL name in
    the supplied XpmAttributes to XpmReadFileToImage (or other functions of
    this type) in order to trigger this issue.
    
    Signed-off-by: Matthieu Herrb <matthieu@herrb.eu>
    Reviewed-by: Matthieu Herrb <matthieu@herrb.eu>

commit 42ca8d956276bc00bec09e410d76daf053ae35f9
Author: Jörg Sonnenberger <joerg@NetBSD.org>
Date:   Wed Mar 19 09:26:37 2014 +0100

    Fix abs() usage.
    
    For long arguments, use labs().
    
    Reviewed-by: Matt Turner <mattst88@gmail.com>
    Signed-off-by: Thomas Klausner <wiz@NetBSD.org>

commit 3425cbb0e6086f74783eafbe23df1121b655e006
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Sep 7 21:40:17 2013 -0700

    libXpm 3.5.11
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 4bab3b62a47996ee77b8ddebcd92f0ebe9679c28
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Sep 7 21:36:51 2013 -0700

    Fix typo in COPYING (matches src/amigax.h)
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 9e38750da16c6e5bd8bb26b00d74041ddf9be3e8
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Fri Aug 2 22:22:09 2013 -0700

    Add noreturn attributes suggested by gcc
    
    Remove extra bogus return added to avoid warnings when calling Punt()
    since gcc didn't know it would never return.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 93f900ceac7ac899e00998adc8782ed02b352930
Author: Eric S. Raymond <esr@thyrsus.com>
Date:   Wed Jun 19 06:19:18 2013 -0400

    doclifter can't handle more than one dash in a name line.

commit 22734e4439b3609a6b621d8e7ef8465f0a2ac0d5
Author: Claudio Bley <cbley@av-test.de>
Date:   Mon May 27 09:32:05 2013 +0200

    Fix libXpm build with NO_ZPIPE
    
    When NO_ZPIPE is defined, fcntl.h is not included in WrFFrI.c
    although OpenWriteFile uses open, O_WRONLY, O_CREAT and O_TRUNC.
    
        * src/WrFFrI.c: unconditionally include fcntl.h regardless
         of NO_ZPIPE being defined or not.
    
    Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit e439f6e7163e3259f11f3363fa319e8a29085a92
Author: Christophe CURIS <christophe.curis@free.fr>
Date:   Wed May 1 10:39:38 2013 +0200

    Added 'const' attribute to all filename arguments in the API
    
    The filename is always a read-only argument, so it is a good idea
    to let the caller now about it.
    
    This patch does not change active code; the place where the attribute
    is added will not break source-level compatibility because it adds
    no restriction on caller side, just adds information; because the
    lib code behaved the same way it will not break the binary interface
    either.
    
    Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 01ee6b9c500cd9c67f167e68c8383e8c58db5ddf
Author: Christophe CURIS <christophe.curis@free.fr>
Date:   Wed May 1 10:39:37 2013 +0200

    Added 'const' qualifier to the filename argument to internal functions
    
    Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 980e9f851e47d31eed9635a6399a23d1456548d0
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Mon Apr 22 13:23:09 2013 -0700

    Close fd if fdopen() or xpmPipeThrough() fails in OpenWriteFile()
    
    Fixes leak found by parfait 1.1 bug checking tool:
       File Descriptor Leak: Leaked File Descriptor fd
            at line 350 of lib/libXpm/src/WrFFrI.c in function 'OpenWriteFile'.
              fd initialized at line 332 with open
              fd leaks when strcmp(".Z", (filename + (len - 2))) != 0 at line 337
                  and strcmp(".gz", (filename + (len - 3))) != 0 at line 340.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
    Reviewed-by: Mark Kettenis <kettenis@openbsd.org>

commit 81608285e11f2455800001a965dfece878861162
Author: Colin Walters <walters@verbum.org>
Date:   Wed Jan 4 17:37:06 2012 -0500

    autogen.sh: Implement GNOME Build API
    
    http://people.gnome.org/~walters/docs/build-api.txt
    
    Signed-off-by: Adam Jackson <ajax@redhat.com>

commit 4c3e0ff63a7c71daaafdcdaa1d619063e0cf4a63
Author: Adam Jackson <ajax@redhat.com>
Date:   Tue Jan 15 14:28:48 2013 -0500

    configure: Remove AM_MAINTAINER_MODE
    
    Signed-off-by: Adam Jackson <ajax@redhat.com>

commit 4ca8014afbb66f0b65cdcd8ea12e469f52c8c70c
Author: Jon TURNEY <jon.turney@dronecode.org.uk>
Date:   Mon Jan 2 22:45:53 2012 +0000

    Define NO_ZPIPE when building for MinGW
    
    Define NO_ZPIPE when building for MinGW, decompressing via a pipe isn't implemented.
    (since xpmPipeThrough() is only written in terms of fork() currently...)
    
    Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
    Reviewed-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
    Reviewed-by: Ángel González <ingenit@zoho.com>

commit acaaea96776b36c097d5413040c5ce85d3ae6cb9
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Wed Mar 7 20:39:55 2012 -0800

    libXpm 3.5.10
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 1450186652cb9d2efe55c8da7cb64996eddd34c7
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Fri Nov 18 23:25:16 2011 -0800

    closeness_cmp: maintain constness when casting pointers
    
    create.c: In function 'closeness_cmp':
    create.c:224:5: warning: cast discards qualifiers from pointer target type
    create.c:224:5: warning: cast discards qualifiers from pointer target type
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 7aa7b34491de534da56d637552ee86f94f038cc3
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Fri Nov 18 23:22:12 2011 -0800

    sxpm: make ErrorMessage take const char * arg to fix -Wwrite-strings warnings
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 4cedf181bcfe13e5d206554c51edb82cb17e7ad5
Author: Jeremy Huddleston <jeremyhu@apple.com>
Date:   Fri Nov 11 10:17:11 2011 -0800

    Include missing headers
    
    This fixes implicit declarations for strdup and strcasecmp.
    
    Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>

commit 933b5d1f1fe9273d1a984707687b36ec61c4c5af
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Thu Nov 10 21:32:15 2011 -0800

    Fix gcc -Wwrite-strings warnings that don't require public API changes
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 696be14bcb4daef5280b425e297223c6ae530cb5
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Thu Nov 10 21:03:44 2011 -0800

    Assume C89 and just use const, not local Const macro
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 29972ebbb2409bcba87637069a7ad9a958b3325d
Author: Julien Cristau <jcristau@debian.org>
Date:   Sat Sep 24 19:18:56 2011 +0200

    Link sxpm against -lX11
    
    It calls various Xlib functions so should link with -lX11 directly.
    
    Signed-off-by: Julien Cristau <jcristau@debian.org>

commit 3ea70059805b3ebc795f797b5880b90b6b3a9235
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Fri Sep 16 22:48:53 2011 -0700

    Strip trailing whitespace
    
    Performed with: find * -type f | xargs perl -i -p -e 's{[ \t]+$}{}'
    git diff -w & git diff -b show no diffs from this change
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 0c9e200c3975917f5d78eac67b1f4cedefd73079
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Sat Mar 5 20:39:03 2011 -0500

    man: add missing title header (.TH) __xorgversion__
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 0f8f24302bb0e35eaab16f16358bf9c44f9f3af1
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Sat Mar 5 15:35:17 2011 -0500

    config: move man pages into their own directory
    
    As per X.Org guidelines.
    Fix whitespace issues.
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 9c622c5fc82f2a19ae41e75398fee4ff1de52a1d
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Wed Feb 2 11:43:44 2011 -0500

    config: minor layout change in configure.ac
    
    Group statements per section as per Autoconf standard layout
    Quote statements where appropriate.
    No functional configuration changes
    
    This helps automated maintenance and release activities.
    Details can be found in http://wiki.x.org/wiki/NewModuleGuidelines
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 22a434d061af224536baee6c6110b603c5c96b2c
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Fri Oct 29 17:29:25 2010 -0700

    libXpm 3.5.9
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit c11f1bd18303139f070e1873382632ee80cd9878
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Wed Oct 20 08:30:56 2010 -0400

    config: remove obsolete FILES file from the Imakefile days
    
    It lists the files contained in the original
    BULL Research Koala Project.
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 0ea6c432a068fc4edf90c614e68a4f4be94edd14
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Sun Oct 17 12:51:15 2010 -0400

    doc: move doc files to the newly created doc dir.
    
    As per guidelines for all xorg modules.
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 7a3e69cfb079c7345f3d9b1217f373a706ba544c
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Fri Oct 15 17:14:39 2010 -0400

    config: provide a Makefile for the include directory
    
    Reduce some complexity in the src makefile as it should not
    handle sibling directories.
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit e50f645f4cc5bb1db0e025fc6e39c6e84a894c13
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Fri Oct 15 14:56:32 2010 -0400

    libXpm make: remove redundant -I.
    
    It is always included by Automake
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 8dee37ff3bb908d597d53f2b335fc2111643cce7
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Sun Oct 24 19:39:54 2010 -0400

    sxpm make: no need to use a per target LDADD
    
    There is only one program in this makefile.
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 34abbaaacddf1018d1805bc4890226ab200a50fb
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Fri Oct 15 11:45:58 2010 -0400

    sxpm make: remove redundant $(XMP_LIBS) linker flags
    
    SXPM_LIBS contains the complete list of dependencies.
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit b818f5cf7f7d8240db2a94ebcc28603730760e48
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Fri Oct 15 10:21:08 2010 -0400

    src make: remove -I$(top_builddir)/include
    
    This directory does not exist, only object code is created
    in "builddir".
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 78bca7e85b930593fefe85cc51b5e24f98de31d0
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Oct 14 21:56:21 2010 -0400

    config: fix warnings, m4 quoting and layout
    
    Fix some m4 quoting
    Fix some autoconf warnings
    Regroup statements per section
    Add comments
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 8e47c819490331c01959332e067f06a382d9a14a
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Oct 14 20:35:47 2010 -0400

    config: AC_OUTPUT with parms is deprecated, use AC_CONFIG_FILES
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit c6915d034fa3f72a9724816d2e3f5e8432ef9321
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Oct 14 20:33:40 2010 -0400

    config: AC_HELP_STRING is deprecated, use AS_HELP_STRING
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit e2fdf80a7f9feedacf67e46a8e577b2e6d415a5f
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Oct 14 20:29:42 2010 -0400

    config: remove unrequired AC_SUBST(XPM_CFLAGS)
    
    This macro is called by PKG_CHECK_MODULES
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 937d8c8cf82bd57e82152af3768bdbfc5de4316a
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Oct 14 20:28:43 2010 -0400

    config: remove AC_PROG_CC as it overrides AC_PROG_C_C99
    
    XORG_STRICT_OPTION from XORG_DEFAULT_OPTIONS calls
    AC_PROG_C_C99. This sets gcc with -std=gnu99.
    If AC_PROG_CC macro is called afterwards, it resets CC to gcc.
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 0ed9cb4546d0c65f08a9511736400c0f7fba982f
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Oct 14 20:28:08 2010 -0400

    config: remove unrequired AC_HEADER_STDC
    
    Autoconf says:
    "This macro is obsolescent, as current systems have conforming
    header files. New programs need not use this macro".
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit e99bce47294eab031fc733d695e3c9589b52aff8
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Oct 14 20:25:00 2010 -0400

    config: replace deprecated AM_CONFIG_HEADER with AC_CONFIG_HEADERS
    
    Regroup AC statements at the top.
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 0b5e15c685d295262bf2307d65bee3a0b28e74f5
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Oct 14 20:15:08 2010 -0400

    sxpm: use MAN_SUBST now supplied in XORG_MANPAGE_SECTIONS
    The value of MAN_SUBST is the same for all X.Org packages.
    
    Use the appropriate platform version of sed
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 262bb7e9426150f6c7b553d184c51d3884d04adf
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Oct 14 20:11:43 2010 -0400

    cxpm: use MAN_SUBST now supplied in XORG_MANPAGE_SECTIONS
    The value of MAN_SUBST is the same for all X.Org packages.
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit acd4856aac05a884376736196154842959803aa6
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Oct 14 20:03:13 2010 -0400

    config: use AC_PROG_INSTALL now supplied by XORG_DEFAULT_OPTIONS
    
    It depends on util-macros 1.8
    The LT_AC_PROG_SED macro was never released by libtool.
    Neither man makefile actually used $SED anyway.
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit d1bd1fbc6d7f7b4817aca4fecd8ccfe80a1c2f03
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Oct 14 20:02:30 2010 -0400

    config: upgrade to util-macros 1.8 for additional man page support
    
    Use MAN_SUBST now supplied in XORG_MANPAGE_SECTIONS
    The value of MAN_SUBST is the same for all X.Org packages.
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 3b20344bf3c5ae7a8291041d4887dc8f23644d40
Author: Colin Harrison <colin.harrison@virgin.net>
Date:   Thu Oct 7 13:49:17 2010 +0200

    Missing end comment in libXpm/src/parse.c
    
    CVS tag removal chopped too much out in this case...
    
    Signed-off-by: Julien Cristau <jcristau@debian.org>

commit f8f0a68247b920052df0796a39ebcdc2e4161d05
Author: Jesse Adkins <jesserayadkins@gmail.com>
Date:   Tue Sep 28 13:30:03 2010 -0700

    Purge cvs tags.
    
    Signed-off-by: Jesse Adkins <jesserayadkins@gmail.com>
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit d026662cce0808cf402e0d50932d90984a2ea1bb
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Apr 1 21:11:35 2010 -0400

    config: update AC_PREREQ statement to 2.60
    
    Unrelated to the previous patches, the new value simply reflects
    the reality that the minimum level for autoconf to configure
    all x.org modules is 2.60 dated June 2006.
    
    ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.60.tar.gz
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit d4a7b15b3ed9e7cf94dbf64f929ae954bada9f60
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Apr 1 21:07:54 2010 -0400

    config: update and relocate AX_DEFINE_DIR macro
    
    Remove deprecated acinclude.m4 macro container file
    Use separate macro files as per autoconf recommendation
    Use the latest version of the macro from GNU
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit e0920779d1227338e61aaab16458b9daad508c36
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Mon Mar 29 14:53:49 2010 -0400

    config: remove the pkgconfig pc.in file from EXTRA_DIST
    
    Automake always includes it in the tarball.
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 34ebac912c6f1223a274ab2e4f0c12928d357ddd
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Jan 14 09:36:38 2010 -0500

    COPYING: add missing copyright notices
    
    Refer to: amigax.c, cxpm.c
    Copyright (C) 1998 Arnaud LE HORS
    Copyright (C) 19896 Lorens Younes
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit dca7a9ccbdd4c85d84668c3a4bc14b0049f0c893
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Fri Nov 27 20:56:04 2009 -0500

    Makefile.am: add ChangeLog and INSTALL on MAINTAINERCLEANFILES
    
    Now that the INSTALL file is generated.
    Allows running make maintainer-clean.

commit af0d92b686c65f7ffb5556b74fd937b01719c535
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Wed Oct 28 14:09:10 2009 -0400

    INSTALL, NEWS, README or AUTHORS files are missing/incorrect #24206
    
    Add missing INSTALL file. Use standard GNU file on building tarball
    README may have been updated
    Remove AUTHORS file as it is empty and no content available yet.
    Remove NEWS file as it is empty and no content available yet.

commit 8bda9cdb6344c6cdf87237cb84c16c54a3ae84d8
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Tue Oct 27 15:07:25 2009 -0400

    Deploy the new XORG_DEFAULT_OPTIONS #24242
    
    This macro aggregate a number of existing macros that sets commmon
    X.Org components configuration options. It shields the configuration file from
    future changes.

commit 089237b624722b141a9ba6888584ebcc5247b227
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Mon Oct 26 22:08:43 2009 -0400

    Makefile.am: ChangeLog not required: EXTRA_DIST or *CLEANFILES #24432
    
    ChangeLog filename is known to Automake and requires no further
    coding in the makefile.

commit 37e75b28f4d30a66e16cfe192a0612a335aa8d46
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Oct 22 12:34:19 2009 -0400

    .gitignore: use common defaults with custom section # 24239
    
    Using common defaults will reduce errors and maintenance.
    Only the very small or inexistent custom section need periodic maintenance
    when the structure of the component changes. Do not edit defaults.

commit 68ae0e442ad57534c25566284ad049299a982d00
Author: Jeremy Huddleston <jeremyhu@freedesktop.org>
Date:   Wed Oct 21 12:47:25 2009 -0700

    This is not a GNU project, so declare it foreign.
    
    On Wed, 2009-10-21 at 13:36 +1000, Peter Hutterer wrote:
    > On Tue, Oct 20, 2009 at 08:23:55PM -0700, Jeremy Huddleston wrote:
    > > I noticed an INSTALL file in xlsclients and libXvMC today, and it
    > > was quite annoying to work around since 'autoreconf -fvi' replaces
    > > it and git wants to commit it.  Should these files even be in git?
    > > Can I nuke them for the betterment of humanity and since they get
    > > created by autoreconf anyways?
    >
    > See https://bugs.freedesktop.org/show_bug.cgi?id=24206
    
    As an interim measure, replace AM_INIT_AUTOMAKE([dist-bzip2]) with
    AM_INIT_AUTOMAKE([foreign dist-bzip2]). This will prevent the generation
    of the INSTALL file. It is also part of the 24206 solution.
    
    Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>

commit 130b2fb0ea716143c63ba30856eecb351bc2af2a
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Fri Oct 9 10:32:08 2009 -0700

    libXpm 3.5.8
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>

commit a195bd6d375c311b9bf6d7cce477f1d131425757
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Thu Oct 8 21:29:45 2009 -0700

    Migrate to xorg macros 1.3 & XORG_DEFAULT_OPTIONS
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>

commit f4c43f70dff3cb9702fd62bc388353d02589e618
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Thu Oct 8 20:27:49 2009 -0700

    Replace AC_DEFINE_DIR with AX_DEFINE_DIR from Autoconf Archive

commit d846316822ba8eb545d41140007ef98a7de9274e
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Tue May 19 01:34:19 2009 -0700

    Update AC_DEFINE_DIR to latest version from Autoconf Archive

commit 53f8b42f89214b85804ae9e64c49d1a9c2a7553d
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Mon Feb 2 20:34:35 2009 -0800

    Add README with pointers to mailing list, bugzilla & git repos
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>

commit 6697e31fbb616656b7f34515a79454af394b500a
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Fri Jan 30 15:45:20 2009 -0200

    Janitor: ansification, make distcheck, .gitignore
    
      The ansification code is minor edit of the patch (by me) at
    https://bugs.freedesktop.org/show_bug.cgi?id=14727
    as it would not apply cleanly anymore.

commit 41e4e2de4d73d098d332ece0410e9f8fda4fe10d
Author: Peter Breitenlohner <peb@mppmu.mpg.de>
Date:   Mon Oct 20 19:36:52 2008 -0700

    X.Org Bug 17944: avoid gcc warning for libXpm
    
    <http://bugs.freedesktop.org/show_bug.cgi?id=17944>
    
    Avoid the gcc warning
    cxpm/cxpm.c:102: warning: no previous prototype for 'ErrorMessage'

commit 64323668c07b4768c57649f5ec7e2888265d1aeb
Author: Matthieu Herrb <matthieu.herrb@laas.fr>
Date:   Sun Mar 9 08:57:47 2008 +0100

    nuke RCS Ids

commit 6ef45c37160079a9aa551adcd841abdb55eabae3
Author: Benjamin Close <Benjamin.Close@clearchain.com>
Date:   Thu Jan 31 14:42:41 2008 +1030

    Use libtools SED check rather than autoconf's SED check.
    AC_PROG_SED required autoconf 2.60, libtool's should work
    regardless. This keeps us supporting 2.57 of autoconf
    
    Found by: Tinderbox (1.4.1 compile)

commit 3f7624048aa6064c69e2320a70fb7fc89e0bb7ef
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Thu Jan 24 14:26:34 2008 -0800

    Bug 14171: sxpm/Makefile.am:21: SED was already defined
    
    <http://bugs.freedesktop.org/show_bug.cgi?id=14171>

commit 503843fd3066031adbd4a362c686acc721787b7d
Author: James Cloos <cloos@jhcloos.com>
Date:   Thu Dec 6 16:38:36 2007 -0500

    Replace static ChangeLog with dist-hook to generate from git log

commit 3e37dd39b6169af9928d5b959c40ba79a07450ee
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Wed Aug 22 13:23:30 2007 -0700

    Version bump: 3.5.7

commit d82244497b54889f91c78585374d1ad6a0cef2cf
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Wed Aug 22 13:08:42 2007 -0700

    Replace strcpy with strncpy to match previous code block

commit 47c974872b51b8c1d6965eff4599f8ce739bcedc
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Mon Aug 6 14:22:48 2007 -0700

    Use srcdir in paths passed to xgettext when making .po files

commit 6e003fd5f174a8e312d799d7f8812c2a5b87e433
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Mon Aug 6 12:59:04 2007 -0700

    Replace index/rindex with C89 standard strchr/strrchr

commit 43dfc6be8128139888426d8c709aa78efc207953
Author: Jason Rumney <jasonr@gnu.org>
Date:   Mon Aug 6 12:52:52 2007 -0700

    X.Org Bug #11863: Build libXpm on MS Windows (with MinGW)
    
        * src/XpmI.h [FOR_MSW]: Include simx.h instead of real X headers.
    
        * src/simx.h (_XFUNCPROTOBEGIN, _XFUNCPROTOEND, NO_ZPIPE): Define.
        (XAllocColor): Fix arg list in prototype.
        (bzero, close, fdopen, index, rindex, open, strdup, O_RDONLY):
        Map to W32 equivalents.
    
        * src/RdFToI.c [FOR_MSW]: Include fcntl.h.

commit 290f0b9115428dab0cbf2880d154468c557b3e7e
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Wed Jul 25 17:45:15 2007 -0700

    Include comment/copyright/license for AC_DEFINE_DIR in acinclude.m4

commit d4bc7dc0dea218cea380aba972f10f60dc1e86ac
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Wed Jun 27 13:54:07 2007 -0700

    Use AM_CFLAGS & AM_CPPFLAGS to replace per-program and obsolete macros
    
    Clears some warnings from automake-1.10

commit 85a87de3c03ca8be526dedc0a2973f9426518c39
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Tue Nov 21 17:12:18 2006 -0800

    Sun bug 4486226: Xpm is not internationalized
    
    <http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=4486226>
    Use gettext() to allow translated messages in sxpm & cxpm
    (cherry picked from bcda4f17ab3fa9f0572f876dbeb09b45fbc23f3d commit)

commit 3c881daddcc251d6e806715d267e4e55934abd1a
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Tue Nov 21 15:13:44 2006 -0800

    Add *~ to .gitignore to skip over emacs/patch droppings

commit 60817dd28774540622ea404f650db8389c66da54
Author: Adam Jackson <ajax@benzedrine.nwnk.net>
Date:   Fri Oct 13 16:23:49 2006 -0400

    Bump to 3.5.6

commit 12dc4dc15234ae818a21c20ebf7b2d053b7a94be
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Thu Jul 13 14:59:03 2006 -0700

    renamed: .cvsignore -> .gitignore

commit 4daea919c3aa104b6caf8c0f42f49ae755545986
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date:   Sat Jun 3 06:11:30 2006 +0000

    Always initialize atomTable to NULL, so xpmHashTableFree() doesn't try to
        free a random value from the stack if xpmHashTableInit returns an
        error.

commit 19855d6e09aa36db7686ad6f538179bf87e9c6ea
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date:   Fri Jun 2 19:48:01 2006 +0000

    Coverity #1432: Returned without freeing storage "hints_cmt" (in error case
        when xpmHashTableInit failed)

commit 000abcd371d0c4b1d0a5380023d74bf5bfc47685
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date:   Fri Jun 2 19:33:29 2006 +0000

    Coverity #1415: Returned without freeing storage "hints_cmt" (in error case
        when xpmHashTableInit failed)

commit 5c70c99833d4040aaf595d0005b861e0a930ee66
Author: Adam Jackson <ajax@nwnk.net>
Date:   Thu Apr 27 00:19:37 2006 +0000

    Bump to 3.5.5

commit 2dcc187c92c1a579e6e9f0bad999a3b4e47228c3
Author: Matthieu Herrb <matthieu.herrb@laas.fr>
Date:   Sat Mar 18 15:18:56 2006 +0000

    doublecheck that a pointer is not NULL before dereferencing it. (Coverity
        CID 121).

commit 93421a53ccf159ff39bc9f8ff72c57246f9cb90c
Author: Kevin E Martin <kem@kem.org>
Date:   Thu Dec 15 00:24:31 2005 +0000

    Update package version number for final X11R7 release candidate.

commit 2b229ddcb52a3bf9bef32e764f93cc57c1351420
Author: Kevin E Martin <kem@kem.org>
Date:   Tue Dec 6 22:48:44 2005 +0000

    Change *man_SOURCES ==> *man_PRE to fix autotools warnings.

commit 50214deb692a9af760088f8e7a51955c7d3f1707
Author: Kevin E Martin <kem@kem.org>
Date:   Sat Dec 3 05:49:44 2005 +0000

    Update package version number for X11R7 RC3 release.

commit 19881d3c88ff0713ef550382fd0dfb03123dabed
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date:   Mon Nov 28 22:03:06 2005 +0000

    Change *mandir targets to use new *_MAN_DIR variables set by xorg-macros.m4
        update to fix bug #5167 (Linux prefers *.1x man pages in man1 subdir)

commit a6fbdb403efd3bf7e1179660959fd0e66a301ce0
Author: Kevin E Martin <kem@kem.org>
Date:   Sat Nov 19 07:15:42 2005 +0000

    Update pkgconfig files to separate library build-time dependencies from
        application build-time dependencies, and update package deps to work
        with separate build roots.

commit 82513d04a8381da8d2281d7581f6b0d65901aede
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date:   Sun Nov 13 02:08:07 2005 +0000

    Use sed to substitute variables in man pages

commit d1b430289b2ddb6c1f3383c5288aa125b058508a
Author: Kevin E Martin <kem@kem.org>
Date:   Wed Nov 9 21:19:13 2005 +0000

    Update package version number for X11R7 RC2 release.

commit e2c9276ccc1ef619dcfbdeb414ef0dec5113c1ee
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date:   Sat Oct 29 02:26:49 2005 +0000

    Add --enable-stat-zfile (on by default) to replace Imake's ZFILEDEF =
        -DSTAT_ZFILE to enable automatically searching for file.xpm.Z &
        file.xpm.gz when file.xpm is requested.

commit 2f57ab95012d9221cca1af6c0a1ccea5d308c66f
Author: Kevin E Martin <kem@kem.org>
Date:   Wed Oct 19 02:48:11 2005 +0000

    Update package version number for RC1 release.

commit 72bf88ed120fb888c57ed3223faa316403031b36
Author: Kevin E Martin <kem@kem.org>
Date:   Wed Oct 5 20:24:14 2005 +0000

    Add missing files to EXTRA_DIST
    Fix man page installation

commit 08c43c5f1f851c1acad360a28767670dc62d8a66
Author: Matthieu Herrb <matthieu.herrb@laas.fr>
Date:   Mon Oct 3 19:53:58 2005 +0000

    Last argument of variable parameter list needs to be casted to a pointer
        type.

commit 5ecad7c12c3104d653972385f548e3f86532cbe3
Author: Kevin E Martin <kem@kem.org>
Date:   Fri Jul 29 21:22:52 2005 +0000

    Various changes preparing packages for RC0:
    - Verify and update package version numbers as needed
    - Implement versioning scheme
    - Change bug address to point to bugzilla bug entry form
    - Disable loadable i18n in libX11 by default (use --enable-loadable-i18n to
        reenable it)
    - Fix makedepend to use pkgconfig and pass distcheck
    - Update build script to build macros first
    - Update modular Xorg version

commit 703207d3b3718223d4b2711fb77fc96a4f3909ef
Author: Matthieu Herrb <matthieu.herrb@laas.fr>
Date:   Sun Jul 17 10:32:57 2005 +0000

    fix build outside of $(srcdir)

commit 5a0177d4474787951c0cae56e285bb075ab405f3
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date:   Sat Jul 16 21:11:25 2005 +0000

    Accept autoconf HAVE_STRLCPY as alias for HAS_STRLCAT

commit fd38ee667976855150d3c1231a1acc2cf1a89330
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
Date:   Sat Jul 16 21:10:44 2005 +0000

    Check for strlcat() for use in parse.c

commit 9b3eed6e4f7ee542149ecec0d017a3a460f7c084
Author: Daniel Stone <daniel@fooishbar.org>
Date:   Sat Jul 16 07:23:39 2005 +0000

    Set soversion to 4.11.0 with -version-number.

commit a705a1cd9dc4c4ba1940c9b59d2107ba59360e39
Author: Keith Packard <keithp@keithp.com>
Date:   Sat Jul 9 06:45:44 2005 +0000

    Add .cvsignore files

commit b1d84a9fc9b15232c09b6ce5d96c097fdd4f0a15
Author: Alexander Gottwald <alexander.gottwald@s1999.tu-chemnitz.de>
Date:   Thu Jun 9 13:42:36 2005 +0000

    Use $(top_srcdir)/src instead of $(top_builddir)/src in INCLUDES

commit 769751fba3e32f49272d19799929e1ad5a3d2cd0
Author: Søren Sandmann Pedersen <sandmann@daimi.au.dk>
Date:   Thu May 19 17:09:13 2005 +0000

    Add $(top_builddir)/include to INCLUDES

commit 2cc1896c61eef5739bb6a8ffa89e58ba5c175a05
Author: Søren Sandmann Pedersen <sandmann@daimi.au.dk>
Date:   Thu May 19 15:02:48 2005 +0000

    - Add build system for lib/Xpm
    - Add Xpm to symlink.sh
    - Conditionally include config.h in xc/extras/Xpm

commit cf0d69c7ace679f27f105c582760b9be14923aba
Author: Søren Sandmann Pedersen <sandmann@daimi.au.dk>
Date:   Thu May 19 14:37:53 2005 +0000

    Thu May 19 10:36:54 2005 Søren Sandmann <sandmann@redhat.com>
    Add "../lib" to INCLUDES.
    Replace #include "../lib/foo" with #include "foo".

commit 639b3598cd0e7214010248efb62b75ef85a8e5c5
Author: Matthieu Herrb <matthieu.herrb@laas.fr>
Date:   Mon Feb 21 20:52:32 2005 +0000

    Avoid inifite loops. From Chris Gilbert in bug #1920.

commit f1908d7ee5e2d2d44db2116b3c88213da9dfb854
Author: Matthieu Herrb <matthieu.herrb@laas.fr>
Date:   Sat Dec 11 16:14:05 2004 +0000

    Fix incomplete merge.

commit b041980732f6a6002001cfe079fdfb982937d4a8
Author: Matthieu Herrb <matthieu.herrb@laas.fr>
Date:   Sat Dec 11 16:08:59 2004 +0000

    more s_open() cleanup.

commit 90d0638a42553786f54df333f0da4d008e9a0573
Author: Matthieu Herrb <matthieu.herrb@laas.fr>
Date:   Sat Dec 11 16:04:34 2004 +0000

    Replace s_popen() by a more specific function that allows only one command
        in the pipe. Remove extraneous tests on file names that broke some
        applications. From Alex Reisen in Bugzilla #1920.

commit 2c23dbf2cafaad72b1f45da915eb87a8f792fdb0
Author: Roland Mainz <roland.mainz@nrubsig.org>
Date:   Wed Dec 8 01:16:48 2004 +0000

    //bugs.freedesktop.org/show_bug.cgi?id=830): Fix libXpm header (xpm.h) to
        use the X11 function begin/end marker macros (_XFUNCPROTOBEGIN,
        _XFUNCPROTOEND) instead of homegrown (native) C++ code. Patch by Kevin
        DeKorte <kdekorte@yahoo.com>.

commit 50986a34f231fbc7a4b62466bd89bd4ae4027d2e
Author: Matthieu Herrb <matthieu.herrb@laas.fr>
Date:   Thu Nov 25 21:19:11 2004 +0000

    Fixes for CAN-2004-0914 (Thomas Biege).

commit a983dafac59dcb425666a5a5556da4734e50c6c5
Author: Egbert Eich <eich@suse.de>
Date:   Tue Sep 21 17:57:35 2004 +0000

    Merged over libXpm security fix provided by Chris Evans, Matthieu Herrb and
        Alan Coopersmith from release 6.8.1.
    Fail during initialization with error if font/fontset is not set for
        widget. This prevents a sig11 later when the non-existent font/fontset
        structs are referenced.
    Check if xf86Info.kbdProc pointer is really set before calling it on abort
        as this pointer won't be set if the new modular keyboard driver is used
        (Matthias Hopf).
    Added new libs to the bindist control files.
    Removed inclusion of unnecessary kernel header on Linux. This may fail in
        an -ansi environment.

Notes:
    Fixes CVE-2004-0687 (integer overflows) and CVE-2004-0688 (stack overflows)

commit 2773a7214e282f6f673483f5233b880505947c3f
Author: Egbert Eich <eich@suse.de>
Date:   Fri Apr 23 18:42:32 2004 +0000

    Merging XORG-CURRENT into trunk

commit 65c64a2eaa8698434f1869dcdcb5d9ccb21c6932
Author: Egbert Eich <eich@suse.de>
Date:   Sun Mar 14 08:28:26 2004 +0000

    Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004

commit 0b313707a677523fed9ac485445e8b09d2a85c13
Author: Egbert Eich <eich@suse.de>
Date:   Wed Mar 3 12:09:53 2004 +0000

    Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004

commit 658f8e9a9094ba5d18743694cad7275be53c7a25
Author: Egbert Eich <eich@suse.de>
Date:   Thu Feb 26 13:34:33 2004 +0000

    readding XFree86's cvs IDs

commit 9971f91864e8f722b42c58f2ff19025715f33b98
Author: Egbert Eich <eich@suse.de>
Date:   Thu Feb 26 09:21:31 2004 +0000

    Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004

commit fbfe965054d8144946651b19085684af7f6715b9
Author: Kaleb Keithley <kaleb@freedesktop.org>
Date:   Tue Nov 25 19:27:16 2003 +0000

    XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks

commit c037348b5df0ac94ad4daba59f8bc9acf12ef623
Author: Kaleb Keithley <kaleb@freedesktop.org>
Date:   Fri Nov 14 16:48:24 2003 +0000

    XFree86 4.3.0.1

commit aafaabc4a0bfab6544e085ee504ad69de4a5ddb1
Author: Kaleb Keithley <kaleb@freedesktop.org>
Date:   Fri Nov 14 16:48:24 2003 +0000

    Initial revision