亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? headset_security.c

?? bluelab 3.52 里面的立體聲程序源代碼
?? C
字號:
/****************************************************************************
Copyright (C) Cambridge Silicon Radio Ltd. 2004-2006
Part of BlueLab 3.5.2-release

FILE NAME
    headset_security.c        

DESCRIPTION
    This file contains the Authentication functionality for the AV Headset 
    Application.

*/


/****************************************************************************
    Header files
*/
#include "headset_private.h"
#include "av_stream_control.h"
#include "headset_common.h"
#include "headset_security.h"
#include "headset_tones.h"
#include "hfp_slc.h"

#include <stdlib.h>
#include <stdio.h>
#include <ps.h>
#include <pio.h>


/**************************************************************************/
void headsetHandlePinCodeInd(const headsetTaskData *app, const CL_SM_PIN_CODE_IND_T *ind)
{
    uint16 pin_length = 0;
    uint8 pin[16];
	uint8 pin_security;
	if ((PsRetrieve(HEADSET_SECURITY, &pin_security, sizeof(uint8))) ==0)
		pin_security = 1;
    
    /*  Only send our PIN if the headset is in pairing mode (and the security PS Key is set), 
        or we initiated a connection.
    */
    if (isHeadsetPairing(app) | (pin_security == 0) | (app->headset_connecting_hfp) | (app->headset_connecting_av))
    {
        /* Do we have a fixed pin in PS, if not reject pairing (by setting the length to zero) */ 
        if ((pin_length = PsFullRetrieve(PSKEY_FIXED_PIN, pin, 16)) == 0 || pin_length > 16)
            pin_length = 0; 
    }
    
    /* Respond to the PIN code request */
    ConnectionSmPinCodeResponse(&ind->bd_addr, pin_length, pin); 
}

/*****************************************************************************/
void headsetHandleAuthoriseInd(const CL_SM_AUTHORISE_IND_T *ind)
{
    ConnectionSmAuthoriseResponse(&ind->bd_addr, ind->protocol_id, ind->channel, ind->incoming, 1);
}

/*****************************************************************************/
void headsetHandleAuthenticateCfm(const CL_SM_AUTHENTICATE_CFM_T *cfm)
{
	bdaddr addr;  
    if (cfm->status == auth_status_success)
    {
		addr = cfm->bd_addr;
        /* Pairing complete so send a pair mode end message immediately */
        (void) MessageCancelAll(getAppTask(), APP_PAIR_MODE_END_IND);
        MessageSend(getAppTask(), APP_PAIR_MODE_END_IND, 0);
		(void)PsStore(LAST_PAIRED_DEVICE, &addr, sizeof(bdaddr)); 
		
    }
}

/*****************************************************************************/
void headsetEnterPairingMode(headsetTaskData *app)
{
    app->pairing_enabled = 1;
    
    /* Update the flashing LEDs */
    app->led_state |= LED_PAIRING; 
    (void) MessageCancelAll(getAppTask(), APP_LED_UPDATE_IND);
	(void) MessageCancelAll(getAppTask(), APP_INIT_LED_UPDATE_IND);
	MessageSendLater(getAppTask(), APP_LED_UPDATE_IND, 0,0);
    headsetPlayTone(app, tone_type_pairing);
  
    /* Set the pairing timeout */
    MessageSendLater(getAppTask(), APP_PAIR_MODE_END_IND, 0, PAIRING_TIMEOUT);
}


