File: ChangeLog.1

package info (click to toggle)
coldsync 3.0%2Bpre3-3
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 3,188 kB
  • ctags: 2,033
  • sloc: ansic: 20,386; perl: 2,302; cpp: 1,640; yacc: 1,102; lex: 802; makefile: 533; sh: 177
file content (2598 lines) | stat: -rw-r--r-- 90,932 bytes parent folder | download | duplicates (3)
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
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2001-01-14  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.6.6 released.

	* doc/coldsync.8: Clarified installation process a bit.

	* src/coldsync.c (bug fix? enhancement?): Previously, ColdSync
	installed databases before or after the main sync, depending on
	whether the -z option was given, but ran the Install conduits
	before the main sync no matter what.
	Now runs the Install conduits just before installing files, either
	before or after the main sync.

	* doc/coldsync.8: Clarified -mr option a bit.

	* doc/coldsync.8: Mention -z command-line option.

2001-01-11  Andrew Arensburger  <arensb@baa.ooblick.com>

	* AUTHORS: Added two more contributors.

	* src/config.c, src/coldsync.c: Added -z option, to install new
	databases after the main sync.
	Zachary P. Landau <kapheine@hypa.net>

	* src/coldsync.c (bug fix): dumped core when .coldsyncrc didn't
	contain any pda blocks. Fix contributed by
	Ted Faber <faber@lunabase.org>

	- Version 1.6.5 released.

	* i18n/fr.po: Latest translations.

	* i18n/de.po: Checked in on general principle.

	* src/restore.c, src/parser.y, src/palm.c, src/log.c, src/lexer.l,
	src/install.c, src/config.c, src/conduit.c, src/coldsync.c,
	src/backup.c, src/archive.c, src/GenericConduit.cc, libpdb/pdb.c,
	libpconn/slp.c, libpconn/padp.c, libpconn/dlp_rpc.c,
	libpconn/dlp_cmd.c, libpconn/dlp.c, libpconn/cmp.c,
	libpconn/PConnection_usb.c, libpconn/PConnection_serial.c,
	libpconn/PConnection.c:
	Anal retentive error message cleanup.

2001-01-10  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.6.4 released

	* src/restore.c, src/parser.y, src/palm.c, src/config.c,
	src/conduit.c, src/coldsync.c:
	Updated error messages to look better with Error() and Warn().

2001-01-09  Andrew Arensburger  <arensb@baa.ooblick.com>

	* include/pconn/util.h, include/pconn/slp.h, include/pconn/padp.h,
	include/pconn/dlp_cmd.h, include/pconn/dlp.h, include/pconn/cmp.h,
	include/pconn/PConnection.h, include/pdb.h, src/GenericConduit.hh,
	src/parser.h, doc/conduits.texi, doc/coldsync.8:
	Updated copyright statement.

	* include/pconn/pconn.h: Added header comment, copyright
	statement.

	* include/pconn/palm_types.h, configure.in: Added copyright
	statement.

	* src/restore.c, src/pref.c, src/parser.y, src/palm.c, src/log.c,
	src/lexer.l, src/install.c, src/conduit.c, src/backup.c,
	src/archive.c, src/GenericConduit.cc:
	Changed fprintf(stderr, ...) to Warn() or Error(), as appropriate.

	* src/spc.c: Updated copyright statement.

	* src/coldsync.c: Added abortive logfile. Not used, though.
	Changed fprintf(stderr, ...) to Warn() or Error(), as appropriate.

	* src/misc.c: Added Warn(), Error().

	* src/coldsync.h: Added abortive global_opts.log_fname. Changed
	print_version() prototype. Added declarations for Warn(), Error().

	* src/config.c: Added abortive "-l <logfile>" option. Not used,
	though. print_version() now takes a file handle argument. Replaced
	fprintf(stderr, ...) with Error() or Warn(), as appropriate.

2001-01-08  Andrew Arensburger  <arensb@baa.ooblick.com>

	* configure.in: Added test for vfprintf().

2001-01-05  Andrew Arensburger  <arensb@baa.ooblick.com>

	* libpdb/pdb.c: Cosmetic modifications.

2000-12-31  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/GenericConduit.cc: Added a comment. Made sure previous fix
	was okay.

2000-12-30  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/GenericConduit.cc (bug fix): Fixed the logic for new records
	from the Palm, to handle the pathological (but not unheard-of)
	case of an archived or expunged, but not deleted, record. Also,
	now does _something_ with new, deleted, non-archived, non-expunged
	records, though it's probably not something very smart.

2000-12-24  Andrew Arensburger  <arensb@baa.ooblick.com>

	* (almost everything): Added "typedef struct PConnection
	PConnection". Removed the "struct" where possible.

	* src/coldsync.c: forward_netsync() terminates when it fails to
	read from or write to either PConnection.

	- Version 1.6.3 released.

	* src/config.c: Added 'hostaddrs', 'num_hostaddrs', 'hostname'.
	Renamed get_hostid() to get_hostinfo(). Use gethostbyname2()
	instead of gethostbyname(). Added sockaddr_len(), get_hostaddrs(),
	free_hotaddrs(). Updated new_pda_block(), free_pda_block().

	* src/coldsync.c: Added mkforw_addr(), forward_netsync(). Use
	get_hostinfo() instead of get_hostid(). main() now has "done:"
	label, to simplify termination. Added forwarding support in
	run_mode_Standalone(). Added "to do" comments in run_mode_Init().
	Connect() now uses the new PConn_bind(). Removed unused
	find_max_speed(), since it's in PConnection_serial.c.

	* src/parser.y: Added grammar for "forward:" lines in pda block.
	Added opt_string.

	* src/coldsync.h: Added forwarding-related fields to pda_block.
	Added declaration of 'hostaddrs', 'num_hostaddrs',
	get_hostaddrs(), free_hostaddrs(). Renamed get_hostid() to
	get_hostinfo(). Added conditional declaration of snprintf(), for
	systems that don't have it.

	* libpconn/PConnection_usb.c: Added trivial udp_bind(), dummy
	udp_connect().

	* libpconn/PConnection_serial.c: Added trivial serial_bind(),
	dummy serial_connect().

	* libpconn/PConnection_net.c: Uncommented the remaining ritual
	statements, since they're now used. Added net_bind(),
	net_connect(). pconn_net_open() initializes io_bind, io_connect.
	Moved bind() out of pconn_net_open() and into net_bind(). Cleaned
	up some trace statements.
	(bug fix): net_tcp_listen() read from and wrote to NULL instead of a
	PConnection.

	* libpconn/PConnection.c: new_PConnection() now initializes
	io_bind and io_connect. PConn_bind just calls the io_bind method.

	* libpconn/slp.c: slp_bind() now takes a const address.

	* include/pconn/slp.h: Changed slp_bind() declaration to take a
	const address.

	* include/pconn/PConnection.h: Added io_bind, io_connect methods
	to struct PConnection. This follows the socket API reasonably
	closely. Changed PConn_bind() declaration.

	* i18n/fr.po, i18n/de.po: Checking in latest version of strings,
	on general principle.

	* configure.in: Bumped up version number. Added HAVE_IPV6 (really
	check for AF_INET6).

	* config.h.in: Added HAVE_IPV6.

2000-12-23  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/palm.h, src/palm.c: Added palm_netsync_hostaddr(),
	palm_netsync_netmask().

	* src/Makefile: Added "net_compat.c", "net_compat.h",
	"ap_snprintf.c".

	* src/GenericConduit.cc: Added a "to do" bug report.

	* include/pconn/dlp_cmd.h: Minor cosmetic cleaning.

	* i18n/Makefile: Added net_compat.c to list of files to check.
	Removed FILES from distribution.

	* configure.in: Cleaned up some comments. Added test for "long
	long". Added tests for (struct sockaddr).sa_len, "struct
	sockaddr6", inet_aton(), inet_ntoa(), inet_ntop(), net_pton(),
	snprintf().

	* config.h.in: Added checks for "long long", (struct
	sockaddr).sa_len, "struct sockaddr6", snprintf(), inet_aton(),
	inet_ntoa(), inet_ntop(), inet_pton(), gethostbyname2().

	* README, AUTHORS: Added Apache Group, for snprintf().

	* src/net_compat.h, src/net_compat.c (added): inet_ntop() and
	inet_pton() for systems that don't have them.

	* src/ap_snprintf.c (added): snprintf() from the Apache source.

2000-12-18  Andrew Arensburger  <arensb@baa.ooblick.com>

	* i18n/fr.po, i18n/de.po: Checked in latest version of strings, on
	general principle.

	* i18n/Makefile: Got rid of dependency on file "FILES". Moved list
	of files to Makefile, so that message catalogs are rebuilt only if
	the source files have changed.

	* i18n/FILES (deleted): the list of files has been moved to
	Makefile, to avoid rebuilding catalogs unnecessarily.

	* AUTHORS: Added list of "bundled" software included in the
	distribution.

	* doc/coldsync.8: Mention "-t net" option.

	* src/config.c: Added "-t net" command-line option.

	* libpconn/dlp_cmd.c (feature): DlpAddSyncLogEntry(): if the
	message exceeds DLPC_MAXLOGLEN, keep only the end of it.

	* include/pconn/dlp_cmd.h: Added DLPC_MAXLOGLEN.

2000-12-17  Andrew Arensburger  <arensb@baa.ooblick.com>

	* doc/coldsync.8: Rewrote section on listen blocks. Added mention
	of "listen net". Mention ${prefix}/etc/coldsync.conf in passing.
	Added reference to Linux Visor HOWTO.

	* src/palm.c, src/misc.c, libpdb/pdb.c, libpconn/slp.c,
	libpconn/PConnection_usb.c, libpconn/PConnection_net.c: Added some
	casts for portability.

	* libpconn/PConnection.c: If USB isn't enabled but user tries to
	listen on a USB port, print an error message to that effect,
	rather than complaining about "unknown listen type"

	* i18n/Makefile: Use INSTALL_I18N to determine whether message
	catalogs should be installed or not.

	* configure.in: Redid --with(out)-usb : it now checks to see
	whether it's possible to build with USB support, so 'configure'
	should do the Right Thing by default.

	* README: Rewrote section on internationalization. Updated
	compatibility notes.

	* Make.rules.in: Added INSTALL_I18N, to determine whether message
	catalogs should be installed or not.

	* AUTHORS: Added UCBerkeley, for cfmakeraw().

	* configure.in: Install i18n stuff if possible. To this end, added
	INSTALL_I18N variable for Makefiles. Make sure 'makeinfo' is the
	GNU program of that name. Changed AC_CHECK_PROG to AC_CHECK_PROGS
	so that error message is more intuitive when the program can't be
	found ("checking for foo... true" is misleading). Fixed typo.

	* libpconn/PConnection_net.c: Look up ports in /etc/services;
	default to NETSYNC_*_PORT if not found. Changed listen() backlog
	to 1. Hopefully this doesn't suck. Cleaned up some trace
	statements.

	* libpconn/PConnection_usb.c: Print descriptive message if can't
	open the USB device.

	* libpconn/PConnection_serial.c: Print descriptive message if
	can't open the serial device.

