]>
git.proxmox.com Git - ceph.git/blob - ceph/src/fmt/test/posix-mock.h
1 // Formatting library for C++ - mocks of POSIX functions
3 // Copyright (c) 2012 - present, Victor Zverovich
4 // All rights reserved.
6 // For the license information refer to format.h.
8 #ifndef FMT_POSIX_TEST_H
9 #define FMT_POSIX_TEST_H
21 # include <sys/param.h> // for FreeBSD version
22 # include <sys/types.h> // for ssize_t
32 // Size type for read and write.
33 typedef size_t size_t;
34 typedef ssize_t ssize_t
;
35 int open(const char* path
, int oflag
, int mode
);
36 int fstat(int fd
, struct stat
* buf
);
38 typedef unsigned size_t;
40 errno_t
sopen_s(int* pfh
, const char* filename
, int oflag
, int shflag
,
45 long sysconf(int name
);
47 DWORD
GetFileSize(HANDLE hFile
, LPDWORD lpFileSizeHigh
);
50 int close(int fildes
);
53 int dup2(int fildes
, int fildes2
);
55 FILE* fdopen(int fildes
, const char* mode
);
57 ssize_t
read(int fildes
, void* buf
, size_t nbyte
);
58 ssize_t
write(int fildes
, const void* buf
, size_t nbyte
);
61 int pipe(int fildes
[2]);
63 int pipe(int* pfds
, unsigned psize
, int textmode
);
66 FILE* fopen(const char* filename
, const char* mode
);
67 int fclose(FILE* stream
);
68 int(fileno
)(FILE* stream
);
70 #if defined(FMT_LOCALE) && !defined(_WIN32)
71 locale_t
newlocale(int category_mask
, const char* locale
, locale_t base
);
75 #define FMT_SYSTEM(call) test::call
77 #endif // FMT_POSIX_TEST_H