浏览代码

[CIFS] Check return code on failed alloc

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Cyrill Gorcunov 18 年之前
父节点
当前提交
5e6e623275
共有 2 个文件被更改,包括 10 次插入0 次删除
  1. 6 0
      fs/cifs/README
  2. 4 0
      fs/cifs/sess.c

+ 6 - 0
fs/cifs/README

@@ -458,6 +458,12 @@ A partial list of the supported mount options follows:
 		byte range locks).
 		byte range locks).
  remount        remount the share (often used to change from ro to rw mounts
  remount        remount the share (often used to change from ro to rw mounts
 	        or vice versa)
 	        or vice versa)
+ servern        Specify the server 's netbios name (RFC1001 name) to use
+		when attempting to setup a session to the server.  This is
+		This is needed for mounting to some older servers (such
+		as OS/2 or Windows 98 and Windows ME) since they do not
+		support a default server name.  A server name can be up
+		to 15 characters long and is usually uppercased.
  sfu            When the CIFS Unix Extensions are not negotiated, attempt to
  sfu            When the CIFS Unix Extensions are not negotiated, attempt to
 		create device files and fifos in a format compatible with
 		create device files and fifos in a format compatible with
 		Services for Unix (SFU).  In addition retrieve bits 10-12
 		Services for Unix (SFU).  In addition retrieve bits 10-12

+ 4 - 0
fs/cifs/sess.c

@@ -372,6 +372,10 @@ CIFS_SessSetup(unsigned int xid, struct cifsSesInfo *ses, int first_time,
 
 
 	/* 2000 big enough to fit max user, domain, NOS name etc. */
 	/* 2000 big enough to fit max user, domain, NOS name etc. */
 	str_area = kmalloc(2000, GFP_KERNEL);
 	str_area = kmalloc(2000, GFP_KERNEL);
+	if (str_area == NULL) {
+		cifs_small_buf_release(smb_buf);
+		return -ENOMEM;
+	}
 	bcc_ptr = str_area;
 	bcc_ptr = str_area;
 
 
 	ses->flags &= ~CIFS_SES_LANMAN;
 	ses->flags &= ~CIFS_SES_LANMAN;