File: ChangeLog

package info (click to toggle)
leafnode 1.11.2.rel-1.0sarge0
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 2,284 kB
  • ctags: 572
  • sloc: ansic: 10,540; sh: 4,154; xml: 636; makefile: 266; perl: 84; sed: 4
file content (1911 lines) | stat: -rw-r--r-- 74,258 bytes parent folder | download
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
2005-05-04  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.11.2.rel ===
	* Makefile.am: Chase DSSSL update.
	* Makefile.am, NEWS, leafnode-SA-2005-01.txt: Add
	  leafnode-SA-2005-01.txt.
	* fetchnews.c: Fix segfault when timeout or connection reset
	  encountered while article header is read.
	* NEWS, fetchnews.c: fetchnews will no longer re-fetch the active
	  file for a server if it has been completely received even if
	  fetching articles from this server encounters a problem.
	  Long-standing bug.  Debian bug #70052.
	  fetchnews will now properly mark the active for complete re-fetch if
	  it says so. Previously, it forgot the mark in some circumstances.
	  A problem fetching the active file or descriptions for a newly added
	  server will now mark the active for re-fetch even if articles have
	  successfully been retrieved from the same server.
	* activutil.c: Add a comment to document killactiveread()'s
	  purpose.
	* NEWS, fetchnews.c: Fix use-after-free segfault when server dies
	  while body is being received.

2005-04-26  Matthias Andree <matthias.andree@gmx.de>

	* doc_german/: leafnode.8.in, newsq.1.in: Fix run-together lines
	  starting with .PP

2005-04-25  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.11.1.rel ===
	* Makefile.am, configure.ac, t/.cvsignore, t/Makefile.am: List t/
	  directory contents on top level, to get rid of one subdirectory in
	  automake. Reduces size of distribution, too.
	* configure.ac: Revise ./configure --help and config.h now that
	  fetchnews supports IPv6.

2005-04-22  Matthias Andree <matthias.andree@gmx.de>

	* NEWS: Reword PORTABILITY section.
	* NEWS, leafnode.8.in, doc_german/leafnode.8.in: Clarify
	  differences between global and server-specific parameters in
	  leafnode(8) manual pages.

2005-04-17  Matthias Andree <matthias.andree@gmx.de>

	--- 1.11.1.rc1 ---
	* ChangeLog, NEWS: Snapshot leafnode-1.11.1rc1
	* README, doc_german/README_de: Update links, addresses, add
	  missing IPv6/configuration change documentation.
	* nntpd.c: Update link.

2005-04-14  Matthias Andree <matthias.andree@gmx.de>

	* release.sh: Remove borked command left over from last commit.

2005-04-11  Matthias Andree <matthias.andree@gmx.de>

	* NEWS, configure.ac: Backport leafnode-2 code to use
	  /usr/xpg4/bin/id, to improve portability on Solaris and avoid bogus
	  warnings.

2005-04-05  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, configure.ac: Update
	* activutil.c, applyfilter.c, configutil.c, fetchnews.c, texpire.c,
	  xoverutil.c: More plural fixes.
	* NEWS, fetchnews.c, leafnode.h: Fix Debian Bug #303157,
	  pluralization in "N articles posted" (reported by Don Geddis)

2005-04-04  Matthias Andree <matthias.andree@gmx.de>

	* Makefile.am, NEWS, TODO, leafnode.spec.in, release.sh: Remove
	  TODO file.

2005-03-26  Matthias Andree <matthias.andree@gmx.de>

	* release.sh: Update.
	* GMakefile.doc: gsc -> gs
	* OLDNEWS: Correct pointer to -1.9.18 Changelog to ChangeLog.old

2005-03-16  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.11.0.rel ===

2005-03-12  Matthias Andree <matthias.andree@gmx.de>

	--- 1.11.0.rc3 ---
	* ChangeLog, configure.ac: leafnode 1.11.0 release candidate 3
	* NEWS, configutil.c, leafnode.8.in, doc_german/leafnode.8.in:
	  Support quoted strings on the right hand side of configuration
	  lines.  Sourceforge ID leafnode-Bugs-1161551, reported by Stephen
	  Lee.

2005-03-06  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, configure.ac: leafnode 1.11.0 release candidate 2

	--- 1.11.0.rc2 ---
	* Makefile.am: Support RPM 4 that split into rpm and rpmbuild.
	* NEWS, configure.ac, xsnprintf.c: Fix configure test for working
	  snprintf. Regression in 1.10.7 (xsnprintf.c 1.10) reported by Bruno
	  Rohee.
	* leafnode.h: Fix test for __GNUC__ macro (lacked the trailing _).

2005-03-04  Matthias Andree <matthias.andree@gmx.de>

	* Makefile.am: Make distcheck happy.
	* configure.ac: Support systems that lack AI_ADDRCONFIG.
	* FAQ.xml: Revise; mention SA_RESETHAND problem.
	* README-MAINTAINER: Mention DocBook Open Source conversion.
	* Makefile.am: Revise FAQ build again.
	* FAQ.book: Memorize how 'htmldoc --batch FAQ.book >FAQ.pdf' works.

2005-02-28  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog: snapshot 1.11.0.rc1

	--- 1.11.0.rc1 ---
	* nntputil.c: Mark i volatile to prevent longjmp clobber.
	* nntputil.c: Fix preprocessor warnings, use #ifdef rather than
	  #if.
	* texpire.c: Fix compiler warning - %m is lightly supported.
	* INSTALL, NEWS, configure.ac, nntputil.c: Support IPv6 in
	  fetchnews as well.

2005-01-21  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.10.8.rel ===
	* ChangeLog, NEWS, configure.ac: release leafnode-1.10.8.rel.

2005-01-12  Matthias Andree <matthias.andree@gmx.de>

	* Makefile.am, leafnode-SA-2002-01, leafnode-SA-2002-01.txt,
	  leafnode-SA-2003-01, leafnode-SA-2003-01.txt,
	  leafnode-SA-2004-01, leafnode-SA-2004-01.txt: Rename
	  leafnode-SA-YYYY-NN to leafnode-SA-YYYY-NN.txt.
	* texpire.c: Plug minor memory leak.

	--- 1.10.8.rc1 ---

2005-01-08  Matthias Andree <matthias.andree@gmx.de>

	* NEWS, nntpd.c: In LIST ACTIVE/GROUP, keep group interesting in
	  spite of being pseudo (which includes empty) as long as it is
	  interesting. Avoids unsubscription of low-traffic groups that fall
	  empty. Reported by Brian Sammon.
	* configure.ac: Bump version

2004-11-20  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.10.7.rel ===
	* ChangeLog, NEWS, configure.ac: RELEASE 1.10.7.rel

2004-11-04  Matthias Andree <matthias.andree@gmx.de>

	* texpire.c: our minimal snprintf does not support %.3s, use %s
	instead.

2004-11-03  Matthias Andree <matthias.andree@gmx.de>

	* Makefile.am, NEWS, configure.ac, leafnode.h, snprintf.c,
	xsnprintf.c: Rename our replacement [v]snprintf to ln_[v]snprintf,
	to avoid polluting libc which may have functions to call into
	vsnprintf, for instance syslog. The pollution caused an abort on %m
	that got passed back this way. Reported by Michael Bäuerle.
	* NEWS, snprintf.c: Support %m in our replacement snprintf, to
	avoid a crash when we're called back by Linux libc5's vsyslog.
	Reported by Michael Bäuerle.
	* nntputil.c: Factor out \r\n stripping, getting rid of %.*s inside
	syslog().

2004-11-01  Matthias Andree <matthias.andree@gmx.de>

	* NEWS, configure.ac: Support FORCE_SHIPPED_SNPRINTF to force test
	our own snprintf replacement.
	* NEWS, snprintf.c: Fix test9 xsnprintf test failure, returning
	proper length for literals.

2004-10-07  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.c: Print GROUP.NAME not found in groupinfo file only at
	verbose level >= 2.  Reported by Berthold Höllmann.

2004-09-22  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.10.6.rel ===
	* Makefile.am: Use current 1.66 style sheets.  Use XEP
	(RenderX.com) for processing FO.
	* ChangeLog, NEWS, configure.ac: Release 1.10.6

2004-09-10  Matthias Andree <matthias.andree@gmx.de>

	* configure.ac: Drop tools/Makefile from OUTPUTS.
	* leafnode.8.in, nntpd.c, doc_german/leafnode.8.in: Add
	LN_REJECT_POST_PRE and LN_REJECT_POST_POST to aid tin debugging.

2004-09-04  Matthias Andree <matthias.andree@gmx.de>

	* Makefile.am, tools/Makefile.am: Drop tools as subdir but package
	files from top directory.

2004-09-03  Matthias Andree <matthias.andree@gmx.de>

	* KNOWNBUGS: Update.
	* NEWS, configure.ac, fetchnews.c: Bugfix: don't mark active for
	redownload if noactive is set for a failing server.
	* Makefile.am, NEWS, OLDNEWS, leafnode.spec.in: Split OLDNEWS out
	of NEWS.
	* FAQ.xml: Use iso-8859-1, we don't need -15 yet.

2004-08-26  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.10.5.rel ===
	* configure.ac: Bump version.

2004-08-22  Matthias Andree <matthias.andree@gmx.de>

	--- 1.10.5.rc1 ---
	* configure.ac: Bump version.
	* CREDITS, KNOWNBUGS, fetchnews.c, NEWS: Fix classic getbody mode
	bug that didn't strip blanks from headers after reading and hence
	stored the article with an inaccessible Message-ID with leading
	blank and mistook the host name for a group ID with blank.  This
	caused duplicates. Reported by Til Schubbe.

2004-08-15  Matthias Andree <matthias.andree@gmx.de>

	* addfiles.sh: rpm -> rpmbuild

	=== RELEASE 1.10.4.rel ===
	* configure.ac: Bump version to 1.10.4.rel.
	* KNOWNBUGS: Document texpire relink/premature message.id expiry
	bug fix.
	* texpire.c:
	(cleanmids) Switch from unchecked xsnprintf to mastr.

2004-08-14  Matthias Andree <matthias.andree@gmx.de>

	* NEWS, miscutil.c, texpire.c: Do not delete mids file before we
	have the lock. Prevents loss of articles that can happen when
	fetchnews is run while texpire is still grinding away.  Tracked down
	by Rein Klazes.

