X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=gio%2Fgsocket.h;h=8b49cc1270581d7b31dfbfd5600dfbe063449fd1;hb=2a53b4d0e2c98a14aedf31e38f0ad1fb2e8fe26f;hp=5cfec2ffa4d367ec62222f57cb20afd6ccefaed1;hpb=97f25892ea38e227fe802d0cc50fd88be12cdb17;p=platform%2Fupstream%2Fglib.git diff --git a/gio/gsocket.h b/gio/gsocket.h index 5cfec2f..8b49cc1 100644 --- a/gio/gsocket.h +++ b/gio/gsocket.h @@ -13,22 +13,20 @@ * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General - * Public License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place, Suite 330, - * Boston, MA 02111-1307, USA. + * Public License along with this library; if not, see . * * Authors: Christian Kellner * Samuel Cormier-Iijima * Ryan Lortie */ +#ifndef __G_SOCKET_H__ +#define __G_SOCKET_H__ + #if !defined (__GIO_GIO_H_INSIDE__) && !defined (GIO_COMPILATION) #error "Only can be included directly." #endif -#ifndef __G_SOCKET_H__ -#define __G_SOCKET_H__ - #include G_BEGIN_DECLS @@ -73,92 +71,152 @@ struct _GSocket GSocketPrivate *priv; }; +GLIB_AVAILABLE_IN_ALL GType g_socket_get_type (void) G_GNUC_CONST; +GLIB_AVAILABLE_IN_ALL GSocket * g_socket_new (GSocketFamily family, GSocketType type, GSocketProtocol protocol, GError **error); +GLIB_AVAILABLE_IN_ALL GSocket * g_socket_new_from_fd (gint fd, GError **error); +GLIB_AVAILABLE_IN_ALL int g_socket_get_fd (GSocket *socket); +GLIB_AVAILABLE_IN_ALL GSocketFamily g_socket_get_family (GSocket *socket); +GLIB_AVAILABLE_IN_ALL GSocketType g_socket_get_socket_type (GSocket *socket); +GLIB_AVAILABLE_IN_ALL GSocketProtocol g_socket_get_protocol (GSocket *socket); +GLIB_AVAILABLE_IN_ALL GSocketAddress * g_socket_get_local_address (GSocket *socket, GError **error); +GLIB_AVAILABLE_IN_ALL GSocketAddress * g_socket_get_remote_address (GSocket *socket, GError **error); +GLIB_AVAILABLE_IN_ALL void g_socket_set_blocking (GSocket *socket, gboolean blocking); +GLIB_AVAILABLE_IN_ALL gboolean g_socket_get_blocking (GSocket *socket); +GLIB_AVAILABLE_IN_ALL void g_socket_set_keepalive (GSocket *socket, gboolean keepalive); +GLIB_AVAILABLE_IN_ALL gboolean g_socket_get_keepalive (GSocket *socket); +GLIB_AVAILABLE_IN_ALL gint g_socket_get_listen_backlog (GSocket *socket); +GLIB_AVAILABLE_IN_ALL void g_socket_set_listen_backlog (GSocket *socket, gint backlog); +GLIB_AVAILABLE_IN_ALL guint g_socket_get_timeout (GSocket *socket); +GLIB_AVAILABLE_IN_ALL void g_socket_set_timeout (GSocket *socket, guint timeout); + +GLIB_AVAILABLE_IN_2_32 +guint g_socket_get_ttl (GSocket *socket); +GLIB_AVAILABLE_IN_2_32 +void g_socket_set_ttl (GSocket *socket, + guint ttl); + +GLIB_AVAILABLE_IN_2_32 +gboolean g_socket_get_broadcast (GSocket *socket); +GLIB_AVAILABLE_IN_2_32 +void g_socket_set_broadcast (GSocket *socket, + gboolean broadcast); + +GLIB_AVAILABLE_IN_2_32 gboolean g_socket_get_multicast_loopback (GSocket *socket); +GLIB_AVAILABLE_IN_2_32 void g_socket_set_multicast_loopback (GSocket *socket, gboolean loopback); +GLIB_AVAILABLE_IN_2_32 guint g_socket_get_multicast_ttl (GSocket *socket); +GLIB_AVAILABLE_IN_2_32 void g_socket_set_multicast_ttl (GSocket *socket, guint ttl); +GLIB_AVAILABLE_IN_ALL gboolean g_socket_is_connected (GSocket *socket); +GLIB_AVAILABLE_IN_ALL gboolean g_socket_bind (GSocket *socket, GSocketAddress *address, gboolean allow_reuse, GError **error); +GLIB_AVAILABLE_IN_2_32 gboolean g_socket_join_multicast_group (GSocket *socket, GInetAddress *group, - const gchar *interface, + gboolean source_specific, + const gchar *iface, GError **error); +GLIB_AVAILABLE_IN_2_32 gboolean g_socket_leave_multicast_group (GSocket *socket, GInetAddress *group, - const gchar *interface, + gboolean source_specific, + const gchar *iface, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_socket_connect (GSocket *socket, GSocketAddress *address, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_socket_check_connect_result (GSocket *socket, GError **error); +GLIB_AVAILABLE_IN_ALL +gssize g_socket_get_available_bytes (GSocket *socket); + +GLIB_AVAILABLE_IN_ALL GIOCondition g_socket_condition_check (GSocket *socket, GIOCondition condition); +GLIB_AVAILABLE_IN_ALL gboolean g_socket_condition_wait (GSocket *socket, GIOCondition condition, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_2_32 +gboolean g_socket_condition_timed_wait (GSocket *socket, + GIOCondition condition, + gint64 timeout, + GCancellable *cancellable, + GError **error); +GLIB_AVAILABLE_IN_ALL GSocket * g_socket_accept (GSocket *socket, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_socket_listen (GSocket *socket, GError **error); +GLIB_AVAILABLE_IN_ALL gssize g_socket_receive (GSocket *socket, gchar *buffer, gsize size, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gssize g_socket_receive_from (GSocket *socket, GSocketAddress **address, gchar *buffer, gsize size, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gssize g_socket_send (GSocket *socket, const gchar *buffer, gsize size, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gssize g_socket_send_to (GSocket *socket, GSocketAddress *address, const gchar *buffer, gsize size, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gssize g_socket_receive_message (GSocket *socket, GSocketAddress **address, GInputVector *vectors, @@ -168,6 +226,7 @@ gssize g_socket_receive_message (GSocket gint *flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gssize g_socket_send_message (GSocket *socket, GSocketAddress *address, GOutputVector *vectors, @@ -177,26 +236,34 @@ gssize g_socket_send_message (GSocket gint flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_socket_close (GSocket *socket, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_socket_shutdown (GSocket *socket, gboolean shutdown_read, gboolean shutdown_write, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_socket_is_closed (GSocket *socket); +GLIB_AVAILABLE_IN_ALL GSource * g_socket_create_source (GSocket *socket, GIOCondition condition, GCancellable *cancellable); +GLIB_AVAILABLE_IN_ALL gboolean g_socket_speaks_ipv4 (GSocket *socket); +GLIB_AVAILABLE_IN_ALL GCredentials *g_socket_get_credentials (GSocket *socket, GError **error); +GLIB_AVAILABLE_IN_ALL gssize g_socket_receive_with_blocking (GSocket *socket, gchar *buffer, gsize size, gboolean blocking, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gssize g_socket_send_with_blocking (GSocket *socket, const gchar *buffer, gsize size, @@ -204,6 +271,19 @@ gssize g_socket_send_with_blocking (GSocket GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_2_36 +gboolean g_socket_get_option (GSocket *socket, + gint level, + gint optname, + gint *value, + GError **error); +GLIB_AVAILABLE_IN_2_36 +gboolean g_socket_set_option (GSocket *socket, + gint level, + gint optname, + gint value, + GError **error); + G_END_DECLS #endif /* __G_SOCKET_H__ */