bh_common.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. /*
  2. * Copyright (C) 2019 Intel Corporation. All rights reserved.
  3. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  4. */
  5. #ifndef _BH_COMMON_H
  6. #define _BH_COMMON_H
  7. #include "bh_platform.h"
  8. #define bh_memcpy_s(dest, dlen, src, slen) do { \
  9. int _ret = slen == 0 ? 0 : b_memcpy_s (dest, dlen, src, slen); \
  10. (void)_ret; \
  11. bh_assert (_ret == 0); \
  12. } while (0)
  13. #define bh_strcat_s(dest, dlen, src) do { \
  14. int _ret = b_strcat_s (dest, dlen, src); \
  15. (void)_ret; \
  16. bh_assert (_ret == 0); \
  17. } while (0)
  18. #define bh_strcpy_s(dest, dlen, src) do { \
  19. int _ret = b_strcpy_s (dest, dlen, src); \
  20. (void)_ret; \
  21. bh_assert (_ret == 0); \
  22. } while (0)
  23. int b_memcpy_s(void * s1, unsigned int s1max, const void * s2, unsigned int n);
  24. int b_strcat_s(char * s1, size_t s1max, const char * s2);
  25. int b_strcpy_s(char * s1, size_t s1max, const char * s2);
  26. /* strdup with string allocated by BH_MALLOC */
  27. char *bh_strdup(const char *s);
  28. /* strdup with string allocated by WA_MALLOC */
  29. char *wa_strdup(const char *s);
  30. #endif