442 CBTPasskeyEntry* InstancePasskeyEntry() const; |
442 CBTPasskeyEntry* InstancePasskeyEntry() const; |
443 TBool IsPasskeyEntryActive()const; |
443 TBool IsPasskeyEntryActive()const; |
444 void DeletePasskeyEntry(); |
444 void DeletePasskeyEntry(); |
445 void CancelPasskeyEntry(); |
445 void CancelPasskeyEntry(); |
446 void PasskeyEntryKeyPressed(THCIPasskeyEntryNotificationType aKey); |
446 void PasskeyEntryKeyPressed(THCIPasskeyEntryNotificationType aKey); |
|
447 |
|
448 void NewUserConfirmerL(const TBTDevAddr aAddr,CBTSecMan& aSecMan,TBool aInternallyInitiated); |
|
449 |
|
450 CBTUserConfirmer* InstanceUserConfirmer() const; |
|
451 TBool IsUserConfirmerActive()const; |
|
452 void DeleteUserConfirmer(); |
|
453 void CancelUserConfirmer(); |
|
454 |
|
455 |
447 TBasebandTime GetSniffInterval() const; |
456 TBasebandTime GetSniffInterval() const; |
448 |
457 |
449 TBool IsPairable() const; |
458 TBool IsPairable() const; |
450 |
459 |
|
460 TBool IsPairingExpected() const; |
|
461 |
451 private: |
462 private: |
452 CPhysicalLink(CPhysicalLinksManager& aParent, CRegistrySession& aRegSess, const TBTNamelessDevice& aDevice); |
463 CPhysicalLink(CPhysicalLinksManager& aParent, CRegistrySession& aRegSess, const TBTNamelessDevice& aDevice); |
453 void ConstructL(); |
464 void ConstructL(); |
454 void GetRemoteDetailsL(const TBTConnect& aConn); |
465 void GetRemoteDetailsL(const TBTConnect& aConn); |
455 void DoUpdateNameL(const TBTDeviceName8& aName); |
466 void DoUpdateNameL(const TBTDeviceName8& aName); |
484 void HandlePrefetch(); |
495 void HandlePrefetch(); |
485 void PINCodeRequestReply(const TBTDevAddr& aDevAddr,const TDesC8& aPin); |
496 void PINCodeRequestReply(const TBTDevAddr& aDevAddr,const TDesC8& aPin); |
486 void PINCodeRequestNegativeReply(const TBTDevAddr& aDevAddr); |
497 void PINCodeRequestNegativeReply(const TBTDevAddr& aDevAddr); |
487 |
498 |
488 inline TBool IsAuthenticationPending() const; |
499 inline TBool IsAuthenticationPending() const; |
|
500 |
|
501 void LinkKeyRequestResponseAttempt(TBool aForceResponse = EFalse); |
|
502 void DoLinkKeyResponse(TBool aPositive); |
|
503 |
|
504 void RemoteSimplePairingModeDetermined(TPhysicalLinkSimplePairingMode aSimplePairingMode); |
|
505 void SetPeerInSecurityMode3(); |
489 |
506 |
490 private: // from MPINCodeResponseHandler |
507 private: // from MPINCodeResponseHandler |
491 TInt PINCodeRequestReply(const TBTDevAddr& aDevAddr,const TDesC8& aPin) const; |
508 TInt PINCodeRequestReply(const TBTDevAddr& aDevAddr,const TDesC8& aPin) const; |
492 TInt PINCodeRequestNegativeReply(const TBTDevAddr& aDevAddr) const; |
509 TInt PINCodeRequestNegativeReply(const TBTDevAddr& aDevAddr) const; |
493 |
510 |
511 |
528 |
512 // the PHY's UI handlers |
529 // the PHY's UI handlers |
513 CBTPinRequester* iPinRequester; // looks after PIN entry UI/state |
530 CBTPinRequester* iPinRequester; // looks after PIN entry UI/state |
514 CBTNumericComparator* iNumericComparator; // looks after the numeric comparison UI/state |
531 CBTNumericComparator* iNumericComparator; // looks after the numeric comparison UI/state |
515 CBTPasskeyEntry* iPasskeyEntry; // looks after the passkey entry UI/state |
532 CBTPasskeyEntry* iPasskeyEntry; // looks after the passkey entry UI/state |
|
533 CBTUserConfirmer* iUserConfirmer; // looks after the user confirmation UI/state |
516 |
534 |
517 CEncryptionEnforcer* iEncryptionEnforcer; |
535 CEncryptionEnforcer* iEncryptionEnforcer; |
518 |
536 |
519 // the PHY's supported logical links... |
537 // the PHY's supported logical links... |
520 RPointerArray<CACLLink> iACLLogicalLinks; |
538 RPointerArray<CACLLink> iACLLogicalLinks; |
521 CBTSynchronousLink* iSyncLogicalLink; // stack only supports a signal one per PHY |
539 CBTSynchronousLink* iSyncLogicalLink; // stack only supports a signal one per PHY |
522 |
540 |
523 |
541 TBool iLinkKeyRequestOutstanding; // for if we have to wait for Registry or SSP support status |
524 MPINCodeResponseHandler* iPinHandler; |
542 |
|
543 MPINCodeResponseHandler* iPinHandler; // for forwarding responses to |
|
544 |
525 TBTConnect iLastPendingConnection; // for if we have to wait for Registry to decide whether to rject or accept a connection |
545 TBTConnect iLastPendingConnection; // for if we have to wait for Registry to decide whether to rject or accept a connection |
526 TBool iPendingConnection; // is a connection request waiting for a reply |
546 TBool iPendingConnection; // is a connection request waiting for a reply |
527 TSglQue<CBTProxySAP> iProxySAPs; // the proxies bound to us |
547 TSglQue<CBTProxySAP> iProxySAPs; // the proxies bound to us |
528 TDeltaTimerEntry iIdleTimerEntry; |
548 TDeltaTimerEntry iIdleTimerEntry; |
529 TBool iIdleTimerQueued; |
549 TBool iIdleTimerQueued; |
569 TInt iIdleTimeout; |
589 TInt iIdleTimeout; |
570 |
590 |
571 TBool iNewPinCodeValid; |
591 TBool iNewPinCodeValid; |
572 TBTPinCode iNewPinCode; |
592 TBTPinCode iNewPinCode; |
573 |
593 |
574 TBool iWaitingForLinkKeyFromRegistry; |
594 TBool iLinkKeyReturnedInThisAuthentication; |
575 |
595 TBool iLinkKeyObtainedThroughDedicatedBonding; |
576 private: |
596 private: |
577 /** |
597 /** |
578 Enumeration to represent the current state of the physical links storage in the registry, |
598 Enumeration to represent the current state of the physical links storage in the registry, |
579 this is to cover the asynchronous properties of actions to the registry. |
599 this is to cover the asynchronous properties of actions to the registry. |
580 */ |
600 */ |