mirror of
https://github.com/systemd/systemd
synced 2026-03-15 01:24:51 +01:00
Compare commits
3 Commits
4afd7808fe
...
b0b2a71d81
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b0b2a71d81 | ||
|
|
eb2e91b981 | ||
|
|
2e14be9a84 |
@ -36,7 +36,7 @@ _systemd_vmspawn() {
|
|||||||
[BIND]='--bind --bind-ro'
|
[BIND]='--bind --bind-ro'
|
||||||
[SSH_KEY]='--ssh-key'
|
[SSH_KEY]='--ssh-key'
|
||||||
[CONSOLE]='--console'
|
[CONSOLE]='--console'
|
||||||
[ARG]='--cpus --ram --vsock-cid -M --machine --uuid--private-users --background --set-credential --load-credential'
|
[ARG]='--cpus --ram --vsock-cid -M --machine --uuid --private-users --background --set-credential --load-credential'
|
||||||
)
|
)
|
||||||
|
|
||||||
_init_completion || return
|
_init_completion || return
|
||||||
@ -56,6 +56,8 @@ _systemd_vmspawn() {
|
|||||||
comps='dsa ecdsa ecdsa-sk ed25519 ed25519-sk rsa'
|
comps='dsa ecdsa ecdsa-sk ed25519 ed25519-sk rsa'
|
||||||
elif __contains_word "$prev" ${OPTS[CONSOLE]}; then
|
elif __contains_word "$prev" ${OPTS[CONSOLE]}; then
|
||||||
comps='interactive native gui'
|
comps='interactive native gui'
|
||||||
|
elif __contains_word "$prev" ${OPTS[IMAGE_FORMAT]}; then
|
||||||
|
comps='raw qcow2'
|
||||||
elif __contains_word "$prev" ${OPTS[ARG]}; then
|
elif __contains_word "$prev" ${OPTS[ARG]}; then
|
||||||
comps=''
|
comps=''
|
||||||
else
|
else
|
||||||
|
|||||||
@ -38,7 +38,7 @@
|
|||||||
/* The structure to pass to name_to_handle_at() on cgroupfs2 */
|
/* The structure to pass to name_to_handle_at() on cgroupfs2 */
|
||||||
typedef union {
|
typedef union {
|
||||||
struct file_handle file_handle;
|
struct file_handle file_handle;
|
||||||
uint8_t space[offsetof(struct file_handle, f_handle) + sizeof(uint64_t)];
|
uint8_t space[MAX_HANDLE_SZ];
|
||||||
} cg_file_handle;
|
} cg_file_handle;
|
||||||
|
|
||||||
#define CG_FILE_HANDLE_INIT \
|
#define CG_FILE_HANDLE_INIT \
|
||||||
|
|||||||
@ -239,7 +239,7 @@ int pidfd_get_inode_id_impl(int fd, uint64_t *ret) {
|
|||||||
if (file_handle_supported) {
|
if (file_handle_supported) {
|
||||||
union {
|
union {
|
||||||
struct file_handle file_handle;
|
struct file_handle file_handle;
|
||||||
uint8_t space[offsetof(struct file_handle, f_handle) + sizeof(uint64_t)];
|
uint8_t space[MAX_HANDLE_SZ];
|
||||||
} fh = {
|
} fh = {
|
||||||
.file_handle.handle_bytes = sizeof(uint64_t),
|
.file_handle.handle_bytes = sizeof(uint64_t),
|
||||||
.file_handle.handle_type = FILEID_KERNFS,
|
.file_handle.handle_type = FILEID_KERNFS,
|
||||||
|
|||||||
@ -739,13 +739,15 @@ int tar_x(int input_fd, int tree_fd, TarFlags flags) {
|
|||||||
ar = sym_archive_read_next_header(a, &entry);
|
ar = sym_archive_read_next_header(a, &entry);
|
||||||
if (ar == ARCHIVE_EOF)
|
if (ar == ARCHIVE_EOF)
|
||||||
break;
|
break;
|
||||||
if (ar != ARCHIVE_OK)
|
if (!IN_SET(ar, ARCHIVE_OK, ARCHIVE_WARN))
|
||||||
return log_error_errno(SYNTHETIC_ERRNO(EBADMSG), "Failed to parse archive: %s", sym_archive_error_string(a));
|
return log_error_errno(SYNTHETIC_ERRNO(EBADMSG), "Failed to parse archive: %s", sym_archive_error_string(a));
|
||||||
|
|
||||||
const char *p = NULL;
|
const char *p = NULL;
|
||||||
r = archive_entry_pathname_safe(entry, &p);
|
r = archive_entry_pathname_safe(entry, &p);
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
return log_error_errno(r, "Invalid path name in entry, refusing.");
|
return log_error_errno(r, "Invalid path name in entry, refusing.");
|
||||||
|
if (ar == ARCHIVE_WARN)
|
||||||
|
log_warning("Non-critical error found while parsing '%s' from the archive, ignoring: %s", p ?: ".", sym_archive_error_string(a));
|
||||||
|
|
||||||
if (!p) {
|
if (!p) {
|
||||||
/* This is the root inode */
|
/* This is the root inode */
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user