1a98592bcSMatthias Ringwald /* 2a98592bcSMatthias Ringwald * Copyright (C) 2014 BlueKitchen GmbH 3a98592bcSMatthias Ringwald * 4a98592bcSMatthias Ringwald * Redistribution and use in source and binary forms, with or without 5a98592bcSMatthias Ringwald * modification, are permitted provided that the following conditions 6a98592bcSMatthias Ringwald * are met: 7a98592bcSMatthias Ringwald * 8a98592bcSMatthias Ringwald * 1. Redistributions of source code must retain the above copyright 9a98592bcSMatthias Ringwald * notice, this list of conditions and the following disclaimer. 10a98592bcSMatthias Ringwald * 2. Redistributions in binary form must reproduce the above copyright 11a98592bcSMatthias Ringwald * notice, this list of conditions and the following disclaimer in the 12a98592bcSMatthias Ringwald * documentation and/or other materials provided with the distribution. 13a98592bcSMatthias Ringwald * 3. Neither the name of the copyright holders nor the names of 14a98592bcSMatthias Ringwald * contributors may be used to endorse or promote products derived 15a98592bcSMatthias Ringwald * from this software without specific prior written permission. 16a98592bcSMatthias Ringwald * 4. Any redistribution, use, or modification is done solely for 17a98592bcSMatthias Ringwald * personal benefit and not for any commercial purpose or for 18a98592bcSMatthias Ringwald * monetary gain. 19a98592bcSMatthias Ringwald * 20a98592bcSMatthias Ringwald * THIS SOFTWARE IS PROVIDED BY BLUEKITCHEN GMBH AND CONTRIBUTORS 21a98592bcSMatthias Ringwald * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 22a98592bcSMatthias Ringwald * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 23a98592bcSMatthias Ringwald * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL MATTHIAS 24a98592bcSMatthias Ringwald * RINGWALD OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 25a98592bcSMatthias Ringwald * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 26a98592bcSMatthias Ringwald * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS 27a98592bcSMatthias Ringwald * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 28a98592bcSMatthias Ringwald * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 29a98592bcSMatthias Ringwald * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF 30a98592bcSMatthias Ringwald * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31a98592bcSMatthias Ringwald * SUCH DAMAGE. 32a98592bcSMatthias Ringwald * 33a98592bcSMatthias Ringwald * Please inquire about commercial licensing options at 34a98592bcSMatthias Ringwald * [email protected] 35a98592bcSMatthias Ringwald * 36a98592bcSMatthias Ringwald */ 37a98592bcSMatthias Ringwald 38a98592bcSMatthias Ringwald /** 39a98592bcSMatthias Ringwald * interface to provide link key storage 40a98592bcSMatthias Ringwald */ 41a98592bcSMatthias Ringwald 42a98592bcSMatthias Ringwald #ifndef __BTSTACK_LINK_KEY_DB_H 43a98592bcSMatthias Ringwald #define __BTSTACK_LINK_KEY_DB_H 44a98592bcSMatthias Ringwald 458974fcd6SMatthias Ringwald #include "bluetooth.h" 46a98592bcSMatthias Ringwald 47a98592bcSMatthias Ringwald #if defined __cplusplus 48a98592bcSMatthias Ringwald extern "C" { 49a98592bcSMatthias Ringwald #endif 50a98592bcSMatthias Ringwald 51a98592bcSMatthias Ringwald /* API_START */ 52a98592bcSMatthias Ringwald 53a98592bcSMatthias Ringwald typedef struct { 54a98592bcSMatthias Ringwald 55a98592bcSMatthias Ringwald // management 56a98592bcSMatthias Ringwald void (*open)(void); 57*1624665aSMatthias Ringwald void (*set_local_bd_addr)(bd_addr_t bd_addr); 58a98592bcSMatthias Ringwald void (*close)(void); 59a98592bcSMatthias Ringwald 60a98592bcSMatthias Ringwald // link key 61a98592bcSMatthias Ringwald int (*get_link_key)(bd_addr_t bd_addr, link_key_t link_key, link_key_type_t * type); 62a98592bcSMatthias Ringwald void (*put_link_key)(bd_addr_t bd_addr, link_key_t link_key, link_key_type_t type); 63a98592bcSMatthias Ringwald void (*delete_link_key)(bd_addr_t bd_addr); 64a98592bcSMatthias Ringwald 65a98592bcSMatthias Ringwald } btstack_link_key_db_t; 66a98592bcSMatthias Ringwald 67a98592bcSMatthias Ringwald /* API_END */ 68a98592bcSMatthias Ringwald 69a98592bcSMatthias Ringwald #if defined __cplusplus 70a98592bcSMatthias Ringwald } 71a98592bcSMatthias Ringwald #endif 72a98592bcSMatthias Ringwald 73a98592bcSMatthias Ringwald #endif // __BTSTACK_LINK_KEY_DB_H 74