epoc32/include/mw/siphttpdigestchallengeobserver2.h
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
parent 3 e1b950c65cb4
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
     1 /*
     2 * Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
     3 * All rights reserved.
     4 * This component and the accompanying materials are made available
     5 * under the terms of "Eclipse Public License v1.0"
     6 * which accompanies this distribution, and is available
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     8 *
     9 * Initial Contributors:
    10 * Nokia Corporation - initial contribution.
    11 *
    12 * Contributors:
    13 *
    14 * Description:
    15 * Name        : siphttpdigestchallengeobserver2.h
    16 * Part of     : SIP Client
    17 * Interface   : SDK API, SIP Client API
    18 * Version     : 1.0
    19 *
    20 */
    21 
    22 
    23 
    24 #ifndef MSIPHTTPDIGESTCHALLENGEOBSERVER2_H
    25 #define MSIPHTTPDIGESTCHALLENGEOBSERVER2_H
    26 
    27 // INCLUDES
    28 #include <e32std.h>
    29 
    30 // FORWARD DECLARATIONS
    31 class CSIPClientTransaction;
    32 class CSIPRefresh;
    33 
    34 // CLASS DECLARATION
    35 /**
    36 * @publishedAll
    37 * @released
    38 *
    39 * The user should implement this interface if it intends to
    40 * provide HTTP Digest credentials upon received challenges
    41 * from the SIP servers on the signaling path.
    42 * The user should provide credentials or ignore the challenge
    43 * using functions defined in CSIPHttpDigest class.
    44 *
    45 * Applications are encouraged to use implement below interface which
    46 * provides functions to extract multiple challenges.
    47 * MSIPHttpDigestChallengeObserver2 class is compliant to RFC 3261
    48 *
    49 *  @lib n/a
    50 */
    51 class MSIPHttpDigestChallengeObserver2
    52 	{
    53     public: // New functions
    54 		/**
    55 		* A SIP request resulted in 401/407 response that contains
    56 		* 1..n challenges. 
    57 		* The challenges can be obtained from Proxy-Authenticate- and/or
    58 		* WWW-Authenticate-headers in the CSIPResponseElements
    59 		* attached to the CSIPClientTransaction.
    60 		* The user must call CSIPHttpDigest::SetCredentialsL or
    61 		* CSIPHttpDigest::IgnoreChallenge for each challenge.
    62 		*
    63 		* @param aTransaction transaction which was completed with 
    64 		*        a response containing HTTP Digest challenge.
    65 		*/
    66 		virtual void ChallengeReceived(
    67 		    const CSIPClientTransaction& aTransaction) = 0;
    68 
    69 		/**
    70 		* A refreshed SIP request resulted in 401/407 response that contains
    71 		* 1..n challenges.
    72 		* The challenges can be obtained from Proxy-Authenticate- and/or
    73 		* WWW-Authenticate-headers in the CSIPResponseElements
    74 		* attached to the CSIPClientTransaction attached to the CSIPRefresh.
    75 		* The user must call CSIPHttpDigest::SetCredentialsL or
    76 		* CSIPHttpDigest::IgnoreChallenge for each challenge.		 
    77 		*
    78 		* @param aRefresh the refresh for which a transaction completed with 
    79 		*        a response containing HTTP Digest challenge.
    80 		*/		    
    81 		virtual void ChallengeReceived(
    82 		    const CSIPRefresh& aRefresh) = 0;		    
    83 	};
    84 
    85 #endif // MSIPHTTPDIGESTCHALLENGEOBSERVER2_H