2004-08-11  Matthias Andree <matthias.andree@gmx.de>

	* texpire.c: Add comments.  Fix debugmode message unlinked ->
	unlinking.
	* leafnode.h, miscutil.c, texpire.c: Clean up message ID tree
	handling.

2004-08-05  Matthias Andree <matthias.andree@gmx.de>

	* texpire.c: Minor optimization, saves one lookup() call.

2004-08-04  Matthias Andree <matthias.andree@gmx.de>

	* log_unlink.c: Add missing string, noted by Rein Klazes.
	* configure.ac: Bump version.
	* texpire.c: In debug mode, log reason why a message.id file was
	unlinked.
	* log_unlink.c: In debug mode, log file deletions.
	* Makefile.am, agetcwd.c, leafnode.h, xoverutil.c: Move agetcwd to
	a file of its own.

2004-07-28  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.10.3.rel ===

2004-07-26  Matthias Andree <matthias.andree@gmx.de>

	* NEWS: Note LIST [ACTIVE] vs. pseudogroup fix.
	* nntpd.c: Five proper 'high' figure for pseudo groups. Reported by
	Brian Sammon.
	* nntpd.c: Add two comments.

2004-07-22  Matthias Andree <matthias.andree@gmx.de>

	* configure.ac: Bump version.
	* NEWS: Mark change.
	* CREDITS: Add Brian Sammon.
	* nntpd.c: Refresh group subscription on list active with a group
	name, too, in order to avoid unsubscription on low traffic groups
	when newsreaders to LIST ACTIVE rather than GROUP to check the
	counts. Suggested by Brian Sammon.

2004-07-20  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.10.2.rel ===
	* KNOWNBUGS: Restore information about Xref information missing
	from overview.
	* ChangeLog, KNOWNBUGS, NEWS, configure.ac: Release 1.10.2.

2004-07-07  Matthias Andree <matthias.andree@gmx.de>

	* texpire.c, xoverutil.c, NEWS: Clean out left-over
	.overview.?????? files from earlier crashes.  Reported by Johannes
	Berg, Debian bug #257281.

2004-06-24  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog: Fix copy & paste error.

2004-06-23  Matthias Andree <matthias.andree@gmx.de>
	=== RELEASE 1.10.1.rel ===
	* ChangeLog, NEWS, configure.ac: RELEASE 1.10.1

2004-06-22  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, KNOWNBUGS, NEWS: Update information WRT the XRef bug.

2004-06-21  Matthias Andree <matthias.andree@gmx.de>

	* NEWS: Reword to be less technical.

2004-06-20  Matthias Andree <matthias.andree@gmx.de>

	--- 1.10.1.rc1 ---
	* CREDITS: Mention Jrg Lders.
	* configure.ac, leafnode.h, xoverutil.c: Make sure that
	legalxoverline does not cut off the Xref information.  Discovered by
	"SINNER" in news.software.readers and Jrg Lders.  The code that
	cut off the Xref dates back to the earliest leafnode version I could
	find, leafnode 1.0.1.ELF, from 1996, and got activated in 1.9.50 when
	the data legalxoverline had looked at and modified got reused.

2004-06-11  Matthias Andree <matthias.andree@gmx.de>

	* leafnode.spec.in: Change BuildPrereq to list the library rather
	than the package, for easier build on Mandrake 10.0, reported and
	fix tested by Kevin Bulgrien.

2004-06-10  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.10.0.rel ===
	* NEWS, configure.ac: Bump version to 1.10.0.

2004-06-05  Matthias Andree <matthias.andree@gmx.de>

	--- 1.10.0.rc3 ---
	* ChangeLog, configure.ac: 1.10.0.rc3
	* CREDITS, NEWS, miscutil.c: Fix potential segfault when numeric
	components are in the path.  Reported by Jos Mara Mateos.
	* texpire.c: Drop bogus splint annotation.

2004-06-02  Matthias Andree <matthias.andree@gmx.de>

	* Makefile.am, configure.ac: Update copyright.

	--- 1.10.0.rc2 ---
	* configure.ac: Bump version.
	* leafnode.spec.in: PCRE_README was dropped.

	--- 1.10.0.rc1 ---
	* INSTALL, KNOWNBUGS, Makefile.am, NEWS, PCRE_README, README,
	configure.ac: Update: PCRE is no longer part of the distribution.
	* texpire.c: Don't export 'repair' variable.

2004-05-31  Matthias Andree <matthias.andree@gmx.de>

	--- 1.9.55.rc2 ---
	* ChangeLog, NEWS: 1.9.55.rc2
	* configure.ac: Bump version
	* texpire.c: Fix some NULL dereferences, the first dogroup()
	argument may be NULL when the group is on disk but not longer in the
	active file, Debian bug #248824, Johannes Berg.  Add some SPLint
	annotations.  Fix some memory leaks in error handling paths, found
	by SPLint.  Print expiry information in verbose mode even for groups
	that are no longer in the active file.
	* leafnode.h: Add some splint annotations.

2004-05-27  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, configure.ac: 1.9.55.rc1
	* CREDITS: Mention Volker Stolz and Jeff King.

2004-05-26  Matthias Andree <matthias.andree@gmx.de>

	--- 1.9.55.rc1 ---
	* applyfilter.c: binary ^H -> \b.

2004-05-24  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.c: Do not use %p, unsupported by our fetchnews
	replacement code.  Reported by Jeff King, FreeBSD PR #67111.

2004-05-20  Matthias Andree <matthias.andree@gmx.de>

	* leafnode.spec.in: Ship security announcements.

	=== RELEASE 1.9.54.rel ==
	* ChangeLog, NEWS: 1.9.54.rel
	* configure.ac: Set version tag to .rel.

2004-05-18  Matthias Andree <matthias.andree@gmx.de>

	* CREDITS, INSTALL, NEWS: Add preparation section to INSTALL,
	suggested by Andreas Kneib.

2004-05-17  Matthias Andree <matthias.andree@gmx.de>

	--- 1.9.54.rc3 ---
	* NEWS, texpire.8.in, doc_german/texpire.8.in: Document texpire -r.
	* leafnode.h: Consistency: Track rename of free_expire to
	freexpire.
	* configutil.c, texpire.c: Bugfix: Plug memory leak, moving
	free_expire where it belongs.  Feature: Implement -r option in
	texpire.

2004-05-14  Matthias Andree <matthias.andree@gmx.de>

	* NEWS: Update.
	* texpire.8.in, doc_german/newsq.1.in, doc_german/texpire.8.in: Fix
	formatting.

2004-05-13  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS: 1.9.54.rc2

	--- 1.9.54.rc2 ---
	* configure.ac: Bump version.
	* texpire.c: Make mids file reading and writing more robust,
	in-depth: Write a whole record (size + content) atomically to avoid
	corrupt files on abort. Try to truncate mids file back to old size
	on short write, just in case. Sanity check mids file to see if the
	length of the read string matches the expected length.
	* miscutil.c: Cleanup: Kill old mids files at start-up. Prevents
	texpire from stumbling over corrupt files.

2004-05-07  Matthias Andree <matthias.andree@gmx.de>

	--- 1.9.54.rc1 ---
	* leafnode.cron.daily.in: Add timeout_lock and LN_LOCK_TIMEOUT.
	* NEWS, applyfilter.8.in, applyfilter.c, checkgroups.8.in,
	checkgroups.c, config.example, configutil.c, fetchnews.8.in,
	fetchnews.c, leafnode.8.in, leafnode.h, texpire.8.in, texpire.c,
	doc_german/applyfilter.8.in, doc_german/checkgroups.8.in,
	doc_german/fetchnews.8.in, doc_german/leafnode.8.in,
	doc_german/texpire.8.in: Add timeout_lock and LN_LOCK_TIMEOUT.
	* configure.ac: Bump version.

2004-05-05  Matthias Andree <matthias.andree@gmx.de>

	* doc_german/leafnode.8.in: since -> seit
	* NEWS2HTML.pl, addfiles.sh, release.sh: Add helper files to CVS so
	they are mirrored.

	=== RELEASE 1.9.53.rel ==
	* ChangeLog, NEWS: 1.9.53.rel.
	* configure.ac: Bump version.

2004-05-03  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.c: Move initialization a bit so that mlgroups 1.9.52
	patch applies, with fuzz, rather than rejects a hunk.
	* leafnode.h, miscutil.c: Minor type fixes

2004-05-02  Matthias Andree <matthias.andree@gmx.de>

	* miscutil.c: Fix Date format string with time zone (printed %02l
	instead of the time).  Reported by Wolfgang Weisselberg against
	Debian.

	--- 1.9.53.rc6 ---
	* ChangeLog, NEWS: 1.9.53.rc6
	* configure.ac: Bump version.

2004-05-01  Matthias Andree <matthias.andree@gmx.de>

	* texpire.c: Repair spool even when groupexpire < 0. Reported by
	Dirk-Lder Kreie.  Enhance "relinked..." logging (prefix group
	name), log if a duplicate article is killed.
	* ChangeLog: Correct typo.
	* fetchnews.c: Enhance one error message.

2004-04-27  Matthias Andree <matthias.andree@gmx.de>

	--- 1.9.53.rc5 ---
	* ChangeLog, configure.ac: 1.9.53.rc5
	* config.example, configutil.c, fetchnews.c, leafnode.8.in,
	leafnode.h, nntputil.c, doc_german/leafnode.8.in: Kill forceauth,
	revert to 1.9.51 volunteered authentication, logging that a
	potential authentication failure may have been caused by a premature
	authentication. Fetchnews will still re-try authentication when
	requested later by a 480 code.
	* miscutil.c: Format string type fix, for 64-bit machines. Bug
	introduced in 1.9.53.rc4.
	* config.example: Use sane server= defaults/examples.

2004-04-24  Matthias Andree <matthias.andree@gmx.de>

	--- 1.9.53.rc4 ---
	* configure.ac: Bump version.
	* config.example, configutil.c, fetchnews.c, leafnode.8.in,
	leafnode.h, nntputil.c, doc_german/leafnode.8.in: Implement
	forceauth option to work around defective servers. Report by Wouter
	Verhelst.
	* doc_german/fetchnews.8.in: Add (ENVIRONMENT) tag to section
	heading.