/*****************************************************************************/
void headsetExitPairingMode(headsetTaskData *app)
{
    /* No longer in pairing mode */
    app->pairing_enabled = 0;

    /* Update the flashing LEDs */
    app->led_state &= ~LED_PAIRING;
	PioSet(LED_RED, 0);
}
/*****************************************************************************/
void headsetClearPairedDevices(headsetTaskData *app)
{
	
	
	/*Set up message for LED indication of paired list reset*/
	APP_ON_EVENT_LED_UPDATE_IND_T* message;
	message = malloc(sizeof(APP_ON_EVENT_LED_UPDATE_IND_T));
	ConnectionSmDeleteAllAuthDevices(HEADSET_MSG_BASE);
	
	
	/*If the device is in pairing mode disable pairing*/
	if (isHeadsetPairing(app))
		MessageSend(getAppTask(), APP_PAIR_MODE_END_IND, 0);
	
	/* Close down any active AV link */
    if ((app->a2dp_state == avHeadsetA2dpConnected) || (app->a2dp_state == avHeadsetA2dpStreaming))
    {
        A2dpCloseAll(app->a2dp);
    }
    /* Close down any active AVRCP link */
    if (app->avrcp_state == avHeadsetAvrcpConnected)
        AvrcpDisconnect(app->avrcp);
  
    /* Close down any active AG link */
    if ((app->hfp_state != headsetInitialising) && (app->hfp_state != headsetReady))
        hfpHeadsetDisconnectSlc(app);
	
	/* Reset the last used AG  */   
    (void )PsStore (LAST_USED_AG, 0, 0);
    
    /* Reset the Last used AV source */
    (void)PsStore (LAST_USED_AV_SOURCE ,0 ,0);
	
	/* Reset the codec type of the Last used AV source */
    (void)PsStore (LAST_USED_AV_SOURCE_SEP ,0 ,0);
	
	/*Clear the last paired device*/
	(void)PsStore (LAST_PAIRED_DEVICE ,0 ,0);
    
    
	
	/*Update LED indication*/
	app->led_state |= LED_DEL_PAIRED_LIST;
	message->count=0;
	message->id = APP_PAIR_RESET_LED_UPDATE_IND;
    MessageSendLater(getAppTask(), message->id, message, 1000);
	
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩国产在线观看| 日韩欧美一级二级| 欧美午夜精品久久久久久超碰| www.成人在线| 在线看不卡av| 欧美一区二区三区在| 日韩欧美成人激情| 亚洲国产高清不卡| 亚洲女性喷水在线观看一区| 亚洲免费观看在线观看| 亚洲综合色噜噜狠狠| 蜜臀久久99精品久久久画质超高清| 久久99国产精品久久99果冻传媒| 老司机精品视频线观看86| 色综合天天做天天爱| 国产婷婷色一区二区三区在线| 精品电影一区二区三区| 欧美精品日韩一本| 欧美国产精品中文字幕| 亚洲无线码一区二区三区| 国产在线播精品第三| 91麻豆精品视频| 日韩三级电影网址| 中文字幕日韩一区| 日本va欧美va欧美va精品| 99久久久国产精品免费蜜臀| 91精品国产欧美一区二区18| 中文文精品字幕一区二区| 亚洲二区在线视频| 99热国产精品| 久久久久久久久99精品| 午夜免费欧美电影| 91捆绑美女网站| 久久精品人人做人人爽97| 日韩高清国产一区在线| 欧美影视一区二区三区| 国产精品素人一区二区| 激情综合网最新| 日韩视频一区在线观看| 亚瑟在线精品视频| 在线观看亚洲a| 亚洲永久免费视频| www.性欧美| 亚洲天天做日日做天天谢日日欢 | 亚洲天堂中文字幕| 高清视频一区二区| 国产婷婷一区二区| 成人国产免费视频| 亚洲国产高清在线| 91国产免费观看| 亚洲一二三专区| 日韩视频在线永久播放| 国产一区二区三区免费看| 欧美一激情一区二区三区| 日韩电影免费在线观看网站| 91精品国产aⅴ一区二区| 青青草国产成人99久久| 久久一留热品黄| av亚洲精华国产精华| 亚洲人亚洲人成电影网站色| 在线中文字幕一区| 蜜桃久久久久久| 久久精品一区二区三区不卡 | 欧美群妇大交群的观看方式| 日韩精品一二区| 国产日韩欧美电影| 在线免费观看日本一区| 久久精工是国产品牌吗| 国产午夜精品一区二区三区四区| zzijzzij亚洲日本少妇熟睡| 亚洲1区2区3区4区| 日本一区二区免费在线| 精品视频999| 福利电影一区二区| 亚洲va天堂va国产va久| 久久久久久久久久久久久久久99| 91丨porny丨户外露出| 六月丁香综合在线视频| 亚洲欧美日韩国产综合在线| 精品国产成人在线影院| 一本久久a久久精品亚洲| 激情综合网激情| 午夜电影久久久| 亚洲精品视频观看| 国产精品久久免费看| 日韩三级视频中文字幕| 色94色欧美sute亚洲线路二| 国产一区二区三区黄视频| 国产九色sp调教91| 青青草91视频| 亚洲一级在线观看| 中文字幕一区二区在线观看| 精品国产欧美一区二区| 欧美伊人久久久久久久久影院 | 欧美一级在线免费| 欧美性生活大片视频| 99麻豆久久久国产精品免费优播| 国内精品国产三级国产a久久| 蜜臀av性久久久久蜜臀aⅴ四虎| 一区二区三区四区视频精品免费| 国产精品久久三| 18涩涩午夜精品.www| 中文久久乱码一区二区| 日本一区二区三区dvd视频在线| 久久精品免费在线观看| 国产午夜亚洲精品羞羞网站| 久久午夜羞羞影院免费观看| 欧美成人欧美edvon| 亚洲精品一区二区三区四区高清| 欧美成人女星排名| 国产欧美一区二区精品性色超碰| 中文字幕 久热精品 视频在线| 亚洲国产精品成人综合| 亚洲天堂a在线| 日韩黄色免费电影| 国产乱国产乱300精品| 国产成人在线看| 91高清在线观看| 日韩一区二区在线免费观看| 国产日韩欧美制服另类| 1000精品久久久久久久久| 亚洲电影一区二区三区| 蜜桃av噜噜一区二区三区小说| 国产麻豆午夜三级精品| 91啦中文在线观看| 精品久久一区二区三区| 1区2区3区欧美| 久久成人av少妇免费| eeuss鲁片一区二区三区 | 久久伊人蜜桃av一区二区| 亚洲欧洲日韩av| 国产美女娇喘av呻吟久久| 色视频欧美一区二区三区| 久久人人爽人人爽| 成人午夜在线播放| 日本精品视频一区二区| 国产亚洲综合av| 日韩国产在线一| 在线免费不卡电影| 国产精品狼人久久影院观看方式| 久久精品国产色蜜蜜麻豆| 色婷婷精品久久二区二区蜜臂av | 亚洲日穴在线视频| 狠狠色丁香九九婷婷综合五月| 欧美日韩国产一级片| 中文字幕一区二区三中文字幕| 九色综合狠狠综合久久| 5858s免费视频成人| 洋洋av久久久久久久一区| 波多野结衣一区二区三区 | 日韩一区二区三区在线视频| 亚洲精品日产精品乱码不卡| 成人国产视频在线观看| 久久亚洲综合色| 蜜臀久久久久久久| 日韩午夜在线播放| 轻轻草成人在线| 91精品免费在线观看| 男女视频一区二区| 欧美日本不卡视频| 亚洲一区二区在线视频| 亚洲精品视频在线观看网站| 亚洲午夜免费福利视频| 青青草国产精品97视觉盛宴| 欧美视频精品在线| 日韩精品免费视频人成| 色婷婷av一区二区三区软件| 亚洲综合激情小说| 欧美日韩国产天堂| 午夜影视日本亚洲欧洲精品| 欧美日韩一本到| 日韩精品电影在线| 欧美成人精品1314www| 国产一区在线视频| 国产精品国产自产拍高清av王其| 在线欧美一区二区| 综合欧美亚洲日本| 欧美日韩高清不卡| 国产一区 二区 三区一级| 中文字幕第一区第二区| 91激情五月电影| 另类专区欧美蜜桃臀第一页| 久久蜜臀精品av| 91传媒视频在线播放| 久久电影网站中文字幕| 1000精品久久久久久久久| 欧美一区二区三区免费大片| 国内一区二区在线| 亚洲香肠在线观看| 久久精品综合网| 欧美一区二区三区视频在线| 风间由美一区二区av101| 亚洲国产精品久久不卡毛片| 欧美经典一区二区三区| 制服丝袜中文字幕一区| 99热99精品| 成人一级黄色片| 激情深爱一区二区| 亚洲高清视频中文字幕| 亚洲色图另类专区|