_________________________________________________ Changes 1.6.7 to 1.6.8 - Added IAccBuddyFeedManager and IAccBuddyFeed for uploading buddy feed data. - Added IAccPluginManager put_CommandTargetProxy(). - Added AccBuddyListProp_Dirty. - Added AccEmoticonProp_TextRepresentations. - Added AccSessionProp_MaxTempBuddyCount. - Added ACC_E_SECURITY_LIB_LOAD_FAILED, ACC_E_USER_RATE_LIMITED and ACC_E_USER_TIMEOUT. - Added preference aimcc.privacy.disclosePluginsToBuddyFeed. - Added AccImContentFlags_File, AccImContentFlags_ImageData, AccImContentFlags_ImageUri. - Changed AccImContentFlags_All to include AccImContentFlags_File. - Changed aimcc.connect.disableLocalRateLimits default value to TRUE. - Deprecated AccImProp_SuperIconTrigger. - On Linux, changed to look for DLLs in system path if not found in working directory. - On Win32, added support for AMO plugins. - On Win32, added support for plugin uninstalling. - On Win32, movedÊplugin cache to a location less likely to be deleted. - On Win32, changed DCS internal implementation. Note: DCS is no longer supported on Win2K. - On Win32, added C# sample awshbuddy. - Java wrapper: - Added support for AccPreferencesHook2. - Added support for new AIMCC interfaces. - Fixed assumption that cookie in OnRequestServiceResult is an array of bytes. - Fixed bartItem.setDataObject. - Optimization: - Improved string conversions to UTF-8. - On Win32, improved performance of file operations. - Bug fixes: - Cannot sign on if computer clock is significantly off. - Intermittent problems sending buddy list & related data to servers, especially if a lot of changes are made at once (time-outs, data not sent until another change is made). - Unable to assert large IAccAvTrack or large IAccLocation. - Starting secure IAccImSession with offline user gets stuck in connecting state. - Spurious error reported when starting outgoing IAccFileSharingSession. - Spurious firing of OnFileSharingRequestXferResult on sending side. - Wrong value for AccFileXferSessionProp_TotalNumFiles if xferring more than one file at a time. - OnBuddyAdded doesn't fire for Offline group after referenced offline buddy re-added. - IAccFileXferSession::ResolveCollision() doesn't work if xp_str parameter is not well-formed. - Removing an IAccGroup can cause temp buddy creation. - C++ get_Property accessors don't work for IUnknown. - OnParticipantJoined fires instead of OnSecondarySessionChange(AccSecondarySessionProp_Participants) when chat reconnects. - Outgoing IAccFileSharingSession doesn't work if IAccAccessControlHook is not provided. - When signing off, if an error is encountered while calling IAccSecondarySession::EndSession() no more IAccSecondarySessions are ended. - IAccCustomSession::EndSession() sometimes fails. - CannotÊget AccCustomSessionProp_InvitationData in OfferAnswer mode. - IAccFileSharingSession state never changes to online for sharer. - Chat room stops working after 24 hours. - Incorrect error returned when DCS fails. - If first SecurId challenge fails, second challenge doesn't work. - Disabled & removed plugins that are reinstalled remain disabled. - Preference aimcc.plugins.safeMode should be safer and more efficient. - DIM proposal is mishandled if there's a pending standard IM proposal from same user. - Crash while processing xml. - On Linux, thunks to functions in libraries loaded for internal use were being exported. - On Mac, misbehavior if system clock time is changed while AIMCC is running. - On Mac, plugin scanning is not fault-tolerant. - On Win32, plugins are unregisteredÊwhen uninstalled (it's now the responsibility of the plugin). _________________________________________________ Changes 1.5 to 1.6.7 - Changed internal authorizer for all platforms except Windows Mobile. New authorizer uses SSL, so NSS & NSPR libraries are required. - Added built-in support for the Offline buddy list group. - Added Real-Time IM feature, which is a variation of Direct IM in which one participant can see what the other participant is typing in real-time. - IAccSession RequestService() behavior is updated. See technotes #4 and #12. - Added support for plugins on Linux. - Added IAccBartCacheManager. - Added IAccSession VerifyPassword(). - Added AccCommandFlags_PresenceUi and AccCommandFlags_UninstallUi. - Added AccGroupProp_Offline. - Added AccImSessionProp_LocalWantsRtim, AccImSessionProp_RemoteWantsRtim, AccImSessionProp_QueuedImCount and AccImFlags_Rtim. - Added IAccPluginInfo GetParameter(). - Added AccPluginInfoProp_Type, AccPluginInfoProp_VerificationResult, AccPluginInfoProp_LatestVersion, AccPluginInfoProp_DownloadUrl, AccPluginInfoProp_ContentUrl, AccPluginInfoProp_PluginUrl, AccPluginInfoProp_SettingsUrl and AccPluginInfoProp_AboutUrl. - Added AccSessionProp_Credentials. - Added AccSessionState_QueryingDcs and AccSessionState_WillShutdown. - Added OnPluginUninstalled. - Added internal NAT detection to help with NAT traversal. - Added support for in IAccIm mime type conversions. - Added preferences aimcc.buddyList.flat, aimcc.buddyList.hideInfo, aimcc.buddyList.hideOfflineBuddies, aimcc.buddyList.hideOfflineGroup, aimcc.buddyList.offlineGroupCollapsed, aimcc.connect.dcsHost.address, aimcc.connect.dcsHost.port, aimcc.connect.dcsHost.url, aimcc.connect.discloseNatInfo, aimcc.connect.emailAccountType, aimcc.connect.enterpriseOnFailure, aimcc.connect.requireBuddyList, aimcc.connect.wireless, aimcc.folders.cache.bart, aimcc.folders.cache.buddyIcons, aimcc.folders.cache.locate, aimcc.im.direct.receiveRtim, aimcc.im.playFirstSoundOnly and aimcc.im.showSmallNotifications. - Added ACC_E_BUDDYLIST_UNAVAILABLE and ACC_E_USER_AUTH_REQUIRED. - Deprecated AccImSessionProp_PromoteCentralized. - Java wrapper: - Bubbled up support for new AIMCC objects, properties, etc. - Added support for AccGroup.insertBuddy(). - Fixed crashes caused by variants released on wrong thread. - Fixed treatment of xp_kvariant. - Optimization: - Large ignoreList operations are unreasonably slow. - Bug fixes: - AccSecondarySessionProp_Participants sometimes excludes self. - Additional character escaping when converting IM to xhtml. - BuddyIcon cache only works on big-endian CPUs. - Away message not re-asserted when auto-reconnect. - Cookie dropped from incoming chat IMs. - Crash when start secure secondarySession. - Empty IAccBartItem returned instead ofÊACC_E_NO_DATA. - Enhanced support for Domain Configuration Service. - IAccFileXferSession's state is wrong after proposal sent. - Improved chat interop with ICQ 6. - Improved behavior around secure (password) preferences. - Improved behavior when MoveBuddy() is a no-op. - Improved behavior when unable to load buddyList from server. - Improved handling of timestamps when local machine clock is off. - OnChangesEnd can fire prematurely. - Order of events wrong when (D)IM session created. - Same username with different formatting can be added to ignoreList. - Unable to accessÊhost-based preferences or assert bart items during AccSessionState_Starting. - Unable to accessÊpreference aimcc.privacy.deniedUsers as a whole. - Unable to get info about plugins when aimcc.plugins.safeMode is true. - When auto-reconnect, chat rooms don't reconnect. - Miscellaneous crashes due to dereferencing null pointer. - Miscellaneous A/V improvements. - Miscellaneous bart statusText improvements. - Miscellaneous IAccCustomSession improvements. - Preference aimcc.av.enumDevices is sometimes ignored. - On Mac, unable to guess location if can't get gateway info. - On Mac, network disconnect sometimes false positives (e.g., when turn on AirPort while connected via Ethernet). - On Win32, improved internal pluggable protocol handling of aolbart: URLs. - On Win32, improved plugin install/uninstall behavior. - On Win32, file xfer gets stuck if receive file containing Mac resource fork and file already exists. _________________________________________________ Changes 1.4 to 1.5 - Added IAccAvTrack, IAccImageReference and AccBartItemType_CurrentAvTrack. - Added AccImProp_AllowedContentFlags, AccImProp_ActualContentFlags and AccImContentFlags. - Added AccCommandProp_ParentId. - Added AccPluginInfoProp_Plugin. - Added AccSessionProp_AvTrack. - Added AccUserProp_AvTrack and AccUserProp_HtmlInfo. - Changed to allow non-embed IAccIms to be sent while IAccImSession rolls over from AccImSessionType_Im to AccImSessionType_DirectIm. - When calling IAccBuddyList MoveBuddy() to move a buddy to a group that already contains the buddy, the buddy is removed from the source group, and in the destination group the buddy is moved to the new position. Previously the operation failed. - AccCreateObject() to handle IAccImageReference creation. - Deprecated AccSecondarySessionProp_LinkedSessions. - Bug fixes: - IAccCommand get_Property(AccCommandProp_Id) doesn't work. - IAccSession get_Property(AccSessionProp_Profile) and get_Property(AccSessionProp_AwayMessage) returned internal objects instead of copies. - PassCode prompt doesn't time out. - After sending proposal to rollover from AccImSessionType_Im to AccImSessionType_DirectIm, before remote client accepts/rejects, IAccImSession's AccSecondarySessionProp_State changes to AccSecondarySessionState_Connecting. - Various A/V problems. - Various IAccCustomSession fixes. - In some rare circumstance, old bart values (notably status text) are asserted. - Vulnerability when copying received IAccIm text to a browser view that has scripting enabled. _________________________________________________ Changes 1.3 to 1.4 - Added support for video embeds in IAccIm. This is intended for use in profiles, though it's not supported yet by AOL servers. It works now in Direct IM. See new properties AccImProp_AllowedContentFlags and AccImProp_ActualContentFlags. - Added AccBartItemType_StatusTextTimestamp. Use AccBartItemProp_DataObject to get xp_variant of type VT_DATE. - Added AccStringHasPrefix(). - Added AccCommandFlags_AboutUi. - Added AccSessionProp_StatusTextTimestamp. - Added AccUserProp_StatusTextTimestamp. - Added preference aimcc.plugins.safeMode, which disables all plugins. - Changed IAccShareBuddiesSession to support transmission of friendly names. - Changed direct IM behavior such that while uploading embeds, non-embed messages can be sent (routed through standard IM). - Changed to allow get/set AccUserProp_FriendlyName for a temp buddy. - Deprecated AccImProp_ContainsImages, AccImProp_AllowImages, and preference aimcc.away.updateStatusText. - AccSupport: - Fixed CAccPrefsHook::GetChildSpecifiers() was not implemented. - accbuddy: - Added g:sp command to set AccGroupProps. - Added cs:c to cancel IAccCustomSession proposal. - Fixed error reporting of empty data when using s:gb and s:gbo. - Java wrapper: - Updated to current AIMCC APIs. - Fixed values of LimitedDisclosure and FullDisclosure. - More error checking. - Bug fixes: - _AccMemAlloc not exported. - AccSecondarySessionProp_Invitation doesn't work for IAccCustomSession, in AccCustomSessionMode_Message. - Potential crash if release IAccCustomSession without first calling EndSession(). - IAccCustomSession Invite() never times out. - IAccCustomSession CancelProposal() not implemented, in AccCustomSessionMode_OfferAnswer and AccCustomSessionMode_Streams. - IAccCustomSession in AccCustomSessionMode_Message reports bogus error when ending. - IAccCustomSession in AccCustomSessionMode_OfferAnswer doesn't notify remote session when it goes offline. - IAccSession::CreateStream() fails if passed an escaped URL. - When sending IAccIm* in chat room, OnImSendResult fires with NULL IAccIm* parameter. - Error handling if adding/deleting temp buddies fails. - Crash if end IAccFileXferSession while in OnFileXferProgress. - Intermittent crash if release IAccFileXferSession immediately after it starts. - Memory leak and potential crash when IAccAvSession ends. - Intermittent inability of IAccAvManager to build device list. - Various A/V improvements. - Cannot set some AccUserProps immediately after adding IAccUser to buddy list. - Some IAccSession properties (e.g. AccSessionProp_Subscriptions) can be accidentally zeroed. - Connect errors reported as proxy errors. - Non-specific error reported when login fails due to proxy authentication error. - Cannot unpause IAccSession from JavaScript using empty password. _________________________________________________ Changes 1.2.4 to 1.3 - Updated internal dependencies, so on Mac & Linux the new SDK is not a drop-in upgrade; you must rebuild. - Added IAccPreferences2. Custom clients that can save preferences securely should implement this. Refer to Technote 3 for details. - Added AccSessionState_Paused and AccSessionProp_Pause to allow sessions to go offline temporarily (e.g., during machine sleep). - Added AccPluginInfoProp_Windows to allow plugins to notify custom clients of plugin windows. This is used on Windows to support IsDialogEvent(). - Added AccImProp_Local and event OnLocalImReceived for IMs intended for history view but not for the network. - Added IAccServiceTicket which will appear in OnRequestServiceResult's "cookie" argument if you are a plugin running within AIM 6.2 beta 2 or later. - Added AccGroupProp_ReadOnly. - Added AccEmoticonProp_BartUrl. - Added more AccCommandFlags. - Added AccSetMessageAvailableCallback(). - Added AccStringWillTruncateForBartItem(). - Added preferences: aimcc.buddies.[normalized, escaped user name].emailAddress, aimcc.prefs.onlineSpecifiers. - Removed preferences: aimcc.connect.host.tihPassword/tihPasswordSecure. - Account's own profile, away message and bart location can now be pushed remotely (e.g., by a bot), and OnSessionChange fires appropriately. - E_PENDING is returned if attempt to get own profile or away message and data are already being fetched. - Deprecated AccCommandId. - On Linux, added audio conferencing support. - AccSupport: - Added OnLocalImReceived. - Bug fixes: - Typo in CAccPtr::QIHelper constructor. - CAccTransIdMap::Remove() did not return E_FAIL if the id did not exist. - CAccPrefsHookOnFile incompatibility with Windows 98. - accbuddy: - Added :so command to signoff without quitting. - Added av:sm command to set av manager properties. - Added local option to im:sm command to support OnLocalImReceived. - Added display of new AIMCC properties. - A warning is displayed when setting a bart string that will be truncated. - Changed code that dumps preferences to use RequestValue() if the error from GetValue() is ACC_E_MUST_REQUEST_DATA, not if it's ACC_E_NO_DATA. - Java wrapper: - Updated with new AIMCC APIs except IAccPreferences2. - Added ugly but handy AccSession GetProperty()/SetProperty(). - Removed exception specification from prefs hook. - Bug fixes: - Handling out-of-memory conditions. - Edge case when setting/removing event listener. - Bug fixes: - Inability to remove smart groups from buddy list. - Inability to get updated AccSessionProp_ bart data immediately after setting data. - Handling of preference aimcc.connect.secure when host/port are specified. - Values returned for AccFileXferProp_LocalPath and AccFileXferProp_Name are now correct after calling ResolveCollision(AccFileXferSessionCollisionAction_SaveAs). - Some AccUserProp_ values could not be edited after an IAccUser was moved in the buddy list. - Could not receive IMs from non-buddies if already holding max number of temp buddies. - OnPluginChange didn't fire for AccPluginInfoProp_Enabled. - Intermittent crash related to NULL bart item. - Canceler's AccSecondarySessionProp_State is AccSecondarySessionState_Connecting instead of AccSecondarySessionState_Offline, after canceling new DIM proposal. - ACC_E_NO_DATA instead of E_FAIL is now returned for empty AccSessionProp_Profile and AccSessionProp_AwayMessage. - OnSecondarySessionChange(AccSecondarySessionProp_Invitees) didn't fire if rollover to chat failed. - Standard IM session with self rollover to chat. - Getting array of account's other instances. - Rejecting DIM proposal when not rolling over. - was mistakenly permitted in xhtml. - OnUserChange didn't fire when instance friendlyName or emailAddress changed. - Incorrect error/value returned by prefs->GetValue("aimcc.customData"). - Error instead of default value returned by prefs->GetValue("aimcc.privacy.webPresenceMode"). - Handling incorrectly-formatted incoming IMs. - Problem with internal timers (Mac & Linux). - Auto-reconnect now works (Mac). - Various A/V improvements. - When an IAccUser is removed from a buddy list but not released, it now correctly behaves as a temp buddy. _________________________________________________ Changes 1.2.3 to 1.2.4 - Added AccSessionProp_PhoneNumber (for AIM Phoneline). - Added AccWebPresencePrivacyMode enumeration - Added preferences: aimcc.privacy.webPresenceMode (by default, defers to aimcc.privacy.mode) and aimcc.connect.openAuthentication. - Added Technote 9 about Direct IM. - Improved IAccIm text conversion of some malformed input (e.g., unbalanced quotation marks inside tags) so as to not return malformed output. This issue can have security implications, depending on how applications handle malformed output. - Java wrapper: - Added AccVariant.SetBytes(), which creates a safearray of bytes. - Bug fixes: - Inability to convert IAccIm text from xhtml to xhtml-div. - Incompatibility with microphones built into some (but not all) USB cameras. - Fixed OnUserChange not fired when another instance changes a buddy's AccUserProp_FriendlyName or AccUserProp_EmailAddress. - On Win32, IAccStreamListener missing from typelib. - On Mac, intermittent problem loading plugins. - On Win32, tweaked logic that automatically uninstalls plugins that aren't found. - Intermittent crash in IAccCustomSession EndSession(). - AccSessionProp_AppearOffline did not reflect multiple instances. - Mishandled duplicate chat invitations. - Mishandled attempts to join chat rooms with same name but different exchanges. - Mishandled escaping/unescaping usernames within preference specifiers. - IAccCustomSession remote user not added to invitee's participants list. - Images in profiles were mishandled. - Redundant OnUserChange(AccUserProp_State) when temp buddy added to buddy list. - Redundant watching when buddy removed from buddy list but not released. - Old AccSession value returned if attempt to get value immediately after setting new value (applies to AccSessionProp_ImForwardingActive, AccSessionProp_AppearOffline, and bart items). - Lifted restriction on when AccSessionProp_AppearOffline can be set. Previously it had to be set during the connecting state, but it can now be set at any time, e.g. before calling SignOn(). - Intermittent crash after calling SignOff(). - Problems seeing AccUser properties of self in own buddy list. - Incorrect error when AV proposal fails due to rate-limiting. - Incorrect error when auto-reconnecting with ZoneAlarm. - AV incompatibilities with a Belkin router and with a Quest DSL modem. - IAccAvSession "connecting" state not fired during call setup. - Auto-reconnect on Vista. - Intermittent crash resulting from having buddy-listed a user on software that asserts no capabilities. - Mishandling locales "zh-cn" and "zh-tw". - On Mac, intermittent sigpipe if connection bumped. - Patched potential security vulnerability when receiving file xfers. - On Win32 Japanese, problem loading NSS libraries. - Intermittent crash if p2p session released while connecting. - Java wrapper: - Double-delete of variants. - On platforms other than Win32, mishandling empty variants. - Acustomsessbuddy: - Incorrect mime type in ACustomSession.cs. - Miscellaneous improvements. _________________________________________________ Changes 1.2.1 to 1.2.3 - Added function: AccPluginUninstall(). - Removed
start and end tags when getting IAccIm text as mime type "application/x-aol-xhtml-div+xml". - Increased the default proposal timeout from one minute to five minutes. - Upgraded universal Mac build to use Xcode 2.4.1. - accbuddy: - Updated to know about new windows-specific AV device settings. - Fixed redundant printouts of file xfer progress. - accjbot: - Updated to work with new callbacks. - addjsample: - Added support for stored ims. - amfcbuddy: - Added support for stored IMs. - Added support for detecting timeout errors in secondary sessions. - Removed proxy support. - Fixed various memory leaks. - Bug fixes: - Crashes due to dangling weak references to deleted IAccSessions. - Properties of "old" user in OnUserChange(state, unknown) callback. - Internal code could could call a deleted IAccAvManager. - Cleaned up plugin code, including bugs in AccPluginInstall(). - On Win32, AccPluginUninstall() is called when Open AIM detects a plugin is no longer found on disk. - Generic error when an A/V session fails to connect through a symmetric NAT. This is now reported as "disconnected." - Cannot connect to an A/V session after an abnormal disconnect. - Non-AIM usernames appear twice in A/V participant lists. - Auto-reconnect not attempted if ZoneAlarm 6 is installed. _________________________________________________ Changes 1.1.2 to 1.2.1 - Implemented class IAccCustomSession and added related. See technote #8. - Added and implemented class IAccStoredImManager and related. See technote #7. - Added support for boxely/html plugins. - Added firing of OnUserChange(AccUserProp_Profile), OnUserChange(AccUserProp_AwayMessage), and OnUserChange(AccUserProp_Certificate). - Changed universal Mac build to require Mac OS X 10.4 or later (not 10.3.9). - Increased the default proposal timeout from one minute to five minutes. - Improved file transfer: transfer > 4 GB are now supported, and there is no longer a checksum delay except when resuming a transfer. - Added preferences: aimcc.buddyList.playBuddySignOffSounds and aimcc.buddyList.playBuddySignOnSounds, aimcc.im.permissions.allowImStorage, and aimcc.im.standard.storedImAware. - Renamed preference aimcc.general.useSns pref to aimcc.connect.snsAuthentication. - Added events: OnAvManagerChange, OnCustomDataReceived, OnCustomSendResult, OnDeleteStoredImsResult (not used), OnDeliverStoredImsResult, OnEmbedDownlaodProgress, OnEmbedUploadProgress, and OnRequestSummariesResult (not used). - Removed obsolete events: OnEmbedDownloadBegin, OnEmbedFileAvailable, OnEmbedDownloadEnd, OnEmbedUploadBegin, and OnEmbedUploadEnd. - Added properties: AccAvManagerProp_WindowsAudioInputDevice, AccAvManagerProp_WindowsAudioOutputDevice, AccAvManagerProp_WindowsVoiceInputDevice, AccAvManagerProp_WindowsVoiceOutputDevice, and AccGroupProp_Smart. - Added function: AccStreamCreateFromMemory(). - AccSupport - Enhanced CAccEventSink to support multiple sessions. - Tweaked CAccPrefsHook. - Bug fixes: - OnUserChange(AccUserProp_State) now fires for all buddies when signing off. - Added support for infinite-length streams. - Revamped plugin handling code. - Stream data was often copied unnecessarily. - A/V devices cannot be changed after startup. - Stale buddy info remembered after signoff. - Buddy list data availability issue during signoff. - AccUserProp_Identity was different from get_Identity(). - Changed session->get_Property(someprops) to fail when offline. - In IAccBartItem.h, tweaked AccBartItemProp_DataObject accessor for java. - A/V Session should not start if AccAvFlag_ForceSecure set, since unsupported. - No error message after login times out on SecurID prompt. - NULL output when inserting a group object into the buddy list. - AccFileXferSessionProp_TotalBytesXferred after resuming a file xfer. - OnBuddyAdded being posted before buddy list ready fired. - Duplicate firing of OnUserChange(AccUserProp_Ignored). - Removed default values of obsolete, unused prefs: aimcc.connect.proxy.dns, aimcc.general.useSns, and aimcc.im.direct.streamEmbedsToFiles. - Removed default values of unused, app-oriented prefs: aimcc.away.hideIms, aimcc.away.muteSounds, aimcc.connect.signOnAtLaunch. - Problem re-adding a group after removing it. - Memory leak related to alert service. - Don't autorespond to autoresponses. - "Unknown failure" when an A/V session fails to connect through a symmetric NAT. This is now reported as "disconnected". - Cannot connect to an A/V session after an abnormal disconnect. - Cannot xfer a folder containing more than 4GB. - OnParticipantJoined fires twice (once with corrupted username) for domained usernames in A/V sessions. - Auto-reconnect is not attempted if ZoneAlarm 6 is installed. - A/V preview window is sometimes black. - On Win32, some file operations fail if the path contains forward-slashes and/or ends with irrelevant trailing spaces. - On Win32, unable to file xfer into root directory on drives other than C:. - Crash if file xfer session ended by client during initial hand-shaking. - Error ignored when sending chat messages. - Spurious reports of OnUserChange(AccUserProp_Certificate). - In A/V, unsupported NAT config results in unknown error. It will now timeout gracefully. - A/V ring tone overlaps early voice media. - Miscellaneous fixes to sample applications. _________________________________________________ Changes 1.1 to 1.1.2 - Added preferences: aimcc.av.enumDevices, aimcc.av.audio.inputDevice, aimcc.av.audio.outputDevice, aimcc.av.video.inputDevice, and aimcc.customData.[guid]. CustomData adds the ability to store a limited quantity of data on AOL servers. - Added property: AccUserProp_BuddyFeedUrl. - IAccIm "text/html" -> "text/plain" conversion is now supported. - IAccIm mime type "application/x-aol-xhtml-div+xml" is now supported. This produces an xhtml-ish div which can be used, for example, in conjunction with an IM history model that contains a single xhtml data blob. In a future version, the DIV tags won't be included, since consensus is they are undesirable. - Upgraded universal Mac build to use Xcode 2.4. - Windows SDK includes sipXtapi.dll version 2.9.1.7343 - Optimizations: - Rewrote AOL-RTF/HTML to xhtml conversion to provide more robust handling of incorrectly-formatted messages from old clients. - Rewrote A/V device detection (Windows and Mac) to run on a secondary thread. - Plugin hashing. - AccLoadBuffer and AccSaveBuffer. - Some internal buddy list code. - Buffer comparison. - Internal string length function. - Bug fixes: - Invisibility cannot be activated during AccSessionState_Starting. - Buddy icon bart ids not cached when remote users go online. - AccGetMessageQueue() and AccPostMessage2() missing from acccore.exp. - Refcount leak when returning IDispatch* via 4-param getProperty<>, affecting all C++ named property accessors that return an object, e.g. get_BuddyIcon() - Preference aimcc.idle.autoExitAway malfunctioned during auto-reconnect. - IAccStream did not promise to implement IStream and ISequentialStream. - DIM embed flow control deadlock. - _AccStringGetUtf8 missing from acccore.exp (affects unices). - AccLocationProp_Nickname. - AccLocationProp_UseCount. - Handling of pseudo-participants (e.g. "Online Host") in chat rooms. - TAccIm conversion from xhtml to text/plain ate smileys. - Error handling of certain chat proposal sequences. - Possible IAccIm refcount bug when using gcc (mac and linux). - Changed CancelProposal() in file xfer/sharing sessions to call EndSession(). - Changed OnRequestServiceResult to fire cookies as strings, not safearrays of bytes. - Changed code that prevents simultaneous AccInitialize/AccUninitializes. - Changed code that finds child preference specifiers. - Changed code that drives message dispatch. - Changed linux rpath from /usr/local/lib to ${ORIGIN}. - Added -fno-strict-aliasing to gcc compilation options (Mac and Linux). - Removed obsolete aimcc.connect.confirmSignOff preference. - SSL for linked screennames. - AccPluginInfoProp_Enabled was not clearly a writable property. - Added check to disallow images if not in DIM mode. - Added check in RequestLocate() to ensure we are signed on. - Internal Mac test & set function. - Crash in SSL code. - Workaround for a D-Link router bug with VOIP when using wireless cable connection. - Init packet bug: Mac and Linux mistakenly reported "built on Win98." - SharedLibInit/Term not called (on unices). - Bug when using both SSL and non-SSL services. - Added firing of OnParticipantJoined when receiving chat messages before being informed users have joined chat rooms. - Robustified handling of buddy list commit errors. - Robustified internal spin locks. - Signing on linked accounts through SSL. - SSL chat room connections. - Issue when using Microsoft RTC. - Java wrapper: - Objects released in incorrect thread. - Refcount issue when secondary sessions go offline. - Handling of dates (e.g. setbuddyfeedtime). - AccSupport.h: - Refcount bug in CAccPlugin::QueryInterface(). - issue in CAccBstr::operator= - issue in CAccPrefsHook::SetValue - issue in CAccPrefsHook::AddOverride - Miscellaneous fixes to sample applications. _________________________________________________