2004-04-22  Matthias Andree <matthias.andree@gmx.de>

	* leafnode.8.in, doc_german/leafnode.8.in: Document time zone
	offset dependency on tm_gmtoff.
	* Makefile.am, t.rfctime.c: Add t.rfctime test (prints current
	local time in RFC-822 format).
	* miscutil.c: Add time zone if struct tm contains tm_gmtoff member
	(GNU, BSD).
	* configutil.c, miscutil.c: Use the greater of the LN_DEBUG
	environment variable and the debugmode setting.
	* configure.ac: Check for tm_gmtoff in struct tm.

	--- 1.9.53.rc3 ---
	* configure.ac: bump version.
	* fetchnews.c: Try to make sure we don't pass 0 as 'last read from
	server' to getgroup().
	* nntputil.c: xnntpreply: Log problems before returning 498
	(protocol error).

2004-04-20  Matthias Andree <matthias.andree@gmx.de>

	* nntpd.c: Split string for C89 conformance. - string literals
	should not exceed 509 chars.

2004-04-19  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS: Update.

	--- 1.9.53.rc2 ---
	* fetchnews.c: Read comma-separated list of wildmats from
	LN_SKIP_GROUPS.
	* fetchnews.8.in, doc_german/fetchnews.8.in: Update LN_SKIP_GROUPS
	documentation.
	* configure.ac: Bump version.
	* fetchnews.8.in, doc_german/fetchnews.8.in: Document
	LN_SKIP_GROUPS.
	* fetchnews.c: Cleanup: prefix 'skipped %s, not in
	only_groups_pcre' message with server name.  Feature: LN_SKIP_GROUPS
	environment variable will skip all groups to match the wildmat
	pattern stored in this variable.
	* lockfile.c: Print try_lock() debug message to stdout in verbose
	mode, rather than stderr via ln_log. Reported by Kieron Dunbar.
	* texpire.c: Cleanup: Kill dead struct exp member "mid".

2004-04-13  Matthias Andree <matthias.andree@gmx.de>

	* NEWS: Mention bugfix.

	--- 1.9.53.rc1 ---
	* configure.ac: Bump version.

2004-04-05  Matthias Andree <matthias.andree@gmx.de>

	* nntputil.c: Prevent authentication loop when server responds 480
	during an authentication attempt.
	* fetchnews.c: Do not volunteer authentication, but wait until
	requested.  Remove extra LF from 'Cannot obtain lock file' log
	message.  In debug mode, log response to LIST NEWSGROUPS.  Clean up
	handling response of GROUP command.
	* nntputil.c: Drop unused variables. Do not store authenticated state,
	but re-authenticate every time the server requests so.

2004-04-03  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.9.52.rel ===
	* ChangeLog: Complete 1.9.52 ChangeLog.
	* configure.ac: Bump version to 1.9.52.rel.
	* NEWS: Set release date.
	* NEWS: Add a summary.

2004-03-31  Matthias Andree <matthias.andree@gmx.de>

	* configutil.c: Reworded maxage overflow warning.
	* CREDITS, NEWS, ln_log.c, ln_log.h, nntpd.c: nntpd will now
	disable ln_log()'s sending its logging to the console (stderr
	usually), to prevent them from being seen by the newsreader, which
	then gets confused. Reported by Martin Klaiber.
	* texpire.c: Print version in verbose or debug mode.

2004-03-30  Matthias Andree <matthias.andree@gmx.de>

	--- 1.9.52.rc13 ---
	* leafnode.spec.in: don't ship message.id/* directories
	* ChangeLog, NEWS: rc13 updates
	* configure.ac: 1.9.52.rc13
	* Makefile.am, configure.ac: quickmkdir is no longer needed.
	* fetchnews.c, texpire.c: Usage fixes, supporting -h without
	documenting it.
	* fetchnews.c: Update usage information.
	* fetchnews.c: Cleanup: No need to create message.id directory any
	longer.
	* miscutil.c: Bugfix: Fix memory leaks.  Cleanup: Create missing
	message.id directories.
	* texpire.c: Fix memory leaks.
	* config.example: Swap expire and server sections to have the
	global stuff first.

2004-03-28  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.c: Fix "cannot post" regression that sneaked into the
	release candidates, reported by William Hooper: When MODE READER
	failed, use the greeting code instead of the MODE READER code.

	--- 1.9.52.rc12 ---
	* NEWS: rc12 updates
	* configure.ac: 1.9.52.rc12
	* Makefile.am: Replaced gmtoff.c by timegm.c. gmtoff was junk, the
	  suggested setenv/tzset workaround is not thread-safe.
	* fetchnews.c: Bugfix: Do not fetch newgroups since last full
	active fetch, but rather since last NEWGROUPS.
	* gmtoff.c: Drop this file, its function didn't work right.
	* fetchnews_check_date.c: Use timegm(), get rid of gmtoff()
	brokenness.
	* leafnode.h: Replace gmtoff prototype/declaration by the timegm()
	one.
	* timegm.c: Add timegm() replacement, taken from Heimdal. (Uses
	modified BSD license.)
	* nntpd.c: Use timegm where appropriate.
	* miscutil.c: Kill time zone from generated dates, use GMT and
	-0000.

2004-03-27  Matthias Andree <matthias.andree@gmx.de>

	* CREDITS, NEWS, quickmkdir.c: Portability: quickmkdir will not
	start the file name with a double slash.  Patch sent by A. Alper
	Atici.

	--- 1.9.52.rc11 ---
	* configure.ac: release candidate #11

2004-03-26  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.8.in, doc_german/fetchnews.8.in: minor update
	* texpire.c: Add code to expire from message.id/NNN even when some
	rogue user has created a hard link to another directory such as
	/var/tmp.
	* leafnode.h, miscutil.c: Add message-ID tree traversal function.
	* nntpd.c: Bugfix: Article zero-size check was not applied when the
	article was to be opened by Message-ID. Now done for access by
	number and by message-ID.
	* xoverutil.c: Truncate "illegal" article files so they are
	inaccessible even before texpire runs.  Remove trailing LF from some
	syslog/ln_log calls.
	* fetchnews.8.in, fetchnews.c, doc_german/fetchnews.8.in, NEWS: Add
	-w option to run XOVER updates in foreground.

2004-03-25  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, configure.ac: 1.9.52.rc10

	--- release 1.9.52.rc10 ---
	* configutil.c: Use pcre_free rather than free to free the compiled
	PCRE
	* xoverutil.c: Revise XOVER error logging.
	* texpire.c: Fix up the counts of pseudo groups that have no
	corresponding article directory.
	* miscutil.c: Abort migrate() without calling chdir() unless an
	all-numeric component is found.
	* fetchnews.c: Suppress "backing up from 1 to N" message for new
	groups fetched with -x N flag set.
	* nntpd.c, leafnode.8.in, doc_german/leafnode.8.in: Let GROUP %s
	mark the group interesting iff it is interesting.  This is a
	backport from leafnode-2 and avoids unsubscription of low-traffic
	groups. Reported by Oliver Brakmann.
	* leafnode.h, texpire.c: Change legalxoverline() API: it now stores
	an error message pointer rather than reporting problems itself.
	* INSTALL: Mention new --with-news and --with-group options.
	* configutil.c: Plug minor memory leaks around only_groups_pcre -
	didn't free the pcre at program exit.
	* ChangeLog, NEWS, configure.ac: 1.9.52.rc9

	--- release 1.9.52.rc9 ---
	* fetchnews.c: Use formatserver() to format the
	leaf.node/server.name[:port] message when checking if the active for
	a particular server has already been read.  This fixes "fetchnews
	always gets all newsgroups for allnews.readfreenews.net" issues
	reported by Cory C. Albrecht and Joshua Crawford.  This error
	affected all servers with a non-standard port that did not have
	noactive=1 set.
	* xoverutil.c: Propagate "getxoverline: cannot open PATH: ERR" to
	an error message.

2004-03-23  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog: leafnode-1.9.52.rc8

	--- release 1.9.52.rc8 ---
	* fetchnews.c: Add more log messages on abort.
	* nntputil.c: authenticate: abort on internal error.  authenticate:
	Log as error when AUTHINFO USER is rejected.
	* NEWS: Update.
	* Makefile.am, configure.ac, configutil.c, miscutil.c, nntpd.c,
	quickmkdir.c, CREDITS: Make user and group account names
	configurable to support OpenBSD's policy to use deamon and system
	user names that start with an underscore.  Based on patches by Cory
	C. Albrecht.

2004-03-22  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS: leafnode-1.9.52.rc7

	--- release 1.9.52.rc7 ---
	* fetchnews.c: Bugfix: Log amount of new newsgroups read.  Bugfix:
	Log (not only print) intention to get all newsgroups from upstream,
	with dbug info active/forceactive.  Bugfix: Reword "premature
	disconnect" messages to "server disconnect or timeout".  Cleanup:
	move nntpquit() function into nntputil.c.  Bugfix: Try to
	authenticate only after MODE READER.  Cleanup: Minor polishing to
	various messages.
	* nntputil.c: Cleanup: Drop bogus shutdown(2) call.  Cleanup: Move
	nntpquit() function here (from fetchnews.c), where it belongs.
	Cleanup: Prefix error/warning messages with error: or warning:,
	respectively.  Bugfix: Report fdopen() or dup() error conditions.
	Bugfix: Try next IP when the server disconnected or timed out before
	sending the greeting.  Bugfix: Try next IP when the server runs
	NNTPcache server V2.3.  Bugfix: Log when the greeting was not a 200
	or 201 NNTP code.  Bugfix: Log when the IP address list (from
	gethostbyname) was exhausted without establishing a connection.
	* configure.ac: Bump version to .rc7.
	* leafnode.h: nntpquit() is now in nntputil, declare it.
	* fetchnews_check_date.c: Bugfix: Check the DATE reply line rather
	than the reply of the command preceding DATE against
	timeout/disconnect.  Bugfix: Several logging fixes, propagated some
	messages to a warning.
	* xoverutil.c: Add error/warning prefix to messages.

