+++ /dev/null
-/**
- * \file strmem.c
- * \author John Hodge (thePowersGang)
- */
-#include <acess.h>
-#include <udi.h>
-
-// === EXPORTS ===
-EXPORTAS(strlen, udi_strlen);
-EXPORTAS(strcat, udi_strcat);
-EXPORTAS(strncat, udi_strncat);
-EXPORTAS(strcmp, udi_strcmp);
-EXPORTAS(strncmp, udi_strncmp);
-EXPORTAS(memcmp, udi_memcmp);
-EXPORTAS(strcpy, udi_strcpy);
-EXPORTAS(strncpy, udi_strncpy);
-EXPORTAS(memcpy, udi_memcpy);
-EXPORTAS(memmove, udi_memmove);
-EXPORT(udi_strncpy_rtrim);
-EXPORTAS(strchr, udi_strchr);
-EXPORTAS(strrchr, udi_strrchr);
-EXPORT(udi_memchr);
-EXPORTAS(memset, udi_memset);
-EXPORT(udi_strtou32);
-EXPORT(udi_snprintf);
-EXPORT(udi_vsnprintf);
-
-// === CODE ===
-char *udi_strcpy(char *s1, const char *s2)
-{
- return strcpy(s1, s2);
-}
-char *udi_strncpy_rtrim(char *s1, const char *s2, udi_size_t n)
-{
- char *dst = s1;
- while( n-- )
- {
- *dst++ = *s2++;
- }
- while( dst > s1 && isspace(*--dst) )
- ;
- dst ++;
- *dst = '\0';
- return s1;
-}
-
-void *udi_memchr(const void *s, udi_ubit8_t c, udi_size_t n)
-{
- const udi_ubit8_t *p = s;
- while(n--)
- {
- if( *p == c )
- return (void*)p;
- p ++;
- }
- return NULL;
-}
-
-udi_ubit32_t udi_strtou32(const char *s, char **endptr, int base)
-{
- return strtoul(s, endptr, base);
-}
-
-udi_size_t udi_snprintf(char *s, udi_size_t max_bytes, const char *format, ...)
-{
- udi_size_t ret;
- va_list args;
- va_start(args, format);
-
- ret = udi_vsnprintf(s, max_bytes, format, args);
-
- va_end(args);
- return ret;
-}
-udi_size_t udi_vsnprintf(char *s, udi_size_t max_bytes, const char *format, va_list ap)
-{
- // TODO: This should support some stuff Acess doesn't
- return vsnprintf(s, max_bytes, format, ap);
-}