New namespoof implementation

This commit is contained in:
Willy-JL
2023-05-10 12:19:01 +01:00
parent 33ff8e4506
commit 640637ce60
14 changed files with 50 additions and 224 deletions

View File

@@ -90,26 +90,13 @@ typedef struct {
static FuriHalVersion furi_hal_version = {0};
void furi_hal_version_set_custom_name(const char* name) {
if((name != NULL) && ((strlen(name) >= 1) && (strlen(name) <= 8))) {
void furi_hal_version_set_name(const char* name) {
if(name != NULL && strlen(name)) {
strlcpy(furi_hal_version.name, name, FURI_HAL_VERSION_ARRAY_NAME_LENGTH);
snprintf(
furi_hal_version.device_name,
FURI_HAL_VERSION_DEVICE_NAME_LENGTH,
"x%s", // Someone tell me why that X is needed
name);
furi_hal_version.device_name[0] = AD_TYPE_COMPLETE_LOCAL_NAME;
}
}
static void furi_hal_version_set_name(const char* name) {
if(name != NULL) {
strlcpy(furi_hal_version.name, name, FURI_HAL_VERSION_ARRAY_NAME_LENGTH);
snprintf(
furi_hal_version.device_name,
FURI_HAL_VERSION_DEVICE_NAME_LENGTH,
"x%s", // Someone tell me why that X is needed
"x%s", // Someone tell me why that X is needed - it's for BLE adv name type (6 lines below)
furi_hal_version.name);
} else {
snprintf(furi_hal_version.device_name, FURI_HAL_VERSION_DEVICE_NAME_LENGTH, "xFlipper");
@@ -119,8 +106,8 @@ static void furi_hal_version_set_name(const char* name) {
// BLE Mac address
uint32_t udn = LL_FLASH_GetUDN();
if(version_get_custom_name(NULL) != NULL) {
udn = *((uint32_t*)version_get_custom_name(NULL));
if(name != NULL) {
udn = *((uint32_t*)name);
}
uint32_t company_id = LL_FLASH_GetSTCompanyID();