2000-12-16  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/lexer.l (portability): Cast malloc()'s return value to the
	proper type.

	* src/config.c: Removed unreached statement, to make some
	compilers shut up.

	* src/coldsync.c: Fixed lint comment.

	* libpconn/PConnection_net.c (portability): Cast args to
	recvfrom() and sendto() to (char *) to make compiler shut up under
	Solaris.

	* configure.in (portability): Added check for GNU libintl; added
	EXTRA_MSGFMT_ARGS; added check for socklen_t.

	* config.h.in: Added check for socklen_t, since Solaris doesn't
	define it.

	* aclocal.m4: Added CS_CHECK_GNU, CS_CHECK_GNU_PROGS,
	CS_CHECK_TYPE.

	* Make.rules.in (Portability): Added EXTRA_MSGFMT_ARGS, to allow
	or disallow GNU-specific arguments to 'msgfmt', as appropriate.

	* src/coldsync.c: Initialize a variable to make gcc happy.

	* src/palm.c, src/misc.c, libpdb/pdb.c, libpconn/slp.c
	(portability): Use bzero() rather than memset().

	* configure.in: Added check for bzero() and memset().

	* config.h.in: Check for the existence of bzero() and memset().
	Define bzero() in terms of memset(), if necessary.

	* src/parser.y, src/lexer.l: Added "forward" keyword, for NetSync
	forwarding.

	* src/coldsync.c: Added "done:" label in main(), for cleaning up.
	On abnormal termination, jump to that label. Avoids certain memory
	leaks.

	* libpconn/slp.c, libpconn/dlp.c: Sanity: when free()ing pointers,
	set them to NULL afterwards, to avoid double free()ing.

	* libpconn/PConnection_serial.c: Check the file descriptor before
	tcdrain()ing it.

	* libpconn/PConnection.c: new_PConnection() no longer calls
	PConnClose on abnormal termination. This avoids problems with
	double free()ing, since the pconn_*_open() functions also clean up
	after themselves.

	* src/config.c (bug fix): Plugged memory leak.

2000-12-15  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.6.2 released.

	* libpconn/PConnection_serial.c: Got rid of io_setspeed. Renamed
	serial_setspeed() to setspeed(), since it's only used for serial
	connections.

	* libpconn/PConnection_net.c, libpconn/PConnection_usb.c,
	libpconn/PConnection.c, include/pconn/PConnection.h: Got rid of
	io_setspeed.

	* src/lexer.l: Plugged memory leak.

	* src/lexer.l: Ugly hack to make compilation work with memory leak
	detection.

	* src/misc.c, find-leaks, config.h.in: Added leak-detection
	support for calloc(), strdup().

2000-12-13  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.6.1 released.

	* libpconn/padp.c, libpconn/netsync.c, libpconn/dlp.c,
	libpconn/PConnection_usb.c, libpconn/PConnection_serial.c,
	libpconn/PConnection_net.c: Added error-checking.

	* include/pconn/PConnection.h: Removed unused ver_maj, ver_min
	fields.

	* libpconn/PConnection.c: new_PConnection() initializes the common
	part of 'struct PConnection'.

	* src/palm.c: Added some trace statements.

	* src/coldsync.c: Removed remnants of speeds[] and other
	development cruft.

	* src/Makefile: Added experimental 'manifest' target.

	* libpconn/netsync.c: Removed extraneous #includes. Removed global
	variables used for development. Added bump_xid().

	* libpconn/cmp.c: Added some trace statements.

	* libpconn/PConnection_usb.c: pconn_usb_open() cleans up after
	itself if initialization fails.

	* libpconn/PConnection_serial.c: Added find_available_speeds(),
	bps_entry(). Added 'usable' initializers to speeds[]. Cleaned up
	serial_accept(). pconn_serial_open() cleans up after itself
	(though this may interfere with destructors). pconn_serial_open()
	now finds the speeds at which the serial port can run.

	* libpconn/PConnection_net.c: Got rid of ugly global variables and
	other development cruft. net_udp_listen(),
	net_acknowledge_wakeup() now take extra sockaddr_in arguments.

	* include/pconn/padp.h, libpconn/padp.c: padp_write()'s 'len'
	argument is now const. Yay!

	* include/pconn/Makefile: Added "netsync.h" to distribution.

	* i18n/FILES: Added newly-added files, as well as a few others
	that fell through the cracks.

2000-12-11  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.6.0 released.

	* libpconn/PConnection_usb.c (bug fix): If pconn_usb_open()
	aborted, its private data got freed twice.

	* libpconn/PConnection_serial.c (bug fix): If user gave a speed of
	0, serial_accept() complained that it couldn't set the requested
	speed.

	* src/config.c: Added "net" debugging facility.

	* src/coldsync.c: Added initialization for net_trace.

	* libpconn/netsync.c: net_trace initialized to a sane value of 0.

	* libpconn/cmp.c: Include i18n header. Added cmp_accept(), to
	negotiate CMP connection.

	* libpconn/PConnection_usb.c: Trimmed usb_accept() down to just
	the USB-specific parts. usb_close() is static again.

	* libpconn/PConnection_serial.c: Added 'usable' field to the
	speeds[] struct. Moved CMP negotiations from serial_accept() into
	cmp_accept().
	(bug fix): a stray assignment prevented default speed from working.

	* libpconn/PConnection_net.c: net_close() is static again. Added
	some casts, to make the compiler happy.

	* libpconn/PConnection.c: Removed declarations for
	<protocol>_close() (they're private, anyway). new_PConnection()
	uses PConnClose() to clean up afterwards. PConnClose() is more
	paranoid: doesn't assume that the methods were set.

	* include/pconn/cmp.h: Added declaration for cmp_accept().

	* include/pconn/PConnection.h: Added declaration for net_trace.
	Removed declaration for PConnSetSpeed (OBE).

	* doc/coldsync.8: Added mention of "net" debugging facility.

2000-12-10  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/coldsync.c: Commented out the speed table, since it's now in
	PConnection_serial.c . Eviscerated Connect(), since most of what
	it did was serial/USB-specific; replaced this with a call to
	(*pconn->io_accept)().
	Commented out find_max_speed(), since it was never used, and was
	causing compilation problems. Added, then commented out,
	net_listen(), an experimental NetSync function.

	* libpconn/padp.c: Initialize PConnection->dlp.{read,write} to
	point to padp_{read,write}().

	* libpconn/netsync.c (added): Code for dealing with NetSync
	communications.

	* libpconn/dlp_rpc.c, libpconn/dlp.c: Took out references to PADP.
	Now uses PConnection->dlp.read and PConnection->dlp.write to send
	the formatted DLP packet to the Palm.

	* libpconn/PConnection_usb.c: Added usb_accept(), with much of the
	code from Connect(). Added <protocol>_tini() calls to usb_close().
	Added <protocol>_init() calls to pconn_usb_open().

	* libpconn/PConnection_serial.c: Moved the table of speeds from
	"src/coldsync.c" to here, since it logically belongs here. Added
	serial_accept(), which has taken over most of what Connect() used
	to do. Added <protocol>_tini() calls to serial_close(). Added
	<protocol>_init() calls to pconn_serial_open().

	* libpconn/PConnection_net.c (added): Support for NetSync.

	* libpconn/PConnection.c: Moved the <protocol>_init() calls out of
	new_PConnection() and into pconn_<protocol>_open(), and moved the
	<protocol>_tini() calls into <protocol>_close(), since the
	protocol stack varies by connection type. Took out the generic
	cleanup code after the switch, for the same reason. Added support
	for LISTEN_NET.

	* libpconn/Makefile: Added netsync.c, PConnection_net.c to
	sources.

	* include/pconn/pconn.h: Added <pconn/netsync.h>.

	* include/pconn/netsync.h (added): Useful definitions for NetSync
	protocol.

	* include/pconn/PConnection.h: Added io_accept method to
	PConnection, since different connection types get to where you can
	send DLP requests differently. PConnection.dlp now has 'read' and
	'write' methods that indicate how to send DLP requests, since
	NetSync doesn't use PADP/SLP. Added 'net' section to Pconnection,
	for NetSync.

	* configure.in: Added some "to do" comments.

2000-12-09  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.5.5 released.

	* src/misc.c: Added wrappers for malloc(), realloc(), and free(),
	for primitive memory leak detection.

	* find-leaks (added): Primitive memory leak detector.

	* configure.in: Added support for primitive memory leak detection.
	Moved the developer-only options to the end. Added a section
	header for the developer-only options, for "configure --help".

	* config.h.in: Added support for primitive memory leak detection.

	* Makefile: Added "find-leaks" to distribution.

	* src/log.c: Initialize synclog to NULL.

	* src/coldsync.c (bug fix): Plugged a memory leak: the sync log
	didn't get freed.

	* src/backup.c (bug fix): Plugged a memory leak: backup() didn't
	free the downloaded PDB.

	* libpdb/pdb.c (bug fix): plugged some memory leaks. Added
	new_Resource().

	* src/restore.c: Added a useful trace statement.

	* src/backup.c (bug fix): If couldn't download database, error
	didn't get logged correctly.

	* src/palm.c (bug fix): Due to an off-by-one error, palm_nextdb()
	didn't return the last database, so it never got synced (or backed
	up, or whatever).

2000-12-08  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/coldsync.c: Use CMP_VER_* constants.

	* include/pconn/dlp.h: Added constants specifying DLP version.

	* include/pconn/cmp.h: Added constants specifying CMP version.

	* doc/coldsync.8: Document the fact that "speed: 0;" makes
	ColdSync use whatever the Palm suggests.

	* src/coldsync.c (feature): If the .coldsyncrc doesn't specify a
	speed, go with what the Palm suggests.

	* src/lexer.l: Confirmed hack.

	* src/parser.y: Added new listen type "net".

	* src/lexer.l: Added keywords "net" and "network".

	* src/config.c: Functions used only in this file are now static.
	Added get_hostid().

	* src/coldsync.h: Rearranged function declarations, to make it
	easier to find them in source files.

	* src/coldsync.c (bug fix): get this host's hostid, so as to know
	whether to do a slow or fast sync. The functions that are only
	used inside coldsync.c are now static.

	* include/pconn/PConnection.h: Renamed LISTEN_TCP to LISTEN_NET,
	since NetSync also uses UDP.

2000-12-01  Andrew Arensburger  <arensb@baa.ooblick.com>

	* Make.rules.in: Added a portability comment.

2000-11-27  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.5.4 released.

	* conduits/std-categories (bug fix): close the database when it's
	done.

	* src/backup.c (bug fix): backup() didn't DlpCloseDB() the
	database when it was done.

	* src/coldsync.c (bug fix): Check pref_cache before freeing it,
	lest segmentation violations occur. Got rid of load_palm_config().
	run_mode_Standalone() now performs those functions differently.
	run_mode_Standalone() checks username and userid on Palm to make
	sure they're sane. The run_mode_*() functions no longer worry
	about freeing pref_cache: it's a global variable, so let main()
	worry about it. run_mode_Backup() now prints an error message when
	it fails. D'oh! The part of run_mode_Init() that prints the pda{}
	block now moved into print_pda_block().

	* src/coldsync.h: Removed load_palm_config() declaration. Fixed
	find_pda_block() declaration. Added print_pda_block() declaration.

	* src/config.c: Added print_pda_block(). Added 'check_user' option
	to find_pda_block(). Got rid of load_palm_config(): it was too
	confusing, and its reason for existence wasn't clear.

	* libpconn/padp.c: Fixed an ugly hack (with a goto, but hey).

	* i18n/fr.po: Updated some strings.

	* doc/coldsync.8: Rewrote section on Bargle Bug in light of Init
	mode. Mention that you shouldn't run ColdSync as root. More detail
	on Visors' serial numbers. "Bad CRC" messages under Linux are due
	to a Linux bug, and are therefore a limitation (not a bug) as far
	as ColdSync goes.

	* src/backup.c: Added error-checking.

	* libpconn/padp.c: Increased robustness: in several cases, where
	the old version would simply give up, the new version ignores the
	offending packet, or retries. In the case of unexpected data
	packets, sends a dummy ACK to get the Palm to shut up.

2000-11-25  Andrew Arensburger  <arensb@baa.ooblick.com>

	* libpconn/padp.c (bug fix): select() modifies its 'timeout'
	argument on some architectures, hence it must be set before each
	call to select(), and cannot be factored out of a while(){
	select() } loop. Put it back in. Fix submitted by Christian Kirsch
	<ck@held.mind.de>.

