|
@@ -110,6 +110,22 @@ bool File::open_impl(IODevice::OpenMode mode, mode_t permissions)
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
+bool File::is_device() const
|
|
|
+{
|
|
|
+ struct stat stat;
|
|
|
+ if (fstat(fd(), &stat) < 0)
|
|
|
+ return false;
|
|
|
+ return S_ISBLK(stat.st_mode) || S_ISCHR(stat.st_mode);
|
|
|
+}
|
|
|
+
|
|
|
+bool File::is_device(const String& filename)
|
|
|
+{
|
|
|
+ struct stat st;
|
|
|
+ if (stat(filename.characters(), &st) < 0)
|
|
|
+ return false;
|
|
|
+ return S_ISBLK(st.st_mode) || S_ISCHR(st.st_mode);
|
|
|
+}
|
|
|
+
|
|
|
bool File::is_directory() const
|
|
|
{
|
|
|
struct stat stat;
|