-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathChangeLog.0
1904 lines (1321 loc) · 68 KB
/
ChangeLog.0
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
2000-01-22 Andrew Arensburger <[email protected]>
Version 1.0.0 released.
* src/conduit.c: Commented out some trace statements that
shouldn't be printed every time. Clarified comment on status
codes.
* src/Makefile.in: Fixed install flags to strip binaries.
* doc/pdb.texi: Added @dircategory and @direntry, for BSD port.
* doc/conduits.texi: Added the reference section. Fixed some style
points. Added @dircategory and @direntry, for BSD port.
* doc/Makefile.in: Fixed the install flags. Duh. Took `libpalm'
out of the default install, since it needs to be reorganized.
Install the other info files by default.
Version 0.5.7 released.
Bug fix: categories weren't downloaded properly.
* src/coldsync.c: Bug fix: don't run Dump conduits if we're doing
a backup or restore
(or, more generally, don't run them unless we're doing a sync).
* libpdb/pdb.c: pdb_DownloadRecords() now correctly adds the
category to downloaded records.
* configure.in: Updated version.
* src/handledb.c: Changed handledb() to just call
run_GenericConduit() for now, until Sync conduits are implemented.
* src/conduit.h: Took out old-API conduit stuff.
* src/conduit.c: Took out a boatload of old-API conduit stuff.
* src/GenericConduit.cc: Added notes on syncing AppInfo block.
Updated invocations of new_Record().
* libpdb/pdb.c: new_Record() now takes a `category' attribute, and
combines it with the `attributes' argument. This makes other parts
of the code easier to write.
* libpdb/Makefile.in: Commented out the actual install actions:
it's too early to install the libraries just yet.
* libpconn/Makefile.in: Commented out the actual install actions:
it's too early to install the libraries just yet.
* include/pconn/Makefile.in: Commented out the actual install
actions: it's too early to install the .h files just yet.
* include/pdb.h: Added 'category' argument to new_Record(), for
"convenience" (it's a PITA to combine the flags and attribute, but
it's also sometimes a PITA to separate them).
* include/Makefile.in: Commented out the actual install actions:
it's too early to install the .h files just yet.
* doc/Makefile.in: Added INFODIR, preparatory to actually
installing the documentation. Fixed install flags: don't
automatically add the "-c". Added "conduits.texi", documentation
on conduits. First, failed attempt at including HTML documentation
in the distribution.
* doc/conduits.texi (added): Documentation on conduits.
* configure.in: Added test for 'texi2html', preparatory to
generating HTML documentation.
* src/Makefile.in: Fixed install flags: don't automatically add
the "-c".
2000-01-19 Andrew Arensburger <[email protected]>
* src/config.c: get_config() now sets host ID. Finally took out
load_config().
* src/conduit.h: Changed declarations for run_*_conduits()
functions.
* src/coldsync.c: Fixed run_Fetch_conduits() call.
* src/GenericConduit.cc: Made some trace statements more specific.
* doc/coldsync.8: "-p <device>" is now listed as optional.
Clarified explanation of the "-d" flags. Added "conduit"
directives in .coldsyncrc . Rewrote section on syncing.
* configure.in: Incremented version number.
* TODO: Added, removed some stuff.
* README: Redid the format of the OS-specific notes (again).
* src/conduit.c: Added definition for WCOREDUMP, for AIX. Added
run_conduits(), to hold the shared functionality of the
run_*_conduit() functions. run_Fetch_conduits() now functional;
run_Dump_conduits() uses run_conduits(). Sends "InputDB" and
"OutputDB" header fields to conduit.
2000-01-13 Andrew Arensburger <[email protected]>
Version 0.5.5 released.
* src/conduit.c: New conduit API. run_Dump_conduits() now works.
Use the STD*_FILENO macros for clarity. Made signal stuff more
portable. Replaced 'conduit_is_running' with a special value of
'conduit_pid', so that things are more atomic. Use execvp()
instead of execve() to spawn conduits, so that they inherit
environment. Send header lines to conduit: "Daemon", "Version",
"InputDB", "OutputDB". Now use file handles instead of file
descriptors to talk to conduit. Use fork() to spawn conduit
instead of vfork(), since there's too much stuff going on for
vfork() to work. Child's stdout is now line-buffered. Lots of
smallish stuff in cond_sendline(). Added cond_sendheader(), for
convenience. Added cond_readline(). Added cond_readstatus().
* src/config.c: In get_config(), get max # file descriptors. This
can be useful in conduits. Set conduit flags to 0 in
new_conduit_block().
* src/conduit.h: Defined max size of the lines sent back and forth
between ColdSync and conduits; make sure they're sane.
* src/coldsync.h: Added flags to conduit block. They're not used
yet, though. Added 'sys_maxfds', the max # of file descriptors you
can have.
* src/coldsync.c: Removed the separate check for <locale.h>, since
it appears to be a standard part of libintl. Updated the "-h" help
message to conform to reality.
* src/parser.y: Added "default" and "final" options for conduits.
These aren't used yet, though.
* src/lexer.l: Added placeholders for "final" and "default"
options for conduits. These haven't been implemented yet.
* src/handledb.c: Print out a message saying which database it's
syncing.
* config.h.in: Added macro for signal()'s return type. Added
HAVE_SYSCONF. Added magic cpp lines to make things compile cleanly
under OSF1/DU/Tru64.
* configure.in: I18n support (such as it is) can now be turned off
with "configure --without-i18n". The documentation-related tests
now print a warning message if 'makeinfo', 'texi2dvi', 'dvips'
couldn't be found, just so it's obvious that they weren't found.
Added checks for <locale.h> and sysconf().
* README: Added version-specific notes, since I haven't been
testing each version with each OS.
* Makefile.in: Fixed the 'id' target so that the ID file gets
rebuilt every time you "make id".
* src/GenericConduit.cc: Changed sync logic yet again:
"AddressBook" doesn't set the "deleted" flag for archived records.
Grrr...
1999-12-05 Andrew Arensburger <[email protected]>
* src/conduit.c: First draft of functions that implement working
conduits, preparatory to changing their API to use FILE *s instead
of file descriptors. Added spawn_conduit(), cond_sendline(),
sigchld_handler(). Added static global variables for child process
state; this may prove to be a mistake. Use execve() for spawning
conduits. This is probably a mistake.
1999-12-02 Andrew Arensburger <[email protected]>
* src/lexer.l: Hack to make lexer.l compile cleanly under Solaris.
* src/GenericConduit.cc: Handle the case where a record was added
and deleted since the last sync.
* libpdb/pdb.c: Fixed a 0-byte allocation bug in new_Record().
1999-12-01 Andrew Arensburger <[email protected]>
* src/Makefile.in, libpdb/Makefile.in, libpconn/Makefile.in,
include/pconn/Makefile.in, include/Makefile.in: Split distribution
stuff into "dist" and "dist-core", so that snapshots don't have to
include extra fluff.
Rearranged the order of cpp flags, so that a) user-specified flags
can override those in the Makefile, and b) when compiling a new
version, it #includes the .h files in the source tree, not those
already installed.
* doc/Makefile.in: Split distribution stuff into "dist" and
"dist-core", so that snapshots don't have to include extra fluff
(PostScript and .info files).
* Makefile.in: Split distribution stuff into "dist" and
"dist-core", so that snapshots don't have to include extra fluff.
* src/coldsync.c: #include <locale.h>, for I18N packages other
than GNU's.
* src/parser.y: Fixed a double-free bug.
1999-11-28 Andrew Arensburger <[email protected]>
* libpdb/pdb.c: Fixed bug in pdb_DownloadRecords():
DlpReadRecordIDList() doesn't return more than 500 record IDs at
once, which can cause problems for large databases. Need to call
it repeatedly to make sure all of the IDs get read.
Bug reported by Paul Rolland.
* libpconn/dlp_cmd.c: Documented limitation in
DlpReadRecordIDList(), that it doesn't retrieve more than 500
record IDs at once.
* src/Makefile.in: Tidied up the 'depend' target.
* libpdb/Makefile.in, libpconn/Makefile.in: Made 'make depend'
work again.
1999-11-27 Andrew Arensburger <[email protected]>
Version 0.5.4 released
* src/parser.y, src/lexer.l: Added I18N.
* src/handledb.c: Got rid of some unused #includes.
* src/config.c: Minor cleaning.
* src/log.c, src/install.c: In error messages, took function name
out of the string to be translated, to make things easier on
translators.
* src/coldsync.c: main() cleans up better after itself when
something fails. In error messages, took function name out of the
string to be translated, to make things easier on translators.
* src/backup.c: Added logging during backup.
* src/restore.c: Added logging during restores.
* src/archive.c: Added I18N. Got rid of an unused #include.
* src/GenericConduit.cc: Minor cleaning.
* libpdb/pdb.c: Added I18N. Made error messages a tad more
standard, for the benefit of translators.
* libpconn/palm_errno.c: List the error codes next to their
respective messages.
* libpconn/dlp_cmd.c: Added I18N. Fixed most of the potential
buffer overflows.
* libpconn/slp.c, libpconn/padp.c, libpconn/dlp.c,
libpconn/PConnection.c: Added I18N.
* include/pconn/dlp_cmd.h: Added DLPARGLEN_CallApplication_*
constants.
* include/Makefile.in: Fixed the "entering directory `foo'",
"leaving directory `foo'" messages.
* HACKING: Added some notes on I18N.
1999-11-20 Andrew Arensburger <[email protected]>
* README: Minor disclaimer about compatibility.
Added I18N.
* src/config.c: Took out a bunch of obsolete stuff. Added sanity
checks in get_config. Simplified getuid() call in
load_palm_config().
* src/conduit.h: Removed unload_conduit() prototype.
* src/conduit.c: Minor cleaning. Took out some of the old conduit
API stuff that's obviously never going to be used.
* src/coldsync.h: Fixed Connect() prototype. Removed obsolete
parse_args(), load_config(). Added add_to_log().
* libpdb/pdb.c: Fixed pdb_Read: file offsets are supposed to be
unsigned. Took out bogus arguments in calls to DlpWriteAppBlock()
and DlpWriteSortBlock(). get_file_length() now returns unsigned
value, like it says. Minor tidying: explicit 0Ls in a few places.
1999-11-19 Andrew Arensburger <[email protected]>
* configure.in: Added -I${prefix}/include to default CPPFLAGS.
Added check for libintl, for i18n.
* config.h.in: Added stuff for i18n.
1999-11-12 Andrew Arensburger <[email protected]>
* src/parser.y: Mark's patch: can't assign NULL to an enum. Duh.
Added lint support in Makefiles
* src/GenericConduit.cc: Took out the add_to_log() prototype,
since it's now in "coldsync.h".
* include/pconn/dlp_cmd.h, libpconn/dlp_cmd.c: Took out some
unused arguments.
* configure.in: Bumped up version number.
* libpdb/Makefile.in, libpconn/Makefile.in: Added a variable for
the library name.
* Makefile.in: Fixed snapshot tarball name.
* doc/libpalm.texi: Took out all the function prototypes.
1999-11-11 Andrew Arensburger <[email protected]>
* src/install.c: Add to the Palm's log when installing a file.
Fixed a case where an error didn't get cleaned up properly.
* doc/coldsync.8: Added section on configuration file. Rewrote the
section on conduits for clarity; now talks about the new conduit
API. Minor cleaning. Removed a bunch of old crap. Added
~/.palm/backup/Attic to list of files.
1999-11-10 Andrew Arensburger <[email protected]>
* src/GenericConduit.cc: FastSync now uploads dirty local records
and otherwise deals correctly with the local database.
* libpconn/dlp_cmd.c: Fixed a bug that clobbered the username on
the Palm.
* include/pconn/dlp_cmd.h: Fixed a bunch of bad memory references
found by Purify.
* src/parser.y: Set cur_listen to NULL when we're done with it.
This way, it doesn't get free()d prematurely and we avoid all
sorts of nastiness.
* src/lexer.l: Explicitly terminate strings.
* src/coldsync.c: Added "parse" to the list of debugging
facilities. Initialize some 'uinfo' fields in UpdateUserInfo, to
make Purify happy.
* src/Makefile.in: Added stub for Purify, mainly to remind me how
to do it.
* Makefile.in: ${DISTFILES} now includes README. D'oh! Snapshot
tarball now includes version number as well as date.
1999-11-09 Andrew Arensburger <[email protected]>
* configure.in: Incremented version number.
* src/coldsync.c: Got rid of the 'user_fullname' global variable.
* src/Makefile.in: Got rid of some obsolete comments and the
experimental 'parse' target.
* src/parser.y: Use new_{listen,conduit}_block(). Free cur_listen
and cur_conduit at the end, if necessary.
* src/config.c: Got rid of user_fullname global variable.
* src/coldsync.h: Made 'userinfo' globally visible. Added
declarations for new_conduit_block() and free_conduit_block().
* src/backup.c: Make sure backup file name is terminated.
* src/archive.c: Use the precomputed 'archivedir' for constructing
archive file names, instead of finding $HOME manually. Changed
some buffers's sizes to MAXPATHLEN+1 instead of MAXPATHLEN, to
simplify the code.
* src/config.c: The permissions for new directories are 0700,
non-negotiable. If you want something else, there's 'chmod'. Added
new_conduit_block(), free_conduit_block().
* libpconn/dlp_cmd.c: Fixed some potential buffer overflows.
1999-11-08 Andrew Arensburger <[email protected]>
* src/config.c: Added cpp symbol PALMDEV for built-in default Palm
device. Moved get_config up in the file. Added -S, -F -R
command-line flags, removed -u. Bug fix: used to dump core if
~/.coldsyncrc didn't exist. Fixed a misleading trace statement,
made another more explicit.
* src/coldsync.c: Consolidated parse_args and load_config() into
get_config(). Cleaned up a bit.
* doc/coldsync.8: Describe default device.
* libpconn/PConnection.c: Minor tweaking at end of connection.
* src/parser.y: Changed raw fprintf(stderr...) statements to use
PARSE_TRACE.
* src/parser.h: Added PARSE_TRACE.
1999-11-04 Andrew Arensburger <[email protected]>
* src/coldsync.c: Massive reorganization on two fronts: the
conduit API has completely changed, and support for config files.
This code is in flux, so it's a mess.
Got rid of the debugging flags struct, since it didn't really work
after the two libraries seceded from the rest of the code base.
parse_args() and load_config() have now been merged into
get_config(). Some global options no longer exist because of this.
'struct config' is now more generic, and should allow coldsync to
listen on multiple ports. For now, this is still rather ad hoc,
though.
parse_args() was moved to "config.c" before being commented out.
Added stub code to run Fetch and Dump conduits before and after
the main sync, respectively.
Added clearer trace statements, since it's not always easy to tell
whether coldsync has terminated normally, or has dumped core.
* src/coldsync.h: Moved a bunch of stuff into here out of
"conduit.h", for a wider audience, and to simplify some of the
code.
Got rid of the old debugging structure. Added variables
'sync_trace' and 'misc_trace'. Now trace statements work again.
Added 'struct userinfo', for information about the Palm's owner.
Moved 'listen_block' and 'conduit_block' into here, since they're
used throughout the code, not just in the parser. Added 'struct
config' to hold the current configuration (ports to listen on,
lists of conduits, and so forth).
Lots of tentative stuff involving config files and conduits. This
code is a mess right now.
In 'struct cmd_opts', took out a bunch of members that became
obsolete after parse_args() and load_config() got merged into
get_config().
Added outline of the new conduit API.
Added a bunch of function prototypes, having to do with the
changes outlined above.
* src/conduit.h: Settled on a conduit API. Moved a bunch of stuff
into "coldsync.h", mainly structures and stuff that has to do with
configuration; stuff that might be of interest to a bunch of
files.
A bunch of changes to the conduit API; this is currently in flux:
up until now, I'd assumed that a conduit would be a
dynamically-linked object module, but now I'm convinced that it's
better if conduits are external programs. Naturally, this involves
a lot of reorganization, so the code is currently a mess.
Added declarations for new-API functions run_Fetch_conduits() and
run_Dump_conduits().
* src/config.c: Beginning of massive reorganization in the way
configuration is done. Now supports config files instead of just
command-line arguments. Global configuration is now in the
variable 'config'. Information about the Palm's owner is in
'userinfo'
Moved parse_args() out of "coldsync.c" and into here, then
promptly #if 0-ed it out, 'cos it's deprecated: parse_args() and
load_config() have been merged into the new function get_config(),
since the two are so closely related. get_config() populates
'config' with stuff from both the command line and the config
file, as appropriate.
Added new_config() and free_config() to manage configurations.
Added new_listen_block() and free_listen_block(), for convenience.
Added get_userinfo() to get information about the Palm's user.
This also records the user's home directory, so that we can use
either $HOME or the password file entry, as appropriate (up until
now, this has been
(and still is, in places) rather ad hoc).
* src/lexer.l: Got rid of "mystring", which was just for testing
anyway. The string code now allocates a new string and returns it.
Added a bunch of stuff to make the compiler shut up under
different configurations (flex, flex in compatibility mode).
Added 'lineno', so error messages can include the line number.
Took "\n" out of whitespace class for this. Comments no longer
include the "\n" at the end of the line, for the same reason.
Added keywords: "device" and conduit flavors.
* src/parser.y: Changed the grammar around: "listen" block must
now specify the type of connection; "conduit" block must now
specify the conduit flavor. Went from "keyword: value;" style to
"keyword value;", to make the parser easier to write (and also so
I can ignore a lot of error-checking that I don't know whether I
could detect :-) ). Got rid of the "args" directive for conduits,
at least for now.
Added some actual functionality: the parser now actually builds up
a struct with all of the information contained in the config file,
instead of just verifying the file's correctness.
Currently only supports serial "listen" blocks.
Moved the Yacc-specific stuff out of "parser.h" into here. Added a
custom yyerror(). Added parse_config() function, for a friendlier
API. Added magic Emacs lines.
* src/parser.h: Moved 'listen_block' into "coldsync.h". Moved the
stuff dealing with Yacc internals into "parser.y". Added
declaration for 'lineno', maintained by the lexer. Got rid of
'handle_listen()'. Added magic Emacs lines.
* src/conduit.c: Added first drafts of run_Fetch_conduits() and
run_Dump_conduits().
* src/archive.c: Use the GNU-recommended code for including
<string.h>
* libpdb/pdb.c: Added 'pdb_trace' for debugging. pdb_Read() now
barfs if the file isn't seekable.
* libpconn/slp.c: Added 'slp_trace' for debugging.
* libpconn/padp.c: Added 'padp_trace' for debugging.
* libpconn/dlp_cmd.c: Added 'dlpc_trace' for debugging.
* libpconn/dlp.c: Added 'dlp_trace' for debugging.
* libpconn/cmp.c: Added 'cmp_trace' for debugging.
* include/pconn/pconn.h: Added declarations for the *_trace
debugging variables.
* include/pdb.h: Minor cleaning. Added pdb_trace for debugging.
* TODO: Cleaned up the sample code for
including <string.h>
1999-11-03 Andrew Arensburger <[email protected]>
* libpdb/pdb.c: Replaced #include <string.h> with the more
portable GNU-recommended construct.
1999-11-01 Andrew Arensburger <[email protected]>
* configure.in: Make sure there's a working lex.
* libpdb/pdb.c: Took out all references to add_to_log(), since it
really doesn't belong here anyway.
* src/Makefile.in: Make sure ${BINDIR} exists before installing.
* libpdb/Makefile.in: Took out some useless junk. Make sure
${LIBDIR} exists before installing. Also, install library in
${LIBDIR}, not ${BINDIR}. Duh.
* libpconn/Makefile.in: Make sure ${LIBDIR} exists before
installing. Also, install library in ${LIBDIR}, not ${BINDIR}.
Duh.
* include/pconn/Makefile.in: Added escapes for multi-line rules.
Duh.
* include/Makefile.in: JFerg's patch: make sure install directory
exists when installing.
* doc/pdb.texi: Fixed documentation of dmHdrAttrCopyPrevention
flag.
* doc/coldsync.8: Added mention of -f <config_file> option, and
~/.coldsyncrc.
* doc/Makefile.in: Fixed 'install' target to create man*
directories when installing. Added dependencies for .dvi files.
* config.h.in: Added variables for Emacs at end, since can't have
-*- magic at the top.
* Makefile.in: Added ${PREFIX}. Make sure that it exists when
installing.
1999-10-24 Andrew Arensburger <[email protected]>
* src/coldsync.h: Cleaned out some old crap. Added default
location of site-wide config file.
* src/Makefile.in: Took out the 'COMPAT' stuff, since it doesn't
belong here and was making builds barf under Solaris. Split SRCS
into C_SRCS and CXX_SRCS. Added parser.h. Fixed stupid typo. Fixed
Yacc arguments and such. Made 'depend' target work with
'makedepend'.
* libpdb/pdb.c: Hacked up add_to_log() so the library will
compile. Plugged a memory leak.
* configure.in: Make sure ${prefix} is set near the top of the
script. Cleaned up LDFLAGS assignment. Added pedantic flags to
CXXFLAGS, not just CFLAGS. Test for 'yacc' now makes sure that it
finds a working 'yacc'. Fixed check for 'mkid' for systems that
don't have it. Now works with 'mkdep' and 'makedepend'. Added
${sysconfdir} to C defines.
* config.h.in: Added SYSCONFDIR (where to look for the master
"coldsync.conf" file). Cleaned Justin's patch up a bit to shut
egcs up under OpenLinux.
* Makefile.in: Added a target for creating daily snapshot
releases.
1999-10-23 Andrew Arensburger <[email protected]>
* src/Makefile.in: Fixed lex/yacc stuff: made it part of the
distribution. Fixed libraries to work properly.
* include/pconn/Makefile.in: Took out the recursive targets, since
Sun's 'sh' can't deal with a for loop over an empty list.
* config.h.in: Incorporated Justin's patch for making gcc shut up
under Slackware 4.0.
* src/parser.h: Definitions and such for config file parser.
* src/lexer.l: First draft of lexer.
1999-10-21 Andrew Arensburger <[email protected]>
* src/Makefile.in: Cleaned up some old crap. Took Makefile.in out
of ${DISTFILES}. Added lex/yacc stuff. Fixed CPPFLAGS to allow
user additions.
* libpdb/Makefile.in: Added Makefile.in
* libpconn/Makefile.in: Added Makefile.in
* include/pconn/Makefile.in: Added Makefile.in
* include/Makefile.in: Added Makefile.in
* configure.in: Took out conduits/memodump, 'cos it's broken.
* configure.in: Added checks for lex and yacc. Added support for
LEXARGS and YACCARGS, to allow user-specified arguments. Now
creates Makefiles for the various libraries.
* Makefile.in: Took out conduits/memodump, 'cos it's broken.
* Makefile.in: Added conduits/memodump, an experimental conduit.
Fixed messages in ${RECURSIVE_TARGETS} target.
1999-10-18 Andrew Arensburger <[email protected]>
* src/parser.y: First draft of parser.
1999-09-09 Andrew Arensburger <[email protected]>
* src/install.c: Changed syntax of InstallNewFiles(): now can
specify directory from which to install, and whether or not to
delete the files after installation.
* configure.in: Bumped up version number. AC_INIT uses a different
file to find the source, because of the source tree
reorganization.
* README: Added UCB notice for "cfmakeraw.c", per BSD license.
Added compatibility notes.
Major directory rearrangement: the functions that permit
communication with the Palm are now in a separate library,
libpconn. Functions dealing with PDBs are in another separate
library: libpdb.
These libraries should make it easier to create conduits.
The .h files that go with the libraries have been moved to a new
`include' directory. This is mainly to make installation and
compilation simpler. At some later point (e.g., if the libraries
become useful in their own right), it might make sense to move the
.h files back into the library source directories.
* Makefile.in: Added new subdirectories "include", "libpconn",
"libpdb".
* src/conduit.h: Rearranged #includes for the source tree
reorganization. Added a big XXX comment on conduits. This should
go when I pick a conduit API.
* src/coldsync.h: Rearranged #includes for the source tree
reorganization. Moved definition of CARD0 to include/pconn/pconn.h
. Changed prototype for InstallNewFiles(); added prototype for
append_dbentry().
* src/coldsync.c: Rearranged #includes for the source tree
reorganization. Cleaned up some comments. Use new syntax for
InstallNewFiles(). Added appen_dbentry() convenience function.
* src/Makefile.in: Rearranged things to work with the source tree
reorganization: moved a bunch of files out of $(SRCS), $(OBJS) and
$(HEADERS), added stuff to link with the new libraries.
* src/restore.c: Rearranged #includes for the source tree
reorganization.
* src/handledb.c: Rearranged #includes for the source tree
reorganization.
* src/config.c: Rearranged #includes for the source tree
reorganization.
* src/backup.c: Rearranged #includes for the source tree
reorganization.
* src/archive.h: Rearranged #includes for the source tree
reorganization.
* src/archive.c: Rearranged #includes for the source tree
reorganization.
* src/GenericConduit.hh: Rearranged #includes for the source tree
reorganization.
* src/GenericConduit.cc: Rearranged #includes for the source tree
reorganization.
* include/pconn/pconn.h: Created to simplify programs that use
libpconn.
* include/pconn/PConnection.h: Moved from src/.
* include/pconn/cmp.h: Moved from src/.
* include/pconn/dlp.h: Moved from src/.
* include/pconn/dlp_cmd.h: Moved from src/.
* include/pconn/padp.h: Moved from src/.
* include/pconn/palm_errno.h: Moved from src/.
* include/pconn/palm_types.h: Moved from src/.
* include/pconn/slp.h: Moved from src/.
* include/pconn/util.h: Moved from src/.
* include/pdb.h: Moved from src/.
* libpconn/PConnection.c: Moved from src/.
* libpconn/cfmakeraw.c: Moved from src/.
* libpconn/cmp.c: Moved from src/.
* libpconn/dlp.c: Moved from src/.
* libpconn/dlp_cmd.c: Moved from src/.
* libpconn/padp.c: Moved from src/.
* libpconn/palm_errno.c: Moved from src/.
* libpconn/slp.c: Moved from src/.
* libpconn/util.c: Moved from src/.
* libpdb/pdb.c: Moved from src/.
1999-09-04 Andrew Arensburger <[email protected]>
ColdSync announced on freshmeat. Officially moves to beta stage.
* src/log.c: Make add_to_log() less annoyingly verbose.
* src/dlp_cmd.c: Fixed core dump with empty usernames.
* src/PConnection.c: Added a clearer error message.
* src/restore.c: Added copyright statement. #include <strings.h>
where appropriate.
* src/pdb.c: Added copyright statement. Now adds log messages when
uploading a database.
* src/install.c: Added "install.c", with function to upload new
databases as necessary.
* src/dlp_cmd.c: Added copyright statement. Changed "errno" to
"error" where necessary.
* src/dlp.c: Added copyright statement. Changed "errno" to "error"
where necessary.
* src/dlp.h: Added copyright statement. Renamed 'errno' to 'error'
in struct dlp_resp_header, since 'errno' is a preprocessor
function in some implementations.
* src/config.c: Added copyright statement. Added 'atticdir' Print
UIDs in a more portable format. Make sure that
~/.palm/backup/Attic exists. Early version of a test to reassure
user in case egcs whines. Fixed casting problem.
* src/conduit.h: Minor housecleaning.
* src/coldsync.h: Added copyright statement. Added 'atticdir' and
prototypes for new functions. Minor housecleaning.
* src/coldsync.c: Added copyright statement. #include <strings.h>
where necessary. Check for extraneous files in ~/.palm/backup that
aren't on the Palm. Move those files to ~/.palm/backup/Attic. Now
installs new databases in ~/.palm/install. Added find_dbinfo()
convenience function.
* src/archive.c: Added copyright statement. Fixed "Can't open
<filename>" error message so it only appears when appropriate.
* src/Makefile.in: Added copyright statement. Added "install.c"
Commented out the "ignore this warning" thing for config.o, since
it wasn't working properly.
* configure.in: Bumped up version number. Added check for libnsl.
Took out the ugly ad hoc "make gcc shut up" section.
* config.h.in: Simplified the "make gcc shut up" part.
1999-08-26 Andrew Arensburger <[email protected]>
* Added copyright statement everywhere.
1999-08-25 Andrew Arensburger <[email protected]>
* src/Makefile.in: Print a message telling the user not to worry
about a certain known warning.
* src/log.c: Fixed a bug whereby the log wasn't initialized
properly the first time.
* src/util.c: "config.h" was being included twice. Fixed.
* src/pack.c, src/coldsync.h, src/archive.h, src/PConnection.h:
Include "config.h" at the top.
* src/pdb.c: Fixed problem where pdb_DownloadRecords() tried to
allocate 0 bytes for expunged records.
* doc/Makefile.in: Added variables to actually make 'make install'
work (oops!). Added variables for 'makeinfo', 'texi2dvi' and
'dvips', so that things will fail cleanly on systems that don't
have those.
* README: Added long-overdue README file.
* INSTALL: Added installation instructions, from GNU `automake'.
* configure.in: Added checks for 'makeinfo', 'texi2dvi' and
'dvips'.
* Makefile.in: Took out the bit about separate distributions.
* src/GenericConduit.cc: Fixed a memory problem (referencing a
freed memory location).
* configure.in: Added check for libnsl, for Solaris. Cleaned up
ElectricFence code somewhat.
* Makefile.in: Added 'aclocal.m4' to the list of files in a
distribution.
* aclocal.m4: Oops! Forgot to add this back when it was written.
* Artistic: Added Artistic License file.
* src/dlp_cmd.c: Added abortive punpack() call.
* src/pack.c: Added support for PACK_TIME, for reading and writing
'struct dlp_time's.
* src/pack.h: Added PACK_TIME, for reading and writing 'struct
dlp_time's.
1999-08-23 Andrew Arensburger <[email protected]>
* src/dlp_cmd.c: Includes "config.h", to get configure-time
variables. Started fixing a bunch of potential buffer overflows.
* src/coldsync.c: Now can restore from a backup directory. Use
str(n)casecmp() when possible, str(n)cmp() otherwise. Cast uid_t
to 'long' before printing, to pacify pedantic compilers. Cleaned
up a bit. Added "pdb" debugging facility. 'coldsync -v' now lists
some configure-time options.
* src/util.c: Took out remnants of an earlier fix.
* src/pdb.c: Includes "config.h", to get all the configure-time
stuff. Changed SYNC_TRACE() calls to PDB_TRACE() (i.e., "pdb" got
its own debugging flag). Added the pdb_Upload() function.
* src/pack.h: Added. Declares the ppack() and punpack()
convenience functions.
* src/pack.c: Added. Contains the ppack() and punpack()
convenience functions.
* src/PConnection.c: Now includes "coldsync.h", for completeness.
* src/Makefile.in: Fixed up 'autoconf' style variables. Added
'install' target. Added pack.{c,h} to source file list.
* configure.in: Bumped up version number. Add -L$prefix/lib
instead of just -L/usr/local/lib .
* Makefile.in, doc/Makefile.in: Added 'install' target.
1999-08-01 Andrew Arensburger <[email protected]>
* src/slp.c, src/palm_errno.c, src/log.c, src/handledb.c,
src/dlp.c, src/config.c, src/conduit.c, src/cmp.c,
src/cfmakeraw.c, src/backup.c, src/archive.c, src/PConnection.c,
src/GenericConduit.cc: Made sure "config.h" is the first file
included.
* src/util.c: Moved #include "config.h" to the top. Commented out
the #warning statement, since it's not doing anything useful at
the moment, and just causes anal compilers to choke.
* src/slp.c: Added braces to an 'if' statement, to make egcs
happy.
* src/restore.c: New file. This contains Restore(), the function
to restore a directory full of databases (presumably created by
Backup()), and implements the "-r <dir>" option.
* src/pdb.h: Added prototype for pdb_Upload().
* src/dlp.c: In dlp_send_req(), made 'outbuf'
dynamically-allocated, thereby fixing a buffer overrun.
* src/config.c: Clarified a comment.
* src/coldsync.h: Added "pdb" debugging facility. Added prototype
for Restore().
* src/PConnection.c: Added a trace statement.
* src/Makefile.in: Added explicit rules for compiling .c and .cc
files, since not all 'make's use the same symbols and such.
Removed "upload.c", added "restore.c".
* src/GenericConduit.cc: Fixed a list-walking bug involving
referencing freed memory. * doc/Makefile.in: Made it easier to
take the big files (*.ps, *.info) out of the standard
distribution.
* configure.in: Bumped version number. Removed comments for some
stuff that's been done. Added -L/usr/local/lib to LDFLAGS. Added
--with-efence option. Added 'struct dirent' checks. Added some
stuff to try to make things compile cleanly under Linux.
* config.h.in: Added directory-related symbols, WITH_EFENCE for
verbosity. Added first draft of #defines to make things compile
cleanly under Linux and other exotic OSes.
* Makefile.in: Added an XXX comment.
* HACKING: Added some portability recommendations.
1999-07-24 Andrew Arensburger <[email protected]>
* Deleted upload.c. Its intended use was subsumed by pdb_Upload()
in pdb.c.
1999-07-14 Andrew Arensburger <[email protected]>
* Merged changes from "portable" branch: coldsync now compiles
under FreeBSD 3.x, Redhat 6.0, Solaris 2.5, DU 4.0, AIX 4.1.
* src/padp.c: Made select() work under AIX. Moved `#include
"config.h"' to the top, so it'll affect system filess (this may
turn out to be a Bad Thing). Include <sys/select.h>, for AIX.
Include <strings.h>, for AIX.
* src/log.c: Renamed `log' to `synclog', to avoid conflict with
math library.
* src/dlp_cmd.c: Added a check for NULL pointer in a fprintf()
call, and a reminder to do so for another.
* src/config.c: Added emergency definition of MAXHOSTNAMELEN. This
may just be necessary under UMIACS's screwy setup, though.
* src/coldsync.c: Moved `#include "config.h"' to the top, so it'll
affect system header files where necessary. Bumped down the sync
speed to something that an Ultra 1 can handle. Renamed `log' to
`synclog', to avoid conflict with the math library under Solaris.
Solaris's printf() can't print NULL pointers as strings. Fixed the
appropriate printf() statements. Trace statements now go to stderr
instead of stdout. Cast a uid_t to 'unsigned int' instead of
'int', to make Solaris happy. Commented out declarations of
getopt() auxiliary variables: they should be in the header file
anyway.
* src/Makefile.in: Added @LIBS@ to LDFLAGS (D'oh!)
* configure.in: Added checks for AIX, <strings.h>, <sys/select.h>
(needed under AIX).
* config.h.in: Rearranged things a bit. Added a kludge to define
__EXTENSIONS__ under gcc, so it won't fuss about functions not
explicitly named in the ANSI standard.