version/tests: Enable compilation with long types.
[wine.git] / dlls / kerberos / unixlib.h
blob4a31712bfe81d5e38b20afd6eb8031a765f077eb
1 /*
2 * Copyright 2017 Dmitry Timoshkov
3 * Copyright 2017 George Popoff
4 * Copyright 2008 Robert Shearman for CodeWeavers
5 * Copyright 2017,2021 Hans Leidekker for CodeWeavers
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
22 #include "wine/unixlib.h"
24 #define KERBEROS_MAX_BUF 12000
26 struct accept_context_params
28 LSA_SEC_HANDLE credential;
29 LSA_SEC_HANDLE context;
30 SecBufferDesc *input;
31 LSA_SEC_HANDLE *new_context;
32 SecBufferDesc *output;
33 ULONG *context_attr;
34 ULONG *expiry;
37 struct acquire_credentials_handle_params
39 const char *principal;
40 ULONG credential_use;
41 const char *username;
42 const char *password;
43 LSA_SEC_HANDLE *credential;
44 ULONG *expiry;
47 struct initialize_context_params
49 LSA_SEC_HANDLE credential;
50 LSA_SEC_HANDLE context;
51 const char *target_name;
52 ULONG context_req;
53 SecBufferDesc *input;
54 LSA_SEC_HANDLE *new_context;
55 SecBufferDesc *output;
56 ULONG *context_attr;
57 ULONG *expiry;
60 struct make_signature_params
62 LSA_SEC_HANDLE context;
63 SecBufferDesc *msg;
66 struct query_context_attributes_params
68 LSA_SEC_HANDLE context;
69 unsigned attr;
70 void *buf;
73 struct query_ticket_cache_params
75 KERB_QUERY_TKT_CACHE_RESPONSE *resp;
76 ULONG *out_size;
79 struct seal_message_params
81 LSA_SEC_HANDLE context;
82 SecBufferDesc *msg;
83 unsigned qop;
86 struct unseal_message_params
88 LSA_SEC_HANDLE context;
89 SecBufferDesc *msg;
90 ULONG *qop;
93 struct verify_signature_params
95 LSA_SEC_HANDLE context;
96 SecBufferDesc *msg;
97 ULONG *qop;
100 enum unix_funcs
102 unix_process_attach,
103 unix_accept_context,
104 unix_acquire_credentials_handle,
105 unix_delete_context,
106 unix_free_credentials_handle,
107 unix_initialize_context,
108 unix_make_signature,
109 unix_query_context_attributes,
110 unix_query_ticket_cache,
111 unix_seal_message,
112 unix_unseal_message,
113 unix_verify_signature,
116 extern unixlib_handle_t krb5_handle DECLSPEC_HIDDEN;
118 #define KRB5_CALL( func, params ) __wine_unix_call( krb5_handle, unix_ ## func, params )