summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/Security/SL2_SecurityManager.h
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/Security/SL2_SecurityManager.h')
-rw-r--r--TAO/orbsvcs/orbsvcs/Security/SL2_SecurityManager.h26
1 files changed, 19 insertions, 7 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Security/SL2_SecurityManager.h b/TAO/orbsvcs/orbsvcs/Security/SL2_SecurityManager.h
index 5646410dac0..32da7a31219 100644
--- a/TAO/orbsvcs/orbsvcs/Security/SL2_SecurityManager.h
+++ b/TAO/orbsvcs/orbsvcs/Security/SL2_SecurityManager.h
@@ -58,7 +58,7 @@ namespace TAO
/*! Constructor */
AccessDecision (/* not yet known */);
~AccessDecision (void);
-
+
virtual ::CORBA::Boolean access_allowed (
const ::SecurityLevel2::CredentialsList & cred_list,
::CORBA::Object_ptr target,
@@ -76,9 +76,14 @@ namespace TAO
virtual ::CORBA::Boolean default_decision (void);
virtual void default_decision (::CORBA::Boolean d);
- virtual void add_object (::CORBA::Object_ptr obj,
- ::CORBA::Boolean allow_insecure_access);
- virtual void remove_object (::CORBA::Object_ptr obj);
+ virtual void add_object (const char * orbid,
+ const ::CORBA::OctetSeq & adapter_id,
+ const ::CORBA::OctetSeq & object_id,
+ ::CORBA::Boolean allow_insecure_access);
+
+ virtual void remove_object (const char * orbid,
+ const ::CORBA::OctetSeq & adapter_id,
+ const ::CORBA::OctetSeq & object_id);
private:
/*!
@@ -112,7 +117,7 @@ namespace TAO
CORBA::ULong hash() const;
// operator kind of like a "toString()" for debug statements
- operator const char* () const;
+ operator const char * () const;
};
typedef ReferenceKeyType OBJECT_KEY;
// This is typedef'd because we might try to do something fancier
@@ -128,7 +133,7 @@ namespace TAO
ACE_Equal_To<OBJECT_KEY>,
ACE_Null_Mutex> // not sure this is right
ACCESS_MAP_TYPE;
-
+
ACCESS_MAP_TYPE access_map_;
// Lock for accessing the map. It may be possible to get away with
@@ -139,11 +144,18 @@ namespace TAO
private:
/*!
* @brief Encapsulates a TAO-specific way to do object_to_string() without having an ORB reference handy.
- *
+ *
* @note If OBJECT_KEY changes as described above, this should change
* so that it generates an OBJECT_KEY.
*/
OBJECT_KEY map_key_from_objref (CORBA::Object_ptr obj);
+
+ //
+ // This is the private implementation that is common to both
+ // access_allowed and access_allowed_ex.
+ ::CORBA::Boolean access_allowed_i (OBJECT_KEY& key,
+ const char *operation_name);
+
};
/**