mirror of
https://github.com/morgan9e/systemd
synced 2026-04-15 00:47:10 +09:00
util: add capsule-util.[ch] with helpers for capsules
For now, there's only a routine for validating capsule names. More will be added later.
This commit is contained in:
17
src/shared/capsule-util.c
Normal file
17
src/shared/capsule-util.c
Normal file
@@ -0,0 +1,17 @@
|
||||
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
||||
|
||||
#include "capsule-util.h"
|
||||
#include "path-util.h"
|
||||
#include "user-util.h"
|
||||
|
||||
int capsule_name_is_valid(const char *name) {
|
||||
|
||||
if (!filename_is_valid(name))
|
||||
return false;
|
||||
|
||||
_cleanup_free_ char *prefixed = strjoin("c-", name);
|
||||
if (!prefixed)
|
||||
return -ENOMEM;
|
||||
|
||||
return valid_user_group_name(prefixed, /* flags= */ 0);
|
||||
}
|
||||
4
src/shared/capsule-util.h
Normal file
4
src/shared/capsule-util.h
Normal file
@@ -0,0 +1,4 @@
|
||||
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
||||
#pragma once
|
||||
|
||||
int capsule_name_is_valid(const char *name);
|
||||
@@ -140,6 +140,7 @@ shared_sources = files(
|
||||
'pkcs11-util.c',
|
||||
'plymouth-util.c',
|
||||
'pretty-print.c',
|
||||
'capsule-util.c',
|
||||
'ptyfwd.c',
|
||||
'qrcode-util.c',
|
||||
'quota-util.c',
|
||||
|
||||
Reference in New Issue
Block a user