FireBirdLib - Topfield TMS PVR TAP Programming Library
HDD_GetFileSizeAndInode.c
Go to the documentation of this file.
1#include <sys/stat.h>
2#include <string.h>
3#include "FBLib_hdd.h"
4
5bool HDD_GetFileSizeAndInode(const char *FileName, __ino64_t *CInode, __off64_t *FileSize)
6{
8
9 char AbsFileName[FBLIB_DIR_SIZE];
10 tstat64 statbuf;
11 bool ret;
12
13 ret = FALSE;
14 if(FileName && *FileName)
15 {
16 ConvertPathType(FileName, AbsFileName, PF_FullLinuxPath);
17
18 if(*AbsFileName && !lstat64(AbsFileName, &statbuf))
19 {
20 if(CInode) *CInode = statbuf.st_ino;
21 if(FileSize) *FileSize = statbuf.st_size;
22 ret = TRUE;
23 }
24 }
25
26 TRACEEXIT();
27 return ret;
28}
void ConvertPathType(const char *Source, char *Dest, tPathFormat DestFormat)
int lstat64(__const char *__restrict __file, tstat64 *__restrict __buf) __THROW
bool HDD_GetFileSizeAndInode(const char *FileName, __ino64_t *CInode, __off64_t *FileSize)
#define FBLIB_DIR_SIZE
Definition: libFireBird.h:1871
#define TRACEEXIT()
Definition: libFireBird.h:1244
#define TRACEENTER()
Definition: libFireBird.h:1243
@ PF_FullLinuxPath
Definition: libFireBird.h:1926
__off64_t st_size
Definition: FBLib_hdd.h:83
__ino64_t st_ino
Definition: FBLib_hdd.h:76