tests: Re-introduce stat/lstat mocks on macOS

Commit d6b17edd51 ("tests: Lookup extended stat/lstat in mocks")
adds support for mocking of stat() and lstat() on macOS.

The change was broken because virmockstathelpers.c only follows glibc
logic and MOCK_STAT and MOCK_LSTAT are not getting defined on macOS.

Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
Roman Bolshakov 2020-10-18 18:30:57 +03:00 committed by Michal Privoznik
parent 2c0b3db3c7
commit ad0b56b64c

View File

@ -55,6 +55,10 @@
* Unfortunately, because we are trying to mock replace the C library,
* we need to know about this internal impl detail.
*
* On macOS stat() and lstat() are resolved to _stat$INODE64 and
* _lstat$INODE64, respectively. stat(2) man page also declares that
* stat64(), lstat64() and fstat64() are deprecated.
*
* With all this in mind the list of functions we have to mock will depend
* on several factors
*
@ -68,8 +72,10 @@
#if defined(WITH_STAT) && !defined(WITH___XSTAT) && !defined(WITH_STAT64)
# define MOCK_STAT
#if defined(WITH_STAT)
# if !defined(WITH___XSTAT) && !defined(WITH_STAT64) || defined(__APPLE__)
# define MOCK_STAT
# endif
#endif
#if defined(WITH_STAT64) && !defined(WITH___XSTAT64)
# define MOCK_STAT64
@ -80,8 +86,10 @@
#if defined(WITH___XSTAT64)
# define MOCK___XSTAT64
#endif
#if defined(WITH_LSTAT) && !defined(WITH___LXSTAT) && !defined(WITH_LSTAT64)
# define MOCK_LSTAT
#if defined(WITH_LSTAT)
# if !defined(WITH___LXSTAT) && !defined(WITH_LSTAT64) || defined(__APPLE__)
# define MOCK_LSTAT
# endif
#endif
#if defined(WITH_LSTAT64) && !defined(WITH___LXSTAT64)
# define MOCK_LSTAT64