2000-11-24  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/install.c: mkfname() and friends no longer return a volatile
	value. Fixed some misleading error messages.

	* src/config.c: Split off the part of load_palm_config() that
	creates the backup directories (~/.palm etc.) into its own
	function: make_sync_dirs().

	* src/coldsync.c: Initialize pref_cache to NULL.

	* src/coldsync.h: Added declaration for make_sync_dirs().

	* src/misc.c, src/conduit.c, src/coldsync.h, src/backup.c,
	src/archive.c, src/GenericConduit.cc: mkfname() and friends no
	longer return a volatile value.

2000-11-23  Andrew Arensburger  <arensb@baa.ooblick.com>

	* conduits/std-categories: Rewritten from scratch. Might actually
	work this time.

	* include/pconn/dlp_cmd.h: Updated comment: official word from
	Palm is that the viewer ID is not used.

	* src/coldsync.c (bug fix): Fixed off-by-one error causing
	username to not be NUL-terminated. Added sync log for (successful)
	initialization mode.

2000-11-22  Andrew Arensburger  <arensb@baa.ooblick.com>

	* conduits/std-categories: Rewritten from scratch. About to be
	rewritten again.

2000-11-20  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.5.3 released.

	* src/parser.y: Added support for pda_block.userid_given.

	* src/palm.h: Added declarations for the new functions.

	* src/palm.c (bug fix): fetch_userinfo() didn't update
	have_userinfo_. Added palm_username(), palm_userid(),
	palm_viewerid().

	* src/config.c: load_config() now always calls get_userinfo(), not
	just when no config file was specified. This is because
	information about the current user is rather useful in other
	cases. Removed remains of Install mode. Added Init mode. Updated
	usage message. Added find_pda_block(). Update new_pda_block() to
	initialize new field userid_given.

	* src/coldsync.h: Removed remains of Install mode. Added Init
	mode. Got rid of some archaic global variables. Added declarations
	for find_pda_block(), load_palm_config().

	* src/coldsync.c: Removed remains of Install mode. (feature) Added
	Init mode.

	* libpconn/PConnection_serial.c: That annoying sleep() is now only
	under FreeBSD.

	* doc/coldsync.8: Added description of Init mode.

	* include/pconn/dlp_cmd.h: Made a string const.

	* i18n/fr.po: Translated some strings.

	* src/archive.c, src/backup.c, src/conduit.c, src/install.c:
	Update for new volatileness.

	* src/coldsync.h: Added declaration for mkfname(). All other
	filename-building functions now return a volatile value.

	* src/misc.c: Added mkfname(). All other filename-making functions
	now use it, directly or indirectly, and now return a volatile
	value.

	* src/GenericConduit.cc: Replaced stat() with exists(). Cast away
	the new volatileness of various functions' return values.

2000-11-19  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/install.c: Removed an unused variable.

	* src/conduit.c: Re-added fpurge(), on general principle.

	* config.h.in: Added test for fpurge(), and redefine it if it
	doesn't exist.

	* configure.in: Added test for fpurge().

2000-11-18  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/restore.c: Removed some old code to test whether a file to
	be restored is a file: it's broken and unnecessary.

	* src/install.c: Use is_database_name(), instead of doing it
	manually.

	* src/config.c: Removed get_config().

	* src/coldsync.c: Removed the pre-mode version of main().

	* src/misc.c,src/coldsync.h, src/backup.c: Renamed mkfname() to
	mkpdbname().

	* src/palm.c (bug fix) Stupid typo.

	* src/coldsync.h: Moved the LISTEN_* constants to
	include/pconn/PConnection.h .

	* libpconn/PConnection.c: Removed inclusion of ColdSync header
	file. Moved a trace statement from MISC_TRACE to IO_TRACE.

	* include/pconn/PConnection.h: Moved the LISTEN_* constants here,
	to help remove libpconn's dependency on coldsync.

	- Version 1.5.2 released.

	* src/coldsync.c: Removed global variable 'palm'; all run_mode_*()
	functions now have their own 'struct Palm *'. They now use the
	'struct Palm' accessor functions, rather than accessing it
	directly. Consequently, removed a bunch of unnecessary code. Moved
	various functions elsewhere: GetMemInfo() (now fetch_meminfo()),
	ListDBs(), find_dbentry(), append_dbentry(). Got rid of
	GetPalmInfo() (now split up into three functions in "palm.c"),
	run_mode_Install() (no one seems to want it).

	* src/palm.c: Fixed up some comments. Removed test to see if Palm
	has more than one memory card: it doesn't work. ListDBs runs
	fetch_meminfo() iff it's necessary. Moved (palm_)find_dbentry(),
	(palm_)append_dbentry() from "coldsync.c". Added
	palm_netsync_hostname().

	* src/palm.h: Moved (palm_)find_dbentry(), (palm_)append_dbentry()
	here. Added palm_netsync_hostname().

	* src/restore.c: Minor changes.

	* src/install.c: Use 'struct Palm' accessors, instead of accessing
	it directly. find_dbentry() renamed to palm_find_dbentry().
	append_dbentry() renamed to palm_append_dbentry(). Fixed
	indentation.

	* src/config.c: Use 'struct Palm' accessors, instead of accessing
	it directly.

	* src/conduit.h, src/conduit.c: run_conduits(), run_conduit(),
	run_*_conduits() now take a const dbinfo 'cos hey, it seems to
	work.

	* src/coldsync.h: Moved 'struct Palm' and various related function
	declarations to "palm.h".

	* src/backup.c: Use 'struct Palm' accessors, instead of accessing
	it directly.

	* src/palm.c (added) Functions for the 'struct Palm' Proxy.

	* src/palm.h (added) Declarations for the 'struct Palm' Proxy.

	* src/Makefile: Added "palm.c" and "palm.h".

2000-11-17  Andrew Arensburger  <arensb@baa.ooblick.com>

	* doc/coldsync.8: "Synopsis" section is shorter and hopefully
	clearer, but not as complete. Updated "Options" section to include
	mode options. "-b" and "-r" are now officially deprecated.
	"Description" section rewritten. Updated "Overview" section wrt
	Install conduits. Added mention of Install conduits where
	applicable. Added description of conduit arguments in conduit
	blocks. Minor stylistic changes.

2000-11-14  Andrew Arensburger  <arensb@baa.ooblick.com>
	
	- Version 1.5.1 released.

	Incorporated J.D. Smith's patch for install conduits:

	* src/coldsync.c: Added support for Install conduits.
	run_mode_Standalone() now runs Install conduits. Added convenience
	function dbinfo_fill().

	* src/parser.y: Added support for Install conduits.

	* src/misc.c: Added mkinstfname() function. Arensb: added
	is_database_name() function.

	* src/lexer.l: Added "install" keyword, for Install conduits.

	* src/config.c: Fixed a couple of debugging statements to support
	Install conduits.

	* src/conduit.h: Added declaration for run_Install_conduits().

	* src/conduit.c: Added run_Install_conduits(), and support for it
	throughout.

	* src/coldsync.h: Added Install mode. Added prototypes for
	NextInstallFile(), mkinstfname(), is_database_name(),
	dbinfo_fill().

	* perl/ColdSync/ColdSync.pm: Added support for Install conduits.

	* libpdb/pdb.c: Made pdb_LoadHeader() externally visible.

	* include/pdb.h: Added declaration for pdb_LoadHeader().

	END

	* src/coldsync.c: Added, then commented out, run_mode_Install().
	Not sure if it's useful. Fixed run_mode_*() to return rather than
	exit().

	* src/restore.c: restore_dir() now uses is_database_name().

	* src/misc.c: Added is_database_name() function.

	* src/install.c: Added (and commented out) first draft of
	install_file(). Changed InstallNewFiles() to use
	is_database_name().

2000-11-09  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/install.c, libpconn/PConnection.c, doc/coldsync.8: Added a
	"to do" comment.

	* src/Makefile, perl/Makefile, libpdb/Makefile, libpconn/Makefile,
	include/pconn/Makefile, include/Makefile, i18n/Makefile,
	doc/Makefile, conduits/Makefile: Added magic Emacs lines.

2000-11-04  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/coldsync.c: Massive reorganization: tore out main() and
	rewrote it from scratch. Each mode has its own run_mode_*()
	function, for modularity. Currently supported modes are
	Standalone, Backup, and Restore. Renamed 'config' to
	'sync_config'. Moved a common trace statement to ListDBs(), to
	avoid excessive duplication. Replaced stat() calls with exists()
	and friends. For now, took out the bits that update the user name
	and ID. Init mode will handle this.

	* src/config.c: Big reorganization: 'config' renamed to
	'sync_config'; new_config() renamed to new_sync_config();
	free_config() renamed to free_sync_config(). New global variable:
	'conf_fname': holds pathname to user's config file. get_config()
	eliminated, and most of its functionality moved to load_config().
	stat() calls replaced by exists() and friends. Several global
	variables moved to 'global_opts'. Added parse_args(), to parse
	command-line arguments. Added load_config(), to read a config file
	(.coldsyncrc).

	* src/restore.c: Restore() eliminated. Its functionality is now
	split up between restore_file() and restore_dir().

	* src/conduit.c: Global variable 'config' renamed to
	'sync_config'.

	* src/coldsync.h: Site-wide config file is now
	"/etc/coldsync.conf" instead of "/etc/coldsync.rc" 'struct config'
	renamed to 'struct sync_config', and its purpose clarified
	somewhat. 'sync_config' allocated at run-time, so that it can be
	freed properly. More anal prototypes: "type func()" -> "type
	func(void)". 'parse_config()' renamed to 'parse_config_file()'.
	run_mode_*() now take argc, argv arguments. Got rid of Restore()
	in favor of new functions restore_file() and restore_dir().
	get_config() eliminated in favor of load_config().

	* src/backup.c: full_backup() now takes a directory name as an
	argument, instead of looking in global options.

	* src/parser.y: Renamed parse_config() to parse_config_file().

	* src/GenericConduit.hh: More anal prototypes: type func() -> type
	func(void)

2000-10-22  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.5.0 released.

	* src/misc.c: Added exists(), lexists(), is_file(),
	is_directory().

	* src/coldsync.h: Added some fields to cmd_opts (global_opts):
	conf_fname, conf_fname_given, devname, devtype. Added declarations
	for new functions.

2000-10-21  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/conduit.c: Removed references to sys_maxfds in comments,
	since it doesn't exist anymore.

	* src/config.c: Removed sys_maxfds, get_maxfds(), since they
	aren't used.

	* src/coldsync.h: Removed sys_maxfds, since it isn't used.

	* config.h.in: Removed HAVE_SYSCONF, since it isn't used.

	* configure.in: Removed test for sysconf(), since it isn't used.

	* src/config.c: Added "-m<mode>" option. Use it to determine what
	the program as a whole will do. Warn if user uses "-b <dir>" or
	"-r <dir>". Moved set_debug_level(), usage(), print_version()
	here. Added set_mode().

	* src/coldsync.h: Redefined run mode; moved it out of 'config' and
	into 'global_opts'. Added declaration of set_mode().

2000-09-30  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/coldsync.c: Minor string cleaning. Added trace statement for
	run mode. Moved set_debug_level(), usage(), print_version() to
	config.c, where they make more sense.

2000-09-28  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.4.6 released

