Re: [Barry-devel] Problem with fc10/8120/tmobileus...
On Thu, Jan 15, 2009 at 5:17 PM, Chris Frey cdf...@foursquare.net wrote: On Thu, Jan 15, 2009 at 06:57:01PM -0500, Rick Scott wrote: I tried to build on a mostly virgin FC 10 system today. The lib and tools seemed to build okay, the gui wouldn't configure because of missing gtkmm packages. My effort to yum something suitable for that failed. I believe 'yum search gtkmm' should have found something for you. gtkmm24 should do the trick. You'll need libglademm20 and friends too, but I'd be surprised if they weren't available. Even libtar is listed on Fedora's package page. Remember you have to install the -devel versions of these packages. -edge -- This SF.net email is sponsored by: SourcForge Community SourceForge wants to tell your story. http://p.sf.net/sfu/sf-spreadtheword ___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
Re: [Barry-devel] Error during install of Barry-0.14 on Ubuntu 8.04
On Sat, Dec 13, 2008 at 5:13 AM, Jim Allen j...@llens.net wrote: Greetings, BTOOL (Barry library version 0.9 (little endian)) does not find my Blackberry Pearl 8330. So in an attempt to upgrade Barry from 0.9.1 , I am encoutering the following. No, I have not had a working Barry install on this system. However, Barry0.9.1 installed without error. The reported error: configure: error: C compiler cannot create executables Attached is the config.log file. config.log snippett: (Begin) configure:2841: $? = 1 configure:2864: checking for C compiler default output file name configure:2891: gccconftest.c 5 /usr/bin/ld: crt1.o: No such file: No such file or directory collect2: ld returned 1 exit status You don't appear to have the gnu toolchain installed yet. What does 'dpkg --list libgcc1' and 'dpkg --list gcc' indicate? -edge -- ___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
Re: [Barry-devel] Sync fails with the following error sync failed: Unable to write one or more objects
On Tue, Nov 4, 2008 at 5:42 AM, Aniruddha [EMAIL PROTECTED] wrote: I'm trying to sync my blackberry with evolution through multisync. Unfortunately I always get the following error: This object type is disabled in the barry-sync config Mapping Write Error: This object type is disabled in the barry-sync config Member 1 of type barry-sync committed all changes. All clients have written Member 2 of type evo2-sync just disconnected Member 1 of type barry-sync just disconnected All clients have disconnected The sync failed: Unable to write one or more objects Error while synchronizing: Unable to write one or more objects My config: # This is the default configuration file for the barry-sync opensync plugin. # Comments are preceded by a '#' mark at the beginning of a line. # The config format is a set of lines of keyword values. # # Keywords available: # # DebugMode- If present, verbose USB debug output will be enabled # # Device - If present, it is followed by the following values: # PIN number- PIN number of the device to sync with (in hex) # sync calendar - 1 to sync calendar, 0 to skip # sync contacts - 1 to sync contacts, 0 to skip # # Password secret - If present, specifies the device's password in plaintext # #DebugMode Device 123aa333 calendar 1 contacts 0 #Password secret Unless there's been some change that I haven't noticed you only need the binary for the calendar and contacts option, thus: Device 123ab456 1 0 -edge - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
Re: [Barry-devel] Images and Photos
On Mon, Oct 20, 2008 at 4:23 PM, Martin Owens [EMAIL PROTECTED] wrote: Hey Chris, Is there a way to access camera photos from the blackberry via the databases? because say if a phone doesn't have it's Mass Storage Device it won't appear as a disk. Thoughts? are some files just unavailable? Or is there some file system mumbo-jumbo? You can retrieve the contact photos now (as bits, we don't format or package them in any way), but the hooks to access the folders haven't been fully implemented. I've played around with them a little and I think it's possible. FWIW, -edge - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
[Barry-devel] strange new problem
I just had a strange problem occur. I have just upgraded to the latest cvs, was doing a backup and got this error: Backup error: Desktop: database name not found: Secure Email Decision Maker But when I look in the list of databases I have this one isn't found. I'll look into it a bit more but I thought I'd post this just in case someone else has seen it or fixed it. -edge - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
[Barry-devel] formats for xfering/sync'ing data
Right now we convert to vformat in order to use opensync. What is the general consensus about using xml either as the primary format or as a parallel/selectable format? And are we (a royal we :0) just skipping opensync 0.3x and jumping right to .40? -edge - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
Re: [Barry-devel] Kernel driver
On Wed, Oct 8, 2008 at 7:03 AM, Martin Owens [EMAIL PROTECTED] wrote: I think it is best to start at the lowest level we can, and we may run into some roadblocks along the way. Especially the probe messages that are not well understood yet. Did you ever work out how to identify a given BlackBerry device? having good identification for devices is key if you want to move functionality up into userspace. If you can create a black berry information dobry that's used by dbi and/or hal to populate stuff ready for userland. _that_ would be useful. So long as hardware identification, power management (you know) and low level interfaces are kernel bound. The user space can excel then at cooking up some cool stuff. Since 2.6 linux has started to rely heavily on hal and a quick glance at it on an F8 (2.6.21) box shows that hal notices a blackberry as both a storage device and a usb device. And once hal has noticed a device it's very easy to get whatever information there is out. I haven't been paying a lot of attention to what information barry wants, but I'll go back and look so we can verify that hal sees what we want it to see. -edge - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
Re: [Barry-devel] Shared Libraries not loading
On Tue, Jul 29, 2008 at 8:34 AM, Caleb [EMAIL PROTECTED] wrote: Hey all. Have a question about shared libraries. I can compile and install barry with the opensync plugin all day on my Ubuntu 7.04 Feisty Fawn laptop installation but I have this friend with the latest and greatest from our friends a Canonical and community and I always receive a shared libraries error on load like the following. barrybackup: error while loading shared libraries: libbarry.so.0: cannot open shared object file: No such file or directory I get this with btool as well. I do nothing different from compiling on my 7.04 to his 8.04 and only on the 8.04 am I getting the error. Suggestions? I have unloaded the usb_storage module and made sure the files are actually there in /usr/local/lib. Beyond this I have run an strace on the command and me not being an expert it appears that the program is looking for the files in the wrong directory. You might try adding /usr/local/lib to /etc/ld.so.conf and running ldconfig -a as su. -edge - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
Re: [Barry-devel] Fedora 8 - BBPerl - Starting from scratch how to / help
On Fri, Apr 18, 2008 at 9:26 PM, lance raymond [EMAIL PROTECTED] wrote: ok, from the testing in the past and fustrations reading 10 different posts about things, it's easy to start a new thread as a help / how to Running Fedora 8 on a Dell XPS 1330 laptop. Before I start installing barry* barry-0.12-1.fc7.src.src barry-gui-0.12-1.fc7.i386.rpm barry-util-0.12-1.fc7.i386.rpm libbarry-0.12-1.fc7.i386.rpm A first run attempt at installing gives; error: Failed dependencies: libboost_serialization.so.2 is needed by barry-util-0.12-1.i386 and I do have the following installed; rpm -qa |grep boost boost-devel-1.34.1-7.fc8 You probably want to 'yum install boost' to get the library you're looking for. But it will give you libboost-serialization.3 (f8) so maybe you'll have to do a symbolic link, or try to find a barry package that has been built on f8. -edge - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
Re: [Barry-devel] Barry doesn't detect my Blackberry pearl
On Thu, Apr 17, 2008 at 1:58 PM, Aniruddha [EMAIL PROTECTED] wrote: Succes! Barry detects my blackberry :D I only have problems getting the gui to compile: In file included from DeviceIface.h:30, from BackupWindow.h:25, from main.cc:28: tarfile.h:27:20: error: libtar.h: No such file or directory tarfile.h:37: error: 'tartype_t' does not name a type tarfile.h:41: error: ISO C++ forbids declaration of 'TAR' with no type tarfile.h:41: error: expected ';' before '*' token tarfile.h:60: error: 'tartype_t' has not been declared make[2]: *** [main.o] Error 1 make[2]: Leaving directory `/home/aniruddha/barry/gui/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/aniruddha/barry/gui' make: *** [all] Error 2 Make sure you have installed libtar.devel -edge - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
[Barry-devel] timezone patch
Here is a patch and a couple of files for the timezone database. It seems to apply against both HEAD and the architecture branch without changes. -edge r_timezone-head.patch Description: Binary data r_timezone.cc Description: Binary data r_timezone.h Description: Binary data - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
[Barry-devel] app downloading
If no one else is too far into it, or if they would like some help, I'm going to start looking at the java loader protocol. -edge - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
[Barry-devel] X86_64 install
I just noticed that in doing a clean install on a F8 X86_64 system the barry-sync libs are not put into /usr/lib64/opensync/plugins, only in /usr/lib/opensync/plugins, thus preventing msynctool from seeing them. I must of hacked around this before and not made a note of it. -edge - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
Re: [Barry-devel] Blackberry Pearls and btool killer
On Nov 26, 2007 3:39 AM, Martin Owens [EMAIL PROTECTED] wrote: OK contrary to my last email I decided to look at btool a little closer; running btool more than once does kill the blackberry. I'm not entirly sure why and since I lack any windows logs for blackberry pearls I'm not even sure what is wrong. There is probably some command which closes the connection or some such, or I'm forggeting to read off the last message from the usb buffer and that kills it some how. Chris if your on irc at some point, that would be great. As a data point. With the latest cvs (and a couple before) on Fedora 8 x86_64 with no barry kernel module installed - as soon as I plug my curve into the usb port it resets. -edge -- Brian Edginton [EMAIL PROTECTED] - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
[Barry-devel] curve: here's what btool sees and says
lame:~/workspace/barry [34] btool -v -d Messages usb_set_debug: Setting debugging level to 9 (on) usb_os_init: Found USB VFS at /dev/bus/usb usb_os_find_busses: Found 002 usb_os_find_busses: Found 001 usb_os_find_devices: Found 016 on 002 usb_os_find_devices: Found 010 on 002 usb_os_find_devices: Found 001 on 002 error obtaining child information: Inappropriate ioctl for device usb_os_find_devices: Found 002 on 001 usb_os_find_devices: Found 001 on 001 error obtaining child information: Inappropriate ioctl for device usb_os_find_busses: Found 002 usb_os_find_busses: Found 001 usb_os_find_devices: Found 016 on 002 usb_os_find_devices: Found 010 on 002 usb_os_find_devices: Found 001 on 002 error obtaining child information: Inappropriate ioctl for device usb_os_find_devices: Found 002 on 001 usb_os_find_devices: Found 001 on 001 error obtaining child information: Inappropriate ioctl for device Blackberry devices found: No device selected lame:~/workspace/barry [35] - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
[Barry-devel] [patch] r_folder.patch
Here is a patch to include the Folders database. I hacked it up for debugging the Messages header stuff, but it is a good starting place for someone who wants to write a BB desktop for linux. The parent directory information is kept in field codes 0x0d and 0x0e. I didn't format them for printing. -edge Index: tools/btool.cc === RCS file: /cvsroot/barry/barry/tools/btool.cc,v retrieving revision 1.19 diff -u -r1.19 btool.cc --- tools/btool.cc 8 Jun 2007 18:54:22 - 1.19 +++ tools/btool.cc 24 Jun 2007 16:39:17 - @@ -239,6 +239,11 @@ new RecordParserSavedMessage, StoreSavedMessage ( new StoreSavedMessage(filename, false))); } + else if( name == Folders ) { + return auto_ptrParser( + new RecordParserFolder, StoreFolder ( +new StoreFolder(filename, false))); + } else { // unknown database, use null parser return auto_ptrParser( new DataDumpParser ); Index: src/record.h === RCS file: /cvsroot/barry/barry/src/record.h,v retrieving revision 1.27 diff -u -r1.27 record.h --- src/record.h 8 Jun 2007 19:25:15 - 1.27 +++ src/record.h 24 Jun 2007 16:39:17 - @@ -208,6 +208,7 @@ #include r_task.h #include r_pin_message.h #include r_saved_message.h +#include r_folder.h #endif Index: src/Makefile.am === RCS file: /cvsroot/barry/barry/src/Makefile.am,v retrieving revision 1.19 diff -u -r1.19 Makefile.am --- src/Makefile.am 8 Jun 2007 18:56:01 - 1.19 +++ src/Makefile.am 24 Jun 2007 16:39:17 - @@ -70,6 +70,7 @@ r_saved_message.h \ r_servicebook.h \ r_task.h \ + r_folder.h \ socket.h \ time.h \ usbwrap.h \ @@ -97,6 +98,7 @@ r_saved_message.cc \ r_servicebook.cc \ r_task.cc \ + r_folder.cc \ packet.cc packet.h \ controller.cc \ version.cc \ Index: src/s11n-boost.h === RCS file: /cvsroot/barry/barry/src/s11n-boost.h,v retrieving revision 1.9 diff -u -r1.9 s11n-boost.h --- src/s11n-boost.h 8 Jun 2007 18:54:22 - 1.9 +++ src/s11n-boost.h 24 Jun 2007 16:39:17 - @@ -252,6 +252,15 @@ } } +template class ArchiveT +void serialize(ArchiveT ar, Barry::Folder f, const unsigned int ver) +{ + ar make_nvp(FolderName, f.FolderName); + if( ver BARRY_POD_MAP_VERSION ) { + ar make_nvp( Unknowns, f.Unknowns); + } +} + }} // namespace boost::serialization #endif Index: src/r_folder.h === RCS file: src/r_folder.h diff -N src/r_folder.h --- /dev/null 1 Jan 1970 00:00:00 - +++ src/r_folder.h 1 Jan 1970 00:00:00 - @@ -0,0 +1,96 @@ +/// +/// \file r_folder.h +/// Record parsing class for the Folder database. +/// + +/* +Copyright (C) 2005-2007, Net Direct Inc. (http://www.netdirect.ca/) +Copyright (C) 2007, Brian Edginton + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +See the GNU General Public License in the COPYING file at the +root directory of this project for more details. +*/ + +#ifndef __BARRY_RECORD_FOLDER_H__ +#define __BARRY_RECORD_FOLDER_H__ + +#include record.h +#include vector +#include string +#include stdint.h + +namespace Barry { + +class Folder +{ +public: + typedef std::vectorUnknownField UnknownsType; + uint8_t RecType; + uint32_t RecordId; + + std::string FolderName; + uint16_t FolderNumber; // Not unique, used for ordering of subfolders - NOT level + uint16_t FolderLevel; // From parent + + enum FolderTypeEnum { + FolderSubtree = 0, + FolderDeleted, + FolderInbox, + FolderOutbox, + FolderSent, + FolderOther, + FolderDraft = 0x0a + }; + FolderTypeEnum FolderType; + + enum FolderStatusType { + FolderOrphan = 0x50, + FolderUnfiled, + FolderFiled, + }; + + UnknownsType Unknowns; + +public: + Folder(); + ~Folder(); + + const unsigned char* ParseField(const unsigned char *begin, + const unsigned char *end); + uint8_t GetRecType() const { return RecType; } + uint32_t GetUniqueId() const { return RecordId; } + void SetIds(uint8_t Type, uint32_t Id) { RecType = Type; RecordId = Id; } + void ParseHeader(const Data data, size_t offset); + void ParseFields(const Data data, size_t offset); + void BuildHeader(Data data, size_t offset) const; + + void Clear(); + + void Dump(std::ostream os) const; + bool operator(const Folder other) const { return FolderName other.FolderName; } + + // database name + static const char * GetDBName() { return Folders; } + static uint8_t
[Barry-devel] [patch] Adds PIN Message
; + if( ReplyTo.Email.size()) + os Reply To: ReplyTo \n; if( Subject.size() ) os Subject: Subject \n; os \n; @@ -194,6 +226,11 @@ else os *i; } + os \n; + if( Attachment.size() ) + os Attachments: Attachment \n; + + os Unknowns; os \n\n; } Index: src/s11n-boost.h === RCS file: /cvsroot/barry/barry/src/s11n-boost.h,v retrieving revision 1.6 diff -u -r1.6 s11n-boost.h --- src/s11n-boost.h 27 May 2007 17:19:25 - 1.6 +++ src/s11n-boost.h 1 Jun 2007 10:37:21 - @@ -113,7 +113,7 @@ } template class ArchiveT -void serialize(ArchiveT ar, Barry::Message::Address a, const unsigned int ver) +void serialize(ArchiveT ar, Barry::Address a, const unsigned int ver) { ar make_nvp(Name, a.Name); ar make_nvp(Email, a.Email); @@ -125,8 +125,11 @@ ar make_nvp(From, m.From); ar make_nvp(To, m.To); ar make_nvp(Cc, m.Cc); + ar make_nvp(Sender, m.Sender); + ar make_nvp(ReplyTo, m.ReplyTo); ar make_nvp(Subject, m.Subject); ar make_nvp(Body, m.Body); + ar make_nvp(Attachment, m.Attachment); if( ver BARRY_POD_MAP_VERSION ) { ar make_nvp(Unknowns, m.Unknowns); @@ -216,6 +219,21 @@ } } +templateclass ArchiveT +void serialize(ArchiveT ar, Barry::PINMessage p, const unsigned int ver) +{ + ar make_nvp(From, p.From); + ar make_nvp(To, p.To); + ar make_nvp(Cc, p.Cc); + ar make_nvp(Bcc, p.Bcc); + ar make_nvp(Subject, p.Subject); + ar make_nvp(Body, p.Body); + + if(ver BARRY_POD_MAP_VERSION) { + ar make_nvp(Unknowns, p.Unknowns); + } +} + }} // namespace boost::serialization #endif Index: src/record.h === RCS file: /cvsroot/barry/barry/src/record.h,v retrieving revision 1.23 diff -u -r1.23 record.h --- src/record.h 25 May 2007 21:29:00 - 1.23 +++ src/record.h 1 Jun 2007 10:37:20 - @@ -174,6 +174,11 @@ }; std::ostream operator (std::ostream os, const std::vectorUnknownField unknowns); +typedef struct Address +{ + std::string Name; + std::string Email; +}; /// \addtogroup RecordParserClasses /// Parser and data storage classes. These classes take a @@ -193,6 +198,7 @@ #include r_message.h #include r_servicebook.h #include r_task.h +#include r_pin_message.h #endif Index: src/Makefile.am === RCS file: /cvsroot/barry/barry/src/Makefile.am,v retrieving revision 1.15 diff -u -r1.15 Makefile.am --- src/Makefile.am 25 May 2007 21:29:00 - 1.15 +++ src/Makefile.am 1 Jun 2007 10:37:20 - @@ -68,6 +68,7 @@ r_message.h \ r_servicebook.h \ r_task.h \ + r_pin_message.h \ socket.h \ time.h \ usbwrap.h \ @@ -93,6 +94,7 @@ r_message.cc \ r_servicebook.cc \ r_task.cc \ + r_pin_message.cc packet.cc packet.h \ controller.cc \ version.cc \ Index: tools/btool.cc === RCS file: /cvsroot/barry/barry/tools/btool.cc,v retrieving revision 1.16 diff -u -r1.16 btool.cc --- tools/btool.cc 27 May 2007 17:19:25 - 1.16 +++ tools/btool.cc 1 Jun 2007 10:37:21 - @@ -229,6 +229,11 @@ new RecordParserTask, StoreTask ( new StoreTask(filename, false ))); } + else if( name == PIN Messages ) { + return auto_ptrParser( +new RecordParserPINMessage, StorePINMessage ( + new StorePINMessage(filename, false ))); + } else { // unknown database, use null parser return auto_ptrParser( new DataDumpParser ); Index: src/r_pin_message.cc === RCS file: src/r_pin_message.cc diff -N src/r_pin_message.cc --- /dev/null 1 Jan 1970 00:00:00 - +++ src/r_pin_message.cc 1 Jan 1970 00:00:00 - @@ -0,0 +1,240 @@ +/// +/// \file r_pin_message.cc +/// Blackberry database record parser class for pin message records. +/// + +/* +Copyright (C) 2005-2007, Net Direct Inc. (http://www.netdirect.ca/) +Copyright (C) 2007, Brian Edginton ([EMAIL PROTECTED]) + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +See the GNU General Public License in the COPYING file at the +root directory of this project for more details. +*/ + +#include r_pin_message.h +#include record-internal.h +#include protocol.h +#include protostructs.h +#include data.h +#include time.h +#include error.h +#include endian.h +#include ostream +#include iomanip +#include time.h +#include stdexcept + +#define __DEBUG_MODE__ +#include debug.h + +using namespace std; +using namespace Barry::Protocol; + +namespace Barry { + +//std::ostream
[Barry-devel] question on makefile/directory
What is the purpose for running the following Make rule and creating the symlink barry? all-local: rm -f barry ln -s src barry clean-local: rm -f barry I'm asking because it breaks some of the CVS capabilities in eclipse, which I realize is a tool problem, but made me curious to the purpose of the rule(s). -edge pgpepLHstl1O0.pgp Description: PGP signature - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
Re: [Barry-devel] [patch] preliminary record refactoring patch
On Thursday 24 May 2007 08:34:43 pm Chris Frey wrote: If my spidey sense is tingling correctly, I suspect you are refactoring to make a Record base class that all other record classes are derived from. Yup, seemed to be the easiest way to keep things simple and reduce the amount of duplicated methods. I have purposely avoided doing this, since I want to make sure that all record classes are dead simple, and STL container safe. I've done large hierarchies of classes before, and making sure that the copy constructors and all the operator=() functions are correct is a bit of work, so I had intended to keep the record classes themselves hierarchy-less. The hierarchy I've done before had virtual operator=() functions, which is probably most of the reason why it was so much work (you could copy any object correctly, even through a base pointer). But I still favour simple record classes, just to make them absolutely bulletproof from the application's perspective. They should be able to toss these things around with no fear. Okay. Not the way I would have gone (obviously :)) but I have no problem following your lead. When I had indicated that was my direction and heard nothing back I figured it was a go. This doesn't prevent us from making helper classes or helper functions, or even helper templates (although that's less than ideal, since that just hides the code duplication). All such helpers would be hidden inside the library, and not accessible to the application. Easily enough done with class hierarchy. There are enough member functions being duplicated and what looked liked a bunch of opportunities for refactoring. I'll commit my file-split work soon, and hopefully you'll see what I mean. If you've done a lot of work on these already, I apologise for not speaking sooner. I see you're keen on sending patches (excellent!), so I'll try to post to the list more frequently as I work on things. From your previous emails, you have a bunch of record parsing classes waiting to send, and I haven't been working on any of that side lately, so we're at least not duplicating work there. Ha. Good enough. You might want to figure out a way we can better indicate what is being worked on, or needs to be done next. I've spend a couple hours on this so its not a big deal now - but I'm glad you mentioned something before the 3 day holiday down here this weekend ;) P.S. I think you should apply my class Record to class RecordT patch anyway to make the code a bit more consistent. Thanks, - Chris - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel
[Barry-devel] update record.cc and record.h
All, I've updated record.h and record.cc based on my 7100g - Outlook combination. I can now parse 275+ records with no unknowns, and I think its actually pretty accurate ;). Next this is to finish memos and add the ldap stuff to contacts. If anyone is loading their BB from a different office application and has some unknowns in contacts I'd liike to see them, contact me directly for that. -edge --- record.cc.org 2007-05-11 05:04:03.0 -0600 +++ record.cc 2007-05-11 05:04:55.0 -0600 @@ -480,29 +480,50 @@ // Contact class // Contact field codes -#define CFC_EMAIL 1 -#define CFC_PHONE 2 -#define CFC_FAX 3 +#define CFC_EMAIL 1 +#define CFC_PHONE 2 +#define CFC_FAX3 #define CFC_WORK_PHONE 6 #define CFC_HOME_PHONE 7 #define CFC_MOBILE_PHONE 8 -#define CFC_PAGER 9 -#define CFC_PIN 10 -#define CFC_NAME 32 // used twice, in first/last name order -#define CFC_COMPANY 33 +#define CFC_PAGER 9 +#define CFC_PIN10 +#define CFC_RADIO 14 // 0x0e +#define CFC_WORK_PHONE_2 16 // 0x10 +#define CFC_HOME_PHONE_2 17 // 0x11 +#define CFC_OTHER_PHONE 18 // 0x12 +#define CFC_NAME 32 // 0x20 used twice, in first/last name order +#define CFC_COMPANY 33 #define CFC_DEFAULT_COMM_METHOD 34 #define CFC_ADDRESS1 35 #define CFC_ADDRESS2 36 #define CFC_ADDRESS3 37 -#define CFC_CITY 38 +#define CFC_CITY 38 #define CFC_PROVINCE 39 #define CFC_POSTAL_CODE 40 -#define CFC_COUNTRY 41 -#define CFC_TITLE 42 +#define CFC_COUNTRY 41 +#define CFC_TITLE 42 // 0x2a #define CFC_PUBLIC_KEY 43 #define CFC_GROUP_FLAG 44 #define CFC_GROUP_LINK 52 -#define CFC_NOTES 64 +#define CFC_URL54 // 0x36 +#define CFC_PREFIX 55 // 0x37 +#define CFC_CATEGORY 59 // 0x3B +#define CFC_HOME_ADDRESS1 61 // 0x3D +#define CFC_HOME_ADDRESS2 62 // 0x3E + // If the address 3 isn't mapped then it appears + // in the same field as address2 with a space +#define CFC_HOME_ADDRESS3 63 // 0x3F +#define CFC_NOTES 64 // 0x40 +#define CFC_USER_DEFINED_1 65 // 0x41 +#define CFC_USER_DEFINED_2 66 // 0x42 +#define CFC_USER_DEFINED_3 67 // 0x43 +#define CFC_USER_DEFINED_4 68 // 0x44 +#define CFC_HOME_CITY 69 // 0x45 +#define CFC_HOME_PROVINCE 70 // 0x46 +#define CFC_HOME_POSTAL_CODE 71 // 0x47 +#define CFC_HOME_COUNTRY 72 // 0x48 +#define CFC_IMAGE 77 // 0x4D #define CFC_INVALID_FIELD 255 // Contact code to field table @@ -527,6 +548,11 @@ { CFC_MOBILE_PHONE, MobilePhone,mobile,0, Contact::MobilePhone, 0, 0 }, { CFC_PAGER,Pager, pager,0, Contact::Pager, 0, 0 }, { CFC_PIN, PIN,0,0, Contact::PIN, 0, 0 }, + { CFC_RADIO,Radio, 0,0, Contact::Radio, 0, 0 }, + { CFC_WORK_PHONE_2, WorkPhone2, 0,0, Contact::WorkPhone2, 0, 0 }, + { CFC_HOME_PHONE_2, HomePhone2, 0,0, Contact::HomePhone2, 0, 0 }, + { CFC_OTHER_PHONE, OtherPhone, 0,0, Contact::OtherPhone, 0, 0 }, + //{ CFC_NAME, Name, 0,0, Contact::Name, 0, 0 }, { CFC_COMPANY, Company,o,0, Contact::Company, 0, 0 }, { CFC_DEFAULT_COMM_METHOD,DefaultCommMethod,0,0, Contact::DefaultCommunicationsMethod, 0, 0 }, { CFC_ADDRESS1, Address1, 0,0, Contact::Address1, 0, 0 }, @@ -538,7 +564,22 @@ { CFC_COUNTRY, Country,c, country, Contact::Country, 0, 0 }, { CFC_TITLE,Title, title,0, Contact::Title, 0, 0 }, { CFC_PUBLIC_KEY, PublicKey, 0,0, Contact::PublicKey, 0, 0 }, + { CFC_URL, URL,0,0, Contact::URL, 0, 0 }, + { CFC_PREFIX, Prefix, 0,0, Contact::Prefix, 0, 0 }, + { CFC_CATEGORY, Category, 0,0, Contact::Category, 0, 0 }, + { CFC_HOME_ADDRESS1,HomeAddress1, 0,0, Contact::HomeAddress1, 0, 0 }, + { CFC_HOME_ADDRESS2,HomeAddress2, 0,0, Contact::HomeAddress2, 0, 0 }, + { CFC_HOME_ADDRESS3,HomeAddress3, 0,0, Contact::HomeAddress3, 0, 0 }, { CFC_NOTES,Notes, 0,0, Contact::Notes, 0, 0 }, + { CFC_USER_DEFINED_1, UserDefined1, 0,0, Contact::UserDefined1, 0, 0 }, + { CFC_USER_DEFINED_2, UserDefined2, 0,0, Contact::UserDefined2, 0, 0 }, + { CFC_USER_DEFINED_3, UserDefined3, 0,0, Contact::UserDefined3, 0, 0 }, + { CFC_USER_DEFINED_4, UserDefined4, 0,0, Contact::UserDefined4, 0, 0 }, + { CFC_HOME_CITY,HomeCity, 0,0, Contact::HomeCity, 0, 0 }, + { CFC_HOME_PROVINCE,HomeProvince, 0,0, Contact::HomeProvince, 0, 0 }, + { CFC_HOME_POSTAL_CODE, HomePostalCode, 0,0, Contact::HomePostalCode, 0, 0 }, + { CFC_HOME_COUNTRY, HomeCountry,0,0, Contact::HomeCountry, 0, 0 }, + { CFC_IMAGE,Image, 0,0, Contact::Image, 0, 0 }, {