2004-04-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
authorGonzalo Paniagua Javier <gonzalo.mono@gmail.com>
Wed, 28 Apr 2004 13:31:48 +0000 (13:31 -0000)
committerGonzalo Paniagua Javier <gonzalo.mono@gmail.com>
Wed, 28 Apr 2004 13:31:48 +0000 (13:31 -0000)
* error.[ch]: added _wapi_get_win32_file_error...
* io.c: ... which was _wapi_get_win32_error here.
* sockets.c: rename the function calls here too.

svn path=/trunk/mono/; revision=26146

mono/io-layer/ChangeLog
mono/io-layer/error.c
mono/io-layer/error.h
mono/io-layer/io.c
mono/io-layer/sockets.c

index 6ce74366ea6246f8c05449c572d73085fdbe76ad..5c34c200c49582a990c06faf154400c75b10e88b 100644 (file)
@@ -1,3 +1,9 @@
+2004-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * error.[ch]: added _wapi_get_win32_file_error...
+       * io.c: ... which was _wapi_get_win32_error here.
+       * sockets.c: rename the function calls here too.
+
 2004-04-28  Dick Porter  <dick@ximian.com>
 
        * daemon-messages.c: Avoid a deadlock when a thread is killed while
index 6b1e18042794932b83b262abf068c5f32e3eca06..ee6dd56c96eb2b1055bfe2d1180be9c50780cda1 100644 (file)
@@ -131,3 +131,75 @@ errno_to_WSA (guint32 code, const gchar *function_name)
        return result;
 }
 
+gint
+_wapi_get_win32_file_error (gint err)
+{
+       gint ret;
+       /* mapping ideas borrowed from wine. they may need some work */
+
+       switch (err) {
+       case EACCES: case EPERM: case EROFS:
+               ret = ERROR_ACCESS_DENIED;
+               break;
+       
+       case EAGAIN:
+               ret = ERROR_SHARING_VIOLATION;
+               break;
+       
+       case EBUSY:
+               ret = ERROR_LOCK_VIOLATION;
+               break;
+       
+       case EEXIST:
+               ret = ERROR_FILE_EXISTS;
+               break;
+       
+       case EINVAL: case ESPIPE:
+               ret = ERROR_SEEK;
+               break;
+       
+       case EISDIR:
+               ret = ERROR_CANNOT_MAKE;
+               break;
+       
+       case ENFILE: case EMFILE:
+               ret = ERROR_NO_MORE_FILES;
+               break;
+
+       case ENOENT: case ENOTDIR:
+               ret = ERROR_FILE_NOT_FOUND;
+               break;
+       
+       case ENOSPC:
+               ret = ERROR_HANDLE_DISK_FULL;
+               break;
+       
+       case ENOTEMPTY:
+               ret = ERROR_DIR_NOT_EMPTY;
+               break;
+
+       case ENOEXEC:
+               ret = ERROR_BAD_FORMAT;
+               break;
+
+       case ENAMETOOLONG:
+               ret = ERROR_FILENAME_EXCED_RANGE;
+               break;
+       
+       case EINPROGRESS:
+               ret = ERROR_IO_PENDING;
+               break;
+       
+       case ENOSYS:
+               ret = ERROR_NOT_SUPPORTED;
+               break;
+       
+       default:
+               g_message ("Unknown errno: %s\n", strerror (err));
+               ret = ERROR_GEN_FAILURE;
+               break;
+       }
+
+       return ret;
+}
+
index 8d4dd7b21dc79db671d2cbb22b74eed34b7c923a..a07dc7748148c5e7e6b9468dda1c7de05377a542 100644 (file)
@@ -1795,8 +1795,13 @@ typedef enum {
        ERROR_SXS_INVALID_ASSEMBLY_IDENTITY_ATTRIBUTE_NAME = 14080
 } WapiError;
 
