From: Lennart Poettering Date: Mon, 8 Nov 2010 04:03:19 +0000 (-0500) Subject: label: use internal utility functions wher epossible X-Git-Tag: v12~74 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=dce8e2e12304946a13c261b2324ce1e14ed9f5cd label: use internal utility functions wher epossible --- diff --git a/src/label.c b/src/label.c index d037c4c93..218d0dfa0 100644 --- a/src/label.c +++ b/src/label.c @@ -258,20 +258,15 @@ int label_mkdir( if (use_selinux() && label_hnd) { - if (path[0] == '/') + if (path_is_absolute(path)) r = selabel_lookup_raw(label_hnd, &fcon, path, mode); else { - char *cwd = NULL, *newpath = NULL; + char *newpath = NULL; - cwd = get_current_dir_name(); - - if (cwd || asprintf(&newpath, "%s/%s", cwd, path) < 0) { - free(cwd); - return -errno; - } + if (!(newpath = path_make_absolute_cwd(path))) + return -ENOMEM; r = selabel_lookup_raw(label_hnd, &fcon, newpath, mode); - free(cwd); free(newpath); }