Official eMule-Board: Emule On Linux With Wine Mini-howto - Official eMule-Board

Jump to content


  • (16 Pages)
  • +
  • 1
  • 2
  • 3
  • Last »

Emule On Linux With Wine Mini-howto Fresh and up-to-the-minute

#1 User is offline   mindpirate 

  • Premium Member
  • PipPipPipPipPip
  • Group: Members
  • Posts: 299
  • Joined: 06-January 03

Post icon  Posted 19 March 2004 - 02:09 PM

eMule on Linux with Wine mini-HOWTO

Revision 2.5 (June 29, 2007)
Maintainer: mindpirate
Contributors: Painkiller Jane


PREREQUISITES
    This document assumes you have a recent Linux installation with an X11-based window manager or desktop environment such as KDE, GNOME, or Xfce.

INSTALLING WINE
    Install Wine 0.9.40 or later from your Linux distribution's package manager (apt or Synaptic on Debian/Ubuntu, Portage on Gentoo, etc.). If you don't find the latest version there, you should download the appropriate binary package or platform-independent source tarball from http://sourceforge.n...p?group_id=6241, then consult the official installation documentation at http://www.winehq.or...de/getting-wine.

INSTALLING EMULE
    Download the latest eMule installation executable and save it to your home directory (shell alias "~" under most Linux setups). Launch the executable from a terminal:

    wine ~/eMule0.48a-Installer.exe

    Wine will first create an emulated Windows environment in ~/.wine then launch the installer. Proceed with the eMule installation as you would under Windows.

UNINSTALLING EMULE
    To remove eMule from your emulated Windows environment, type the following in a terminal:

    uninstaller

    Select eMule from the program list and click Uninstall.

LAUNCHING EMULE
    Two options for launching eMule are provided here.

    On Linux systems eMule's UploadSpeedSense feature presents users with a security tradeoff since it uses ICMP packets for pinging, something which Linux requires root privileges for. Because of this, if you wish to use UploadSpeedSense you must use eMule under less local security restrictions than you would normally run Linux applications under. Although this risk is not greater than the risk running eMule under a real Windows installation presents, it still means that your entire system can be compromised if an ICMP vulnerability is exploited.

    So what is UploadSpeedSense? From the eMule preferences documentation:

    Quote

    USS is a function to monitor the ping times of the connection and to automatically adjust eMule's upload according to this ping value. This ensures that the connection never cloggs [sic] and will try to keep surfing and online gaming fluid.

    If you want UploadSpeedSense functionality and understand the risks, use Method 1 below to launch eMule, otherwise use Method 2.

    Method 1

      From a terminal invoke Wine via sudo like so:

      sudo wine ~/.wine/drive_c/Program\ Files/eMule/emule.exe

      sudo will then prompt you for the password of your root account. Enter the password and eMule will launch.

    Method 2

      During installation the eMule icon may or may not have been successfully installed by Wine to your Linux desktop's launch menu. If you see the eMule icon there, simply click on it. If not, launch eMule from the terminal:

      wine ~/.wine/drive_c/Program\ Files/eMule/emule.exe

    When launched for the first time, eMule will prompt you for some initial configuration preferences as usual. When it asks you what version of Windows you're using, select the "Win2K/XP" option so that your Max. connections won't be limited to 100 by default.

TIPS
  • To minimize the risk of .met/.dat corruption in the event of a crash, set Extended --> Safe .met/.dat file writing in eMule's Options dialog to "Always".

TROUBLESHOOTING
    There may be areas of the Windows API called by eMule that Wine won't handle correctly. If you notice any problems please report them in this thread.

KNOWN ISSUES
RESOURCES

This post has been edited by mindpirate: 30 June 2007 - 01:24 AM

0

#2 User is offline   Unknown1 

  • Wanna be Dev
  • PipPipPipPipPipPipPip
  • Group: Admin
  • Posts: 1288
  • Joined: 11-September 02

Posted 19 March 2004 - 04:01 PM

Although we have always encouaged other projects like aMule to create an Linux port.. This is a nice thing that I would like to support a bit, although I don't know how much I really could as I don't have a linux box..

