diff options
author | Anastasia Klimchuk <aklm@chromium.org> | 2021-10-05 15:59:06 +1100 |
---|---|---|
committer | Nico Huber <nico.h@gmx.de> | 2021-11-17 15:02:57 +0000 |
commit | 421d9133bb9d107e9a2596352d631bde14168393 (patch) | |
tree | 27f8a11bac9192294194003b2f9f3ae252f630ff /tests | |
parent | 7692a2ee78020d8d3a52bf45b9d57ed5d98499e0 (diff) | |
download | flashrom-421d9133bb9d107e9a2596352d631bde14168393.tar.gz flashrom-421d9133bb9d107e9a2596352d631bde14168393.tar.bz2 flashrom-421d9133bb9d107e9a2596352d631bde14168393.zip |
tests: Add wraps for __xstat/__fxstat variants of stat/fstat
__xstat and __fxstat variants of stat/fstat are invoked under
chromium chroot. For all existing tests it is sufficient for
stat/fstat to "do nothing, return 0", so new wraps do just that.
Test which needs __xstat: linux_mtd lifecycle.
Tests which need __fxstat:
read_chip_test_success
read_chip_with_dummyflasher_test_success
write_chip_test_success
write_chip_with_dummyflasher_test_success
Without this patch tests above fail under chromium chroot.
BUG=b:181803212
TEST=running tests on three different environments,
1) stat64/fstat64 (ninja tests in upstream tree)
2) stat64/fstat64 (ninja tests in chromium tree)
2) __xstat64/__fxstat64 (emerge with tests in chromium tree)
Change-Id: I4c5c243acde09dc5bb6b2a14042fcd23a49707db
Signed-off-by: Anastasia Klimchuk <aklm@chromium.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/58103
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Edward O'Callaghan <quasisec@chromium.org>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/meson.build | 4 | ||||
-rw-r--r-- | tests/tests.c | 24 |
2 files changed, 28 insertions, 0 deletions
diff --git a/tests/meson.build b/tests/meson.build index ebfbaefa..415ce132 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -46,8 +46,12 @@ mocks = [ '-Wl,--wrap=fflush', '-Wl,--wrap=stat', '-Wl,--wrap=stat64', + '-Wl,--wrap=__xstat', + '-Wl,--wrap=__xstat64', '-Wl,--wrap=fstat', '-Wl,--wrap=fstat64', + '-Wl,--wrap=__fxstat', + '-Wl,--wrap=__fxstat64', '-Wl,--wrap=fileno', '-Wl,--wrap=fsync', '-Wl,--wrap=fread', diff --git a/tests/tests.c b/tests/tests.c index e3ad2416..f2547ffb 100644 --- a/tests/tests.c +++ b/tests/tests.c @@ -154,6 +154,18 @@ int __wrap_stat64(const char *path, void *buf) return 0; } +int __wrap___xstat(const char *path, void *buf) +{ + LOG_ME; + return 0; +} + +int __wrap___xstat64(const char *path, void *buf) +{ + LOG_ME; + return 0; +} + int __wrap_fstat(int fd, void *buf) { LOG_ME; @@ -166,6 +178,18 @@ int __wrap_fstat64(int fd, void *buf) return 0; } +int __wrap___fxstat(int fd, void *buf) +{ + LOG_ME; + return 0; +} + +int __wrap___fxstat64(int fd, void *buf) +{ + LOG_ME; + return 0; +} + char *__wrap_fgets(char *buf, int len, FILE *fp) { LOG_ME; |