Old 23rd January 2005, 04:21   #1
luv-snail
Junior Member
 
Join Date: Aug 2001
Location: Wales, UK
Posts: 25
JTFE and Data Execution Prevention

Hi,

I don't know if this has been mentioned before, but I searched and didn't find anything.

Currently, the "Jump To File Extra" plugin does not load when Windows XP's Data Execution Prevention (DEP) feature is used in conjunction with a processor that natively supports it. Adding Winamp to DEP's exclusion list allows the plugin to start normally, but many would consider this a (slight) security risk.

I am using Winamp 5.08c (full) with an AMD Athlon 64 3500+.
luv-snail is offline   Reply With Quote
Old 23rd January 2005, 09:21   #2
DrO
 
Join Date: Sep 2003
Posts: 27,873
well i've never heard about this before (and currently i've no way of checking/reproducing personally since i use Win2k plus the code is in a full state of re-code at the moment so i couldn't test any builds anyway )

only thing off hand i can think of is to try an older build (0.94te) to narrow down what could be causing it (since i did come across one issue with the auto-update feature which was causing a memory exception though i'd thought i'd fixed it) but that older build is a stable(ish) one without it in that can be used for testing with.

if that still gives the same issue then i'm not too sure what else can be altered, etc since the way the plugin internal works involves overriding some OS api calls and that may be the cause though i've not seen any reports of things like that causing issues from what i can see from the search i just did *shrugs*

-daz
DrO is offline   Reply With Quote
Old 23rd January 2005, 11:27   #3
luv-snail
Junior Member
 
Join Date: Aug 2001
Location: Wales, UK
Posts: 25
Hi,

I've just tried the older build and the problem exists with that one also.

For now, I've excluded Winamp from DEP and everything's working fine, so it's not a really big deal. Technically I guess it's a bug though, so I thought I should let you know.
luv-snail is offline   Reply With Quote
Old 23rd January 2005, 11:37   #4
luv-snail
Junior Member
 
Join Date: Aug 2001
Location: Wales, UK
Posts: 25
Aha.. after a bit more searching I've found someone else with the same problem:

http://forums.winamp.com/showthread....hreadid=190870
luv-snail is offline   Reply With Quote
Old 23rd January 2005, 13:11   #5
DrO
 
Join Date: Sep 2003
Posts: 27,873
heh, i remember that thread now. hmm, well when i ever get my copy of xp installed i'll have a look into fixing this somehow if i can (though i think i've found some info on what causes the issue but i can't test for certain at the moment).

i've made a note of this and will check it out when it's feasible for me between work, etc

-daz
DrO is offline   Reply With Quote
Old 23rd April 2005, 05:01   #6
elixxir
Junior Member
 
Join Date: Apr 2005
Location: Australia
Posts: 1
Hi DrO,

Not having loads of hardware/software to test with are issues facing many devs out there, but they can be overcome by considering to provide your plugin as Open Source.

I ran across the problem on my AMD64 system as well and it took forever to figure out why it wasn't working. When I did, I really wanted to have a look at the source and try and fix it.

I know you might decide otherwise, but please consider it, a patch would certainly have been made by someone by now.

Cheers
elixxir is offline   Reply With Quote
Old 23rd April 2005, 05:25   #7
Benski
Ben Allison
Former Winamp Developer
 
Benski's Avatar
 
Join Date: Jan 2005
Location: Brooklyn, NY
Posts: 1,057
DrO

Are you using ATL/WTL, overwriting any memory or code in the OS's address space, or using some sort of thunking code that might jmp or call into memory allocated for a data structure?

These all will make DEP unhappy.

If you're doing thunking and doing it yourself, try using VirtualAlloc() and then VirtualProtect() to give yourself permission to execute in a data section.
Benski is offline   Reply With Quote
Old 23rd April 2005, 09:48   #8
DrO
 
Join Date: Sep 2003
Posts: 27,873
no atl/wtl in my stuff, all pure c/c++ and i'm using VirtualAlloc()/VirtualProtect() when i apihijack the DrawTextA() function (which i use the same code for a few other plugins and they don't have the issue). since i'm re-writing the plugin my guess is that i should find the issue out.

elixxir: i can understand where you're coming from (and maybe one day i'll consider open sourcing it) but as the project has stood for a while, open sourcing wouldn't be beneficial since my code is a bit all over the place

-daz
DrO is offline   Reply With Quote
Reply
Go Back   Winamp & Shoutcast Forums > Winamp > Winamp Bug Reports

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump