All the news that fits, we print.
This is the 350 issue of the Wine Weekly News publication. Its main goal is to put an end to the mystery of the great accept ex bug! It also serves to inform you of what's going on around Wine. Wine is an open source implementation of the Windows API on top of X and Unix. Think of it as a Windows compatibility layer. Wine does not require Microsoft Windows, as it is a completely alternative implementation consisting of 100% Microsoft-free code, but it can optionally use native system DLLs if they are available. You can find more info at www.winehq.org
This week, 75 posts consumed 94 K. There were 39 different contributors. 15 (38%) posted more than once. 22 (56%) posted last week too. The top 5 posters of the week were:
|
News: Wine 1.1.2 | Archive | |
---|---|---|
Wine
Wine 1.1.2 Released The second development branch release since Wine 1.0 was released recently. Courtesy of some excellent summer of code students we're seeing big changes in gdi and the control panel as well as big movements in msxml and direct 3d. Alexandre's shortlog:
The Wine development release 1.1.2 is now available.
WineConf 2008 A friendly reminder for all those who are interested that WineConf 2008 is approaching quickly! Head over to the official page for more information. See you there! |
CUDA Followup: it works! | Archive | |
---|---|---|
CUDA
Seth Shellnut has been hard at work making that CUDA wrapper work and has written in with some success! Ok, I'm pretty sure I've got a working wrapper. Still need to implement a few functions and the direct3d calls but nearly everything is there. If anyone would like to test out different CUDA apps with this and report any feedback it would be much appreciate. I don't have a CUDA enabled card so I can't test anything.
The source files are viewable here,
There was then some discussion about doing actual testing. Sadly it seemed that the wrapper somehow caused CPU usage to spike to 100%. With Stefan Dosinger's help it may be that we found a bug in the linux cuda implementation. Mind Matter writes in with his testing: I have been testing this out with Seth. Yes the wrapper is up and running. I have been able to run the folding@home GPU client for about a week now with comparable performance to the same hardware running under Windows. The main problem as stated before is that both cores (dual core system) are running at 100% and the system is not usable until the client is killed. In Windows this client only uses about 20% or less of a single core to feed the GPU leaving the second core free.
I ran oprofile (first time, never heard of it before) while the client
was running.
213932 54.7876 wine-preloader CPU_CLK_UNHALT...| samples| %| ------------------ 1970113 88.9871 libcuda.so.177.13 160796 7.2629 FahCore_11.exe 30056 1.3576 libc-2.7.so 10169 0.4593 libpthread-2.7.so 9143 0.4130 libcudart.so.2.0 8473 0.3827 libfreetype.so.6.3.16 5065 0.2288 kernel32.dll.so 4726 0.2135 ntdll.dll.so 3578 0.1616 [vdso] (tgid:19882 range:0xffffe000-0xfffff000) 3458 0.1562 cudart.dll.soI have attached the full output. I assume this says that libcuda is using 88% of the CPU and FahCore_11.exe is using 7%. When I watch the processes in the KDE system monitor it shows FahCore_11.exe using ~50% (one full core) and Xorg using ~50% (second core). I don't see from oprofile how and why xorg is using a whole core. Stefan's comments: Your result shows that the CPU time is spent in the Cuda driver(on behalf of both the FAH and X11 processes). I am afraid I can't help you with that. I recommend you to contact Nvidia on this issue. |
MSI Extensions | Archive | |
---|---|---|
Installers
Scott Ritchie writes in with an interesting idea about MSI installers. The thread didn't seem to end in any action items but its an interesting thought nonetheless.
Just a crazy thought, but...
This way, a single .msi file could be a true universal installer for
both Windows machines and Linux machines. Moreover, there'd be less of
a need to create custom Wine packages for applications like Picassa
since a lot of that functionality would be abstracted into Wine itself.
Reece Dunn follows up with more information about MSIs
That sounds interesting.
Stefan Dösinger writes in with his thoughts: Hm. I sort of like and dislike the idea at the same time Regarding desktop integration with win32 apps is concerned, I think those problems should be fixed in Wine. I think all the things we need to set up the shortcuts, filetypes, etc. properly are provided by the Windows app as-is. Installing into a different wineprefix won't work, I think. By the time you have msi started up, a wineprefix decision is done already. What would be cool though, is if Wine's msi could install a completely Wine-independent native Linux application(or, install a Winelib app that brings its own Wine). That way one could build an universal package that contains a Win32 and native Linux app at the same time. |
Blitting speedups | Archive | |
---|---|---|
Optimizations
Aric Stewart noticed an interesting inefficiency in some dsruface code and attempts a fix:
Hi there,
I threw together this patch, which seems far to simple to be at all correct, and suddenly i was getting 28.8 frames per second. I know it is not fully correct because a a portion of the game (drawn by FastBlt it looks like) stopped rendering correctly with this patch. But I thought it may get someone who knows that area better thinking about it. If we can optimize this then a number of the scrolling shooter games will become playable. I am told that these style games are still very popular here. And if said people in the know where to busy, maybe they could give me some pointers on if I have the right approach or not. If anyone is interested I can provide an archive with the benchmark program in it. -aric H. Verbeet pointed out some issues with the patch in that it breaks some bliting. This will break things like checking for out of surface rectangles, clipping and overlapping blits. Stefan knows this part of the code better than me, but I don't think there's anything wrong with the concept of the patch. As it turns out Aric's patch is indeed on its way to being correct, and with a couple of back and fourths on the mailing list Aric submitted a working patch to which Stefan signed off on. |
Digital Signature Checking in WINE | ||
---|---|---|
Juan Lang has recently sent in a few patches and an explanation as to how Wine will handle digital certificates. Folks, now that there's a bit more code in Wine that "verifies" file signatures, I wanted to make sure everyone understands its current limitations. 1. It's only implemented for PE files and .cab files. Windows supports more formats, of course, notably MSI files (see bug 11759, http://bugs.winehq.org/show_bug.cgi?id=11759 ) 2. Wine doesn't actually verify that the signature in the file matches the file being checked. Any valid certificate could be put into a file, and Wine would accept it. I don't consider this a serious security flaw, because I think the concept of a signature validating anything useful about a binary is flawed. Hence I'm not terribly motivated to fix it.
Flame away, Of course this caused a couple disturbances. Richie Hindle:
I assume you don't ship signed software. If you did, you might see things
differently. Unless I've misunderstood, you've made this possible:
Juan's response: No, you're not wrong, and this email was my attempt at being honest. I'll point out that there are other avenues of attack that can lead Wine to "mislead" the user about who signed an executable. However, in my professional opinion, a signature on a binary isn't worth the bits its encoded in. Any software, signed or not, can contain vulnerabilities. With the size and complexities of today's software, and with signatures only being affixed to the largest and most complex software, I'll state that in my opinion it's the signed software which is more at risk than the unsigned software. If you believe a piece of software signed by Microsoft (or Apple, or...) is any more trustworthy than some random piece of code, you needn't look far to disabuse yourself of that notion. Even so, an exploit is far more likely to target Windows, and perhaps to fail on Wine, than it is to target Wine. I'm not attempting to hide behind a security through obscurity defense. I'm pointing out that even if digital signatures meant anything--and I maintain that they don't--the probability of their being attacked in Wine is very low. Therefore, from a risk management point of view, there's no compelling reason to fix it. I may fix it someday, but as I said before that wouln't remove all code signing vulnerabilities from Wine, it would only remove this particular one. If you disagree, patches are welcome. Paul Millar brings in another point, about the rational behind digital signatures: Whether the code operates correctly (e.g., doesn't crash, taking out your filesystem and burning down your house) isn't under scrutiny. You are quite right in saying that a software having a valid digital signature from Microsoft makes no statement whether the software will work. Maybe it does, maybe it doesn't. But, this isn't what digital signatures are about. Instead, signed software attempts to prevent silent injection of Trojan software. The question is rather: did this software which claims to come from Microsoft really do so? Has it been hacked to include some "additional functionality"? A digital signature makes one precise statement: that someone (or some agent) with access to the corresponding private key decided to sign the software.
If you also trust that:
1. you have the correct public key for the certificating authority
(CA) that issued the code-signing certificate,
Juan's final point is that he agrees. The certificates don't promise anything about how functional software is, but merely give a good inclination as to whom its from. Sure. It's just my professional opinion that a signature on an application provides no security. Zip, nada. It does give you some assurance of who it came from, that's all. |
AcceptEX Implementation | Archive | |
---|---|---|
AcceptEX Implementation
As many of WWN's readers will be familiar with there is an open bug concerning acceptex which affects Warcraft 3. In fact, this bug has more than 250 comments and 84 votes, by far the most votes of any bug. Scott Lindeneau sends in a patch to wine-patches recently with a seemingly working implementation of the necessary functions.
Implements locatable async commands that can be notified(Terminated) using a locator (obj_handle_t) --- include/wine/server_protocol.h | 34 +++++++++++- server/async.c | 32 +++++++++-- server/fd.c | 30 ++++++++++ server/file.h | 7 ++ server/protocol.def | 14 +++++ server/request.h | 4 + server/sock.c | 120 +++++++++++++++++++++++++++++++--------- server/trace.c | 23 ++++++++ 8 files changed, 231 insertions(+), 33 deletions(-) Implements AcceptEx and GetAcceptExSockaddrs. --- dlls/mswsock/mswsock.spec | 4 +- dlls/ws2_32/socket.c | 250 ++++++++++++++++++++++++++++++++++++++++ dlls/ws2_32/ws2_32.spec | 2 + include/wine/server_protocol.h | 2 +- 4 files changed, 255 insertions(+), 3 deletions(-) |
Weekly AppDB/BugZilla Status Changes | Archive | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
AppDB / BugZilla
*Disclaimer: These lists of changes are automatically generated by information entered into the AppDB. These results are subject to the opinions of the users submitting application reviews. The Wine community does not guarantee that even though an application may be upgraded to 'Gold' or 'Platinum' in this list, that you will have the same experience and would provide a similar rating.
Updates by App Maintainers
Updates by the Public
|
All Kernel Cousin issues and summaries are copyright their original authors, and distributed
under the terms of the
GNU General Public License,
version 2.0.