smbprovider: Add ReadFile proto

Adding input parameter for ReadFile() as protobuf format.

BUG=chromium:757625
TEST=emerges
Change-Id: Ia2676f8002c5d0529998477bfc0af72e35e3fc32
Reviewed-on: https://chromium-review.googlesource.com/841527
Commit-Ready: Zentaro Kavanagh <zentaro@chromium.org>
Tested-by: Zentaro Kavanagh <zentaro@chromium.org>
Reviewed-by: Zentaro Kavanagh <zentaro@chromium.org>
diff --git a/dbus/smbprovider/dbus-constants.h b/dbus/smbprovider/dbus-constants.h
index cc8b4b3..8607e7a 100644
--- a/dbus/smbprovider/dbus-constants.h
+++ b/dbus/smbprovider/dbus-constants.h
@@ -19,6 +19,7 @@
 const char kGetMetadataEntryMethod[] = "GetMetadataEntry";
 const char kOpenFileMethod[] = "OpenFile";
 const char kCloseFileMethod[] = "CloseFile";
+const char kReadFileMethod[] = "ReadFile";
 
 }  // namespace smbprovider
 
diff --git a/dbus/smbprovider/directory_entry.proto b/dbus/smbprovider/directory_entry.proto
index d6ebff8..4da257c 100644
--- a/dbus/smbprovider/directory_entry.proto
+++ b/dbus/smbprovider/directory_entry.proto
@@ -98,4 +98,16 @@
 message CloseFileOptions {
   // ID of the file returned from OpenFile().
   optional int32 file_id = 1;
+}
+
+// Used for passing inputs into SmbProvider.ReadFile().
+message ReadFileOptions {
+  // ID of the mount returned from Mount().
+  optional int32 mount_id = 1;
+  // ID of the file returned from OpenFile().
+  optional int32 file_id = 2;
+  // Offset of the file to be read.
+  optional int64 offset = 3;
+  // Length in bytes to be read.
+  optional int32 length = 4;
 }
\ No newline at end of file