06-22-2011
If anyone was wandering, switching to AIX 6.1 did the trick. Documentation for 6.1 states that mprotect for text segment will work with MPROTECT_TXT env variable set to ON and it does. Documentation for 5.3 does not say such thing apparently, I primarily thought that the call in both versions will have the same effect, but apparently it doesn't.
Anyway, thanks for help!
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
Hi,
Does anyone seen this error before..
kernel: ENOMEM in journal_alloc_journal_head, retrying.
I encounter this problem on IBM eServers where when the above error appears usually the machine is dead or hanged. Unless a hard reboot is been done. Is this something have to do with the memory... (1 Reply)
Discussion started by: killerserv
1 Replies
2. Programming
When run it, segment fault.
What is wrong?
#include <stdio.h>
#include <stdlib.h>
const int max =20;
//****************************************************
// Input Matrix
//****************************************************
void inMatrixAA(int *AA, int row, int col)... (9 Replies)
Discussion started by: zhshqzyc
9 Replies
3. IP Networking
I do have 2 different segment network which different platform on each segment. E.g. 20 segment, Windows OS can talk to Unix OS and 21 segment practice same rule. Further more, Windows OS from 20 segment can talk to 21 segment other OS but only the UNIX OS in 20 segment fail to talk to 21 segment.... (3 Replies)
Discussion started by: HASM
3 Replies
4. Shell Programming and Scripting
Hey all, could someone please direct me on how to extract a segment from a file between two tags? Thanks! (1 Reply)
Discussion started by: mpang_
1 Replies
5. UNIX for Dummies Questions & Answers
how do i close a do code segment? od? (1 Reply)
Discussion started by: trob
1 Replies
6. Shell Programming and Scripting
I need help in removing a leading zero in a particular position.
For eg.: XYZ*04567472*0099*020091231*0123*0.12
In the above line, I want to replace "*0123" with "123" and "0.12" with ".12". I want to remove the leading zero only in position number 4 and 5 (the bolded segments)
I was able... (10 Replies)
Discussion started by: ananthmm
10 Replies
7. Programming
I mean, I malloc a segment of memory, maybe 1k maybe 20bytes.. assume the pointer is pMem How can I know the content pMem refered is all Zero or \0 . I know memcmp but the second parameter should another memory address... thanx (4 Replies)
Discussion started by: macroideal
4 Replies
8. Programming
Hi to all.
I'm reciving a "Segment violation" error from this code and I don't know why.
void insertAtEnd(NodeType *pList) {
char element;
printf("Introduce a element: \n");
setbuf(stdin, NULL);
scanf("%c", &element);
//Find the end of the list;
while... (4 Replies)
Discussion started by: daniel.gbaena
4 Replies
9. Programming
Hi,
Whether the following piece of code is placed in the read-only memory of code (text) segment or data segment?
char *a = "Hello";
I am getting two different answers while searching in google :( that's why the confusion is (7 Replies)
Discussion started by: royalibrahim
7 Replies
10. Programming
I always get segment fault, why? can sb help me and modify it, I have spend on much time on
#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/time.h>
#include <string.h>
#define MAX 10
pthread_t thread;
void *thread1()
{
int *a;
int i, n;
... (1 Reply)
Discussion started by: yanglei_fage
1 Replies
LEARN ABOUT FREEBSD
mprotect
MPROTECT(2) BSD System Calls Manual MPROTECT(2)
NAME
mprotect -- control the protection of pages
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <sys/mman.h>
int
mprotect(const void *addr, size_t len, int prot);
DESCRIPTION
The mprotect() system call changes the specified pages to have protection prot. Not all implementations will guarantee protection on a page
basis; the granularity of protection changes may be as large as an entire region. A region is the virtual address space defined by the start
and end addresses of a struct vm_map_entry.
Currently these protection bits are known, which can be combined, OR'd together:
PROT_NONE No permissions at all.
PROT_READ The pages can be read.
PROT_WRITE The pages can be written.
PROT_EXEC The pages can be executed.
RETURN VALUES
The mprotect() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indi-
cate the error.
ERRORS
The mprotect() system call will fail if:
[EINVAL] The virtual address range specified by the addr and len arguments is not valid.
[EACCES] The calling process was not allowed to change the protection to the value specified by the prot argument.
SEE ALSO
madvise(2), mincore(2), msync(2), munmap(2)
HISTORY
The mprotect() system call first appeared in 4.4BSD.
BSD
June 9, 1993 BSD