ngx_alloc.c 706 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. /*
  2. * Copyright (C) Igor Sysoev
  3. * Copyright (C) Nginx, Inc.
  4. */
  5. #include "../inc/cs.h"
  6. #include "../inc/cs_str.h"
  7. #include "../inc/ngx_alloc.h"
  8. void *ngx_alloc(size_t size) {
  9. void *p;
  10. p = malloc(size);
  11. return (p);
  12. }
  13. void *ngx_calloc(size_t size) {
  14. void *p;
  15. p = ngx_alloc(size);
  16. if (p) {
  17. cs_bzero(p, size);
  18. }
  19. return p;
  20. }
  21. #if (NGX_HAVE_POSIX_MEMALIGN)
  22. void *ngx_memalign(size_t alignment, size_t size) {
  23. void *p;
  24. int err;
  25. err = posix_memalign(&p, alignment, size);
  26. if (err) {
  27. p = NULL;
  28. }
  29. return p;
  30. }
  31. #elif (NGX_HAVE_MEMALIGN)
  32. void *ngx_memalign(size_t alignment, size_t size) {
  33. void *p;
  34. p = memalign(alignment, size);
  35. return (p);
  36. }
  37. #endif