GIOError

GIOError — Error helper functions

Types and Values

#define G_IO_ERROR
enum GIOErrorEnum

Includes

#include <gio/gio.h>

Description

Contains helper functions for reporting errors to the user.

Functions

g_io_error_from_errno ()

GIOErrorEnum
g_io_error_from_errno (gint err_no);

Converts errno.h error codes into GIO error codes. The fallback value G_IO_ERROR_FAILED is returned for error codes not currently handled (but note that future GLib releases may return a more specific value instead).

Parameters

err_no

Error number as defined in errno.h.

 

Returns

GIOErrorEnum value for the given errno.h error number.


g_io_error_from_win32_error ()

GIOErrorEnum
g_io_error_from_win32_error (gint error_code);

Converts some common error codes (as returned from GetLastError() or WSAGetLastError()) into GIO error codes. The fallback value G_IO_ERROR_FAILED is returned for error codes not currently handled (but note that future GLib releases may return a more specific value instead).

You can use g_win32_error_message() to get a localized string corresponding to error_code . (But note that unlike g_strerror(), g_win32_error_message() returns a string that must be freed.)

Parameters

error_code

Windows error number.

 

Returns

GIOErrorEnum value for the given error number.

Since: 2.26

Types and Values

G_IO_ERROR

#define G_IO_ERROR g_io_error_quark()

Error domain for GIO. Errors in this domain will be from the GIOErrorEnum enumeration. See GError for more information on error domains.


enum GIOErrorEnum

Error codes returned by GIO functions.

Note that this domain may be extended in future GLib releases. In general, new error codes either only apply to new APIs, or else replace G_IO_ERROR_FAILED in cases that were not explicitly distinguished before. You should therefore avoid writing code like

1
2
3
4
5
if (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_FAILED))
  {
    // Assume that this is EPRINTERONFIRE
    ...
  }

but should instead treat all unrecognized error codes the same as G_IO_ERROR_FAILED.

Members

G_IO_ERROR_FAILED

Generic error condition for when an operation fails and no more specific GIOErrorEnum value is defined.

 

G_IO_ERROR_NOT_FOUND

File not found.

 

G_IO_ERROR_EXISTS

File already exists.

 

G_IO_ERROR_IS_DIRECTORY

File is a directory.

 

G_IO_ERROR_NOT_DIRECTORY

File is not a directory.

 

G_IO_ERROR_NOT_EMPTY

File is a directory that isn't empty.

 

G_IO_ERROR_NOT_REGULAR_FILE

File is not a regular file.

 

G_IO_ERROR_NOT_SYMBOLIC_LINK

File is not a symbolic link.

 

G_IO_ERROR_NOT_MOUNTABLE_FILE

File cannot be mounted.

 

G_IO_ERROR_FILENAME_TOO_LONG

Filename is too many characters.

 

G_IO_ERROR_INVALID_FILENAME

Filename is invalid or contains invalid characters.

 

G_IO_ERROR_TOO_MANY_LINKS

File contains too many symbolic links.

 

G_IO_ERROR_NO_SPACE

No space left on drive.

 

G_IO_ERROR_INVALID_ARGUMENT

Invalid argument.

 

G_IO_ERROR_PERMISSION_DENIED

Permission denied.

 

G_IO_ERROR_NOT_SUPPORTED

Operation (or one of its parameters) not supported

 

G_IO_ERROR_NOT_MOUNTED

File isn't mounted.

 

G_IO_ERROR_ALREADY_MOUNTED

File is already mounted.

 

G_IO_ERROR_CLOSED

File was closed.

 

G_IO_ERROR_CANCELLED

Operation was cancelled. See GCancellable.

 

G_IO_ERROR_PENDING

Operations are still pending.

 

G_IO_ERROR_READ_ONLY

File is read only.

 

G_IO_ERROR_CANT_CREATE_BACKUP

Backup couldn't be created.

 

G_IO_ERROR_WRONG_ETAG

File's Entity Tag was incorrect.

 

G_IO_ERROR_TIMED_OUT

Operation timed out.

 

G_IO_ERROR_WOULD_RECURSE

Operation would be recursive.

 

G_IO_ERROR_BUSY

File is busy.

 

G_IO_ERROR_WOULD_BLOCK

Operation would block.

 

G_IO_ERROR_HOST_NOT_FOUND

Host couldn't be found (remote operations).

 

G_IO_ERROR_WOULD_MERGE

Operation would merge files.

 

G_IO_ERROR_FAILED_HANDLED

Operation failed and a helper program has already interacted with the user. Do not display any error dialog.

 

G_IO_ERROR_TOO_MANY_OPEN_FILES

The current process has too many files open and can't open any more. Duplicate descriptors do count toward this limit. Since 2.20

 

G_IO_ERROR_NOT_INITIALIZED

The object has not been initialized. Since 2.22

 

G_IO_ERROR_ADDRESS_IN_USE

The requested address is already in use. Since 2.22

 

G_IO_ERROR_PARTIAL_INPUT

Need more input to finish operation. Since 2.24

 

G_IO_ERROR_INVALID_DATA

The input data was invalid. Since 2.24

 

G_IO_ERROR_DBUS_ERROR

A remote object generated an error that doesn't correspond to a locally registered GError error domain. Use g_dbus_error_get_remote_error() to extract the D-Bus error name and g_dbus_error_strip_remote_error() to fix up the message so it matches what was received on the wire. Since 2.26.

 

G_IO_ERROR_HOST_UNREACHABLE

Host unreachable. Since 2.26

 

G_IO_ERROR_NETWORK_UNREACHABLE

Network unreachable. Since 2.26

 

G_IO_ERROR_CONNECTION_REFUSED

Connection refused. Since 2.26

 

G_IO_ERROR_PROXY_FAILED

Connection to proxy server failed. Since 2.26

 

G_IO_ERROR_PROXY_AUTH_FAILED

Proxy authentication failed. Since 2.26

 

G_IO_ERROR_PROXY_NEED_AUTH

Proxy server needs authentication. Since 2.26

 

G_IO_ERROR_PROXY_NOT_ALLOWED

Proxy connection is not allowed by ruleset. Since 2.26

 

G_IO_ERROR_BROKEN_PIPE

Broken pipe. Since 2.36

 

G_IO_ERROR_CONNECTION_CLOSED

Connection closed by peer. Note that this is the same code as G_IO_ERROR_BROKEN_PIPE; before 2.44 some "connection closed" errors returned G_IO_ERROR_BROKEN_PIPE, but others returned G_IO_ERROR_FAILED. Now they should all return the same value, which has this more logical name. Since 2.44.

 

G_IO_ERROR_NOT_CONNECTED

Transport endpoint is not connected. Since 2.44

 

G_IO_ERROR_MESSAGE_TOO_LARGE

Message too large. Since 2.48.