Refactor, ensure basenm() returns a const char pointer of its arg.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
Joachim Wiberg
2024-01-06 23:46:17 +01:00
parent f29e92be21
commit 791df0c986
4 changed files with 16 additions and 12 deletions
+4 -3
View File
@@ -49,15 +49,16 @@ static glob_t *get_arrays(void)
*/
void mdadm_wait(void)
{
size_t i;
glob_t *gl;
char cmd[160];
/* Setup kernel specific settings, e.g. allow broadcast ping, etc. */
gl = get_arrays();
if (gl) {
size_t i;
for (i = 0; i < gl->gl_pathc; i++) {
char *array;
const char *array;
char cmd[160];
array = basenm(gl->gl_pathv[i]);
snprintf(cmd, sizeof(cmd), "mdadm --wait-clean /dev/%s >/dev/null", array);
+8 -5
View File
@@ -78,23 +78,26 @@ static char *trim_ext(char *name)
int plugin_register(plugin_t *plugin)
{
const char *nm;
if (!plugin) {
errno = EINVAL;
return 1;
}
/* Setup default name if none is provided */
if (!plugin->name) {
nm = plugin->name;
if (!nm) {
#ifndef ENABLE_STATIC
Dl_info info;
if (dladdr(plugin, &info) && info.dli_fname)
plugin->name = basenm(info.dli_fname);
nm = basenm(info.dli_fname);
#endif
if (!plugin->name)
plugin->name = "unknown";
if (!nm)
nm = "unknown";
}
plugin->name = trim_ext(strdup(plugin->name));
plugin->name = trim_ext(strdup(nm));
/* Already registered? */
if (plugin_find(plugin->name)) {
+3 -3
View File
@@ -152,13 +152,13 @@ char *progname(char *arg0)
}
/* basename(3) replacement that does not modify its argument */
char *basenm(const char *path)
const char *basenm(const char *path)
{
char *basename;
const char *basename;
basename = rindex(path, '/');
if (!basename)
return (char *) path;
return path;
basename++;
return basename;
+1 -1
View File
@@ -55,7 +55,7 @@ extern char *prognm;
#endif
char *progname (char *arg0);
char *basenm (const char *path);
const char *basenm (const char *path);
char *str (char *fmt, ...) __attribute__ ((format (printf, 1, 2)));
int fnread (char *buf, size_t len, char *fmt, ...) __attribute__ ((format (printf, 3, 4)));