2001-06-18 David A. Desrosiers <hacker@gnu-designs.com> * Makefile.in: Changed the 'strip -s' target to 'strip' to properly strip the binaries on a SunOS/Sparc target (now that I have one to test code upon!). (David A. Desrosiers) * libsock/padp.c: Relocated some variables inside the DEBUG stanza to eliminate some warnings. (David A. Desrosiers) * libsock/syspkt.c: Same as above. (David A. Desrosiers) * scripts/pback.pl: Add a "-q" (quiet) option to make pback less interactive (for use from scripts), and fix up a few comments that were inadvertently changed from "Pilot" to "Palm" during one of the source cleanup passes (pback did, and still does, work with a ~/Pilot directory, but several of the comments were changed to refer to a non-existent Palm directory). (Carl Jacobsen) * scripts/todolist.pl: Add a "-N" option to display notes attached to ToDo entries, and clean up the usage statement just a bit. (Carl Jacobsen) 2001-06-06 Peter Williams <peterw@ximian.com> * libsock/unixserial.c (s_write): Only free() skb after we access skb->len, not before it. 2001-06-06 David A. Desrosiers <hacker@gnu-designs.com> * Fixed/reverted the mess with the GPL vs. LGPL headers in a slew of files. I made a mistake back in October 2000 and put the wrong banners in the wrong files. * tools/Perl5/Artistic: Removed, it's not used anywhere * libsock/dlp-backup.c: Removed, redundant file 2001-05-28 David A. Desrosiers <hacker@gnu-designs.com> * tools/Perl5/Pilot.xs: Fixed tabbing out of order 2001-05-25 David A. Desrosiers <hacker@gnu-designs.com> * reminders.c: Cleaned up ANSI warning about newlines [trigdate] (David A. Desrosiers) * dlpsh.c: Fixed a bug with 81 \n's instead of 81 -'s, removed (David A. Desrosiers) * dlpsh.c: Addition of 'userID = %08lx (%i)', etc. fixes 2001-05-25 David A. Desrosiers <hacker@gnu-designs.com> * include/md5.h: Renamed md5.h to pi-md5.h to be more in line with the current include/* naming scheme. * tools/Perl5/README: cleaned up the README to make it more current and less threatening * tools/Perl5/test.pl, tools/Perl5/dump.pl: chmod 0755 * tools/Perl5/dump.pl: Fixed shebang to be a bit more portable (recommended by the perl newsgroups and the Camel book) 2001-05-25 David A. Desrosiers <hacker@gnu-designs.com> 2001-05-24 * tools/Perl5/Pilot.xs: Fixed a typo in 'creatDate' (Hadmut Danisch) * install-hinote.c: Fixed to include detection of notes > 28k (David A. Desrosiers) * iambicexample.cc: Poked around and added the banner, removed static file declaration path (still static for now, need to install AllTime and test it out) * More documentation fixes, rolled back out of gtk-doc for now, until we can agree on a portable format to represent these docs in (kudos to jpr for the work and the idea) (David A. Desrosiers) * Closed 5 bugs listed at Sourceforge (David A. Desrosiers) 2001-05-23 JP Rosevear <jpr@ximian.com> * libsock/sync.c: Document all public and private functions (the public ones in much more detail * libsock/dlp.c: Ditto * libsock/unixserial.c: ditto * libsock/winserial.c: ditto (so_changebaud): make static * libsock/os2serial.c: ditto * libsock/serial.c: ditto * libsock/slp.c: ditto * libsock/cmp.c: ditto * libsock/datebook.c: ditto * libsock/address.c: ditto * libsock/util.c: ditto * libsock/inetserial.c: ditto 2001-05-22 David A. Desrosiers <hacker@gnu-designs.com> * Makefile.in/Makefile.os2: Fixed the "double-header" install problem with the Makefile in the install stanza. Fixed the install-strip option, removed it, and pulled it into the install stanza, put in the proper order. It was backwards before. Added pilot-prc back in. Not sure how it got dropped out. (David A. Desrosiers) * libsock/md5.c: Implemented md5.c and md5.h for the new password authentication scheme. (David A. Desrosiers) * include/md5.h: Same as above, legacy-free algorithm used here. (David A. Desrosiers) * dlpsh.c: Fixed the visual layout of 'df' (David A. Desrosiers) * pilot-prc: Minor fixes to get it to compile cleanly (missing protos, etc.) (David A. Desrosiers) * libsock/winserial.c,libsock/serial.c: Error handling fixes on Win32 (Oliver Schmidt) * pilot-xfer.c: Possible fix for 'time' on Next Openstep, commented out, need to test. (Juergen Sell) 2001-05-20 David A. Desrosiers <hacker@gnu-designs.com> * Started the documenting of every function in the code, more cleanups. 2001-05-15 David A. Desrosiers <hacker@gnu-designs.com> * pilot-addresses.c: Fix to make it possible to store the adresses to csv from palm, edit them in gnumeric, and then upload them into palm again. (Field while be terminated by "," OR "\n") (Thomas Guettler) 2001-05-13 David A. Desrosiers <hacker@gnu-designs.com> * memos.c: Added an additional fix to the -t handling in the original patch to allow for a regular expression to be used in place of a simple string. (Tamito KAJIYAMA) * "Don't Diff This Codebase". Yes, billions of little formatting and indenting tweaks here and there in preparation for a large transplant/migration to the DLP 1.3 codebase. More to be added in here soon, every funtion documented, every struct explained. Working on the release, little bit more code cleanup to go. * Makefile.in: manpage ${srcdir}/man fix (John Marshall) 2001-05-09 David A. Desrosiers <hacker@gnu-designs.com> * pilot-schlep.c: Updated the help verbage to be a bit more verbose about what the tool actually does. (Walter Koch, Voytek Eymont) * man/pilot-link.7: Updated verbage to reflect change in pilot-schlep, also repaginated page to 80 cols. (David A. Desrosiers) * man/pilot-addresses.1: Repaginated to 80 cols. (David A. Desrosiers) * ccexample.cc: Yes, it's just a sample app, but all of this should compile cleanly. unsigned char* packed = (unsigned char*)mai.pack(); fixes where required, and delete[] fixes also. (David A. Desrosiers) * Makefile.os2: Temporary fix for compilation buglet, need to revisit this when I get a proper OS/2 workstation built here for testing. Credit for this goes to several people on the os2-pda mailing list (John Poltorak, Bob Wittig, others. Thanks guys!) * dlpsh.c: Cleaned up the 'df' function again, no more eye-candy. Need to clean up argument parsing here. (David A. Desrosiers) 2001-04-29 David A. Desrosiers <hacker@gnu-designs.com> * MAJOR change to the codebase, everything was properly indented with 8-character tabs, bracing, brackets, etc. WARNING: Diffing this code will result in a HUGE diff. (David A. Desrosiers) * Begun weeding out all occurences of gets(), strcat(), sprintf(), and similar dangerous functions from the code where they appeared. (David A. Desrosiers) * memos.c: Added abilility to select the title of the memo when sync'ing. (Tamito KAJIYAMA) * memos.c: Escaping of ':' in OS/2 filenames (Bob Wittig) * reminders.c: strncpy(addr.pi_device, device, sizeof(addr.pi_device)); These type of fixes will be applied the whole sourcebase soon. (David A. Desrosiers) 2001-03-30 JP Rosevear <jpr@ximian.com> * libsock/Makefile.in: version should be 4.0.0 because the old sync interface was removed and the new one added * libsock/sync.c (sync_MergeFromPilot_fast): Free the record if it wasn't added to the queue not vice versa (sync_MergeFromPilot_slow): ditto 2001-03-14 JP Rosevear <jpr@ximian.com> * libsock/Makefile.in: set the .so version to 4:0:1 as per libtool rules 2001-03-12 JP Rosevear <jpr@ximian.com> * scripts/tarball.c (main): fixes to make it work again, what a horrible hack 2001-03-12 JP Rosevear <jpr@ximian.com> * libsock/sync.c (open_db): handle the secret flag (sync_CopyToPilot): use open_db (sync_CopyFromPilot): ditto (sync_MergeFromPilot): ditto (sync_MergeToPilot): ditto (sync_Synchronize): ditto * scripts/tarball.c: name the tarball properly * Makefile.in: make make dist a little better * include/pi-sync.h: add secret field * Makefile.in: remove old dist tarball and reflect new name 2001-03-01 John Marshall <john_marshall@palm.com> * configure.in (AC_OUTPUT): Add tools/empty to AC_OUTPUT so that it isn't asked to create more than one parent directory at once. * empty.in: New file. * Makefile.in: Delete generated "empty" file in distclean. * configure: Regenerate. 2001-03-01 David A. Desrosiers * Addition of CopyPrevention and Stream flags to various interfaces (John Marshall) Added pi_file_find_resource_by_type_id and pi_file_read_resource_by_type_id to pilot-file.c (John Marshall) General code cleanups and housecleaning 2001-02-28 David A. Desrosiers * kittykiller.c: Fixed ^M madness man/install-memos.1: More ^M madness. (Carl Jacobsen) man/*: Various manpage updates and edits. Updated the location of the pilot-link homepage in relevant places. s/USR Pilot/Palm Computing Device/ also pilot-xfer.c: fixed a reference to a non-initialized variable in Restore() (Tamito KAJIYAMA) tools/Python/pdapilot.py: fixed a typo in a member variable name 2001-02-25 David A. Desrosiers * memos.c: Fixed the detection of the %ENV for PILOTPORT and the device name from pi_device to argv[1] (Bob Wittig) pilot-xfer.c: Fix for reporting the databases not found db[dbcount]->name (Bob Wittig) pilot-addresses: More PILOTPORT detection fixes, also no longer ignoring the quiet flag if passed to the app (Bob Wittig) libsock/Makefile.os2: Fixes for pisock.def man/install-memo.1, man/pilot-xfer.1, man/pilot-addresses.1: Manpage updates (Bob Wittig) sync-plan.PL: Added capability to authenticate to the Netplan Server (Mark Peletier) 2001-02-17 David A. Desrosiers * aclocal.m4: Fixed the BSD nm test (again). How many times do we have to keep fixing this?! * sync-plan.PL: s/Pilot/Palm where required. No breakage. * dlpsh.c: Fixed the double "EXITING" error. Prettied up the 'mem' function and added kbytes. Removed the 'exit' option. Changed the layout of 'help'. Fixed some of the formatting. Lots more to do to this binary. 2001-01-28 David A. Desrosiers * Makefile.in: Removed '-FOO' from the tcl/itcl testing. configure.in/configure 2001-01-23 JP Rosevear <jpr@ximian.com> * Makefile.in: Add a dist target * autogen.sh: add for packaging systems 2001-01-23 JP Rosevear <jpr@ximian.com> * libsock/Makefile.in: update depends * Makefile.in: Don't specifically include the header object file, its already in the library and breaks --disable-static flag, update depends 2001-01-16 JP Rosevear <jpr@ximian.com> * libsock/sync.c (sync_CopyPilotRecord): copies a pilot record (sync_CopyDesktopRecord): copies a desktop record (add_record_queue): add a pilot side operation to the queue (free_record_queue): free a queu of operations (delete_both): fix incorrect error check (sync_record): Instead of actually doing pilot mods, add an op to the queue (sync_MergeFromPilot_process): Process the items in the queue (sync_MergeFromPilot_fast): go back to processing the records as they come in and processing the queue at the end (sync_MergeFromPilot_slow): ditto (sync_MergeToPilot_fast): process queue at the end (sync_MergeToPilot_slow): ditto * include/pi-sync.h: Add pilot and desktop record copy protos 2001-01-12 JP Rosevear <jpr@ximian.com> * include/pi-sockaddr.h.in: Up the device name limit to 255 2001-01-12 JP Rosevear <jpr@helixcode.com> * libsock/dlp.c (dlp_ReadSortBlock): Expect 2 bytes, fixes bug pointed out by Matthias Hessler <Matthias.Hessler@t-online.de> 2001-01-11 JP Rosevear <jpr@helixcode.com> * read-ical.c (main): use ii instead of i to index repeat days in datebook struct, fixes bug pointed out by Matthias Hessler <Matthias.Hessler@t-online.de> 2001-01-05 JP Rosevear <jpr@helixcode.com> * libsock/datebook.c (pack_AppointmentAppInfo): Fix bug pointed out by Matthias Hessler <Matthias.Hessler@t-online.de> where i rather than len was being checked * libsock/sync.c (sync_MergeFromPilot_slow): Build a list of pilot records before iterating because its not valid to edit in place during the index loop 2000-12-21 JP Rosevear <jpr@helixcode.com> * include/pi-sync.h: new prototypes * libsock/sync.c (sync_FreePilotRecord): util function for pilot records (sync_FreeDesktopRecord): ditto for desktop records (free_pilot_record_list): free the linked list (sync_record): Correct sync logic errors (sync_MergeFromPilot_fast): Build a list of the pilot records before iterating because its not valid to edit in place during the get mod record loop 2000-12-20 JP Rosevear <jpr@helixcode.com> * libsock/sync.c (sync_CopyToPilot): Pass BOTH to store_record_on_pilot so that the pilot id is set on the desktop 2000-12-19 JP Rosevear <jpr@helixcode.com> * libsock/util.c (convert_FromPilotChar): Fix implementation (convert_ToPilotChar): ditto 2000-12-19 JP Rosevear <jpr@helixcode.com> * libsock/util.c (convert_FromPilotChar): * include/pi-config.h.in: List HAVE_ICONV * configure.in: Check for an iconv implementation to do charset conversion * libsock/util.c (convert_ToPilotChar): Convert to pilot character set (only does CP1252 devices right now) (convert_FromPilotChar): Code to convert from pilot character set * include/pi-util.h: New routines to convert to pilot character set 2000-12-08 JP Rosevear <jpr@helixcode.com> * libsock/sync.c (sync_record): When pilot record is archived and changed and the desktop record is changed and the changes are not identical, make sure the pilot record to be archived gets a new pilot id so it is not overwritten by store_record_on_pilot 2000-12-07 JP Rosevear <jpr@helixcode.com> * libsock/sync.c (sync_record): When the pilot record is archived the desktop record is deleted, make sure to archive the record. 2000-12-07 JP Rosevear <jpr@helixcode.com> * libsock/sync.c (sync_record): When the pilot record is changed and archived and the desktop record is changed and the changes are not identical, keep the pilot record - don't delete it. 2000-11-29 JP Rosevear <jpr@helixcode.com> * libsock/sync.c: Add error checking for all callbacks and dlp calls. Add writable checks so the merge to pilot and merge from pilot only affect the pilot and desktop records respectively. 2000-11-28 JP Rosevear <jpr@helixcode.com> * doc/syncabs.sgml: Update design docs 2000-11-28 JP Rosevear <jpr@helixcode.com> * libsock/sync.c (store_record_on_pilot): the prepare callback now provides the pilot record structure to be filled out, free prepare is no longer used - this is because the pilot record struct can never be extended properly and this reduces the work done. Rename from store_record_on_palm. * include/pi-sync.h: Remove free prepare callback and update prepare callback 2000-11-03 David A. Desrosiers * Makefile.in: Oops, my bad. $(PIXDIR) fix. 2000-10-31 JP Rosevear <jpr@helixcode.com> * libsock/sync.c (sync_record): use ArchiveRecord to set/unset records "archiveness" and use SetStatusCleared to avoid double syncing records. * include/pi-sync.h: Remove AddArchive and DeleteArchive, add SetStatusCleared and ArchiveRecord. 2000-10-30 David A. Desrosiers <hacker@linuxcare.com> * dlpsh time macro change [John Marshall] * Perl5 error output update [Larry W. Virden] * install-datebook.c: fixed appointment.event errors with entries that had zero time. [Martin Schwenke] * Makefile.in: Updated all Makefile.in to reflect new paths for $(LANG) under tools. 2000-10-30 JP Rosevear <jpr@helixcode.com> * include/pi-sync.h: Replace AddArchiveRecord and DeleteArchivedRecord callbacks with the set archive status callback. * libsock/sync.c (store_record_on_palm): Do some proper result checking for errors. (sync_record): Use new set archive status callback which makes the semantics such that the implementor can choose several implementations and preserve continuity. Replaces AddArchiveRecord and DeleteArchiveRecord. 2000-10-28 <jpr@helixcode.com> * Makefile.in: install pix dir properly 2000-10-28 <jpr@helixcode.com> * tests/.cvsignore: shush * libcc/.cvsignore: ditto 2000-10-28 <jpr@helixcode.com> * Makefile.in: Re-run make depend to generate correct dependencies * include/.cvsignore: shush * tools/Java/.cvsignore: ditto * tools/Tcl/.cvsignore: ditto * tools/Python/.cvsignore: ditto * tools/Perl5/.cvsignore: ditto 2000-10-28 <jpr@helixcode.com> * libsock/sync.c (sync_MergeToPilot_slow): Manually set the id of the record (sync_MergeToPilot_fast): ditto 2000-10-20 David A. Desrosiers <hacker@linuxcare.com> * Cleaned up some more "ascii art". Nice small tight header now. * Moved the $(LANG) to their own ./tools dir in preparation for the autoconfiscating of pilot-link. * configure.in fix for Debian's broken Tcl include path mess. Still not perfect. * Beginning the merge of install-????.c into pilot-install -foo. 2000-10-18 David A. Desrosiers <hacker@linuxcare.com> * s/port = argv[1]/device = argv[1]/ * Yet more string fixes, trying to get these things to act and look similar. * Took out the \007 dreck. Bad linux, bad.. * dlpsh.c: Fixed a non-ANSI_C compliant %G macro in the time_fn function, replaced with a hack with 20%g. Throws a warning about 2 digit century, but the '20' sneaked in front fixes that (uuugly!) * s/socket_descriptor/sd/ * Commented out the OS2 declarations until we can *PROPERLY* test for $(HOST) * Small buglet in PILOT_LINK_PATCH fixed * Added a -pre3 declaration to pi-version.h * Simple deprecation warning in pilot-mail hinting at it's impending removal. * More ANSI-C'ification (gotta love -pedantic) 2000-10-14 David A. Desrosiers <hacker@linuxcare.com> * dlpsh.c: Added a 'time' option to sync unix desktop time and date to Palm. * Makefile.in: Added install-strip stanza * parsedate.y: Added <stdlib.h> to stop bison errors it was throwing related to free() * Added some typedefs to include/pi-mail.h * Updated TODO, README * Cleaned up the pi-header.h mess. * More indenting cleanups. * Java Makefile.in fix for the ln syntax and a bad doConstants path. 2000-10-11 JP Rosevear <jpr@helixcode.com> * libsock/sync.c: Unconditionally close the database after use. The slow/fast flag is now passed back via the Pre callback (sync_record): Reflect the fact that the dirty and deleted pilot record flags are not mutually exclusive. (store_record_on_palm): When storing, 0 the flags. 2000-10-10 JP Rosevear <jpr@helixcode.com> * libsock/sync.c (sync_MergeToPilot_slow): Only try and obtain a pilot record if there record id set. 2000-10-08 David A. Desrosiers <hacker@linuxcare.com> * dlpsh.c: Added a mem function to determine the amount of ROM/RAM on the device, and ROM/RAM free. Only works w/Card 0 * Added all appropriate FSF/GPL pointers in the headers of the files which were missing them. * confiugre: Fixed BSD nm test * libsock/sync.c (sync_record): Use ReplaceRecord callback. There can be a subtle difference between add/delete and replace. (sync_MergeToPilot_slow): Calculate flags for records during a slow sync (sync_MergeFromPilot_slow): ditto * include/pi-sync.h: Add ReplaceRecord callback 2000-10-08 JP Rosevear <jpr@helixcode.com> * libsock/sync.c (sync_MergeToPilot_fast): Only try and obtain a pilot record if there record id set. 2000-10-08 JP Rosevear <jpr@helixcode.com> * .cvsignore, libsock/.cvsignore: Shush 2000-10-08 JP Rosevear <jpr@helixcode.com> * include/pi-sync.h: Reorder SetPilotID args * libsock/sync.c (sync_CopyFromPilot): Break out of loop if returned record is null (we're done) (sync_CopyToPilot): ditto (store_record_on_palm): Reorder SetPilotID args 2000-10-08 JP Rosevear <jpr@helixcode.com> * libsock/sync.c (sync_CopyToPilot): Pass the sync handler to close_db like we're supposed to (sync_CopyFromPilot): ditto (sync_MergeFromPilot): ditto (sync_MergeToPilot): ditto (sync_CopyFromPilot): Make sure the pre call occurs before the for each call 2000-10-08 JP Rosevear <jpr@helixcode.com> * libsock/sync.c (sync_MergeFromPilot_slow): Only free the match if one was actually found (sync_MergeFromPilot_fast): ditto (sync_MergeToPilot_fast): Break out of the loop if the returned record is null (we're done) (sync_MergeToPilot_slow): ditto 2000-10-06 JP Rosevear <jpr@helixcode.com> * include/pi-sync.h: Some renaming, add pre and post sync callback struct members. * libsock/sync.c: Some renaming. Add pre and post sync callbacks. (close_db): Don't just close the db, clean it up and reset the sync flags. 2000-10-04 JP Rosevear <jpr@helixcode.com> * s/PalmRecord/PilotRecord/ * s/PalmUser/PilotUser/ 2000-09-28 JP Rosevear <jpr@helixcode.com> * libsock/sync.c (sync_Synchronize): Do a full blown sync (sync_MergeToRemote): Sync desktop records to pilot. (sync_MergeToRemote_slow): Implement slow sync of above (sync_MergeToRemote_fast): Implement fast sync of above (sync_MergeFromRemote): Sync pilot records to desktop (sync_MergeFromRemote_slow): Implement slow sync of above (sync_MergeFromRemote_fast): Implement fast sync of above (sync_CopyFromRemote): Copy pilot records to desktop (sync_CopyToRemote): Copy desktop records to pilot (sync_record): Sync a desktop and pilot record (store_record_on_palm): Utility routine * include/pi-sync.h: Rewrite of header for generic sync algorithm * include/pi-macros.h: Include <time.h> for struct tm * include/pi-dlp.h: Make the DLP_BUF_SIZE macro available May 10, 1999 Tilo Christ 0.9.3 Fixed Win32 support. Applied patch by John Franks to inet.c Apr 26, 1999 Kenneth Albanowski 0.9.3 Upgrade configure to use autoconf 2.13. Installed the rest of Tilo's patches. Apr 4, 1999 Kenneth Albanowski 0.9.2 Please note a significant (but minor) change: the license for the hinote code in the pisock library has been changed to LGPL. In the previous release (0.9.1), it was GPL, which would prevent the library from being used in an LGPL manner. If you wish to use the pisock library with the LGPL license, please base your work on 0.9.2. Rewrote pilot-dedupe in a more sensible manner. (New version could have some bugs.) Added Tilo's changes to support "high" baud rates with PILOTRATE environment variable. Say "PILOTRATE=H115200" to specify a high rate. PILOTHIGHRATE variable is now ignored. Added Tilo's pi_setmaxspeed() function, and added initial pi_getsockopt() support to retrieve current speed. Changed Python detection to support 1.5.1 installation. Jan 14, 1999 Kenneth Albanowski 0.9.1 Hi-Notes support (in 'hinotes' and 'install-hinote', courtesy of Bill Goodman, and Michael Bravo.) Install-memo improvements. read-ical improvements (?) regarding secret records and alarms. Fixed pi-getrom's decoding of ROM version. (3.0 units should now download complete ROM image.) Installation of databases fixed to allow uploading of databases with zero-length resources. Direct support for "high" (nominally unsupported) baud rates via PILOTHIGHRATE environment variable. Aug 23, 1998 Kenneth Albanowski 0.9.0 Please note a significant change: the license for the pisock library, the C++ libary, and the Perl, Python, Tcl, and Java bindings has been changed from the GPL (GNU Public License) to the LGPL (Library GNU Public License). For more information, please see the files COPYING.LIB, and COPYING. If you have any reason to disagree with this change, please contact me as soon as possible. I have attempted to verify with all affected parties that this change is acceptable. This license change applies starting with release 0.9.0 of pilot-link. This change is not retroactive, and previous releases (0.8.13, and before) are still available, with all parts under the GPL. In other news: pi-getrom fixed to get 2 Meg of ROM on a 3.0 device (by working around a bug in PalmOS 3.0.) read-todos modified to work with both a ToDoDB.pdb file (as downloaded from the device), as well as the database on the device. Tcl binding changed to remove "Pilot" from name. (I'm only changing Tcl at the moment, because nothing could possibly be relying on it.) May 11, 1998 Kenneth Albanowski 0.8.13 This version is an unchanged re-release of 0.8.12, which was not released properly. (0.8.12 archives actually contain 0.8.11, mea culpa.) May 7, 1998 Kenneth Albanowski 0.8.12 Not much work has gone into pilot-link since the previous release, the main changes being several patches that have been applied: David Warren's <dsw@comfortably-numb.engr.sgi.com> fix for reminds.c. Dag Nygren's <dag@newtech.fi> tickles for sync-plan. Russell Nelson's <nelson@crynwr.com> patches for pilot-mail. Bodo Bellut's <bodo@garfield.ping.de> patch for pi-file to better catch errors. Jay Sekora's <js@aq.org> improved memos and pilot-addresses. Rik Harris's <Rik.Harris@fulcrum.com.au> patch to get pi-port working. Fixed libsock/socket.c to not crash on unbound/unconnected socket. Added Rui Oliveira's <rco@di.uminho.pt> MoneyManager code. Removed Java bin build directory stuff, it was broken. Also, I've decided that getopt() was a complete loss where pilot-xfer is concerned, so it now has manual argument processing. I rather expect the new code is buggy, too, but at least it will be the same bugs for everyone. Lastly, I've added the latest release of libtool, 1.2. This should fix some problems, but might well cause others. Let me know, of course. Feb 27, 1998 Kenneth Albanowski 0.8.11 Sorry, no time for detail: - Java build changed, to store executables in separate directory - Minor patch to Perl binding - Major patch to Python binding - A few OS/2 improvements Note: I've seen an apparent problem with glibc2's getopt, but this is not confirmed. Dec 20, 1997 Kenneth Albanowski 0.8.10 Library changes: - Bug affecting address book sorting corrected Utility changes: - pilot-xfer mistake corrected (-b acted like -u). Dec 14, 1997 Kenenth Albanowski 0.8.9 Configuration changed: - added Python configuration patches by Bill Janssen <janssen@parc.xerox.com>. Library changes: - Modified emulation of DLP NextRecInCat function. Utility changes: - added GNU (glibc2) getopt, changed pilot-xfer to use long options. - install-memos getopt tweak - added patches by Jay Sekora <js@aq.org> to improve memos - added Ian Goldberg's sensible name escape patches for pilot-xfer (so that a database with a slash or equals in the name is translated to something safe.) - added slightly modified patches by Simon Burge <simonb@telstra.com.au> so that pilot-xfer does not have to back up the entire Pilot each time. (added sync and update modes). Dec 7, 1997 Kenneth Albanowski 0.8.8 Configuration changes: - add sa_len member to pi_sockaddr, to match OS - include compatability code for putenv Library changes: - Modified PADP code to better cope with the timeout response of PalmOS 2.0. (The result is _not_ faster response, but less confusion.) Utility changes: - pilot-debug has minimal feature support - install-memo has several new options, provided by Paul Traina <pst@Shockwave.COM>. Oct 7, 1997 Kenneth Albanowski 0.8.7 Configuration changes: - install .hxx headers - use $(MAKE) instead of make - added latest libtool-1.0c Utility changes: - pi-nredir deals with missing putenv or setenv Perl 5 binding changes: - quote "index". - change usages of errno as a member to errnop - fix some leaking newRV()'s. Sep 14, 1997 Kenneth Albanowski 0.8.6 Configuration changes: - skip sys/select.h if it is not available Utility changes: - added pi-getram utility to fetch RAM image. (Use -c switch if fetching for Copilot). - added holey files to pi-getrom All: - corrected miscellaneous C warnings Documentation changes: - added program list to README Sep 6, 1997 Kenneth Albanowski 0.8.5 Configuration changes: - added patch for libtool 1.0b to prevent extraneous 'n's. Utility changes: - pilot-debug adjusted for release version of Tcl 8.0. - sync-plan massively updated to support syncing multiple plan database against a single Pilot, support for more then one Pilot, working repetitions, general bug fixes, etc. Perl 5 binding changes: - Several bug fixes by Bharat. Aug 31, 1997 Kenneth Albanowski 0.8.4 Configuration changes: - libtool 1.0b included (which means you can say './libtool gdb pilot-mail') - 'dubious' directory added Utility changes: - Added sync-plan module to do complete Pilot<->Plan synchronization. Perl 5 binding changes: - Several bug fixes by Bharat. Aug 24, 1997 Kenneth Albanowski 0.8.3 Perl 5 binding changes: - Default attributes of new records. - Generic typedef for all pilot-link char* casts. - Added SvOK and SvTYPE checks to all (?) SvRV extactions. - Rewrote unpacking technique to deal with failed unpackings (due to deleted records.) - Rewrote packing technique to deal with deleted records (produce empty result). - alarm->units returns text, not numbes. - Fixed shadowing variable in getNextModRecord. Aug 17, 1997 Kenneth Albanowski 0.8.2 Utility changes: - read-ical: still more oops. - pi-csd: scrap ifr_netmask. Aug 9, 1997 Kenneth Albanowski 0.8.1 Configuration changes: - A few tweaks for Java and OS/2. Pisocket library changes: - For datebook packer code: repeatOn split into repeatDay and repeatDays. - Fixed pi-file crash on records larger then 64K. (Note that the Pilot itself cannot deal with records larger then 64K!) - pi-csd now tries to cope better with missing ifr_netmask. - pi-nredir: setenv scrapped. - pilot-mail: Added x-mailer header, and avoid preprending dashes to signature if it already has them. - pilot-xfer: tried to fix optind. Again. - read-ical: oops. Utility changes: - Added installdatebook and ietf2datebook, both provided by Tero Kivinen <kivinen@ssh.fi> Java binding changes: - Now compiles with JDK 1.1. - All standard Pilot databases support with complete packer/unpacker support. - File access added. - All enumeration record values changed over to enumeration objects. - All bit-fields replaced with individual items. Perl 5 binding changes: - All enumeration record values changed over to text values. - Support for mail preferences added. - Expense database supported. - All bit-fields replaced with individual items. - Open command accepts text mode ("rxws") as well as numeric. Python binding changes: - All enumeration record values changed over to text values. Aug 4, 1997 Kenneth Albanowski 0.8.0 Configuration changes: - Added dependancy checking to utilties. - Touched up OS/2 configuration slightly. - Added detection of uname and other SunOS (or was it Solaris?) foibles. Pisocket library changes: - Changes to nearly all structure definitions, though these are mostly just changes to the names of members. The names have been changed to follow a common naming scheme ("thisIsAMethod", "ramSize", etc.), to remove chopped words, and to let the interpreter bindings use the same member names as the C code. The new names are frozen (I hope) and will not change again. - Category information has been broken out of the appInfo structures into a separate structure, since it was producing needless duplicated code. - All of the database record packing code had been tuned and tested, and now pay attention to their arguments. In particular, both the packers and unpackers return how many bytes were used (or zero if the buffer wasn't long enough), and the packer will return the desired buffer length if it is passed a buffer address of zero. These changes allow programs to let the packer calculate how much buffer space should be allocated. - Version number of shared library bumped up to indicate incompatible changes. Test code changes: - Added test code to check all packers and unpackers for proper operation. Utility changes: - Added pi-getrom program to fetch a Pilot's ROM through RPC calls. Be careful, this program _could_ cause your Pilot to lock up, so back up first. But I'd love to hear about any problems. - pi-csd tries to get the host name via uname if gethostname isn't available. - Added backlight support to remote UI in pilot-debug. - Added Ian G.'s pilot-debug patches to support pasting text into the remote UI. - All utilities modified to match changes to pisocket library. Java binding changes: - Dlp exceptions now contain (through hard effort) the Dlp error value - Use slightly less deprecated Date interface (bleagh!) - Structures modified to match new definitions. - Added resetNext & callApplication methods. - Adapted packers to new structures -- broke off categories into a subclass of AppBlock. - Added support for all standard databases except Expense. - Changed toString mechanism to allow superclasses to build up description. - Added newRecord, newResource, newAppBlock, newSortBlock and newPref methods. - Java structures and methods are freezing if not frozen. Perl 5 binding changes: - Structures modified to match new definitions. - Perl structures and methods are freezing if not frozen. - Renamed methods to match Java binding ("likeThis", "ramSize", "getRecord", etc.) Python binding changes: - Structures modified to match new definitions. - Python structures and methods are freezing if not frozen. - Renamed methods to match Java binding. Jul 26, 1997 Kenneth Albanowski 0.7.6 Configuration changes: - No more complaints if the Java Development Kit isn't installed. - sockaddr.sa_len member is detected (for pi-csd) Pisocket library changes: - Support for Palm's TCP/IP NetSync(tm) has been added. To use this, give a program like pilot-xfer a port of '.' (a single period). You will also need to run (perhaps in the background) pi-csd, with its settings configured to match the PC NetSync(tm) settings on your PalmPilot(tm). - Leak of laddr/raddr members fixed. Utility changes: - Added pi-csd program to allow network synchronization. This program must be running for your computer to accept NetSync(tm) connections from a PalmPilot(tm). You must of course also run whatever utility or synchronization program you want the PalmPilot(tm) to connect to. - Added pi-nredir to allow a normal (or network, for that matter) connection to be redirected over the network to pilot-link or the PalmPilot(tm) Desktop. - Read-ical patches by Ian G. applied, allowing use of a default port, and a method of hiding the text of datebook entries. Java binding changes: - Todo application supported. - You can now open a database using an instance of Pdapilot.Database instead of a database name. Jul 22, 1997 Kenneth Albanowski 0.7.5 Configuration changes: - Uninstalled binaries should better cope with symlinks or moving their directory. - The Java Development Kit is automatically detected. Build changes: - Man pages probably can be installed now - Added Mike Jarabek's latest OS/2 patches, which should allow a shared libpisock dll to be built and used. Pisoket library changes: - Mail preferences renamed from "MailPrefs" to "MailPref1". - Corrected bug in retrieving NetSync info if fields were empty. Utility changes: - Modified pilot-undelete slightly to match new Perl5 module. - Added pilot-xfer patches (slightly modified) by Christopher Chan-Nui <channui@austin.ibm.com>. These allow default port via PILOTPORT, and multiple files/db's with a command. Java binding changes: - New! All of the libpisock functionality is accessible from the Java interpreter. The only missing parts are RPC, CallApplication, and the packers other then Memo. Perl 5 binding changes: - Completely revised record storage mechanism uses objects to describe records, resources, appblocks, sortblocks, and prefs. All current code using the Perl5 module will need to be rewritten, though the changes will probably be minimal. The upshot of this change is that record packing/unpacking is now automated. Python binding changes: - Preferences may be retrieved from an open DB. Jul 13, 1997 Kenneth Albanowski 0.7.4 Configuration changes: - Integrated libtool 1.0 (thanks, Gord!) - Automatic detection of GNU readline 2.0 and 2.1 (or later). - libtool removed entirely from C++ section - Itcl automatically detected, and tcl/tk from an itcl installation will be detected. Itcl is not currently used, however. - Adjusted to (re)support OS/2 compilation. - Revised OS/2 makefiles by Mike Jarabek. Pisocket library changes: - Fixed up a few headers to use PI_ARGS. - Added compareTm function to compare tm's. Utilities: - pilot-debug can now automatically utilise GNU readline 2.0 or 2.1 for decent line-editing support, and in theory anything past 2.1 should work as well. - pilot-mail includes patches by Diego Zamboni <diegoz@labsec.Corp.Sun.COM> to support reading of MH mail folders. (Note: this code does not support file or folder locking, or non-contiguous message numbers.) Perl 5 binding changes: - various dlp constants are now exported by PDA::Pilot. - CompareTm function exportable which takes two tm style listrefs and returns <0, 0, or >0. - Fixed nasty bugs on packing appointments with alarms (alarm wouldn't trigger properly), and on appointments without descriptions (Datebook would crash). - Modified typemap so module will not fail on earlier versions of Perl. Python binding changes: - SetRecord now takes an optional second argument. If a non-zero integer, the record will not be packed, and only the "raw" attribute will be used. Tcl binding changes: - Large chunks rewritten to increase functionality. - Small, subtle, incomprehensible, and potentially bug-ridden chunks rewritten to make channel code compatible with versions of Tcl prior to 8.0. - "make test" should work. - GetRecord and SetRecord commands supported, with packer support. - Only memo records currently have packer support. Databases without defined packers cannot be read. Jul 6, 1997 Kenneth Albanowski 0.7.3 Heavily modifed Python binding to use OO approach to record manipulation and packing. Read the README and test.py files in the Python directory for more information. Added 'struct sockaddr;' reference to pi-socket.h to allow use by code that has not pulled in the full set of socket headers. Added to configure the --with-cpp and --with-perl5 options to allow choice (or avoidance, via '--without') of the C++ compiler and Perl 5 interpreter, respectively. ('onfigure --help' for list.) Once library is built, interpreter bindings may be built via 'make Perl5', 'make Tcl', or 'make Python'. Changed configure interpreter selection to try to choose newer interpreter versions over older ones. Removed shared library generation from C++ library (it has too much of a chance of breaking.) Reversed -I directives in Makefiles so that current headers come before installed headers. Jun 29, 1997 Kenneth Albanowski 0.7.2 Complete reimplemenation of library production, using version 0.9h of Gordon Matzigkeit's libtool package. Added Tcl, Tk, & Python auto-detection to configure script (use 'configure --help' to see what options can be modified.) Rewrote Python compilation to use standard dynamic compilation technique. Rewrote Tcl compilation to use libtool and to generate binaries. Added David Warren's patch to add serial delays for SGI. Jun 22, 1997 Kenneth Albanowski 0.7.1 Added Ian's patches to install man-pages, and dump records in pilot-file. Added Andreas Wrede's patch to sync-ical. Added Tero Kivinen's patch to add RecordID to read-ical. Modified PI_AF_* constants to reduce likelyhood of conflicting with AF_INET constant. Added a new UNIX serial pause after baud rate negotation even if the rate didn't change. This prevents a dropped packet. Tuned serial pauses before and after baud rate change. I am now losing no packets at all. OS/2 code may need to be adjusted in a similar manner. Added pi_file_merge routine and -m switch to pilot-xfer. This merges record from a file into an existing database, which is especially useful for Dinkypad. Note that this could potentially damage some third-party application databases. Jun 14, 1997 Kenneth Albanowski 0.7.0 Substantial modification to socket implementation. The serial and socket layers now have significantly more separation and modularity, with the goal of allowing clean serial implementations, across both architectures (os2, amiga, unix, etc.) and interfaces (direct serial, networked serial redirector, etc.). A higher layer will allow for connections that do not use the serial interface and protocols at all, though this is not utilized in this version. All pi_ functions that deal with addresses now use sockaddr struct * params instead of pi_sockaddr. Any C programs using pilot-link directly will need to be modified. The parameter is still a pi_sockaddr, but it must be cast to (struct sockaddr*), as with the genuine socket functions. The pi_port element has been removed from the pi_sockaddr structure. Any C code constructing these structures will have to be modified. All included programs and language bindings have been modified as described above. SLP, PADP, and syspackets recoded slightly to better deal with xid generation. The OS/2 and UNIX serial code was stripped out of serial.c, and placed into os2serial.c and unixserial.c. If you wish to port the serial layer, please do so in a new file (amigaserial.c, etc.) Added '-2' switch to getrom, which should retrieve the entire ROM if a PalmPilot and getrom2.prc are used. Getrom2.prc included from the latest version of CoPilot (I hope Greg doesn't mind.) Jun 8, 1997 Kenneth Albanowski 0.6.6 Added highly experimental networked connections. The concept is to run pi-port on a machine with a serial port, and have the real pilot utilities connect to this server via TCP/IP. The current code is supposed to work, but unfortunately is broken at the moment. Added experimental Tcl 8.0b1 binding. Modified Perl5 binding slightly, towards eventual goal of automatic app-specific record packing and unpacking. Modified Python test code slightly to demonstrate changing the Pilot's display during HotSync. Added CreateDB to Perl5 binding. pilot-debug patched to compile under Tcl8.0b1. pilot-xfer now properly fails if it cannot find a database to fetch. Fixed odd-data length problem in RPC code so pilot-clip can now successfully set the clipboard. Jun 1, 1997 Kenneth Albanowski 0.6.5 Patches for OS/2 supplied by Mike Jarabek <jarabemj@mcmail.CIS.McMaster.CA>. May 25, 1997 Kenneth Albanowski 0.6.4 Added pi_watchdog function to automatically tickle sockets. Modified dlpsh to use watchdog. Added get_s/set_s macros to manipulate signed Pilot values. The old routines are now officially unsigned. Modified get/set float routines to use signed macros. Added scripts/struct.pl, a first attempt at a portable structure preprocessor. Modified libsock/dlp.c to use struct.pl for ReadStorageInfo. May 18, 1997 Kenneth Albanowski 0.6.3 Serial code uses PILOTPORT environment variable if a port isn't specified (but note that the included utilities do not yet make use of this.) Perl 5 module now supports GetAppPref and SetAppPref functions (only the former is tested.) Removed 'bool' from Perl 5 code. Python SetAppPref function modified to match Perl calling sequence. Added RPC calls to Python interface (check out test.py). Revised various DLP functions to check for overlarge input buffers. New C++ code revision. May 11, 1997 Kenneth Albanowski 0.6.2 Added pilot-undelete utility to un-archive records. Needs Perl 5. Added pilot-clip to retrieve (can not yet set) the pilot's clipboard. Repaired Python SetRecord and SetResource, which were broken. Added Unpack, Pack, PackAppBlock & UnpackAppBlock methods to Python DLP object. (These automatically route to MemoUnpack, TodoUnpack, etc.) Removed all bool, true, & false from C++ code. If Perl 5 is around, use the flags it calculated for dynamically loadable code to render the libraries position independant. (Experimental/hack.) Perl and Python examples now prompt for serial port. Mar 4, 1997 Kenneth Albanowski 0.6.1 Perl5 support nearly complete. Documentation less so. Python support nearly complete. Documentation less so. Scott's C++ and uchar_t cleanup. DLP ResetDBIndex now resets emulated category iterator. Fixed lib/serial variable definition. Really. Fixed long-standing bug in terminating card manufacturer's name. Fixed socket code leaking file descriptors and double closing. Modified socket code to return separate fd from pi_accept(). Added suffixes and .cc definition to makefiles. Applied Mark Eichin's <eichin@cygnus.com> configure and makefile portability patches. Applied David Warren's <dsw@comfortably-numb.asd.sgi.com> makefile and socket portability patches. Apr 28, 1997 Kenneth Albanowski 0.6.0 Primary feature: optional C++ support. If you have a C++ compiler, you'll get new code, and a new library. Added Scott Grosch's <grosch@ichips.intel.com> C++ code, and completely mucked up autoconf getting it to understand optional C++ code. Paul Traina's <pst@Shockwave.COM> patches for pilot-mail's use of getopt. Fixed simple variable definition problem affecting SGTYY in serial.c Fixed lib/Makefile trailing slash and object duplication. Added pd-tty.c to break out tty/async display code from pilot-debug. Added GNU readline 2.0 support to pilot-debug (see Makefile). Added complete Pilot Expense application DB support. Added read-expenses program to document expenses reading. Modified lib/pi-file so it will not even attempt to install deleted records (even if the DB contains them) on an old Pilot, but will retrieve them if possible. Apr 20, 1997 Kenneth Albanowski 0.5.7 Adaption for NeXTStep and Solaris configuration problems. - Always use three arguments to fcntl. - Use bmove for memmove even if memcopy is present. Apr 13, 1997 Kenneth Albanowski 0.5.6 New pilot-mail excutable to directly support transmission and reception of internet mail through the Pilot Mail application present on newer Pilots. (Requires POP3 for reception and/or sendmail for transmission.) Fixed nasty bug in "long" DLP argument recognition. Please do not use 0.5.5. PalmOS 2.0 DLP functions DeleteCategory, ReadNextModifiedInCategory, ReadNextRecInCategory, ReadFeature, ReadAppPreference and WriteAppPreference are now emulated for 1.0 Pilots, and may be freely used where you like, regardless of OS version. (Untested) PalmOS 2.0 DLP functions repaired. (None would have worked in 0.5.5) Removed extraneous category parameter from dlp_ReadNext*Category functions. Added DLP function dlp_RPC, which allows invoking arbitrary system traps during HotSync. Fixed pilot-debug mirroring to display entire updated rectangle. Fixed uncaught decoding problem in unpack_ToDoAppInfo. DLP trace is now compiled in by default, but only activated if the PILOTDLP environment variable exists. Apr 4, 1997 Kenneth Albanowski 0.5.5 Added Ron Nicholson's <rhn@waltz.engr.sgi.com> patch for user-id setting in install-user. Added Jason S Kohles's <robobob@xmission.com> patch for excluding databases in pilot-xfer. Added pilot-schlep utility that allows you to carry a single UNIX file on your Pilot. Pilot-debug now can receive, display, enable, and disable screen updates. (Type "mirror", then show the Remote UI window, and play with the Pilot.) Modified socket code to provide real descriptors from pi_socket that last through the bind, so they are directly selectable. Serial trace is now compiled in by default, but only activated if the PILOTLOG environment variable exists. (PILOTLOGFILE sets name.) Fixed baud-rate over 9600 "problem". (Mea culpa, I had commented out a call for testing purposes. My apologies.) Fixed rbuf leak in lib/pi-file.c. (Thanks to Scott Grosch for noticing.) With the gracious help of Palm, the following PalmOS 2.0 features are supported (though not yet tested): Updated CMP logic to match 2.0 versioning (extended CMP still to-do). Updated DLP decoding to decode long args (buffering and encoding rewrite to-do). Added v2.0 ReadFeature, DeleteCategory, ReadNextRecInCategory, ReadNextModifiedRecInCategory, ReadAppPreference and WriteAppPreference DLP functions. (emulation for 1.0 Pilots to-do). Added v2.0 ReadNetSyncInfo and WriteNetSyncInfo functions (no 1.0 emulation possible.) Added v2.0 extension for CallApplication DLP function. (still works on 1.0) Mar 22, 1997 Kenneth Albanowski 0.5.4 Added installation (and uninstallation) support to Makefile. Extensively reorganized pilot-debug startup, added Tcl event loop from plus-patch, and removed Tk dependancy -- pilot-debug is now usable with or without Tk! That means debugsh is officially deprecated, unless there is a significant outcry for a Tcl-less debugger. Modified syspkt RPC code to properly support byte values and pointers. Added initial support for Personal PalmPilot -- but beware the possibility of uncaught incompatibilities. Updated debugging routines in syspkt to more closely match Palm documentation -- note that this breaks my original gdb patch. Mar 9, 1997 Kenneth Albanowski 0.5.3 To help gdb, expanded syspkt support. Started reorganization of pilot-debug. Mar 2, 1997 Kenneth Albanowski 0.5.2 Added Pilot-debug executable -- you'll need to modify Makefile to compile it, read README for further instructions. Removed Linux DTR & RTS code, as per Ted Ts'o's request. Added Matthew Schnee's latest OS/2 patches. Changed default connection rate to 9600 from 19200. (For some reason 19200 now doesn't seem to be working on my machine. I have no idea where the problem lies, hardware or software.) Modified lib/serial code (both UNIX and OS/2 sections) to use timeouts specified in tenth seconds, allowing finer grained timeouts. This is specifically used in the syspkt code to respond faster to RPC failures. Modified lib/syspkt.c and include/pi-syspkt.h extensively to support pilot-debug. This includes new packet transmission routines and more modular RPC code. Added hack fix for deletion problem in pilot-addresses. Feb 23, 1997 Kenneth Albanowski 0.5.1 Added getrom executable, and included getrom.prc from CoPilot distribution with Greg Hewgill's permission. Completed data pack & unpack support for all Pilot applications. Modified headers and code (particularly dlp) to use new recordid_t typedef for record IDs. This should prevent one source of sign problems. Modified dlp headers and code to pass all buffers as void*'s instead of unsigned char *'s. Added experimental Perl5 linkage. To use, change to Perl5/PDAPilot directory, run `perl Makefile.PL ; make test`, and stand back. Most bits are currently missing and some bits don't work. Feb 5, 1997 Kenneth Albanowski 0.5.0 Rearranged header files so they should be cleaner to externally use. Added pilot-dedupe program, which will automatically remove duplicate records from any Pilot database. (Use with caution on databases for third-party applications. It is safe to use on all of the standard databases.) Added useful serial trace. If SERIAL_TRACE is defined during compilation, then a complete trace of all serial activity (in and out) will be appended to PiDebug.log in the current directory. If you are getting low level failures of the software, please try generating one of these logs and mailing it to me (kjahds@kjahds.com) so I can attempt to find the problem. Made a few slight changes in various programs and headers to reduce miscasts. Removed -Wall flag for CC compiler. Jan 18, 1997 Kenneth Albanowski 0.4.3 Modified configure support for NeXT and OS/2. Added pilot-addresses program, a program designed to translate between a comma-separated-value format and the Pilot address book. In theory the format is compatible with the Palm Desktop import/export format. An "a" switch (Advanced/Augment) is available to output more data in a Desktop incompatible format. This software may be buggy! Always back up the DatebookDB database before installing records! Modified pilot-xfer to sort databases during Restore to put applications after their data, and larger records after smaller ones. Modified pilot-xfer to clear lastsyncpc value so that a fast sync will not be done with possibly missing sync flags on newly installed DBs. Added lib/address.c & addresses.c patches to simplify phone label storage. Added -c switch to install-memo.c Added stub README. Jan 9, 1997 Kenneth Albanowski 0.4.2 Applied Pace's rm_fn patch, and pi-file patch for freads and attrs. My patch to return correct DLP errors. Probably some other stuff that I've forgotton. Dec 30, 1996 Kenneth Albanowski 0.4.1 Got sync-ical functional. It's very messy, but parts of it do actually work. Added new trace code to lib/dlp. Enable with -DDLP_TRACE in makefile. Added remaining DLP functions. All but RPC are now implemented (and I have not been able to deduce how to invoke RPC under DLP, so it will stay unimplemented until somebody comes up with more information.) Pace's patch for dlp_ReadRecordIDList. Added patch to pi-file to successfully store zero-length records. _Also_ added patch to stop ignore records on database retrieval that are archived or deleted. The reason is that without going to the RPC layer, there is no way to store records with those attributes. Mucked about with getopt in pilot-xfer, hopefully for the better. Added uname detection to configure so that IRIX gets proper warning flag. -- sync code still in limbo, undoubtedly not helped by holiday season. Patience is a virtue. Dec 22, 1996 Kenneth Albanowski 0.4.0 Removed {install,retrieve}-{pdb,prc} packages, replaced with pilot-xfer, which also includes general backup and listing functions. Integrated Pace Willisson's pi-file code, replacing prc.c & pdb.c. (This new code, along with pilot-xfer, is intended to be production quality, and should be used as the basis for all attempts to manipulate Pilot files, as well as the stock mechanism for backing up a Pilot via Unix.) Added Pace's pdump, modified and renamed to pilot-file, which is used for dumping and exploring .pdb and .prc files. Wrote and tested sync.c abstract synchronization layer. All but category synchronization and the detail of when to use which sync type is implemented. Fleshed out sync-memodir program which can now successfully synchronize a Pilot with a "memo directory", a directory containing text files. (sync-ical is still useless stub) Integrated Bill Sommerfeld's patches for read-ical, padp, and syspkt. -- Removed sync code based on Palm algorithms, pending approval from Palm/USR. What remains is sufficient to overwrite one side with another, and to serve as a framework if people who have not seen Palm code want to implement their own algorithms. Quoting from lib/sync.c: * Revised revision: all sections of code directly derived (albeit in a * paraphased manner) from code in the Palm Conduit SDK, _which are not * blatently obvious and irreducible_ have been temporarily removed until * word is obtained from Palm that the code may be publically released. * * The issue that needs to be resolved is whether Palm Computing Inc. will * allow the public distribution of source code derived from source code in * their Pilot PC Conduit SDK. The licensing information that I recieved * with the PC and Mac SDKs is not sufficient to resolve this question. * * In keeping with the sprit of the EU practice for reverse engineering, the * interface that I have designed to plug into the Palm algorithms has been * retained. Dec 10, 1996 Kenneth Albanowski 0.3.3 Did more work on sync stuff, added sync-memodir. Added dlp_DeletedRecord, dlp_DeletedResource, and dlp_ReadRecordIDList. Pausing problems on some machines (other then Linux) still unsolved. Added 'ls' command to dlpsh. Turned 9600 limit back on for SGI. Dec 1, 1996 Kenneth Albanowski 0.3.2 Converted package to use autoconf for configuration. Cleaned up package so -Wall is clean. Added sync-ical stub. It does not do anything useful yet. Nov 25, 1996 Kenneth Albanowski 0.3.1 Integrated Ulrich Hertlein's SunOS patches (in slightly changed form). Integrated Matthew Schnee's final OS/2 patches (in slightly changed form). Added install-pdb, retrieve-prc, and retrieve-pdb. Added read-ical, which converts the Pilot's datebook and todo list into an Ical 2.x calendar. Renamed todos to read-todos to avoid conflict with common utility. Added Robert A. Kaplan's install-todos (slightly modified and renamed.) Got rid of CBAUD and memmove, defined ENOMSG if not present. Fixed PADP bug where unexpected packet in padp_rx would cause infinite loop. Nov 12, 1996 Kenneth Albanowski 0.3.0 Integrated David Morgan's mktime and indefinite todo patch Integrated my patches - AppInfo block support for all Pilot applications - new "addresses" end user program - new "todos" end user program Rewrote PADP to match USR specs Rewrote xid generation as part of PADP rewrite, and made it always an unsigned character Added stub lib/sync.c Added dependencies in lib/Makefile Nov 1, 1996 D. Jeff Dionne 0.2.4 Integrated 5 patches from Kenneth Albanowski - RPC - new "debugsh" program that talks to Pilot over RPC - cleanup of "system packets" - new "memo" end user program - new "remind" end user program Limit the generated value of xid in padp_tx to 0x7f, hopfully will fix the problems with long running syncs. DJD. accept() now blocks insted of listen(). DJD. padp will now re-assemble fragments. DJD. install-prc now updates the Pilot display as it goes along. DJD. Oct 24, 1996 D. Jeff Dionne 0.2.3 Integrated patches for "system packets" from Kenneth Albanowski - new program, test-debug Integrated patches for OS2 support (mostly serial.c) f/ Matthew Schnee Integrated patches for SGI from David S. Warren Integrated patches from Damien P. Neil - new program, dlpsh - fixed bug in padp.c for Pilot re-transmit - install-memo now writes userid for compatibilty with Windows. - check return values from socket calls. - Swapped the slp_rx and pi_socket_flush in pi_socket_read() - Wrote a man page for install-memo and dlpsh Oct 19, 1996 D. Jeff Dionne 0.2.2 Integrated a patch from Kenneth Albanowski - More DLP code. - Socket fixes. - prcread complete re-write using DLP. - test server and client using ptys Oct 16, 1996 D. Jeff Dionne 0.2.1 moved the parts of libpisock.a to a seperate directory moved the include files to a seperate directory creates a few simple man pages, in a seperate directory install-memo installs all files on the command line. install-user new program, reads or sets Pilot user name Attempted to reconstruct history for this ChangeLog. All previous ChangeLog entries are approximate, and short. Oct 15, 1996 D. Jeff Dionne 0.2.0 Integrated 2 patches for DLP from Kenneth Albanowski Integrated 1 patch for CMP from Kenneth Albanowski Integrated 1 patch for install-memo from Brian Added install-memo from Damien Neil Included COPYING license file from FSF Oct 8, 1996 D. Jeff Dionne 0.1.0 First functional release.