auth/kerberos: add gssapi_get_sig_size() and gssapi_{seal,unseal,sign,check}_packet...
[Samba.git] / auth / kerberos / gssapi_helper.h
blobf40adf1540c149df4a5c54ad6de2291a9e61689a
1 /*
2 Unix SMB/CIFS implementation.
3 GSSAPI helper functions
5 Copyright (C) Stefan Metzmacher 2008,2015
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 3 of the License, or
10 (at your option) any later version.
12 This program 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
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>.
21 #ifndef AUTH_KERBEROS_GSSAPI_HELPER_H
22 #define AUTH_KERBEROS_GSSAPI_HELPER_H 1
24 size_t gssapi_get_sig_size(gss_ctx_id_t gssapi_context,
25 const gss_OID mech,
26 uint32_t gss_want_flags,
27 size_t data_size);
28 NTSTATUS gssapi_seal_packet(gss_ctx_id_t gssapi_context,
29 const gss_OID mech,
30 bool hdr_signing, size_t sig_size,
31 uint8_t *data, size_t length,
32 const uint8_t *whole_pdu, size_t pdu_length,
33 TALLOC_CTX *mem_ctx,
34 DATA_BLOB *sig);
35 NTSTATUS gssapi_unseal_packet(gss_ctx_id_t gssapi_context,
36 const gss_OID mech,
37 bool hdr_signing,
38 uint8_t *data, size_t length,
39 const uint8_t *whole_pdu, size_t pdu_length,
40 const DATA_BLOB *sig);
41 NTSTATUS gssapi_sign_packet(gss_ctx_id_t gssapi_context,
42 const gss_OID mech,
43 bool hdr_signing,
44 const uint8_t *data, size_t length,
45 const uint8_t *whole_pdu, size_t pdu_length,
46 TALLOC_CTX *mem_ctx,
47 DATA_BLOB *sig);
48 NTSTATUS gssapi_check_packet(gss_ctx_id_t gssapi_context,
49 const gss_OID mech,
50 bool hdr_signing,
51 const uint8_t *data, size_t length,
52 const uint8_t *whole_pdu, size_t pdu_length,
53 const DATA_BLOB *sig);
55 #endif /* AUTH_KERBEROS_GSSAPI_HELPER_H */