Mercurial > hg > nginx-vendor-0-5
diff src/os/unix/ngx_alloc.h @ 0:f0b350454894 NGINX_0_1_0
nginx 0.1.0
*) The first public version.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Mon, 04 Oct 2004 00:00:00 +0400 |
parents | |
children | 6f8b0dc0f8dd |
line wrap: on
line diff
new file mode 100644 --- /dev/null +++ b/src/os/unix/ngx_alloc.h @@ -0,0 +1,42 @@ + +/* + * Copyright (C) Igor Sysoev + */ + + +#ifndef _NGX_ALLOC_H_INCLUDED_ +#define _NGX_ALLOC_H_INCLUDED_ + + +#include <ngx_config.h> +#include <ngx_core.h> + + +void *ngx_alloc(size_t size, ngx_log_t *log); +void *ngx_calloc(size_t size, ngx_log_t *log); + +#define ngx_free free + + +/* + * Linux has memalign() or posix_memalign() + * Solaris has memalign() + * FreeBSD has not memalign() or posix_memalign() but its malloc() alignes + * allocations bigger than page size at the page boundary. + */ + +#if (HAVE_POSIX_MEMALIGN || HAVE_MEMALIGN) + +void *ngx_memalign(size_t alignment, size_t size, ngx_log_t *log); + +#else + +#define ngx_memalign(alignment, size, log) ngx_alloc(size, log) + +#endif + + +extern int ngx_pagesize; + + +#endif /* _NGX_ALLOC_H_INCLUDED_ */