ulib is a set of libraries which run under MacOS X and Linux to facilitate communication services between the two platforms. This is useful for developers who need a server part for their OS X or IOS applications
The ulib libraries has been developed and is copyrighted by Andreas Fink (firstname.lastname@example.org) and are used in SMSRelay AG's Message!Mover SMSProxy, Message!Mover SMSC and SMSRouter product. The ulib family consists of:
UniversalCoder Encoding arbitrary objects into bytes and vice versa (will be replaced with ASN1 encoding later) UniversalConfig Management of config files (in Kannel Style) UniversalHTTP UMHTTPServer: a webserver for application integration. Can answer request synchronously and asynchronously. UniversalLayers Management of protocol layers. (will be replaced with an ASN1 based solution later) UniversalLog Management of lofile output by the definition of log streams (source of loggin) and log destinations (logfile, console, buffers) and their defintion of levels (debug, info, error, warning) UniversalObject The grandfather of all ulib objects. Support for objects with history functions of old versions (useful for database objects). UniversalQueue UMQueue A multithread save queue UniversalSocket UMHost & UMSocket tcp and udp network sockets for IPv4 and IPv6. UniversalUtilities UMReadWriteLock: a pthread based readwrite lock UMSleeper: need to sleep for a while? UMThroughputCounter: count how many transactions per second you have UMUtil: miscellaneous stuff UMUUID: unique ID's UMAverageDelay: counter for average delays UMLock: a NSLock wrapper with optional logging and debug to track down deadlocks. UniversalJson UMJson:Encode / Decode json. UniversalRedis Redis datbaase client implementation.
Database Pools Database Queries Database Sessions MySQL session Postgresl sessoin SqLite session (incomplete)
Generic SmscConnection SMPP SmscConnection Utilities: FifoQueue GSMcharsetConversion Pointcode management Signalling Adresses conversion
ASN1 Tag, length objects: Real, BitString,Boolean, Choice, Integer, Sequence, Set This is not a full implementation, nor a ASN1 compiler.
Scripting language to implement into applications.