How do I get the unix filename for a wine handle?
Kuba Ober
kuba at mareimbrium.org
Mon Jun 26 07:34:09 CDT 2006
On Saturday 24 June 2006 07:06, Christoph Probst wrote:
> Hi.
>
> Alexandre Julliard wrote:
> > You can't do that in general. In Unix a file can have multiple names,
> > or even none at all, there's simply no way to get a filename from a
> > handle. On Linux you can use /proc/self/fd but that's not very
> > portable.
>
> So what do you think about the solution that the wineserver stores the
> filename in the file object when the object is created?
>
> Just like wine_server_handle_to_fd() there would be a
> wine_server_handle_to_filename() that returns the filename.
A way to possibly do what you want to do is to duplicate the file handle, and
to hack on ClamAV to scan a file given a handle to it.
On unices you can open a file, hold a handle to it, and then remove the
directory entry (rm file) -- the file will exist on the disk without a
directory entry, for as long as the file handle is open. I don't think you
could do that under e.g. Windows, so Unix is different here.
In general the only way to get at a file knowing its handle is to use a
duplicate handle. That'd be the only robust way AFAIK.
Cheers, Kuba
More information about the wine-devel
mailing list