Check permission on move destination.

This commit is contained in:
Andrew McMillan 2010-03-06 23:25:30 +13:00
parent 2abf646429
commit 6560ea47a0

View File

@ -25,13 +25,13 @@ if ( ! ini_get('open_basedir') && (isset($c->dbg['ALL']) || (isset($c->dbg['put'
$lock_opener = $request->FailIfLocked();
if ( $request->path == '/' || $request->IsPrincipal() || $request->destination == '' ) {
$request->NeedPrivilege('DAV::unbind', '/');
$request->NeedPrivilege('DAV::unbind');
}
$dest = new DAVResource($request->destination);
if ( $dest->dav_name() == '/' || $dest->IsPrincipal() ) {
$request->NeedPrivilege('DAV::bind', '/');
$dest->NeedPrivilege('DAV::bind');
}
if ( ! $request->overwrite && $dest->Exists() ) {