f8753a7d59dd1f1e9668fa8564eeb39bef429af7
[sfrench/samba-autobuild/.git] / source3 / client / cifs_spnego.h
1 /*
2  *   fs/cifs/cifs_spnego.h -- SPNEGO upcall management for CIFS
3  *
4  *   Copyright (c) 2007 Red Hat, Inc.
5  *   Author(s): Jeff Layton (jlayton@redhat.com)
6  *              Steve French (sfrench@us.ibm.com)
7  *
8  *   This library is free software; you can redistribute it and/or modify
9  *   it under the terms of the GNU Lesser General Public License as published
10  *   by the Free Software Foundation; either version 2.1 of the License, or
11  *   (at your option) any later version.
12  *
13  *   This library is distributed in the hope that it will be useful,
14  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
15  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
16  *   the GNU Lesser General Public License for more details.
17  *
18  *   You should have received a copy of the GNU Lesser General Public License
19  *   along with this library; if not, write to the Free Software
20  *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21  */
22
23 #ifndef _CIFS_SPNEGO_H
24 #define _CIFS_SPNEGO_H
25
26 #define CIFS_SPNEGO_UPCALL_VERSION 2
27
28 /*
29  * The version field should always be set to CIFS_SPNEGO_UPCALL_VERSION.
30  * The flags field is for future use. The request-key callout should set
31  * sesskey_len and secblob_len, and then concatenate the SessKey+SecBlob
32  * and stuff it in the data field.
33  */
34 struct cifs_spnego_msg {
35         uint32_t version;
36         uint32_t flags;
37         uint32_t sesskey_len;
38         uint32_t secblob_len;
39         uint8_t data[1];
40 };
41
42 #ifdef __KERNEL__
43 extern struct key_type cifs_spnego_key_type;
44 #endif                          /* KERNEL */
45
46 #endif                          /* _CIFS_SPNEGO_H */