| 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 */
 | 
|---|