2000-09-27  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/coldsync.c: Updated by Philipp Hahn's patch.

	* i18n/fr.po: Updated by Philipp Hahn's patch.

	* i18n/de.po: Incorporated translations by Philipp Matthias Hahn.

	* i18n/de.po: Latest version of strings, before applying patch.

	* README: Added a blurb about Windows NT.

	* conduits/todo-text: Cleaned up documentation a bit.

	* AUTHORS: Added author. Removed CVS conflict marker.

	* perl/ColdSync/ColdSync.pm (bug fix): Declared some variables so
	that Perl wouldn't complain about unknown variables.
	(bug fix): Test to see whether there are any references before blindly
	assigning them. Rearranged some of the prefrence-related code.

	* conduits/send-mail: Applied Philipp Hahn's patch: Added an
	argument to allow the user to use a category name other than
	"Outbox", for non-English Palms.
	(bug fix) Fixed a bogus error message.

2000-09-23  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.4.5 released (stable).

	* i18n/fr.po: Added \n to some strings.

	* src/config.c (bug fix): If the user specified an invalid option
	on the command line, ColdSync would print the wrong option in its
	error message.

2000-09-22  Andrew Arensburger  <arensb@baa.ooblick.com>

	* doc/sample.coldsync.rc: Repeat that "listen usb" only makes
	sense under FreeBSD right now. Mention that Visors don't have
	useful serial numbers. Added mention of sync conduits,
	"[generic]", and preferences.

	* conduits/Makefile: Moved 'std-categories' to where it won't be
	installed. Added 'memo-text' to distribution.

	* conduits/std-categories: Lots of playing around. Mainly,
	commented out previous generation of experiments.

2000-09-21  Andrew Arensburger  <arensb@baa.ooblick.com>

	* i18n/fr.po: Incorporated Nicolas Bouthors's translations.

	* libpconn/slp.c: Added some trace statements.

	* doc/coldsync.8: Added bug.

	* conduits/todo-text (bug fix): Updated to use new category
	structure.

	* perl/ColdSync/ColdSync.pm: Initialize a variable to make Perl
	shut up.

	* src/GenericConduit.cc (bug fix): "-F" option now forces a fast
	sync, even if ColdSync would otherwise attempt a slow sync.

2000-09-20  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/conduit.c (bug fix): Dumped core if a conduit block didn't
	contain a "path:" element.

2000-09-19  Andrew Arensburger  <arensb@baa.ooblick.com>

	* perl/ColdSync/ColdSync.pm (feature): "-config" caught up with
	ColdSync: instead of printing a separate conduit block for each
	flavor/type combination, combines the supported flavors into one
	string (e.g., "conduit fetch,dump"). Prints multiple "type:" lines
	if the conduit supports multiple types.

2000-09-17  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/config.c: Fixed misspelling of __GNUC__.

	* Renamed "src/handledb.c" to "src/misc.c", since it no longer
	contains handledb().

	* src/Makefile: Changed "handledb.c" to "misc.c", its new name.

	* i18n/FILES: Renamed "src/handledb.c" to "src/misc.c". Get
	strings from "src/lex.yy.c", since 'xgettext' can't parse lex
	files.

	* i18n/fr.po: Latest version of strings. Added/fixed some
	translations.

	* i18n/de.po: Latest version of strings. Attempted some
	translations.

	* src/conduit.c: Added check for file descriptor leak in
	run_conduit(). Made certain arguments to run_*Conduit() 'const'.
	run_conduit() returns valid status on error, not -1. Added other
	error-checking. If run_conduit() aborts, it kills the conduit
	before cleaning up.
	(bug fix): Ensure that built-in conduits aren't run with flavors that
	they don't support.
	(bug fix); spawn_conduit() doesn't just exit() if something goes wrong.
	Added cleanup code to spawn_conduit() for when things go wrong.
	Added some trace statements.

	* src/config.c: Added declarations of everything related to
	getopt(), in hopes that that'll make things run properly under
	Windows NT.

	* src/coldsync.c: Added some error-checking.

	* src/GenericConduit.cc: Added some error-checking.

	* perl/ColdSync/ColdSync/SPC.pm: Changed $VERSION so that it can
	be collated both numerically and as a string.

	* perl/ColdSync/ColdSync.pm: Changed $VERSION so that it can be
	collated both numerically and as a string. Added 'use vars'.
	(bug fix): setup of %PREFERENCES used the wrong variable (I
	think). Fixed.

	* include/pconn/padp.h: Removed declaration of padp_unget(), since
	it's never going to exist.

	* doc/coldsync.8: Added documentation for [generic] conduit. Added
	some bugs.

	* AUTHORS: Added contributor.

2000-09-16  Andrew Arensburger  <arensb@baa.ooblick.com>

	* libpdb/pdb.c (bug fix): Don't read the two useless NULs, since
	the spec allows but doesn't mandate them. Formerly, pdb_Load()
	would reject certain well-formed PDBs.

2000-09-09  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/log.c: Added a 'const', on general principle.

	* src/handledb.c: Took out old declaration of
	run_GenericConduit().

	* src/coldsync.h: Added some 'const's, on general principle.

	* src/backup.c: Added a 'const', on general principle.

	* src/GenericConduit.hh: Made the _dbinfo protected member
	'const', on general principle.

	* src/GenericConduit.cc: Added a 'const', on general principle.

2000-09-08  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.4.3 released

	* src/conduit.c: Added support for built-in conduits: Added table
	of built-in conduits. Added [dummy] conduit. Added
	findConduitByName(). run_conduit() looks up the path in table of
	built-in conduits and calls a function if found; otherwise, spawns
	a conduit process, as before. Fixed some typos.

	* src/GenericConduit.cc: run_GenericConduit() now takes a
	conduit_block argument, so that it can look at the user's
	arguments. GenericConduit::run() backs up resource databases if
	there's no backup. Moved here from the now-obsolete HandleDB().

	* src/GenericConduit.hh: run_GenericConduit() now takes a
	conduit_block argument, so that it can look at the user's
	arguments.

	* src/coldsync.c: run_Sync_conduits() has assumed HandleDB()'s
	functions, so only run run_Sync_conduits(), and not HandleDB().
	Added another O_BINARY flag, for Windows.

	* src/coldsync.h: Removed declaration of HandleDB(); it is now
	obsolete.

	* src/config.c: Before parsing the config file, adds a default
	conduit, equivalent to running the built-in generic conduit if
	nothing else is specified.

	* src/handledb.c: Removed HandleDB(), as it is now obsolete.

2000-09-04  Andrew Arensburger  <arensb@baa.ooblick.com>

	* perl/ColdSync/ColdSync/SPC.pm: Added POD.

	* configure.in: Fixed check for socketpair() to look in libsocket
	if it's not in libc
	(for Solaris).

	* README: Updated OS notes for v1.4.2.
	
	* doc/conduits.texi: Added sections on SPC and Sync conduits.

2000-09-03  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.4.2 released

	* src/conduit.c: Make anal compilers shut up.

	* doc/conduits.texi: Added mention of Sync conduits. Added
	description of 'Preference' headers and data.

	* doc/coldsync.8: Added mention of Sync conduits. Added
	description of 'pref:' directives. Added LIMITATIONS section, for
	bugs that aren't going to be fixed.

	- Version 1.4.1 released

	* configure.in: Added checks for <sys/param.h> and <netinet/in.h>.
	Added check for O_BINARY, for open().

	* config.h.in (portability): Added HAVE_O_BINARY for Windows;
	define it for other platforms.
	(portability): Check for both <sys/param.h> and <netinet/in.h>, since
	Linux puts definitions of ntohs() and friends in the latter.

	* libpconn/cfmakeraw.c (portability): Windows doesn't know about
	PENDIN.

	* src/coldsync.c (portability): Don't use mkstemp() under Windows:
	it assumes text files.

	* src/conduit.c: Try to include <sys/param.h> and <netinet/in.h>,
	since different systems define ntohs() and friends in different
	places. Change fdopen() calls to "rb", to open files in binary
	mode under Windows.

	* src/restore.c, src/install.c, src/backup.c, src/archive.c,
	src/GenericConduit.cc, libpconn/PConnection_usb.c,
	libpconn/PConnection_serial.c (portability): Open files with
	O_BINARY, so it'll have a chance of working under Windows.

	* src/spc.c (portability): Include <netinet/in.h>, since that's
	where Linux hides ntohs() and friends.

	- Version 1.4.0 released
	
	* perl/ColdSync/ColdSync/SPC.pm: Added a bit of POD.

	* perl/ColdSync/ColdSync.pm: Fixed a rather bogus construction.

	* src/conduit.c (portability): Replaced call to good but
	unportable snprintf() with sprintf().
	
	* src/coldsync.c: Don't seed the preference cache if we're doing a
	backup or a restore.

	* src/coldsync.c (bug fix): 'pref_cache' was being freed too soon.
	Added some trace statements.

2000-09-02  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/conduit.c: In run_conduit(), pref_list is 'volatile' to make
	gcc shut up. If conduit has no preferences, don't allocate a
	pref_list of length 0.

	* src/pref.c (bug fix): Fixed order of arguments to calloc().
	(bug fix): Oops! Messed up data structure.

	* libpconn/dlp.c: Fixed order of arguments to calloc().

	* src/pref.c: Rewrote FindPrefItem() as a simple for-loop. Note:
	if there are multiple preferences that match 'description', then
	this version returns the first one. The previous version returned
	the last one. Hopefully, this won't make a big difference.

	* src/conduit.c: Fixed call to GetPrefItem().

	* src/pref.c: Moved a #define out of pref.h to where it's actually
	used (temporarily). Undid the previous change: several 'const'
	arguments aren't const after all. FindPrefItem(), GetPrefItem() no
	longer take a pass-by-value struct argument.

	* src/pref.h: Moved a #define out of this .h file (where it has
	multi-file scope) to where it's actually used (temporarily). Undid
	the previous change: several 'const' arguments aren't const after
	all.

	* src/pref.c: Removed redundant declarations. Made arguments and
	return values 'const' where possible.

	* src/pref.h: Made arguments and return values 'const' where
	possible.

	* src/conduit.c: Made variables 'const' where possible.

2000-09-01  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/pref.h, src/pref.c: Added copyright statement. Minor
	cleaning and stylistic changes. Added some "to do" items.

	* src/conduit.c: Minor cleaning and stylistic changes. Added some
	"to do" items.

	* src/coldsync.c: Some stylistic changes and minor cleaning.
	Internationalized an error message.

	* perl/ColdSync/ColdSync.pm: Rewrote the description of
	%PREFERENCES in the POD. Some stylistic changes.
	(bug fix): Fixed an off-by-one error in &ReadHeaders.

	* AUTHORS: Added author.
	
2000-08-31  Andrew Arensburger  <arensb@baa.ooblick.com>

	Incorporated Sumant Oemrawsingh's preferences changes:

	* src/pref.h (new): data structures and declarations related to
	preferences.

	* src/pref.c (new): functions related to preferences.

	* src/conduit.c: run_conduit() now sends a list of preferences to
	the conduit (in two parts: first the "declarations" as normal
	headers, then the data after all the headers have been sent).

	* src/coldsync.c: Added global variable 'pref_cache'. main()
	creates and seeds preference cache, and frees it at the end.

	* perl/ColdSync/ColdSync.pm: New exported variable %PREFERENCES.
	&ReadHeaders now parses preferences passed on stdin.

	* Makefile: Added "pref.c" and "pref.h" to the source and header
	file lists.

	End of Sumant Oemrawsingh's changes.

2000-08-30  Andrew Arensburger  <arensb@baa.ooblick.com>

	* conduits/std-categories (new): Early draft of conduit to sync
	standard category lists.

	* conduits/Makefile: Added 'std-categories' to list of conduits in
	distribution.

2000-08-29  Andrew Arensburger  <arensb@baa.ooblick.com>

	* include/pconn/util.h: Pedantic patch: include <stdio.h> to catch
	'FILE'. Patch supplied by Niklas Lundberg
	<niklas.lundberg@cotraveller.com>.

	* src/coldsync.c (feature?): If a conduit fails, continues anyway
	instead of aborting.

	* perl/ColdSync/ColdSync/SPC.pm: Exports all of the implemented
	&dlp_* functions. &dlp_get_dbinfo gets database index and name.
	(feature) Added &dlp_OpenDB, &dlp_CloseDB, &dlp_ReadAppBlock,
	&dlp_WriteAppBlock. Added AUTHOR and BUGS section to the POD.

	* include/pconn/slp.h: Added some comments, and pointer to Palm's
	documentation.

