diff -r fc8c25e5a2e8 -r 7117cbf1600a voipplugins/sipmxresolver/src/sipmxresolver.cpp --- a/voipplugins/sipmxresolver/src/sipmxresolver.cpp Fri Feb 19 22:44:34 2010 +0200 +++ b/voipplugins/sipmxresolver/src/sipmxresolver.cpp Fri Mar 12 15:42:09 2010 +0200 @@ -36,6 +36,8 @@ #include #include #include +#include +#include //For checking dynamic voip status and MuS availability #include @@ -59,7 +61,9 @@ _LIT8( KSendOnly, "sendonly" ); // For attribute checks _LIT8( KApplicationAttr, "application" ); // For attribute checks _LIT8( KXApplicationAttr, "X-application" ); // For attribute checks -_LIT8( KNokiaRtvs, "com.nokia.rtvs" ); // For attribute checks +_LIT8( KNokiaRtvs, "com.nokia.rtvs" ); // For attribute checks +_LIT8( KSIPMethodsInAllowHeader, "INVITE,ACK,CANCEL,OPTIONS,BYE,PRACK,SUBSCRIBE,REFER,NOTIFY,UPDATE"); // SIP Methods allowed by various plugins +_LIT8( KSIPExtensionsSupported, "100rel,timer,sec-agree"); //Extensions supported by various plugins /** * Cleanup function for RPointerArray @@ -469,8 +473,29 @@ // --------------------------------------------------------------------------- // void CSipMXResolver::AddClientSpecificHeadersForOptionsResponseL( - RPointerArray& /*aHeaders*/ ) + RPointerArray& aHeaders ) { + SIPMXRLOG( "[SIPMXRESOLVER] -> \ + CSipMXResolver::AddClientSpecificHeadersForOptionsResponseL()" ) + //Add Allow Header + RPointerArray allowheaders = + CSIPAllowHeader::DecodeL(KSIPMethodsInAllowHeader); + TInt count = allowheaders.Count(); + for(TInt i = 0; i supportedheaders = + CSIPSupportedHeader::DecodeL(KSIPExtensionsSupported); + count = supportedheaders.Count(); + for(TInt j = 0; j