blob: 5cae46ed53d25309b630051ec7ef3ee793a630cc [file] [log] [blame]
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef __com_sun_star_io_FilePermission_idl__
#define __com_sun_star_io_FilePermission_idl__
//=============================================================================
module com { module sun { module star { module io {
//=============================================================================
/** This permission represents access to a file or directory.
A FilePermission consists of a file url and a set of actions valid for that url.
<p>
The path of the file url that ends in <code>"/*"</code> indicates all the files and
directories contained in that directory. A path that ends with <code>"/-"</code>
indicates (recursively) all files and subdirectories contained in that
directory. A file url string consisting of the special token
<code>"&lt;&lt;ALL FILES&gt;&gt;"</code> matches any file.
<br>
Note: A file url string consisting of a single <code>"*"</code> indicates all the files
in the current directory, while a string consisting of a single <code>"-"</code> indicates
all the files in the current directory and (recursively) all files and
subdirectories contained in the current directory.
<br>
The actions to be granted is a list of one or more comma-separated keywords.
The possible keywords are <code>"read"</code>, <code>"write"</code>,
<code>"execute"</code>, and <code>"delete"</code>.
Their meaning is defined as follows:
<ul>
<li><code>read</code> -- read permission</li>
<li><code>write</code> -- write permission</li>
<li><code>execute</code> -- execute permission</li>
<li><code>delete</code> -- delete permission</li>
</ul><br>
The actions string is processed case-insensitive.
</p>
@attention
Be careful when granting FilePermissions. Think about the implications of
granting read and especially write access to various files and directories.
The <code>"&lt;&lt;ALL FILES&gt;&gt;"</code> permission with write action is
especially dangerous. This grants permission to write to the entire file system.
@since OpenOffice 1.1.2
*/
published struct FilePermission
{
/** target file url
*/
string URL;
/** comma separated actions list
*/
string Actions;
};
//=============================================================================
}; }; }; };
#endif