Although, if the demand is there, maybe a precompiled Wine friendly package can be made available on the download page..

Maybe if you created a eMule Wine mod thread and was able to get others to help create a more Wine friendly mod, things would go easier..

#3 User is offline   mindpirate 

  • Premium Member
  • PipPipPipPipPip
  • Group: Members
  • Posts: 299
  • Joined: 06-January 03

Posted 19 March 2004 - 04:14 PM

Unknown1, on Mar 19 2004, 11:01 AM, said:

Although we have always encouaged other projects like aMule to create an Linux port.. This is a nice thing that I would like to support a bit, although I don't know how much I really could as I don't have a linux box..

Although, if the demand is there, maybe a precompiled Wine friendly package can be made available on the download page..

Maybe if you created a eMule Wine mod thread and was able to get others to help create a more Wine friendly mod, things would go easier..

Well hopefully this will get people interested enough to try eMule on Linux then report their results. Eventually we should be able to identify all the major problem areas, then armed with that data it should become trivial to make a Wine-friendly mod or even "OS-neutralize" portions of the eMule source itself (if such modifications happen to be ones that won't interfere with eMule's functionality under a real Windows environment).

We'll see what happens. ;)
0

#4 User is offline   Painkiller Jane 

  • Splendid Member
  • PipPipPipPip
  • Group: Members
  • Posts: 104
  • Joined: 23-November 03

Posted 19 March 2004 - 05:39 PM

i 've tried your howto.
i use w2k mode since i only have w2k riched20, comctl32.

there seems to be a problem with the 'chose folder' dialog which is used to browse to set the emule incoming/temp dirs.
as soon as i've chosen the right dir and click ok wine/emule exits.
tried to fix that by using shell32.dll/shlwapi.dll from w2k with the result that the dialog doesn't show any dirs to browse (window is completely grey except for the buttons).
setting the dir paths manually works fine, though.

does this actually work for your setup on your box?

other than that (besides minor graphical annoyances) the secure ident does not work even though i've imported the reg patch you've mentioned.

any ideas?

ps.: cpu usage is comparable to win32 emule. mem usage is slightly higher but nothing to worry about. :)

This post has been edited by Painkiller Jane: 19 March 2004 - 10:49 PM

0

#5 User is offline   mindpirate 

  • Premium Member
  • PipPipPipPipPip
  • Group: Members
  • Posts: 299
  • Joined: 06-January 03

Posted 19 March 2004 - 06:55 PM

Painkiller Jane, on Mar 19 2004, 12:39 PM, said:

i 've tried your howto.
i use w2k mode since i only have w2k riched20, comctl32.

there seems to be a problem with the 'chose folder' dialog which is used to browse to set the emule incoming/temp dirs.
as soon as i've chosen the right dir and click ok wine/emule exits.
tired to fix that by using shell32.dll/shlwapi.dll from w2k with the result that the dialog doesn't show any dirs to browse (window is completely grey except for the buttons).
setting the dir paths manually works fine, though.

does this actually work for your setup on your box?

other than that (besides minor graphical annoyances) the secure ident does not work even though i've imported the reg patch you've mentioned.

any ideas?

ps.: cpu usage is comparable to win32 emule. mem usage is slightly higher but nothing to worry about. :)

The major reason I specifically exclude Win2K setups in this doc even though Win2K is the basis for WinXP is that Win2K systems use the directory C:\WINNT to store the system files, but with WinXP Microsoft (wisely) chose not to inherit this legacy WinNT structure and made WinXP use C:\Windows for that purpose. This was probably done in order to maintain backwards compatibility for Win95/98/ME applications.

I encountered the problem you are having when messing with Win2K configurations so I believe that's what's going on here.

I've tried to make Wine spoof a Win2K environment and I haven't been able to make it work no matter how I name the system folders in the config file. I suspect this has something to do with Win9x/XP-specific environment settings in the emulated registry, and I don't even want to go there. :D

If someone knows how to remedy this, please let me know because it would be great to support Win2K.
0

#6 User is offline   mindpirate 

  • Premium Member
  • PipPipPipPipPip
  • Group: Members
  • Posts: 299
  • Joined: 06-January 03

