📄 transportsecurity_impl.h
字号:
remove_creds_from_default_creds_list(const char* creds_id); void remove_creds_from_own_creds_list(const char* creds_id); std::vector<TransportSecurity::CredentialsAcquirerFactory_ptr> factories_; typedef std::vector<TransportSecurity::CredentialsAcquirerFactory_ptr>::iterator fact_iter_type; TransportSecurity::OwnCredentialsList own_creds_list_; TransportSecurity::OwnCredentialsList default_creds_list_; std::vector<TransportSecurity::InitiatingContext_var> init_contexts_; typedef std::vector<TransportSecurity::InitiatingContext_var>::iterator ic_iter_type; }; class SecurityCurrent_impl : virtual public TransportSecurity::SecurityCurrent, virtual public CORBA::LocalObject { public: SecurityCurrent_impl(); virtual TransportSecurity::ClientCredentials_ptr client_credentials(); // extension void push_client_credentials(TransportSecurity::ClientCredentials_ptr creds); void pop_client_credentials(); private: typedef std::stack<TransportSecurity::ClientCredentials_var> CCStack;#ifndef HAVE_THREADS CCStack client_credentials_stack_;#else // HAVE_THREADS MICOMT::Thread::ThreadKey thread_key_;#endif // HAVE_THREADS }; class SecurityManager_impl : virtual public TransportSecurity::SecurityManager, virtual public CORBA::LocalObject { public: SecurityManager_impl (CredentialsCurator_impl* curator, CORBA::Boolean enabled); virtual TransportSecurity::CredentialsCurator_ptr credentials_curator(); virtual TransportSecurity::TargetCredentials_ptr get_target_credentials(CORBA::Object_ptr the_object); virtual TransportSecurity::ContextEstablishmentPolicy_ptr create_context_estab_policy (SL3CM::CredsDirective creds_directive, const TransportSecurity::OwnCredentialsList& creds_list, SL3CM::FeatureDirective use_client_auth, SL3CM::FeatureDirective use_target_auth, SL3CM::FeatureDirective use_confidentiality, SL3CM::FeatureDirective use_integrity); virtual TransportSecurity::ObjectCredentialsPolicy_ptr create_object_creds_policy (const TransportSecurity::OwnCredentialsList& creds_list); // extension virtual CORBA::Boolean security_enabled(); private: CredentialsCurator_impl* curator_; CORBA::Boolean security_enabled_; }; class InitiatingContext_impl : virtual public MICOSL3_TransportSecurity::TargetCredentials_impl, virtual public MICOSL3_SecurityLevel3::TargetCredsHolder, virtual public TransportSecurity::InitiatingContext, virtual public CORBA::LocalObject { public: InitiatingContext_impl (TransportSecurity::OwnCredentials_ptr parent_credentials); virtual ~InitiatingContext_impl(); virtual CORBA::Boolean is_usable (const char* host, CORBA::ULong port, SL3CM::CredsDirective creds_directive, SL3CM::FeatureDirective client_authentication, SL3CM::FeatureDirective target_authentication, SL3CM::FeatureDirective confidentiality, SL3CM::FeatureDirective integrity, TransportSecurity::CSIVersion csi_version, const IOP::TaggedComponentSeq& transport_components); virtual void shutdown(); // CredentialsObserver operations virtual char* name(); virtual void create_credentials(const char* id); virtual void relinquish_credentials(const char* id); // extension void notify_establish_context(); void notify_close_context(); void notify_destroy_context(); private: std::vector<SL3OM::InitiatingContextObserver_var> context_observers_; std::vector<SL3OMExt::InitiatingContextDestroyObserver_var> destroy_observers_; }; class AcceptingContext_impl : virtual public ClientCredentials_impl, virtual public MICOSL3_SecurityLevel3::ClientCredsHolder, virtual public TransportSecurity::AcceptingContext, virtual public CORBA::LocalObject { public: AcceptingContext_impl (TransportSecurity::OwnCredentials_ptr parent_credentials); virtual ~AcceptingContext_impl(); virtual TransportSecurity::IdentityTokenGenerator_ptr create_client_identity_token_generator(); // CredentialsObserver operations virtual char* name(); virtual void create_credentials(const char* id); virtual void relinquish_credentials(const char* id); // extension void notify_establish_context(); void notify_close_context(); void notify_destroy_context(); private: std::vector<SL3OM::AcceptingContextObserver_var> context_observers_; std::vector<SL3OMExt::AcceptingContextDestroyObserver_var> destroy_observers_; }; class TransportInitiator_impl : virtual public CredentialsInitiator_impl, virtual public TransportSecurity::TransportInitiator, virtual public CORBA::LocalObject { public: virtual TransportSecurity::ContextEstablisherList* context_establishers(); virtual char* host(); virtual CORBA::ULong low_port(); virtual CORBA::ULong high_port(); virtual void increment_work(); virtual void decrement_work(); virtual CORBA::Boolean supports_invoc_options (CSIIOP::AssociationOptions invocation_options_supported, CSIIOP::AssociationOptions invocation_options_required); virtual CORBA::Boolean supports_csi_version(TransportSecurity::CSIVersion csi_version); virtual CORBA::Boolean is_usable (const char* host, CORBA::ULong port, SL3CM::CredsDirective creds_directive, SL3CM::FeatureDirective client_authentication, SL3CM::FeatureDirective target_authentication, SL3CM::FeatureDirective confidentiality, SL3CM::FeatureDirective integrity, TransportSecurity::CSIVersion csi_version, const IOP::TaggedComponentSeq& transport_components); virtual TransportSecurity::ContextEstablisherList* create_context_establishers (const char* host, CORBA::ULong port, SL3CM::CredsDirective creds_directive, SL3CM::FeatureDirective client_authentication, SL3CM::FeatureDirective target_authentication, SL3CM::FeatureDirective confidentiality, SL3CM::FeatureDirective integrity, TransportSecurity::CSIVersion csi_version, const IOP::TaggedComponentSeq& transport_components); virtual TransportSecurity::ContextEstablisher_ptr get_context_establisher(const char* id); protected: CORBA::String_var host_; CORBA::ULong low_port_; CORBA::ULong high_port_; }; class TransportAcceptor_impl : virtual public CredentialsAcceptor_impl, virtual public TransportSecurity::TransportAcceptor, virtual public CORBA::LocalObject { public: virtual CORBA::StringSeq* hosts(); CORBA::ULong port(); virtual CSIIOP::AssociationOptions options_required(); virtual CSIIOP::AssociationOptions options_supported(); virtual void increment_work(); virtual void decrement_work(); virtual IOP::TaggedComponentSeq* transport_components(TransportSecurity::CSIVersion csi_version); virtual CORBA::Boolean transport_matches (const char* host, CORBA::ULong port, const IOP::TaggedComponentSeq& transport_components); virtual TransportSecurity::AcceptingContext_ptr accept(CORBA::Boolean block); virtual void shutdown(); virtual void enable(); protected: CORBA::StringSeq hosts_; CORBA::ULong port_; CSIIOP::AssociationOptions options_required_; CSIIOP::AssociationOptions options_supported_; }; class ContextEstablishmentPolicy_impl : virtual public TransportSecurity::ContextEstablishmentPolicy, virtual public CORBA::LocalObject { public: ContextEstablishmentPolicy_impl (SL3CM::CredsDirective creds_directive, const TransportSecurity::OwnCredentialsList& creds_list, SL3CM::FeatureDirective use_client_auth, SL3CM::FeatureDirective use_target_auth, SL3CM::FeatureDirective use_confidentiality, SL3CM::FeatureDirective use_integrity); virtual TransportSecurity::OwnCredentialsList* creds_list(); virtual SL3CM::CredsDirective creds_directive(); virtual SL3CM::FeatureDirective use_client_auth(); virtual SL3CM::FeatureDirective use_target_auth(); virtual SL3CM::FeatureDirective use_confidentiality(); virtual SL3CM::FeatureDirective use_integrity(); // Policy operations virtual CORBA::PolicyType policy_type(); virtual CORBA::Policy_ptr copy(); virtual void destroy(); private: TransportSecurity::OwnCredentialsList creds_list_; SL3CM::CredsDirective creds_directive_; SL3CM::FeatureDirective use_client_auth_; SL3CM::FeatureDirective use_target_auth_; SL3CM::FeatureDirective use_confidentiality_; SL3CM::FeatureDirective use_integrity_; }; class ObjectCredentialsPolicy_impl : virtual public TransportSecurity::ObjectCredentialsPolicy, virtual public CORBA::LocalObject { public: ObjectCredentialsPolicy_impl (const TransportSecurity::OwnCredentialsList& creds_list); virtual TransportSecurity::OwnCredentialsList* creds_list(); // Policy operations virtual CORBA::PolicyType policy_type(); virtual CORBA::Policy_ptr copy(); virtual void destroy(); private: TransportSecurity::OwnCredentialsList creds_list_; }; // // various supporting classes // class ORBInitializer : virtual public PortableInterceptor::ORBInitializer, virtual public CORBA::LocalObject { public: ORBInitializer(); virtual ~ORBInitializer(); virtual void pre_init(PortableInterceptor::ORBInitInfo_ptr info); virtual void post_init(PortableInterceptor::ORBInitInfo_ptr info); }; class CredentialsCuratorImplUser { public: virtual ~CredentialsCuratorImplUser() {} virtual void creds_curator_impl(CredentialsCurator_impl* curator) = 0; }; class TSServerRequestInterceptor : virtual public PortableInterceptor::ServerRequestInterceptor, virtual public CORBA::LocalObject { public: TSServerRequestInterceptor (SecurityManager_impl* secman, SecurityCurrent_impl* current, const char* name); virtual char* name(); virtual void destroy(); virtual void receive_request_service_contexts (PortableInterceptor::ServerRequestInfo_ptr ri); virtual void receive_request(PortableInterceptor::ServerRequestInfo_ptr ri); virtual void send_reply(PortableInterceptor::ServerRequestInfo_ptr ri); virtual void send_exception(PortableInterceptor::ServerRequestInfo_ptr ri); virtual void send_other(PortableInterceptor::ServerRequestInfo_ptr ri); private: SecurityManager_impl* secman_; SecurityCurrent_impl* current_; CORBA::String_var name_; };} // MICOSL3_TransportSecurity#endif // __TRANSPORTSECURITY_IMPL_H__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -