[coreboot-gerrit] Change in libhwbase[master]: posix file: Add procedure to query the size of a file

Nico Huber (Code Review) gerrit at coreboot.org
Fri Aug 18 17:48:30 CEST 2017


Nico Huber has uploaded this change for review. ( https://review.coreboot.org/21095


Change subject: posix file: Add procedure to query the size of a file
......................................................................

posix file: Add procedure to query the size of a file

Change-Id: Ib3b31e90ca98dc09185463ce467a70770e0f222d
Signed-off-by: Nico Huber <nico.h at gmx.de>
---
M ada/posix/hw-file.adb
M common/hw-file.ads
2 files changed, 19 insertions(+), 0 deletions(-)



  git pull ssh://review.coreboot.org:29418/libhwbase refs/changes/95/21095/1

diff --git a/ada/posix/hw-file.adb b/ada/posix/hw-file.adb
index e2384be..dd9d7f3 100644
--- a/ada/posix/hw-file.adb
+++ b/ada/posix/hw-file.adb
@@ -14,6 +14,7 @@
 
 with Interfaces.C;
 with Interfaces.C.Strings;
+with Ada.Directories;
 
 with HW.Debug;
 
@@ -68,4 +69,18 @@
       pragma Debug (not Success, Debug.New_Line);
    end Map;
 
+   procedure Size (Length : out Natural; Path : String)
+   with
+      SPARK_Mode => Off
+   is
+      use type Ada.Directories.File_Size;
+      Res_Size : Ada.Directories.File_Size;
+   begin
+      Res_Size := Ada.Directories.Size (Path);
+      Length := Natural (Res_Size);
+   exception
+      when others =>
+         Length := 0;
+   end Size;
+
 end HW.File;
diff --git a/common/hw-file.ads b/common/hw-file.ads
index 9dbfcf7..bc2242c 100644
--- a/common/hw-file.ads
+++ b/common/hw-file.ads
@@ -39,4 +39,8 @@
       Pre => (Readable or Writable) and
              (if Map_Copy then Readable and not Writable);
 
+   -- Sets `Length` to the size of the file given by `Path` or 0 if an
+   -- error occurs.
+   procedure Size (Length : out Natural; Path : String);
+
 end HW.File;

-- 
To view, visit https://review.coreboot.org/21095
To unsubscribe, visit https://review.coreboot.org/settings

Gerrit-Project: libhwbase
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib3b31e90ca98dc09185463ce467a70770e0f222d
Gerrit-Change-Number: 21095
Gerrit-PatchSet: 1
Gerrit-Owner: Nico Huber <nico.h at gmx.de>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.coreboot.org/pipermail/coreboot-gerrit/attachments/20170818/4ebb93b5/attachment.html>


More information about the coreboot-gerrit mailing list