ReactOS  0.4.15-dev-1201-gb2cf5a4
usermode.c
Go to the documentation of this file.
1 /*
2  * User-mode functions of the SChannel security provider
3  *
4  * Copyright 2007 Yuval Fledel
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19  */
20 
21 #include <stdarg.h>
22 
23 #include "ntstatus.h"
24 #define WIN32_NO_STATUS
25 #include "windef.h"
26 #include "winbase.h"
27 #include "sspi.h"
28 #include "ntsecapi.h"
29 #include "ntsecpkg.h"
30 
31 #include "wine/debug.h"
32 
34 
36 { {
37  NULL, /* InstanceInit */
38  NULL, /* InitUserModeContext */
39  NULL, /* MakeSignature */
40  NULL, /* VerifySignature */
41  NULL, /* SealMessage */
42  NULL, /* UnsealMessage */
43  NULL, /* GetContextToken */
44  NULL, /* SpQueryContextAttributes */
45  NULL, /* CompleteAuthToken */
46  NULL, /* DeleteUserModeContext */
47  NULL, /* FormatCredentials */
48  NULL, /* MarshallSupplementalCreds */
49  NULL, /* ExportContext */
50  NULL, /* ImportContext */
51  }, {
52  NULL, /* InstanceInit */
53  NULL, /* InitUserModeContext */
54  NULL, /* MakeSignature */
55  NULL, /* VerifySignature */
56  NULL, /* SealMessage */
57  NULL, /* UnsealMessage */
58  NULL, /* GetContextToken */
59  NULL, /* SpQueryContextAttributes */
60  NULL, /* CompleteAuthToken */
61  NULL, /* DeleteUserModeContext */
62  NULL, /* FormatCredentials */
63  NULL, /* MarshallSupplementalCreds */
64  NULL, /* ExportContext */
65  NULL, /* ImportContext */
66  }
67 };
68 
69 /***********************************************************************
70  * SpUserModeInitialize (SCHANNEL.@)
71  */
72 NTSTATUS WINAPI SpUserModeInitialize(ULONG LsaVersion, PULONG PackageVersion,
73  PSECPKG_USER_FUNCTION_TABLE *ppTables, PULONG pcTables)
74 {
75  TRACE("(%u, %p, %p, %p)\n", LsaVersion, PackageVersion, ppTables, pcTables);
76 
77  if (LsaVersion != SECPKG_INTERFACE_VERSION)
79 
80  *PackageVersion = SECPKG_INTERFACE_VERSION;
81  *pcTables = 2;
82  *ppTables = secPkgUserTables;
83 
84  return STATUS_SUCCESS;
85 }
#define STATUS_INVALID_PARAMETER
Definition: udferr_usr.h:135
LONG NTSTATUS
Definition: precomp.h:26
WINE_DEFAULT_DEBUG_CHANNEL(schannel)
static SECPKG_USER_FUNCTION_TABLE secPkgUserTables[2]
Definition: usermode.c:35
smooth NULL
Definition: ftsmooth.c:416
#define SECPKG_INTERFACE_VERSION
Definition: ntsecpkg.h:34
#define TRACE(s)
Definition: solgame.cpp:4
#define WINAPI
Definition: msvc.h:6
NTSTATUS WINAPI SpUserModeInitialize(ULONG LsaVersion, PULONG PackageVersion, PSECPKG_USER_FUNCTION_TABLE *ppTables, PULONG pcTables)
Definition: usermode.c:72
unsigned int * PULONG
Definition: retypes.h:1
unsigned int ULONG
Definition: retypes.h:1
return STATUS_SUCCESS
Definition: btrfs.c:3014