This is the only namespace applications should be concerned with, for now.
Classes | |
| class | Builder |
| Base class for the builder functor hierarchy. More... | |
| class | RecordBuilder |
| Template class for easy creation of specific protocol packet builder objects. More... | |
| class | RecordFetch |
| Generic record fetch class, to help with using records without builder classes. More... | |
| class | Controller |
| The main interface class. More... | |
| class | Data |
| class | Diff |
| class | DataQueue |
| This class provides a thread aware fifo queue for Data objects, providing memory management for all Data object pointers it contains. More... | |
| class | Error |
| The base class for any future derived exceptions. More... | |
| class | BadPassword |
| A bad or unknown password when talking to the device. More... | |
| class | BadData |
| Thrown by record classes if their data is invalid and cannot be uploaded to the Blackberry. More... | |
| class | BadSize |
| Unexpected packet size, or not enough data. More... | |
| class | ErrnoError |
| System error that provides an errno error code. More... | |
| class | ContactLdif |
| Class for generating LDIF output based on a Barry::Contact record object. More... | |
| class | LogLock |
| RAII locking class used to protect the logStream passed into Barry::Init() (common.h). More... | |
| class | Modem |
| class | Packet |
| class | ZeroPacket |
| Provides an API for building and analyzing socket-0 protocol packets. More... | |
| class | DBPacket |
| Provides an API for building and analyzing raw DB protocol packets. More... | |
| class | Parser |
| Base class for the parser hierarchy. More... | |
| class | RecordParser |
| Template class for easy creation of specific parser objects. More... | |
| class | PppFilter |
| struct | ProbeResult |
| class | Probe |
| class | Calendar |
| struct | ContactGroupLink |
| class | Contact |
| class | Folder |
| class | Memo |
| class | Message |
| class | PINMessage |
| class | SavedMessage |
| class | ServiceBookConfig |
| class | ServiceBook |
| class | Task |
| class | Timezone |
| struct | FieldLink |
| struct | CommandTableCommand |
| class | CommandTable |
| struct | RecordStateTableState |
| class | RecordStateTable |
| struct | DatabaseItem |
| class | DatabaseDatabase |
| struct | UnknownData |
| struct | UnknownField |
| struct | EmailAddress |
| struct | PostalAddress |
| struct | Date |
| class | SocketRoutingQueue |
| class | DataHandle |
| std::auto_ptr like class that handles pointers to Data, but instead of freeing them completely, the Data objects are turned to the SocketRoutingQueue from whence they came. More... | |
| class | scoped_lock |
| struct | SHA_CTX |
| class | SocketZero |
| class | Socket |
| Encapsulates a "logical socket" in the Blackberry USB protocol. More... | |
| struct | TimeZone |
Namespaces | |
| namespace | Mode |
| namespace | Protocol |
Typedefs | |
| typedef std::vector< std::string > | CategoryList |
| typedef std::auto_ptr< Socket > | SocketHandle |
| typedef long | min1900_t |
Functions | |
| void | Init (bool data_dump_mode, std::ostream *logStream) |
| See also the LogLock class. | |
| bool | IsHexData (const std::string &s) |
| istream & | operator>> (istream &is, Data &data) |
| ostream & | operator<< (ostream &os, const Data &data) |
| ostream & | operator<< (ostream &os, const Diff &diff) |
| bool | LoadDataArray (const string &filename, std::vector< Data > &array) |
| bool | ReadDataArray (std::istream &is, std::vector< Data > &array) |
| BXEXPORT std::ostream & | operator<< (std::ostream &os, const ContactLdif &ldif) |
| bool | LogVerbose () |
| std::ostream * | GetLogStream () |
| std::ostream & | operator<< (std::ostream &os, const ProbeResult &pr) |
| BXEXPORT std::ostream & | operator<< (std::ostream &os, const Calendar &msg) |
| BXEXPORT std::ostream & | operator<< (std::ostream &os, const Contact &contact) |
| BXEXPORT std::ostream & | operator<< (std::ostream &os, const Folder &msg) |
| BXEXPORT std::ostream & | operator<< (std::ostream &os, const Memo &msg) |
| BXEXPORT std::ostream & | operator<< (std::ostream &os, const Message &msg) |
| BXEXPORT std::ostream & | operator<< (std::ostream &os, const PINMessage &msg) |
| BXEXPORT std::ostream & | operator<< (std::ostream &os, const SavedMessage &msg) |
| BXEXPORT std::ostream & | operator<< (std::ostream &os, const ServiceBookConfig &msg) |
| BXEXPORT std::ostream & | operator<< (std::ostream &os, const ServiceBook &msg) |
| BXEXPORT std::ostream & | operator<< (std::ostream &os, const Task &msg) |
| BXEXPORT std::ostream & | operator<< (std::ostream &os, const Timezone &msg) |
| template<class RecordT> | |
| const unsigned char * | ParseCommonFields (RecordT &rec, const void *begin, const void *end) |
| template<class SizeT> | |
| SizeT | ConvertHtoB (SizeT s) |
| void | BuildField1900 (Data &data, size_t &size, uint8_t type, time_t t) |
| void | BuildField (Data &data, size_t &size, uint8_t type, char c) |
| void | BuildField (Data &data, size_t &size, uint8_t type, uint16_t value) |
| void | BuildField (Data &data, size_t &size, uint8_t type, const std::string &str) |
| void | BuildField (Data &data, size_t &size, uint8_t type, const void *buf, size_t bufsize) |
| void | BuildField (Data &data, size_t &size, const Barry::UnknownField &field) |
| void | BuildField (Data &data, size_t &size, uint8_t type, const Barry::Protocol::GroupLink &link) |
| std::string | ParseFieldString (const Barry::Protocol::CommonField *field) |
| std::string | ParseFieldString (const void *data, uint16_t maxlen) |
| std::ostream & | operator<< (std::ostream &os, const std::vector< UnknownField > &unknowns) |
| std::ostream & | operator<< (std::ostream &os, const EmailAddress &msga) |
| std::ostream & | operator<< (std::ostream &os, const PostalAddress &post) |
| std::ostream & | operator<< (std::ostream &os, const Date &date) |
| BXEXPORT std::ostream & | operator<< (std::ostream &os, const CommandTable &command) |
| BXEXPORT std::ostream & | operator<< (std::ostream &os, const RecordStateTable &rst) |
| BXEXPORT std::ostream & | operator<< (std::ostream &os, const DatabaseDatabase &dbdb) |
| void | SHA1 (const void *dataIn, int len, unsigned char *hashout) |
| void | SHA1_Init (SHA_CTX *ctx) |
| void | SHA1_Update (SHA_CTX *ctx, const void *_dataIn, int len) |
| void | SHA1_Final (unsigned char hashout[20], SHA_CTX *ctx) |
| min1900_t | time2min (time_t t) |
| time_t | min2time (min1900_t m) |
| const TimeZone * | GetTimeZoneTable () |
| Returns a pointer to an array of TimeZone structs. | |
| const TimeZone * | GetTimeZone (unsigned short Code) |
| Searches the internal timezone code table for the given Code and returns a pointer to a TimeZone struct found. | |
| unsigned short | GetTimeZoneCode (signed short HourOffset, signed short MinOffset) |
| Searches the internal timezone table for the first matching Code. | |
| time_t | DayToDate (unsigned short Day) |
| This routine takes the day of the year and returns a time_t adjusted from the first of the year. | |
| time_t | Message2Time (uint16_t r_date, uint16_t r_time) |
| Localize the funky math used to convert a Blackberry message timestamp into a time_t. | |
| const char * | Version (int &major, int &minor) |
| Fills major and minor with integer version numbers, and returns a string containing human readable version information in English. | |
Variables | |
| bool | __data_dump_mode__ |
| std::ostream * | LogStream = &std::cout |
| pthread_mutex_t | LogStreamMutex |
| bool | __data_dump_mode__ |
| std::ostream * | LogStream |
| bool | __data_dump_mode__ |
| std::ostream * | LogStream |
| pthread_mutex_t | LogStreamMutex |
| unsigned char | Intro_Sends [][32] |
| unsigned char | Intro_Receives [][32] |
| FieldLink< Calendar > | CalendarFieldLinks [] |
| FieldLink< Contact > | ContactFieldLinks [] |
| FieldLink< Folder > | FolderFieldLinks [] |
| FieldLink< Memo > | MemoFieldLinks [] |
| FieldLink< Message > | MessageFieldLinks [] |
| FieldLink< PINMessage > | PINMessageFieldLinks [] |
| FieldLink< SavedMessage > | SavedMessageFieldLinks [] |
| FieldLink< ServiceBookConfig > | ServiceBookConfigFieldLinks [] |
| FieldLink< ServiceBook > | ServiceBookFieldLinks [] |
| FieldLink< Task > | TaskFieldLinks [] |
| FieldLink< Timezone > | TimezoneFieldLinks [] |
| TimeZone | Zones [] |
| BXEXPORT time_t Barry::DayToDate | ( | unsigned short | Day | ) |
This routine takes the day of the year and returns a time_t adjusted from the first of the year.
FIXME This function assumes the year hasn't changed, but I don't have enough information to determine where the year is in this header info
Definition at line 186 of file time.cc.
Referenced by Message2Time().
| BXEXPORT const TimeZone * Barry::GetTimeZone | ( | unsigned short | Code | ) |
Searches the internal timezone code table for the given Code and returns a pointer to a TimeZone struct found.
If the code is not found, a pointer to a valid TimeZone struct is is still returned, but the struct's Code contains TIME_ZONE_CODE_ERR, and the name is "Unknown time zone." The unknown timezone is the same offset as GMT.
Definition at line 149 of file time.cc.
References Barry::TimeZone::Name, TIME_ZONE_CODE_ERR, and Zones.
Referenced by Barry::Calendar::Dump().
| BXEXPORT unsigned short Barry::GetTimeZoneCode | ( | signed short | HourOffset, | |
| signed short | MinOffset = 0 | |||
| ) |
Searches the internal timezone table for the first matching Code.
If no matching Code is found, TIME_ZONE_CODE_ERR is returned.
This function does not adjust for daylight saving time.
Definition at line 168 of file time.cc.
References Barry::TimeZone::Name, TIME_ZONE_CODE_ERR, and Zones.
Referenced by Barry::Task::Clear(), and Barry::Calendar::Clear().
| BXEXPORT const TimeZone * Barry::GetTimeZoneTable | ( | ) |
| BXEXPORT void Barry::Init | ( | bool | data_dump_mode = false, |
|
| std::ostream * | logStream = &std::cout | |||
| ) |
See also the LogLock class.
Call this before anything else. This takes care of initializing the lower level libusb.
| [in] | data_dump_mode | If set to true, the protocol conversation will be sent to stdout via the C++ std::cout stream. |
| [in] | LogStream | Pointer to std::ostream object to use for debug output and logging. Defaults to std::cout. |
Definition at line 48 of file common.cc.
References __data_dump_mode__, LogStream, and LogStreamMutex.
Referenced by main().
| BXEXPORT time_t Barry::Message2Time | ( | uint16_t | r_date, | |
| uint16_t | r_time | |||
| ) |
Localize the funky math used to convert a Blackberry message timestamp into a time_t.
Both r_date and r_time are expected to be fed in from the Protocol::MessageRecord struct in raw form, without endian conversion. This function handles that.
Definition at line 217 of file time.cc.
References btohs, and DayToDate().
Referenced by Barry::SavedMessage::ParseHeader(), Barry::PINMessage::ParseHeader(), and Barry::Message::ParseHeader().
| BXEXPORT const char * Barry::Version | ( | int & | major, | |
| int & | minor | |||
| ) |
Fills major and minor with integer version numbers, and returns a string containing human readable version information in English.
Definition at line 39 of file version.cc.
References BARRY_VERSION_MAJOR, BARRY_VERSION_MINOR, and BARRY_VERSION_STRING.
Referenced by Usage().
1.5.1