2004-03-20  Matthias Andree <matthias.andree@gmx.de>

	* config.example, leafnode.8.in, doc_german/leafnode.8.in: Note
	that only_groups_pcre requires fetchnews -f.
	* GMakefile.doc: New file to generate HTML/PDF docs from
	subst-processed roff sources.
	* ChangeLog, NEWS, configure.ac: 1.9.52.rc6

	--- release 1.9.52.rc6 ---
	* fetchnews.c: Cleanup: if servers are skipped on only_groups_pcre
	grounds, only print a message at verbose 2 or higher, for
	consistency.  Cleanup: When a signal causes program termination, log
	and print the signal and disconnect cleanly.  Cleanup: When any
	server has not been queried, suppress 'found no server with posting
	permission' warning, suggested by Al Bogner.  Cleanup: When any
	server has not been queried (rc == 2), log a warning unless -q is
	set.  Cleanup: change 'disconnected' message to 'conversation
	completed, disconnected' to not let it look like a problem.
	* nntputil.c: Bugfix: Log and Print resolver and connection errors.
	Bugfix: When the connection to a particular IP of a server fails,
	try other IPs as well.

2004-03-16  Matthias Andree <matthias.andree@gmx.de>

	--- release 1.9.52.rc5 ---
	* fetchnews.c: Add only_groups_match_all option.  Prepend
	postarticles logging with server where appropriate.
	* config.example, configutil.c, leafnode.8.in, leafnode.h,
	doc_german/leafnode.8.in: Add only_groups_match_all option.
	* nntputil.c: Log commands sent in debugmode 1.
	* fetchnews.c: Bugfix: isgrouponserver used to check only the first
	group if it was unmatched by only_groups_pcre.
	* ChangeLog, configure.ac: 1.9.52.rc4

	--- release 1.9.52.rc4 ---
	* fetchnews.c: Drop prototypes for is{group,msgid}onserver, move
	static attribute to implementation.
	* artutil.c: Enhance comment.
	* fetchnews.c: Correct line ordering, free first, then goto.
	* fetchnews.c: Fix logging in 'server does not carry Newsgroups:'
	message. It used to log only the first Newsgroup of the header.
	Demote 'skipping ..., not complete' message from NOTICE to INFO
	level.

2004-03-08  Matthias Andree <matthias.andree@gmx.de>

	* CREDITS: Mention David Houlden and Bastian Blank in CREDITS.
	* NEWS: Fix typo in David Houlden's last name.
	* ChangeLog: 1.9.52.rc3

	--- release 1.9.52.rc3 ---
	* NEWS, getaline.c: Only log ERROR: when ferror is asserted, to fix
	bogus ERROR messages in the debug log.  Log EOF for debug > 1.
	(Moving tag.)
	* NEWS, fetchnews.c: Fix a leaf.node/server.name high watermark
	file corruption when aborting.  Bug introduced into 1.9.50, reported
	by Bastian Blank <waldi@debian.org>.
	* NEWS, configutil.c: Return error in readconfig() when there are
	two definitions for the same server/port pair.
	* fetchnews.c: Add some freeconfig() calls.
	* Makefile.am: Split rsync into rsynconly and rsync, make rsync*
	targets .PHONY.

2004-03-07  Matthias Andree <matthias.andree@gmx.de>

	* NEWS: Mention Ralf's cleanup.

2004-03-07  Ralf Wildenhues <ralf.wildenhues@gmx.de>

	* critmem.c, fetchnews.c, texpire.c: Rename variables to not match
	math builtins.
	* getaline.c: Include string.h for strerror.

2004-03-05  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, configure.ac: 1.9.52.rc2
	* README: Explain news.debug vs. news.=debug difference in
	syslog.conf and recommend the former.

2004-03-04  Matthias Andree <matthias.andree@gmx.de>

	--- release 1.9.52.rc2 ---
	* fetchnews.c: Print getting newsgroup descriptions once per server
	rather than once per new group.

2004-03-01  Matthias Andree <matthias.andree@gmx.de>

	* getaline.c, mgetaline.c: Enhance logging to easier retrieve
	errors and timeouts, look for ERROR: in the debug log to find
	problems.

2004-02-28  Matthias Andree <matthias.andree@gmx.de>

	* config.example: Documentation fix by David Houlden.

2004-02-26  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, configure.ac: Release 1.9.52.rc1.

	--- release 1.9.52.rc1 ---
	* config.example, configutil.c, fetchnews.c, leafnode.8.in,
	leafnode.h, doc_german/leafnode.8.in: Implement timeout_fetchnews.
	* leafnode.h, mgetaline.c, nntpd.c: Add mgetaline_settimeout() to
	configure the timeout in mgetaline().
	* leafnode.h: Drop unused tgetaline declaration.
	* NEWS, leafnode.8.in, doc_german/leafnode.8.in: timeout_client
	history documented.
	* fetchnews.c: Various logging fixes. Prefix server name or group
	name when reasonable, for easy correlation of logs.  Use lock file
	in postonly mode to avoid articles from being posted twice (relevant
	for moderated groups).
	* checkgroups.c: Bugfix: Store current working directory before
	initvars, which runs chdir(), and restore afterwards. This allows
	for checkgroupsfile paths relative to the cwd.

2004-02-19  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.9.51.rel ===
	* fetchnews.c: Fix stat()/errno logic bug that checked errno rather
	than the stat() return value. Symptom: "groupinfo file ... is not
	present or too short".  First reported by Thomas Zajic (SourceForge
	Bug #900583), Adam Sampson (with patch, by mail).
	* ChangeLog, NEWS, configure.ac: Release 1.9.50.rel.

2004-02-18  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.9.50.rel ===
	* fetchnews.8.in, leafnode.8.in, doc_german/fetchnews.8.in,
	doc_german/leafnode.8.in: Minor updates, focused on nopost, UTF-8
	and the BUGS section. Replaced news02.bigprovider.com by
	news02.example.com.

2004-02-16  Matthias Andree <matthias.andree@gmx.de>

	* README-FQDN.pod: Update after separation of news.cis.dfn.de and
	news.individual.net.

2004-02-12  Matthias Andree <matthias.andree@gmx.de>

	--- 1.9.50.rc4 ---
	* texpire.8.in, doc_german/texpire.8.in: update documentation.
	* texpire.c: Fix logic bugs in expiremsgid(): only increment
	deleted++ when the article was really unlinked, but don't jump into
	"kept" branch when unlinking was attempted but failed.
	* texpire.c: Add signal handler to save the active file after an
	interrupt.  Make sure that when relinking from message.id, the
	article file is always visible in the article directory (where it
	will not be deleted before it expires) so we don't lose an article
	on interrupt/crash that happens while we're relinking.
	* activutil.c: unlink groupinfo.new before trying to write it.
	* texpire.c: Revert expire.id progress. Doesn't belong here.
	Relinking articles now works for crossposted articles.  Files in
	wrong message.id/XXX directories are moved into the right one.

2004-02-10  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, configure.ac: release candidate #3 to 1.9.50.

	--- 1.9.50.rc3 ---
	* leafnode.h, mysigact.c: Use the right types in sigaction() and
	lookup()/LOOKUP_FREE arguments.
	* strlcpy.c: Use ANSI prototype.
	* fetchnews.c: When adding new groups, set last to 0 and first to
	1, to match common expectations in other parts of the code (first >
	last is true for empty groups).  When the active file cannot be
	read, fake one to get proper water marks.  When the active file is
	non-existent or readactive fails, force fetching a new one.
	* checkgroups.c: Bugfix: add missing groups from checkgroups file.
	Bugfix: If active file cannot be read, fake one to have proper group
	lowwater/highwater marks, in case one of our local groups is listed
	in the checkgroups file.
	* texpire.c: If active file cannot be read, fake one. Texpire is
	still useful without groupinfo to get the spool in a somewhat usable
	state.
	* activutil.c, leafnode.h: New function: newgroupdesc, to change
	the description of a not-yet merged group. Useful for checkgroups.
	* activutil.c: If groupinfo file cannot be read for any other
	reason than "no such file", abort the program.
	* activutil.c: When building an active file from group directories,
	use killactiveread() to force groupinfo reading at next fetchnews
	run.
	* activutil.c: When building an active file from group directories,
	use the directories' ctime for group age.
	* activutil.c, leafnode.h: Make 2nd argument of changegroupdesc
	const char *.
	* activutil.c, fetchnews.c, leafnode.h: Move activeread() and
	killactiveread() from fetchnews.c into activutil.c.
	* nntpd.c: Use g->first as-is for pseudo groups in GROUP. This is
	usually g->last + 1 and means we use a NEW number for the pseudo
	article. Reported by Andreas Muck.
	* artutil.c: article low-/highwater mark fixes again.
	* nntpd.c: Rearrange functions to get rid of forward declarations.
	* Makefile.am: when pod2html/pod2text fail, remove output file.
	Fix rsync for VPATH build.

2004-02-08  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, configure.ac: release candidate #2 to 1.9.50.

	--- 1.9.50.rc2 ---
	* configure.ac: Check for ICC before checking
	AC_FUNC_SETVBUF_REVERSED.
	* fetchnews.c: Fix: (regression in 1.9.50.rc1): when server returns
	a 411 response, do not abort fetching from the server. Reported by
	William Whooper, thanks a lot! Logging: when aborting the fetch from
	a server, log a warning.
	* fetchnews.c: Align console and syslog output when an article was
	filtered, to avoid confusion.

2004-02-05  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog: ICC cleanups.
	* configure.ac: Fix typo.

	--- 1.9.50.rc1 ---
	* NEWS: Mention ICC 8 compatibility and fetchnews format string
	fixes.
	* Makefile.am: #include "leafnode.h" in config.c
	* configure.ac: Do not add GCC options for ICC.  Do not run
	AC_FUNC_SETVBUF_REVERSED for ICC, broken.
	* leafnode.h: #include <setjmp.h> Declare extern sigjmp_buf
	timeout.  Make timer() declaration an extern.
	* configutil.c: Unexport global linebuffer.
	* fetchnews.c: Unexport some global variables.  Fix some format
	strings for integers.  Drop unused variable srv.  Drop unused global
	variable artno.
	* checkgroups.c: Unexport process_input().
	* filterutil.c: Unexport struct filter.
	* applyfilter.c: Drop unneeded /*@notreached@*/ and return NULL;
	* nntpd.c: Unexport our private functions. Move parser() way down
	so as to avoid forward declarations.
	* miscutil.c: Drop unneeded external declaration _res.  Drop unused
	variable gmt.
	* nntputil.c: Drop unneeded global struct current_server.  Drop
	unneeded external _res declaration.  Move timeout and timer()
	declarations into leafnode.h.  Unexport authenticated.
	* quickmkdir.c: Unexport die().
	* texpire.c: Drop unneeded global variable now. Unexport quiet,
	use_atime, default_expire.
	* validatefqdn.c: Kill unneeded variable t in is_validfqdn.
	* xoverutil.c: Drop unneeded _res declaration.
	* activutil.c: Unexport newgroup.
	* ln_log.c, ln_log.h: Move extern int verbose; from ln_log.c into
	ln_log.h.
	* ChangeLog, NEWS, configure.ac: Release Candidate #1 to 1.9.50.
	* leafnode.8.in, doc_german/leafnode.8.in: Minor update to the
	only_groups_pcre documentation. Mention pcregrep example as checking
	aid.
	* fetchnews.8.in, doc_german/fetchnews.8.in: Minor update to the -x
	documentation.

