diff options
Diffstat (limited to 'fs/cifs/cifssmb.c')
-rw-r--r-- | fs/cifs/cifssmb.c | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/fs/cifs/cifssmb.c b/fs/cifs/cifssmb.c index 217323b0c896..d69b835c12ec 100644 --- a/fs/cifs/cifssmb.c +++ b/fs/cifs/cifssmb.c | |||
@@ -1,7 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * fs/cifs/cifssmb.c | 2 | * fs/cifs/cifssmb.c |
3 | * | 3 | * |
4 | * Copyright (C) International Business Machines Corp., 2002,2005 | 4 | * Copyright (C) International Business Machines Corp., 2002,2006 |
5 | * Author(s): Steve French (sfrench@us.ibm.com) | 5 | * Author(s): Steve French (sfrench@us.ibm.com) |
6 | * | 6 | * |
7 | * Contains the routines for constructing the SMB PDUs themselves | 7 | * Contains the routines for constructing the SMB PDUs themselves |
@@ -187,6 +187,31 @@ small_smb_init(int smb_command, int wct, struct cifsTconInfo *tcon, | |||
187 | 187 | ||
188 | return rc; | 188 | return rc; |
189 | } | 189 | } |
190 | int | ||
191 | small_smb_init_no_tcon(int smb_command, int wct, struct cifsSesInfo *ses, | ||
192 | void **request_buf) | ||
193 | { | ||
194 | int rc; | ||
195 | struct smb_hdr * buffer; | ||
196 | |||
197 | rc = small_smb_init(smb_command, wct, 0, request_buf); | ||
198 | if(rc) | ||
199 | return rc; | ||
200 | |||
201 | buffer->Mid = GetNextMid(ses->server); | ||
202 | if (ses->capabilities & CAP_UNICODE) | ||
203 | buffer->Flags2 |= SMBFLG2_UNICODE; | ||
204 | if (ses->capabilities & CAP_STATUS32) { | ||
205 | buffer->Flags2 |= SMBFLG2_ERR_STATUS; | ||
206 | |||
207 | /* uid, tid can stay at zero as set in header assemble */ | ||
208 | |||
209 | /* BB add support for turning on the signing when | ||
210 | this function is used after 1st of session setup requests */ | ||
211 | |||
212 | return rc; | ||
213 | } | ||
214 | |||
190 | 215 | ||
191 | /* If the return code is zero, this function must fill in request_buf pointer */ | 216 | /* If the return code is zero, this function must fill in request_buf pointer */ |
192 | static int | 217 | static int |