View | Details | Raw Unified | Return to bug 12492
Collapse All | Expand All

(-)elf/dl-load.c (-1 / +5 lines)
Lines 1398-1404 Link Here
1398
	  if (__builtin_expect (p + s <= relro_end, 1))
1398
	  if (__builtin_expect (p + s <= relro_end, 1))
1399
	    {
1399
	    {
1400
	      /* The variable lies in the region protected by RELRO.  */
1400
	      /* The variable lies in the region protected by RELRO.  */
1401
	      __mprotect ((void *) p, s, PROT_READ|PROT_WRITE);
1401
	      if (__mprotect ((void *) p, s, PROT_READ|PROT_WRITE) < 0)
1402
		{
1403
		  errstring = N_("cannot change memory protections");
1404
		  goto call_lose_errno;
1405
		}
1402
	      __stack_prot |= PROT_READ|PROT_WRITE|PROT_EXEC;
1406
	      __stack_prot |= PROT_READ|PROT_WRITE|PROT_EXEC;
1403
	      __mprotect ((void *) p, s, PROT_READ);
1407
	      __mprotect ((void *) p, s, PROT_READ);
1404
	    }
1408
	    }

Return to bug 12492