[PATCH 4 of 6] Adjusted mmap() type casts
Maxim Dounin
mdounin at mdounin.ru
Sun May 25 21:46:39 UTC 2025
# HG changeset patch
# User Maxim Dounin <mdounin at mdounin.ru>
# Date 1748209484 -10800
# Mon May 26 00:44:44 2025 +0300
# Node ID 3e11162ed39312387fc79a731071b0a50aa15acc
# Parent 4eed7851024b4ca5d77107676025e84324e23c74
Adjusted mmap() type casts.
Type casting mmap() result explicitly to (u_char *) is only needed on
systems where mmap() returns caddr_t, but on these systems MAP_FAILED
also needs to be casted. Added appropriate type casts.
diff --git a/src/os/unix/ngx_shmem.c b/src/os/unix/ngx_shmem.c
--- a/src/os/unix/ngx_shmem.c
+++ b/src/os/unix/ngx_shmem.c
@@ -18,7 +18,7 @@ ngx_shm_alloc(ngx_shm_t *shm)
PROT_READ|PROT_WRITE,
MAP_ANON|MAP_SHARED, -1, 0);
- if (shm->addr == MAP_FAILED) {
+ if (shm->addr == (u_char *) MAP_FAILED) {
ngx_log_error(NGX_LOG_ALERT, shm->log, ngx_errno,
"mmap(MAP_ANON|MAP_SHARED, %uz) failed", shm->size);
return NGX_ERROR;
@@ -55,7 +55,7 @@ ngx_shm_alloc(ngx_shm_t *shm)
shm->addr = (u_char *) mmap(NULL, shm->size, PROT_READ|PROT_WRITE,
MAP_SHARED, fd, 0);
- if (shm->addr == MAP_FAILED) {
+ if (shm->addr == (u_char *) MAP_FAILED) {
ngx_log_error(NGX_LOG_ALERT, shm->log, ngx_errno,
"mmap(/dev/zero, MAP_SHARED, %uz) failed", shm->size);
}
@@ -65,7 +65,7 @@ ngx_shm_alloc(ngx_shm_t *shm)
"close(\"/dev/zero\") failed");
}
- return (shm->addr == MAP_FAILED) ? NGX_ERROR : NGX_OK;
+ return (shm->addr == (u_char *) MAP_FAILED) ? NGX_ERROR : NGX_OK;
}
More information about the nginx-devel
mailing list