diff options
3 files changed, 47 insertions, 44 deletions
diff --git a/meta-networking/recipes-daemons/vsftpd/vsftpd-3.0.3/0001-vsftpd-allow-syscalls-in-the-seccomp-sandbox.patch b/meta-networking/recipes-daemons/vsftpd/vsftpd-3.0.3/0001-vsftpd-allow-syscalls-in-the-seccomp-sandbox.patch new file mode 100644 index 0000000000..7573c967fa --- /dev/null +++ b/meta-networking/recipes-daemons/vsftpd/vsftpd-3.0.3/0001-vsftpd-allow-syscalls-in-the-seccomp-sandbox.patch | |||
@@ -0,0 +1,46 @@ | |||
1 | From dd353303f62d1dfe32cb000e482616b021708fbe Mon Sep 17 00:00:00 2001 | ||
2 | From: Mingli Yu <mingli.yu@windriver.com> | ||
3 | Date: Thu, 29 Nov 2018 00:47:34 -0800 | ||
4 | Subject: [PATCH] vsftpd: allow syscalls in the seccomp sandbox | ||
5 | |||
6 | * Allow sysinfo() and getdents64 in the seccomp | ||
7 | sandbox otherwise comes below OOPS: priv_sock_get_cmd | ||
8 | as the syscall sysinfo() and getdents64 not allowed | ||
9 | |||
10 | root@qemux86-64:~# tnftp 192.168.1.1 | ||
11 | Connected to 192.168.1.1. | ||
12 | 220 (vsFTPd 3.0.3) | ||
13 | Name (192.168.1.1:root): anonymous | ||
14 | 331 Please specify the password. | ||
15 | Password: | ||
16 | 230 Login successful. | ||
17 | Remote system type is UNIX. | ||
18 | Using binary mode to transfer files. | ||
19 | ftp> prompt | ||
20 | Interactive mode off. | ||
21 | ftp> mget small* | ||
22 | OOPS: priv_sock_get_cmd | ||
23 | |||
24 | Upstream-Status: Pending | ||
25 | |||
26 | Signed-off-by: Mingli Yu <mingli.yu@windriver.com> | ||
27 | --- | ||
28 | seccompsandbox.c | 2 ++ | ||
29 | 1 file changed, 2 insertions(+) | ||
30 | |||
31 | diff --git a/seccompsandbox.c b/seccompsandbox.c | ||
32 | index 2c350a9..377c50e 100644 | ||
33 | --- a/seccompsandbox.c | ||
34 | +++ b/seccompsandbox.c | ||
35 | @@ -409,6 +409,8 @@ seccomp_sandbox_setup_postlogin(const struct vsf_session* p_sess) | ||
36 | allow_nr(__NR_getcwd); | ||
37 | allow_nr(__NR_chdir); | ||
38 | allow_nr(__NR_getdents); | ||
39 | + allow_nr(__NR_getdents64); | ||
40 | + allow_nr(__NR_sysinfo); | ||
41 | /* Misc */ | ||
42 | allow_nr(__NR_umask); | ||
43 | |||
44 | -- | ||
45 | 2.17.1 | ||
46 | |||
diff --git a/meta-networking/recipes-daemons/vsftpd/vsftpd-3.0.3/0001-vsftpd-allow-sysinfo-in-the-seccomp-sandbox.patch b/meta-networking/recipes-daemons/vsftpd/vsftpd-3.0.3/0001-vsftpd-allow-sysinfo-in-the-seccomp-sandbox.patch deleted file mode 100644 index c6c0f80a19..0000000000 --- a/meta-networking/recipes-daemons/vsftpd/vsftpd-3.0.3/0001-vsftpd-allow-sysinfo-in-the-seccomp-sandbox.patch +++ /dev/null | |||
@@ -1,43 +0,0 @@ | |||
1 | From 9c4826c19f04da533886209361a2caddf582d65c Mon Sep 17 00:00:00 2001 | ||
2 | From: Mingli Yu <Mingli.Yu@windriver.com> | ||
3 | Date: Tue, 6 Sep 2016 17:17:44 +0800 | ||
4 | Subject: [PATCH] vsftpd: allow sysinfo() in the seccomp sandbox | ||
5 | |||
6 | Upstream-Status: Pending | ||
7 | |||
8 | * Allow sysinfo() in the seccomp sandbox otherwise | ||
9 | comes below OOPS: priv_sock_get_cmd as the syscall | ||
10 | sysinfo() not allowed | ||
11 | |||
12 | tnftp 192.168.1.1 | ||
13 | Connected to 192.168.1.1. | ||
14 | 220 (vsFTPd 3.0.3) | ||
15 | Name (192.168.1.1:root): anonymous | ||
16 | 331 Please specify the password. | ||
17 | Password: | ||
18 | 230 Login successful. | ||
19 | Remote system type is UNIX. | ||
20 | Using binary mode to transfer files. | ||
21 | ftp> prompt | ||
22 | Interactive mode off. | ||
23 | ftp> mget small* | ||
24 | OOPS: priv_sock_get_cmd | ||
25 | |||
26 | Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com> | ||
27 | |||
28 | --- | ||
29 | seccompsandbox.c | 1 + | ||
30 | 1 file changed, 1 insertion(+) | ||
31 | |||
32 | diff --git a/seccompsandbox.c b/seccompsandbox.c | ||
33 | index 2c350a9..67d9ca5 100644 | ||
34 | --- a/seccompsandbox.c | ||
35 | +++ b/seccompsandbox.c | ||
36 | @@ -409,6 +409,7 @@ seccomp_sandbox_setup_postlogin(const struct vsf_session* p_sess) | ||
37 | allow_nr(__NR_getcwd); | ||
38 | allow_nr(__NR_chdir); | ||
39 | allow_nr(__NR_getdents); | ||
40 | + allow_nr(__NR_sysinfo); | ||
41 | /* Misc */ | ||
42 | allow_nr(__NR_umask); | ||
43 | |||
diff --git a/meta-networking/recipes-daemons/vsftpd/vsftpd_3.0.3.bb b/meta-networking/recipes-daemons/vsftpd/vsftpd_3.0.3.bb index 2e3e0e8843..df0d7f4551 100644 --- a/meta-networking/recipes-daemons/vsftpd/vsftpd_3.0.3.bb +++ b/meta-networking/recipes-daemons/vsftpd/vsftpd_3.0.3.bb | |||
@@ -18,7 +18,7 @@ SRC_URI = "https://security.appspot.com/downloads/vsftpd-${PV}.tar.gz \ | |||
18 | file://volatiles.99_vsftpd \ | 18 | file://volatiles.99_vsftpd \ |
19 | file://vsftpd.service \ | 19 | file://vsftpd.service \ |
20 | file://vsftpd-2.1.0-filter.patch \ | 20 | file://vsftpd-2.1.0-filter.patch \ |
21 | file://0001-vsftpd-allow-sysinfo-in-the-seccomp-sandbox.patch \ | 21 | file://0001-vsftpd-allow-syscalls-in-the-seccomp-sandbox.patch \ |
22 | ${@bb.utils.contains('PACKAGECONFIG', 'tcp-wrappers', 'file://vsftpd-tcp_wrappers-support.patch', '', d)} \ | 22 | ${@bb.utils.contains('PACKAGECONFIG', 'tcp-wrappers', 'file://vsftpd-tcp_wrappers-support.patch', '', d)} \ |
23 | ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '', '${NOPAM_SRC}', d)} \ | 23 | ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '', '${NOPAM_SRC}', d)} \ |
24 | file://0001-sysdeputil.c-Fix-with-musl-which-does-not-have-utmpx.patch \ | 24 | file://0001-sysdeputil.c-Fix-with-musl-which-does-not-have-utmpx.patch \ |