/* * Copyright (c) 2026, Chloe M. * Provided under the BSD-3 clause. * * Description: String helpers * Author: Chloe M. */ #ifndef _SPKG_STRING_H_ #define _SPKG_STRING_H_ 1 #include /* * Compare the differences between two strings * * @Buffer1: First buffer to compare * @Buffer2: Second buffer to compare * @Length: Number of bytes to compare * * Returns the differences */ LONG RtlMemCmp(const VOID *Buffer1, const VOID *Buffer2, USIZE Length); /* * Obtain the length in bytes of a '\0' terminated string * * @String: String to obtain length from * * Returns zero on failure */ USIZE RtlStrLen(const CHAR *String); /* * Fill n bytes of a buffer with a value * * @Buffer: Pointer to buffer to fill * @SetValue: Value to fill with * @Length: Number of bytes to fill * * Returns @Buffer on success, otherwise NULL on failure */ VOID *RtlMemSet(VOID *Buffer, LONG SetValue, USIZE Length); /* * Copy n bytes of one buffer to another * * @Dest: Destination buffer * @Soruce: Source buffer * @Length: Length of buffers * * Returns @Dest on suucess, otherwise NULL on failure */ VOID *RtlMemCpy(VOID *Dest, const VOID *Source, USIZE Length); #endif /* !_SPKG_STRING_H_ */