## Internet connection

Internet connection — Simple TCP/IP connection functions.

## Synopsis

    GnomeVFSResult gnome_vfs_inet_connection_create
                                                (GnomeVFSInetConnection **connection_return,
                                                 const gchar *host_name,
                                                 guint host_port,
                                                 GnomeVFSCancellation *cancellation);
    void        gnome_vfs_inet_connection_destroy
                                                (GnomeVFSInetConnection *connection,
                                                 GnomeVFSCancellation *cancellation);
    void        gnome_vfs_inet_connection_free  (GnomeVFSInetConnection *connection,
                                                 GnomeVFSCancellation *cancellation);
    GnomeVFSSocket* gnome_vfs_inet_connection_to_socket
                                                (GnomeVFSInetConnection *connection);
    GnomeVFSSocketBuffer* gnome_vfs_inet_connection_to_socket_buffer
                                                (GnomeVFSInetConnection *connection);
    int         gnome_vfs_inet_connection_get_fd
                                                (GnomeVFSInetConnection *connection);
    GnomeVFSResult gnome_vfs_inet_connection_create_from_address
                                                (GnomeVFSInetConnection **connection_return,
                                                 GnomeVFSAddress *address,
                                                 guint host_port,
                                                 GnomeVFSCancellation *cancellation);
    GnomeVFSAddress* gnome_vfs_inet_connection_get_address
                                                (GnomeVFSInetConnection *connection);
    char*       gnome_vfs_inet_connection_get_ip
                                                (GnomeVFSInetConnection *connection);

## Description

A GnomeVFSInetConnection represents a TCP/IP connection. You can either use gnome_vfs_inet_connection_create which will use the gnome_vfs_resolve DNS resolution functions internally or you can do the name resolution yourself and use gnome_vfs_inet_connection_create_from_address to connect to a specific address. After a connection has been established all I/O is done through a GnomeVFSSocket or a GnomeVFSSocketBuffer.

## Details

### gnome_vfs_inet_connection_create ()

    GnomeVFSResult gnome_vfs_inet_connection_create
                                                (GnomeVFSInetConnection **connection_return,
                                                 const gchar *host_name,
                                                 guint host_port,
                                                 GnomeVFSCancellation *cancellation);

Creates a connection at `connection_return` to `host_name` using port `port`.

`connection_return` : | Pointer to a GnomeVFSInetConnection, which will. contain an allocated GnomeVFSInetConnection object on return.
`host_name` : | String indicating the host to establish an internet connection with.
`host_port` : | The port number to connect to.
`cancellation` : | handle allowing cancellation of the operation.
Returns : | GnomeVFSResult indicating the success of the operation.

### gnome_vfs_inet_connection_destroy ()

    void        gnome_vfs_inet_connection_destroy
                                                (GnomeVFSInetConnection *connection,
                                                 GnomeVFSCancellation *cancellation);

Closes/Destroys `connection`.

`connection` : | Connection to destroy.
`cancellation` : | Handle for cancelling the operation.

### gnome_vfs_inet_connection_free ()

    void        gnome_vfs_inet_connection_free  (GnomeVFSInetConnection *connection,
                                                 GnomeVFSCancellation *cancellation);

Frees `connection` without closing the socket.

`connection` : | Connection to free.
`cancellation` : | Handle for cancelling the operation.

### gnome_vfs_inet_connection_to_socket ()

    GnomeVFSSocket* gnome_vfs_inet_connection_to_socket
                                                (GnomeVFSInetConnection *connection);

Wrapper `connection` inside a standard GnomeVFSSocket for convenience.

`connection` : | Connection to convert to wrapper in a GnomeVFSSocket.
Returns : | a newly created GnomeVFSSocket around `connection`.

### gnome_vfs_inet_connection_to_socket_buffer ()

    GnomeVFSSocketBuffer* gnome_vfs_inet_connection_to_socket_buffer
                                                (GnomeVFSInetConnection *connection);

Wrapper `connection` inside a standard GnomeVFSSocketBuffer for convenience.

`connection` : | Connection to convert to wrapper in a GnomeVFSSocketBuffer.
Returns : | a newly created GnomeVFSSocketBuffer around `connection`.

### gnome_vfs_inet_connection_get_fd ()

    int         gnome_vfs_inet_connection_get_fd
                                                (GnomeVFSInetConnection *connection);

Retrieve the UNIX file descriptor corresponding to `connection`.

`connection` : | Connection to get the file descriptor from
Returns : | file descriptor

### gnome_vfs_inet_connection_create_from_address ()

    GnomeVFSResult gnome_vfs_inet_connection_create_from_address
                                                (GnomeVFSInetConnection **connection_return,
                                                 GnomeVFSAddress *address,
                                                 guint host_port,
                                                 GnomeVFSCancellation *cancellation);

Creates a connection at `connection_return` to `address` using port `port`.

`connection_return` : | Pointer to a GnomeVFSInetConnection, which will. contain An allocated GnomeVFSInetConnection object on return.
`address` : | A valid GnomeVFSAddress.
`host_port` : | The port number to connect to.
`cancellation` : | Handle allowing cancellation of the operation.
Returns : | GnomeVFSResult indicating the success of the operation.

Since 2.8

### gnome_vfs_inet_connection_get_address ()

    GnomeVFSAddress* gnome_vfs_inet_connection_get_address
                                                (GnomeVFSInetConnection *connection);

Retrieve the address of the other side of a connected `connection`.

`connection` : | Connection to get the address from.
Returns : | A GnomeVFSAddress containing the address. Since 2.8

### gnome_vfs_inet_connection_get_ip ()

    char*       gnome_vfs_inet_connection_get_ip
                                                (GnomeVFSInetConnection *connection);

Retrieve the ip address of the other side of a connected `connection`.

`connection` : | Connection to get the ip from.
Returns : | String version of the ip.

Since 2.8