2004-02-04  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.c: Free memory before exit, to ease leak checking.
	getgroup() returns 0 when fetchnews should proceed to the next
	server immediately (for instance after losing the connection or
	failing authentication).  Revise stufftoget() memory handling.
	* texpire.8.in, doc_german/texpire.8.in: Document new -q and -h
	options.
	* leafnode.h: Add freexover(), freegetaline(), freelastreply(),
	freeconfig() and freefilter() prototypes.  Add a LOOKUP_FREE
	#define, it is (void *)-2.  Move xoverutil related declarations to
	the same place.
	* texpire.c: Revise option parser, use a switch.  Change
	error-related printf to ln_log.  Support a new "quiet" option (-q)
	to suppress stats.  Explicitly support "help" option (-h) that exits
	0 instead of 1.  Free memory where needed (there were no leaks).
	* applyfilter.c: Free memory before exit. If active is NULL after
	readactive(), complain and exit.
	* miscutil.c: Support lookup(LOOKUP_FREE) to free storage.
	* xoverutil.c: Initialize overview to NULL.
	* nntputil.c: Add freelastreply().  syslog -> ln_log.
	* configutil.c: In freeconfig, call freefilter, lookup(LOOKUP_FREE)
	and freelastreply().
	* getaline.c: Reorder functions to fix a compiler warning.
	* filterutil.c: Add freefilter() function to release memory
	allocated to filters.
	* filters.example: Capitalize first word in a sentence.
	* configutil.c: Fix critmalloc error branch tag, server name ->
	server.  freeserver: free the server struct itself.  freeservers:
	set servers to NULL after freeing (robustness).  add a new
	freeconfig() function.
	* miscutil.c:
	(lookup): critrealloc -> free;critmalloc. There's no point in
	keeping data that we overwrite right away.
	* checkgroups.8.in: Fix typo.
	* getaline.c: Add a freegetaline() function to allow freeing the
	static memory.
	* nntpd.c: Free memory before exit to ease leak checking. (No leaks
	known ATM.)
	* newsq.c: Plug minor memory leak.
	* checkgroups.c: Use lockfile.  Plug memory leaks (don't hurt much
	as we aren't running long).  Cleanup: only check open file in
	process_input.  Cleanup: log errors to syslog.
	* xoverutil.c: Plug memory leak after agetcwd. Split out freexover
	and expot it.
	* fetchnews.c: Make sure all warnings and errors are printed to
	stderr rather than stdout.  Print ..saw header in high-verbose mode
	only when debugmode is 2.  Log when lock file cannot be obtained.
	* fetchnews.c: Logging cleanup. Minor severity adjustments. Make
	sure all warnings and errors are in the log and on the console.
	* fetchnews.c: Bugfix: noactive wasn't taken into account with
	forceactive in effect (after fetchnews -f or timeout_active days had
	passed since the last update).  Reported by Andrew Cranson. Broken
	since introduction in v1.9.25.

2004-01-18  Matthias Andree <matthias.andree@gmx.de>

	* texpire.c, xoverutil.c: More robust XOVER data handling. When
	generating XOVER data, skip linear white space at beginning of
	header.  Texpire updates .overview.
	* fetchnews.c: Allow for tab after some headers.
	* update.sh: Remind user to delete groupinfo.old.
	* leafnode.h: xoverutil.c exports legalxoverline for texpire.
	* activutil.c, lsort.c: PATH_MAX fixes.
	* leafnode.h: mygetcwd replaced by agetcwd. Drop MAXPATHLEN.
	* configure.ac: Use GCC_FLAGS rather than adding to CFLAGS. Check
	for -Wformat=2 and add if supported.

2004-01-09  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, configure.ac: RELEASE 1.9.49.rel.

	=== RELEASE 1.9.49.rel ===
	* fetchnews.c: Fix delaybody mode.  Broken since 1.9.48.rel
	security fix.  Reported by Berthold Hllmann.
	* amiroot.c: Rearrange #includes to match SUS.
	* leafnode-SA-2004-01: Fix Affects: line.
	* configure.ac: bump version.
	* Makefile.am, leafnode-SA-2004-01: Add leafnode security
	announcement leafnode-SA-2004-01.
	* NEWS: Mention autoconf 2.59.
	* ChangeLog, NEWS, configure.ac: RELEASE 1.9.48.rel.

	=== RELEASE 1.9.48.rel ===
	* fetchnews.c: Security fix: Do not call ignore_answer() when the
	header ends prematurely (i. e. server sends CRLF.CRLF before the
	blank line), this causes fetchnews to lock up and prevents any
	further articles to be fetched from that server. Workaround:
	minlines=1 (or some bigger value) in config file.  Reported by Toni
	Viemer, SourceForge.net bug #873149, 2004-01-08.
	Log group name for killed articles.

2004-01-07  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, configure.ac, doc_german/.cvsignore: RELEASE
	1.9.47.rel.

	=== RELEASE 1.9.47.rel ===

2004-01-03  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, Makefile.am, NEWS, configure.ac: snapshot 1.9.47.rc3

	--- 1.9.47.rc3 ---
	* lsort.c: Revise memory handling, free memory, suppress critmem
	syslog, use critstrdup.
	* critmem.c, critmem.h: Allow suppression of syslog, through
	critsyslog(0).
	* fetchnews.c: Consolidate one printf/syslog to ln_log.
	* miscutil.c: Replace malloc/realloc + exclicit check by
	crit*alloc.
	* leafnode.h: Add mygetcwd prototype.
	* xoverutil.c, texpire.c: Avoid barfing on NULL return from getcwd,
	place "(unknown)" into buffer instead.
	* strdup.c: Quench one line. :-)
	* activutil.c, checkgroups.c, filterutil.c, lsort.c: Eliminate all
	strdup() calls, changed to critstrdup(), to catch out-of-memory
	conditions.

2004-01-02  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, TODO, configure.ac: snapshot 1.9.47.rc2

	--- 1.9.47.rc2 ---
	* config.example, leafnode.8.in, doc_german/leafnode.8.in: Revise
	port documentation to tell the user that only fetchnews cares for
	the port and he'll have to use [x]inetd.conf/tcpsvd/tcpserver to set
	the leafnode LISTEN port.
	* fetchnews.c: Check crosspostlimit against Xref: headers, if
	present, to avoid downloading excessively crossposted articles. This
	may miss some articles that are then later filtered after
	Newsgroups:.  Revise logging. The log file will contain information
	when XOVER mode leads to article rejections. Uses ln_log.
	* configutil.c, leafnode.h, nntpd.c: New newsadmin option.

2003-12-19  Matthias Andree <matthias.andree@gmx.de>

	--- 1.9.47.rc1 ---
	* fetchnews.c: Bugfixes for Bytes and Date in XHDR mode.  Implement
	missing Lines support for XHDR.  No longer require that Bytes, Date
	or Line replies are in same order and with same amount as Message-ID
	in XHDR mode.  Do not try to fetch past the end of the stufftoget[]
	array in XHDR mode when Date, Lines or Bytes filtered an article.
	Fixes valgrind complaints.
	* nntpd.c: Support XOVER without argument, which will return data
	for the current article.
	* configutil.c: Do not pass uninitialized data to setrlimit. Found
	by valgrind.
	* miscutil.c: Fix memory leak in migrate(), found by valgrind.
	* nntpd.c: Accelerate list newsgroups and list active when the
	pattern does not contain wildmat meta characters, by using findgroup
	rather than iterating and printing a single match.  Detect list
	active.times when trailing garbage (group name) is present.
	* fetchnews.c: Implement noxover option.  Do not insist on Xref:
	field in XOVER replies, reported by Brian Sammon.  Heed
	minlines/maxlines/maxbytes when reading XOVER info.
	* configure.ac: Revert version to rc1.  Bugfix snprintf check.
	* config.example, configutil.c, leafnode.8.in, leafnode.h,
	doc_german/leafnode.8.in: New server specific option: noxover.
	* ChangeLog, NEWS, configure.ac: Release 1.9.47.rel. (was later
	reverted).
	* FAQ.xml, README, config.example: Minor revisions.

2003-12-04  Matthias Andree <matthias.andree@gmx.de>

	* NEWS, fetchnews.c: Avoid (sig)longjmp(3) clobbering our variable
	'quiet'.
	* fetchnews.8.in, fetchnews.c, doc_german/fetchnews.8.in: Implement
	-q flag to suppress no-posting server warning. Requested by Joey
	Hess.

2003-11-06  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.9.46.rel ===
	* fetchnews.c: Fix 1.9.44.rc1 regression: -n was ignored.  Print
	and log the reason why the active will be re-fetched.

2003-11-02  Matthias Andree <matthias.andree@gmx.de>

	* NEWS, nntputil.c: ntl changed the banner of their still-broken
	  NNTP software. Apply STAT workaround also to the new banner.
	Reported by Grahame Cooper.

2003-11-01  Matthias Andree <matthias.andree@gmx.de>

	* doc_german/: applyfilter.8.in, checkgroups.8.in, fetchnews.8.in,
	leafnode-version.1.in, leafnode.8.in, newsq.1.in, texpire.8.in: .SH
	cleanup
	* doc_german/leafnode-version.1.in: Translate section headings to
	German.

2003-10-30  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, Makefile.am, NEWS, configure.ac: Release 1.9.45.rel.

	=== RELEASE 1.9.45.rel ===
	* fetchnews.c: Fix SIGSEGV introduced with last post-1.9.44
	fetchnews commit.

2003-10-29  Matthias Andree <matthias.andree@gmx.de>

	* activutil.c: Skip group with dot in first or last position or two
	adjacent dots.
	* fetchnews.c: Check if we get "." rather than something that
	starts with a dot.

2003-10-22  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, configure.ac: Release 1.9.44.rel.

	=== RELEASE 1.9.44.rel ===

2003-10-19  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS: 1.9.44.rc4

	--- 1.9.44.rc4 ---
	* Makefile.am, attributes.h, configure.ac, getfoldedline.c,
	ln_log.h, mastring.c: Drop __attribute__ macro definition, rather
	use __attribute__ only when __GNUC__ is defined. Let autoconf handle
	the "inline" issue.

2003-10-16  Matthias Andree <matthias.andree@gmx.de>

	* xoverutil.c: Fix comment.
	* NEWS: Mention .spec fixes (%config(noreplace)), bug reported by
	William Hooper.
	* CREDITS: Add missing circumflex to Dniel Fraga's name.
	* ChangeLog, NEWS, configure.ac: snapshot ln-1-9-44-rc3

	--- 1.9.44.rc3 ---
	* xoverutil.c, NEWS: Skip over files unless the first character of
	the name is a digit. Sourceforge Bug #824991, Dniel Fraga.

2003-10-15  Matthias Andree <matthias.andree@gmx.de>

	* leafnode.spec.in: Remind user of editing xinetd.d/leafnode in
	%post section.

2003-10-14  Matthias Andree <matthias.andree@gmx.de>

	* leafnode.spec.in: Make xinetd.d/leafnode and cron.daily/leafnode
	%config(noreplace).  Reported by William Hooper.
	* ChangeLog, NEWS, configure.ac: snapshot ln-1-9-44-rc2

	--- 1.9.44.rc2 ---
	* fetchnews.c: Add proper postarticles: tag to logging of this
	function.
	* fetchnews.c: Print 'server does not carry Newsgroup' in -vvv
	verbose mode.
	* ln_log.c: Align verbosity to better match leafnode-1. Still
	imperfect, but usable.
	* fetchnews.c: Removed the 'current_server' global variable.  Do
	not stat articles that we kill for age or size (faster).  Major
	overhaul of the postarticles() function, more detailed reporting, do
	not move article to failed.postings if server refuses POST before
	looking at the article.
	* fetchnews.h, fetchnews_check_date.c, leafnode.h, nntputil.c:
	Removed the 'current_server' global variable.

2003-10-07  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, configure.ac: Snapshot RC #1.

	--- 1.9.44.rc1 ---
	* configure.ac, mastring.c: Exclude glibc 2.3 dependent stuff so
	the binary compiles work with glibc 2.2.
	* leafnode.spec.in: Add /etc/xinetd.d/leafnode, README.rpm
	* INSTALL, doc_german/INSTALL_de: Note that xinetd is default.
	* doc_german/: Makefile.am, leafnode-version.1.in: Add German
	manual page for leafnode-version.
	* leafnode-version.1.in: Fix formatting.
	* Makefile.am, leafnode.xinetd.in: Add leafnode.xinetd file for use
	in RPM.
	* leafnode.spec.in: Fix typo ADD_ONS -> ADD-ONS. Shuffle around and
	clean up German documentation.  Leave man page compression to
	package manager.

2003-10-06  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, configure.ac: snapshot
	* xsnprintf.c: Add test #9 from mlgroups patch documentation.
	* activutil.c: Initialize newgroup to NULL (from Nikita's mlgroups
	patch).
	* CREDITS: Add Nikita's name in Cyrillic letters.
	* xoverutil.c: Remove strerror, not meaningful in this place.
	Reported by Nikita V. Youshchenko.
	* CREDITS: Add Nikita V. Youshchenko, drop a mail address that has
	apparently expired.
	* ADD-ONS, Makefile.am, NEWS, leafnode.spec.in, README: New ADD-ONS
	file.
	* fetchnews.c: Bugfix (cleanup): Move interesting.groups expire
	code out of getgroup, call it before main loop. Reported by Nikita
	V. Youshchenko.
	* texpire.c: Fix SIGSEGV when expiring groups that are no longer in
	groupinfo.  Reported by Iain D. Broadfoot by way of Mark Brown
	(Debian).

2003-09-23  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.c: Accept any 2XX reply to NEWGROUPS. Problem with
	MC-link Custom News-server V1.06 encountered by Paolo Amoroso.

2003-09-21  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.c, nntputil.c: Clean up debugmode.
	* texpire.c: In verbose mode, print 'Expiring message.id...'.
	* config.example, leafnode.8.in, doc_german/leafnode.8.in: document
	debugmode

2003-09-04  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.9.43.rel ===
	* Makefile.am: Ship KNOWNBUGS and security announcements.  
	* KNOWNBUGS: Add KNOWNBUGS document.  
	* leafnode-SA-2002-01, leafnode-SA-2003-01: Add security
	announcements.  
	* configure.ac: Bump version.  
	* FAQ.xml: Add 'version 3' note to stunnel pointers, document how
	to run leafnode as NNTPS server.  
	* INSTALL: Reword section 13 about news readers, suggested by Steve
	Mansfield.  Add a pointer to stunnel for SSL.  
	* README-FQDN.pod: Mention 'SuSEconfig.hostname removes aliases
	when CHECK_ETC_HOSTS=yes' bug.  Reported by Steve Mansfield.  

2003-09-02  Matthias Andree <matthias.andree@gmx.de>

	* xoverutil.c: Kill "article ... is below/above the *-water  mark"
	messages.  These can only happen when fetchnews stores an article
	while leafnode tries to obtain an updates .overview file. Reported
	by Rein Klazes.  Change remaining printf to ln_log.  

2003-08-26  Matthias Andree <matthias.andree@gmx.de>

	* configure.ac: Bump version.  
	* xoverutil.c: Revert stat() to figure if there are subdirectories
	in groups such as alt.games.simcity.3000, it's way too slow.
	Reported by Rein Klazes.  
	* texpire.c: Bugfix: groupexpire = 0 would expire immediately
	rather than use the global default.  Strip leading - from group
	components that grouplist lookup returns.  
	* miscutil.c: Directories with all-numeric names now get a '-' as
	prefix, so that example.1234 is stored into .../example/-1234.  
	
	This allows xoverutil to get rid of two stat() calls per article.  

2003-08-17  Matthias Andree <matthias.andree@gmx.de>

	* checkpeerlocal.c: In TEST mode, print sa_len if available.  
	* fetchnews.c: Make sure nntpactive() prints an error message
	before returning error condition.  Found by Tim Daneliuk.  

2003-07-25  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.8.in, leafnode.8.in, doc_german/fetchnews.8.in,
	doc_german/leafnode.8.in: document ctime for interesting.groups 
	* fetchnews.8.in, leafnode.8.in, doc_german/fetchnews.8.in,
	doc_german/leafnode.8.in: u+x -> u+r documentation fixes.  

2003-07-02  Matthias Andree <matthias.andree@gmx.de>

	* texpire.c: Fix groupinfo lines for lines that are set to "never
	expire" (groupexpire -1). Reported by Sytse van Slooten.  
	* configutil.c: Warn if groupexpire is 0 (which means default
	rather than never).  
	* CREDITS: Add Sytse van Slooten.  
	* fetchnews.c: Avoid abort on fflush before forking when stdout is
	disconnected: ignore SIGPIPE. Reported by Sytse van Slooten.  
	* leafnode.8.in, doc_german/leafnode.8.in: Refine expire and
	groupexpire documentation.  

2003-06-29  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, fetchnews.c: Commit Mark Brown's ln-flush.diff,
	putting stdout into line buffered mode.  

2003-06-29  Mark Brown  <broonie@sirena.org.uk>

	* fetchnews.c (main): Set line buffering for stdout to ensure
	prompt display of output even when the output device is not a
	terminal.

2003-06-21  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.9.42.rel ===
	* ChangeLog, ChangeLog.old, Makefile.am, leafnode.spec.in: Split
	ChangeLog at leafnode-1.9.31.rel.  
	* ChangeLog, configure.ac: 1.9.42.rc1 

2003-06-20  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.c: Fix a bug that got introduced after 1.9.41.rel:
	bodies of articles were no longer downloaded at all.  Fix
	long-standing bug: when a mandatory header was missing from an 
	upstream article, fetchnews would behave strangely; a hang was
	reported by Joshua Crawford <mortarn@softhome.net>.  
	* activutil.c: Change comment.  

2003-06-06  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.c: Fix bogus "Cannot open
	/var/spool/news/interesting.groups/group.name for reading" after
	unsubscribing; reported by Andreas Muck.  

2003-05-26  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.c, nntputil.c: Check lastreply() against NULL. Reported
	by Bruno Rohee.  

2003-05-22  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, configure.ac: Release 1.9.41.rel.  
	=== RELEASE 1.9.41.rel ===
	* NEWS, leafnode.8.in, doc_german/leafnode.8.in: Doc update.  
	* Makefile.am: Remove FAQ.xml.valid cruft.  Ship .lclintrc. 
	Hardcode XSL style sheet path for DocBook->XSL-FO translation, 1.60+
	style sheets break passivetex 2002-08 and 2003-01 versions, while
	passivetex 2003-03 itself is twisted.  

2003-05-20  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS: snapshot 1.9.41.devel1 

	--- snapshot 1.9.41.devel1 ---
	* config.example, configutil.c, fetchnews.c, leafnode.8.in,
	leafnode.h, doc_german/leafnode.8.in: Commit delaybody_in_situ
	option.  
	* fetchnews.c: Be more careful not to write the interesting.groups
	file unless it is really needed, to avoid keeping a group
	interesting when the last user has already unsubscribed.  
	* fetchnews.c: EXPERIMENTAL patch to append article bodies in situ,
	to improve compatibility.  
	* fetchnews.c: Improve error message and one comment.  
	* Makefile.am: Fix trashing t.pcre_extract at make clean time.  

2003-05-18  Matthias Andree <matthias.andree@gmx.de>

	* FAQ.xml, fetchnews.c: Add nodesc=1 instructions when reading the
	newsgroup descriptions fails.  

