]> git.saurik.com Git - apple/security.git/blobdiff - OSX/libsecurity_cdsa_plugin/lib/ACabstractsession.h
Security-57740.1.18.tar.gz
[apple/security.git] / OSX / libsecurity_cdsa_plugin / lib / ACabstractsession.h
diff --git a/OSX/libsecurity_cdsa_plugin/lib/ACabstractsession.h b/OSX/libsecurity_cdsa_plugin/lib/ACabstractsession.h
new file mode 100644 (file)
index 0000000..e7fccea
--- /dev/null
@@ -0,0 +1,39 @@
+//
+// AC plugin transition layer.
+// This file was automatically generated. Do not edit on penalty of futility!
+//
+#ifndef _H_ACABSTRACTSESSION
+#define _H_ACABSTRACTSESSION
+
+#include <security_cdsa_plugin/pluginsession.h>
+#include <security_cdsa_utilities/cssmdata.h>
+
+
+namespace Security {
+
+
+//
+// A pure abstract class to define the AC module interface
+//
+class ACAbstractPluginSession {
+public:
+       virtual ~ACAbstractPluginSession();
+  virtual void AuthCompute(const CSSM_TUPLEGROUP &BaseAuthorizations,
+         const CSSM_TUPLEGROUP *Credentials,
+         uint32 NumberOfRequestors,
+         const CSSM_LIST &Requestors,
+         const CSSM_LIST *RequestedAuthorizationPeriod,
+         const CSSM_LIST &RequestedAuthorization,
+         CSSM_TUPLEGROUP &AuthorizationResult) = 0;
+  virtual void PassThrough(CSSM_TP_HANDLE TPHandle,
+         CSSM_CL_HANDLE CLHandle,
+         CSSM_CC_HANDLE CCHandle,
+         const CSSM_DL_DB_LIST &DBList,
+         uint32 PassThroughId,
+         const void *InputParams,
+         void **OutputParams) = 0;
+};
+
+} // end namespace Security
+
+#endif //_H_ACABSTRACTSESSION