mirror of
https://github.com/youssefnoob003/SindriKit
synced 2026-07-07 21:57:09 +00:00
aea2eb6cfb
- Implement complete cross-process injection engine via snd_inj_ctx_t - Track explicit remote_entry_point for safe thread hijacking and PE execution - Refactor standalone syscall resolvers into a unified pipeline (scan/sort) - Perfect status code system by purging generic fallbacks in favor of highly-specific, domain-aware error codes - Fix minor pointer validation and parsing bugs in the reflective loader
33 lines
775 B
C
33 lines
775 B
C
#ifndef SND_COMMON_MACROS_H
|
|
#define SND_COMMON_MACROS_H
|
|
|
|
/**
|
|
* @def SND_BEGIN_EXTERN_C
|
|
* @brief Opens an `extern "C"` linkage block for C++ compatibility.
|
|
*/
|
|
/**
|
|
* @def SND_END_EXTERN_C
|
|
* @brief Closes an `extern "C"` linkage block.
|
|
*/
|
|
#ifdef __cplusplus
|
|
#define SND_BEGIN_EXTERN_C extern "C" {
|
|
#define SND_END_EXTERN_C }
|
|
#else
|
|
#define SND_BEGIN_EXTERN_C
|
|
#define SND_END_EXTERN_C
|
|
#endif
|
|
|
|
/**
|
|
* @def SND_FORCE_INLINE
|
|
* @brief Compiler-agnostic macro to force function inlining.
|
|
* Useful for embedding bounds checks and offset calculations directly into the
|
|
* caller's assembly.
|
|
*/
|
|
#if defined(_MSC_VER)
|
|
#define SND_FORCE_INLINE static __forceinline
|
|
#else
|
|
#define SND_FORCE_INLINE static inline __attribute__((always_inline))
|
|
#endif
|
|
|
|
#endif // SND_COMMON_MACROS_H
|