Posted 19 March 2004 - 07:00 PM

About the file browser dialog issue, I was able to reproduce it on my WinXP setup. :o This is probably comdlg32.dll messing up. Try importing the native version and modifying your config file accordingly. I'll report back shortly with my results

[Edit] Forget comdlg32, your instincts were correct in the problem being with shell32.dll. Specifically, the call to SHELL32.SHGetPathFromIDListA is handled wrong by Wine, and importing native shell32 doesn't help either. This is a known issue for the Wine team, and there are several patches for it on the Wine mailing list. I guess I've got a lot of testing to do. :D

In the meantime anyone having trouble with this just manually enter your download folders in the preferences for now. :D

This post has been edited by mindpirate: 19 March 2004 - 07:32 PM

0

#7 User is offline   mindpirate 

  • Premium Member
  • PipPipPipPipPip
  • Group: Members
  • Posts: 299
  • Joined: 06-January 03

Posted 19 March 2004 - 07:05 PM

One more thing, sorry... got a lot going on today so I've been somewhat disorganized. :huh:

My Win2K box died 2 months ago so I no longer have access to a working Win2K registry. If you could, please go into your real Win2K registry (assuming you have one ;) ) and export the following node:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults

and either post it here or PM it to me so I can try to make a registry patch for Win2K. Thanks!
0

#8 User is offline   Painkiller Jane 

  • Splendid Member
  • PipPipPipPip
  • Group: Members
  • Posts: 104
  • Joined: 23-November 03

Posted 19 March 2004 - 07:28 PM

the KEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults reg keys of my w2k box.

Quote

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider\Gemplus GemSAFE Card CSP v1.0]
"Image Path"="C:\\WINNT\\System32\\gpkcsp.dll"
"Type"=dword:00000001
"SigInFile"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider\Microsoft Base Cryptographic Provider v1.0]
"SigInFile"=dword:00000000
"Type"=dword:00000001
"Image Path"="rsabase.dll"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider\Microsoft Base DSS and Diffie-Hellman Cryptographic Provider]
"Image Path"="dssbase.dll"
"Type"=dword:0000000d
"SigInFile"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider\Microsoft Base DSS Cryptographic Provider]
"Image Path"="dssbase.dll"
"Type"=dword:00000003
"SigInFile"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider\Microsoft DH SChannel Cryptographic Provider]
"SigInFile"=dword:00000000
"Type"=dword:00000012
"Image Path"="dssenh.dll"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider\Microsoft Enhanced Cryptographic Provider v1.0]
"SigInFile"=dword:00000000
"Type"=dword:00000001
"Image Path"="rsaenh.dll"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider\Microsoft Enhanced DSS and Diffie-Hellman Cryptographic Provider]
"SigInFile"=dword:00000000
"Type"=dword:0000000d
"Image Path"="dssenh.dll"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider\Microsoft RSA SChannel Cryptographic Provider]
"SigInFile"=dword:00000000
"Type"=dword:0000000c
"Image Path"="rsaenh.dll"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider\Microsoft Strong Cryptographic Provider]
"SigInFile"=dword:00000000
"Type"=dword:00000001
"Image Path"="rsaenh.dll"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider\Schlumberger Cryptographic Service Provider]
"Image Path"="C:\\WINNT\\System32\\slbcsp.dll"
"Type"=dword:00000001
"SigInFile"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider Types]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider Types\Type 001]
"Name"="Microsoft Strong Cryptographic Provider"
"TypeName"="RSA Full (Signature and Key Exchange)"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider Types\Type 003]
"Name"="Microsoft Base DSS Cryptographic Provider"
"TypeName"="DSS Signature"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider Types\Type 012]
"Name"="Microsoft RSA SChannel Cryptographic Provider"
"TypeName"="RSA SChannel"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider Types\Type 013]
"Name"="Microsoft Enhanced DSS and Diffie-Hellman Cryptographic Provider"
"TypeName"="DSS Signature with Diffie-Hellman Key Exchange"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider Types\Type 018]
"Name"="Microsoft DH SChannel Cryptographic Provider"
"TypeName"="Diffie-Hellman SChannel"

0

#9 User is offline   mindpirate 

  • Premium Member
  • PipPipPipPipPip
  • Group: Members
  • Posts: 299
  • Joined: 06-January 03

Posted 19 March 2004 - 07:42 PM

Okay the registry structure for that node looks identical to the same one under my XP registry. You might want to inspect the keys added by the patch in your Wine registry closely and make sure there isn't a typo or an extra space or funny line termination character somewhere in there. I've copy/pasted/imported from the above document and everything imports and works fine.

Are you receiving a "fixme" message in the console regarding a crypto-related problem when you start eMule?
0

#10 User is offline   Painkiller Jane 

  • Splendid Member
  • PipPipPipPip
  • Group: Members
  • Posts: 104
  • Joined: 23-November 03

Posted 19 March 2004 - 07:56 PM

the reg keys in my wine registry are exactly as they should be. no typos, mess ups whatsoever.

do i need a native rsabase.dll?

Quote

Are you receiving a "fixme" message in the console regarding a crypto-related problem when you start eMule?


i get tons of fixme messages but i have to check if there're any crypto related.
will get to you asap.

concerning the chose folder dialog:
using a native comdlg32.dll doesn't help here wether in combination with a native shell32.dll or not..
with native shell32/shlwapi i get a all grey except buttons dialog and without it crashes saying:

Quote

Unhandled exception: page fault on write access to 0x00000000 in 32-bit code (0x40a27121).
In 32-bit mode.
0x40a27121 (SHELL_GetPathFromIDListW+0x21 [pidl.c:1377] in SHELL32.DLL): movw   $0x0,0x0(%eax)
1380            if (_ILIsValue(pidl) || _ILIsFolder(pidl)) {

This post has been edited by Painkiller Jane: 19 March 2004 - 08:14 PM

0

#11 User is offline   Painkiller Jane 

  • Splendid Member
  • PipPipPipPip
  • Group: Members
  • Posts: 104
  • Joined: 23-November 03

Posted 19 March 2004 - 08:13 PM

the fixme messages while running emule:

Quote

fixme:ole:CoRegisterMessageFilter stub
fixme:ole:CoCreateInstance no classfactory created for CLSID {00bb2763-6a77-11d0-a535-00c04fd7d062}, hres is 0x80040150
fixme:ole:CoCreateInstance no classfactory created for CLSID fixme:bitblt:X11DRV_BitBlt potential optimization - client-side DIB copy


are the only ones i get besides the tons looking like

Quote

fixme:hook:NotifyWinEvent (32780,0x1003d,-4,1)-stub!

0

#12 User is offline   mindpirate 

  • Premium Member
  • PipPipPipPipPip
  • Group: Members
  • Posts: 299
  • Joined: 06-January 03

Posted 19 March 2004 - 08:30 PM

Painkiller Jane, on Mar 19 2004, 02:56 PM, said:

do i need a native rsabase.dll?


It certainly wouldn't hurt. How have you determined that secure ID isn't working? Are you just not seeing any red check marks on client icons? The check mark icon is an overlay IIRC, so that could be affected by the icon rendering problems I touched upon in the Known Issues section of the howto. Just in case it's not merely a graphics issue however, I'll set up Ethereal and do some packet sniffing to determine whether there are actually any key exchanges going on.

Quote

concerning the chose folder dialog:
using a native comdlg32.dll doesn't help here wether in combination with a native shell32.dll or not..
with native shell32/shlwapi i get a all grey except buttons dialog and without it crashes saying:

Quote

Unhandled exception: page fault on write access to 0x00000000 in 32-bit code (0x40a27121).
In 32-bit mode.
0x40a27121 (SHELL_GetPathFromIDListW+0x21 [pidl.c:1377] in SHELL32.DLL): movw   $0x0,0x0(%eax)
1380            if (_ILIsValue(pidl) || _ILIsFolder(pidl)) {


I'm seeing the same here. The patches for this on the Wine mailing list may indeed be our only hope on this particular issue.
0

#13 User is offline   Painkiller Jane 

  • Splendid Member
  • PipPipPipPip
  • Group: Members
  • Posts: 104
  • Joined: 23-November 03

Posted 19 March 2004 - 08:41 PM

Quote

How have you determined that secure ID isn't working?


i look at the details dialog of the other clients and ALL of them report secure ident : off or not supported.

while > 94% of the clients in my lists have an emule version > 0.30 they should support secID. assuming all of them have turned it off is kinda, ehm, well not realistic. and there're a few old friends among those clients of which i know for sure that they have their secID turned on.

anyways, i've checked the very same clients from my w2k emule and most of them report secID success.

so i'm pretty sure there's something wrong with the secID and wine/emule.

anyways, will try a native rsabase.dll next.
results asap.

edit: using a native rsabase.dll doesn't make any difference. :/

This post has been edited by Painkiller Jane: 19 March 2004 - 08:58 PM

0

#14 User is offline   mindpirate 

  • Premium Member
  • PipPipPipPipPip
  • Group: Members
  • Posts: 299
  • Joined: 06-January 03

Posted 19 March 2004 - 09:13 PM

cryptkey.dat is nowhere to be found in my eMule config directory, so I have no doubts crypto isn't working under my emulated WinXP environment either.

According to the Wine changelog the rsabase.dll API was just added to Wine on Feb. 17, so they probably have quite a ways to go.

It wouldn't surprise me if rsabase.dll itself imports other libs. I'll decompile it to confirm and discover which additional dlls we may need. Secure ID is a pretty important feature so this needs to be resolved one way or another.

I'll double-check secure ID functionality on CrossOver too. Maybe we can scavenge some code.

This sure is fun isn't it? ;)
0

#15 User is offline   Painkiller Jane 

  • Splendid Member
  • PipPipPipPip
  • Group: Members
  • Posts: 104
  • Joined: 23-November 03

Posted 19 March 2004 - 09:35 PM

well, i don't have any success adding native dlls.
i've tried rsabase + crypt32 + msasn1 and a couple of related dlls.
no luck.

fun? actually it only shows what i've always suspected: wine is still a bad hack (ALPHA software like the wine devs say). good to play with notepad and the like but if it comes to anything more complex...

anyways, if you get lucky lemme know.

cheers,

pkj

PS.: does emule use the ms crypto api at all? i always thought that's what the cryptolib is for which emule statically links. and since that lib is more or less platform independent i don't think it relys on ms crypto stuff.

This post has been edited by Painkiller Jane: 19 March 2004 - 10:54 PM

0

#16 User is offline   mindpirate 

  • Premium Member
  • PipPipPipPipPip
  • Group: Members
  • Posts: 299
  • Joined: 06-January 03

Posted 20 March 2004 - 01:10 PM

Painkiller Jane, on Mar 19 2004, 04:35 PM, said:

PS.: does emule use the ms crypto api at all? i always thought that's what the cryptolib is for which emule statically links. and since that lib is more or less platform independent i don't think it relys on ms crypto stuff.

eMule imports ADVAPI32.CryptAcquireContextA which in turn makes the calls to the Windows registry to locate local crypto services, so unfortunately there doesn't seem to be any way around that.
0

#17 User is offline   Painkiller Jane 

  • Splendid Member
  • PipPipPipPip
  • Group: Members
  • Posts: 104
  • Joined: 23-November 03

Posted 20 March 2004 - 04:36 PM

hrm, that's very unfortunate.
maybe wine needs the linux system to have certain crypto thingies installed?

besides, may i ask you to confirm another annoying behaviour?

plz have a look at your wine/emule's threads and memory usage.
use the webinterface to log in/out of emule a couple of times.
after logging out the last time have a look at your threads/mem usage again.

something unusual?

-pkj

This post has been edited by Painkiller Jane: 20 March 2004 - 05:04 PM

0

#18 User is offline   mindpirate 

  • Premium Member
  • PipPipPipPipPip
  • Group: Members
  • Posts: 299
  • Joined: 06-January 03

Posted 20 March 2004 - 05:12 PM

Painkiller Jane, on Mar 20 2004, 11:36 AM, said:

hrm, that's very unfortunate.
maybe wine needs the linux system to have certain crypto thingies installed?


There is an rsabase.dll.so included in the Wine libs. Just introduced last month so it will probably remain lean on functionality for a while, but I read on the Wine dev list someone is working on emulating the Windows crypto APIs and tying them to GNU's libcrypt on the backend, so that's another possible solution to our problem. I didn't see an indicator of when they expected to have some working code, but I'll make some inquiries.

Quote

besides, may i asked you to confirm another annoying behaviour?

plz have a look at your wine/emule's threads and memory usage.
use the webinterface to log in/out of emule a couple of times.
after logging out the last time have a look at your threads/mem usage again.

something unusual?


I've logged in and out with the web interface several times and kept a close eye on my resources. All the graphs remain pretty flat on the average, and it looks like all memory and threads are being correctly de-allocated when i log out so I don't see anything unusual. No telltale signs of memory leakage.

Here's what I'm seeing in detail:

When I log in with the web interface about 10 MB gets temporarily shifted into virtual memory, and about 1 MB is allocated on the stack for the approximately 6 threads that are created to handle the login tasks (I can't get an accurate count because some of the new threads are killed almost immediately). After about 5 seconds the 10 MB moved to VM is moved back into real memory. When I log out a few new threads are created again to handle the logout tasks, then they all die and a few seconds later all the memory originally allocated on the stack for the web interface has been completely de-allocated and I'm back to the original number of threads and levels of memory usage I had before the logins. (I have 1 GB of DDR400 dual-channel RAM btw.)

What are you seeing?
0

#19 User is offline   Painkiller Jane 

  • Splendid Member
  • PipPipPipPip
  • Group: Members
  • Posts: 104
  • Joined: 23-November 03

Posted 20 March 2004 - 05:23 PM

on my machine wine/emule allocs ~1.5 megs at login.
on log OUT it allocates another ~1.0 meg and spawns a new thread.

the memory and threads don't seem to time out (and deallocate delayed) or such and stay allocated.
so after a few log in/outs my wine/emule consumes pretty much memory at least according to the systemwatch (taskmanager like) thingy which comes with SuSE's kde 3.1.

so basically each time after i logged in and out i end up with 1 new thread and ~2.5 megs more allocated.

could be 'normal' behaviour of the win32 emule, though.
i'm using 0.30e. have to check if the prob is the same on w2k.

-pkj

This post has been edited by Painkiller Jane: 20 March 2004 - 05:27 PM

0

#20 User is offline   mindpirate 

  • Premium Member
  • PipPipPipPipPip
  • Group: Members
  • Posts: 299
  • Joined: 06-January 03

Posted 21 March 2004 - 01:41 PM

Have you waited for, say, 10-15 minutes, then checked to see if the extra threads and memory were finally de-allocated? What you're experiencing may not even be a memory leak, just a slow de-allocation of resources which could be caused by any number of factors, including the particular Linux kernel you're using.

I've made some progress on the crypto problem. Windows uses two different dll's for the same purpose, depending on whether or not you're using the "strong encryption" version of Windows. If you are (you can determine that by checking IE's security settings) then rsabase.dll is not used at all, and is replaced by rsaenh.dll. So in this case, your emulated registry entry:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider\Microsoft Base Cryptographic Provider v1.0]
"Type"=dword:00000001
"Image Path"="rsabase.dll"


should contain the following value for the key Image Path instead:

"Image Path"="rsaenh.dll"


Of course the eMule dll override section of your ~/.wine/config should be modified accordingly, and the proper dll copied into your emulated /Windows/System directory.

I've decompiled rsaenh.dll and found its dependencies, then decompiled some of the dependencies and found more dependencies... to make a long story short I imported all the native versions of the dll dependencies I discovered, but despite this I still haven't been able to make secure ID work in eMule. I have some other ideas so I'm not giving up any time soon. :D

This post has been edited by mindpirate: 21 March 2004 - 01:45 PM

0

  • Member Options

  • (16 Pages)
  • +
  • 1
  • 2
  • 3
  • Last »

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users