Binary file realtimenetprots/rtp/cfrtp/documentation/rtpflows.eap has changed
Binary file realtimenetprots/rtp/documentation/RTP.vsd has changed
--- a/realtimenetprots/rtp/documentation/rtp.dox Mon Mar 15 12:42:05 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,138 +0,0 @@
-// Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// This is the extra documentation for the RTP API
-// This is the API for the SymbianOS RTP stack.
-// To use this API, start by creating a RRtpSession
-// A session encapsulates all RTP traffic to/from a particular port, and
-// its associated RTCP traffic.
-// RTP traffic from this port is modelled via the RRtpSendStream class.
-// RTP traffic from a particular remote host is modelled via RRtpReceiveStream
-// RRtpPacket and its subclasses RRtpSendPacket and RRtpReceivePacket are
-// the encapsulations of the RTP packets.
-// The API uses a R class 'cheshire cat' idiom. All the R classes in
-// the API are handles onto resources, or you may prefer to think of
-// them as wrappers round pointers. As such they have the following
-// properties:
-// - They are very lightweight and can be copied around by value.
-// - 2 copies of the same handle are 'the same thing'; if you do something
-// to one of them it will apply to the other.
-// - They need to be 'opened' before they point to anactual resource,
-// and must be closed when the resource is no longer needed. Note
-// that in some cases, the resource is considered to be owned by
-// another resource, so there is no need to close it. In these
-// cases, there is no close method and this fact is clearly
-// documented. If an R class is closed, any other copies of the
-// same handle will become invalid as they are handles to
-// nonexistent resources.
-// The RTP stack relies heavily on an event model based on callback
-// functions. This has the following advantages over alternative methods,
-// such as signaling events via TRequestStatus objects or using mixins:
-// - It is more flexible for the client; we can distinguish a large number
-// of different events and allow the client to chose if they want to
-// receive notifications about them in 1 function or many, and how they
-// want to spread different notifications over their object structure.
-// To give an example, a client might be interested in all SDES messages,
-// only in some types of SDES messages or in no SDES messages, and they
-// might want to handle these messages in different parts of the code or
-// all in the same part. THe callback model can support all these cases.
-// - Many other RTP APIs on other platforms use a similar concept, so
-// creating a simialr API makes it easier to port code that originated
-// on top of these APIs.
-// There are 4 major concepts in the event model:
-// - An event manager. The session, the send stream and the receive
-// streams each have their own event manager. Callbacks registered
-// on 1 manager don't apply to other managers. The manager is not
-// exposed in the API.
-// - An event. (TRtpEvent class). An event is generated when anything
-// happens that the client might want to know about. The event can
-// be thought of as comprising 2 numbers, the event type taken from
-// TRtpEventType and another parameter whose meaning is event-type
-// specific. For instance, for all the 'Fail' events it is a
-// SymbianOS error code. Additional information might be implicitly
-// associated with the event, but needs to be fetched from another
-// object, for instance when processing a ErtpPacketReceived event,
-// the RRtpReceivePacket object must be obtained from the
-// Rrt-ReceiveStream. Events are associated with an object; for
-// instance receive stream events are associated with a
-// RRtpReceiveStream. There are functions on the event for
-// obtaining that object.
-// - A callback function. A callback function is a static function
-// with a particular signature. Static
-// functions are used because callback models using member
-// functions in C++ either involve bending the rules of the
-// language or a lot of code bloat. If a function is registered for
-// a particular event, it will be called when that event
-// occurs. One callback function can be associated with more than 1
-// callback registration. Callback functions take a pointer argument
-// which was supplied as part of the registration; normally a
-// static callback function in a CFoo class would take a pointer to
-// a CFoo* and call a member function on the CFoo object that does
-// the real work.
-// - A callback registration. A callback registration is the thing
-// that glues all this together. The event manager contains a
-// number of callback registrations, each of which binds a function
-// and pointer (normally an object) to a particular kind of
-// event. Registrations can be bound to all events on a stream
-// (except 'Fail' events), via the ErtpAnyEvent code, or they can
-// be further restricted by a parameter whose meaning is event-type
-// specific. (For instance for the ErtpSDES event, the parameter is
-// used to express interest in only a particular SDES field.) The
-// same callback function and object can be registered for several
-// different registrations, possibly even on different streams.
-// So to use the event model, decide which events you care about, decide
-// which objects care about those events, and register functions in all
-// those objects to be told about all the events.
-// If an event leaves, an Fail event will be generated with the leave
-// code. Handlers for error events must not leave, as this would
-// result in an infinite loop if allwed. It is reccomended that error
-// events are handled by a separate callback to other events, to avoid
-// confusion about whether leaves are allowed. (This is why callbacks
-// registered for ErtpAnyEvent don't get called back for Fail events)
-// One-shot event registrations are registrations that are only called
-// back once. For instance, an application might want to display the
-// NAME SDES parameter but might only need to be told what it is when
-// the first one arrives. A one-shot resistration will only be called
-// back for the first NAME received.
-// To register events, use one of the RegisterEventCallbackL
-// functions. These are template functions that are available in
-// global and member-function versions. The reason for this is
-// limitations in the handling of template member functions in MSVC6;
-// in many situations calls to the member functions won't compile and
-// the global functions should be used instead.
-// Note that there are always a pair of functions; one doesn't take
-// the 'aParameter' parameter, and defaults it to
-// KRtpNoParameter. This is more efficient as the parameter is often
-// not used.
-// The callback function takes a pointer which can be of any type.
-// The RegisterEventCallbackL functions are all templated so that the
-// pointer you supply must be of the same type as the function
-// expects.
-// As RTP/RTCP is removable from ROM using the SYMBIAN_EXCLUDE_RTP_RTCP
-// in the build rom command a stub is used to prevent linking failures.
-// The "#ifdef RTP_Removed" is used to reduce the overhead of having an extra set of cpp files to create the
-// stub. Using "#ifdef RTP_Removed" the MMP files create an extra set of stubbed
-// dlls from the one cpp file. The iby file then exports the complete or stubbed dlls depending on the
-// SYMBIAN_EXCLUDE macro.
-// The Open session functions leave with KErrNotSuported when the stub is used. Functions
-// which can not leave ASSERT in debug mode as should not have been called since the Open and similar
-// functions should have 'left'.
-//
-//
-
-/**
- @mainpage Symbian RTP API
- The RTP stack's event model is described in the section '@ref Events'
- @page Events The Event Model
- @page Stub of RTP API with #ifdef RTP_Removed
-*/
--- a/realtimenetprots/rtp/group/mm-protocols_rtp.history.xml Mon Mar 15 12:42:05 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,309 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<relnotes name="RTP">
- <purpose>
- Real Time Transport Protocol. 2 dll's implied.
- </purpose>
-
- <defect number="DEF138644" title="RTCP SR packet reports wrong NTP Timestamp value" revision="061">
- Fix for:
- DEF138644 RTCP SR packet reports wrong NTP Timestamp value
- </defect>
-
- <defect number="DEF138151 " title="[FST]Verification of RTCPRRJitter fails for moderate sized (audio/video) data" revision="060">
- Fix for:
- DEF138151[FST]Verification of RTCPRRJitter fails for moderate sized (audio/video) data
- </defect>
-
- <defect number="DEF131783 " title="Functionality moved from SCPRStates to PRStates namespace" revision="059">
- Fix for:
- DEF131783 Functionality moved from SCPRStates to PRStates namespace
- </defect>
-
- <defect number="DEF128260" title="Fix RTP published API to match the original design sketch" revision="058">
- Fix for:
- DEF128260 Fix RTP published API to match the original design sketch
- </defect>
-
- <defect number="PDEF130573" title="CF-RTP should remove unnecessary memcopies." revision="057">
- Fix for:
- PDEF130573 CF-RTP should remove unnecessary memcopies.
- </defect>
-
- <defect number="PDEF129033" title="CSubConRTPGenericParamSet::AddRtpExtension( ) might be used to load malware DLLs" revision="056">
- Fix for:
- PDEF129033 CSubConRTPGenericParamSet::AddRtpExtension( ) might be used to load malware DLLs
- </defect>
-
- <defect number="DEF129424" title="GT errors due to Converged-comms in M04729 v9.5,Future" revision="055">
- Fix for:
- DEF129424 GT errors due to Converged-comms in M04729 v9.5,Future
- </defect>
-
- <defect number="DEF128627" title="[Coverity]-FORWARD_NULL-mm-protocols/rtp" revision="054">
- Fix for:
- DEF128627 [Coverity]-FORWARD_NULL-mm-protocols/rtp
- </defect>
-
- <defect number="PDEF128596" title="rtpremoved.dll is exporting incorrect ordinal sequence for AMRv5" revision="053">
- Fix for:
- PDEF128596 rtpremoved.dll is exporting incorrect ordinal sequence for AMRv5
- </defect>
-
- <defect number="DEF127519" title="CSubConRTPGenericParamSet parameter name RTP incorrect" revision="052">
- Fix for:
- DEF127519 CSubConRTPGenericParamSet parameter name RTP incorrect
- </defect>
-
- <defect number="DEF127581" title="Some dirs in 'mm-protocols_rtp' do not exist" revision="051">
- Fix for:
- DEF127581 Some dirs in "mm-protocols_rtp" do not exist
- </defect>
-
- <ec number="120" title="Mesh Machine Productisation" revision="050">
- Mesh Machine Productisation
- </ec>
-
- <defect number="DEF127153" title="ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-queue-status-request-underflow" revision="049">
- Fix for:
- DEF127153 ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-queue-status-request-underflow
- </defect>
-
- <defect number="DEF127152" title="ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-acknowledgement-underflow" revision="048">
- Fix for:
- DEF127152 ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-acknowledgement-underflow
- </defect>
-
- <defect number="DEF127151" title="ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-release-underflow" revision="047">
- Fix for:
- DEF127151 ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-release-underflow
- </defect>
-
- <defect number="DEF127150" title="ICC Codenomicon : omapoc-rtcp-app-tbcp-tb-request-underflow" revision="046">
- Fix for:
- DEF127150 ICC Codenomicon : omapoc-rtcp-app-tbcp-tb-request-underflow
- </defect>
-
- <defect number="DEF127148" title="ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-queue-status-response-underflow" revision="045">
- Fix for:
- DEF127148 ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-queue-status-response-underflow
- </defect>
-
- <defect number="DEF127145" title="ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-deny-underflow" revision="044">
- Fix for:
- DEF127145 ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-deny-underflow
- </defect>
-
- <defect number="DEF127144" title="ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-granted-underflow" revision="043">
- Fix for:
- DEF127144 ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-granted-underflow
- </defect>
-
- <defect number="DEF127143" title="ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-revoke-underflow" revision="042">
- Fix for:
- DEF127143 ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-revoke-underflow
- </defect>
-
- <defect number="DEF127142" title="ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-taken-underflow" revision="041">
- Fix for:
- DEF127142 ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-taken-underflow
- </defect>
-
- <defect number="DEF127141" title="ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-idle-underflow" revision="040">
- Fix for:
- DEF127141 ICC Codenomicon :omapoc-rtcp-app-tbcp-tb-idle-underflow
- </defect>
-
- <defect number="DEF127140" title="ICC Codenomicon :omapoc-rtcp-app-tbcp-disconnect-underflow" revision="039">
- Fix for:
- DEF127140 ICC Codenomicon :omapoc-rtcp-app-tbcp-disconnect-underflow
- </defect>
-
- <defect number="DEF127066" title="ICC Codenomicon :omapoc-rtcp-app-tbcp-connect-underflow" revision="038">
- Fix for:
- DEF127066 ICC Codenomicon :omapoc-rtcp-app-tbcp-connect-underflow
- </defect>
-
- <defect number="DEF127065" title="ICC Codenomicon : rfc3611-rtcp-xr-voip-sdes-underflow" revision="037">
- Fix for:
- DEF127065 ICC Codenomicon : rfc3611-rtcp-xr-voip-sdes-underflow
- </defect>
-
- <defect number="DEF127064" title="ICC Codenomicon : rfc3611-rtcp-xr-stats-sdes-underflow" revision="036">
- Fix for:
- DEF127064 ICC Codenomicon : rfc3611-rtcp-xr-stats-sdes-underflow
- </defect>
-
- <defect number="DEF127063" title="ICC Codenomicon :rfc3611-rtcp-xr-dlrr-sdes-underflow" revision="035">
- Fix for:
- DEF127063 ICC Codenomicon :rfc3611-rtcp-xr-dlrr-sdes-underflow
- </defect>
-
- <defect number="DEF127061" title="ICC Codenomicon :rfc3611-rtcp-xr-rrt-sdes-underflow" revision="034">
- Fix for:
- DEF127061 ICC Codenomicon :rfc3611-rtcp-xr-rrt-sdes-underflow
- </defect>
-
- <defect number="DEF127059" title="ICC Codenomicon : rfc3611-rtcp-xr-prt-sdes-underflow" revision="033">
- Fix for:
- DEF127059 ICC Codenomicon : rfc3611-rtcp-xr-prt-sdes-underflow
- </defect>
-
- <defect number="DEF127058" title="ICC Codenomicon : rfc3611-rtcp-xr-dup-rle-sdes-underflow" revision="032">
- Fix for:
- DEF127058 ICC Codenomicon : rfc3611-rtcp-xr-dup-rle-sdes-underflow
- </defect>
-
- <defect number="DEF127057" title="ICC Codenomicon : rfc3611-rtcp-xr-loss-rle-sdes-underflow" revision="031">
- Fix for:
- DEF127057 ICC Codenomicon : rfc3611-rtcp-xr-loss-rle-sdes-underflow
- </defect>
-
- <defect number="DEF126969" title="ICC Codenomicon : rfc3550-rtcp-rr-sdes-rr-underflow" revision="030">
- Fix for:
- DEF126969 ICC Codenomicon : rfc3550-rtcp-rr-sdes-rr-underflow
- </defect>
-
- <defect number="DEF126967" title="ICC Codenomicon : rfc3550-rtcp-rr-sdes-rr-report-block-repeat" revision="029">
- Fix for:
- DEF126967 ICC Codenomicon : rfc3550-rtcp-rr-sdes-rr-report-block-repeat
- </defect>
-
- <defect number="DEF126965" title="ICC Codenomicon : rfc3550-rtcp-rr-sdes-rr-header-rc" revision="028">
- Fix for:
- DEF126965 ICC Codenomicon : rfc3550-rtcp-rr-sdes-rr-header-rc
- </defect>
-
- <defect number="DEF126899" title="SMP: RTP does not compile on x86gcc platform" revision="027">
- Fix for:
- DEF126899 SMP: RTP does not compile on x86gcc platform
- </defect>
-
- <defect number="DEF126835" title="mmp-rtp: WINSCW UDEB call set CName twice with SetSDESL does not leave -11" revision="026">
- Fix for:
- DEF126835 mmp-rtp: WINSCW UDEB call set CName twice with SetSDESL does not leave -11
- </defect>
-
- <defect number="DEF126833" title="mmp-rtp: newsource event callback did not always be called in emulator" revision="025">
- Fix for:
- DEF126833 mmp-rtp: newsource event callback did not always be called in emulator
- </defect>
-
- <defect number="DEF126446" title="SDL-RTP:RRtpsession::SendRTCPPacketL no parameter explanation" revision="024">
- Fix for:
- DEF126446 SDL-RTP:RRtpsession::SendRTCPPacketL no parameter explanation
- </defect>
-
- <defect number="DEF126448" title="SDL-RTP: see also link of RRtpSession::DontReceive() is itsself" revision="023">
- Fix for:
- DEF126448 SDL-RTP: see also link of RRtpSession::DontReceive() is itsself
- </defect>
-
- <defect number="DEF126659" title="[Coverity] [UNUSED_VALUE][UNINIT] mm-protocols/rtp " revision="022">
- Fix for:
- DEF126659 [Coverity] [UNUSED_VALUE][UNINIT] mm-protocols/rtp
- </defect>
-
- <defect number="DEF126366" title="rtcp packet send to rtp port while remote rtcp port is not available" revision="021">
- Fix for:
- DEF126366 rtcp packet send to rtp port while remote rtcp port is not available
- </defect>
-
- <defect number="DEF126028" title="RRtpSendPacket::SetPayloadType doesn't panic specifying PT of 128 under ARMv5" revision="020">
- Fix for:
- DEF126028 RRtpSendPacket::SetPayloadType doesn't panic specifying PT of 128 under ARMv5
- </defect>
-
- <defect number="DEF125436" title="RRtpSendSource::ByeL panic with RTP-SOCKET 400 when aReason.Length%4 != 0" revision="019">
- Fix for:
- DEF125436 RRtpSendSource::ByeL panic with RTP-SOCKET 400 when aReason.Length%4 != 0
- </defect>
-
- <defect number="DEF125953" title="mmp-rtp: rrtpsession::openL should use rtp port in destination address" revision="018">
- Fix for:
- DEF125953 mmp-rtp: rrtpsession::openL should use rtp port in destination address
- </defect>
-
- <defect number="DEF125880" title="ESock Panic when invalid Bandwidth session parameter is given." revision="017">
- Fix for:
- DEF125880 ESock Panic when invalid Bandwidth session parameter is given.
- </defect>
-
- <defect number="DEF125710" title="Panic codes description for RRtpSendPacket::SetPayloadType in SDL is incorrect " revision="016">
- Fix for:
- DEF125710 Panic codes description for RRtpSendPacket::SetPayloadType in SDL is incorrect
- </defect>
-
- <defect number="DEF125425" title="The default value of RRtpSendSource::iAlignment is not the correct value of 1" revision="015">
- Fix for:
- DEF125425 The default value of RRtpSendSource::iAlignment is not the correct value of 1
- </defect>
-
- <defect number="DEF125376" title="CRtcpSessionData::iAverageRtcpSize is always 0 once SendRtcpL is called once." revision="014">
- Fix for:
- DEF125376 CRtcpSessionData::iAverageRtcpSize is always 0 once SendRtcpL is called once.
- </defect>
-
- <preq number="1903" title="Real-time and best effort data flows for RTP" revision="013">
- Real-time and best effort data flows for RTP
- </preq>
-
- <minor_change title="After OOM enabled,RTP testcases which are using GetBoolFromConfig() function in TEF are failed, cause this function calls a base api which is trying to allocate memory on heap which will fails in OOM on condition." revision="012">
- </minor_change>
-
- <defect number=" PDEF119270" title=" SR packets not generated, on receiving RTP packets " revision="011">
- Fix for:
- PDEF119270 SR packets not generated, on receiving RTP packets
- </defect>
-
- <defect number=" PDEF117965" title=" Klocwork issues, NULL pointer can be used in release build mm-protocols_rtp " revision="010">
- Fix for:
- PDEF117965 Klocwork issues, NULL pointer can be used in release build mm-protocols_rtp
- </defect>
-
- <defect number="DEF111868" title="Filiename policy warnings in SIP HL APIs and RTP components" revision="009">
- Fix for:
- DEF111868 Filiename policy warnings in SIP HL APIs and RTP components
- </defect>
-
- <defect number="DEF107516" title="RTP Tests are failing for 9.5 Winscw Emulator" revision="008">
- Fix for:
- DEF107516 RTP Tests are failing for 9.5 Winscw Emulator
- </defect>
-
- <defect number="PDEF106768" title="Symbian rtp stack crashes after a long pause in rtp packet flow" revision="007">
- Fix for:
- PDEF108220 If the timeout is short and there is a timeout then your rtp stack will crash.
- PDEF108221 RTP packets just disappear inside RTP stack and client application doesnt recv
- PDEF106768 Symbian rtp stack crashes after a long pause in rtp packet flow
- </defect>
-
- <defect number="PDEF108220" title="If the timeout is short and there is a timeout then your rtp stack will crash." revision="006">
- Fix for:
- PDEF108220 If the timeout is short and there is a timeout then your rtp stack will crash.
- PDEF108221 RTP packets just disappear inside RTP stack and client application doesnt recv
- PDEF106768 Symbian rtp stack crashes after a long pause in rtp packet flow
- </defect>
-
- <defect number="PDEF108221" title="RTP packets just disappear inside RTP stack and client application doesnt recv" revision="005">
- Fix for:
- PDEF108220 If the timeout is short and there is a timeout then your rtp stack will crash.
- PDEF108221 RTP packets just disappear inside RTP stack and client application doesnt recv
- PDEF106768 Symbian rtp stack crashes after a long pause in rtp packet flow
- </defect>
-
- <defect number="PDEF104584" title="Memory leak in CRtpSession::RunL" revision="004">
- PDEF104584 - Memory leak in CRtpSession::RunL
- </defect>
-
- <preq number="1182" title="GNU Make-based build system" revision="003">
- GNU Make-based build system
- </preq>
-
- <defect number="PDEF103856" title="Check the functionality of RtpUtils::GetNtpTime()." revision="002">
- Fix for PDEF103856 Check the functionality of RtpUtils::GetNtpTime().
- </defect>
-
- <defect number="PDEF101761" title="RRtcpSRPart::NTPTimestamp(TTime& aTime) const severely broken" revision="001">
- RRtcpSRPart::NTPTimestamp(TTime& aTime) const severely broken.
- </defect>
-</relnotes>
--- a/realtimenetprots/sipfw/Group/mm-protocols_sip2_com.history.xml Mon Mar 15 12:42:05 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,503 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<relnotes name="SIP Framework">
- <purpose>
- Session Initiation Protocol. Main signalling protocol for 3gpp. Used by phone app, multimedia and messaging app. 3 servers implied.
- </purpose>
-
- <cr number="1242" title="SIP over TLS" revision="13">
- Added Note for the following cr:
- Oghma,GT0362,MS3.4,DS.843 SIP enhancements phase 3
- </cr>
-
- <defect number="INC136948" title="Improvements to CCHServer robustness" revision="96">
- Defect fixes:
- INC136948 Improvements to CCHServer robustness
- </defect>
-
- <defect number="DEF137132" title="Crashes occur if VoIP is registered when MC backup is taken (Observed S60 3.2.3)" revision="95">
- Defect fixes:
- DEF137132 Crashes occur if VoIP is registered when MC backup is taken (Observed S60 3.2.3)
- </defect>
-
- <defect number="PDEF133394" title="SIP : when moving from 3G to 2G , Packet connection goes to CS Only" revision="94">
- Defect fixes:
- PDEF133394 SIP : when moving from 3G to 2G , Packet connection goes to CS Only
- </defect>
-
- <defect number="PDEF133395" title="SIP : Etel IMSAutheticate Message goes out of scope" revision="93">
- Defect fixes:
- PDEF133395 SIP : Etel IMSAutheticate Message goes out of scope
- </defect>
-
- <defect number="DEF133888" title="[System Build]: Elfe32 warning in SIP Framework in M04835 vFuture build" revision="92">
- Defect fixes:
- DEF133888 [System Build]: Elfe32 warning in SIP Framework in M04835 vFuture build
- </defect>
-
- <defect number="PDEF134513" title="Device behaves weirdly after registration fails to VoIP service" revision="91">
- Defect fixes:
- PDEF134513 Device behaves weirdly after registration fails to VoIP service
- </defect>
-
- <defect number="PDEF133393" title="SIP Registration (Refresh) not triggered after a 2G Call" revision="90">
- Defect fixes:
- PDEF133393 SIP Registration (Refresh) not triggered after a 2G Call
- </defect>
-
- <defect number="DEF134108" title="[System Build]: GT errors due to SIP Framework in M04843 v9.5" revision="89">
- Defect fixes:
- DEF134108 [System Build]: GT errors due to SIP Framework in M04843 v9.5
- </defect>
-
- <defect number="PDEF133984" title="SipServer crashes if enabling two service tabs when using allatum settings over" revision="88">
- Defect fixes:
- PDEF133984 SipServer crashes if enabling two service tabs when using allatum settings over
- </defect>
-
- <defect number="DEF133888" title="[System Build]: Elfe32 warning in SIP Framework in M04835 vFuture build" revision="87">
- Defect fixes:
- DEF133888 [System Build]: Elfe32 warning in SIP Framework in M04835 vFuture build
- </defect>
-
- <defect number="DEF133557" title="[Coverity]-CHECKED_RETURN,USE_AFTER_FREE -mm-protocols/sip2" revision="86">
- Defect fixes:
- DEF133557 [Coverity]-CHECKED_RETURN,USE_AFTER_FREE -mm-protocols/sip2
- </defect>
-
- <defect number="DEF133558" title="[Coverity]-FORWARD_NULL,RESOURCE_LEAK -mm-protocols/sip2/sip" revision="85">
- Defect fixes:
- DEF133558 [Coverity]-FORWARD_NULL,RESOURCE_LEAK -mm-protocols/sip2/sip
- </defect>
-
- <defect number="DEF133559" title="[Coverity]-SYMBIAN.CLEANUP_STACK -mm-protocols/sip2" revision="84">
- Defect fixes:
- DEF133559 [Coverity]-SYMBIAN.CLEANUP_STACK -mm-protocols/sip2
- </defect>
-
- <defect number="INC133381" title="Non-deterministic behaviour of Symbian's TInetAddr" revision="83">
- Defect fixes:
- INC133381 Non-deterministic behaviour of Symbian's TInetAddr
- </defect>
-
- <defect number="DEF133138" title="[System Build]: Include statement not case consistent in mm-protocols_SIP2_com" revision="82">
- Defect fixes:
- DEF133138 [System Build]: Include statement not case consistent in mm-protocols_SIP2_com
- </defect>
-
- <defect number="PDEF130653" title="WLAN stays connected if ICMP has been received to voice mail box unsubscribe mes" revision="81">
- Defect fixes:
- PDEF130653 WLAN stays connected if ICMP has been received to voice mail box unsubscribe mes
- </defect>
-
- <defect number="DEF132597" title="ICCCodenomicon: SIP UAS responds on 0000 port and goes infinite loop" revision="80">
- Defect fixes:
- DEF132597 ICCCodenomicon: SIP UAS responds on 0000 port and goes infinite loop
- </defect>
-
- <defect number="DEF132596" title="ICCCodenomicon: SIP UAS responds on 65536 port and goes infinite loop" revision="79">
- Defect fixes:
- DEF132596 ICCCodenomicon: SIP UAS responds on 65536 port and goes infinite loop
- </defect>
-
- <defect number="DEF132485" title="Keyspace design for bearer specific Registration Expiry settings in cenrep" revision="78">
- Defect fixes:
- DEF132485 Keyspace design for bearer specific Registration Expiry settings in cenrep
- </defect>
-
- <defect number="DEF132486" title="support for data compatibility between sipprofiles.dat and cenrep profile format" revision="77">
- Defect fixes:
- DEF132486 support for data compatibility between sipprofiles.dat and cenrep profile format
- </defect>
-
- <defect number="PDEF130652" title="Digest AKAv1 authentication does not work with VoiP" revision="76">
- Defect fixes:
- PDEF130652 Digest AKAv1 authentication does not work with VoiP
- </defect>
-
- <defect number="DEF130788" title="[Coverity]-MISSING_BREAK,SIZECHECK,USE_AFTER_FREE-mm-protocols/sip2/" revision="75">
- Defect fixes:
- DEF130788 [Coverity]-MISSING_BREAK,SIZECHECK,USE_AFTER_FREE-mm-protocols/sip2/
- </defect>
-
- <defect number="PDEF130654" title="Video Share settings shows deleted profiles in the selection list" revision="74">
- Defect fixes:
- PDEF130654 Video Share settings shows deleted profiles in the selection list
- </defect>
-
- <defect number="DEF129377" title="[Coverity]-SYMBIAN.CLEANUP_STACK-mm-protocols/sip2" revision="73">
- Defect fixes:
- DEF129377 [Coverity]-SYMBIAN.CLEANUP_STACK-mm-protocols/sip2
- </defect>
-
- <defect number="DEF129461" title="Registration to VoIP service does not work in IPv4 and IPv6 dual network" revision="72">
- Defect fixes:
- DEF129461 Registration to VoIP service does not work in IPv4 and IPv6 dual network
- </defect>
-
- <defect number="DEF129701" title="494 response not handled correctly if SIP profile does not contain credentials" revision="71">
- Defect fixes:
- DEF129701 494 response not handled correctly if SIP profile does not contain credentials
- </defect>
-
- <defect number="PDEF127679" title="Can not do VoIP registration after plugging back the cable to the WLAN AP" revision="70">
- Defect fixes:
- PDEF127679 Can not do VoIP registration after plugging back the cable to the WLAN AP
- </defect>
-
- <defect number="DEF129655" title="WLAN and GPRS are simultaneous connected after roaming from GPRS to WLAN" revision="69">
- Defect fixes:
- DEF129655 WLAN and GPRS are simultaneous connected after roaming from GPRS to WLAN
- </defect>
-
- <defect number="PDEF128408" title="Profile registration fails when a deregistration is pending for another profile" revision="68">
- Defect fixes:
- PDEF128408 Profile registration fails when a deregistration is pending for another profile
- </defect>
-
- <defect number="PDEF127676" title="Incorrect inheritance order in CSigCompHandler" revision="67">
- Defect fixes:
- PDEF127676 Incorrect inheritance order in CSigCompHandler
- </defect>
-
- <defect number="DEF127358" title="Receiving INVITE with IPv6 address in Contact and c= line via IPv4 IAP" revision="66">
- Defect fixes:
- DEF127358 Receiving INVITE with IPv6 address in Contact and c= line via IPv4 IAP
- </defect>
-
- <defect number="DEF126882" title="[Coverity]-SYMBIAN.CLEANUP_STACK -mm-protocols/sip2/" revision="65">
- Defect fixes:
- DEF126882 [Coverity]-SYMBIAN.CLEANUP_STACK -mm-protocols/sip2/
- </defect>
-
- <defect number="DEF126880" title="[Coverity]-PASS_BY_VALUE -mm-protocols/sip2/ " revision="64">
- Defect fixes:
- DEF126880 [Coverity]-PASS_BY_VALUE -mm-protocols/sip2/
- </defect>
-
- <defect number="PDEF128108" title="UDEB version of sipprofilesrv.exe crashes" revision="63">
- Defect fixes:
- PDEF128108 UDEB version of sipprofilesrv.exe crashes
- </defect>
-
- <defect number="DEF127309" title="Phone does not send Ack response to 494 Security Agreement Required" revision="62">
- Defect fixes:
- DEF127309 Phone does not send Ack response to 494 Security Agreement Required
- </defect>
-
- <defect number="DEF127121" title="Cloning SDP origin field with address 0.0.0.0" revision="61">
- Defect fixes:
- DEF127121 Cloning SDP origin field with address 0.0.0.0
- </defect>
-
- <defect number="DEF127262" title="It shouldn't be possible to change the SNAP id to zero " revision="60">
- Defect fixes:
- DEF127262 It shouldn't be possible to change the SNAP id to zero
- </defect>
-
- <defect number="DEF125920" title="[coverity] - FORWARD_NULL - mm-protocols/sip2/clientresolver" revision="59">
- Defect fixes:
- DEF125920 [coverity] - FORWARD_NULL - mm-protocols/sip2/clientresolver
- </defect>
-
- <defect number="DEF125926" title="[Coverity] - SYMBIAN.CLEANUP - mm-protocols/sip2/sip/connectionmgr" revision="58">
- Defect fixes:
- DEF125926 [Coverity] - SYMBIAN.CLEANUP - mm-protocols/sip2/sip/connectionmgr
- </defect>
-
- <defect number="PDEF124332" title="Terminal can't receive any calls after several header with bytecode tests
-" revision="57">
- Defect fixes:
- PDEF124332 Terminal can't receive any calls after several header with bytecode tests
- </defect>
-
- <defect number="DEF125137" title="[coverity] - REVERSE_INULL - mm-protocols/sip2/sip/serverresolver" revision="56">
- Defect fixes:
- DEF125137 [coverity] - REVERSE_INULL - mm-protocols/sip2/sip/serverresolver
- </defect>
-
- <defect number="DEF125090" title="[coverity] - NULL_RETURNS - mm-protocols/sip2/sip/sipsec/ipsecplugin" revision="55">
- Defect fixes:
- DEF125090 [coverity] - NULL_RETURNS - mm-protocols/sip2/sip/sipsec/ipsecplugin
- </defect>
-
- <defect number="DEF125138" title="[coverity] - REVERSE_INULL - mm-protocols/sip2/sdp" revision="54">
- Defect fixes:
- DEF125138 [coverity] - REVERSE_INULL - mm-protocols/sip2/sdp
- </defect>
-
- <defect number="DEF125139" title="[coverity] - CHECKED_RETURN - mm-protocols/sip2/sigcomp/sigcompengine" revision="53">
- Defect fixes:
- DEF125139 [coverity] - CHECKED_RETURN - mm-protocols/sip2/sigcomp/sigcompengine
- </defect>
-
- <defect number="DEF125140" title="[coverity] - CHECKED_RETURN - mm-protocols/sip2/profileagent" revision="52">
- Defect fixes:
- DEF125140 [coverity] - CHECKED_RETURN - mm-protocols/sip2/profileagent
- </defect>
-
- <defect number="DEF125106" title="[coverity] - NULL_RETURNS - mm-protocols/sip2/sip/connectionmgr " revision="51">
- Defect fixes:
- DEF125106 [coverity] - NULL_RETURNS - mm-protocols/sip2/sip/connectionmgr
- </defect>
-
- <defect number="DEF125111" title="[Coverity] - OVERRUN_STATIC - mm-protocols/sip2/sip/client/" revision="50">
- Defect fixes:
- DEF125111 [Coverity] - OVERRUN_STATIC - mm-protocols/sip2/sip/client/
- </defect>
-
- <defect number="DEF125136" title="[coverity] - USE_AFTER_FREE - mm-protocols/sip2/profileagent" revision="49">
- Defect fixes:
- DEF125136 [coverity] - USE_AFTER_FREE - mm-protocols/sip2/profileagent
- </defect>
-
- <defect number="DEF125110" title="[coverity] - FORWARD_NULL - mm-protocols/sip2/sip/sipapi " revision="48">
- Defect fixes:
- DEF125110 [coverity] - FORWARD_NULL - mm-protocols/sip2/sip/sipapi
- </defect>
-
- <defect number="DEF125094" title="[coverity] - NULL_RETURNS - mm-protocols/sip2/sip/transactionuser" revision="47">
- Defect fixes:
- DEF125094 [coverity] - NULL_RETURNS - mm-protocols/sip2/sip/transactionuser
- </defect>
-
- <defect number="DEF123023" title="Creating of CSIPProfileRegisty instance takes 50ms" revision="46">
- Defect fixes:
- DEF123023 Creating of CSIPProfileRegisty instance takes 50ms
- </defect>
-
- <defect number="PDEF124112" title="Incorrect handling of some SDP attributes with syntax errors" revision="45">
- Defect fixes:
- PDEF124112 Incorrect handling of some SDP attributes with syntax errors
- </defect>
-
- <defect number="PDEF124114" title="Parsing Refer-To header with a semicolon in SIP-URI's user part fails" revision="44">
- Defect fixes:
- PDEF124114 Parsing Refer-To header with a semicolon in SIP-URI's user part fails
- </defect>
-
- <defect number="PDEF124174" title="Incoming INVITE flood" revision="43">
- Defect fixes:
- PDEF124174 Incoming INVITE flood
- </defect>
-
- <defect number="PDEF124334" title="SDP codec: can't clone CSdpConnectionField where IP address is 0.0.0.0" revision="42">
- Defect fixes:
- PDEF124334 SDP codec: can't clone CSdpConnectionField where IP address is 0.0.0.0
- </defect>
-
- <defect number="DEF124240" title="Digest plugin crash after registration clears cache, dialog is challenged" revision="41">
- Defect fixes:
- DEF124240 Digest plugin crash after registration clears cache, dialog is challenged
- </defect>
-
- <defect number="DEF124235" title="SIPit22 Issue: Double hold not working with Cisco Call Manager" revision="40">
- Defect fixes:
- DEF124235 SIPit22 Issue: Double hold not working with Cisco Call Manager
- </defect>
-
- <defect number="PDEF124110" title="SipProfileSrv crashes under IPC fuzzing" revision="39">
- Defect fixes:
- PDEF124110 SipProfileSrv crashes under IPC fuzzing
- </defect>
-
- <defect number="DEF124233" title="Creating two CSIPConnections with different IAP IDs but the same physical AP" revision="38">
- Defect fixes:
- DEF124233 Creating two CSIPConnections with different IAP IDs but the same physical AP
- </defect>
-
- <defect number="DEF122893" title="High severity CodeScanner warnings in SIP stack" revision="37">
- Defect fixes:
- DEF122893 High severity CodeScanner warnings in SIP stack
- </defect>
-
- <defect number="PDEF123267" title="Creating a CSIPConnection with IAP using a static IP fails with EUnavailable" revision="36">
- Defect fixes:
- PDEF123267 Creating a CSIPConnection with IAP using a static IP fails with EUnavailable
- </defect>
-
- <defect number="PDEF123269" title="SIP server crashes in Codenomicon tests when using TCP" revision="35">
- Defect fixes:
- PDEF123269 SIP server crashes in Codenomicon tests when using TCP
- </defect>
-
- <defect number="DEF122933" title="SIP profile registration lost if the profile is disabled during IAP migration" revision="34">
- Defect fixes:
- DEF122933 SIP profile registration lost if the profile is disabled during IAP migration
- </defect>
-
- <defect number="PDEF122840" title="Error in SIPClient library - Native SIP stack" revision="33">
- Defect fixes:
- PDEF122840 Error in SIPClient library - Native SIP stack
- </defect>
-
- <defect number="PDEF123081" title="PTT call doesn't resume if network coverage is lost for long time" revision="32">
- Defect fixes:
- PDEF123081 PTT call doesn't resume if network coverage is lost for long time
- </defect>
-
- <defect number="DEF121369" title="Registration with SNAP does not work when startup in offline mode" revision="31">
- Defect fixes:
- DEF121369 Registration with SNAP does not work when startup in offline mode
- </defect>
-
- <defect number="PDEF121899" title="SIPDIGEST.DLL dependency on IMUT.DLL should be broken" revision="30">
- Defect fixes:
- PDEF121899 SIPDIGEST.DLL dependency on IMUT.DLL should be broken
- </defect>
-
- <defect number="DEF121209" title="App using SIP gets EProfileDeregistered in network lost case too early" revision="29">
- Defect fixes:
- DEF121209 App using SIP gets EProfileDeregistered in network lost case too early
- </defect>
-
- <defect number="DEF121455 " title="Miscellaneous(copyright, Cat F) errros in Sample App and example plugins of SIP" revision="28">
- Defect fixes:
- DEF121455 Miscellaneous(copyright, Cat F) errros in Sample App and example plugins of SIP
- </defect>
-
- <defect number=" DEF118609" title="SPPR_PERF: SIP Server crashes under IPC attack" revision="27">
- Defect fixes:
- DEF118609 SPPR_PERF: SIP Server crashes under IPC attack
- </defect>
-
- <defect number=" DEF118927" title=" Connection needed prompt looped when using GPRS access point from Sip Settings " revision="26">
- Defect fixes:
- DEF118927 "Connection needed" prompt looped when using GPRS access point from Sip Settings
- </defect>
-
- <defect number=" PDEF119150" title=" SIP Server crashes after 423 response to REGISTER " revision="25">
- Defect fixes:
- PDEF119150 SIP Server crashes after 423 response to REGISTER
- </defect>
-
- <defect number=" DEF118608" title=" Phone does not answer proxy authentication challenge when making call " revision="24">
- Defect fixes:
- DEF118608 Phone does not answer proxy authentication challenge when making call
- </defect>
-
-<defect number=" PDEF117335" title=" SIP Profile parameter KSIPDigestPassword must be write-only " revision="23">
- Defect fixes:
- PDEF117335 SIP Profile parameter KSIPDigestPassword must be write-only
- </defect>
-
- <defect number=" PDEF119071" title=" SipServer crashes with certain sequence of answers to INVITE " revision="22">
- Defect fixes:
- PDEF119071 SipServer crashes with certain sequence of answers to INVITE
- </defect>
-
- <defect number=" DEF117243" title=" Two SIP profiles, registering the second SIP profile fails " revision="21">
- Defect fixes:
- DEF117243 Two SIP profiles, registering the second SIP profile fails
- </defect>
-
- <defect number=" PDEF118401" title=" Incorrect state transition in SIP Connection Mgr after system state event " revision="20">
- Defect fixes:
- PDEF118401 Incorrect state transition in SIP Connection Mgr after system state event
- </defect>
-
-<defect number=" PDEF118452" title=" Klocwork issues, NULL pointer can be used in release build mm-protocols_sip_com " revision="19">
- Defect fixes:
- PDEF118452 Klocwork issues, NULL pointer can be used in release build mm-protocols_sip_com
- </defect>
-
-<defect number=" DEF116133" title=" DEF116133 Cloning empty sdp document crashes " revision="18">
- Defect fixes:
- DEF116133 Cloning empty sdp document crashes
- </defect>
-
-<defect number=" PDEF115951" title=" SIP should accept Allow-header even if it ends with a comma (Allow: INVITE,) " revision="17">
- Defect fixes:
- PDEF115951 SIP should accept Allow-header even if it ends with a comma (Allow: INVITE,)
- </defect>
-
-<defect number=" DEF115781" title=" GPRS connection not dropped when roaming from WLAN to GPRS to WLAN " revision="16">
- Defect fixes:
- DEF115781 GPRS connection not dropped when roaming from WLAN to GPRS to WLAN
- </defect>
-
-<defect number=" DEF115806" title=" Phone doesn't register through other APs in SNAP if fails with first AP " revision="15">
- Defect fixes:
- DEF115806 Phone doesn't register through other APs in SNAP if fails with first AP
- </defect>
-
-<defect number="PDEF115370" title=" Accept-Encoding-header with an empty value is rejected " revision="14">
- Defect fixes:
- PDEF115370 Accept-Encoding-header with an empty value is rejected
- PDEF115371 Profile gets unregistered, if no answer to PUBLISH or SUBSCRIBE
- PDEF115372 Handling of 200 Ok for REGISTER from Ericsson IMS failed
- </defect>
-
-<defect number="PDEF114883" title=" Backup/restore from PC suite not working " revision="13">
- Defect fixes:
- PDEF114883 Backup/restore from PC suite not working
- DEF113041 WLAN not disconnected when disconnecting from Broadvoice SIP service
- </defect>
-
-<defect number="DEF112885" title=" SIP profile registration status not up-to-date after roaming between APs " revision="12">
- Defect fixes:
- DEF112885 SIP profile registration status not up-to-date after roaming
- between APs
- DEF112603 Setting IP Differentiated Services Field changes the source port
- of SIP messages
- </defect>
-
-<defect number="DEF112830" title=" Enabling SIP profile with a SNAP works only once " revision="11">
- Defect fixes:
- DEF112830 Enabling SIP profile with a SNAP works only once
- </defect>
-
- <defect number="DEF112756" title="SIP stack and SIP Client Resolver central repositories are not backed up" revision="10">
- Defect fixes:
- DEF112756 SIP stack and SIP Client Resolver central repositories are not backed up
- </defect>
-
- <defect number="DEF111902" title="PDP Context is not dropped when switching from 'Always on' to 'When needed'" revision="09">
- Defect fixes:
- DEF111902 PDP Context is not dropped when switching from 'Always on' to 'When needed'
- </defect>
-
- <defect number="DEF110809" title="ALR does not work when no IAPs available in SNAP" revision="08">
- Defect fixes:
- DEF110809 ALR does not work when no IAPs available in SNAP
- DEF111014 SIP parameter transport=TLS to some SIPS-URIs
- DEF111868 Filiename policy warnings in SIP HL APIs and RTP components
- </defect>
-
- <defect number="DEF110636" title="Warnings generated with checksource build" revision="07">
- Defect fixes:
- DEF110636 Warnings generated with checksource build
- DEF110816 Phone places "nat_traversal_required" to From field on MO call
- DEF110810 SIP stack allows sips uri to be set to Contact header while tls is not being use
- </defect>
-
- <preq number="1737" title="SIP enhancement phase 3" revision="006">
- Added Note for the following preq:
- Oghma,GT0362,MS3.3,DS.676 SIP enhancements phase 3
- </preq>
-
- <preq number="1737" title="SIP enhancement phase 3" revision="005">
- Added Note for the following preq:
- The Preq is 1737 MS3.2 submission
- </preq>
-
- <defect number="DEF108003" title="Warnings generated with checksource build" revision="004">
- Added Note for the following defects:
- DEF108003 Warnings generated with checksource build
- </defect>
-
- <defect number="PDEF106564" title="Missing IM Tags in SIP Component" revision="003">
- Added Note for the following defects:
- PDEF106564 Missing IM Tags in SIP Component
- DEF106980 Upgrade the handling of String Tables
- </defect>
-
- <defect number="DEF106980" title="Upgrade the handling of String Tables" revision="002">
- Added Note for the following defects:
- PDEF106564 Missing IM Tags in SIP Component
- DEF106980 Upgrade the handling of String Tables
- </defect>
-
- <defect number="DEF106289" title="Reference Doumentation for SIP_COM component missing in SOSlib" revision="001">
- Reference Doumentation for SIP_COM component missing in SOSlib
- </defect>
-</relnotes>
--- a/realtimenetprots/sipfw/ProfileAgent/AlrMonitor/src/sipalrsnapmonitor.cpp Mon Mar 15 12:42:05 2010 +0200
+++ b/realtimenetprots/sipfw/ProfileAgent/AlrMonitor/src/sipalrsnapmonitor.cpp Wed Mar 31 22:10:27 2010 +0300
@@ -489,8 +489,8 @@
void CSipAlrSnapMonitor::NotifyInitializedObservers(
TUint32 aIapId,
MSipAlrObserver::TEvent aEvent )
- {
- for ( TInt i = 0; i < iObservers.Count(); i++ )
+ {
+ for (TInt i = iObservers.Count() - 1; i >= 0; --i)
{
if ( iObservers[i].iInitialEventDone )
{
@@ -508,7 +508,7 @@
//
void CSipAlrSnapMonitor::NotifyNewObservers( TUint32 aIapId )
{
- for ( TInt i = 0; i < iObservers.Count(); i++ )
+ for ( TInt i = iObservers.Count() - 1; i >= 0; --i )
{
if ( !iObservers[i].iInitialEventDone )
{
--- a/realtimenetprots/sipfw/ProfileAgent/IETF_Agent/src/Sipietfconnectioncontext.cpp Mon Mar 15 12:42:05 2010 +0200
+++ b/realtimenetprots/sipfw/ProfileAgent/IETF_Agent/src/Sipietfconnectioncontext.cpp Wed Mar 31 22:10:27 2010 +0300
@@ -366,32 +366,38 @@
// -----------------------------------------------------------------------------
//
void CSIPIetfConnectionContext::IncomingResponse(
- CSIPClientTransaction& aTransaction,
- CSIPRegistrationBinding& aRegistration)
- {
- PROFILE_DEBUG1("CSIPIetfConnectionContext::IncomingResponse")
- TBool handled = EFalse;
+ CSIPClientTransaction& aTransaction,
+ CSIPRegistrationBinding& aRegistration)
+ {
+ PROFILE_DEBUG1("CSIPIetfConnectionContext::IncomingResponse")
+ TBool handled = EFalse;
- CleanIdleContexts();
+ CleanIdleContexts();
- for (TInt i=0; i<iContexts.Count() && !handled; i++)
- {
- const CSIPResponseElements* response = aTransaction.ResponseElements();
- if (response)
- {
- TBool isErrorResponse = (response->StatusCode() >= 300);
- TInt contextCountBefore = iContexts.Count();
-
- iContexts[i]->IncomingResponse(aTransaction, aRegistration, handled);
-
- TBool contextRemoved = (iContexts.Count() != contextCountBefore);
- if (handled && !contextRemoved && isErrorResponse)
- {
- iContexts[i]->RetryRegistration();
- }
- }
- }
- }
+ for (TInt i=0; i<iContexts.Count() && !handled; i++)
+ {
+ const CSIPResponseElements* response = aTransaction.ResponseElements();
+ if (response)
+ {
+ TInt contextCountBefore = iContexts.Count();
+ TBool isErrorResponse = (response->StatusCode() >= 300);
+ TInt statusCode = response->StatusCode();
+ iContexts[i]->IncomingResponse(aTransaction, aRegistration, handled);
+ TBool contextRemoved = (iContexts.Count() != contextCountBefore);
+ if (handled && !contextRemoved && isErrorResponse)
+ {
+ if ( iContexts[i]->RetryTimerInUse() )
+ {
+ iContexts[i]->RetryDeltaTimer(iContexts[i]->DelayTime(), statusCode );
+ }
+ else
+ {
+ iContexts[i]->RetryRegistration();
+ }
+ }
+ }
+ }
+ }
// -----------------------------------------------------------------------------
// CSIPIetfConnectionContext::ErrorOccured
--- a/realtimenetprots/sipfw/ProfileAgent/IETF_Agent/src/Sipietfprofilecontext.cpp Mon Mar 15 12:42:05 2010 +0200
+++ b/realtimenetprots/sipfw/ProfileAgent/IETF_Agent/src/Sipietfprofilecontext.cpp Wed Mar 31 22:10:27 2010 +0300
@@ -440,7 +440,9 @@
AgentObserver().ProceedRegistration(*iProfile, aError) &&
(CurrentState() == MSIPProfileContext::ERegistrationInProgress ||
CurrentState() == MSIPProfileContext::ERegistered) &&
- (aError == KErrSIPOutboundProxyNotResponding ||
+ (aError == K408TimeOut ||
+ aError == K500ServerInternalError ||
+ aError == KErrSIPOutboundProxyNotResponding ||
aError == KErrSIPResolvingFailure ||
aError == KErrTimedOut ||
aError == KErrSIPTransportFailure ||
@@ -490,6 +492,8 @@
TBool CSIPIetfProfileContext::ShouldRetryRegistration( TInt aError )
{
return (aError == K503ServiceUnavailable ||
+ aError == K408TimeOut ||
+ aError == K500ServerInternalError ||
aError == KErrSIPOutboundProxyNotResponding ||
aError == KErrTimedOut ||
((aError == KErrSIPResolvingFailure ||
@@ -548,38 +552,55 @@
// -----------------------------------------------------------------------------
//
void CSIPIetfProfileContext::IncomingResponse(
- CSIPClientTransaction& aTransaction,
- CSIPRegistrationBinding& aRegistration,
- TBool& aHandled)
- {
- if (iClientTx && iRegistration &&
- aTransaction==*iClientTx && aRegistration==*iRegistration)
- {
- PROFILE_DEBUG3("SIPIetfProfileContext::IncomingResponse", ProfileId())
- aHandled = ETrue;
- const CSIPResponseElements* response = aTransaction.ResponseElements();
- if (response)
- {
- TUint responseCode = response->StatusCode();
- if (responseCode >= K300MultipleChoices)
- {
- PROFILE_DEBUG1("IETFProfileContext: registration failed")
- RetryPossible(responseCode);
- }
- else
- {
- if (responseCode >= K200Ok)
- {
- PROFILE_DEBUG1("IETFProfileContext: registration complete")
- iRetryCounter = 0;
- iRetryCounterSum = 0;
- Received2XXRegisterResponse();
- }
- }
- }
- iCurrentState->ResponseReceived(*this, aTransaction);
- }
- }
+ CSIPClientTransaction& aTransaction,
+ CSIPRegistrationBinding& aRegistration,
+ TBool& aHandled)
+ {
+ if (iClientTx && iRegistration &&
+ aTransaction==*iClientTx && aRegistration==*iRegistration)
+ {
+ PROFILE_DEBUG3("SIPIetfProfileContext::IncomingResponse", ProfileId())
+ aHandled = ETrue;
+ const CSIPResponseElements* response = aTransaction.ResponseElements();
+ TUint responseCode = response->StatusCode();
+ TBool retry = EFalse;
+ if (response)
+ {
+ retry = RetryRegister( &aTransaction, responseCode);
+ if( retry )
+ {
+ iCurrentState->ErrorOccured(*this, responseCode);
+ }
+ else
+ {
+ if (responseCode >= K300MultipleChoices)
+ {
+ PROFILE_DEBUG1("IETFProfileContext: registration failed")
+ RetryPossible(responseCode);
+ }
+ else
+ {
+ if (responseCode >= K200Ok)
+ {
+ PROFILE_DEBUG1("IETFProfileContext: registration complete")
+ iRetryCounter = 0;
+ iRetryCounterSum = 0;
+ Received2XXRegisterResponse();
+ }
+ }
+ }
+ }
+
+ if( retry )
+ {
+ iCurrentState->ErrorOccured(*this, responseCode);
+ }
+ else
+ {
+ iCurrentState->ResponseReceived(*this, aTransaction);
+ }
+ }
+ }
// -----------------------------------------------------------------------------
// CSIPIetfProfileContext::RandomPercent()
--- a/realtimenetprots/sipfw/ProfileAgent/IMS_Agent/Inc/sipphoneregistrationmonitor.h Mon Mar 15 12:42:05 2010 +0200
+++ b/realtimenetprots/sipfw/ProfileAgent/IMS_Agent/Inc/sipphoneregistrationmonitor.h Wed Mar 31 22:10:27 2010 +0300
@@ -1,8 +1,8 @@
/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
+* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
@@ -14,7 +14,7 @@
* Description:
* Name : sipphoneregistrationmonitor.h
* Part of : SIP Profile Agent / SIP IMS Agent
-* Version : %version: 4 %
+* Version : %version: 2 %
*
*/
--- a/realtimenetprots/sipfw/ProfileAgent/IMS_Agent/Inc/sipphoneregistrationobserver.h Mon Mar 15 12:42:05 2010 +0200
+++ b/realtimenetprots/sipfw/ProfileAgent/IMS_Agent/Inc/sipphoneregistrationobserver.h Wed Mar 31 22:10:27 2010 +0300
@@ -1,8 +1,8 @@
/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
+* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
@@ -14,7 +14,7 @@
* Description:
* Name : sipphoneregistrationobserver.h
* Part of : SIP Profile Agent / SIP IMS Agent
-* Version : %version: 3 %
+* Version : %version: 2 %
*
*/
--- a/realtimenetprots/sipfw/ProfileAgent/IMS_Agent/Src/sipimsprofileagent.cpp Mon Mar 15 12:42:05 2010 +0200
+++ b/realtimenetprots/sipfw/ProfileAgent/IMS_Agent/Src/sipimsprofileagent.cpp Wed Mar 31 22:10:27 2010 +0300
@@ -886,7 +886,7 @@
PROFILE_DEBUG1("CSIPIMSProfileAgent::DeleteAllProfilesInWaitingQue")
CSIPConcreteProfile* profile = NULL;
- for (TInt i=0; i< iWaitForRegisteringArray.Count();i++)
+ for (TInt i = iWaitForRegisteringArray.Count() -1; i >= 0; --i)
{
profile = iWaitForRegisteringArray[i];
if (profile)
@@ -1345,7 +1345,7 @@
{
TBool found = EFalse;
CSIPConcreteProfile* profile = NULL;
- for (TInt i=0; i< aProfileArray.Count() && !found; i++)
+ for (TInt i= aProfileArray.Count() -1; i >= 0 && !found; --i)
{
CSIPConcreteProfile* tmp = aProfileArray[ i ];
found = ( tmp->Id() == aSIPConcreteProfile.Id() );
--- a/realtimenetprots/sipfw/ProfileAgent/IMS_Agent/Src/sipphoneregistrationmonitor.cpp Mon Mar 15 12:42:05 2010 +0200
+++ b/realtimenetprots/sipfw/ProfileAgent/IMS_Agent/Src/sipphoneregistrationmonitor.cpp Wed Mar 31 22:10:27 2010 +0300
@@ -1,7 +1,7 @@
-// Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
// All rights reserved.
// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
+// under the terms of "Eclipse Public License v1.0"
// which accompanies this distribution, and is available
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
//
@@ -13,11 +13,10 @@
// Description:
// Name : sipphoneregistrationmonitor.cpp
// Part of : SIP Profile Agent / IMS Agent
-// Version : %version: 6 %
+// Version : %version: 2 %
//
-
#include "sipphoneregistrationmonitor.h"
#include "sipphoneregistrationobserver.h"
--- a/realtimenetprots/sipfw/ProfileAgent/Server/Src/SipProfileServerCore.cpp Mon Mar 15 12:42:05 2010 +0200
+++ b/realtimenetprots/sipfw/ProfileAgent/Server/Src/SipProfileServerCore.cpp Wed Mar 31 22:10:27 2010 +0300
@@ -998,7 +998,7 @@
{
status = CSIPConcreteProfile::EUnregistrationInProgress;
}
- if(FeatureManager::FeatureSupported( KFeatureIdFfImsDeregistrationInVpn))
+ if(FeatureManager::FeatureSupported( KFeatureIdFfSipApnSwitching))
{
if(item->LatestProfile().IapId()!= item->UsedProfile().IapId())
{
@@ -1028,7 +1028,7 @@
}
- if(FeatureManager::FeatureSupported( KFeatureIdFfImsDeregistrationInVpn)
+ if(FeatureManager::FeatureSupported( KFeatureIdFfSipApnSwitching)
&& item->IsApnSwitchEnabled())
{
PROFILE_DEBUG1("CSIPProfileServerCore::UpdateRegistrationL, SwichEnabled")
@@ -1076,7 +1076,7 @@
&& item->IsVpnInUse());
const CSIPConcreteProfile* profile = Profile(aProfileId);
- if(FeatureManager::FeatureSupported( KFeatureIdFfImsDeregistrationInVpn )
+ if(FeatureManager::FeatureSupported( KFeatureIdFfSipApnSwitching )
&& CheckApnSwitchEnabledL( *profile ) && !item->IsRfsInprogress() && !isVpnInUse )
{
PROFILE_DEBUG1("CSIPProfileServerCore::EnableProfileL, SwichEnabled")
@@ -1174,7 +1174,7 @@
{
TBool enabled(EFalse);
TRAPD(error, enabled = CheckApnSwitchEnabledL(item->Profile()))
- if(FeatureManager::FeatureSupported( KFeatureIdFfImsDeregistrationInVpn )
+ if(FeatureManager::FeatureSupported( KFeatureIdFfSipApnSwitching )
&&enabled && !error)
{
PROFILE_DEBUG1("CSIPProfileServerCore::RegisterProfiles, SwichEnabled")
--- a/realtimenetprots/sipfw/ProfileAgent/Server/Src/sipalrmigrationcontroller.cpp Mon Mar 15 12:42:05 2010 +0200
+++ b/realtimenetprots/sipfw/ProfileAgent/Server/Src/sipalrmigrationcontroller.cpp Wed Mar 31 22:10:27 2010 +0300
@@ -331,9 +331,12 @@
aAllowed,
iObservers.Count())
- //Get the initial count of Observers
- TInt count = iObservers.Count();;
- for (TInt i = 0; i < count; ++i)
+ // It may be possible that Profile Could not be registered (if migration is allowed). In such cases error handling
+ // for profile will be done, which will move Profile into Un-registered State
+ // As the profile moves into Un-registered state, profile is detached from
+ // the list of Observer which AlrMigrationController maintains. This dynamically
+ // changes the Observer count.
+ for (TInt i = iObservers.Count() -1; i >= 0; --i)
{
MSipAlrMigrationObserver& obs = iObservers[i].iObserver;
TRAPD(err, if (aAllowed)
@@ -350,15 +353,6 @@
PROFILE_DEBUG4("MigrationIs(Dis)AllowedL leaves err,index", err, i)
obs.ErrorOccurred(err);
}
- // Check the Observer Count. It may be possible that Profile Could Not
- // be registered (if migration is allowed). In such cases error handling
- // for profile will be done, which will move Profile into Un-registered State
- // As the profile moves into Un-registered state, profile is detached from
- // the list of Observer which AlrMigrationController maintains. This dynamically
- // changes the Observer count.
- if(iObservers.Count() < count)
- i--;
- count = iObservers.Count();
}
}
--- a/realtimenetprots/sipfw/SIP/NetworkMonitor/src/CNetworkManager.cpp Mon Mar 15 12:42:05 2010 +0200
+++ b/realtimenetprots/sipfw/SIP/NetworkMonitor/src/CNetworkManager.cpp Wed Mar 31 22:10:27 2010 +0300
@@ -410,7 +410,8 @@
aObjectName.AppendNum( static_cast<TInt64>( realIapId ) );
}
#endif
-
+ __SIP_INT_LOG1( "CNetworkManager::GetServiceTypeAndObjectNameL end realIapID =", realIapId )
+
return realIapId;
}
@@ -436,37 +437,39 @@
CCDVPNServiceRecord* serviceRecord =
static_cast<CCDVPNServiceRecord*>( aIapRecord.iService.iLinkedRecord );
-
- serviceRecord->iServiceIAP.LoadL( aCommsDat );
-
- // It is valid to have 0 for iServiceIAP when the SNAP is configured for VPN IAP.
- // So treat this is a valid configuaration and fill the aServiceType to NULL which usually contains the IAP service type(like LAN Service, Outgoing GPRS etc )
- if (serviceRecord->iServiceIAP == 0)
- {
- aServiceType.Copy(_L8(""));
- return (serviceRecord->iServiceIAP);
- }
-
- if ( !serviceRecord->iServiceIAP.iLinkedRecord )
- {
- // Ownership of created record is transferred
- serviceRecord->iServiceIAP.iLinkedRecord =
- static_cast<CCDIAPRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdIAPRecord ) );
- serviceRecord->iServiceIAP.iLinkedRecord->SetRecordId(
- serviceRecord->iServiceIAP );
-
- serviceRecord->iServiceIAP.iLinkedRecord->LoadL( aCommsDat );
- }
- CCDIAPRecord* iapRecord =
- static_cast<CCDIAPRecord*>( serviceRecord->iServiceIAP.iLinkedRecord );
-
- // We need service type info of the "real" iap
- GetServiceTypeL( *iapRecord, aServiceType );
-
- return iapRecord->RecordId();
- }
+ TRAPD(err,serviceRecord->iServiceIAP.LoadL( aCommsDat ));
+ if(KErrNone != err )
+ {
+ //Its valid to not have iServiceIAP record, due to introduction of ServiceSNAP for the VPN with Snap
+ __SIP_INT_LOG1( "CNetworkManager::HandleVPNServiceL CCDVPNServiceRecord->iServiceIAP LoadL failed with error=", err)
+ aServiceType.Copy(_L8(""));
+ return 0;
+
+ }
+ else
+ {
+ if ( !serviceRecord->iServiceIAP.iLinkedRecord )
+ {
+ // Ownership of created record is transferred
+ serviceRecord->iServiceIAP.iLinkedRecord =
+ static_cast<CCDIAPRecord*>(
+ CCDRecordBase::RecordFactoryL( KCDTIdIAPRecord ) );
+ serviceRecord->iServiceIAP.iLinkedRecord->SetRecordId(
+ serviceRecord->iServiceIAP );
+
+ serviceRecord->iServiceIAP.iLinkedRecord->LoadL( aCommsDat );
+ }
+
+
+ CCDIAPRecord* iapRecord =
+ static_cast<CCDIAPRecord*>( serviceRecord->iServiceIAP.iLinkedRecord );
+
+ // We need service type info of the "real" iap
+ GetServiceTypeL( *iapRecord, aServiceType );
+ return iapRecord->RecordId();
+ }
+ }
// -----------------------------------------------------------------------------
// CNetworkManager::GetServiceTypeL
--- a/sipplugins/sippsipsettingsui/src/sipsettingsmodel.cpp Mon Mar 15 12:42:05 2010 +0200
+++ b/sipplugins/sippsipsettingsui/src/sipsettingsmodel.cpp Wed Mar 31 22:10:27 2010 +0300
@@ -112,6 +112,8 @@
{
__GSLOGSTRING1("CSIPSettingsModel::SetDefaultProfileL index: %d", aIndex)
TRAPD(err, iHandler->SetDefaultProfileL( aIndex ));
+ if( err != KErrNone )
+ {
if ( err == KErrInUse )
{
HBufC* txtErr = StringLoader::LoadLC( R_QTN_SIP_ERROR_PROFILE_USED );
@@ -123,6 +125,7 @@
{
User::Leave( err );
}
+ }
}
// -----------------------------------------------------------------------------
--- a/sipplugins/sippsystemstatemonitor/group/sipsystemstatemonitor.mmp Mon Mar 15 12:42:05 2010 +0200
+++ b/sipplugins/sippsystemstatemonitor/group/sipsystemstatemonitor.mmp Wed Mar 31 22:10:27 2010 +0300
@@ -26,7 +26,6 @@
SOURCE sipsystemstatemonitorimpl.cpp
SOURCE sipsystemstatemonitorao.cpp
SOURCE sipsnapavailabilitymonitor.cpp
-SOURCE CSystemStateConnUsagePermissionMonitor.cpp
SOURCE siprfsmonitorao.cpp
SOURCE sipdevicestateaware.cpp
SOURCE sipvpnmonitorao.cpp
--- a/sipplugins/sippsystemstatemonitor/inc/CSystemStateConnUsagePermissionMonitor.h Mon Mar 15 12:42:05 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,94 +0,0 @@
-/*
-* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-
-#ifndef CSYSTEMSTATECONNUSAGEPERMISSIONMONITOR_H
-#define CSYSTEMSTATECONNUSAGEPERMISSIONMONITOR_H
-
-// INCLUDES
-
-#include <e32std.h>
-
-// FORWARD DECLARATIONS
-class MSystemStateConnUsagePermissionObserver;
-class CRepository;
-
-// CLASS DECLARATION
-
-/**
- * Class for subscribing events from secure backup server.
- */
-class CSystemStateConnUsagePermissionMonitor : public CActive
- {
- public:
-
- /**
- * Two-phased constructor.
- * @return new instance
- */
- static CSystemStateConnUsagePermissionMonitor* NewL();
-
- /**
- * Destructor
- */
- ~CSystemStateConnUsagePermissionMonitor();
-
- /**
- * Add obsever
- */
- void AddObserverL( MSystemStateConnUsagePermissionObserver& aObserver );
-
- /**
- * Remove observer
- */
- void RemoveObserver( MSystemStateConnUsagePermissionObserver& aObserver );
-
- public: // From CActive
-
- void RunL();
-
- void DoCancel();
-
- TInt RunError( TInt aError );
-
- public: // new functions
-
- TInt CurrentUsagePermission();
-
- private:
-
- CSystemStateConnUsagePermissionMonitor();
- void ConstructL ();
-
- private:
-
- void IssueMonitoringL();
- TBool TranslateConnectionAllowedValue( TInt aValue );
-
- private:
-
- TInt iCurrentUsagePermission;
- RPointerArray<MSystemStateConnUsagePermissionObserver> iObservers;
- CRepository* iRepository;
-
-#ifdef CPPUNIT_TEST
- friend class CSipSystemStateMonitorImplTest;
-#endif
-
- };
-
-#endif
--- a/sipplugins/sippsystemstatemonitor/inc/MSystemStateConnUsagePermissionObserver.h Mon Mar 15 12:42:05 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,41 +0,0 @@
-/*
-* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#ifndef MSYSTEMSTATECONNUSAGEPERMISSIONOBSERVER_H
-#define MSYSTEMSTATECONNUSAGEPERMISSIONOBSERVER_H
-
-// INCLUDES
-#include <e32base.h>
-
-// FORWARD DECLARATIONS
-
-// CLASS DEFINITION
-/**
- * Callback interface for receiving connection usage permission change events.
- *
- */
-class MSystemStateConnUsagePermissionObserver
- {
- public: // Abstract methods
-
- virtual void UsagePermissionChanged( TBool aPermissionToUse,
- TInt aError ) = 0;
-
- };
-
-#endif // MSYSTEMSTATECONNUSAGEPERMISSIONOBSERVER_H
-
--- a/sipplugins/sippsystemstatemonitor/inc/sipsnapavailabilitymonitor.h Mon Mar 15 12:42:05 2010 +0200
+++ b/sipplugins/sippsystemstatemonitor/inc/sipsnapavailabilitymonitor.h Wed Mar 31 22:10:27 2010 +0300
@@ -19,7 +19,6 @@
#define CSIPSNAPAVAILABILITYMONITOR_H
// INCLUDES
-#include "MSystemStateConnUsagePermissionObserver.h"
#include <sipsystemstatemonitor.h>
#include <rconnmon.h>
#include <e32base.h>
@@ -33,8 +32,7 @@
*/
class CSipSnapAvailabilityMonitor :
public CActive,
- public MConnectionMonitorObserver,
- public MSystemStateConnUsagePermissionObserver
+ public MConnectionMonitorObserver
{
public: // Constructors and destructor
@@ -47,7 +45,6 @@
*/
static CSipSnapAvailabilityMonitor* NewL(
TUint32 aSnapId,
- TBool aPermissionToUseNetwork,
MSipSystemStateObserver& aObserver );
/**
@@ -58,8 +55,7 @@
* @return An initialized instance of this class.
*/
static CSipSnapAvailabilityMonitor* NewLC(
- TUint32 aSnapId,
- TBool aPermissionToUseNetwork,
+ TUint32 aSnapId,
MSipSystemStateObserver& aObserver );
/// Destructor
@@ -73,12 +69,8 @@
public: // From MConnectionMonitorObserver
- void EventL( const CConnMonEventBase &aConnMonEvent );
-
- public: // from MSystemStateConnUsagePermissionObserver
-
- void UsagePermissionChanged( TBool aPermissionToUse, TInt aError );
-
+ void EventL( const CConnMonEventBase &aConnMonEvent );
+
public: // New functions
TUint32 SnapId() const;
@@ -93,9 +85,7 @@
private: // Constructors
- CSipSnapAvailabilityMonitor(
- TUint32 aSnapId,
- TBool aPermissionToUseNetwork );
+ CSipSnapAvailabilityMonitor( TUint32 aSnapId );
void ConstructL( MSipSystemStateObserver& aObserver );
@@ -107,16 +97,13 @@
void NotifyObservers() const;
- TBool SetCurrentState(
- TBool aPermissionToUseNetwork,
- TBool aSnapAvailable );
+ TBool SetCurrentState( TBool aSnapAvailable );
TBool CanSnapBeUsed() const;
private: // Data
TUint32 iSnapId;
- TBool iPermissionToUseNetwork;
TBool iSnapAvailable;
// Observers not owned
RPointerArray<MSipSystemStateObserver> iObservers;
--- a/sipplugins/sippsystemstatemonitor/inc/sipsystemstatemonitorimpl.h Mon Mar 15 12:42:05 2010 +0200
+++ b/sipplugins/sippsystemstatemonitor/inc/sipsystemstatemonitorimpl.h Wed Mar 31 22:10:27 2010 +0300
@@ -21,12 +21,10 @@
// INCLUDES
#include "sipsystemstatemonitorao.h"
#include "sipsnapavailabilitymonitor.h"
-#include "MSystemStateConnUsagePermissionObserver.h"
#include <sipsystemstateobserver.h>
#include <sipsystemstatemonitor.h>
// FORWARD DECLARATIONS
-class CSystemStateConnUsagePermissionMonitor;
class CSipDeviceStateAware;
class CSipRfsMonitorAo;
class CSipVpnMonitorAo;
@@ -77,7 +75,6 @@
CSipSystemStateMonitorAo* iMonitorAo;
RPointerArray<CSipSnapAvailabilityMonitor> iSnapMonitors;
- CSystemStateConnUsagePermissionMonitor* iUsagePermissionMonitor;
CSipRfsMonitorAo* iRfsMonitor;
CSipDeviceStateAware* iSipDeviceAwareObject;
--- a/sipplugins/sippsystemstatemonitor/src/CSystemStateConnUsagePermissionMonitor.cpp Mon Mar 15 12:42:05 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,214 +0,0 @@
-/*
-* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-
-#include <CoreApplicationUIsSDKCRKeys.h>
-#include <centralrepository.h>
-#include "CSystemStateConnUsagePermissionMonitor.h"
-#include "MSystemStateConnUsagePermissionObserver.h"
-
-// -----------------------------------------------------------------------------
-// CSystemStateConnUsagePermissionMonitor::NewL
-// -----------------------------------------------------------------------------
-//
-CSystemStateConnUsagePermissionMonitor*
-CSystemStateConnUsagePermissionMonitor::NewL()
- {
- CSystemStateConnUsagePermissionMonitor* self =
- new ( ELeave ) CSystemStateConnUsagePermissionMonitor();
- CleanupStack::PushL( self );
- self->ConstructL();
- CleanupStack::Pop( self );
- return self;
- }
-
-// -----------------------------------------------------------------------------
-// CSystemStateConnUsagePermissionMonitor::CSystemStateConnUsagePermissionMonitor
-// -----------------------------------------------------------------------------
-//
-CSystemStateConnUsagePermissionMonitor::CSystemStateConnUsagePermissionMonitor()
- : CActive( EPriorityStandard ),
- iCurrentUsagePermission( EFalse )
- {
- CActiveScheduler::Add( this );
- }
-
-// -----------------------------------------------------------------------------
-// CSystemStateConnUsagePermissionMonitor::ConstructL
-// -----------------------------------------------------------------------------
-//
-void CSystemStateConnUsagePermissionMonitor::ConstructL()
- {
- iRepository = CRepository::NewL( KCRUidCoreApplicationUIs );
- IssueMonitoringL();
- }
-
-// -----------------------------------------------------------------------------
-// CSystemStateConnUsagePermissionMonitor::~CSystemStateConnUsagePermissionMonitor
-// -----------------------------------------------------------------------------
-//
-CSystemStateConnUsagePermissionMonitor::~CSystemStateConnUsagePermissionMonitor()
- {
- iObservers.Close();
- Cancel();
- delete iRepository;
- }
-
-// -----------------------------------------------------------------------------
-// CSystemStateConnUsagePermissionMonitor::RunL
-// -----------------------------------------------------------------------------
-//
-void CSystemStateConnUsagePermissionMonitor::RunL()
- {
- TInt status( iStatus.Int() );
-
- TInt previousPermission = iCurrentUsagePermission;
-
- CurrentUsagePermission();
-
- // Strangely cenrep may complete the request with positive value,
- // do not interpret it as an error.
- if ( status >= KErrNone )
- {
- status = KErrNone;
- IssueMonitoringL();
- }
-
- if ( previousPermission != iCurrentUsagePermission )
- {
- for ( TInt i = iObservers.Count()-1; i >= 0; i-- )
- {
- iObservers[i]->UsagePermissionChanged( iCurrentUsagePermission,
- status );
- }
- }
- }
-
-// -----------------------------------------------------------------------------
-// CSystemStateConnUsagePermissionMonitor::DoCancel
-// -----------------------------------------------------------------------------
-//
-void CSystemStateConnUsagePermissionMonitor::DoCancel()
- {
- iRepository->NotifyCancelAll();
- }
-
-// -----------------------------------------------------------------------------
-// CSystemStateConnUsagePermissionMonitor::RunError
-// -----------------------------------------------------------------------------
-//
-TInt CSystemStateConnUsagePermissionMonitor::RunError( TInt aError )
- {
- for ( TInt i = iObservers.Count()-1; i >= 0; i-- )
- {
- iObservers[i]->UsagePermissionChanged( iCurrentUsagePermission,
- aError );
- }
- if ( aError != KErrNoMemory )
- {
- return KErrNone;
- }
- return aError;
- }
-
-// -----------------------------------------------------------------------------
-// CSystemStateConnUsagePermissionMonitor::CurrentUsagePermission
-// -----------------------------------------------------------------------------
-//
-TInt CSystemStateConnUsagePermissionMonitor::CurrentUsagePermission()
- {
- TInt value( KErrNotFound );
- TInt err = iRepository->Get( KCoreAppUIsNetworkConnectionAllowed, value );
- if ( err == KErrNone)
- {
- iCurrentUsagePermission = TranslateConnectionAllowedValue( value );
- }
- else
- {
- iCurrentUsagePermission = err;
- }
- return iCurrentUsagePermission;
- }
-
-// -----------------------------------------------------------------------------
-// CSystemStateConnUsagePermissionMonitor::IssueMonitoringL
-// -----------------------------------------------------------------------------
-//
-void CSystemStateConnUsagePermissionMonitor::IssueMonitoringL()
- {
- if ( !IsActive() )
- {
- User::LeaveIfError(
- iRepository->NotifyRequest( KCoreAppUIsNetworkConnectionAllowed,
- iStatus ) );
- SetActive();
- }
- }
-
-// -----------------------------------------------------------------------------
-// CSystemStateConnUsagePermissionMonitor::TranslateConnectionAllowedValue
-// -----------------------------------------------------------------------------
-//
-TBool CSystemStateConnUsagePermissionMonitor::TranslateConnectionAllowedValue(
- TInt aValue )
- {
- TBool retVal( EFalse );
- switch ( aValue )
- {
- case ECoreAppUIsNetworkConnectionNotAllowed:
- {
- retVal = EFalse;
- break;
- }
- case ECoreAppUIsNetworkConnectionAllowed:
- {
- retVal = ETrue;
- break;
- }
- default:
- {
- break;
- }
- }
- return retVal;
- }
-
-// -----------------------------------------------------------------------------
-// CSystemStateConnUsagePermissionMonitor::AddObserverL
-// -----------------------------------------------------------------------------
-//
-void CSystemStateConnUsagePermissionMonitor::AddObserverL(
- MSystemStateConnUsagePermissionObserver& aObserver )
- {
- iObservers.InsertInAddressOrderL( &aObserver );
- }
-
-// -----------------------------------------------------------------------------
-// CSystemStateConnUsagePermissionMonitor::RemoveObserver
-// -----------------------------------------------------------------------------
-//
-void CSystemStateConnUsagePermissionMonitor::RemoveObserver(
- MSystemStateConnUsagePermissionObserver& aObserver )
- {
- TInt index = iObservers.Find( &aObserver );
- if ( index >= 0 )
- {
- iObservers.Remove( index );
- }
- }
-
-// End of file
--- a/sipplugins/sippsystemstatemonitor/src/sipsnapavailabilitymonitor.cpp Mon Mar 15 12:42:05 2010 +0200
+++ b/sipplugins/sippsystemstatemonitor/src/sipsnapavailabilitymonitor.cpp Wed Mar 31 22:10:27 2010 +0300
@@ -25,12 +25,11 @@
//
CSipSnapAvailabilityMonitor* CSipSnapAvailabilityMonitor::NewL(
TUint32 aSnapId,
- TBool aPermissionToUseNetwork,
MSipSystemStateObserver& aObserver )
{
CSipSnapAvailabilityMonitor* self =
CSipSnapAvailabilityMonitor::NewLC(
- aSnapId, aPermissionToUseNetwork, aObserver );
+ aSnapId, aObserver );
CleanupStack::Pop( self );
return self;
}
@@ -41,12 +40,10 @@
//
CSipSnapAvailabilityMonitor* CSipSnapAvailabilityMonitor::NewLC(
TUint32 aSnapId,
- TBool aPermissionToUseNetwork,
MSipSystemStateObserver& aObserver )
{
CSipSnapAvailabilityMonitor* self =
- new( ELeave ) CSipSnapAvailabilityMonitor(
- aSnapId, aPermissionToUseNetwork );
+ new( ELeave ) CSipSnapAvailabilityMonitor( aSnapId );
CleanupStack::PushL( self );
self->ConstructL( aObserver );
return self;
@@ -57,11 +54,9 @@
// -----------------------------------------------------------------------------
//
CSipSnapAvailabilityMonitor::CSipSnapAvailabilityMonitor(
- TUint32 aSnapId,
- TBool aPermissionToUseNetwork )
+ TUint32 aSnapId)
: CActive( EPriorityStandard ),
iSnapId( aSnapId ),
- iPermissionToUseNetwork( aPermissionToUseNetwork ),
iIsConnected( EFalse )
{
CActiveScheduler::Add( this );
@@ -144,7 +139,7 @@
TBool snapAvailable =
IsSnapAvailable( event.SNAPAvailability(), iSnapId );
- if ( SetCurrentState( iPermissionToUseNetwork, snapAvailable ) )
+ if ( SetCurrentState( snapAvailable ) )
{
NotifyObservers();
}
@@ -212,20 +207,6 @@
}
// -----------------------------------------------------------------------------
-// CSipSnapAvailabilityMonitor::UsagePermissionChanged
-// -----------------------------------------------------------------------------
-//
-void CSipSnapAvailabilityMonitor::UsagePermissionChanged(
- TBool aPermissionToUse,
- TInt /*aError*/ )
- {
- if ( SetCurrentState( aPermissionToUse, iSnapAvailable ) )
- {
- NotifyObservers();
- }
- }
-
-// -----------------------------------------------------------------------------
// CSipSnapAvailabilityMonitor::NotifyObservers
// -----------------------------------------------------------------------------
//
@@ -270,16 +251,10 @@
// CSipSnapAvailabilityMonitor::SetCurrentState
// -----------------------------------------------------------------------------
//
-TBool CSipSnapAvailabilityMonitor::SetCurrentState(
- TBool aPermissionToUseNetwork,
+TBool CSipSnapAvailabilityMonitor::SetCurrentState(
TBool aSnapAvailable )
{
TBool updated( EFalse );
- if ( aPermissionToUseNetwork != iPermissionToUseNetwork )
- {
- iPermissionToUseNetwork = aPermissionToUseNetwork;
- updated = ETrue;
- }
if ( aSnapAvailable != iSnapAvailable )
{
iSnapAvailable = aSnapAvailable;
@@ -294,7 +269,7 @@
//
TBool CSipSnapAvailabilityMonitor::CanSnapBeUsed() const
{
- return ( iSnapAvailable && iPermissionToUseNetwork );
+ return ( iSnapAvailable );
}
// End of File
--- a/sipplugins/sippsystemstatemonitor/src/sipsystemstatemonitorimpl.cpp Mon Mar 15 12:42:05 2010 +0200
+++ b/sipplugins/sippsystemstatemonitor/src/sipsystemstatemonitorimpl.cpp Wed Mar 31 22:10:27 2010 +0300
@@ -18,7 +18,6 @@
// INCLUDE FILES
#include "sipsystemstatemonitorimpl.h"
-#include "CSystemStateConnUsagePermissionMonitor.h"
#include "sipdevicestateaware.h"
#include "siprfsmonitorao.h"
#include "sipvpnmonitorao.h"
@@ -45,8 +44,6 @@
void CSipSystemStateMonitorImpl::ConstructL()
{
iMonitorAo = CSipSystemStateMonitorAo::NewL();
- iUsagePermissionMonitor =
- CSystemStateConnUsagePermissionMonitor::NewL();
iSipDeviceAwareObject = CSipDeviceStateAware::NewL();
}
@@ -73,7 +70,6 @@
delete iMonitorAo;
iSnapMonitors.ResetAndDestroy();
- delete iUsagePermissionMonitor;
delete iRfsMonitor;
delete iSipDeviceAwareObject;
}
@@ -106,12 +102,8 @@
CSipSnapAvailabilityMonitor* monitor = FindSnapMonitorById( aObjectId );
if ( !monitor )
{
- TInt permissionToUseNetwork =
- iUsagePermissionMonitor->CurrentUsagePermission();
- User::LeaveIfError( permissionToUseNetwork );
monitor = CSipSnapAvailabilityMonitor::NewLC(
- aObjectId, permissionToUseNetwork, aObserver );
- iUsagePermissionMonitor->AddObserverL( *monitor );
+ aObjectId, aObserver );
iSnapMonitors.AppendL( monitor );
CleanupStack::Pop( monitor );
}
@@ -159,8 +151,7 @@
{
CSipSnapAvailabilityMonitor* monitor = FindSnapMonitorById( aObjectId );
if ( monitor )
- {
- iUsagePermissionMonitor->RemoveObserver( *monitor );
+ {
monitor->RemoveObserver( aObserver );
if ( !monitor->HasObservers() )
{
@@ -200,16 +191,8 @@
else if ( aVariable == ESnapAvailability )
{
CSipSnapAvailabilityMonitor* monitor = FindSnapMonitorById( aObjectId );
- if ( monitor )
- {
- TInt permissionToUseNetwork =
- iUsagePermissionMonitor->CurrentUsagePermission();
- if ( permissionToUseNetwork < 0 )
- {
- return permissionToUseNetwork;
- }
- return permissionToUseNetwork && monitor->SnapAvailability();
- }
+ if ( monitor )
+ return monitor->SnapAvailability();
}
else if ( aVariable == ERfsState )
{
Binary file sipproviderplugins/sipprovider/sipconnectionplugins/Documentation/sipproviders.eap has changed
--- a/sipproviderplugins/sipprovider/sipconnectionplugins/group/mm-protocols_sipproviders.history.xml Mon Mar 15 12:42:05 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<relnotes name="SIP Connection Provider Plugins V2">
- <purpose>
- Provides connection provision at the network layer.
- </purpose>
-
- <defect number="DEF133288" title="[SystemBuild]: Elf2e32 Warning SIPConnectionPlugins in M04816vFuture with ARMV7" revision="04">
- Defect fixes:
- DEF133288 [SystemBuild]: Elf2e32 Warning SIPConnectionPlugins in M04816vFuture with ARMV7
- </defect>
-
- <defect number="DEF131783" title="Functionality moved from SCPRStates to PRStates namespace" revision="03">
- Defect fixes:
- DEF131783 Functionality moved from SCPRStates to PRStates namespace
- </defect>
-
- <defect number="PDEF129789" title="SMP: sipproviders doesn't compile for the x86gcc platform" revision="02">
- Defect fixes:
- PDEF129789 SMP: sipproviders doesn't compile for the x86gcc platform
- </defect>
-
- <defect number="DEF130036" title="SIP Providers possible problem activity..." revision="01">
- Defect fixes:
- DEF130036 SIP Providers possible problem activity...
- </defect>
-
- <ec number="120" title="Mesh Machine Productisation" revision="050">
- Mesh Machine Productisation
- </ec>
-</relnotes>
--- a/sipproviderplugins/sipprovider/sipdummyprt/group/mm-protocols_sipdummyprt.history.xml Mon Mar 15 12:42:05 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-<?xml version="1.0"?>
-<relnotes schema="1.0.0" name="SIP Connection Provider Plugins" purpose="" type="component">
- <revision major="1" functional="0" minor="0" date="20070808">
- <ref name="DEF109829" type="defect"/>
- <description>Added note for:
-DEF109829 GTC Sip iby errors</description>
- </revision>
- <purpose>
- Provides connection provision at the network layer.
- </purpose>
-</relnotes>
--- a/sipproviderplugins/sipprovider/sipstatemachine/group/mm-protocols_sipstatemachine.history.xml Mon Mar 15 12:42:05 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<relnotes name="SIP Connection Provider Plugins">
- <purpose>
- Provides connection provision at the network layer.
- </purpose>
-
- <defect number="DEF126882" title="[Coverity]-SYMBIAN.CLEANUP_STACK -mm-protocols/sip2/" revision="008">
- Defect fixes:
- DEF126882 [Coverity]-SYMBIAN.CLEANUP_STACK -mm-protocols/sip2/
- </defect>
-
- <defect number="DEF126880" title="[Coverity]-PASS_BY_VALUE -mm-protocols/sip2/ " revision="007">
- Defect fixes:
- DEF126880 [Coverity]-PASS_BY_VALUE -mm-protocols/sip2/
- </defect>
-
- <defect number="DEF125315" title="[sip]RSubconnection::Start() doesn't return error when 400 or 404 is received." revision="006">
- Defect fixes:
- DEF125315 [sip]RSubconnection::Start() doesn't return error when 400 or 404 is received.
- </defect>
-
- <defect number="DEF125120" title="[coverity] - REVERSE_INULL - mm-protocols/sipprovengine/sipstatemachine" revision="005">
- Defect fixes:
- DEF125120 [coverity] - REVERSE_INULL - mm-protocols/sipprovengine/sipstatemachine
- </defect>
-
- <defect number="DEF125121" title="[coverity] - UNINIT - mm-protocols/sipprovengine/sipstatemachine" revision="004">
- Defect fixes:
- DEF125121 [coverity] - UNINIT - mm-protocols/sipprovengine/sipstatemachine
- </defect>
-
- <defect number="DEF124879" title="Cannot send INVITE with SDP parameter using SIP high level API." revision="003">
- Defect fixes:
- DEF124879 Cannot send INVITE with SDP parameter using SIP high level API.
- </defect>
-
- <defect number="DEF108003" title="Warnings generated with checksource build" revision="002">
- Added Note for the following defects:
- DEF108003 Warnings generated with checksource build
- </defect>
-
- <preq number="1182" title="GNU Make-based build system" revision="001">
- GNU Make-based build system
- </preq>
-</relnotes>