1 /******************************************************************************
2  *
3  *  Copyright (C) 2014 Google, Inc.
4  *
5  *  Licensed under the Apache License, Version 2.0 (the "License");
6  *  you may not use this file except in compliance with the License.
7  *  You may obtain a copy of the License at:
8  *
9  *  http://www.apache.org/licenses/LICENSE-2.0
10  *
11  *  Unless required by applicable law or agreed to in writing, software
12  *  distributed under the License is distributed on an "AS IS" BASIS,
13  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  *  See the License for the specific language governing permissions and
15  *  limitations under the License.
16  *
17  ******************************************************************************/
18 
19 #pragma once
20 
21 #include <stdbool.h>
22 
23 #include "osi/include/config.h"
24 #include "module.h"
25 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
30 static const char STACK_CONFIG_MODULE[] = "stack_config_module";
31 
32 typedef struct {
33   const char *(*get_btsnoop_log_path)(void);
34   bool (*get_btsnoop_turned_on)(void);
35   bool (*get_btsnoop_should_save_last)(void);
36   bool (*get_trace_config_enabled)(void);
37   bool (*get_pts_secure_only_mode)(void);
38   bool (*get_pts_conn_updates_disabled)(void);
39   bool (*get_pts_crosskey_sdp_disable)(void);
40   const char* (*get_pts_smp_options)(void);
41   int (*get_pts_smp_failure_case)(void);
42   config_t *(*get_all)(void);
43 } stack_config_t;
44 
45 const stack_config_t *stack_config_get_interface();
46 
47 #ifdef __cplusplus
48 }
49 #endif
50