2000-08-13  Andrew Arensburger  <arensb@baa.ooblick.com>

	* conduits/send-mail: Fixed typo.

	* AUTHORS: Added author.

	* conduits/send-mail (feature): Body of message is wrapped. Patch
	submitted by John Chia <john@ni.yi.org>

2000-08-08  Andrew Arensburger  <arensb@baa.ooblick.com>

	* perl/ColdSync/Makefile.PL: Overrode libscan method, to exclude
	.bak files and such from distributions.

	* perl/ColdSync/MANIFEST: Added ColdSync/SPC.pm to the
	distribution. Added MANIFEST.SKIP, for completeness.

	* perl/ColdSync/ColdSync.pm: Added copyright statement. Added SPC
	initializer and finalizer for Sync conduits.

	* libpconn/dlp.c (bug fix): Size bits got stripped off incorrectly
	when reading long arguments in DLP return value.

2000-08-06  Andrew Arensburger  <arensb@baa.ooblick.com>

	* perl/ColdSync/ColdSync.pm: Added mention of "sync" flavor in
	POD. Removed redundant check for mandatory header.

	* i18n/fr.po: Updated some strings.

	* src/conduit.c: run_conduits(), run_conduit() now take 'pconn'
	argument. Fixed run_*_conduits() accordingly. run_conduit():
	several variables are now 'volatile' to make gcc shut up.
	(bug fix): doesn't hang on zero-length requests.

	* src/spc.c: Added some standard headers. Added functions
	pack_dlp_time(), pack_dbinfo(). spc_send() now takes 'pconn' and
	'dbinfo' arguments. spc_send() now handles SPCOP_DBINFO and
	SPCOP_DLPC requests (albeit without any firewall-like
	error-checking).

	* src/spc.h: Defined new SPCERR_NOMEM error code. spc_send() now
	takes 'pconn' and 'dbinfo' arguments.

	* src/conduit.h: run_Sync_conduits() now takes a 'pconn' argument.

	* src/coldsync.c: New syntax for run_Sync_conduits() call. More
	information in debugging statement.

	* include/pconn/padp.h: padp_write() now takes a const buffer,
	instead of a non-const one.

	* src/handledb.c: Fixed calls to run_GenericConduit(): doesn't
	require `palm' argument anymore.

	* src/GenericConduit.cc, src/GenericConduit.hh: Got rid of unused
	_palm member.

	* FAQ: Added section on Bargle bug.

2000-07-31  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.3.0 released. (Still unstable.)
	
	* src/conduit.c 
	(feature): Added first-draft support for Sync conduits.
	(feature): Added first-draft of support for SPC.
	run_conduit() now takes 'with_spc' argument; fixed all functions
	that call it.
	run_conduit():
	  System headers are now stored in an array that gets turned into
	  a linked list. This allows us to append the user-supplied
	  headers to the system ones, in a clever/semi-ugly hack.
	  Create a socket pair (essentially, a portable two-way pipe) to
	  talk to the child.
	  (potential bug fix): Make sure SIGCHLD is blocked while
	  constructing headers.
	  Send "SPCPipe" header to child, with the SPC pipe's file
	  descriptor as its value.
	  Main loop pretty much redone from scratch. Now includes a state
	  machine for handling SPC requests.
	sigchld_handler() saves and restores 'errno'.

	* src/spc.c (added): SPC (Serialized Procedure Call) functions.

	* src/spc.h (added): SPC declarations and such.

	* src/Makefile: Added spc.c, spc.h to the package.

	* perl/ColdSync/ColdSync.pm: Added `use Palm::PDB;'. Dunno why it
	wasn't already there.
	(feature): Added first draft of support for Sync conduits.

	* doc/Makefile: Removed referenced to "pdb.texi", since it's no
	longer part of the distribution.

	* configure.in: Added check for socketpair(). Fixed a typo.
	Complain if rename() or strncpy() could not be found.

	* FAQ: Clarified the problem with reading the Visor's serial
	number.

	* conduits/send-mail: Exit with 502 status, not 202, if can't run
	sendmail.

2000-07-22  Andrew Arensburger  <arensb@baa.ooblick.com>

	* doc/sample.coldsync.rc: Updated to use colons where necessary.
	Added some missing semicolons.

	* doc/pdb.texi: Deleted, since Palm have finally gotten their act
	together and put up an official description of PDB files at
	http://www.palmos.com/dev/tech/docs/fileformats.zip

2000-07-18  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.2.8 released

	* AUTHORS: Added contributor.
	* conduits/Makefile (bug fix): Make sure ${MAN1DIR} exists before
	installing to it.

	* src/conduit.c (bug fix): Removed calls fpurge(), since it isn't
	portable.

	(Patches contributed by Hollis Blanchard <hollis@amulet.co.jp>)

2000-07-14  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/conduit.c: Added format_header() for convenience, to create
	a properly-formatted header. The process of sending headers to a
	conduit is much more robust. Use poll_fd() instead of polling file
	descriptor manually.

2000-07-13  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/conduit.c (bug fix): Fixed stupid bug in block_sigchld().
	Added poll_fd(), for convenience. run_conduit(): Reorganized the
	way the standard headers are sent. Make sure the headers conform
	to the spec. Instead of just pumping headers at the child, check
	its status. This should make things more robust.

2000-07-12  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/conduit.c: Added block_sigchld(), unblock_sigchld(), to
	encapsulate those actions.

2000-07-06  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.2.7 released

	* src/parser.y: conduit_block now contains a dynamically-allocated
	array of creator/type pairs. Added a warning if a conduit_block
	doesn't contain any such pairs.

	* src/config.c: conduit_block now contains a dynamically-allocated
	array of creator/type pairs.

	* src/conduit.c (feature) run_conduits() now checks array of
	creator/type pairs in conduit block, instead of just one pair.
	Added crea_type_matches() function.

	* src/coldsync.h: Replaced single creator/type pair in
	conduit_type with an array.

	* doc/coldsync.8: Added mention that you can have multiple `type:'
	lines in .coldsyncrc . Minor housecleaning.

2000-07-03  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.2.6 released

	* src/conduit.c: Got rid of cond_sendline() and cond_sendheader(),
	in favor of good old fprintf(). `conduit_pid' is now volatile, for
	robustness. run_conduit() now uses a half-baked list of headers,
	rather than sending each one manually. Also, doesn't check for
	conduit output while sending headers (yet). run_conduit() now
	split up into two sections: one while the conduit is running,
	which blocks on child output, and one that doesn't, for after the
	child exits. run_conduit() discards all unsent I/O to and from the
	child before closing file descriptors. Critical section in
	spawn_conduit() now protected against interrupts that might come
	up at the wrong moment. Clarified error message in
	sigchld_handler().

2000-07-02  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/conduit.c: Use sigsetjmp()/siglongjmp() in SIGCHLD handler
	to return to run_conduit() immediately as soon as conduit exits.
	Explicitly initialize 'fromchild' and 'tochild' to NULL, for
	robustness. Now run_conduit(), rather than run_conduits(), sets
	the SIGCHLD handler. Simplified cond_sendline() somewhat. Added
	sanity check to cond_readline().

2000-07-01  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/conduit.h: Got rid of init_conduits(), tini_conduits().
	Added run_Sync_conduits() declaration.

	* src/coldsync.c: Got rid of init_conduits(), tini_conduits().
	Added experimental run_Sync_conduits() call.

	* README: Added information about Solaris.

	* src/conduit.c: Got rid of unused init_conduits(),
	tini_conduits(). Added run_Sync_conduits(). Minor housecleaning.

2000-06-23  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.2.5 released

	* src/coldsync.c (bug fix): Added reserve_fd(), to reserve file
	descriptors 0-2, which avoids potential problems later on, if
	std{in,out,err} were initially closed.

2000-06-18  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.2.4 released

	* src/GenericConduit.cc (bug fix): a record's category is now
	considered part of the record. Now, if the category changes on the
	Palm, it changes on the desktop as well.
	(bug fix): generic conduit archived the wrong record sometimes: if
	you modified a record on the Palm, then deleted and archived it,
	the desktop's version would wind up in the archive. Fixed. Fixed a
	case where generic conduit didn't use the compare_rec() method to
	compare records.
	Cosmetic changes.

	* FAQ: Added mention of Visor serial number.

	* doc/coldsync.8: Added mention of Visor serial number bug to BUGS
	section.

	* src/conduit.c (bug fix): don't close child's stdin and stdout.
	Let dup2() handle it. Fixes a bug whereby dump conduits don't get
	run if stdin is closed. Fixed a typo.

2000-06-15  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/GenericConduit.cc: Fixed a bunch of error messages to
	indicate which record they're talking about.

	- Version 1.2.3 released

	* src/parser.y: Conduit blocks can now contain "preference:
	cccc/123;" lines.

	* src/parser.h: Added LEX_ID4, for 4-character identifiers.

	* src/lexer.l: Added ID4 start state, for 4-character identifiers.
	Added keywords "preference", "pref", "saved", "unsaved".

	* src/config.c: Fixed various `conduit_block'-related functions to
	deal with the preference list. Added append_pref_desc().

	* src/coldsync.h: Added `struct pref_desc', to describe
	preferences. `conduit_block' now contains an array of `struct
	pref_desc's, listing the preferences that this conduit cares
	about.

