00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef TAO_SSLIOP_TARGET_CREDENTIALS_H
00014 #define TAO_SSLIOP_TARGET_CREDENTIALS_H
00015
00016 #include "ace/pre.h"
00017
00018 #include "orbsvcs/SSLIOP/SSLIOP_Export.h"
00019
00020 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00021 #pragma once
00022 #endif
00023
00024 #include "orbsvcs/SSLIOP/SSLIOP_Credentials.h"
00025
00026 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00027
00028 namespace TAO
00029 {
00030 namespace SSLIOP
00031 {
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041 class TAO_SSLIOP_Export TargetCredentials
00042 : public virtual SecurityLevel3::TargetCredentials,
00043 public virtual SSLIOP_Credentials
00044 {
00045 public:
00046
00047 TargetCredentials (::X509 *cert, ::EVP_PKEY *evp);
00048
00049
00050
00051
00052
00053
00054
00055
00056 virtual SecurityLevel3::CredentialsType creds_type ();
00057
00058
00059
00060
00061
00062
00063
00064
00065
00066 virtual char * context_id (void);
00067
00068 virtual SecurityLevel3::Principal * client_principal ();
00069
00070 virtual SecurityLevel3::StatementList * client_supporting_statements ();
00071
00072 virtual SecurityLevel3::ResourceNameList * client_restricted_resources ();
00073
00074 virtual SecurityLevel3::Principal * target_principal ();
00075
00076 virtual SecurityLevel3::StatementList * target_supporting_statements ();
00077
00078 virtual SecurityLevel3::ResourceNameList * target_restricted_resources ();
00079
00080 virtual SecurityLevel3::OwnCredentials_ptr parent_credentials ();
00081
00082 virtual CORBA::Boolean client_authentication (void);
00083
00084 virtual CORBA::Boolean target_authentication (void);
00085
00086 virtual CORBA::Boolean confidentiality (void);
00087
00088 virtual CORBA::Boolean integrity (void);
00089
00090 virtual CORBA::Boolean target_embodied (void);
00091
00092 virtual CORBA::Boolean target_endorsed (void);
00093
00094 virtual void release (void);
00095
00096
00097 };
00098 }
00099 }
00100
00101 TAO_END_VERSIONED_NAMESPACE_DECL
00102
00103 #include "ace/post.h"
00104
00105 #endif