From 8fad22bf840fc968171bee6cf294f026eb1e0d3a Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Tue, 9 Aug 2022 12:40:58 +0200 Subject: prog: generate very long file names Generate very long file names once in a while to provoke bugs like: https://github.com/google/gvisor/commit/f857f268eceb1cdee0b2bdfa218c969c84033fcd --- sys/linux/init.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'sys/linux/init.go') diff --git a/sys/linux/init.go b/sys/linux/init.go index 6c486c2ed..480ac1d96 100644 --- a/sys/linux/init.go +++ b/sys/linux/init.go @@ -98,6 +98,18 @@ func InitTarget(target *prog.Target) { panic("unknown arch") } + target.SpecialFileLenghts = []int{ + int(target.GetConst("PATH_MAX")), + int(target.GetConst("UNIX_PATH_MAX")), + int(target.GetConst("NAME_MAX")), + int(target.GetConst("BTRFS_INO_LOOKUP_PATH_MAX")), + int(target.GetConst("BTRFS_INO_LOOKUP_USER_PATH_MAX")), + int(target.GetConst("SMB_PATH_MAX")), + int(target.GetConst("XT_CGROUP_PATH_MAX")), + int(target.GetConst("XENSTORE_REL_PATH_MAX")), + 1 << 16, // gVisor's MaxFilenameLen + } + if target.Arch == runtime.GOARCH { KCOV_INIT_TRACE = uintptr(target.GetConst("KCOV_INIT_TRACE")) KCOV_ENABLE = uintptr(target.GetConst("KCOV_ENABLE")) -- cgit mrf-deployment