stdlib.c 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. /*
  2. * <stdlib.h> wrapper functions.
  3. *
  4. * Authors:
  5. * Jonathan Pryor ([email protected])
  6. *
  7. * Copyright (C) 2004-2005 Jonathan Pryor
  8. */
  9. #include <stdlib.h>
  10. #include "map.h"
  11. #include "mph.h"
  12. G_BEGIN_DECLS
  13. gint32
  14. Mono_Posix_Stdlib_EXIT_FAILURE (void)
  15. {
  16. return EXIT_FAILURE;
  17. }
  18. gint32
  19. Mono_Posix_Stdlib_EXIT_SUCCESS (void)
  20. {
  21. return EXIT_SUCCESS;
  22. }
  23. gint32
  24. Mono_Posix_Stdlib_MB_CUR_MAX (void)
  25. {
  26. return MB_CUR_MAX;
  27. }
  28. gint32
  29. Mono_Posix_Stdlib_RAND_MAX (void)
  30. {
  31. return RAND_MAX;
  32. }
  33. void*
  34. Mono_Posix_Stdlib_calloc (mph_size_t nmemb, mph_size_t size)
  35. {
  36. if (mph_have_size_t_overflow(nmemb) || mph_have_size_t_overflow(size))
  37. return NULL;
  38. return calloc ((size_t) nmemb, (size_t) size);
  39. }
  40. void*
  41. Mono_Posix_Stdlib_malloc (mph_size_t size)
  42. {
  43. if (mph_have_size_t_overflow(size))
  44. return NULL;
  45. return malloc ((size_t) size);
  46. }
  47. void*
  48. Mono_Posix_Stdlib_realloc (void* ptr, mph_size_t size)
  49. {
  50. if (mph_have_size_t_overflow(size))
  51. return NULL;
  52. return realloc (ptr, (size_t) size);
  53. }
  54. G_END_DECLS
  55. /*
  56. * vim: noexpandtab
  57. */