-extern guint32 GetLastError(void);
-extern void SetLastError(guint32 code);
-extern guint32 errno_to_WSA (guint32 code, const char *function_name);
+G_BEGIN_DECLS
+
+guint32 GetLastError (void);
+void SetLastError (guint32 code);
+guint32 errno_to_WSA (guint32 code, const char *function_name);
+gint _wapi_get_win32_file_error (gint err);
+
+G_END_DECLS
 
 #endif /* _WAPI_ERROR_H_ */
index 95d49612fb79224eebab7a7cb7f217be656fe563..6443381f5902299df652c0c77895ecc19a79ca1b 100644 (file)
@@ -205,82 +205,10 @@ static guint32 _wapi_stat_to_file_attributes (struct stat *buf)
        return attrs;
 }
 
-static int
-_wapi_get_win32_error (int err)
-{
-       int ret;
-       /* mapping ideas borrowed from wine. they may need some work */
-
-       switch (err) {
-       case EACCES: case EPERM: case EROFS:
-               ret = ERROR_ACCESS_DENIED;
-               break;
-       
-       case EAGAIN:
-               ret = ERROR_SHARING_VIOLATION;
-               break;
-       
-       case EBUSY:
-               ret = ERROR_LOCK_VIOLATION;
-               break;
-       
-       case EEXIST:
-               ret = ERROR_FILE_EXISTS;
-               break;
-       
-       case EINVAL: case ESPIPE:
-               ret = ERROR_SEEK;
-               break;
-       
-       case EISDIR:
-               ret = ERROR_CANNOT_MAKE;
-               break;
-       
-       case ENFILE: case EMFILE:
-               ret = ERROR_NO_MORE_FILES;
-               break;
-
-       case ENOENT: case ENOTDIR:
-               ret = ERROR_FILE_NOT_FOUND;
-               break;
-       
-       case ENOSPC:
-               ret = ERROR_HANDLE_DISK_FULL;
-               break;
-       
-       case ENOTEMPTY:
-               ret = ERROR_DIR_NOT_EMPTY;
-               break;
-
-       case ENOEXEC:
-               ret = ERROR_BAD_FORMAT;
-               break;
-
-       case ENAMETOOLONG:
-               ret = ERROR_FILENAME_EXCED_RANGE;
-               break;
-       
-       case EINPROGRESS:
-               ret = ERROR_IO_PENDING;
-               break;
-       
-       case ENOSYS:
-               ret = ERROR_NOT_SUPPORTED;
-               break;
-       
-       default:
-               g_message ("Unknown errno: %s\n", strerror (err));
-               ret = ERROR_GEN_FAILURE;
-               break;
-       }
-
-       return ret;
-}
-
 static void
 _wapi_set_last_error_from_errno (void)
 {
-       SetLastError (_wapi_get_win32_error (errno));
+       SetLastError (_wapi_get_win32_file_error (errno));
 }
 
 /* Handle ops.
@@ -354,7 +282,7 @@ async_notifier (union sigval sig)
 
        error = aio_return (ndata->aio);
        if (error < 0) {
-               error = _wapi_get_win32_error (error);
+               error = _wapi_get_win32_file_error (error);
                numbytes = 0;
        } else {
                numbytes = error;
@@ -409,7 +337,7 @@ static gboolean file_read(gpointer handle, gpointer buffer,
                                  ": read of handle %p fd %d error: %s", handle,
                                  file_private_handle->fd, strerror(err));
 #endif
-                       SetLastError (_wapi_get_win32_error (err));
+                       SetLastError (_wapi_get_win32_file_error (err));
                        return(FALSE);
                }
                
index 2089557cc8d39e8d13e25baa6a7e5b0aa9e2a104..b38f5efdd4210100d745ed7b33897cd7341d6106 100644 (file)
@@ -1057,7 +1057,7 @@ async_notifier (union sigval sig)
 
        error = aio_return (ndata->aio);
        if (error < 0) {
-               error = _wapi_get_win32_error (error);
+               error = _wapi_get_win32_file_error (error);
                numbytes = 0;
        } else {
                numbytes = error;