1-- 2-- Copyright (c) 2014-15 John Marino <draco@marino.st> 3-- 4-- Permission to use, copy, modify, and distribute this software for any 5-- purpose with or without fee is hereby granted, provided that the above 6-- copyright notice and this permission notice appear in all copies. 7-- 8-- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 9-- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 10-- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 11-- ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 12-- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 13-- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14-- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15-- 16 17 18package body DragonFly.FileStatus is 19 20 21 -------------------- 22 -- stat wrapper -- 23 -------------------- 24 25 procedure stat ( 26 path : in String; 27 sb : in out inode_data; 28 result : out Int32) 29 is 30 path_ptr : ICS.chars_ptr; 31 begin 32 path_ptr := ICS.New_String (path); 33 result := private_stat (path_ptr, sb); 34 end stat; 35 36 37 ----------------------- 38 -- symlink wrapper -- 39 ----------------------- 40 41 function symlink (source, newlink : String) return Boolean 42 is 43 source_ptr : ICS.chars_ptr := ICS.New_String (source); 44 newlink_ptr : ICS.chars_ptr := ICS.New_String (newlink); 45 result : Int32; 46 begin 47 result := private_symlink (source_ptr, newlink_ptr); 48 return result = 0; 49 end symlink; 50 51end DragonFly.FileStatus; 52