Main Page | Modules | Namespace List | Class Hierarchy | Data Structures | Directories | File List | Namespace Members | Data Fields | Globals

pm_perms.h

Go to the documentation of this file.
00001 /********************************************************************
00002 
00003 Copyright 2006, ACCESS Systems Americas, Inc. All rights reserved.
00004 
00005 The contents of this file are subject to the Mozilla Public License Version
00006 1.1 (the "License"); you may not use this file except in compliance with
00007 the License. You may obtain a copy of the License at
00008 http://www.mozilla.org/MPL/
00009 
00010 Software distributed under the License is distributed on an "AS IS" basis,
00011 WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
00012 for the specific language governing rights and limitations under the
00013 License.
00014 
00015 The Original Code is the entire contents of this file.
00016 
00017 The Initial Developer of the Original Code is ACCESS Systems Americas, Inc.
00018 
00019 Portions created by ACCESS Systems Americas, Inc. are Copyright © 2006. All
00020 Rights Reserved.
00021 
00022 Contributor(s): none.
00023 
00024 ********************************************************************/
00025 
00026 #define PERM_ADD_STORE_POLICY "com.access.bundlemgr.add_store"
00027 #define PERM_DELETE_STORE_POLICY "com.access.bundlemgr.delete_store"
00028 #define PERM_INCREF_POLICY "com.access.bundlemgr.incref"
00029 #define PERM_DECREF_POLICY "com.access.bundlemgr.decref"
00030 #define PERM_OPEN_POLICY "com.access.bundlemgr.open"
00031 #define PERM_HOLD_NOTIFICATIONS_POLICY "com.access.bundlemgr.hold_notifications"
00032 #define PERM_WIPE_POLICY "com.access.bundlemgr.wipe"
00033 #define PERM_RW_PATHNAME_POLICY "com.access.bundlemgr.rw_pathname"
00034 #define PERM_RW_DELETE_POLICY "com.access.bundlemgr.rw_delete"
00035 
00036 // These defines refer to columns in the 'store' table, which can be
00037 // set when the store is created. When an operation on a particular
00038 // store is tried, a policy column is read, and if is not NULL, then
00039 // the column contents are used as a string containing a policy name,
00040 // which is given to the SPF to verify whether the caller should be
00041 // permitted a particular operation on that store. Note the indirection:
00042 // the SPF policy names are given when the store is created, and are
00043 // not inherant in the Bundle Manager. If a column is NULL, there is
00044 // no policy name, and permission is _granted_ by default.
00045 #define PERM_REGISTER_POLICY_COLUMN "register_policy"
00046 #define PERM_UNREGISTER_POLICY_COLUMN "unregister_policy"
00047 #define PERM_DELETE_POLICY_COLUMN "delete_policy"
00048 #define PERM_INSTALL_POLICY_COLUMN "install_policy"
00049 #define PERM_SCAN_POLICY_COLUMN "scan_policy"
00050 
00051 extern gboolean has_permission(AlpConnection * con, const char * policy_name);
00052 extern gboolean has_store_permission_by_store(AlpConnection * con, const char * policy_name_column, const char * store_name);
00053 extern gboolean has_store_permission_by_bundle(AlpConnection * con, const char * policy_name_column, AlpBundle index);
00054 
00055 
00056 

Generated on Sat Dec 16 20:29:47 2006 for hiker-0.9 by  doxygen 1.4.4