mirror of
https://git.kernel.org/pub/scm/bluetooth/bluez.git
synced 2024-11-27 06:04:32 +08:00
mesh: Move local basename into utility file
Defining an override via a missing.h can prove difficult when a file needs to use basename and dirname both the APIs and needs to include libgen.h for them, in such situations there will be signature clash for basename function.
This commit is contained in:
parent
44a1930479
commit
7104f37735
@ -38,7 +38,7 @@ mesh_sources = mesh/mesh.h mesh/mesh.c \
|
||||
mesh/keyring.h mesh/keyring.c \
|
||||
mesh/rpl.h mesh/rpl.c \
|
||||
mesh/prv-beacon.h mesh/prvbeac-server.c \
|
||||
mesh/mesh-defs.h mesh/missing.h
|
||||
mesh/mesh-defs.h
|
||||
pkglibexec_PROGRAMS += mesh/bluetooth-meshd
|
||||
|
||||
mesh/mesh.$(OBJEXT): ell/internal
|
||||
|
@ -28,7 +28,6 @@
|
||||
#include <ell/ell.h>
|
||||
#include <json-c/json.h>
|
||||
|
||||
#include "mesh/missing.h"
|
||||
#include "mesh/mesh-defs.h"
|
||||
#include "mesh/util.h"
|
||||
#include "mesh/mesh-config.h"
|
||||
@ -2708,7 +2707,7 @@ void mesh_config_destroy_nvm(struct mesh_config *cfg)
|
||||
if (!hex2str(cfg->uuid, 16, uuid, sizeof(uuid)))
|
||||
return;
|
||||
|
||||
node_name = basename(node_dir);
|
||||
node_name = mesh_basename(node_dir);
|
||||
|
||||
/* Make sure path name of node follows expected guidelines */
|
||||
if (strcmp(node_name, uuid))
|
||||
|
@ -1,21 +0,0 @@
|
||||
// SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
/*
|
||||
*
|
||||
* BlueZ - Bluetooth protocol stack for Linux
|
||||
*
|
||||
* Copyright (C) 2024 Khem Raj <raj.khem@gmail.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include <config.h>
|
||||
#endif
|
||||
#if !HAVE_DECL_BASENAME
|
||||
#include <string.h>
|
||||
static inline const char *basename(const char *path)
|
||||
{
|
||||
const char *base = strrchr(path, '/');
|
||||
|
||||
return base ? base + 1 : path;
|
||||
}
|
||||
#endif
|
@ -24,7 +24,6 @@
|
||||
|
||||
#include <ell/ell.h>
|
||||
|
||||
#include "mesh/missing.h"
|
||||
#include "mesh/mesh-defs.h"
|
||||
|
||||
#include "mesh/node.h"
|
||||
@ -147,7 +146,7 @@ static void get_entries(const char *iv_path, struct l_queue *rpl_list)
|
||||
if (!dir)
|
||||
return;
|
||||
|
||||
iv_txt = basename(iv_path);
|
||||
iv_txt = mesh_basename(iv_path);
|
||||
if (sscanf(iv_txt, "%08x", &iv_index) != 1) {
|
||||
closedir(dir);
|
||||
return;
|
||||
|
10
mesh/util.c
10
mesh/util.c
@ -161,3 +161,13 @@ void enable_debug(void)
|
||||
debug_enabled = true;
|
||||
l_debug_enable("*");
|
||||
}
|
||||
|
||||
#if !HAVE_DECL_BASENAME
|
||||
#include <string.h>
|
||||
const char *mesh_basename(const char *path)
|
||||
{
|
||||
const char *base = strrchr(path, '/');
|
||||
|
||||
return base ? base + 1 : path;
|
||||
}
|
||||
#endif
|
||||
|
@ -16,3 +16,8 @@ void print_packet(const char *label, const void *data, uint16_t size);
|
||||
int create_dir(const char *dir_name);
|
||||
void del_path(const char *path);
|
||||
void enable_debug(void);
|
||||
#if !HAVE_DECL_BASENAME
|
||||
const char *mesh_basename(const char *path);
|
||||
#else
|
||||
#define mesh_basename basename
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user