delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2000/01/13/12:30:52

Date: Thu, 13 Jan 2000 17:42:30 +0200 (IST)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
X-Sender: eliz AT is
To: Martin Stromberg <eplmst AT lu DOT erisoft DOT se>
cc: djgpp AT delorie DOT com
Subject: Re: Problems with protected_mode_int
In-Reply-To: <85junr$31i$1@antares.lu.erisoft.se>
Message-ID: <Pine.SUN.3.91.1000113173941.12754F-100000@is>
MIME-Version: 1.0
Reply-To: djgpp AT delorie DOT com
Errors-To: dj-admin AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

On 13 Jan 2000, Martin Stromberg wrote:

> asm("
> my_handler:
> ...
> 
> my_handler_end:
> ");
> 
> int main()
> {
>   unsigned char code[1000];
> 
>   memcpy(code, &my_handler, my_handler_end - my_handler);

This will most probably crash, for several good reasons:

  - stack is allocated off the DS selector whose access rights forbid 
    executing any address accessed via that selector;

  - the only segment register that is guaranteed to be loaded with the 
    application's selector is CS, so you cannot trust SS.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019