Skip to content

Commit 0f5e282

Browse files
committed
MAP_ANON should be set to -1 , not required on Linux, required on BSD. + go fmt
1 parent 3fbf6d5 commit 0f5e282

File tree

1 file changed

+12
-13
lines changed

1 file changed

+12
-13
lines changed

loader/mmap_unix.go

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -20,26 +20,25 @@
2020
package loader
2121

2222
import (
23-
`syscall`
23+
"syscall"
2424
)
2525

2626
const (
27-
_AP = syscall.MAP_ANON | syscall.MAP_PRIVATE
28-
_RX = syscall.PROT_READ | syscall.PROT_EXEC
29-
_RW = syscall.PROT_READ | syscall.PROT_WRITE
27+
_AP = syscall.MAP_ANON | syscall.MAP_PRIVATE
28+
_RX = syscall.PROT_READ | syscall.PROT_EXEC
29+
_RW = syscall.PROT_READ | syscall.PROT_WRITE
3030
)
3131

32-
3332
func mmap(nb int) uintptr {
34-
if m, _, e := syscall.RawSyscall6(syscall.SYS_MMAP, 0, uintptr(nb), _RW, _AP, 0, 0); e != 0 {
35-
panic(e)
36-
} else {
37-
return m
38-
}
33+
if m, _, e := syscall.RawSyscall6(syscall.SYS_MMAP, 0, uintptr(nb), _RW, _AP, ^uintptr(0), 0); e != 0 {
34+
panic(e)
35+
} else {
36+
return m
37+
}
3938
}
4039

4140
func mprotect(p uintptr, nb int) {
42-
if _, _, err := syscall.RawSyscall(syscall.SYS_MPROTECT, p, uintptr(nb), _RX); err != 0 {
43-
panic(err)
44-
}
41+
if _, _, err := syscall.RawSyscall(syscall.SYS_MPROTECT, p, uintptr(nb), _RX); err != 0 {
42+
panic(err)
43+
}
4544
}

0 commit comments

Comments
 (0)