| /************************************************************** |
| * |
| * 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>"<<ALL FILES>>"</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>"<<ALL FILES>>"</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 |