Remote Call Framework 3.3
Schannel.hpp
1 
2 //******************************************************************************
3 // RCF - Remote Call Framework
4 //
5 // Copyright (c) 2005 - 2022, Delta V Software. All rights reserved.
6 // https://www.deltavsoft.com
7 //
8 // RCF is distributed under dual licenses - closed source or GPL.
9 // Consult your particular license for conditions of use.
10 //
11 // If you have not purchased a commercial license, you are using RCF under GPL terms.
12 //
13 // Version: 3.3
14 // Contact: support <at> deltavsoft.com
15 //
16 //******************************************************************************
17 
18 #ifndef INCLUDE_RCF_SCHANNEL_HPP
19 #define INCLUDE_RCF_SCHANNEL_HPP
20 
21 #include <RCF/Filter.hpp>
22 #include <RCF/SspiFilter.hpp>
23 #include <RCF/Tchar.hpp>
24 
25 #include <schnlsp.h>
26 
27 namespace RCF {
28 
29  class SchannelServerFilter : public SspiServerFilter
30  {
31  public:
32  SchannelServerFilter(
33  SspiCredentialsPtr credentialsPtr,
34  RcfServer & server,
35  ULONG contextRequirements);
36 
37  int getFilterId() const;
38  };
39 
40  class SchannelFilterFactory : public FilterFactory
41  {
42  public:
43  SchannelFilterFactory();
44  FilterPtr createFilter(RcfServer & server);
45  int getFilterId();
46 
47  private:
48  Mutex mCredentialsMutex;
49  SspiCredentialsPtr mCredentialsPtr;
50  };
51 
52  class RCF_EXPORT SchannelClientFilter : public SspiClientFilter
53  {
54  public:
55  SchannelClientFilter(ClientStub * pClientStub);
56  int getFilterId() const;
57  };
58 
59  typedef SchannelClientFilter SchannelFilter;
60 
61 } // namespace RCF
62 
63 #endif // ! INCLUDE_RCF_SCHANNEL_HPP
Definition: AmiIoHandler.hpp:23