2000-06-11  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.2.2 released

	* i18n/fr.po, i18n/de.po: Latest version of messages.

	* src/parser.y, src/config.c, src/conduit.c, src/coldsync.h:
	Renamed 'the_q' to 'conduits'.
	
	* src/parser.y: Removed INSTALL, UNINSTALL from list of known
	tokens.

	* src/lexer.l: "install" and "uninstall" flavors no longer used.

	* src/parser.y: `flavor' token type obsoleted. Conduit block now
	takes comma-separated list of conduit flavors. 'conduit_flavor'
	rule renamed to 'flavor'. "install" and "uninstall" flavors no
	longer recognized.

	* src/config.c: Fixed get_config() new_config(), free_config(), to
	work with only one conduit queue instead of five.
	new_conduit_block() now works with bitmap of conduit flavors.

	* src/conduit.c: Tweaked run_conduits() to work with only one
	conduit queue. Fixed run_Fetch_conduits() and run_Dump_conduits()
	accordingly.

	* src/coldsync.h: Got rid of obsolete ConduitFunc, conduit_flavor
	types. `conduit_block' can now handle any number of flavors,
	rather than just one. `struct config' now only has one master
	queue of conduits, rather than five.

	* doc/sample.coldsync.rc: Updated an example to use conduit flavor
	lists.

	* doc/coldsync.8: Documented the fact that you can now use lists
	of conduit flavors.

2000-06-03  Andrew Arensburger  <arensb@baa.ooblick.com>

	* README: Took out the bit about mktemp() causing a warning.

	* src/GenericConduit.cc: Use open_tempfile() instead of mktemp().

	* src/coldsync.c: Added open_tempfile(): wrapper for opening
	unique files (this is to shut the compiler up under FreeBSD).

	* src/coldsync.h: Added declaration for open_tempfile().

	- Version 1.2.1 released

	* src/config.c, src/coldsync.c: Got rid of redundant (global)
	variable 'user_uid'. Use 'userinfo.uid' instead.

	* config.h.in: Added HAVE_MKSTEMP.

	* configure.in: Added test for mkstemp().

	* doc/coldsync.8: Use a better serial number in the example. Added
	mention of 'username' and 'userid' statements in PDA block.

	* src/parser.y: Added "userid" and "username" fields to PDA block.
	Numbers are now 'long' instead of 'int', just in case there are
	still compilers out there where 'int' == 'short'.

	* src/lexer.l: Added "userid" and "username" keywords. Numbers are
	now 'long' instead of 'int', just in case there are still
	compilers out there where 'int' == 'short'.

	* src/config.c: Connection speed is now a long, instead of an int.
	(feature): PDA block can now override default username and userid.

	* src/coldsync.h: Connection speed is now a long instead of an
	int.
	(feature) PDA block now contains username and userid fields, so users
	can override the defaults.

	* src/coldsync.c: Connection speed is now a long, just in case
	there are still compilers out there where 'int' == 'short'.
	((mis?)Feature): If the userid on the Palm isn't what we think it
	should be, update it.
	* include/pconn/PConnection.h: PConnection.speed is now a long.

	* HACKING: Added a bit about modifying structs.

2000-05-30  Andrew Arensburger  <arensb@baa.ooblick.com>

	- Version 1.2.0 released

	* conduits/Makefile: Changed POD2MAN to POD2MAN_EXE, to avoid
	problems with Perl-generated Makefiles.

	* Make.rules.in: Changed POD2MAN to POD2MAN_EXE, to avoid problems
	with Perl-generated Makefiles.

2000-05-25  Andrew Arensburger  <arensb@baa.ooblick.com>

	* i18n/fr.po: Latest version of strings. Updated a bunch of
	translations.

	* conduits/todo-text: Small addition to documentation.

	* conduits/Makefile: Split conduits up by interpreter. 'make
	manifypods' generates man pages from Perl pods. 'make install'
	mungs the #! line. 'make clean' cleans up generated man pages.
	Install man pages for conduits.

	* configure.in: Added checks for 'sed' and 'pod2man'.

	* Make.rules.in: Added POD2MAN, SED, MAN1DIR, for installing man
	pages and pods.

2000-05-21  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/parser.y: Use HAVE_LIBINTL_H rather than HAVE_LIBINTL to
	decide whether to include <libintl.h>
	(bug fix) Fixed a type bug.

	* src/lexer.l: Use HAVE_LIBINTL_H rather than HAVE_LIBINTL to
	decide whether to include <libintl.h> Added manual declaration of
	strdup(), for Linux.
	* src/coldsync.c: Use HAVE_LIBINTL_H rather than HAVE_LIBINTL to
	decide whether to include <libintl.h> Use HAVE_GETTEXT rather than
	HAVE_LIBINTL to decide whether to run setlocale().

	* src/Makefile: Added bison files to list of files to delete
	during 'make clean'.

	* src/restore.c, src/log.c, src/install.c, src/handledb.c,
	src/config.c, src/conduit.c, src/backup.c, src/archive.c,
	src/GenericConduit.cc, libpdb/pdb.c, libpconn/slp.c,
	libpconn/palm_errno.c, libpconn/padp.c, libpconn/dlp_rpc.c,
	libpconn/dlp_cmd.c, libpconn/dlp.c, libpconn/PConnection_usb.c,
	libpconn/PConnection_serial.c, libpconn/PConnection.c: Use
	HAVE_LIBINTL_H rather than HAVE_LIBINTL to decide whether to
	include <libintl.h>

	* configure.in: Redhat 6.2 has gettext() and friends in libc.
	Hence, `configure' now checks separately for gettext(1),
	<libintl.h>, the libintl library, and gettext(3) (in both libintl
	and libc).

	* config.h.in: Separated gettext into HAVE_GETTEXT and
	HAVE_LIBINTL. Now uses HAVE_GETTEXT (whether the function exists)
	to decide whether to use I18N, rather than HAVE_LIBINTL (whether
	the library exists).

	* FAQ: Expanded a bit on IR syncing.

2000-05-20  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/parser.y (feature): Now warns when the config file redefines
	various fields.

	* doc/coldsync.8: Added another example debugging level. Updated
	all examples to use soon-to-be-mandatory colons, and avoid
	unnecessary quoting. Added section on quoting. Added tip for IR
	syncing. Removed old, deleted section.

	* configure.in: 'lex' no longer supported. Requires 'flex'.

	* src/parser.y: In `type cccc/tttt;' statements, the colon is now
	optional. The name of a PDA may be unquoted.

	* src/parser.y: Conduit headers are parsed more sensibly: as a
	series of individual tokens, rather than as a single line that
	must match a regular expression. Got rid of HEADER_PAIR (and its
	associated types and entry in the %union) and NAME tokens.
	Extensive use of lex start states to figure out which tokens to
	look for.
	(feature) Lots more error-checking, even if it doesn't quite work in
	all cases.

	* src/parser.h: Redefined lex start state macros. Got rid of
	obsolete `start_header' declaration.

	* src/lexer.l: Rearranged start states: ERROR no longer exists;
	HEADER now only refers to header names; added BSTRING (unquoted
	"bareword" string), and CTPAIR (creator/type pair). Conduit
	headers are now parsed sensibly, instead of monolithically, a full
	line at a time. Unquoted header/creator pairs are now only
	recognized as such if we're looking for them. Defined KEYWORD(k)
	macro for quick and easy debugging. Decided to use the WORD rule
	at the end after all, for error-reporting.

	* src/config.c: Print conduit flags in config file summary.

	* src/Makefile: Added "parser.output" to list of things to delete.
	Added manual dependencies for lex/yacc-generated files.

	* src/lexer.l {HID} character class obsoleted, replaced by {ID}.
	"name" keyword obsoleted.

	* src/parser.y (feature): Vastly improved error-reporting.
	(syntax change): Colons are now recommended after all directives.
	They will become mandatory at some point. "name" directive in
	conduit blocks is no longer supported.

	Version 1.1.10 released

	* src/parser.y, src/coldsync.c: Cast argument of toupper() to int,
	so compiler will shut up under DU.

	* perl/ColdSync/Makefile.PL: Added a backward-compatibility
	message.

2000-05-19  Andrew Arensburger  <arensb@baa.ooblick.com>

	* Make.rules.in: Oops! Restored previous distdir-building
	behavior.

	* i18n/fr.po, i18n/de.po: Latest set of strings.

	* src/parser.y: Use lex_expect() instead of start_header. Some
	progress toward better error-detection. All punctuation characters
	now have a rule of their own for this.

	* src/parser.h: Added declaration for lex_expect(), and symbols
	for start states.

	* src/lexer.l: Replaced `start_header' variable with more generic
	lex_expect() function. Baby steps toward improving error-detection
	and -reporting.

	* src/Makefile: Use 'mkinstalldirs' to create installation
	directories.

	* perl/ColdSync/Makefile.PL (feature): Now allows one to specify
	different run-time and install-time PREFIXes.

	* perl/ColdSync/ColdSync.pm: DumpConfig() handles wildcard types
	and creators correctly now.

	* i18n/Makefile: Use 'mkinstalldirs' to create installation
	directories.

	* doc/sample.coldsync.rc (added): A bunch of configuration
	examples.

	* doc/coldsync.8: Changed a comment. I'm not sure why.

	* doc/Makefile: Added sample.coldsync.rc to distribution. It gets
	installed now, too. Make sure directories exist before installing
	stuff in them.

	* conduits/Makefile: Use 'mkinstalldirs' to create installation
	directories.

	* configure.in: Specify $PREFIX when building the Perl Makefile.

	* Makefile: Use 'mkinstalldirs' to create installation
	directories. Added 'mkinstalldirs' to the distribution.

	* Make.rules.in: Use 'mkinstalldirs' to create installation
	directories. Tweaked INSTALL_SCRIPT to avoid giving options twice.

	* INSTALL: Added lots of specific installation instructions.

	* FAQ: Fixed thinko.

	* mkinstalldirs (added): The standard "mkdir -p" replacement.

2000-05-17  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/GenericConduit.cc (bug fix): Don't reset sync flags on open
	databases, since it causes the Palm to reset (guru).

	* libpconn/dlp_cmd.c (bug fix): Fixed a buffer overflow.

2000-05-11  Andrew Arensburger  <arensb@baa.ooblick.com>

	* libpdb/pdb.c: Added warning when writing zero-length records.
	Explanation of why they're not shot on sight.

	* config.h.in: Tweaked preprocessor games to make things compile
	cleanly on non-Linux machines. Johnny C. Lam <lamj@stat.cmu.edu>

2000-05-07  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/parser.y (bug fix): When conduit type is specified with
	double-quoted strings, the creator and type weren't being set
	correctly. (Dirk-Willem van Gulik <dirkx@covalent.net>).

2000-05-06  Andrew Arensburger  <arensb@baa.ooblick.com>

	Version 1.1.9 released.

	* src/parser.y (feature): Conduit block may now contain
	user-supplied headers.
	(feature): PDA block may now have an (optional) name.

	* src/parser.h: First draft of magic to recognize user-supplied
	headers.

	* src/lexer.l: First cut of magic to distinguish between
	predefined keywords and arbitrary strings that just happen to look
	like reserved words. First cut at recognizing user-supplied
	headers. Added character classes for identifiers. Added
	"arguments" keyword. Added rule for recognizing standalone
	identifier. Not sure why.

	* src/cs_error.h (added): ColdSync error codes and such.

	* src/config.c: Conduit blocks now contain user-supplied headers.
	Ctor and dtor now deal with this. PDA blocks can specify a name.
	Ctor and dtor deal with this. Print user-supplied headers when
	debugging.

	* src/conduit.h: Header names can now only be 31 characters long,
	to allow for terminating NUL.

	* src/conduit.c (feature): Conduit block with no path is
	equivalent to ignoring the database. Mainly useful for specifying
	default or final conduits.
	(feature): Send user-supplied header lines to conduit.
	(feature): `final' conduits work as advertised.

	* src/coldsync.h: Added type for conduit header-value pairs.
	`pda_block' now includes a name.

	* src/coldsync.c (feature): If a conduit fails, try to figure out
	why. If the sync was cancelled by the user, abort. Fixed
	compile-time warning under Solaris.

	* src/Makefile: Added cs_error.h to distribution. Removed unneeded
	${PROG}.

	* perl/ColdSync/ColdSync.pm: Added @HEADERS, for cases where order
	matters.
	(feature): <conduit> -config now prints the default headers.
	(bug fix): Header names may now include dashes.
	Removed unnecessary quoting.

	* libpdb/pdb.c: Hack to avoid uploading zero-length records (which
	oughtn't exist in the first place).
	* libpconn/padp.c: Dump PADP ACK packets correctly when debugging.

	* doc/conduits.texi: Fixed bug in example conduit.

	* doc/coldsync.8: Added "overview" section, for newbies, and got
	rid of the ponderous "conduits and syncing" section. Description
	of "pda" directive now mentions PDA names. Description of
	"default" and "final" flags for conduits. "Files" section updated.

	* conduits/todo-text (added): Conduit for converting to do lists
	to/from plain text files.

	* conduits/send-mail: Removed unnecessary quoting.

	* conduits/memo-text (added): Conduit for converting memos to/from
	text format.

	* conduits/Makefile (added) Makefile for conduits subdirectory.

	* configure.in: Require automake version 2.13 or higher.

	* Makefile: Added 'conduits' to list of subdirectories. Added FAQ
	to distribution.

	* Make.rules.in: Added CONDUITDIR. Pass along 'prefix' and
	'PREFIX' to makes in subdirectories, so that user can install with
	a prefix different from the one ColdSync was built with.

	* FAQ (added) Frequently (and not-so-frequently) asked questions.

2000-05-03  Andrew Arensburger  <arensb@baa.ooblick.com>

	* libpdb/pdb.c (bug fix): split record attribute when there was no
	need to do so.

	* (bug fix): records in the 8th category are no longer seen as
	deleted and archived.

	* src/GenericConduit.cc: Use "cs_error.h" instead of "error.h".
	'struct pdb_record' now has separate fields for flags and
	category.

	* libpdb/pdb.c: The single-byte "attributes" field in a PDB record
	is now split into separate "flags" and "category" fields. The pdb
	functions split and merge these fields when necessary.

	* include/pdb.h: Split the single "attributes" PDB record field
	into "flags" and "category", to simplify the code that uses it.

	* config.h.in: Uncommented "inline".

	* configure.in: Moved pedantic-compilation checking back to the
	beginning, since "inline" is illegal with -ansi, but you can use
	"__inline__".

2000-05-02  Andrew Arensburger  <arensb@baa.ooblick.com>

	* configure.in: Moved pedantic compiler flags to the end, so that
	checks that fail with pedantic compilation won't. Reinstated test
	for `inline' Added "--disable-pedantic" configure option.

