lib/param move source4 param code to the top level
[sfrench/samba-autobuild/.git] / source4 / libcli / raw / signing.h
1 #ifndef _SIGNING_H
2 #define _SIGNING_H
3 /*
4    Unix SMB/CIFS implementation.
5    SMB Signing
6
7    Andrew Bartlett <abartlet@samba.org> 2003-2004
8
9    This program is free software; you can redistribute it and/or modify
10    it under the terms of the GNU General Public License as published by
11    the Free Software Foundation; either version 3 of the License, or
12    (at your option) any later version.
13
14    This program is distributed in the hope that it will be useful,
15    but WITHOUT ANY WARRANTY; without even the implied warranty of
16    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17    GNU General Public License for more details.
18
19    You should have received a copy of the GNU General Public License
20    along with this program.  If not, see <http://www.gnu.org/licenses/>.
21 */
22
23 enum smb_signing_engine_state {
24         SMB_SIGNING_ENGINE_OFF,
25         SMB_SIGNING_ENGINE_BSRSPYL,
26         SMB_SIGNING_ENGINE_ON
27 };
28
29 struct smb_signing_context {
30         enum smb_signing_engine_state signing_state;
31         DATA_BLOB mac_key;
32         uint32_t next_seq_num;
33         bool allow_smb_signing;
34         bool doing_signing;
35         bool mandatory_signing;
36         bool seen_valid; /* Have I ever seen a validly signed packet? */
37 };
38
39 #endif