Logger System 0.1.3
High-performance C++20 thread-safe logging system with asynchronous capabilities
Loading...
Searching...
No Matches
kcenon::logger::security::detail Namespace Reference

Functions

ssize_t safe_write (int fd, const void *buf, size_t count)
 Signal-safe write wrapper (cross-platform)
 
int safe_fsync (int fd)
 Signal-safe fsync wrapper (cross-platform)
 

Function Documentation

◆ safe_fsync()

int kcenon::logger::security::detail::safe_fsync ( int fd)
inline

Signal-safe fsync wrapper (cross-platform)

Parameters
fdFile descriptor
Returns
0 on success, -1 on error

Note: Uses _commit on Windows (POSIX fsync is not available)

Definition at line 61 of file signal_manager.h.

61 {
62#ifdef _WIN32
63 return _commit(fd);
64#else
65 return ::fsync(fd);
66#endif
67}

Referenced by kcenon::logger::security::signal_manager::emergency_flush().

Here is the caller graph for this function:

◆ safe_write()

ssize_t kcenon::logger::security::detail::safe_write ( int fd,
const void * buf,
size_t count )
inline

Signal-safe write wrapper (cross-platform)

Parameters
fdFile descriptor
bufBuffer to write
countNumber of bytes to write
Returns
Number of bytes written or -1 on error

Note: Uses _write on Windows (POSIX write is deprecated on MSVC) This avoids macro pollution that would affect other headers.

Definition at line 46 of file signal_manager.h.

46 {
47#ifdef _WIN32
48 return _write(fd, buf, static_cast<unsigned int>(count));
49#else
50 return ::write(fd, buf, count);
51#endif
52}

Referenced by kcenon::logger::security::signal_manager::emergency_flush().

Here is the caller graph for this function: