From 76e2632459410dec81337edb6a9fee33c9a660f3 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 13 Apr 2024 11:59:37 +0200 Subject: Adding upstream version 2.7.12. Signed-off-by: Daniel Baumann --- test/interactive-helper/test_fileutl.cc | 46 +++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 test/interactive-helper/test_fileutl.cc (limited to 'test/interactive-helper/test_fileutl.cc') diff --git a/test/interactive-helper/test_fileutl.cc b/test/interactive-helper/test_fileutl.cc new file mode 100644 index 0000000..edc699e --- /dev/null +++ b/test/interactive-helper/test_fileutl.cc @@ -0,0 +1,46 @@ +#include + +#include +#include +#include + +#include +#include +#include +#include +#include +#include + +#include +#include + +static void callsystem(std::string const &call) +{ + auto ret = system(call.c_str()); + if (WIFEXITED(ret) == false || WEXITSTATUS(ret) != 0) + _error->Error("Calling %s failed!", call.c_str()); +} + +int main(int, char ** argv) +{ + auto const pid = getpid(); + std::string ls; + strprintf(ls, "ls -l /proc/%d/fd", pid); + callsystem(ls); + FileFd t; + t.Open(argv[1], FileFd::ReadOnly, FileFd::Extension); + callsystem(ls); + char buf[1024]; + unsigned long long act; + while (t.Read(buf, sizeof(buf), &act)) + if (act == 0) + break; + callsystem(ls); + t.Seek(5); + callsystem(ls); + t.Close(); + callsystem(ls); + auto const ret = _error->PendingError(); + _error->DumpErrors(); + return ret; +} -- cgit v1.2.3