gdbsupport: move fast_hash to gdbsupport/common-utils.h
[binutils-gdb.git] / gdbsupport / fileio.cc
index 69ed426c87e8524c3880a748e9784d19e4b33bdc..5f4a3ee2ec3bc01118277d655463b4bbb801d70c 100644 (file)
@@ -1,6 +1,6 @@
 /* File-I/O functions for GDB, the GNU debugger.
 
-   Copyright (C) 2003-2020 Free Software Foundation, Inc.
+   Copyright (C) 2003-2023 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
 
 /* See fileio.h.  */
 
-int
+fileio_error
 host_to_fileio_error (int error)
 {
   switch (error)
     {
       case EPERM:
-        return FILEIO_EPERM;
+       return FILEIO_EPERM;
       case ENOENT:
-        return FILEIO_ENOENT;
+       return FILEIO_ENOENT;
       case EINTR:
-        return FILEIO_EINTR;
+       return FILEIO_EINTR;
       case EIO:
-        return FILEIO_EIO;
+       return FILEIO_EIO;
       case EBADF:
-        return FILEIO_EBADF;
+       return FILEIO_EBADF;
       case EACCES:
-        return FILEIO_EACCES;
+       return FILEIO_EACCES;
       case EFAULT:
-        return FILEIO_EFAULT;
+       return FILEIO_EFAULT;
       case EBUSY:
-        return FILEIO_EBUSY;
+       return FILEIO_EBUSY;
       case EEXIST:
-        return FILEIO_EEXIST;
+       return FILEIO_EEXIST;
       case ENODEV:
-        return FILEIO_ENODEV;
+       return FILEIO_ENODEV;
       case ENOTDIR:
-        return FILEIO_ENOTDIR;
+       return FILEIO_ENOTDIR;
       case EISDIR:
-        return FILEIO_EISDIR;
+       return FILEIO_EISDIR;
       case EINVAL:
-        return FILEIO_EINVAL;
+       return FILEIO_EINVAL;
       case ENFILE:
-        return FILEIO_ENFILE;
+       return FILEIO_ENFILE;
       case EMFILE:
-        return FILEIO_EMFILE;
+       return FILEIO_EMFILE;
       case EFBIG:
-        return FILEIO_EFBIG;
+       return FILEIO_EFBIG;
       case ENOSPC:
-        return FILEIO_ENOSPC;
+       return FILEIO_ENOSPC;
       case ESPIPE:
-        return FILEIO_ESPIPE;
+       return FILEIO_ESPIPE;
       case EROFS:
-        return FILEIO_EROFS;
+       return FILEIO_EROFS;
       case ENOSYS:
-        return FILEIO_ENOSYS;
+       return FILEIO_ENOSYS;
       case ENAMETOOLONG:
-        return FILEIO_ENAMETOOLONG;
+       return FILEIO_ENAMETOOLONG;
     }
   return FILEIO_EUNKNOWN;
 }
 
 /* See fileio.h.  */
 
+int
+fileio_error_to_host (fileio_error errnum)
+{
+  switch (errnum)
+    {
+      case FILEIO_EPERM:
+       return EPERM;
+      case FILEIO_ENOENT:
+       return ENOENT;
+      case FILEIO_EINTR:
+       return EINTR;
+      case FILEIO_EIO:
+       return EIO;
+      case FILEIO_EBADF:
+       return EBADF;
+      case FILEIO_EACCES:
+       return EACCES;
+      case FILEIO_EFAULT:
+       return EFAULT;
+      case FILEIO_EBUSY:
+       return EBUSY;
+      case FILEIO_EEXIST:
+       return EEXIST;
+      case FILEIO_ENODEV:
+       return ENODEV;
+      case FILEIO_ENOTDIR:
+       return ENOTDIR;
+      case FILEIO_EISDIR:
+       return EISDIR;
+      case FILEIO_EINVAL:
+       return EINVAL;
+      case FILEIO_ENFILE:
+       return ENFILE;
+      case FILEIO_EMFILE:
+       return EMFILE;
+      case FILEIO_EFBIG:
+       return EFBIG;
+      case FILEIO_ENOSPC:
+       return ENOSPC;
+      case FILEIO_ESPIPE:
+       return ESPIPE;
+      case FILEIO_EROFS:
+       return EROFS;
+      case FILEIO_ENOSYS:
+       return ENOSYS;
+      case FILEIO_ENAMETOOLONG:
+       return ENAMETOOLONG;
+    }
+  return -1;
+}
+
+/* See fileio.h.  */
+
 int
 fileio_to_host_openflags (int fileio_open_flags, int *open_flags_p)
 {