2000-04-21  Andrew Arensburger  <arensb@baa.ooblick.com>

	* conduits/send-mail (added). Conduit to send Palm Mail messages.

2000-04-15  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/GenericConduit.cc: Better error handling: detect when user
	has cancelled sync on Palm.

2000-04-10  Andrew Arensburger  <arensb@baa.ooblick.com>

	* doc/coldsync.8: Added description of 'speed' directive. Added
	description of pda { } blocks. Suggested a workaround for the
	Bargle bug. Removed description of a bug, since it's no longer
	true.

	Version 1.1.8 released.

	* i18n/de.po: Translated a string. New serial-number-related
	strings have appeared.

	* src/config.c: Rearranged tests when looking for a pda_block: a
	pda_block that specifies a serial number can also be a default. It
	doesn't automatically match.

	* src/GenericConduit.cc: Changed capitalization of some strings,
	for translators' benefit.

	* i18n/fr.po: Translated latest strings.

	* src/parser.y: .coldsyncrc can now contain pda { } or palm { }
	blocks to describe individual devices by serial number, and
	specify a directory to sync them with.
	* src/lexer.l: Added pda_block-related keywords.

	* src/config.c: Main and user configurations now include list of
	'pda_block's, to describe individual PDAs. Added various functions
	to allocate and free pda_blocks, and manage the configuration
	sanely.

	* src/coldsync.c: ROM serial number checksum is now a plain
	character, rather than a ubyte. So there. Serial number checksum
	calculation is now in a separate function.

	* src/coldsync.h: ROM serial number is now a string of signed
	chars. So there. Configuration now includes a list of
	'pda_block's, for users (or sites) who have more than one PDA.

2000-04-09  Andrew Arensburger  <arensb@baa.ooblick.com>

	Version 1.1.7 released.

	* src/log.c (bug fix): Log didn't get initialized properly.
	Cleaned up sucky code.

	* configure.in: Incremented patch-level number.

	* src/conduit.c: Rearranged order of arguments to run_conduits();
	seems more sensible this way. Added run_conduit() function, which
	runs a single conduit; putting this a separate function makes
	default conduits possible. Default conduits seem to work now.

	* src/coldsync.c: Added 19200 to list of allowable connection
	speeds. Reads the serial number from Palm's ROM, if possible. User
	can now specify connection speed in .coldsyncrc .

	* src/install.c: Pay attention to the "force install" flag.

	* src/coldsync.h: Added fields for ROM serial number to 'struct
	Palm'.

	* src/Makefile: Fixed "include" statement to use ${TOP} instead of
	hard-wired path.

	* src/GenericConduit.cc: SlowSync: moved 'remoterec' down to where
	it's used.
	(bug fix): Deleting a record in the remote database would break
	iteration over that database. Fixed a possibly erroneous error
	message.

	* perl/ColdSync/Makefile.PL: Replaced a godawful hack with a
	slightly less ugly one.

	* perl/Makefile: Fixed ${TOP}. Came up with a slightly less ugly
	hack to clean up Perl-generated Makefile.
	* libpconn/dlp_rpc.c (added). Functions for RPC over DLP.

	* libpconn/Makefile: Added "dlp_rpc.c" to list of source files.

	* include/pconn/slp.h: Removed old prototype.

	* include/pconn/pconn.h: Added "dlp_rpc.h" to the standard
	includes.

	* include/pconn/dlp_rpc.h (added). Declarations and such for RPC
	over DLP.

	* include/pconn/Makefile: Added "dlp_rpc.h".

	* i18n/fr.po: Brought up to date with v1.1.7, mostly.

	* i18n/de.po: Latest update from Christian Kirsch.

	* i18n/Makefile: Added a "to do" comment.

	* README: Updated FreeBSD section for v1.1.7.

	* Makefile: Added NEWS file to distribution.

	* Make.rules.in: Added ${PERL} variable.

	* AUTHORS: Added more contributors.

	Version 1.1.6 released.

	* src/GenericConduit.cc (bug fix): Fixed a bunch of lingering
	"cerr <<" statements.

2000-04-05  Andrew Arensburger  <arensb@baa.ooblick.com>

	Version 1.1.5 released.

	* GenericConduit.cc (bug fix): Records deleted locally didn't get
	deleted on the Palm. Fix by Ward Vandewege
	<ward@penguinpowered.com>. Fixed some typos.

2000-03-14  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/restore.c: Check flags on database being uploaded: if it's
	open, don't overwrite it unless it also has OKNEWER set.

	* include/pconn/PConnection.h: Added `pconn_direction' type to
	replace "forReading" and "forWriting" cpp macros.

	* libpconn/PConnection_usb.c, libpconn/PConnection_serial.c: Fixed
	to use `pconn_direction'.

	* src/coldsync.h: Added 'force_install' global option flag, for
	"-I" option.

	* src/config.c, doc/coldsync.8: Added "-I" option.

	* perl/ColdSync/Makefile.PL: Ugly hack to make 'make clean' not
	delete the Makefile.

2000-03-13  Andrew Arensburger  <arensb@baa.ooblick.com>

	* configure.in: Made GNU 'gettext' the official supported version.
	Fixed a bug on machines that happen not to have GNU gettext.

2000-03-04  Andrew Arensburger  <arensb@baa.ooblick.com>

	* README: Clarified i18n.

	* libpconn/dlp_cmd.c: Removed lingering traces of ppack(),
	punpack().

	* libpconn/padp.c: Added header magic to include the appropriate
	headers to memcpy() works correctly.

	* src/GenericConduit.cc: Added to an XXX comment.

	* i18n/fr.po: Incorporated Jorge's changes. Got rid of some
	obsolete entries.

	* i18n/de.po (added) German translation.

	* i18n/.cvsignore: Added. Ignore .mo files.

	* AUTHORS: Added more contributors.

2000-03-03  Andrew Arensburger  <arensb@baa.ooblick.com>

	* i18n/Makefile: Added German .po file.

	* i18n/FILES: Took out obsolete src/pack.c file.

2000-02-09  Andrew Arensburger  <arensb@baa.ooblick.com>

	Version 1.1.4 (bug fix) released.

	* libpdb/pdb.c (bug fix): sanity check gone horribly wrong.

2000-02-07  Andrew Arensburger  <arensb@baa.ooblick.com>

	Version 1.1.3 released.

	* perl/Makefile: Oops! Forgot to remove "ColdSync.pm" from
	distribution.

	* libpdb/pdb.c: Added some sanity checks and trace statements.

2000-02-06  Andrew Arensburger  <arensb@baa.ooblick.com>

	* perl/ColdSync/ColdSync.pm: &DumpConfig prints creator/type pair
	without quotes.

	* doc/conduits.texi: Changed preferred notation for creator/type
	pairs to not have quotes.

	* doc/coldsync.8: Changed preferred notation for creator/type
	pairs to not have quotes.

	* src/parser.y: Conduit creator/type pair moved into its own rule.
	Accepts either two strings and a slash, or a single creator/type
	pair token (defined in "lexer.l")

	* src/parser.h: Added type for creator-type pair.

	* src/lexer.l (feature) Can now specify creator-type pairs without
	quotes all over the place. Added PARSE_TRACE.

	* src/conduit.c (feature) "final" conduit keyword now works. Added
	sketch for "default" keyword.

	* configure.in: Create the Perl Makefile(s) as part of the
	configuration process.

	* src/restore.c, src/install.c, src/coldsync.c: Removed the
	str(n)casecmp() compatibility macros, since they're now in
	"config.h".

	* src/coldsync.c: Added "-t" option to usage string.

	* config.h.in: Moved the str(n)casecmp() compatibility cpp macros
	into here, so they're not duplicated all over the place.

	* src/config.c, doc/coldsync.8: "-t" option now takes a string as
	its argument.

	* src/coldsync.h: Removed a few unused types.

	* perl/ColdSync/MANIFEST.SKIP (added): Stuff that isn't part of
	the distribution, but Perl shouldn't gripe about.

	Moved ColdSync perl module into its own directory.

	* perl/ColdSync/test.pl, perl/ColdSync/Makefile.PL,
	perl/ColdSync/MANIFEST (added): Added as part of standard Perl
	module.

	* perl/ColdSync/ColdSync.pm (moved from previous location)

	* perl/Makefile: Moved the real ColdSync module stuff under its
	own directory. Added ${SUBDIRS} to reflect this.
	* i18n/Makefile: (bug fix) Shouldn't barf if i18n isn't turned on.

	* configure.in (bug fix) I18n stuff should now work if you don't
	have i18n enabled.

	(feature) Added embryonic i18n support (details below).

	* i18n/Makefile: Added the usual things to ${CLEAN}.

	* Makefile: Added "TAGS" to ${CLEAN}.

	* i18n/fr.po (added) French translation of ColdSync messages.

	* i18n/README (added) Draft README.

	* i18n/Makefile (added) Makefile for building catalogs of
	translatable strings.

	* i18n/GLOSSARY.fr (added) Tentative glossary to help
	English-to-French translators.

	* i18n/FILES (added) List of files in which to look for
	translatable strings.

	* Make.rules.in: Added i18n-related variables and rules.

	* Makefile: Added "i18n" to list of subdirectories.

	* README: Added a note on internationalization.

	* config.h.in: Added N_() macro for internationalizable strings
	that shouldn't be translated immediately.

	* configure.in: Fixed check for static_cast<> to work under egcs.
	Fixed i18n to work when it's turned off.

	* libpconn/PConnection_usb.c: Fixed some internationalized
	strings. Left something outside of the outermost #if block so gcc
	won't complain about empty source files.

	* libpconn/palm_errno.c: Internationalized error message strings.

	* libpdb/pdb.c: Fixed some i18n-ed strings.

	* src/GenericConduit.cc: Converted from C++-style "cout << foo" to
	C-style fprintf() throughout. Added internationalization.

	* src/coldsync.c: Tweaked "io" debugging facility.

	* src/Makefile: Fixed stupid typo.

	* src/conduit.c: Fixed error message to make sense.

2000-02-05  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/Makefile, libpdb/Makefile, doc/Makefile, Makefile: Makefiles
	now use "OBJS = ${SRCS:.c=.o}"-like constructs, since it appears
	to be portable.
	
2000-02-04  Andrew Arensburger  <arensb@baa.ooblick.com>

	* configure.in: Rearranged tests so that the C++-related tests are
	all together.

