hci: remove bool from hci_reserve_packet_buffer and similiar higher layer functions

This commit is contained in:
Matthias Ringwald 2024-01-25 14:04:58 +01:00
parent c589a9bb89
commit 8f4649e3ba
12 changed files with 26 additions and 27 deletions

View File

@ -19,6 +19,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
- HFP HF: send HF Indicator update only if enabled by AG
### Changed
- HCI: hci_reserved_packet_buffer and higher layer functions asserts if packet buffer is free instead of return value
- GAP: mutual authentication for legacy secure connections to prevent BIAS attacks was made optional with
ENABLE_MUTUAL_AUTHENTICATION_FOR_LEGACY_SECURE_CONNECTIONS. Not needed for default encryption key size of 16

View File

@ -143,6 +143,9 @@ uint8_t goep_server_request_can_send_now(uint16_t goep_cid);
/**
* @brief Start Connect response
* @note Reserves outgoing packet buffer
* @note Must only be called after a 'can send now' check or event
* @note Asserts if packet buffer is already reserved
* @param goep_cid
* @param obex_version_number
* @param flags
@ -153,6 +156,9 @@ uint8_t goep_server_response_create_connect(uint16_t goep_cid, uint8_t obex_vers
/**
* @brief Start General response
* @note Reserves outgoing packet buffer
* @note Must only be called after a 'can send now' check or event
* @note Asserts if packet buffer is already reserved
* @note response code is set by goep_server_execute
* @param goep_cid
* @param opcode

View File

@ -2302,12 +2302,11 @@ uint16_t rfcomm_get_max_frame_size(uint16_t rfcomm_cid){
}
// pre: rfcomm_can_send_packet_now(rfcomm_cid) == true
bool rfcomm_reserve_packet_buffer(void){
void rfcomm_reserve_packet_buffer(void){
#ifdef RFCOMM_USE_OUTGOING_BUFFER
log_error("rfcomm_reserve_packet_buffer should not get called with ERTM");
return false;
#else
return l2cap_reserve_packet_buffer();
l2cap_reserve_packet_buffer();
#endif
}

View File

@ -425,7 +425,8 @@ uint16_t rfcomm_get_max_frame_size(uint16_t rfcomm_cid);
/**
* @brief Reserve packet buffer to allow to create RFCOMM packet in place
* @return true on success
* @note Must only be called after a 'can send now' check or event
* @note Asserts if packet buffer is already reserved
*
* if (rfcomm_can_send_packet_now(cid)){
* rfcomm_reserve_packet_buffer();
@ -435,7 +436,7 @@ uint16_t rfcomm_get_max_frame_size(uint16_t rfcomm_cid);
* rfcomm_send_prepared(cid, len)
* }
*/
bool rfcomm_reserve_packet_buffer(void);
void rfcomm_reserve_packet_buffer(void);
/**
* @brief Get outgoing buffer

View File

@ -815,12 +815,9 @@ bool hci_is_packet_buffer_reserved(void){
return hci_stack->hci_packet_buffer_reserved;
}
// reserves outgoing packet buffer.
// @return 1 if successful
bool hci_reserve_packet_buffer(void){
void hci_reserve_packet_buffer(void){
btstack_assert(hci_stack->hci_packet_buffer_reserved == false);
hci_stack->hci_packet_buffer_reserved = true;
return true;
}
void hci_release_packet_buffer(void){

View File

@ -1534,9 +1534,10 @@ uint8_t hci_send_iso_packet_buffer(uint16_t size);
/**
* Reserves outgoing packet buffer.
* @return true on success
* @note Must only be called after a 'can send now' check or event
* @note Asserts if packet buffer is already reserved
*/
bool hci_reserve_packet_buffer(void);
void hci_reserve_packet_buffer(void);
/**
* Get pointer for outgoing packet buffer

View File

@ -1054,8 +1054,8 @@ uint8_t *l2cap_get_outgoing_buffer(void){
}
// only for L2CAP Basic Channels
bool l2cap_reserve_packet_buffer(void){
return hci_reserve_packet_buffer();
void l2cap_reserve_packet_buffer(void){
hci_reserve_packet_buffer();
}
// only for L2CAP Basic Channels

View File

@ -566,9 +566,10 @@ uint8_t l2cap_request_can_send_now_event(uint16_t local_cid);
/**
* @brief Reserve outgoing buffer
* @note Only for L2CAP Basic Mode Channels
* @return true on success
* @note Must only be called after a 'can send now' check or event
* @note Asserts if packet buffer is already reserved
*/
bool l2cap_reserve_packet_buffer(void);
void l2cap_reserve_packet_buffer(void);
/**
* @brief Get outgoing buffer and prepare data.

View File

@ -165,9 +165,7 @@ void hci_add_event_handler(btstack_packet_callback_registration_t * callback_han
registered_hci_event_handler = callback_handler->callback;
}
bool l2cap_reserve_packet_buffer(void){
return true;
}
void l2cap_reserve_packet_buffer(void){}
bool l2cap_can_send_fixed_channel_packet_now(uint16_t handle, uint16_t channel_id){
return true;

View File

@ -176,12 +176,9 @@ uint16_t l2cap_max_le_mtu(void){
void l2cap_init(void){}
bool l2cap_reserve_packet_buffer(void){
return true;
}
void l2cap_reserve_packet_buffer(void){}
void l2cap_release_packet_buffer(void){
}
void l2cap_release_packet_buffer(void){}
static uint8_t l2cap_can_send_fixed_channel_packet_now_status = 1;

View File

@ -174,9 +174,8 @@ uint8_t rfcomm_request_can_send_now_event(uint16_t rfcomm_cid){
return ERROR_CODE_SUCCESS;
}
bool rfcomm_reserve_packet_buffer(void){
void rfcomm_reserve_packet_buffer(void){
// printf("mock: rfcomm_reserve_packet_buffer\n");
return true;
};
void rfcomm_release_packet_buffer(void){};
uint8_t * rfcomm_get_outgoing_buffer(void) {

View File

@ -268,9 +268,8 @@ void hci_add_event_handler(btstack_packet_callback_registration_t * callback_han
btstack_linked_list_add(&event_packet_handlers, (btstack_linked_item_t *) callback_handler);
}
bool l2cap_reserve_packet_buffer(void){
void l2cap_reserve_packet_buffer(void){
printf("l2cap_reserve_packet_buffer\n");
return true;
}
uint8_t l2cap_send_prepared_connectionless(uint16_t handle, uint16_t cid, uint16_t len){