00001 namespace ArcSec {
00002
00004 typedef enum {
00006 DECISION_PERMIT = 0,
00008 DECISION_DENY = 1,
00010 DECISION_INDETERMINATE = 2,
00012 DECISION_NOT_APPLICABLE = 3
00013 } Result;
00014
00015 inline std::ostream& operator<<(std::ostream& o,Result r) {
00016 switch(r) {
00017 case DECISION_PERMIT: return o<<"Permit";
00018 case DECISION_DENY: return o<<"Deny";
00019 case DECISION_INDETERMINATE: return o<<"Indeterminate";
00020 case DECISION_NOT_APPLICABLE: return o<<"Not Applicable";
00021 };
00022 return o<<"Undefined";
00023 }
00024
00026 enum MatchResult {
00028 MATCH = 0,
00030 NO_MATCH = 1,
00034 INDETERMINATE = 2
00035 };
00036
00038 typedef struct {
00039 Arc::XMLNode node;
00040 std::string effect;
00041 } EvalResult;
00042
00043 }
00044