2000-02-02  Andrew Arensburger  <arensb@baa.ooblick.com>

	Incorporated Louis Mamakos's changes to 1.1.2:

	<<<<< BEGIN

	* libpconn/PConnection_usb.c: Lots of changes:
	
	- got actual documentation from Handspring on what their vendor
	specific setup commands do. The biggest result of this is that we
	now use a "portmapper" type mechanism to find the USB endpoint
	that does the Hot Sync service, rather than just "knowing" that
	it's 2.
	
	- Access the fields of the USB request using some accessor macros.
	The data is in little endian order, so it just works now. But it
	would have had problems on a big-endian CPU.
	
	- moved printing of the "Press HotSync button" message into the
	device specific I/O functions. In the case of USB, this needs to
	be pressed to cause the device to attach to the USB port. Before,
	it would pring the message after you pushed the button.
	
	- reflect that the USB header file is installed in
	/usr/include/dev/usb/usb.h now. I don't know if you want to use
	this in the autoconf process or not.
	
	- picked up the string.h macros in PConnection_usb.c
	
	- cleaned up the error handling in the USB code to not just exit()
	at the slightest provocation.
	
	- added an io_trace variable and IO_TRACE() macro to control
	debugging in the USB code. This could also be used in the serial
	code if you wanted to add I/O specific debugging messages there.
	
	- added a somewhat unsatisfactory way of specifing the device type
	on the command line. E.g., you can now say -t 3 along with -p
	/dev/ugen0 to indicate it's a USB device. Certainly you'd prefer
	to say -t usb, but I'm not sure how to do this and keep the config
	parser in sync.

	* src/config.c: Added "io" debugging facility. Added "-t <type>"
	command-line argument, to specify connection type.

	* src/coldsync.c: new_PConnection() now takes argument specifying
	whether to prompt the user. Added "io" debugging facility.

	* libpconn/PConnection_serial.c: new_PConnection() now takes
	argument specifying whether to prompt the user.

	* PConnection.c: new_PConnection() now takes argument specifying
	whether to prompt the user.

	* include/pconn/PConnection.h: new_PConnection() now takes
	argument specifying whether to prompt the user.

	>>>>> END

	* configure.in: Make sure C++ compiler understands 'bool'(!) and
	new-style casts ("static_cast<int>(foo)").
	Cosmetic changes.

	* src/install.c (bug fix): Make the Palm log come out right when
	installing a file that already exists in the backup directory.

	* src/Makefile (bug fix): Fixed bogus arguments to 'install'.

	* doc/conduits.texi: Fixed 'dir' title, to go along with what the
	rest of the documentation says.

	* perl/ColdSync.pm: New API: added &ConduitMain, &StartConduit,
	&EndConduit. Added &DumpConfig, &ReadHeaders for convenience.
	Added documentation. Added $VERSION, per CPAN. Renamed $pdb to
	$PDB, and %headers to %HEADERS. The 'warn' and 'die' wrappers are
	now set later on. &ReadHeaders now makes sure that mandatory
	headers for each flavor are set.

	* libpdb/pdb.c (bug): Zero-length records cause problems. Added a
	mediocre workaround.

	* include/pconn/Makefile: Added a ${HEADERS} variable.
	* include/Makefile: Added a ${HEADERS} variable.
	* doc/conduits.texi: Rewrote 'todo-dump' example with the new
	ColdSync.pm module. Added 'pine-aliases' example. Status codes 301
	and 501 are now in the spec.

	* doc/Makefile (bug fix): Install man pages in ${MAN8DIR}, not the
	top of the man tree. Duh. Added targets for various file formats.

	* configure.in: Now finds 'perl'.

	* Makefile: Added the 'tags' and 'TAGS' targets.

	* Make.rules.in: Added MAN8DIR. Took out the ownership options to
	the ${INSTALL_*} variables, since they screw things up in the *BSD
	port. Added the 'tags' (and 'TAGS') targets, as recursive targets.

	* src/handledb.c (bug fix): (mkfname) Characters with ASCII values
	>= 128 in database names weren't getting escaped properly when
	converted to filenames.

	* src/coldsync.c (bug fix): Used to barf on "-dfac". Now this is
	equivalent to "-dfac:1", just like the documentation says.

	* src/lexer.l (configuration): Added "%option noyywrap", which
	should make things compile cleanly with flex under Irix.

2000-01-30  Andrew Arensburger  <arensb@baa.ooblick.com>

	* doc/conduits.texi: Added `pine-aliases' two-way syncing
	tutorial. Added a few .coldsyncrc examples. Fixed indentation for
	a few paragraphs. Got rid of cartouches for long code listings,
	since they screw up the page formatting in the printed manual.

2000-01-27  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/conduit.c (bug fix) Applied Pace Willisson's patch: fixed
	bug where ColdSync wouldn't find the second and subsequent
	conduits of the same flavor.

	Version 1.1.2 released.

	* src/handledb.c: Cast to avoid compiler warning.

	* Make.rules.in (bug fix) Can't have comments at the end of the
	line. They get interpreted as part of the macro.

	* src/Makefile, doc/Makefile: Added 'install::' target.

	* Make.rules.in: Added rules for installing.

	* libpdb/Makefile, libpconn/Makefile: Added comment saying why
	'make install' doesn't do anything.

	* doc/coldsync.8: Added `WARNINGS' section, to make the Bargle Bug
	more obvious. Updated, clarified `BUGS' section.

	* src/handledb.c (bug fix) If the database being synced is a
	resource database, and there's no backup of it, make on. This
	isn't perfect, but it means that all of your applications get
	backed up at some point.

	* src/backup.c: Created a separate function to back up a single
	database, and shuffled function names around a bit.

2000-01-26  Andrew Arensburger  <arensb@baa.ooblick.com>

	Version 1.1.1 released.
	
	* src/GenericConduit.cc: Updated call to arch_create().

	* src/archive.h: Fixed arch_create() declaration.

	* src/archive.c: arch_create() no longer takes a filename
	argument, but builds it from the database info. Use mkarchfname()
	instead of building the archive filename by hand.

	* src/install.c: When installing new files, now uses mkbakfname()
	to check for an already-installed version in the backup directory,
	rather than constructing the filename by hand.

	* src/handledb.c: Added fname2dbname(), hex2int(). mkfname() now
	uses isprint() rather than isgraph() for testing weird characters.
	Escaped hex digits are now in upper case.

	* src/coldsync.c: Use fname2dbname() when checking for files to
	move to the Attic, instead of doing it by hand.
	* src/coldsync.h: Added fname2dbname().

	* config.h.in, configure.in: Check for memcpy(), strchr().
	
	* src/handledb.c: Added mkfname(), mkarchfname(). Fixed
	mkbakfname() to use mkfname(). Now escapes weird characters in
	file names.

	* src/GenericConduit.cc: More rational use of mkbakfname().

	* src/coldsync.h: Updated mkfname(), mkarchfname().

	* src/coldsync.c: Moved the print_version() call to where it'll
	actually get called. D'oh!

	* src/backup.c: Use mkfname() instead of constructing backup file
	name by hand.

	* src/GenericConduit.cc: More trace statements. Use new
	arch_open() call.

	* src/archive.c: More trace statements.

	* config.h.in: Added placeholder for `inline', in case that ever
	becomes useful.

	* README: Removed Y2K compliance bit, now that Y2K is past.
	Updated notes for v1.1.0. Added mention of bug with
	new+deleted+archived Memo records.

	* src/archive.h: Updated arch_open() prototype.

	* src/archive.c: Changed arch_open() to take a struct dlp_dbinfo
	instead of a full pathname: in reality, we're not going to archive
	to more than one place, and this allows us to use mkarchfname(),
	which simplifies the caller code.

	Version 1.1.0 released

	* configure.in, Makefile, Make.rules.in: Due to inconsistencies
	between `make's, can't have multiple levels of inclusion in
	Makefiles. (That is, can't have "Makefile" include
	"../Make.rules", which in turn includes "Make.vars"). So
	"Make.rules" contains the variables as well, and is generated by
	`configure'.

	* Make.rules: renamed to "Make.rules.in".

	* Make.rules: Merged the variables back in from "Make.vars".

	* Make.rules: Fixed to work with Sun's 'sh'.

	* perl/Makefile: Fixed `clean' target.

	* libpconn/Makefile, libpdb/Makefile, include/pconn/Makefile,
	include/Makefile, src/Makefile, perl/Makefile, doc/Makefile,
	configure.in, Makefile, Make.vars.in, Make.rules: Redid the 'make'
	structure: instead of having `configure' generate each Makefile,
	individual Makefiles now "include Make.rules", which includes
	Make.vars. In this scheme, only "Make.vars" is generated by
	`configure'. The rules for building targets are kept in
	"Make.rules", so it's easier to add or modify how things get
	built.

2000-01-25  Andrew Arensburger  <arensb@baa.ooblick.com>

	Incorporated changes from `usb' branch:

	<<<<< USB

	* src/log.c: Moved the log-related global variables here, and hid
	two of them. Bug fix: Rewrote add_to_log() to fix a problem with
	it not updating the log properly.

	* src/coldsync.c: Moved the log-related variables to "log.c" and
	made two of them 'static', to hide the ugliness.

2000-01-24  Andrew Arensburger  <arensb@baa.ooblick.com>

	* src/parser.y: Allow specifying listen type: serial or usb.

	* src/lexer.l: (Louis Mamakos) Added "usb" keyword.

	* src/coldsync.h: (Louis Mamakos) Added LISTEN_USB listen type.

	* src/coldsync.c: Fixed call to new_PConnection. Moved
	serial-specific stuff out to PConnection*.c. 'coldsync -h' now
	prints whether it was compiled with USB support or not.

	* src/Makefile.in: Added extra dependencies for 'coldsync', so it
	gets rebuilt when the libraries change.

	* libpdb/Makefile.in: (Louis Mamakos) Fixed 'ar' flags.

	* libpconn/slp.c: (Louis Mamakos) Fixed to use the PConnection
	"virtual methods".

	* libpconn/padp.c: (Louis Mamakos) Fixed to use the PConnection
	"virtual methods".

	* libpconn/cfmakeraw.c: Added #if !HAVE_CFMAKERAW block around
	most of the file, so we don't have to play silly buggers in the
	Makefiles.ins.

	* libpconn/PConnection_usb.c (added): (Louis Mamakos) The USB part
	of PConnection.

	* libpconn/PConnection_serial.c (added): (Louis Mamakos) The
	serial port part of PConnection.

	* libpconn/PConnection.c: (Louis Mamakos) Fixed the PConnection
	functions to use "virtual methods", depending on whether we're
	listening to a serial or USB port.

	* libpconn/Makefile.in: Got rid of the COMPAT* nonsense.
	(Louis Mamakos) fixed the 'ar' flags.

	* include/pconn/PConnection.h: (Louis Mamakos) Modified struct
	PConnection to allow either serial or USB port connection.

	* doc/coldsync.8: Describe USB listen blocks. Cosmetic changes.

	* configure.in: Got rid of the COMPAT* abomination. Added
	"--with-usb" option. Cosmetic changes.

	* config.h.in: Added WITH_USB symbol.
	* README: Added mention of Visor.

	* AUTHORS: Added Louis Mamakos.

	>>>>> USB

	* src/coldsync.c: When running with -dmisc, print version and
	features, so I'll know what people are using when they send me
	stderr.

	* src/Makefile.in: Don't strip executables when installing, for
	debugging.

	* perl/ColdSync.pm (added) Perl module to simplify writing
	conduits.

2000-01-23  Andrew Arensburger  <arensb@baa.ooblick.com>

	Version 1.0.1 released.

	* src/GenericConduit.cc: Cosmetic changes.

	* configure.in: Look for gethostbyname() in libsocket, as well as
	libnsl (for UnixWare).

	* src/coldsync.c: Debugging output goes to stderr, not stdout,
	dammit! Print the program name and version when debugging, just
	for completeness.

	* libpdb/pdb.c: Debugging output goes to stderr, not stdout,
	dammit!

	* doc/conduits.texi: Fixed typo in tutorial script.

	* doc/conduits.texi: Cosmetic changes to the HTML version.

	* Makefile.in: Rotated ChangeLog file. Added ChangeLog.0 to the
	distribution.