Jump to content

Access denied error with junction point (hard link) in path


mgmchenry

Recommended Posts

Detailed description. Real bug. Probably rare in the wild. Easy to reproduce. Shouldn't be hard to fix.

I found that if I attempted to download a torrent without manually creating the sub-directory structure, the torrent would error out with a message like "Error: Access is denied".

Spent hours following threads online, fiddling with permissions and getting nowhere before I decided to use Sysinternals filemon to watch what was happening.

When the torrent is started, uTorrent checks to see if each file and folder included in the torrent exists, and the system reports "file not found"

Then uTorrent tries to create the directories starting at the root of the tree.

Let's say I tell my torrent to download to X:\SomePath\SomeHardLink\DownloadFolder\ThisTorrent

"X:\SomePath\SomeHardLink\DownloadFolder\" exists, but the subdirectory does not.

uTorrent will first try to create "X:\SomePath\" and filemon reports "Name Collision" because the directory already exists.

Then when uTorrent tries to create "X:\SomePath\SomeHardLink", filemon does not report "Name Collision", but instead reports "Access Is Denied".

"SomeHardLink" is a junction point that links to a folder on another logical volume.

the uTorrent client is running on an XP SP3 VM (hyper-V). "X:" is a file share on a Windows Server 2008R2 server. The download directory is on that fileshare, but the path includes a junction point. (I like to segregate certain types of data without having to add extra drives and shares into the mix).

The original 2008 Server had the same problem. Server 2003 did not. When I first upgraded a couple years ago, this issue came up. I had hoped 2008 R2 would help, but it didn't.

If I run the uTorrent client on a Windows Server 2008 instance (still accessing a remote file share with a junction point in the path), I do *not* have this problem.\

I haven't tried putting the uTorrent client on Vista or Windows 7.

The code that creates the directory structure just needs to handle things slightly differently. Specifically, don't try to create a directory that already exists.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...