742 lines
30 KiB
Plaintext
742 lines
30 KiB
Plaintext
$Id: TODO,v 1.21 2001/08/09 23:59:22 thosch Rel $
|
|
TODO for IC35 communication
|
|
===========================
|
|
|
|
legend
|
|
------
|
|
F task to do
|
|
yyyy-mm-dd_hh WHAT
|
|
details ..
|
|
F sub-tasks ..
|
|
F is current state from:
|
|
- todo
|
|
= work
|
|
+ done
|
|
x canc cancelled as no more need/want
|
|
WHAT is task change from:
|
|
todo task invented
|
|
+nn% task nn% done
|
|
done task done
|
|
canc task cancelled
|
|
|
|
- documentation for newbies
|
|
2001-08-03_13 todo Klaus Krenz <Klaus.Krenz@t-online.de> had problems
|
|
- explain COM?-ports are /dev/ttyS?, symlink /dev/ic35, access rights
|
|
- initial test with 'ic35sync status' and/or 'ic35mgr mmcdir'
|
|
- for 'mmc*' commands put backslashed path in quotes
|
|
- segfault empty fields in gcrd-file 'TITLE:' or 'BDAY:'
|
|
2001-06-17_21 todo bug report by Konrad Mader <konrad.mader@gmx.de>
|
|
empty 'BDAY:' does not segfault, but put 'BDAY' (no colon) into PIMfile
|
|
and next ic35sync complains "parse error"
|
|
seem like output error, i.e. shall output 'BDAY:' not 'BDAY'
|
|
- report protocol error reasons (e.g. get_modflen timeout)
|
|
2001-06-17_21 todo bug report by Konrad Mader <konrad.mader@gmx.de>
|
|
should do better error reports for easier finding protocol problems
|
|
get_modflen timeout failure for 860 addresses fixed 2001-06-17_23
|
|
- combine ic35sync,ic35mgr into one program ic35link
|
|
2001-02-25_20 todo proposed by Harald Becker
|
|
- backward compatible: symlink ic35sync -> ic35link and ic35mgr -> ic35link
|
|
behave like before if argv[0] is "ic35sync" or "ic35mgr"
|
|
- partial help like CVS
|
|
--help
|
|
--help-options
|
|
--help-commands
|
|
-H <command> or --help <command>
|
|
- fixes suggested by GNU Coding Standards and automake/autoconf
|
|
2001-02-03_15 todo
|
|
+ configure.in: use AC_REVISION
|
|
+ fix warnings from -Wmissing-prototypes
|
|
+ fix warnings from -ansi
|
|
- fix warnings from -pedantic
|
|
+ long options --version --help etc. --info shows build-info
|
|
+ info enquiry with --version --help --info shall exit(0) !
|
|
- use config.h in sources where needed (e.g. VERSION), see gnotepad+
|
|
+ open device with O_NOCTTY
|
|
- test on okosuse (yacc/bison), test on tls
|
|
- misc: scripts for sync with gnome, korganizer
|
|
- bugs to <email> at end of --help message
|
|
- use 'autogen' for options and usage, see /usr/doc/autogen/autogen.ps
|
|
- update copyright 2001, add license notice
|
|
- ic35mgr.txt extensions
|
|
2001-01-31_02 todo
|
|
- new command 05 - retry read statusblock 16400-16 bytes
|
|
in WinNT logs from Michael Logs270101.tar.gz
|
|
- reponse 91 from IC35 for powerfail ? (see ic35mmcput52rcv91.log)
|
|
- analyse & describe contents of IC35 statusblock, logo-bitmap
|
|
see ic35mgr.txt 1.8.1
|
|
- ic35mgr communication improves
|
|
2001-01-30_01 todo
|
|
- use #define for busywait delaytime and blocksize
|
|
PIII/500MHz 16/3212 1/187
|
|
- measure and improve timeouts in mgrproto.c
|
|
? handle backup problem (Michael Bruennert): recv 90 instead of datablock
|
|
- handle mgrproto problem: abort on recv 90 instead A0 after send ack/nak
|
|
- mgrtrans.c: more disconn retry to catch >8.5 sec tmo on lost char
|
|
maybe do twice Mcmdrsp(MCMDreset,MRSPgotcmd)
|
|
- ic35sync syn{trans,proto}.* re-organize like mgr{trans,proto}.*
|
|
2001-01-29_12 todo
|
|
- ic35sync local database
|
|
2001-01-26_01 todo
|
|
to avoid read all IC35 records to check for deleted in PIMfiles
|
|
and for store "sysinfo" date+time to check match with IC35
|
|
may also need sync local databases between e.g. work-,home-system
|
|
use XML-format for local database ?!
|
|
- ic35mgr handle Ctl-C user interrupt
|
|
2001-01-12_21 todo
|
|
for mmcput,mmcget do mmc_close on SIGINT, for other ignore SIG_INT
|
|
e.g. mmc_readfile,mmc_writefile return ERRor on SIG_INT
|
|
- ic35mgr get/put multiple file, sync dirtree
|
|
2001-01-12_19 todo
|
|
- get multiple files:
|
|
mmcget MMCard1/dir/* get all files from dir
|
|
mmcget MMCard1/*.I35 get multiple files
|
|
mmcget MMCard1/dir/ get recursively all files in dir and below
|
|
mmcget MMCard1/ get recursively all files from MMCard
|
|
recursive get creates local directory tree like to MMCard subtree
|
|
additional localdir/ arg puts files below localdir/
|
|
put multiple files with same logic
|
|
problem: make dir on IC35 MMCard, use mmc_opendir(,MMCcreatrunc) ?
|
|
- synchronize MMCard with local dirtree
|
|
option "-n" to test what would be sync'd
|
|
- interactive transfer multiple files and walk dirs (like ftp)
|
|
2001-05-30_22 todo request guenther dreher-esders <guenther@esders-web.de>
|
|
- guenther wants to 'ic35mgr mmcput MMCard1/x*.txt' for reading big text
|
|
on IC35 split into many smaller files
|
|
- ic35sync support XML format
|
|
2001-01-09_17 todo proposed by Norbert Kolb
|
|
see xmlFiles.pdf.gz from Harald Becker
|
|
2001-02-25_20 work Harald Becker
|
|
- ic35sync sync/import/export e.g. ToDoList alone
|
|
2001-01-09_17 todo proposed by Norbert Kolb
|
|
- analyse and implement IC35 manager install application,bitmap,midi
|
|
2000-12-31 todo
|
|
- send application
|
|
- send IC35 start graphic bitmap
|
|
- send MIDI file
|
|
? remove application
|
|
? remove bitmap, MIDI file
|
|
- problem IC35 does not alarm
|
|
2000-12-30_20 todo
|
|
problem after: restore cfgmsg27.i35, set date+time, import 20001230.*
|
|
reason: old repeated events "ww" 20001023,20001027 with endrepeat before today
|
|
2000-12-31_17 50% reason found
|
|
ic35sync do not write events with endrepeat before today ?
|
|
- ic35sync corrections
|
|
2000-12-30_19 todo
|
|
+ on read_id_frec from IC35 fail do writerec instead of updaterec
|
|
2000-12-31_18 +30%
|
|
- write to IC35 all Sched,ToDo,Memo which not on IC35 (for initial sync)
|
|
- sync overwrites IC35 changes after: reset,delall,restore IC35
|
|
because IC35 appearently does not restore sysinfo date+time ?!
|
|
- shared library e.g. for perl module ic35-communications
|
|
2000-12-29_02 todo proposed by Norbert Kolb
|
|
- vcaconv vca2bin,bin2vca,bin2txt transfer recstat
|
|
design-problem ? updic35rec() and putic35rec() to not transfer recstat
|
|
see experimental dataio.c 1.32.2
|
|
2000-12-26_03 todo
|
|
- ic35sync conflict resolve options
|
|
2000-12-25_06 todo
|
|
- PIM override IC35 (default)
|
|
- IC35 overrides PIM
|
|
- duplicate conflict records
|
|
- inspect for sync,import/export: gnome-pilot,-conduits, pilot-link
|
|
- search sourceforge etc. for other PIM-programs
|
|
- reduce ic35sync log volume
|
|
2000-12-14_21 todo
|
|
option for loglevel, buffer higher level log lines in FIFO
|
|
flush buffered log to file on error, discard if buffer gets full
|
|
- ic35sync minor improvements
|
|
2000-12-17_17 todo
|
|
+ fix vcc.y compile warnings
|
|
x extract rcskvf() from ic35sync.c,ic35mgr.c to util.c
|
|
no more need with VERSION from configure.in
|
|
- pimfile(s) writable not pre-checked, pim_close() does not return write-error
|
|
- write and backup pimfile(s) only if really changed: global dirty-flag
|
|
- pim_open(),pim_close() are misleading names
|
|
xxx_open(),xxx_close re-design: who/where store filenames ?
|
|
see experimental dataio.c 1.32.1 and datavca.c 1.38.1
|
|
- dataio.c: use field map tables for vCard,vCal to/from IC35
|
|
- syntrans.c: internal fd, no need for fd-argument
|
|
implicit close on next open_file() and disconnect()
|
|
- synproto.c: finer checks in recvrsp()
|
|
- malloc/error traps with setjmp(),longjmp()
|
|
- improve gnomecard
|
|
2000-12-17_21 todo
|
|
- does not change X-PILOTSTAT !
|
|
fix: set X-PILOTSTAT:1 when VCARD changed
|
|
- changes VCARD.REV to UTC not local time !
|
|
- does update *ALL* VCARD.REV times on exit
|
|
reason: gnomecard wants yyyy-mm-ddThh:mm:ss, drops yyyymmddThhmmss
|
|
fix: accept also yyyymmddThhmmss
|
|
- default e-mail type is AOL, better change to INTERNET
|
|
- default birthday 1970-01-01 is bad, should be empty
|
|
- improve gnomecal
|
|
2000-12-25_19 todo
|
|
- extra field for VTODO.DTSTART
|
|
- extra field for VEVENT.DESCRIPTION
|
|
- do not crash if VEVENT,VTODO.CLASS:PUBLIC missing
|
|
- do not update *ALL* LAST-MODIFIED and DCREATED on exit
|
|
- add missing standard categories Personal,Business(,Unfiled)
|
|
- show/edit VTODO.STATUS
|
|
? output correct VCAL.VERSION:1.0 instead of 1.2.0
|
|
? seems to mis-behave with X-PILOTSTAT,X-PILOTID
|
|
- improve korganizer
|
|
2000-12-25_19 todo
|
|
- support VTODO.DTSTART,DUE
|
|
- support VTODO.CATEGORIES
|
|
- support also AALARM, distinguish from DALARM
|
|
? korganizer prios are 1,2,3,4 ? prios are duplicate ?
|
|
- problem: memory leak in vobject.c setVObjectStringZValue()
|
|
2000-12-12_02 todo
|
|
setVObjectStringZValue() and relatives discard previous string
|
|
although it may be malloc()ated'd and free() should be done.
|
|
* vobject.c has 'strTbl[]' possibly usable to fix memory leak
|
|
but strcasecmp prohibits use for any string
|
|
strTbl[] used in lookupStr unUseStr cleanStrTbl
|
|
lookupStr called by newVObject lookupProp
|
|
unUseStr called by deleteVObject
|
|
hashStr called by lookupStr unUseStr
|
|
- solution-1:
|
|
extend above vobject.c utilities with strcmp() instead of strcasecmp()
|
|
- solution-2:
|
|
always create new VObject instead of changing string values
|
|
re-create vobj-list and/or vprop-list, then use cleanVObject()
|
|
- solution-3:
|
|
deleteStr() previous string value before set new string value
|
|
- test-data for vCard,vCal to/from IC35 record conversion
|
|
2000-12-11_12 todo
|
|
- max.fieldlengths for each record
|
|
- Addresses
|
|
- name only
|
|
- no, one, two, three email-addrs
|
|
- telnos home,work,cell,fax
|
|
- non-ASCII in Name,ADR,ORG,..
|
|
- IC35 "(def.)" fields
|
|
- Schedule
|
|
- no alarm, LED-alarm, beep-alarm, LED+beep-alarm
|
|
- alarm 0,1,5,10,30 mins, 1,2,10 hours, 1,2 days before
|
|
- no repeat, repeat every d days, w weeks, m monwday, n monmday, y years
|
|
- ToDoList
|
|
- prio normal,high,low
|
|
- completed no,yes, other status
|
|
- Memo
|
|
- ic35sync tests for export
|
|
2000-12-15_12 todo
|
|
restore IC35 from MMC, export from IC35 as reference PIMfile
|
|
run tests: save PIMfile-1, export to PIMfile-2, compare PIMfile-1,-2
|
|
= export to new PIMfile
|
|
= export to existing same PIMfile
|
|
no changes in PIMfile
|
|
- add IC35 records, export
|
|
only added PIMrecords shall be affected (modified+created time, recID)
|
|
- change IC35 records, export
|
|
only changed PIMrecords shall be affected (modified time)
|
|
- add records to PIMfile, export
|
|
added records in PIMfile shall be unaffected
|
|
- change PIMrecords, export
|
|
changed PIMrecords shall be overwritten from IC35
|
|
- ic35sync tests for import
|
|
2000-12-15_12 todo
|
|
restore IC35 from MMC, export from IC35 as reference
|
|
run tests: export-1,import,export-2, compare export-1,-2
|
|
= import reference to IC35, i.e. re-import same data
|
|
changeflags on IC35 shall be reset, PIMfile unaffected
|
|
no write/update to IC35
|
|
= reset IC35, import reference into empty IC35
|
|
write all PIMrecords, new IC35-recIDs in PIMfile
|
|
owner addr shall appear as such
|
|
= add records to PIMfile, import
|
|
added PIMrecords on IC35, IC35-recIDs in added PIMrecords
|
|
- small PIMfile with all new records, import
|
|
all PIMrecords on IC35, IC35-recIDs in PIMrecords
|
|
= add records to IC35, import reference
|
|
added IC35 records shall have changeflag, no set_date+time
|
|
= change records in IC35, import reference
|
|
changed IC35 records shall be overwritten from PIMfile
|
|
- ic35sync tests for sync
|
|
2000-12-19_02 todo
|
|
= some test data in testdelfld{1,2,3}.vca
|
|
sync testdelfld1.vca
|
|
import testdelfld2.vca
|
|
export testout2.vca
|
|
copy testdelfld2.vca to testdelfld3t.vca, del fields,recs, set X-PILOTSTAT:1
|
|
sync testdelfld3t.vca
|
|
export testout3.vca should be same as testdelfld3t.vca
|
|
IC35: mark all records edited
|
|
copy testout2.vca to testdelfld4.vca
|
|
sync testdelfld4.vca should be same as testdelfld3t.vca
|
|
- specify more tests
|
|
- ic35sync interactive ?
|
|
2000-11-06_23 todo
|
|
- implicit connect, on exit disconnect
|
|
- set date, category
|
|
- open file, close file
|
|
- read file record
|
|
- write file record
|
|
- delete file record
|
|
- reset file record changeflag
|
|
- improve source comments
|
|
2000-12-01_17 todo
|
|
- ic35frec.c: IC35REC access logic
|
|
- synproto.c: PDU parameters
|
|
- ic35log.sh improvements and tests
|
|
2000-12-01_14 todo
|
|
- test with WindowsNT-2line logs: see below
|
|
- test with WindowsNT-1line logs: see below
|
|
- test with Windows98 logs: see below
|
|
- improve ic35prot() structure to make it more clear / readable
|
|
|
|
DONE
|
|
+ split ic35sync.c into modules:
|
|
2000-11-06_23 todo
|
|
+ util.c logging, error,message
|
|
+ comio.c serial communication
|
|
+ synproto.c L1,L2,L3 protocols
|
|
+ syntrans.c L4 protocol: IC35sync transactions
|
|
+ dataio.c import/export Addresses,Memo,Schedule,ToDoList as vCard,vCal
|
|
+ ic35sync.c main, IC35sync session
|
|
+ Makefile
|
|
2000-11-07_03 done
|
|
+ ic35sync minor improves
|
|
2000-11-07_01 todo
|
|
+ util.c
|
|
+ log_init() set also loglevel, default logtag=NULL ?
|
|
+ log ic35sync version/rcsid to logfile
|
|
+ syntrans.c
|
|
+ combined connect = welcome,identify,power,authenticate,getdtime ?
|
|
+ welcome: "WELCOME\x80" no need send "A" ?
|
|
+ stop on wrong password: response != 0101
|
|
+ Makefile
|
|
+ targets dist,dist_co for ic35sync_<vers>.tar.gz
|
|
+ integrated help
|
|
2000-11-15_04 +70% todo: Makefile
|
|
2000-11-18_23 done
|
|
+ ic35 record access
|
|
2000-11-15_02 todo
|
|
+ access record-field
|
|
+ num.of record-fields to struct ic35file
|
|
+ output binary record-data for offline vCard,vCal develop
|
|
2000-11-19_01 done
|
|
+ ic35sync export in vCard, vCalendar format
|
|
2000-11-06_23 todo
|
|
sources:
|
|
* /local/pkg/ic35/sdkdllsr.zip
|
|
vcc.h vcc.y vobject.h vobject.c
|
|
* kpilot_3.1.10-1.0.tar.gz
|
|
kpilot-3.1.10/conduits/vcalconduit/ vcal-conduit.h vcal-conduit.cc
|
|
kpilot-3.1.10/conduits/vcalconduit/versit/ vcc.h vcc.y vobject.h vobject.c
|
|
* gnome-pim_1.2.0.orig.tar.gz
|
|
gnome-pim-1.2.0/libversit/ vcc.h vcc.y vobject.h vobject.c
|
|
* gnome-pilot-conduits_0.4
|
|
* gnome-pilot_0.1.55-0pre
|
|
* jpilot_0.97
|
|
* pilot-manager_1.107
|
|
* pilot-link_0.9.3
|
|
2000-11-19_20 work
|
|
+ vcaconv:
|
|
+ IC35 raw data -> vCard,vCal
|
|
+ pretty-print vCard,vCal
|
|
+ move ic35file definitions to dataio.c to vcaconv link syntrans etc.
|
|
+ design output from IC35 to vCard,vCal file, maybe same file
|
|
+ XPilotId instead of UID
|
|
+ output text fields quoted printable if non-7bitASCII
|
|
use CHARSET=ISO-8859-1;QUOTED-PRINTABLE
|
|
+ Schedule: repeated events, recurrence rule
|
|
+ Schedule: DALARM = LED, AALARM = beep
|
|
+ whattodo with Memo in vCal format ?
|
|
use VMEMO record VCMemoProp, extend vcc.*,vobject.*
|
|
2000-11-20_05 +50%
|
|
2000-11-21_06 +70%
|
|
2000-11-22_08 done
|
|
x ic35sync export in vCard, vCalendar format: canceled tasks
|
|
2000-11-22_08 todo
|
|
x vcaconv: vCard,vCal -> IC35 raw data
|
|
x what is XPilotStatus for ? ICAL_PILOT_SYNC_{NONE,MOD,DEL}
|
|
2000-12-01_15 canc replaced by ic35sync import,sync step-2,-3
|
|
+ improve ic35prot.awk
|
|
2000-11-07_23 todo
|
|
+ test with WindowsNT-2line:
|
|
+ Simple_hex.log
|
|
+ Portmon_export.log
|
|
+ Import1.log
|
|
+ Import.tar.gz:Import.log
|
|
+ test with Windows98:
|
|
+ mgr_conn_disc.log
|
|
+ mgr_conn_disc_mmc.log.gz
|
|
+ sync_missoutlook.log
|
|
+ mgr_rwdfile_20001107.tar.gz:*.log
|
|
2000-11-15_01 +90% usable, todo: missing tests & improve structure
|
|
2000-11-27_13 canc ic35prot.awk replaced by ic35log.sh
|
|
x improve ic35prot.awk: canceled tasks
|
|
2000-11-07_23 todo
|
|
x test with WindowsNT-1line:
|
|
x Manager.tar.gz:*.LOG
|
|
x BackupRestore.tar.gz:*.log
|
|
x improve structure to make it more clear / readable
|
|
2000-11-27_13 canc ic35prot.awk replaced by ic35log.sh
|
|
+ improve ic35-prot-analyzer
|
|
20001124_20 todo
|
|
+ print 2nd ff. recdata fragments, 'currfid' less hacked
|
|
+ integrate in one script
|
|
+ ic35prot.awk faster and more clear
|
|
no need to support ASCII input
|
|
move ASCII output to separate pass
|
|
20001127_13 done
|
|
+ analyse Delete.tar.gz delete record etc.
|
|
2000-11-18_01 todo
|
|
+ meaning of new commands 01 02, 01 07
|
|
01 07 = read next modified record
|
|
01 02 = delete record
|
|
x meaning of category response 01 01, 00 01
|
|
moved to "ic35sync experiments"
|
|
2000-11-24_01 done
|
|
+ ic35sync.txt: document readrecmod, deleterec
|
|
20001124_20 todo
|
|
20001127_15 done
|
|
+ ic35sync import,sync step-1
|
|
20001124_20 todo
|
|
+ dataio.c: use rec-id AND file-id as UID/X-PILOTID
|
|
+ dataio.c: implement REV, LAST-MODIFIED
|
|
+ get_mod_flen
|
|
+ read_mod_frec
|
|
+ delete_frec
|
|
+ write_frec
|
|
+ set_date_time
|
|
+ category
|
|
20001128_04 done
|
|
+ ic35 record access
|
|
2000-11-21_02 todo
|
|
+ use ulong frid instead of uchar fid, ushort rid
|
|
+ internal IC35 record structure for easier access
|
|
+ break into fields, _get_recfld()'s static buffer is bad!
|
|
2000-12-01_02 +90% todo: opaque IC35FILE
|
|
+ hide ic35 file description internals, use acces functions
|
|
+ use 4byte record-ID in binary format
|
|
2000-12-01_19 done
|
|
+ ic35log.sh process ic35sync logfiles, create simulation files from them
|
|
2000-12-01_14 todo
|
|
2000-12-02_02 done
|
|
+ ic35sync experiments:
|
|
2000-11-06_23 todo
|
|
tests for category,filename in ic35sync.c 1.11.1 branch
|
|
+ check wrong password:
|
|
complains with 0100 (not 0101) only if password on power-on enabled
|
|
+ check category response
|
|
+ unknown category
|
|
+ category with no records, e.g. "Unfiled"
|
|
+ category with modified record(s)
|
|
+ category with new record(s)
|
|
+ new category with new record(s)
|
|
+ new category without records
|
|
+ set category influence on read_mod_frec ? NO!
|
|
mostly response for existing category is 01 01, for non-exist 00 01
|
|
but not always, still unclear what the category sematics are
|
|
+ test bad filename or other files, e.g. Messages ?
|
|
open compares only first any-case letter, unmatched opens "Schedule
|
|
2000-12-02_05 done
|
|
+ ic35sync import,sync step-2
|
|
20001124_20 todo
|
|
tests in ic35sync.c 1.11.1 branch
|
|
+ commit_frec
|
|
+ test functions for import,sync:
|
|
+ category
|
|
+ set_date_time
|
|
allows setting any text, tested up to 14 chars, maybe up to 16 chars
|
|
+ get_mod_flen, read_mod_frec
|
|
+ write_frec
|
|
+ delete_frec
|
|
+ commit_frec
|
|
+ field modified on PC: only write_frec or also del old frec ?
|
|
must delete_frec old, as write_frec gets new rec-ID (does NOT overwrite)
|
|
20001202_07 done
|
|
+ ic35sync experiments for new commands
|
|
20001201_20 todo
|
|
+ 00 01 ? file command ? ic35r{66,68}.log
|
|
IC35 accepts 1st command, response: E3,49 CD 0F
|
|
then IC35 hangs no more accepting commands
|
|
? 01 01 ? del all? NO! ic35r{62,63,65}.log
|
|
IC35 returns "done" response A0 03 00, record unchanged
|
|
* 01 02 fd_-- ri_--_-- fi delete_frec
|
|
* 01 03 fd_-- 00 00 00 00 get_flen
|
|
* 01 04 fd_-- 00 00 00 00 get_mod_flen
|
|
+ 01 05 fd_-- ri_--_-- fi read by recID ic35r{60,69,6A}.log
|
|
response non-exist Memo recID: A0,49 3E 81 D3 0D 60 xx xx xx 07
|
|
i.e. recID=0DD3813E, ch=60, 4 flens for Memo record
|
|
response non-exist Schedule recID: A0,49 FE AA 20 0E 00 xx xx xx ..
|
|
i.e. recID=0E20AAFE, ch=00, 10 flens for Schedule record
|
|
* 01 06 fd_-- 00 00 00 00 read_frec
|
|
* 01 07 fd_-- 00 00 00 00 read_mod_frec
|
|
* 01 08 fd_-- 00 00 00 00 write_frec
|
|
+ 01 09 fd_-- ri_--_-- fi ... update_frec ic35r{61,6B,6C}.log
|
|
re-writes record keeping same recID
|
|
* 01 0A fd_-- ri_--_-- fi commit_frec
|
|
2000-12-03_09 done
|
|
+ ic35sync import,sync step-3
|
|
20001124_20 todo
|
|
vCard,vCal to IC35 record, test with vcaconv
|
|
+ CategoryID cannot be mapped, use 0x00 and assume IC35 to create it
|
|
+ Category: assume IC35 auto-creates new category
|
|
+ vcard_to_ic35addr
|
|
+ vevent_to_ic35sched
|
|
+ vtodo_to_ic35todo
|
|
+ vmemo_to_ic35memo
|
|
20001207_04 done
|
|
+ problem: QUOTED-PRINTABLE fails with multi-field props like ADR,N,ORG,..
|
|
2000-12-16_15 todo
|
|
with QUOTED-PRINTABLE e.g. ADR fields are not separated, but
|
|
first field gets value of all fields with ';' embedded.
|
|
known but unfixed problem, see: http://www.imc.org/imc-vcard/mail-archive/
|
|
+ solution-1
|
|
do not use QUOTED-PRINTABLE on multi-field props, but only CHARSET
|
|
x solution-2
|
|
further debug problem to find real cause and fix
|
|
2000-12-16_21 done
|
|
+ ic35sync import,sync step-4 (import)
|
|
2000-11-24_20 todo
|
|
import,sync do both use set_date_time
|
|
+ what is XPilotStatus for ? ICAL_PILOT_SYNC_{NONE,MOD,DEL}
|
|
+ need update vCard,vCal from IC35rec to avoid destroy unmapped fields
|
|
+ import vCard,vCal or binary into IC35
|
|
2000-12-17_08 done
|
|
+ vcaconv optionally sort output needed for test
|
|
2000-12-17_06 todo
|
|
sort vCard,vCal to stdout
|
|
2000-12-20_16 done
|
|
+ problems with gnomecard
|
|
2000-12-17_21 todo
|
|
+ does not change X-PILOTSTAT, cannot not rely on X-PILOTSTAT alone
|
|
fix: detect change with create/modify-time VCARD.REV > last-sync-time
|
|
+ does update *ALL* VCARD.REV times on exit
|
|
reason: gnomecard wants yyyy-mm-ddThh:mm:ss, drops yyyymmddThhmmss
|
|
fix: produce VCARD.REV:yyyy-mm-ddThh:mm:ss
|
|
2000-12-21_15 done
|
|
+ problems with korganizer
|
|
2000-12-17_21 todo
|
|
+ wants VCAL PRODID:-//K Desktop Environment//NONSGML KOrganizer//EN
|
|
fixed ic35sync: do not change found VCAL:PRODID
|
|
must manually edit vCal output before load new into korganizer
|
|
+ complains if VEVENT,VTODO lack UID and does not load those without
|
|
fixed ic35sync: also put UID to VCAL:VEVENT,VTODO (and VCARD, VMEMO)
|
|
+ expects and produces NL-terminated lines, misbehaves on CRLF-terminated
|
|
fix ic35sync: auto-detect CRLF or NL and produce same output
|
|
+ output causes parse-error if CR in NOTE,DESC,..
|
|
need translate NOTE,DESC: PIM NL <-> IC35 CRLF
|
|
+ does not support VTODO.DTSTART,DUE
|
|
fix ic35sync: map to marked lines in VTODO
|
|
+ does not support VTODO.CATEGORIES, keep IC35 on PIM->IC35 update
|
|
x has VEVENT.CATEGORIES, but IC35 has not
|
|
2000-12-24_20 done
|
|
+ problems with gnomecal
|
|
2000-12-17_21 todo
|
|
+ does not support VTODO.DTSTART, but keeps in vCal on exit
|
|
fix ic35sync: keep marked line in VTODO.DESCRIPTION
|
|
+ crashes if VTODO,VEVENT.CLASS:PUBLIC is missing
|
|
fix ic35sync: put CLASS:PUBLIC to VTODO,VEVENT if missing
|
|
+ does not support VEVENT.DESCRIPTION, removes it from vCal on exit
|
|
vevent_to_ic35sched: 1st line to S_Subject, more lines to S_Notes
|
|
ic35sched_to_vevent: for gnomecal append S_Notes to VEVENT.SUMMARY
|
|
x outputs bad VCAL.VERSION:1.2.0, ic35sync keeps found version
|
|
2000-12-25_19 done
|
|
+ ic35sync import,sync step-5 (sync)
|
|
2000-12-15_12 todo
|
|
+ sync vCard,vCal with IC35
|
|
+ conflict resolve: initial sync empty PIM must not delete all IC35!
|
|
+ inspect for sync,import: gnome-pim, kpilot
|
|
2000-12-25_06 done
|
|
+ ic35sync some improvements
|
|
2000-12-17_17 todo
|
|
+ comio.c: for simulate do not set DTR neither open comport
|
|
+ comio.c: log input V.24 signals on change
|
|
+ comio.c: allow also WRx and RDx in simulation file
|
|
+ dataio.c: remove unused _get_vcarec()
|
|
+ dataio.c big, split: dataio.c 341 datatxt.c 92 databin.c 385 datavca.c 1528
|
|
+ dataio.c: translate CRLF<->NL in NOTES,DESCRIPTION
|
|
+ dataio.c utils, special conversions depend on PRODID Gnome,KOrganizer
|
|
put/get IC35 fields unsupported by PIM with mark in NOTE/DESCRIPTION
|
|
+ KOrganizer: VTODO.CATEGORIES,DTSTART,DUE to/from VTODO.DESCRIPTION
|
|
+ gnomecal: VTODO.DTSTART to/from VTODO.DESCRIPTION
|
|
+ gnomecal: VEVENT.DESCRIPTION 1st line S_Subject, more S_Notes
|
|
+ all: "(def1):","(def2):" to/from VCARD.NOTE
|
|
+ cmp_ic35rec() from dataio.c to ic35frec.c:cmp_ic35rec ?
|
|
2000-12-25_23 done
|
|
+ ic35sync delete fields
|
|
currently IC35 to/from PIM record conversions do not delete fields
|
|
2000-12-27_19 todo
|
|
2000-12-29_04 done
|
|
+ correct vcaconv
|
|
produces empty output on 'vcaconv sortvca ic35.vcal'
|
|
2000-12-31_01 todo
|
|
fix: correct error in vobject.c
|
|
2000-12-31_18 done
|
|
+ analyse IC35 manager protocol
|
|
2000-11-06_23 todo
|
|
+ init, exit
|
|
+ backup database.org
|
|
+ restore database.org
|
|
+ read MMCard directories
|
|
+ read file from MMCard
|
|
2001-01-04_06 +70%
|
|
+ write file to MMCard
|
|
+ delete file on MMCard
|
|
2001-01-10_03 done
|
|
+ implement IC35 manager MMCard operations
|
|
2000-12-31_18 todo
|
|
+ init, exit
|
|
+ read MMCard directories
|
|
+ read file from MMCard
|
|
2001-01-10_02 +60%
|
|
+ write file to MMCard
|
|
+ delete file on MMCard
|
|
2001-01-12_22 done
|
|
+ implement IC35 manager backup,restore operations
|
|
2000-12-31_18 todo
|
|
+ backup database.org
|
|
+ restore database.org
|
|
2001-01-17_06 done
|
|
+ improve ic35mgr throughput
|
|
2001-01-12_20 todo
|
|
ic35mgr-1.17.4, busy wait 3.25ms every 16 byte block, 2 stopbits
|
|
backup 426128 read 16384 117.3248 3632 b/s
|
|
block recv 16384 3.3211 4924 b/s
|
|
restore 426128 write 16384 140.4816 3033 b/s
|
|
block send 16384 3.5056 4674 b/s
|
|
ic35mgr-1.12a, with com_sendw(), itimer pause every 29 chars, 2 stopbits
|
|
reversi.app 16452 read 5120 6.5236 2522 b/s
|
|
reversi.app 16452 write 2048 11.9835 1373 b/s
|
|
+ comio.c,comio.h: separate com_sendw() with wait
|
|
+ mgrproto.c: use com_sendw() with wait only for big blocks
|
|
measurements:
|
|
install MMCard:browser.app 376900 117.69 3202 b/s
|
|
install MMCard:sc_info.app 16452 10.07 1634 b/s
|
|
install MMCard:convert.app 49220 15.22 3234 b/s
|
|
restore MMCard1\20010124.I35 52222 25.962 2011 b/s
|
|
backup MMCard1\20010121.I35 50701 20.625 2458 b/s
|
|
ic35mgr-1.10a, with com_sendw(), itimer pause every 29 chars, 2 stopbits
|
|
reversi.app 16452 read 5120 6.5678 2505 b/s
|
|
reversi.app 16452 write 2048 12.0640 1364 b/s
|
|
backup 426128 read 16384 117.4514 3628 b/s
|
|
block recv 16384 3.3287 4922 b/s
|
|
restore 426128 write 16384 203.6398 2093 b/s
|
|
block send 16384 6.0531 2707 b/s
|
|
status 16400 recv 16384 1.8257 8983 b/s
|
|
itimer, pause every 29 chars, 2 stopbits
|
|
reversi.app 16452 write 5120 11.8633 1387 b/s
|
|
2048 12.3224 1335 b/s rewrite 13.8034 1192 b/s
|
|
mgrep.app 32836 write 2048 24.6884 1330 b/s
|
|
domind.app 49220 write 2048 37.1055 1326 b/s
|
|
domind.app 49220 read 5120 20.0052 2460 b/s
|
|
usleep(29*400) every 29 bytes, 2 stopbits
|
|
reversi.app 16452 write 5120 17.69 929 b/s
|
|
2048 18.42 893 b/s
|
|
usleep(100) every 16 bytes
|
|
reversi.app 16452 write 5120 26.965 610 b/s
|
|
2048 27.764 593 b/s rewrite 29.094 565 b/s
|
|
1024 29.465 558 b/s
|
|
reversi.app 16452 read 10240 6.825 2410 b/s
|
|
5120 7.284 2259 b/s 7.385 2228 b/s
|
|
2048 8.485 1939 b/s
|
|
1024 10.204 1612 b/s
|
|
256 20.396 807 b/s
|
|
15 243.773 67 b/s
|
|
2001-01-18_02 done
|
|
+ fix compile errors with gcc-2.96 under RedHat-7.0
|
|
2001-01-19_17 todo reported by Dieter Schultschik
|
|
+ synproto.c:sendcmd() line-531,537,542,548,549,554,567,594
|
|
531:fd, 537:fd, 542:fd, 548:fd, 549:index, 554:fd, 567:fd, 594:fd
|
|
`short unsigned int' is promoted to `int' when passed through `...'
|
|
(so you should pass `int' not `short unsigned int' to `va_arg')
|
|
+ mgrproto.c similar problem
|
|
+ generally avoid va_arg with sendcmd() etc, replace sendcmd(CMDfclosem,fd)
|
|
with e.g. sendCMDfclose(fd) would yield compile-time prototype checking
|
|
2001-01-29_13 done
|
|
+ improve ic35mgr
|
|
2001-01-12_20 todo
|
|
+ mgrproto.c: recvmrsp() / MPDUrecv() discard checksum
|
|
+ mgrtrans.c: protocol comments, identify,disconn,.. belong to mgrproto.c
|
|
+ move backup protocol from mgrtrans.c to mgrproto.{c,h}
|
|
concentrate log,progress,errmsg separate from communication protocol
|
|
+ move putxxx(),getxxx(),chksum() from mgrtrans.c,xxxproto.{c,h}
|
|
and also welcome() etc. to genproto.{c,h}
|
|
2001-01-24_03 +50%
|
|
+ move _not_impl() from ic35mgr.c to util.{c,h}
|
|
+ recvmrsp() always return mstate, not pdulen
|
|
+ mgrproto.c: common structs for same PDUs
|
|
2001-01-29_12 +70%
|
|
+ mgrproto.c: common convert direntry and FILE_INFO
|
|
+ mgrproto.c: define iden/FILE_IDEN details, export size, how mismatch?
|
|
+ mgrproto.h: move attribs,modes from mgrtrans.h (else mgrproto.c unusable)
|
|
for backward compatible #include mgrproto.h in mgrtrans.c
|
|
x mgrtrans.c: common struct for MMCDIR MMCFILE
|
|
x extract rcskvf() from ic35sync.c,ic35mgr.c to util.c
|
|
with VERSION imported rcskvf() is obsolete
|
|
2001-02-03_18 done
|
|
+ supply also vcc.c problem found by Harald Becker, Michael Bruennert
|
|
2001-01-19_09 todo
|
|
supply also vcc.c for systems without or with bad bison/yacc
|
|
SuSE-7.0 yacc-91.7.30-220 is bad, need bison >= 1.25
|
|
2001-02-04_01 done
|
|
+ automake/autoconf
|
|
2000-12-29_02 todo proposed by Norbert Kolb
|
|
* see Software-Release-Practice-HOWTO, GNU Coding Standards
|
|
* must unset CDPATH, else re-automake fails!
|
|
+ configure.in Makefile.am, then run:
|
|
aclocal; autoheader; automake --add-missing --gnu; autoconf; ./configure
|
|
+ re-org into dirs src/ docs/
|
|
+ make CVS-tree, use .cvsignore
|
|
+ AUTHORS
|
|
+ THANKS or CREDITS
|
|
+ NEWS: compact version info
|
|
+ README: re-org like Software-Release-Practice-HOWTO suggests
|
|
x acconfig.h: ISODATE NOT NEEDED
|
|
+ program-versions from VERSION,ISODATE, remove rcskvf
|
|
+ step-1: do it with current Makefile
|
|
+ build-info like gnotepad+
|
|
+ fix also top-entry in logfiles
|
|
2001-02-05_03 done
|
|
+ README / more docs, e.g. restrictions & workarounds
|
|
2001-01-26_03 todo
|
|
+ Korganizer: PRODID, workaround missing vCal properties (...)
|
|
+ GnomeCal: PRODID, workaround missing vCal properties (...)
|
|
+ GnomeCard: missiong X-PILOT-STAT support and workaround
|
|
+ problem with bash eating backslash of ic35path
|
|
+ errors/warnings with 'configure --enable-pedantic'
|
|
+ compile problem with yacc (if vcc.y changed)
|
|
+ no sync conflict resolve yet
|
|
+ proprietary VMEMO format
|
|
2001-02-17_21 done
|
|
+ ic35mgr mmcget/mmcput check ic35path before connect
|
|
bug-report from Thomas Lichtenberg
|
|
2001-02-06_00 todo
|
|
valid ic35path:
|
|
+ auto-translate leading anycase mmcard[12], lower to upper, '/' to '\'
|
|
+ leading "MMCard[12]/"
|
|
+ adjacent / or \ not allowed
|
|
+ max 1 dot between '/' and '/' or end
|
|
+ max 8 chars before dot
|
|
+ max 3 chars after dot
|
|
tests (mail from Thomas Lichtenberg):
|
|
+ ic35mgr mmcdel MMCard1\IC35\BITMAP\INDIANER.BMP
|
|
+ ic35mgr mmcput MMCard1\TEST\TEST1.TXT test.txt
|
|
2001-02-18_07 done
|
|
+ correct com_simrecv(): dummy for non-logged receive bytes, adjacent "RD nn"
|
|
2001-01-04_05 todo
|
|
+ err.corr: fill block from adjacent "RD nn" lines, dummy non-logged
|
|
x handle checksum problem due to dummy bytes
|
|
cannot, must patch simfile with expected checksum(s)
|
|
2001-02-18_23 done
|
|
+ configure --disable-logandcomsim
|
|
2001-02-25_20 todo proposed by Harald Becker
|
|
+ configure option for disable logging and simulation for production version
|
|
default enabled
|
|
+ use macros LPRINTF(()), LOG_INIT(()), etc. to reduce codesize
|
|
2001-03-02_02 done
|
|
+ reduce priority when using busywait
|
|
2001-02-25_20 todo proposed by Harald Becker
|
|
+ use for restore,mmcput only, nice(+2), man 2 nice
|
|
+ option "-n niceval" or "--nice niceval", default niceval 2
|
|
allowed for users 0..19 for root -20..19, 0 is normal prio
|
|
2001-03-03_04 done
|
|
+ autogen.sh script for generating configure, Makefile.in, etc.
|
|
2001-05-30_11 todo problem report by Konrad Mader <konrad.mader@gmx.de>
|
|
2001-08-02_22 done
|