2003-05-15  Matthias Andree <matthias.andree@gmx.de>

	* doc_german/leafnode.8.in: Fix typo.  

2003-05-11  Matthias Andree <matthias.andree@gmx.de>

	* configure.ac: Patch by Bruno Rohee to let configure find tcpd on
	OpenBSD.  

2003-05-08  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.c: Reword messages around forking the xover updater
	process to be less technical.  
	* ChangeLog, NEWS, configure.ac: Release 1.9.40.rel.  

	=== RELEASE 1.9.40.rel ===
	* snprintf.c: Support '+' format flag.  

2003-05-07  Matthias Andree <matthias.andree@gmx.de>

	* xsnprintf.c: Add more tests.  

2003-05-04  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.9.39.rel ===
	* ChangeLog, NEWS, configure.ac: Release 1.9.39.rel.  
	* nntpd.c: Fix: STAT <mess@ge.id> returned OK in pseudogroups even
	when the wrong message- id has been requested.  

2003-04-23  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, configure.ac: Release 1.9.38.rel.  

	=== RELEASE 1.9.38.rel ===
	* leafnode.spec.in: Insist on pcre.h in /usr/include/pcre or
	/usr/include before unpacking the tar.  Require pcre for the build.  
	* snprintf.c: Do not overwrite buffer with hash marks when width is
	insufficient.  
	* xsnprintf.c: Add more tests.  

2003-04-21  Matthias Andree <matthias.andree@gmx.de>

	* Makefile.am: Add nntputil_CFLAGS, fix validatefqdn_CFLAGS and
	move them up.  
	* nntputil.c: Revise NewsCache whitelist strings.  Add test mode
	(with -DMAIN, see Makefile.am).  
	* configure.ac: Bump version.  

2003-04-20  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS: Release 1.9.37.rel.  

2003-04-19  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.9.37.rel ===
	* xsnprintf.c: Revamp snprintf tests.  
	* configure.ac: Use backticks to pull xsnprintf.c in as test for
	snprintf correctness.  
	* snprintf.c: Avoid unterminated loop when unrecognized modifiers
	are in a format string.  Support width and 0 modifiers for decimal
	formats %[l]{u|i|d}.  
	* fetchnews.c: Replace %hu by %u as %hu is unsupported by our
	replacement snprintf.  
	* snprintf.c: Assorted bug fixes.  
	* system.h: Include <dirent.h>, not "system.h" #if HAVE_DIRENT_H.  
	* activutil.c, applyfilter.c, checkgroups.c, fetchnews.c,
	grouplist.c, miscutil.c, newsq.c, nntpd.c, system.h, texpire.c,
	xoverutil.c: Make dirent.h stuff portable.  
	* configure.ac, malloc.c, realloc.c, critmem.c: Kill AC_FUNC_MALLOC
	and AC_FUNC_REALLOC, substituting in critmem.c instead.  
	* Makefile.am, grouplist.c, ln_log.c, mastring.c, wantassert.h: New
	header wantassert.h to configure if assertions are wanted or no.  
	* configure.ac: Bump version
	* config.example, configutil.c, fetchnews.c, leafnode.8.in,
	leafnode.h, doc_german/leafnode.8.in: Rename post_nogroup to
	post_anygroup 

2003-04-13  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS: Release 1.9.37.rc1 
	* configure.ac: Get LDFLAGS right, enabling SPARC64 builds with
	embedded pcre.  
	* Makefile.am: Work around pcre/Makefile LDCONFIG bug.  
	* configutil.c: Fix 64-bit warning in assignment.  
	* configure.ac, leafnode.h: Check snprintf quality at compile time,
	and replace with out own snprintf function if needed (Slackware
	4.0). We're only doing that because it's cheap maintenance-wise.  
	* snprintf.c: Clean up types.  
	* snprintf.c: Calls to variadic functions (with "..." arguments)
	promote char arguments to int. We need to take this into account.  
	* xsnprintf.c: Always print the test that failed.  

2003-03-24  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.c: Debugging output enhanced, courtesy of Matt Gibson
	<gothick@gothick.org.uk>.  

2003-03-21  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, configure.ac: Release 1.9.37.devel2.  

	--- release 1.9.37.devel2 ---
	* nntputil.c: Allow DATE check on NewsCache versions 0.99.2X with X
	> 2.  
	* config.example, configutil.c, fetchnews.c, leafnode.8.in,
	leafnode.h, nntputil.c, doc_german/leafnode.8.in: Add post_nogroup
	option to suppress the isgrouponserver check.  Problem reported by
	Dmitry Samersoff.  Do not check DATE on NewsCache servers with
	versions other than 0.99.22p1, previous versions return local time
	rather than GMT.  

2003-03-17  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.8.in, doc_german/fetchnews.8.in: Document -x as being
	useful to pull from a class of certain broken servers.  

2003-03-15  Matthias Andree <matthias.andree@gmx.de>

	--- release 1.9.37.devel1 ---
	* ChangeLog, NEWS, miscutil.c: Don't abort if the permission bits
	or group membership of directories are wrong, as this might break
	existing setups and is therefore unsuitable for a stable branch.  
	* fetchnews.c: When reading all newsgroups fails, call
	killactiveread().  Print last line returned from the server when
	reading new or all newsgroups fails.  

2003-03-13  Matthias Andree <matthias.andree@gmx.de>

	* leafnode.spec.in: Rename lockfile to "lock.file", ship temp.files
	directory in RPM.  
	* INSTALL, README, configure.ac, doc_german/INSTALL_de: Change
	default lockfile to $spooldir/leaf.node/lock.file 
	* miscutil.c: Switch directory creation to a loop rather than
	linear code.  Try to open spooldir for reading to avoid
	postarticles() barfing later.  Initialize umask to 02.  
	* .cvsignore: Add validatefqdn and pcre_extract.  
	* configure.ac: Bump version to 1.9.37.devel1.  
	* fetchnews.c: Add error message when saving the current working
	directory fails in postarticles.  

2003-02-25  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.9.36.rel ===

2003-02-24  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.c: When discarding an article, properly flush the body.
	Found by Oliver Schwabedissen.  
	* README, doc_german/README_de: Remove reference to preferxhdr, it
	was never implemented in the baseline versions. Found by Oliver
	Schwabedissen <Oliver.Schwabedissen@web.de>.  

2003-02-22  Matthias Andree <matthias.andree@gmx.de>

	* configure.ac: Bump version, just to be sure.  
	* NEWS: Fix manual manual maintenance to manual maintenance. Patch
	by Bruno Rohee <bruno@rohee.com>.  
	* texpire.8.in: Fix manual manual maintenance to manual
	maintenance. Patch by Bruno Rohee <bruno@rohee.com>.  

2003-02-21  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.9.35.rel ===
	* NEWS: Add 1.9.35.  
	* pcre_extract.c: Fix abort when extracting string, introduced with
	  previous strlcpy -> xstrlcpy commit.  Reported by Joshua Crawford 
	<mortarn@softhome.net> Add debug variable to conditional TEST part
	to use this code standalone.  
	* Makefile.am, t.pcre_extract: Add t.pcre_extract regression test
	to see if simple extraction works.  

2003-02-19  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS, configure.ac: Release 1.9.34.rel.  

2003-02-18  Matthias Andree <matthias.andree@gmx.de>

	=== RELEASE 1.9.34.rel ===
	* Makefile.am: Minor correctness patch to config.c rebuilding.  
	* miscutil.c, TODO: Change to spooldir at the end of initvars()
	(after changing uid/gid) to avoid barfing when run from
	misconfigured cron.  
	* activutil.c, configutil.c, getfoldedline.c, nntpd_dodate.c,
	pcre_extract.c: Minor cosmetic type/warning fixes.  
	* README: Rename DEBUGGING to TROUBLESHOOTING, and reword
	introduction to PROBLEMS section.  
	* fetchnews.8.in: Point to filters.example.  

2003-02-12  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews_check_date.c: Check for overflow of time difference.
	Paranoia mode, someone needs to hose his clock by at least 68 years
	to run into this.  
	* fetchnews_check_date.c: Portability: don't pass time_t to
	syslog(...%ld...), sizeof time_t != sizeof long on 64bit FreeBSD,
	reported by Christian Weisgerber <naddy@mips.inka.de>.  

2003-02-03  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, TODO, configure.ac, configutil.c: Release 1.9.33.rel.  

	=== RELEASE 1.9.33.rel ===

2003-01-29  Matthias Andree <matthias.andree@gmx.de>

	* README: Note that /var/log/news.all must be touched before
	sending SIGHUP to syslogd.  

2003-01-28  Matthias Andree <matthias.andree@gmx.de>

	* NEWS, README: Remove u+x stuff from README, we use u+r instead.
	Add corresponding note to NEWS.  
	* configure.ac: Bump version.  
	* fetchnews.c: Use u+r (S_IRUSR) instead of S_IXUSR (u+x) as marker
	for "complete" postings, to enhance compatibility with leafnode up
	to 1.9.22.  Robustness: save and restore old working directory
	across postarticles().  
	* newsq.c, nntpd.c: Use u+r (S_IRUSR) instead of S_IXUSR (u+x) as
	marker for "complete" postings, to enhance compatibility with
	leafnode up to 1.9.22.  
	* artutil.c: Robustness: always chdirgroup before storing articles.  
	* README: Clarify "articles not posted" issue.  
	* nntpd.c: Defer program exit by 3 seconds to avoid process
	ID-induced file name collisions.  

2003-01-27  Matthias Andree <matthias.andree@gmx.de>

	* Makefile.am, activutil.c, activutil.h, activutil_resolve.c: Break
	"different case" resolving code out of activutil.c 
	* NEWS: clarify 
	* fetchnews.c: Bugfix: when nodesc is set for a server, do not try
	to download the newsgroup descriptions when getting /all/ newsgroups
	(the flag only applied to /new/ newsgroups prior to the fix).
	Bugfix: run mergegroups after the servers loop, to avoid bogus
	errors from flooding the display when fetchnews is interrupted while 
	downloading newsgroup lists.  
	* activutil.c: In verbose mode, print if the active file has been
	written and its line count.  
	* configure.ac: Bump version.  
	* xoverutil.c: Bugfix: skip over non-regular files when scanning
	    directories, to avoid barfing on names such as alt.games.simcity and
	alt.games.simcity.3000.  

