s3:smbd: allow info class SMB_QUERY_FS_ATTRIBUTE_INFO to return partial data
authorRalph Wuerthner <ralph.wuerthner@de.ibm.com>
Wed, 10 Jul 2013 14:43:39 +0000 (16:43 +0200)
committerJeremy Allison <jra@samba.org>
Mon, 5 Aug 2013 23:46:06 +0000 (16:46 -0700)
Reviewed-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Volker Lendecke <Volker.Lendecke@SerNet.DE>
source3/smbd/trans2.c

index 3bd5656cd198ccfb2a7b33430d6aacee7364d70a..da0b1ea92cba5a5b3b308f46fcb022e3abfc640a 100644 (file)
@@ -3267,6 +3267,12 @@ cBytesSector=%u, cUnitTotal=%u, cUnitAvail=%d\n", (unsigned int)st.st_ex_dev, (u
                                          STR_UNICODE);
                        SIVAL(pdata,8,len);
                        data_len = 12 + len;
+                       if (max_data_bytes >= 16 && data_len > max_data_bytes) {
+                               /* the client only requested a portion of the
+                                  file system name */
+                               data_len = max_data_bytes;
+                               status = STATUS_BUFFER_OVERFLOW;
+                       }
                        break;
 
                case SMB_QUERY_FS_LABEL_INFO: