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
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
|
System Notes File for IRAF Version 2.12.
Begun with V2.12 code freeze 02 May 2002.
-------------------------------------------
unix/hlib/motd
unix/hlib/zzsetenv.def
Changed system version to V2.12.1-DEVELOP. (5/19/2002)
unix/hlib/install
Updated the script with several bug fixes found since the initial
V2.12 release. These fix problems with tapecap configuration and
the use of "which" in determining paths. (6/12/02, MJF)
pkg/images/tv/display/t_display.x
Removed an unused extern declaration for ds_errfcn() which was
causing a link failure on the alpha (6/12/02, MJF)
pkg/images/immatch/src/imcombine/src/xtimmap.gx
The size of image header data structures was computed incorrectly
resulting in the potential for segmenation violations. (6/14/02,
Valdes)
pkg/images/immatch/src/imcombine/src/icsetout.x
Needed to disable axis mapping to handle cases where the input
images are dimensionally reduced. (6/14/02, Valdes)
unix/gdev/sgidev/sgi2uapl.c
unix/gdev/sgidev/sgi2uhpgl.c
unix/gdev/sgidev/sgi2uimp.c
unix/gdev/sgidev/sgi2uqms.c
Converted some 'sgi' variables to 'sgip' to workaround pre-processor
name collisions on the SGI. This has always been needed on the SGI
system for updates, just moving this into the master system so it's
not forgotten in later updates (6/17/02, MJF)
maskexpr/peregfuncs.x
Fixed various min / max data type mismatch problems. (06/19/02, Davis)
pkg/images/immatch/src/xregister/t_xregister.x
pkg/images/immatch/src/xregister/rgxicorr.x
If the xregister task parameter interactive = yes and the output images
are defined then the computed shifts are not applied. This occurs
because the reinitialization routine triggered by the 'n' keystroke
command is in the wrong place. The work around is to run xregister
twice, once interactively to compute the shifts, and again
non-interactively to apply them. (6/20/02, Davis)
pkg/system/doc/allocate.hlp
pkg/system/doc/devstatus.hlp
pkg/system/doc/deallocate.hlp
Clarified the dev$devices and dev$tapecap files. (7/9/02, MJF)
pkg/cl/exec.c
Removed an extra argument to an eprintf() call. (7/9/02, MJF)
dev/imtoolrc
dev/graphcap
Added a 2048x2500 frame buffer called 'imt50' or 'imtwttm' for
the WIYN Tip-Tilt. (7/9/02, MJF)
sys/imio/iki/fxf/fxfopix.x
fxf_mandatory_cards(). We want to keep BSCALE and BZERO
in case we are editing the values. This is only valid for
access mode READ_WRITE. (7/9/02, Zarate)
sys/imio/iki/fxf/fxfrfits.x
Load FIT_EXTEND value from cache header entry to
the current fit struct entry. It used to be the other way
around wich was a bug. (7/9/02, Zarate)
Uncomment the reload code (~line 137) if the cache if younger
than 2 seconds.(7/9/02, Zarate)
sys/imio/iki/fxf/fxfupdhdr.x
Fix the code to update the value of the keyword EXTEND.
fxf_update_extend(). Add code to update the FIT_EXTEND entry
when the header keyword have been changed to T. (7/9/02, Zarate)
pkg/cl/cl.par
unix/hlib/motd
unix/hlib/login.cl
unix/hlib/zzsetenv.def
Changed the cl.version and cl.logver to "IRAF V2.12.1 July 2002"
and updated the motd for the patch release (7/12/02, MJF)
unix/hlib/install
Several last-minute bug fixes for the Alpha. Also made the query
for an iraf user a bit smarter. (7/12/02, MJF)
local/login.cl
The logver set in this file was never updated (7/12/02, MJF)
lib/scr/xgterm.gui
lib/scr/xgterm.gui [pcix]
Changed the default application name/class to 'irafterm' and
'IRAFterm' respectively. On MacOSX the earlier value 'xgterm'
was conflicting with the app-defaults file due to the case-
insensitive filesystem. Since the filename is the same the
guidir environment variable can still be used to substitute the
GUI itself. (7/13/02, MJF)
----------------------------------------
V2.12.1 patch generated. (7/13/02, MJF)
pkg/cl/cl.par
unix/hlib/motd
unix/hlib/login.cl
unix/hlib/zzsetenv.def
Changed system version to V2.12.2-DEVELOP. (7/28/02, MJF)
dev/hosts
Added new NDWFS linux box 'bonza' (8/8/02, MJF)
pkg/dataio/export/exraster.gx
pkg/dataio/export/bltins/exppm.x
There was a bug in the generation of PPM files when using images with
and odd number of columns causing the line to be too long by one byte.
The output image will now truncate the last column to avoid this since
we cannot write byte data. (8/9/02, MJF)
os/zgmtco.c
os/zgmtco.c [pcix]
This routine fails to return the number of seconds of correction
from LST to GMT. The error is 1 hour due to not considering the
daylight saving time for those times zones that do have it. This
problem affected the new routines in etc$dtmcnv.x given an
incorrect value for the hour time in DATE value of a FITS header.
The fix was to call localtime() with value time(0) and look
at the tm_isdst flag value. If dst is in effect we substract
1hour in seconds. (8/19/02, NZ)
pkg/images/tv/display/dspmmap.x
The matched mask was incorrectly returning the input mask when the
scale and offset matched but not the size. (9/10/02, Valdes)
os/zgmtco.c
Had to add an #ifdef SUNOS to include <time.h> for sparc (9/10/02, MJF)
pkg/images/tv/display/dspmmap.x
A common case of matching a mask to an image is where the pixel sizes
are the same but there are offsets and/or different sizes. An optimized
mask matching based on using range lists and not calling mwcs was
added. (9/12/02, Valdes)
pkg/images/imgeom/src/t_imshift.x
An incorrect shift of one pixel would appear when the specified shift
was near zero and less than the precision of a real; i.e. yshift=1e-9.
The code was changed to use double precision as appropriate.
(9/12/02, Valdes)
pkg/plot/t_pradprof.x
pkg/plot/doc/pradprof.hlp
Added parameters "az1" and "az2" to select a range of azimuths for
the profile. (9/13/02, Valdes)
sys/plio/pll2r.gx
These routines decode the internal pl line format to a range list
format. The decoding involves interpreting the various opcodes in
the pl line format. One of these opcodes, I_PN, says to output N-1
zero values followed by a data value. However, if the requested
region cuts through the segment the conversion to a range list would
go wrong and output all data values. Fixed the bug (9/18/02, Valdes)
sys/plio/plp2l.gx
sys/plio/plr2l.gx
If a segment of 4095 zeros followed by a single high value was
encountered the encoding would attempt to set the data value
to 4096 which overflows the data value segment of the encoding.
(9/26/02, Valdes)
pkg/dataio/import/ipproc.gx
An operand pointer was possibly being freed twice, once in the
ip_wrline() procedure and again in the evvfree() call when processing
completed. This could cause a segfault on some system (9/27/02, MJF)
unix/hlib/libc/libc.h [+pcix]
unix/hlib/libc/setjmp.h [+pcix]
unix/hlib/libc/stdio.h [+pcix]
unix/hlib/libc/varargs.h [+pcix]
Recent GCC compiler changes changed the way in which include files
were loaded depending on whether they were declared with quotes or
angle brackets. These files were changed to use the quote syntax
for e.g. '#include "stdio.h"' to guarantee the hlib$libc version of
the file was used as intented. (10/10/02, MJF)
unix/os/zfiond.c [pcix]
Added a new 'nodelay' protocol flag to return an error when reading
a connection with no data or writing to a closed server connection.
This allows applications tasks to essentially poll a network
connection and respond only when data is available.
(10/10/02, Valdes/MJF)
pkg/system/help/xhelp/xhdir.x
Modified how the file list was contructed to work around a limitation
of sprintf/pargstr for long directory listings. (10/23/02, MJF)
dev/hosts
Added azure.kpno.noao.edu (ssun) (10/28/02, MJF)
sys/imio/iki/fxf/fxfupdhdr.x
A call to imputb() was improperly passing an integer value on line
747, wrapped the value in itob(). (11/4/02, MJF)
imio$iki/fxf/fxfopix.x
add fxf_not_incache routine to reload the current file in the cache.
An active cache can have the consequence that the file entry is
cleared to make room for another file. (11/4/02, NZ)
imio$iki/fxf/fxfopen.x
when openning and image READ_WRITE we need to discard some
keywords that are not compatible with the FK. Is an image
is openned correctly then it shloud not have the keyword
GROUPS. (11/4/02, NZ)
imio$iki/fxf/fxfexpandh.x
A new argument is needed to pass the number of blocks to
expand. (11/4/02, NZ)
imio$iki/fxf/fxfupdhdr.x
add new argument to routine fxf_expandh().
Add fxf_not_incache(). See fxfopix note above. (11/4/02, NZ)
math/curfit/cvinit.gx
If one of the error checks caused an error return the cv pointer
would have been allocated (cv != NULL) but some of the pointer
fields could have garbage values since a malloc was used instead
of a calloc. A later call to cvfree could result in a segmentation
error. This was changed so that 1) a null cv pointer is returned
in the initial error checks cause an error return and 2) the
cv pointer is initially allocated with calloc so that no pointer
fields will be non-NULL until explicitly set.
(11/18/02, Valdes)
pkg/xtools/icfit/icdosetup.gx
When there is only one sample range that is binned to a single
point this would result in the fitting limits (as introduced
8/11/00) being equal. This causes cvinit to return an error and
the cv pointer is invald. The change is if the number of binned
fitting points is 1 then the full range of the unbinned data is
used. Note that a change was also made on this date to have cvinit
return a null pointer rather than a partially initialized pointer.
(11/18/02, Valdes)
pkg/proto/ringavg.cl +
pkg/proto/doc/ringavg.hlp +
pkg/proto/proto.cl
pkg/proto/proto.men
pkg/proto/proto.hd
Added a script task to compute pixel averages in concentric rings.
(11/25/02, Valdes)
sys/imio/iki/fxf/fxfrfits.x
Added code to reload IM_CTIME and FIT_MTIME values from the fstat()
when they are zero. This condition can occur when the keyword
IRAF-TLM is not present in the header. (1/16/03, Zarate)
sys/imio/db/impstr.x
Replaced this routine with a version that takes care of updating
keywords with a free format. Fixes a bug reported by ST where HEDIT
wouldn't properly handle the comment if it came before column 30
in the card. (1/16/03, Zarate/Valdes)
sys/imio/iki/fxf/fxfrfits.x
Modified code to reallocate memory when a BINARY table is read.
If FIT_TFIELDS is greater than zero more memory is needed hence the
realloc is there now. This fix takes care of the bug reported by
jturner@gemini with their package running under rhux. (1/16/03,
Zarate)
unix/reboot
unix/reboot [pcix]
Changed the warning message about a NOVOS build to check HSI_CF
where it's defined (1/24/03, MJF)
pkg/images/tv/imexamine/iegnfr.x
The test for the number of frames needed to check imd_wcsver to avoid
trying to use more than four frames with DS9. (1/24/03, Valdes)
pkg/images/tv/imexamine/t_imexam.x
Added some missing braces so that if a display is not used it doesn't
check for the number of frames to use. This is only cosmetic at this
time. (1/24/03, Valdes)
sys/imio/iki/fxf/fxfplread.x
sys/imio/iki/fxf/fxfplwrite.x
To comply with the FITS Compressed Image schema in FITS Bintable
the offset value that is store in the BINTABLE data as the
second long word needs to be in byte units (byte-offset).
This fix will turn FK internal char-offset to byte-offset and
viceversa. (01/24/03, Zarate)
unix/boot/spp/rpp/ratlibc/getarg.c
unix/boot/spp/rpp/ratlibc/getarg.c [pcix]
Fixed a potentional overflow bug where the EOS could be appended
after 'maxsiz' characters in the string. Changed the loop to go
up only to 'maxsiz-1' to leave room for the EOS. (1/27/03, MJF)
lib/imio.h
The size of IM_VOFF was not sufficient to handle all 7 dimensions
leading to errors when using more than 5-D images. Changed the
offset of IM_VSTEP to accomodate (4/6/03, Zarate/MJF)
dev/termcap
dev/graphcap
Added a dozen or so printers around NOAO which weren't accessible
(4/7/03, MJF)
unix/os/zfioks.c
unix/os/zfioks.c [pcix]
The iraf kernel server code wasn't properly waiting for child
processes to exit when the parent quit leading to defunct processes
laying around. Added a wait() call to clean up the children.
Also move the debug code to the top of the routine so it can
be used to debug the connection and added intializations for
the ZOPNKS arrays so they print properly in the debug output.
(4/22/03 MJF)
pkg/language/doc/scan.hlp
Added a definition for 'fscanf' to the .help declaration (5/6/03, MJF)
pkg/language/language.hd
pkg/language/doc/scan.hlp
Added entries for 'nscan' help page (5/7/03, MJF)
sys/libc/cgetuid.c
Fixed a number of problems with the procedure: 1) Added a "char *"
declaration for the procedure 2) Added type declarations for the
function arguments which were missing, 3) fixed an invalid reference
to c_stupak() in the return, changed to c_strpak() so pack the user
name correctly. (5/7/03, MJF)
sys/gio/sgikern/font.com
sys/gio/sgikern/greek.com
Updated the sgikern font tables to include a missing 'gamma' in
the greek character set and to fix a spacing problem in the roman
font. (5/21/03, MJF)
sys/gio/fonts/ +
Added a new 'fonts' subdirectory containing the data and programs
used to create the font tables in case things like this need to be
fixed in the future. See the README for details. (5/21/03, MJF)
unix/os/zxwhen.c [pcix]
Interrupts were broken under OS X 10.2 due to changes in the signal
handling. Modified sigset() to define the flags required to get the
signal passed properly by defining the (SA_NODEFER|SA_SIGINFO) flags.
Changes are backwards compatible so source will still compile under
10.1. (6/23/03, MJF)
unix/hlib/irafuser.csh [pcix]
Added a check for the OS X version to set '-DOLD_MACOSX' on the
HSI_CF flags. Needed for the above signal compatability fix
(6/23/03, MJF)
dev/graphcap
Modified the psi_def XO/YO values to 0.001 so the plot won't shift
off the page (6/23/03, MJF)
unix/os/gmttolst.c [pcix]
The OS X code was incorrectly calling gmtime() to get the timezone
offset. This function returns the time adjusted for GMT and so the
timezone was always zero leading to an incorrect time() function in
the CL. Replaced with a localtime() call which sets the timezone
properly. (7/1/03, MJF)
unix/os/mkpkg
unix/os/zfutim.c +
unix/hlib/knet.h
unix/hlib/libc/knames.h
unix/os/mkpkg [pcix]
unix/os/zfutim.c +[pcix]
unix/hlib/knet.h [pcix]
unix/hlib/libc/knames.h [pcix]
Added a new ZFUTIM() HSI routine on top of the system utime() call
for updating file access/modification times. This procedure and the
VOS tasks which use it are required by the FXF kernel as a means of
touching the file modify times to indicate that an image needs to be
reloaded. Since there is no communication between different processes
each having their own FITS header cache we have only the file info
structures available (at the moment). Modern systems are fast enough
now that the one-second granularity of the finfo() call is no longer
sufficient to indicate a file modification so we need a way to artif-
icially "age" a file to force a reload. (7/7/03, MJF)
sys/fio/mkpkg
sys/fio/futime.x +
sys/fio/zzdebug.x
Installed new VOS futime() function to reset file modifcation time.
Function prototype is
int futime (char *fname, long atime, long mtime)
Time arguments are assumed to be in units of seconds from midnight on
Jan 1, 1980, local standard time. A file may be "touched" to update
it's modify time to the current clock time using the CLKTIME function
with a call such as
stat = futime (fname, NULL, clktime(0))
Remote files are handled via the KI interface automatically. Also
installed a test procedure for the routine in zzdebug.x (7/7/03, MJF)
sys/ki/mkpkg
sys/ki/ki.h
sys/ki/kfutim.x +
Install KI wrapper routine for the new futime() VOS function. We need
to include this function in the KI to touch remote files. NOTE: the
routine uses a new opcode KI_ZFUTIM with a previously unused value so
programs which use futime() should be prepared to catch an error return
when talking with older versions of the KI. (7/7/03, MJF)
lib/syserr.h
lib/syserrmsg
Created a new SYS_FUTIME error message for futime() function
indicating the times couldn't be reset. (7/7/03, MJF)
pkg/immatch/src/imcombine/src/generic/icstat.x
Fixed an incorrect declaration for asumd() (7/8/03, MJF)
pkg/images/imgeom/src/t_imshift.x
Fixed and incorrect declaration for clgetd() (7/8/03, MJF)
dev/hosts
Added new ssun machine 'tarat'. (7/11/03, MJF)
pkg/cl/gram.c
Conversion of sexagesimal numbers such as "=89:59:59.99" was producing
incorrect results due to round-off garbage in the seconds value when
parsing the string with a scanf() call. Retained the scanf parse
to allow for continued checking of bad values, but returned the
converted sexagesimal number using the libc atof() routine. (7/31/03,
MJF)
sys/imio/iki/fxf/fxf.h
sys/imio/iki/fxf/fxfopen.x
sys/imio/iki/fxf/fxfrfits.x
sys/imio/iki/fxf/fxfupdhdr.x
sys/imio/iki/fxf/fxfopix.x
sys/imio/iki/fxf/fxfdelete.x
sys/imio/iki/fxf/fxfplwrite.x
Fixed a bug in the FITS header cache in which the images weren't
properly being marked as "dirty" when two processes were operating
on the same image and the first process updates the header within
the same clocktick second that another process the accesses the image,
e.g. MKHEADER updates and image and IMHEAD doesn't see the change.
The solution was to artificially change the modify time on the file
using futime() so the header update logic notices a difference in
the modify time. Also, reset the rf_fit[slot] to a sentinal NULL
value each time it is freed. This is the fix for the so-called
"mkheader bug" reported by Gemini. (8/1/03, Zarate/MJF)
sys/imio/iki/fxf/fxfplread.x
Changed the code to handle both the old and new plio storage
formats automatically. The newer, correct, format is used to
write extensions but the kernel will not detect images containing
the bug and workaround it accordingly. (8/5/03, Zarate)
unix/os/zfioks.c
unix/os/zfioks.c [pcix]
A previous change moving the debug open code had the side effect
of breaking the -log facility, moved it back (8/6/03, MJF)
sys/ki/irafks.x
sys/ki/kfutim.x
unix/hlib/knet.h
A typo in the knet name was keeping the new utime() function from
properly using the KI interface (8/6/03, MJF)
sys/ki/ki.h
File copies to remote machines has apparently been broken for a while.
What happened is that fcopy() set the SEQUENTIAL advice which caused
the optbufsize on the descriptor to go from 1K to 8K, but the fio
buffering would wait for the full 8K chars before writing to the KS.
This was larger than the 1K buffer allocated in the KI for the text
buffer and would trigger a write error the first time called, leaving
a null file on the remote machine. Modified SZ_TXBUF in <ki.h> to
be large enough for the sequential text file buffers, the change
appears to be backwards compatible to older irafks.e servers and did
not affect binary file i/o. (8/7/03, MJF)
sys/imio/iki/fxf/fxfupdhdr.x
If editing keywords in the PHU and the keyword EXTEND is T, its value
will change to F. Fixed. (8/20/03, Zarate)
unix/hlib/mkfloat.csh
unix/hlib/mkfloat.csh [pcix]
Some new Linux distros such as RH9 no longer contain a 'compress'
command as part of the base system meaning this script would fail
when reconfiguring external package architectures or the core
system. Modified the script to work with either 'compress' or
'gzip' and '.Z' or '.gz' extensions. Also added a warning message
for the longstanding failure when a package 'bin' is a directory and
not a symlink. (8/22/03, MJF)
unix/os/zfiond.c
unix/os/zfiond.c [pcix]
When calling ZAWRND on a text-mode device the number of bytes being
converted was incorrect and could lead to a segvio. This is because
the VOS assumes this is a binary file driver and would multiply the
'nbytes' arg by SZB_CHAR in awrite() before the call to the kernel,
passing the true number of bytes and not the number of chars. When
the routine converted the SPP chars to C chars it would then run off
the end of the array, producing garbarge. Fixed the loop index and
added some extra ERR return values. (8/22/03, Valdes, MJF)
unix/os/zfiond.c
Imported the signal code to catch a SIGPIPE when the server has died
from the PC-IRAF version of the code. (8/22/03, MJF)
imio/iki/fxf/fxfupdhdr.x
A statement (call fxf_not_incache) to re-read the PHU from the
current file was been called under the wrong condition. Repositioning
the call fixed the problem. (08/26/03 Zarate)
dev/hosts
Added new Linux server 'crux' (8/26/03 MJF)
unix/os/zfiond.c
unix/os/zfiond.c [pcix]
Added parens around the connect() call to workaround difference in
how the compiler evaluates the expression (9/3/03 MJF)
pkg/images/tv/display/t_display.x
The image may be specified as a template provided it match only one
image. (9/11/03, Valdes)
sys/imio/iki/fxf/fxfupdhdr.x
The statement 'call futime' has been moved from the previous
position in the source code, to update the value of mtime for the
file every time the file is modified. The value is modified by
adding 4 seconds. If one task updates the file, the mod time is
advance in 4 seconds. If another task updates the file again, its
mtime will be modified in 4 seconds. This way we will ensure that
if another tasks from another executable is updating the file, then
the mtime in the FITS cache will be differen, forcing a read of the
header fom disk. (9/15/03, Zarate)
dev/hosts
Added Dick Joyce's new Linux box 'fungo' (9/23/03 MJF)
sys/imio/iki/fxf/fxfopen.x
sys/imio/iki/fxf/fxfrfits.x
Fixed a problem in the use of IM_LENHDRMEM/IM_HDRLEN that was
causing a corrupted header card from IMCOMBINE for gemini.
(9/25/03, Zarate)
pkg/proto/maskexpr/meregfuncs.x
Fixed an type decl/usage error for me_is_in_range() (9/29/03, MJF)
pkg/proto/maskexpr/peregfuncs.x
Fixed a size decl error in a salloc call in pe_lines() (9/29/03, MJF)
sys/imio/iki/fxf/zfiofxf.x
sys/imio/iki/fxf/fxfrdhdr.x
Changed bfloat = !(lscale && lzero) to !(lscale || lzero). It could be
that one header keywords BSCALE or BZERO are defined in the header.
If the value is not default then set 'bfloat'. (9/29/03, Zarate)
sys/imio/iki/fxf/fxfopen.x
Made the access mode a read-only parameter (9/30/03, NZ/MJF)
sys/imio/iki/fxf/fxfupdhdr.x
Changed the behavior that the FK will delete the BSCALE/BZERO
keywords from the header for real/double images. If an image comes
in with bscale/bzero set for [rd] data the FK will refuse to open
the pixels since this is not supported/undefined by the standard.
Previously, something like adding a new header keyword would update
the header and remove the keywords, leading to a FITS image which
could be opened correctly but where the data values may not be
as intented. With this change the keywords are not removed and the
user must still correct the FITS image outside of the kernel and so
we avoid side effects which may lead to corrupt data. (9/30/03, NZ/MJF)
unix/os/zfiond.c
Added some missing braces around the binary write in ZAWRND, and
incremented the jmpset flag to accomodate a previous change
(10/1/03, MJF)
unix/os/zfiond.c [pcix]
Added some missing braces around the text write in ZAWRND to fix
a problem in how the nested if's were being interpreted which was
breaking the ND driver for text files. (10/1/03, MJF)
unix/os/zgmtco.c [pcix]
Removed an #ifdef LINUX around <time.h>, this include is needed
on all PC-IRAF systems. (10/7/03, MJF)
sys/fmtio/patmatch.x
Added an initialization for nchars_matched in gpatmatch() to
properly handle the case of matching a null string (11/21/03 MJF)
sys/imio/iki/zfiofxf.x
sys/imio/iki/fxfrdhdr.x
Changed bfloat = !(lscale || lzero) to (!lscale && !lzero). The
earlier change was made to handle the case where only one of the
bscale/bzero values was not the default, but the logic was wrong
when one of the value *was* the default. This would prevent the
scaling from being properly applied. (11/26/03, MJF)
dev/graphcap
dev/graphcap [pcix]
Changed the offset/width for the uepsfl entry to use more of the
page and avoid clipping problems (11/26/03, MJF)
dev/hosts
Added dtsn1/pipedevn (11/30/03, MJF)
sys/psio/font.com
Changed type of 'i' index variable used in the common from short
to integer to satisfy some (g77) compiler complaints (11/30/03, MJF)
sys/fio/vfnmap.x
Moved the vvfn_checksum() function to the end of the file to fix a
forward reference error (11/30/03, MJF)
pkg/system/help/lroff/center.x
pkg/system/help/lroff/dols.x
pkg/system/help/lroff/getarg.x
pkg/system/help/lroff/lroff.x
pkg/system/help/lroff/lroff2html.x
pkg/system/help/lroff/lroff2ps.x
pkg/system/help/lroff/section.x
Renamed the 'getarg' procedure to avoid clash with intrinsic fortran
function name (11/30/03, MJF)
dev/tapecap [pcix]
Changed the default symlink to point to tapecap.linux (12/3/03, MJF)
pkg/cl/cl.par
unix/hlib/motd
unix/hlib/login.cl
unix/hlib/zzsetenv.def
Changed the cl.version and cl.logver to "IRAF V2.12.2 December 2003"
and updated the motd for the V2.12.2 patch release (12/04/03, MJF)
unix/hlib/install
Updated with recent bug fixes reported to site support (12/4/03, MJF)
local/login.cl
local/login.cl [pcix]
Updated with changes made in the last few years to the default
hlib$login.cl as well as the logver string. The iraf account login.cl
is a handcrafted version which shouldn't be recreated w/ mkiraf.
(12/4/03, MJF)
sys/imio/iki/fxf/fxfopen.x
sys/imio/iki/fxf/fxfrfits.x
Fixed a problem in which the IM_HDRLEN and IM_LENHDRMEM struct
elements could be out of sync when the header size was increased.
(12/4/03, Zarate/MJF)
unix/boot/spp/xc.c
Newer versions of tcsh no longer allow a dash in an environment
variable, rendering the XC-CC type variable useless. Modified the
code to allow the variable with either a dash or an underscore.
Also, added support for XC-CFLAGS, XC-FFLAGS, and XC-LFLAGS (along
with the undercore complement) as a means of passing in flags
peculiar to the compiler being changed. (12/4/03, MJF)
unix/boot/spp/xc.c [pcix]
Made the same set of environment changes. In addition, added minor
support for 'g77' as a compiler by checking the XC-F77 value and
modifying the link line to use -lg2c instead of -lf2c. (12/4/03, MJF)
unix/bin.redhat/libcompat.a [pcix]
Added the object files ctype-info.o, C-type.o and C_name.o from
the glibc-2.2.5 libc.a. Newer systems such as RedHat 9 have moved
to glibc-2.3 where the standard string functions like isdigit() are
now defined in <ctype.h> using new localization definitions, meaning
the symbol "__ctype_b" would be unresolved in libos.a. By importing
these object on RH9 systems the missing symbols are resolved and
iraf uses the old glibc-2.2 ctype behavior. (12/4/03, MJF)
unix/boot/spp/xc.c [pcix]
Added a -lcompat library to the LINUX link lines so that this is
included following the system libos.a to pick up needed symbols on
glibc 2.3 systems. (12/4/03, MJF)
unix/boot/spp/xpp/mkpkg.sh
Removed a comment preventing the executble from being properly
installed (12/4/03, MJF)
unix/hlib/irafuser.csh [pcix]
Deleted static link from the HSI_LF for redhat/suse. Aside from the
unresovled symbol issue, many of the HSI binaries built statically
under older systems would segfault on new linux systems. Dynamic
linking against libc seems to solve this problem. (12/4/03, MJF)
mkpkg
Modified the toplevel mkpkg to touch hlib$utime each time the system
is built. The purpose of the utime file is to act as a flag to the
CL to indicate when the uparm files may be out of date, the file time
is updated by the install script. However, many users with existing
installations simply overlay the new release and don't rerun the
install script so we see more parameters errors (indeed it's been
more than 6 years since utime was touch on tucana). By updating
the utime file w/ each build we're guaranteed to have a current
parameter update mechanism even on the development machines.
(12/4/03, MJF)
unix/hlib/as.redhat/zsvjmp.s [pcix]
Testing under Fedora (gcc 3.3/glibc 2.3) showed the loader segfault
which has been reported recently on some newer SuSE systems. This
was traced to a elf procedure when loading zsvjmp.o, the problem is
apparently in the definition of 'mem_' to an absolute zero value.
The fix is to comment out the definition in zsvjmp and define the
value on the link line. (12/5/03, MJF)
unix/boot/spp/xc.c [pcix]
Modified to add "-Wl,--defsym,mem_=0" to the link line for linux.
(12/5/03 MJF)
----------------------------------------
V2.12.2-BETA patch generated. (12/6/03, MJF)
local/.login [pcix]
Minor changes to define IRAFARCH for suse correctly (12/12/03 MJF)
unix/hlib/f77.sh [pcix]
Generalized the -O and -f* optimizer flags to the script in order to
pass in more GCC options. Had to move the -f2c flag so it was
handled separately before the -f options. (12/17/03, MJF)
unix/boot/spp/xc.c [pcix]
More changes to allow for runtime configuration: 1) The optimizer
flags were generalized to allow greater configuration on each platform.
The default is "-O3 -fstrength-reduce -fpcc-struct-return" but these
may be overridden by the user and will be tuned when the final system
is built. 2)The user-defined XC_[CFL]FLAGS were moved to be the last
things defined so they could override the hardwired options (primarily
the optimizer). 3) The addflag() procedure was renamed addflags()
and generalized to allow multiple flags to be passed in (such as from
XC_FFLAGS) as a single string - the routine splits into separate
arguments on whitespace (12/17/03, MJF)
pkg/cl/gram.c
pkg/cl/unop.c
pkg/cl/binop.c
pkg/cl/operand.h
Added several new builtin functions to support the Gemini programming.
These include:
isindef(expr)
Can be used to check for INDEF values in expressions. INDEF
values may be tested for equality, however when otherwise used
in a boolean expression the result of the boolean is also
INDEF. This function can be used to trap this particular
case, or for INDEF strings/variable directly. Result is a
boolean yes/no.
strldx(chars,str)
Complement to the stridx which returns the last occurance of
any of 'chars' in 'str'. Returns index of last char or zero
if not found.
strlwr(str)
Convert the string to lower case, returns a string.
strupr(str)
Convert the string to upper case, returns a string.
strstr(str1,str2)
Search for first occurance of 'str1' in 'str2', returns index
of the start of 'str1' or zero if not found.
strlstr(str1,str2)
Search for last occurance of 'str1' in 'str2', returns index
of the start of 'str1' or zero if not found.
The new string functions are particularly use for dealing with
pathnames where one needs to find and extension, separate a file
from a path prefix, and so on. New builtin functions may be added
in the next release if needed.
Also, modified the substr() function to allow a 'last' index greater
than a 'first' index, in which case the returned string is reversed.
(12/18/03, MJF)
language/language.hd
language/doc/strings.hlp
language/doc/isindef.hlp +
Modified/added help text for the above functions. (12/18/03, MJF)
lib$helpdb.mip
noao$lib/helpdb.mip
Rebuilt the help databases to pick up recent changes to .hd files.
(12/18/03, MJF)
unix/boot/spp/xc.c
Ported the XC changes made to the PC/IRAF system above to the Sun/IRAF
version. We won't play with resetting the optimization levels for
this release, however the flags are in place to allow the system to
rebuilt to change these if needed. (12/18/03, MJF)
unix/hlib/f77.sh [pcix]
Added support for flags beginning with '-m' to pass thru machine
optimizations used for platform-specific tuning. (12/18/03, MJF)
unix/hlib/mkfloat.csh [pcix]
Use of "`which compress`" was causing problems on newer RH systems.
Code was modified to check in other ways (12/18/03, MJF)
local/.login [pcix]
The login file sourcing the .cshrc file would cause a hang on linux
systems using LDAP. Commented this out since the it's redundant w/
the way the .cshrc is loaded at login anyway. (12/19/03, MJF)
sys/imio/iki/fxf/fxfopen.x
sys/imio/iki/fxf/fxfrfits.x
Backed out of earlier change which modified the IM_HDRLEN/IM_LENHDRMEM
values when trying to expand the userarea. This resulted in invalid
userarea sizes reported by IMHEAD as well as memory corruption problems
when dealing with extremely large headers. It was determined that the
correct fix was to increase on the size of the local image pointer
used during the header pre-read. (12/19/03, NZ+MJF)
sys/imio/iki/fxf/fxfupdhdr.x
Restored the removal of BSCALE/BZERO keywords from the header earlier
deleted on 9/30/03. While the problem mentioned then is still
possible, it's less likely than those caused by the HSTIO interface
circumventing the imio keyword interface which rewrites these
keywords to the header. Will look at the issue again for the
next release (12/19/03, NZ+MJF)
sys/imfort/imdelx.x
The declaration for the 'image' argument wasn't done as an array
which could lead to a segfault or corrupted image name. (12/19/03, MJF)
sys/imfort/imrnam.x
While tracking down a different problem, noticed that the args to
this function are fortran char*(*) typed but were being passed to
the strne() and imdelx() procedure which want the SPP char types.
Unpacked the strings for the strne() test, and changed the call to
imdele(). (12/19/03, MJF)
sys/imfort/bfio.x
The int bfflsh() procedure could return without a value (12/27/03, MJF)
pkg/images/immatch/imalign.cl
Restructured to avoid goto statements, no functional changes
(12/29/03, MJF)
unix/hlib/as.suse/zsvjmp.s [pcix]
unix/hlib/as.linux/zsvjmp.s [pcix]
Commented out the global definition of mem_ as was done for RedHat.
The symbol is defined on the command line for all linux systems in
xc.c now so this shouldn't matter to most users. The one exception
to this is IMFORT users who build from a makefile or the command
line using something other than XC/FC to compile. These users will
now be required to add a "-Wl,--defsym,mem_=0" to their build command
to avoid an unresolved 'mem_' symbol when linking. This will likely
become a new FAQ but is unavoidable for the moment since recent
versions of binutils tools like 'ld' on some linux platforms crash
when linking zsvjmp.o with mem defined as a global symbol.
(12/29/03, MJF)
unix/os/zzstrt.c [PCIX]
The definition of 'environ' would cause an error on some linux
systems as it was a redefinition from <unistd.h>. Since this is
only used in the code when building shared libs the declaration
was moved to be under a "#ifdef SHLIB" which isn't used currently
for PC-IRAF (12/29/03, MJF)
unix/boot/spp/xc.c
Fixed a small bug in the new addflags procedure affecting only
Solaris x86 (12/31/03, MJF)
------------------------------------------------------
V2.12.2-BETA -- second patch generated. (1/2/04, MJF)
pkg/dataio/export/exraster.gx
Fixed a bug in computing the number of output pixels (1/5/04, MJF)
pkg/images/immatch/src/geometry/t_geoxytran.x
pkg/images/immatch/src/geometry/trinvert.x +
pkg/images/immatch/src/geometry/mkpkg
pkg/images/immatch/geoxytran.par
pkg/images/immatch/doc/geoxytran.hlp
A new parameter "direction" was added to GEOXYTRAN to allow
evaluating the transformation in either the forward direction (the
previous behavior and default with the new parameter) or the
backward direction. The help page was updated to describe this new
feature and address confusion over the relationship between geomap,
geotran, and geoxytran. (1/7/04, Valdes)
sys/ki/irafks.x
Minor changes to the debug output to make it easier to trace the
execution of the kernel server. A new routine was added to convert
the KI opcodes to human-readable strings. (1/7/04, MJF)
unix/os/zfioks.c
unix/os/zfioks.c [pcix]
An earlier change designed to clean up zombie irafks.e processes could
sometimes result in the parent irafks.e being stuck in a wait() and
blocking any further connections. Backed out of the earlier change
and left in the development code which installs a specific SIGCHLD
handler, but still doesn't quite get it done it a reliable and
portable way so zombies are still possible.
For most users the zombies won't be a problem since they'll go away
automatically once the parent times out. In situations such as the
pipeline where many zombies can be created it's possible to define
port=0 in the user .irafhosts file to fork a new parent irafks.e
for each connection (the so-called 'once-only' option in the code).
Each in.irafksd that gets spawned belongs to the same process group,
but a waitpid(0,...) fails to properly clean up all the children.
Whether this is a linux-specific problem or the semantics of how
the SIGCHLD is delivered when multiple processes exit at the same
time (such as with a 'flpr') is unclear. Since this is a non-fatal
problem it will be resolved for the next release, for now the problem
is no worse than it's always been and there is some extra debugging
code available to look at this again next time around. (1/7/04, MJF)
sys/etc/cnvdate.x
sys/etc/cnvtime.x
Fixed a typo in the description of the iraf epoch (1/8/04, MJF)
sys/etc/dtmcnv.x
Added a new dtm_ltime() procedure to convert a DATE-OBS string to
the number of seconds since the start of the iraf epoch. (1/8/04, MJF)
sys/pkg/system/mkpkg
sys/pkg/system/system.cl
sys/pkg/system/system.hd
sys/pkg/system/system.men
sys/pkg/system/x_system.x
sys/pkg/system/touch.x +
sys/pkg/system/touch.par +
sys/pkg/system/doc/touch.hlp +
Added a new TOUCH task that can be used to update the access/modify
times of files, or create a zero-length file. Behavior is similar
to the unix command of the same name. Times may comes from the
current system clock, a user-specified string, or a reference file.
The task was needed by the pipeline project which needs to be able
to create trigger files on remote iraf nodes. (1/8/04, MJF)
lib/helpdb.mip
Rebuilt to pick up the new TOUCH task. (1/8/04, MJF)
local/login.cl [+pcix]
unix/hlib/login.cl [+pcix]
Removed the declaration of the unix 'touch' foreign cmd. Users who
don't do a new MKIRAF will continue to see the foreign command unless
the SYSTEM package is explicitly loaded. (1/8/04, MJF)
pkg/cl/cl.par
unix/hlib/motd [+pcix]
unix/hlib/login.cl [+pcix]
unix/hlib/zzsetenv.def [+pcix]
Reset the value of cl.logregen to advise users to update with a new
MKIRAF. Also reset cl.version="IRAF V2.12.2 January 2004 and
cl.release="2.12.2" in preparation for the final release (1/8/04, MJF)
local/.login [pcix]
unix/hlib/install [pcix]
unix/hlib/irafuser.csh [pcix]
Minor changes to define linuxppc arch (1/9/04, MJF)
unix/bin.linuxppc/mach.h +[pcix]
Added version which set the proper byte swap for linuxppc (1/9/04, MJF)
unix/os/zgcmdl.c [pcix]
Added ifdef's for xargv/xargv to use f__argv/f__argc defined
on linuxppc which uses libg2c (1/9/04, MJF)
unix/hlib/libc/varargs-linuxppc.h [pcix]
Updated with newer version from YellowDog 3.0 (1/9/04, MJF)
unix/boot/spp/xc.c [pcix]
Various changes needed for YDL linuxppc. (1/9/04, MJF)
unix/hlib/sysinfo [pcix]
Minor changes to define linuxppc arch (1/11/04, MJF)
pkg/images/immatch/src/imcombine/src/xtimmap.gx
Copying the IMIO structure to an internal structure required two
amovi calls in order to maintain alignment. (1/12/04, Zarate/Valdes)
pkg/cl/gram.c
The sign wasn't being properly applied to sexagesimal strings due
to an earlier change. (1/12/04, MJF)
sys/imio/iki/fxf/fxfrfits.x
sys/imio/iki/fxf/fxfupdhdr.x
Changes to have the FITS files reflect the actual modify time
of the file. (1/12/04, Zarate/MJF)
lib/gio.h
sys/gio/cursor/gtr.h
Increased the value of KSHIFT from 100 to 10000. This is the fix
for the latest "imdkern bug". The KSHIFT value is used to encode the
process slot and stream value to the pr_pstofd fio descriptor table
(etc$prc.com) using the expression ((pr * KSHIFT) + stream). A check
for redirection is done (in etc$prpsio.x and gio$cursor/gtropenws.x)
by checking this encoded value against the FIRST_FD/LAST_FD values and
if it falls in-between the cursor code assumes the stream has been
redirected to a file.
Prior to the V2.12 release, the max number of file descriptors
was raised from 256 to 4096 and so the code (-306 in this case, the
negative being a flag that the metacode should be filtered for GIO
workstation transformation, but the abs value is used for the redir
check) was mistakenly assuming the imdkern stream was always redirected
and not writing the data to the stream until a gflush occured. Inc-
reasing the KSHIFT puts the encoded value once again beyond LAST_FD
unless the stream truly has been redirected, in which case it gets a
normal fio descriptor value. (1/22/04, MJF)
unix/hlib/mkpkg.sf.SSUN
Added DATAIO to the list of binaries linked nonshared. The EXPORT
task is sometimes used on large images and hits the 268Mb limit,
this is a fairly minor change to avoid that problem. (1/22/04, MJF)
unix/bin.sparc/gterm.e -
unix/bin.sparc/imtool.e -
Deleted these old binaries from hbin$. It's doubtful they would
ever be used, and if the world ever reverts to SunView again we
can rebuild them or get the binaries from an old release (1/22/04 ,MJF)
unix/hlib/login.cl
unix/hlib/login.cl [pcix]
Moved the loading of the 'clpackage' in front of the 'user' package
definition to allow loginuser.cl to override package definitions
and/or load packages defined in the clpackage.cl (1/23/04, MJF)
-----------------------------------------------------------
V2.12.2 -- system frozen for final release. (1/23/04)
local/login.cl
Fixed small typo in the logver string. (1/25/04, MJF)
unix/hlib/motd
Updated the timestamp on the motd file. (1/25/04, MJF)
sys/imio/iki/fxf/fxfrfits.x
A typo was accessing the FIT_MTIME struct with the wrong pointer.
(1/27/04, Zarate)
unix/hlib/motd
unix/hlib/zzsetenv.def
Reset version strings to V2.12.2-EXPORT (1/29/04, MJF)
unix/hlib/mkpkg.inc [pcix]
unix/hlib/irafuser.csh [pcix]
Removed static link flag from linux architecture. Originally
this was done to provide a platform that could be expected to
run on a number of distributions where versions of the shared glibc
libs could be unresolved. The problem is that now it's more
common to have a problem in the implementation of the glibc
making use of new kernel structs or POSIX interfaces leading to
a segfault from a simple C system call. (1/30/04, MJF)
unix/hlib/fc.csh [pcix]
Added a missing architecture check for LinuxPPC (1/30/04, MJF)
unix/boot/spp/xc.c
Added a '-G' flag to XC to force the task to link with '-lg2c'
instead of '-lf2c'. On LinuxPPC this is the required default
behavior, but when using e.g. the Absoft compiler the g2c lib is
required. (1/31/04, MJF)
mkpkg [pcix]
noao/mkpkg [pcix]
Forgot to add a linuxppc architecture branch (2/1/04, MJF)
pkg/images/immatch/src/imcombine/src/xtimmap.gx
An earlier change to increase the path length was somehow lost.
(2/3/04, Valdes)
unix/hlib/cl.csh [pcix]
Last-minute testing under RHEL showed a segfault in nearly all
tasks. This was traced to a number of pointer values being returned
by the system at addresses outside of the process stack space.
This also affects Fedora systems and may well become a problem for
other distributions using newer kernels. Until this is better
understood, added a "limit stacksize unlimited" call to the cl.csh
startup script as a workaround for processes started from the CL.
This is still an issue for IMFORT tasks and will require the user
to do the same in their .cshrc file, however it should be a (mostly)
harmless change for most users. (2/5/04, MJF)
-----------------------------------------------------------
V2.12.2 -- Final (really) release builds begun. (2/5/04)
V2.12.2 -- Public release. (2/7/04)
-----------------------------------------------------------
pkg/cl/cl.par
unix/hlib/motd [+pcix]
unix/hlib/login.cl [+pcix]
unix/hlib/zzsetenv.def [+pcix]
Incremented system version to V2.12.3-DEVELOP. Also reset cl.version
to "IRAF V2.12.2 February 2004 and cl.release to "2.12.3". (2/9/04, MJF)
sys/imio/db/impstr.x
Fixed a problem where modifying a boolean keyword or a numeric
value could corrupt the comment string. (3/1/04, MJF)
pkg/images/imcoords/src/t_wcsctran.x
An error in mw_openim was trapped but the garbage in the return value
caused a segmentation error during error recovery. A fix was made to
this and also to report, as a comment, the MWCS error.
(3/12/04, Valdes)
sys/mwcs/mwopenim.x
sys/mwcs/mwloadim.x
Allocation of the WCS descriptor was moved from before reading the
WCS cards and before calling mw_loadim until after the cards
are read in mw_loadim to allow creating a descriptor based on the
WCS dimensionality rather than the image dimensionality. In
particular, it is no longer an error if the image dimensionality
is zero. (3/12/04, Valdes)
sys/mwcs/iwrfits.x
The dimensionality returned from reading the WCS cards is now
set to the maximum axis seen when the image dimensionality
is zero and there is no WCSDIM card. (3/12/04, Valdes)
pkg/images/imcoords/src/t_wcsctran.x
If the image dimensionality is zero then use the WCS dimensionality.
(3/15/04, Valdes)
pkg/cl/binop.c
Fixed a bug in the new strstr()/strlstr() which could fail due to a
pointer increment side-effect when the last char of the search string
didn't match. (3/22/04, MJF)
pkg/cl/binop.c
The concat operator could create garbage in the output string when
the first operand was not a string. The problem is that the operands
are popped from the stack in reverse order, but when the first op
is recast as a string it then gets a string storage area which can
overwrite the pointer of the second op. The popop() program comments
even warn that the string should be used before another pushop() (as
is done in opcast()) or else the string will be clobbered. Added code
to preserve the second string (3/22/04, MJF)
pkg/cl/login.cl
Updated the 'logver' version. (3/22/04, MJF)
unix/hlib/install
Updated the version string. (3/22/04, MJF)
sys/mwcs/iwgbfits.x
Fixed a bug where WAT keyword strings could be concatenated inadvert-
antly, e.g. WAT1_001='wtype=linear' and WAT1_002='system=world'
could result in concatenated values without a separating space. Since
concatenation is needed in some cases (e.g. TNX projection coeffs),
a space is only added when the string terminates before col 80 of the
card, indicating a completed string. (3/23/04, MJF)
pkg/images/imutil/src/hedit.x
The task could segfault when initializing/adding a new keyword with a
null value. The evexpr operator was being initialized as a scalar and
the string pointer wasn't allocated, added a check so string pointer
is always allocated to at least one char. (3/23/04, MJF)
pkg/cl/builtin.c
pkg/language/language.hd
pkg/language/language.men
pkg/language/doc/which.hlp +
Implemented a new 'which' and 'whereis' set of commands. The 'which'
command searches the package list in reverse order and returns the
first package containing the task, 'whereis' returns a space-delimited
list of all packages containing that task. These are user-convenience
functions mostly, e.g. with many packages loaded and tasks multiply
declared it might not be obvious which instance of a task is actually
being called.
Note, these commands only search the list of loaded packages, in
some cases the user may actually want to find all instances of the
task in the system, but this is better left as a help/references
option (TBD). (3/25/04, MJF)
sys/mwcs/iwgbfits.x
As earlier fix to this routine had an off-by-one error (3/30/04, MJF)
sys/etc/main.x
Modified so the return of the ONENTRY call can contain a status value
in the higher bits. The test for PR_EXIT does a 'mod(i,2)' and so
tests only for the process return code. The optional status value
is recovered and returned to zmain(). (4/7/04, Valdes/MJF)
pkg/cl/main.c
pkg/cl/builtin.c
Added an optional argument to the logout() command which will return
a status value to the shell in #!cl scripts. If no argument is
present the status is zero (OK) as before and the return of the
c_main() remains just PR_EXIT to the iraf main. Otherwise, the
status is shifted left one bit and or'd with the PR_EXIT so the
main still interprets the value correctly. In the iraf main, the
status is recovered and return to the zmain which calls exit() to
set the $status shell variable. (4/7/04, Valdes/MJF)
unix/hlib/libc/iraf.h [+pcix]
Added ifdef code for new import_fpoll directive. (4/7/04, MJF)
unix/hlib/libc/xnames.h [+pcix]
Added definitions for NDOPEN and the new POLL interface functions
(4/7/04, MJF)
unix/hlib/libc/knames.h [+pcix]
Added definition for new zfpoll() HSI routine. (4/7/04, MJF)
unix/hlib/libc/fpoll.h [+pcix]
Added include file to define the kernel poll structure (4/7/04, MJF)
unix/os/mkpkg [+pcix]
unix/os/zfpoll.c [+pcix]
Added new zfpoll() kernel routine. (4/7/04, MJF)
sys/libc/mkpkg
sys/libc/cpoll.c +
sys/libc/cndopen.c +
sys/libc/creopen.c +
Added LIBC bindings for the network driver ndopen/reopen functions
and the new polling interface. (4/7/04, MJF)
iraf/lib/poll.h +
Added VOS <poll.h> interface file. (4/7/04, MJF)
sys/fio/mkpkg
sys/fio/poll.x +
sys/fio/zzdebug.x
Added a new FIO interface for polling file descriptors. The
interface is described in the fio$poll.x source comments and
consists mainly of routines to manage an internal data structure
of descriptors to be polled, along with the primary poll() procedure.
See the test programs in fio$zzdebug.x for usage examples.
This interface operates in a manner similar to the unix poll
command, i.e. it will block until the is activity (either input or
output) on one or more of the file descriptors in the set. Any
FIO file descriptor may be added to the polling set, including
ND descriptors. This makes it easier to now write iraf client/server
tasks with multiple inputs (e.g. accept a new connection, read
data on a socket, write to a file when it's ready, etc), or tasks
which can't afford to block waiting for input from a particular
source. The STDIN/STDOUT streams and any file descriptor returned
from FIO may be added to a poll set. Currently, polling on graphics
streams, or CLIO is not supported.
(4/7/04, MJF)
pkg/cl/gram.c
Modified the addpipe() procedure to change the pipecode increment
to be 1000 rather than just one to avoid pid conflicts when multiple
CLs are started nearly simultaneously. Also, added code to pipefile()
to permit a user-defined 'pipes' directory to be used in preference
to uparm and tmp. (4/8/04, Valdes/MJF)
sys/imio/iki/fxf/fxfopix.x
Under certain conditions when in APPEND mode, if the entry
FIT_PIXOFF(fit) is not set, then the 'write blanks' routine does
not append a blank header at the right location. Setting it to the
correct value solves this problem. (4/21/04, NZ/MJF)
unix/hlib/iraf.h
Forgot a redefinition of 'poll' to 'xfpoll' in libsys.a (5/4/04, MJF)
sys/mwcs/mwloadim.x
sys/mwcs/iwewcs.x
There is now a check when setting up the WCS from a FITS header
that the CD and LTM matrices have scales defined for all axes.
Note that when there are no keywords unit matrices are
automatically set. It is a problem only when there is a partial
set of keywords. A typical type of format error is when the the
3rd or higher dimensions are degenerate and no WCS keywords are
included. Rather than waiting for a singular matrix error to occur
(and some applications don't catch this error and later seg fault
or do something else bad) MWCS will now add a unit scale in the
diagnoal element; e.g. CD3_3 = 1. The default action is to add the
scale and issue a warning. The "wcs_matrix_err" environment
variable may be set to 0 to eliminate the warning or 1 or 2 to
trigger an error that the application may trap or trigger an
abort. (5/5/04, FV)
pkg/proto/interp.x
pkg/proto/doc/interp.hlp
Removed the limit of 200 points from the interpolation table. The
task starts out with a max of 4096 and will dynamically increase the
tables as needed (5/5/04, MJF)
pkg/proto/intrp.f
pkg/proto/interp.x
The user requesting this task have the limit removed also had a
dataset which would fail due to floating point precision problems.
The task was modified to use doubles (5/6/04, MJF)
sys/imio/db/impstr.x
An earlier fix to this routine wasn't properly cleaning up the
string when editing existing keywords leading to an indexin problem.
(5/17/04, MJF)
dev/termcap
dev/graphcap
Added lw37 (6/29/04, MJF)
unix/hlib/install
On DUNX systems the code creating the libiraf.so link was removing
the .so extension and so only the old version of the shared lib was
still being used. Fixed. (6/29/04, MJF)
imio/iki/fxf/fxfupdhdr.x
If we need to write more than one block of blanks, substract
one line corresponding to the END keyword, since this will be
written after the blanks. (6/30/04, NZ)
sys/plio/plssize.x
Changed the initial allocation for the PL_MAXLINE line list buffer.
Previously this was roughly the npix/2 which assumed some compression
would be achieved. However, for extremely complex arrays this would
lead to a short buffer and rather than rely on catching all places
where this may need to be checked we adopt a more conservative value
of the entire length of the line (6/30/04, Valdes/MJF)
pkg/cl/cl.par
pkg/cl/login.cl
unix/hlib/motd [+pcix]
unix/hlib/login.cl [+pcix]
unix/hlib/zzsetenv.def [+pcix]
unix/hlib/install
Updated the version to 'V2.12.2a-BETA' (7/1/04, MJF)
pkg/proto/intrp.f
pkg/proto/interp.x
The earlier change to make the routines double precision had a
remaining use of a 'real' that was causing invalid calculations.
(7/2/04, MJF)
------------------------------------------------------
V2.12.2a-BETA -- patch generated. (7/2/04, MJF)
dev/hosts
Added new RH9 system denali (7/5/04, MJF)
lib/helpdb.mip
noao/lib/helpdb.mip
Rebuilt the help databases. (7/6/04, MJF)
sys/ki/irafks.x
Fixed typos in debug output strings. (7/6/04, MJF)
pkg/dataio/export/exzscale.x
pkg/dataio/doc/export.hlp
Added a new operand zscalem to do an automatic zscale calculation
with a selection expression to allow excluding bad pixels which
would otherwise perturb the result. The selection expression would
typically involve a bad pixel mask or a selection range.
(7/8/04, Valdes)
pkg/proto/maskexpr/t_mskregions.x
There was an error that did not allow the new mask to take on the
size of the reference image if one is specified. (7/8/04, Valdes)
dev/hosts
Added solarch, fixed arch for solarium (7/12/04, MJF)
unix/hlib/login.cl [+pcix]
Removed the check against TERM in the default terminal stty
command. The problem is that in most cases this will be set
by the user to 'xterm' whether it's correct or not (e.g. in their
unix environment or as a default for PC terminals like konsole).
Previously a TERM=xterm would do an 'stty xgterm' in all cases,
making the MKIRAF setting a no-op and effectively preventing users
from using XTerm properly. (7/14/04, MJF)
unix/hlib/motd [+pcix]
unix/hlib/zzsetenv.def [+pcix]
Updated the version to 'V2.12.2a-EXPORT' (7/14/04, MJF)
------------------------------------------------------
V2.12.2a-EXPORT -- patch generated. (7/14/04, MJF)
pkg/images/immatch/src/imcombine/src/icmask.x
pkg/images/immatch/src/imcombine/src/Revisions +
Added a feature to allow masks specified without a path to be found
either in the current directory or the directory with the image. This
is useful when images to be combined are distributed across multiple
directories. (7/16/04, Valdes, 8/31 removed unused declaration)
pkg/images/imutil/src/imgets.x
Modified to allow getting strings with double quotes.
(7/27/04, Valdes)
sys/imio/db/imgstr.x
Modified to handle strings with embedded single quotes as defined
by the FITS standard. (7/27/04, Valdes)
pkg/images/immatch/src/wcsmatch/t_wcscopy.x
Removed a check that would not allow dataless WCS to be copied.
(8/25/04, Cooke & Valdes)
math/gsurfit/gs_chomat.gx
The test for singularity would fail with certain kinds of problems
because the test used EPSILON (should have been EPSILOND for the
double precision) but this is for distinguishing numbers small
numbers from 1 and not from each other. The test is now done
with a comparison against the smallest real or double difference.
The place where this was found to be a problem was with CCSETWCS.
(8/31/04, Valdes)
noao/lib/strip.noao
unix/hlib/strip.iraf
Updated with recent architectures and dirs in NOAO (9/2/04, MJF)
local/src/doc/bswap.hlp
Removed execute permissions. (9/2/04, MJF)
dev/hosts
Added new linux boxes beagle/barium/trout (9/6/04, MJF)
dev/hosts
Added new linux boxes baires/marten (9/9/04, MJF)
hlib/install
FreeBSD 5 systems now use a devfs /dev directory. Minor changes
to keep from trying to create the /dev/imt1 fifo pipes on these
systems (10/7/04, MJF)
pkg/images/imcoords/src/t_ccsetwcs.x
The option to specify a list of images with a single plate solution
record, as described in the help, was not working. This was fixed.
(10/8/04, Valdes)
pkg/plot/t_implot.x
pkg/doc/implot.hlp
lib/scr/implot.key
The "image" parameter may now be a list and the 'm' and 'n' keys
are used to move through the image. This is an alternate, and
more convenient, version of the 'i' key.
(10/29/04, Valdes)
pkg/images/imutil/src/imexpr.gx
1) Fixed a bug in which expressions containing multiple parameter
operands (e.g. a.foo and b.bar) would be evaluated using only the
value of the last operand specified. This was happening because
a pointer was being recycled rather than copied and when the code
went back to patch the parameters it used only the last operand
specified.
2) Added the ability to use a parameter operand which references an
image operand not directly in the expression. For example, expr="b+c"
where a='dev$pix', b=a.foo, c=a.bar. This allows parameters from
e.g. a reference image to be used without requiring the image itself
to be used. (11/11/04, MJF)
pkg/cl/binop.c
A string length was declared as a signed char for strldx/strlstr
and would overflow for long strings. (11/22/04, MJF)
dev/hosts
Added new linux box 'leporis' (12/10/04, MJF)
unix/hlib/install
Fixed a typo in a do_tapes flag setting for OSX (4/15/05)
sys/imio/imloop.x
The loop construct would only work properly when the increment was
set to 1. Modified as:
OLD> if (v[dim] - ve[dim] == vinc[dim]) {
NEW> if (v[dim] - ve[dim] > 0) {
Now when the counter exceeds the VE by any amount the condition is
true. (5/3/05, Valdes/Fitz)
pkg/images/imfilter/src/t_runmed.x
pkg/images/imfilter/src/runmed.x
pkg/images/imfilter/src/rmmed.x
pkg/images/imfilter/src/mkpkg
pkg/images/imfilter/runmed.par
pkg/images/imfilter/doc/runmed.hlp
pkg/images/imfilter/imfilter.cl
pkg/images/imfilter/imfilter.hd
pkg/images/imfilter/imfilter.men
pkg/images/x_images.x
pkg/xtools/rmsorted.gx
pkg/xtools/rmturlach.gx
pkg/xtools/xtsample.gx
pkg/xtools/xtstat.gx
lib/pkg/rmsorted.h
Installed new running median task. (5/6/05, Valdes)
unix/hlib/install
Fixed a typo in an 'endiif' statement (6/7/05, MJF)
pkg/ecl/ +
images/imcoords/src/t_wcsedit.x
images/imcoords/wcsedit.par
images/imcoords/doc/wcsedit.hlp
Modified to allow a new data-less WCS header to be created of
dimensionality given by the new parameter "wcsdim".
(6/23/05, Valdes)
images/immatch/src/wcsmatch/t_wcscopy.x
images/immatch/doc/wcscopy.hlp
Modified to allow creation of a new data-less WCS header. Also checking
on image sizes and dimensionality was commented out.
(6/23/05, Valdes)
images/imcoords/src/mkcwcs.cl +
images/imcoords/src/mkcwwcs.cl +
images/imcoords/doc/mkcwcs.hlp +
images/imcoords/doc/mkcwwcs.hlp +
images/imcoords/imcoords.cl
images/imcoords/imcoords.men
images/imcoords/imcoords.hd
Two new tasks were added to create or modify simple and standard
celestial and celestial/wavelength WCS. The parameters are designed
to make it simpler for a user to specify WCS information in a
natural way without understanding the details of the WCS structure.
The tasks may be used to make data-less WCS for templates or to
add or update a WCS in an image. These scripts depend on the
changes to WCSCOPY and WCSEDIT which are the underlying interfaces
to the WCS.
(6/24/05, Valdes)
pkg/xtools/xtargs.x +
pkg/xtools/mkpkg
Simple interface to parse an argument string consisting of a list
of whitespace separated keyword=value pairs. (8/31/05, Valdes)
unix/os/zfioks.c
Added a setsockopt to the file to set the REUSEADDR option on the
socket (2/22/06, MJF)
images/immmatch/src/imcombine/src/icomb.gx
The addition of the sum option failed to add a case for selecting
how to set the keepids flag. Add SUM to the switch on line 229.
(2/28/06, Fitzpatrick, Valdes)
unix/os/zfioks.c
Added few new environment variables designed to control the behavior
of the network connections. Also improved some of the debugging
messages and added a 'C' or 'S' to distinguish code marked as
'client' or 'server' for easier tracing.
The first new variable is KS_RETRY which, if defined, is the number
of retry attempts using the default rsh (or KSRSH) protocol. The
task will sleep for 1 second between attempts and then loop back to
try again to make the connection, this is meant to avoid potential
clashes between multiple machines connecting simultaneously as with
the pipeline.
The second new variable is KS_NO_RETRY which when defined instructs
the task *not* to attempt a retry using the fallback rexec protocol.
This test is made after the KS_RETRY checks to allow for various
combinations of settings to allow the code to skip retries entirely
(i.e. define only KS_NO_RETRY), retry using the default protocol but
not with rexec (i.e. define KS_RETRY as some value and set KS_NO_RETRY),
or retry only with rexec (i.e. old behavior, don't define anything).
(3/20/06, MJF)
sys/etc/environ.h
Increased the size of various environment buffers to allow for longer
strings. This fixes a long-standing problem in XC where an excessively
long $PATH would cause a segfault in the envputs() routine. Should
also help with long helpdb strings in user-defined packages. (3/21 MJF)
lib/imio.h
Increased SZ_IMNAME from 79 to 128 per pipeline request. The extra
space is already allocated in the LEN_IMDES and this is the most we
can do without changing the runtime struct. (3/21/06 MJF)
unix/hlib/cl.csh
Fixed a bug in detecting the '-old' flag to start the CL rather than
the now-default ECL.
unix/hlib/motd
Updated release date.
======================================
Include Mac/Intel Port Notes
======================================
Mac/Intel Port Revisions:
==========================
local/.login
bin.macintel +
bin.macintel/IB.MACX.X86 +
noao/bin.macintel +
noao/bin.macintel/NB.MACX.X86 +
unix/bin.macintel +
unix/as.macintel +
unix/os/irafpath.c
unix/hlib/cl.csh
unix/hlib/fc.csh
unix/hlib/install
unix/hlib/irafuser.csh
unix/hlib/mkpkg.inc
unix/hlib/mkpkg.sf
unix/hlib/strip.iraf
unix/hlib/sysinfo
Set up architecture dirs/paths for port, added a '-DMACINTEL' to
HSI_CF. (1/30/06)
local/.cshrc
Added some personal preference aliases.
unix/os/zfiond.c
Ifdef'd a <sys/select.h> to get the definition of a struct timeval
for the select() call (1/30/06)
unix/boot/mkpkg/host.c
Had to include "mkpkg.h" to pick up the struct symbol def in
extern.h (1/30/06)
unix/bin.macintel/rpp.e
Issues with nested switch-case, using the macosx version for now
unix/bin.macintel/f2c.[eh]
Copied from bin.macosx
pkg/mkpkg
Added ECL to package list of directories to be built.
pkg/utilities/mkpkg
pkg/utilities/pffctn.x
pkg/utilities/t_polyfit.x
Broke out the pf_fctn() to a separate file to work around the
extern declaration problems in f2c that couldn't be handled in
f2c.h..
unix/as.macintel/zsvjmp.s
Implemented the ZSVJMP procedure for this OS/arch. Appears to
be working as expected and according to the zzdebug routine.
unix/as.macintel/zz_zsvjmp.c +
Renamed from zz.c. This is a demo code of what the zsvjmp.s is
supposed to do that can be used in future ports. Added more comments
to the header for reference.
unix/as.macintel/f2c.tar.gz
Added a source distro of F2C used in building the binaries on this
system. We hadn't previously kept this in the tree and F2C is normally
installed on this platform. We can move to GFORTRAN at a later point or
as an option but that isn't yet ready for Mac/Intel or a standard part
of the Xcode.
unix/bin.macintel/f2c.h
Modified typedefs for extern problem.
unix/hlib/libc/stdarg.h
unix/hlib/libc/stdarg-osx.h +
Added the GCC stdarg.h to the libc directory so it will be included
properly. We can't simply include <stdarg.h> because the include chain
has hlib$libc at the head and this would lead to a recursive error.
Adding files to the special files list to compile -Inolibc is an option
but not for external packages so we compromise with a platform-specific
include in the libc directory.
unix/boot/mkpkg/host.c
Needed to include "mkpkg.h" to get 'struct symbol' definition
properly.
unix/boot/mkpkg/scanlib.c
Added support for the "4.4bsd archive extended format #1" used
on this system. Fixes a problem where everything in an archive would
always be rebuilt.
sys/fmtio/evexpr.y
sys/fmtio/evvexpr.gy
Fixed a bug in the string-matching operator '?=' where the patstr
pointer wasn't initialized, and then wasn't used after translating a
pattern such as '*foo*' to use '?*foo?*' closures.
sys/mwcs/mkpkg
sys/mwcs/wfzpn.x
sys/mwcs/wfinit.x
Installed a ZPN projection driver from the Cambridge Astronomical
Survey Unit.
local/bugs.log
local/notes.v212
unix/os/zfioks.c
noao/lib/helpdb.mip
pkg/images/Revisions
pkg/images/imcoords/src/mkcwcs.cl
pkg/images/immatch/doc/geotran.hlp
pkg/images/immatch/doc/imcombine.hlp
Sync'd with latest from tucana.
pkg/images/immatch/src/imcombine/src/icomb.gx
Installed path for buglog 552.
noao/nproto/Revisions
noao/nproto/nproto.cl
noao/nproto/nproto.hd
noao/nproto/nproto.men
noao/nproto/skysep.cl +
noao/nproto/skygroup.cl +
noao/nproto/doc/skygroup.hlp +
noao/nproto/doc/skysep.hlp +
Installed new NPROTO tasks.
unix/hlib/cl.csh
Made ECL the default in response to the 'cl' command.
local/login.cl
unix/hlib/login.cl
Fixed the problem with the access() error message that sometimes
appears.
unix/hlib/install
unix/hlib/ecl.csh -> cl.csh
Modified the install script to create an 'ecl' command. Needed to
create a hlib$ecl.csh symlink to keep this simple. This is mostly a
nicety as 'ecl' is now the default command language.
unix/boot/spp/rpp/rppfor/caslab.f
Initialized the 'caslab' return to be zero. Previously this procedure
was returning a -1 value causing the parent cascod() to read an EOF on
multi-value cases such as "case 1,2:" and would return an error message
about a missing label that was never generated. This is a different
behavior than the same code under linux/macosx, and even though this is a
newer version of F2C this was assumed to be a platform issue. NOTE: the
assciated RATFOR has not been modified. The RPP binary is now native
Intel rather than using the PPC binary as was done earlier.
pkg/cl/cl.par
pkg/ecl/cl.par
unix/hlib/motd
unix/hlib/install
unix/hlib/login.cl
unix/hlib/zzsetenv.def
Changed the version string to be V2.13. This was done such that
packages like GEMINI could still version-check without failing even
though the hlib$motd makes clear this is an iraf.net release.
mkpkg
noao/mkpkg
Added 'macintel' architecture.
unix/os/zxwhen.c
unix/os/zzepro.c
unix/os/zzstrt.c
Re-implemented the FPE handling for OSX using standard system
procedures (e.g. feclearexcept(), fegetexceptflag(), etc). The usual
errors are now caught again.
unix/os/zfioks.c
Added few new environment variables designed to control the behavior
of the network connections. Also improved some of the debugging
messages and added a 'C' or 'S' to distinguish code marked as
'client' or 'server' for easier tracing.
The first new variable is KS_RETRY which, if defined, is the number
of retry attempts using the default rsh (or KSRSH) protocol. The
task will sleep for 1 second between attempts and then loop back to
try again to make the connection, this is meant to avoid potential
clashes between multiple machines connecting simultaneously as with
the pipeline.
The second new variable is KS_NO_RETRY which when defined instructs
the task *not* to attempt a retry using the fallback rexec protocol.
This test is made after the KS_RETRY checks to allow for various
combinations of settings to allow the code to skip retries entirely
(i.e. define only KS_NO_RETRY), retry using the default protocol but
not with rexec (i.e. define KS_RETRY as some value and set KS_NO_RETRY),
or retry only with rexec (i.e. old behavior, don't define anything).
(3/20/06, MJF)
sys/etc/environ.h
Increased the size of various environment buffers to allow for longer
strings. This fixes a long-standing problem in XC where an excessively
long $PATH would cause a segfault in the envputs() routine. Should
also help with long helpdb strings in user-defined packages. (3/21 MJF)
lib/imio.h
Increased SZ_IMNAME from 79 to 128 per pipeline request. The extra
space is already allocated in the LEN_IMDES and this is the most we
can do without changing the runtime struct. (3/21/06 MJF)
unix/hlib/cl.csh
Fixed a bug in detecting the '-old' flag to start the CL rather than
the now-default ECL.
======================================
Include Cygwin Port Notes
======================================
Port start (4/12/06)
Port Revisions:
===============
local/notes.cygwin +
Started this file.....
mkpkg
noao/mkpkg
local/.login
bin.cygwin +
bin.cygwin/IB.CYGW.X86 +
noao/bin.cygwin +
noao/bin.cygwin/NB.CYGW.X86 +
unix/bin.cygwin +
unix/as.cygwin +
unix/os/irafpath.c
unix/hlib/cl.csh
unix/hlib/fc.csh
unix/hlib/install
unix/hlib/irafuser.csh
unix/hlib/mkpkg.inc
unix/hlib/mkpkg.sf
unix/hlib/strip.iraf
unix/hlib/sysinfo
Set up architecture dirs/paths for port, added a '-DCYGWIN' to
HSI_CF. (4/11/06)
unix/os/gmttolst.c
unix/boot/bootlib/ostime.c
Changed the 'timezone' variable to '_timezone', ifdef'd code.
unix/os/zawset.c
Ifdef'd the code definitions for RLIMIT not on this system.
unix/os/zopdir.c
Cygwin dirent type doesn't include the 'd_ino' element so the usual
way to read directories and look for empty inodes doesn't apply here.
Made a trivial change which should effectively be a no-op since we won't
ever expect a null inode anyway. Need to check on how stat/lstat deals
with inodes, there is apparently a define that can be enabled in the dev
Cygwin version that will compute an inode hash of the filename to fake this
but we apparently don't need it now.
unix/os/zxwhen.c
unix/os/zzepro.c
unix/os/zzstrt.c
Implemented the FPE handling using the libmingwex.a procedures.
unix/hlib/libc/varargs.h
unix/hlib/libc/stdarg.h
unix/hlib/libc/stdarg-cygwin.h +
System uses <stdarg.h> but like on other systems this file is in
the GCC tree and not the public /usr/include. As before, made a local
copy we'll include in the libc directly.
unix/as.cygwin/zsvjmp.s +
Implemented ZSJMP for this system, removed leading underscores on
symbol names.
unix/bin.cygwin/f2c.e
unix/bin.cygwin/libf2c.a
Built the F2C libs for this platform.
unix/bin.cygwin/libcompat.a
Pulled out the feclearexcept/fe[sg]etexceptflag procedures from the
/lib/mingw/libmingwex.a library so we can use the same FPE handling code
as for OSX. This lib isn't part of the base install for Cygwin so rather
than add a dependency to the platform we'll use the existing libcompat.a
unix/boot/spp/xpp/decl.c
Fixed a problem in the XPP stage where a function as the first procedure
in a file would not emit the procedure name properly. This has been seen
sporadically on other platforms in the past and appears to be related to
a lexical context problem. Will investigate more later, did a quick fix
for now.
unix/boot/spp/xc.c
unix/boot/spp/xpp/xppcode.c
unix/boot/spp/xpp/xppmain.c
unix/hlib/mkpkg.inc
unix/hlib/mkpkg.sf.CYGW +
unix/bin.cygwin/arch_includes/ +
unix/bin.cygwin/arch_includes/fio.h +
unix/bin.cygwin/arch_includes/pllseg.h +
unix/bin.cygwin/arch_includes/plrseg.h +
There is apparently a bug in the handling of multi-line define macros
such that the popcontext() is called at the end of the first line however
the remainder of the macro doesn't get emmitted until sometime later.
The buffering issue was too tricky to figure out for now so I took
advantage of the fact irafpath() will look in hbin$ before lib$ to allow
for an arch-specific version of a system include like <fio.h> that is
causing a problem. For local includes such as in plio, I added a new
'-A' flag to both XC/XPP to force the code to look in a hbin$arch_includes
directory first for local include files. For the plio cases the reference
was to e.g. "../pllseg.h" so the files need to be a the correct relative
location (TODO: strip path specs from local includes...). The affected
files were put on the special file list for this platform
unix/bin.cygwin/fio.h +
unix/bin.cygwin/pllseg.h +
unix/bin.cygwin/plrseg.h +
These includes defined multi-line macros. Made arch_include versions
without the newlines.
sys/fmtio/fprfmt.x
Crap, multi-line define in this one file we can't work around as
above. For now just change the macro.....
unix/hlib/mkfloat.csh
Check for cygwin arch when defining the $COMPRESS var, cygwin doesn't
support the -f flag
# ---------------------------------------------------------------------------
Sysgen completes without errors, all seems to be working. (4/14/06)
./zzclean
./zzmake
./zzsums
./zzsysgen
======================================
V2.13 Second Beta Release (4/19/06)
======================================
sys/vops/fftr.f
sys/vops/fftx.f
Increased the check for the power-of-2 dimension to 2^31 from the
current 2^15 (4/21/06, MJF)
dev/graphcap
dev/termcap
Created generic devices using lpr/lp commands and the psikern for
color printers. (5/27/06, MJF)
unix/os/zzepro.c
Fixed a bug in the FPE handling (7/26/06, MJF)
sys/etc/syserr.x
Increased the SZ_ERRMSG from 80 to SZ_LINE for longer system error
messages (e.g. full paths to files). (8/15/06, MJF)
pkg/images/imutil/hselect.par
pkg/images/imutil/src/hselect.x
pkg/images/imutil/doc/hselect.hlp
Added a 'missing' parameter to be used when keywords isn't in header
(8/15/06, MJF)
unix/hlib/zzsetenv.def
Made 'fits' the default 'imtype' (8/17/06)
pkg/cl/cl.par
pkg/ecl/cl.par
unix/hlib/motd
unix/glib/login.cl
Updated version and date to V2.13-BETA3 on 'August 2006' (8/18/06)
local/bugs.log
Updated to latest version (8/18/06)
==============================================
V2.13 Third Beta Release (8/18/06) (for NVOSS)
==============================================
local/bugs.log
Updated to latest version (11/22/06)
==============================================
V2.14 System Merge Notes -- Aug 23, 2007
==============================================
pkg/lists/raverage.cl +
pkg/lists/doc/raverage.hlp +
pkg/lists/lists.cl
pkg/lists/lists.men
pkg/lists/lists.hd
Added a new running average task. (5/4/07, Valdes)
pkg/proto/t_imext.x
Removed supporting procedures which are now in the xtools library
in the file xtextns.
(3/20/07, Valdes)
pkg/xtools/catquery/cqgfields.x
The documentation says that the offset field in the catalog description
file for simple text is the field number. However, the implementation
did not work this way. The changes makes the catalog parsing work as
described. (7/17/07, Valdes)
pkg/xtools/xtextns.x +
pkg/xtools/doc/xtextns.hlp +
pkg/xtools/doc/xtools.hd
pkg/xtools/mkpkg
Routines for expanding MEF image extensions. The first version of
this functionality was developed for proto.imextensions and then
expanded for mscred.mscextensions. Since then these routines have
been used in other tasks and so these are now being escalated to
generic xtools routines. (3/20/07, Valdes)
pkg/xtools/xtmaskname.x
pkg/xtools/doc/xtmaskname.hlp +
pkg/xtools/doc/xtools.hd
The case where masktype=pl and the input name doesn't have a .pl
extension was wrong. (3/19/07, Valdes)
pkg/xtools/fixpix/ytfixpix.x +
This version uses an internal copy of the input mask rather than
modifying the input mask. (3/19/07, Valdes)
pkg/xtools/fixpix/xtpmmap.x
pkg/xtools/fixpix/ytpmmap.x +
pkg/xtools/fixpix/mkpkg
pkg/xtools/doc/xtpmmap.hlp +
pkg/xtools/doc/xtools.hd
1. Uses xt_maskname to handle mask names.
2. Minor bug fixes.
3. The xt_ and yt_ versions are the same but the yt_version is
present to allow external packages to check for the presence
of ytpmmap.x and if not present use their own copy of the file.
This allows these packages to be compiled with earlier versions.
Eventually the yt versions should be obsoleted.
(3/19/07, Valdes)
pkg/images/tv/display/maskcolor.x
pkg/images/tv/display/t_display.x
pkg/images/tv/display/ace.h
pkg/images/tv/display/mkpkg
pkg/images/tv/doc/display.hlp
The overlay colors may now be set with expressions as well as with
the earlier syntax. (8/16/07, Valdes)
pkg/images/tv/imedit/bpmedit.cl +
pkg/images/tv/doc/bpmedit.hlp +
pkg/images/tv/imedit/bpmedit.key +
pkg/images/tv/tv.cl
pkg/images/tv/tv.hd
A new script task for editing masks using imedit as the editing
engine was added. (8/9/07, Valdes)
pkg/images/tv/imedit/t_imedit.x
pkg/images/tv/imedit/epgcur.x
pkg/images/tv/imedit/epreplace.gx +
pkg/images/tv/imedit/imedit.key +
pkg/images/tv/doc/imedit.hlp
pkg/images/tv/mkpkg
pkg/images/tv/tv.cl
1. A new option to do vector constant replacement was added. This is
particularly useful for editing bad pixel masks.
2. New options '=', '<', and '>' to replace all pixels with values
==, <=, or >= to the value at the cursor with the constant value
was added. This is useful for editing object masks.
3. The '?' help page is now set by an environment variable rather than
hardcoded to a file in lib$src. The environment variable is
imedit_help and is set in tv.cl to point to the file in the
source directory.
(8/9/07, Valdes)
pkg/images/tv/display/maskcolor.x
There was an error that failed to parse the color string as required.
(8/10/07, Valdes)
pkg/images/tv/display/sigm2.x
Buffers were allocated as TY_SHORT but used and TY_INT. (8/9/07, Valdes)
pkg/images/tv/display/t_display.x
pkg/images/tv/display/maskcolors.x
pkg/images/tv/display/sigl2.x
pkg/images/tv/display/sigm2.x
pkg/images/tv/doc/display.x
1. Overlay masks are now read as integer to preserve dynamic range.
2. Mapped color values less than 0 are transparent.
3. A color name of transparent is allowed.
(4/10/07, Valdes)
==============================================
pkg/cl/cl.par
pkg/ecl/cl.par
unix/hlib/motd
unix/hlib/install
unix/hlib/login.cl
unix/hlib/zzsetenv.def
Changed version to V2.14DEV Aug07 (8/23/07 MJF)
dev/graphcap.inet +
Added a copy of the dev$graphcap file with inet devices explicitly
given for the imt devices. This is because systems such as Cygwin don't
support fifos or unix sockets properly and inet sockets are the only option,
but aren't part of the default connection scheme. This will be installed
as the default dev$graphcap by the install script when it is run. (8/23)
unix/hlib/install
Added code to install dev$graphcap.inet on cygwin. (8/23)
unix/os/zopdir.c
unix/os/irafpath.c
unix/boot/spp/xc.c
unix/hlib/cl.csh
unix/hlib/ecl.csh
unix/hlib/fc.csh
unix/hlib/install
unix/hlib/install.old
unix/hlib/irafuser.csh
unix/hlib/mkpkg.inc
unix/hlib/strip.iraf
unix/hlib/sysinfo
unix/hlib/spy.cl
unix/as.suse -
unix/bin.suse -
Removed the SuSE architecture. We're moving towards a unified
Linux architecture and the special ifdef's didn't apply here so removing
the arch was simple. In the process, found a typo in the ifdef applied
in os$zopdir.c that was fixed (8/24/07, MJF)
dev/imtoolrc
dev/graphcap
dev/graphcap.inet
Added new frame buffers for 10K, 11K and 12K sizes at imt55,
imt56, imt57 respectively. These can exceed the 32-bit limit but are
needed for ultra-large-format detectors when using DS9. (10/29/07, MJF)
dev/graphcap
dev/graphcap.inet
In the process of the above changes, noticed an error in the
imt46 entry (full-frame GMOS) that would have prevented the config
from working. (10/29/07, MJF)
pkg/cl/eparam.c
pkg/cl/eparam.c
Modified the ":r" key in eparam so that if it is used as ":r! file.par"
the parameters will be updated to disk automatically. This allows a
parameter file to be read in for editing and executed immediately with a
":go". Otherwise, the parameters are simply read in for editing and must
be explicitly written back to the pfile to be used (current behavior).
(11/12/07, MJF)
unix/hlib/mkiraf.csh
Added a check in the mkiraf.csh script that the imdir$ directory
exists and is writable to prevent orphaned imh images from being
created. If there is a problem with the imdir$ defined by the system
install, HDR is used instead. (11/12/07, MJF).
unix/gdev/sgidev/sgi2uapl.c
Modified the Postscript init string to be '%!PS-Adobe-2.0' since
many newer printers still complain about just '%!PS' and don't recognize
the file (11/12/07, MJF).
sys/imio/iki/zfiofxf.x
Added code to support scaled -64 data type on read. BSCALE and BZERO
will be read and data will be scaled before making it available to the
upper level code. Writing scaled -64 is not supported. (11/12/07 NZ)
sys/imio/iki/fxfrfits.x
Close 'spool' file descriptor before calling syserrs. (line 451)
This was causing problems when reading BINTABLE extensions. (11/12/07, NZ)
sys/imio/dbc +
sys/imio/mkpkg
Installed the 'dbc' routines from the FITSUTIL package. This is an
extension to the imgead header database routines that allow for a
comment field to be created/manipulated in the header. (11/14/07, NZ/MJF)
pkg/xtools/mef +
pkg/xtools/mkpkg
Installed the 'mef' library from the FITSUTIL package for doing
general MEF manipulation. This will remove the dependency on FITSUTIL
from several external packages. (11/14/07, NZ/MJF)
unix/os/zzstrt.c
Somehow in the porting process, the default FPE flag for linux was
changed from 0x332 to 0x336 and effetively disabled the FPE traps.
Restored the old value. (11/14/07, MJF)
unix/hlib/libc/stdarg.h
unix/hlib/libc/stdarg-linux.h +
Added some extra code for compiling the stdarg.h stuff on newer GCC
compilers. We don't use this (yet) on tucana, but it's needed for e.g.
building the CL on newer systems. (11/17/07, MJF)
sys/imio/imloop.x
An earlier change to this procedure broke the case where the increment
was negative. Changed the code to handle this case properly (11/25/07 MJF)
unix/boot/spp/xc.c
There remains an unexplained optimizer bug in the system which has
the effect of disabling FPE handling on Mac Intel/PPC systems. For the
moment, the optimization on these platforms was disabled until this is
better understood or fixed in future GCC versions. Quick benchmarks
indicate a performance penalty of only ~6-7%, optimized binaries for those
willing to skip the exception handling will be made available as an option.
(11/30/07, MJF)
--------------------------------------------------------
System Frozen for V2.14 Builds (11/30/07)
unix/hlib/motd
Updated the motd file for the release (11/30/07 MJF)
pkg/cl/cl.par
pkg/ecl/cl.par
unix/hlib/login.cl
unix/hlib/zzsetenv.def
Changed version to V2.14 Nov07 (11/30/07 MJF)
Begin sysgen.....11/30/07
unix/boot/bootlib/ostime.c
Apparently this function hasn't been updated in a while and the
computation of the time zone wasn't compiling correctly. Affected the
linking of WTAR only and so went unnoticed. (11/30/07)
unix/hlib/mkpkg.sf.LNUX
Increased the number of allowed symbols to 3072 from 2048 for
the LNUX architecture compile of fmtio$evvexpr.x (11/30/07)
noao/rv/mkpkg
noao/rv/t_fxcor.x
noao/rv/rvimutil.x
Removed an unneeded <fio.h> include from these files. On Cygwin
there is an outstanding problem withe processing of multi-line macros
and rather than put these files on a special-files list, I simlply
removed the include statement (12/1/07)
--------------------------------------------------------
|