2003-01-26  Matthias Andree <matthias.andree@gmx.de>

	* FAQ.xml: Add two speedup hints for fetchnews.  
	* leafnode.8.in, newsq.1.in, doc_german/leafnode.8.in,
	doc_german/newsq.1.in: Document when recent options have been
	introduced.  
	* NEWS: Revamp 1.9.33 section.  
	* doc_german/leafnode.8.in: Track rename of uncommitted (in code)
	name "filter_after_body" to "article_despite_filter".  
	* fetchnews.c: Bugfix: Always run getmarked() to retrieve marked
	  articles, to let leafnode retrieve articles that were marked in
	  delaybody mode even after delaybody has been switched off.  Cleanup:
	  Change logging format in getmarked() and avoid getmarked output if 
	nothing is to be retrieved when delaybody mode is off. (uses
	fstat()) Change: use "ARTICLE" to request bodies if no filter is
	  defined 
	(compatibility) or if article_despite_filter is set.  Cleanup:
	Rename _ignore_answer() to ignore_answer().  Cleanup: Drop
	headerbody variable and related dead code.  
	* NEWS, config.example, leafnode.8.in, doc_german/leafnode.8.in: 
	Document article_despite_filter.  
	* configutil.c, leafnode.h: Implement article_despite_filter.  
	* nntpd.c: Mark article bodies for download if missing regardless
	of "delaybody" setting.  

2003-01-24 14:54  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.c: Major speedup: if delaybody is off, send ARTICLE
	    command rather than HEAD and BODY. This halves the network latency
	incurred. Also simplifies code.  Cleanup: Let store() create group
	directories.  

2003-01-24 14:49  Matthias Andree <matthias.andree@gmx.de>

	* nntpd.c: Don't create newsgroup directories. That's fetchnews'
	task. Set first pointer to last pointer when entering pseudo groups.  

2003-01-24 14:48  Matthias Andree <matthias.andree@gmx.de>

	* configure.ac: Bump version.  

2003-01-24 14:48  Matthias Andree <matthias.andree@gmx.de>

	* artutil.c: Bugfix: article numbering for pseudo articles with
	numbers other than 1 was hosed. Complain if group directory cannot
	be created.  

2003-01-24 12:53  Matthias Andree <matthias.andree@gmx.de>

	* nntpd.c: Bugfix: present pseudo article even if group->first is
	lower than group->last.  This can happen when a group directory is
	lost so that texpire cannot correct the group->first counter.  

2003-01-19 17:48  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog: Release 1.9.33.devel.1 

2003-01-19 17:31  Matthias Andree <matthias.andree@gmx.de>

	* Makefile.am, NEWS, fetchnews.c, fetchnews.h,
	fetchnews_check_date.c: Implement client-side DATE checks to warn
	if the clocks are too far apart.  

2003-01-19 17:31  Matthias Andree <matthias.andree@gmx.de>

	* Makefile.am, NEWS, fetchnews.c, fetchnews.h,
	fetchnews_check_date.c: Implement client-side DATE checks to warn
	if the clocks are too far apart.  

2003-01-19 14:02  Matthias Andree <matthias.andree@gmx.de>

	* validatefqdn.c: Fix memory leak introduced with last commit.  

2003-01-19 14:01  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, Makefile.am, validatefqdn.c: Build validatefqdn test
	program.  

2003-01-19 12:35  Matthias Andree <matthias.andree@gmx.de>

	* Makefile.am: Add nntpd.h to leafnode_SOURCES.  

2003-01-19 12:25  Matthias Andree <matthias.andree@gmx.de>

	* Makefile.am, NEWS, leafnode.8.in, nntpd.c, nntpd.h,
	nntpd_dodate.c, doc_german/leafnode.8.in: Implement DATE NNTP
	command.  

2003-01-17 01:45  Matthias Andree <matthias.andree@gmx.de>

	* CREDITS: Add Fumiaki Miura, change WWWW's address to use the
	Polish L-stroke character.  

2003-01-17 01:22  Matthias Andree <matthias.andree@gmx.de>

	* NEWS: Move the post-1.9.32 bits to the 1.9.33 section.  Update.  

2003-01-17 01:22  Matthias Andree <matthias.andree@gmx.de>

	* CREDITS, config.example, configutil.c, fetchnews.c,
	leafnode.8.in, leafnode.h, doc_german/leafnode.8.in: Merge Dmitry
	Samersoff's patch to add the "noread" option.  

2003-01-17 01:04  Matthias Andree <matthias.andree@gmx.de>

	* TODO: Some new items.  

2003-01-17 01:01  Matthias Andree <matthias.andree@gmx.de>

	* fetchnews.c: Bugfix: Don't crash on short XOVER lines without
	article number.  Log these instead.  

2003-01-15 19:34  Matthias Andree <matthias.andree@gmx.de>

	* nntpd.c: Fix Fumiaki's fix: use strcspn + q to find the new
	string. This caters for HTAB characters and avoids passing NULL into
	strstr.  

2003-01-15 19:25  Matthias Andree <matthias.andree@gmx.de>

	* nntpd.c: Bugfix: Merge patch from Fumiaki Miura
	<fm@mml.yrp.nttdocomo.co.jp>: take the RIGHT group when the current
	group is abc and the Xref: line looks like this: "Xref:
	news.example.com abcabc:20 abc:10". No infinite loop involved
	though, just the wrong article number extracted.  

2003-01-14 18:56  Ralf Wildenhues <ralf.wildenhues@gmx.de>

	* fetchnews.c: brown paper bag: DO NOT EVER MIX signal and
	sigaction.  

2003-01-14 18:15  Ralf Wildenhues <ralf.wildenhues@gmx.de>

	* fetchnews.c: Unify nested variable names.  

2003-01-14 18:14  Ralf Wildenhues <ralf.wildenhues@gmx.de>

	* fetchnews.c, mgetaline.c, mysigact.c, mysigact.h, nntputil.c: 
	mgetaline now allows passing an additional signal which is to be
	blocked within the handler (else 0).  Use within fetchnews'
	SIGINT/TERM handler to block pending alarms, turn off any alarms and
	ignore SIGALRM afterwards.  

2003-01-13 15:05  Ralf Wildenhues <ralf.wildenhues@gmx.de>

	* mastring.c: Minor optimization: use memcpy for known length
	strings.  

2003-01-13 11:08  Ralf Wildenhues <ralf.wildenhues@gmx.de>

	* fetchnews.c: Race between sigaction and sigsetjmp fixed.  

2003-01-10 02:23  Matthias Andree <matthias.andree@gmx.de>

	* nntpd.c: Log corrupt articles regardless of debugmode and at
	LOG_WARNING rather than LOG_DEBUG level.  

2003-01-10 01:01  Matthias Andree <matthias.andree@gmx.de>

	* nntpd.c: If the Message-ID of an article cannot be retrieved,
	consider it broken and remove it. (The original error message
	printed in this case lacked the CRLF. Found and reported by Andrey
	Ulanov <drey@rt.mipt.ru>.  

2003-01-10 01:00  Matthias Andree <matthias.andree@gmx.de>

	* configure.ac: Bump version.  

2003-01-10 00:59  Matthias Andree <matthias.andree@gmx.de>

	* Makefile.am, leafnode.h, log_unlink.c: Import log_unlink from
	leafnode-2.  

2003-01-08 23:16  tag ln-1-9-32-rel

2003-01-08 23:16  Matthias Andree <matthias.andree@gmx.de>

	* configutil.c: Fix format string argument from %ld to %d 

2003-01-08 23:10  Matthias Andree <matthias.andree@gmx.de>

	* NEWS: Release 1.9.32.rel.  

2003-01-08 23:09  Matthias Andree <matthias.andree@gmx.de>

	* configutil.c: Don't bail out if maxage is too large, but fix it
	and log a warning.  

2003-01-08 23:00  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, configure.ac: Release 1.9.32.rel.  

2003-01-08 22:54  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS: Release 1.9.32.rel.  

2003-01-08 23:16  Matthias Andree <matthias.andree@gmx.de>

	* configutil.c: Fix format string argument from %ld to %d 

2003-01-08 23:10  Matthias Andree <matthias.andree@gmx.de>

	* NEWS: Release 1.9.32.rel.  

2003-01-08 23:09  Matthias Andree <matthias.andree@gmx.de>

	* configutil.c: Don't bail out if maxage is too large, but fix it
	and log a warning.  

2003-01-08 23:00  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, configure.ac: Release 1.9.32.rel.  

2003-01-08 22:54  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS: Release 1.9.32.rel.  

2003-01-08 23:00  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, configure.ac: Release 1.9.32.rel.  

2003-01-08 22:54  Matthias Andree <matthias.andree@gmx.de>

	* ChangeLog, NEWS: Release 1.9.32.rel.  

2003-01-03 02:36  Matthias Andree <matthias.andree@gmx.de>

	* COPYING, configutil.c, fetchnews.c, mgetaline.c, nntputil.c,
	texpire.c, xoverutil.c: Fix copyright, credit Richard van der Hoff.  

2003-01-02 12:38  tag ln-1-9-32-devel1

2003-01-02  Matthias Andree <matthias.andree@gmx.de>

	--- 1.9.32.devel1 ---
	* texpire.c, xoverutil.c: Do not try to remove a directory that is
	the cwd, Solaris returns EINVAL. Also check for errors. Reported by
	Radoslaw Gancarz <radekg@elektrownia-lagisza.com.pl> 
	* fetchnews.c: Log child PID.  
	* leafnode.h: Include stdarg.h earlier than stdio.h for Solaris.  
	* configutil.c: Check argument of maxage against overflow.  
	* nntputil.c: Kill _XOPEN_SOURCE feature test macro, it breaks
	Solaris.  #Include system.h early to pull the time definitions in.
	Should help Solaris compile.  
	* mgetaline.c: Kill _XOPEN_SOURCE feature test macro, it breaks
	Solaris.  

2002-12-29  Matthias Andree <matthias.andree@gmx.de>

	* configure.ac: Bump version.  
	* Makefile.am: Fix packaging error: leafnode.cron.daily must be
	regenerated during the build, not at packaging time.