Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:01:23

0001 /*
0002   Copyright @ 1999 ImageMagick Studio LLC, a non-profit organization
0003   dedicated to making software imaging solutions freely available.
0004   
0005   You may not use this file except in compliance with the License.  You may
0006   obtain a copy of the License at
0007   
0008     https://imagemagick.org/script/license.php
0009   
0010   Unless required by applicable law or agreed to in writing, software
0011   distributed under the License is distributed on an "AS IS" BASIS,
0012   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
0013   See the License for the specific language governing permissions and
0014   limitations under the License.
0015 
0016   MagickCore security policy methods.
0017 */
0018 #ifndef MAGICKCORE_POLICY_H
0019 #define MAGICKCORE_POLICY_H
0020 
0021 #include "MagickCore/pixel.h"
0022 #include "MagickCore/exception.h"
0023 
0024 #if defined(__cplusplus) || defined(c_plusplus)
0025 extern "C" {
0026 #endif
0027 
0028 typedef enum
0029 {
0030   UndefinedPolicyDomain,
0031   CoderPolicyDomain,
0032   DelegatePolicyDomain,
0033   FilterPolicyDomain,
0034   PathPolicyDomain,
0035   ResourcePolicyDomain,
0036   SystemPolicyDomain,
0037   CachePolicyDomain,
0038   ModulePolicyDomain
0039 } PolicyDomain;
0040 
0041 typedef enum
0042 {
0043   UndefinedPolicyRights = 0x00,
0044   NoPolicyRights = 0x00,
0045   ReadPolicyRights = 0x01,
0046   WritePolicyRights = 0x02,
0047   ExecutePolicyRights = 0x04,
0048   AllPolicyRights = 0xff
0049 } PolicyRights;
0050 
0051 typedef struct _PolicyInfo
0052   PolicyInfo;
0053 
0054 extern MagickExport char
0055   *GetPolicyValue(const char *),
0056   **GetPolicyList(const char *,size_t *,ExceptionInfo *);
0057 
0058 extern MagickExport const PolicyInfo
0059   **GetPolicyInfoList(const char *,size_t *,ExceptionInfo *);
0060 
0061 extern MagickExport MagickBooleanType
0062   IsRightsAuthorized(const PolicyDomain,const PolicyRights,const char *),
0063   ListPolicyInfo(FILE *,ExceptionInfo *),
0064   SetMagickSecurityPolicy(const char *,ExceptionInfo *),
0065   SetMagickSecurityPolicyValue(const PolicyDomain,const char *,const char *,
0066     ExceptionInfo *);
0067 
0068 #if defined(__cplusplus) || defined(c_plusplus)
0069 }
0070 #endif
0071 
0072 #endif