-/****h* silcutil/silcsockconn.h
- *
- * NAME
- *
- * silcsockconn.h
- *
- * COPYRIGHT
- *
- * Author: Pekka Riikonen <priikone@silnet.org>
- *
- * Copyright (C) 1997 - 2001 Pekka Riikonen
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
+/*
+
+ silcsockconn.h
+
+ Author: Pekka Riikonen <priikone@silnet.org>
+
+ Copyright (C) 1997 - 2001 Pekka Riikonen
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+*/
+
+/****h* silcutil/SilcSocketConnectionAPI
*
* DESCRIPTION
*
/* Socket flags */
#define SILC_SF_NONE 0
-#define SILC_SF_INBUF_PENDING 1
-#define SILC_SF_OUTBUF_PENDING 2
-#define SILC_SF_DISCONNECTING 3
-#define SILC_SF_DISCONNECTED 4
-#define SILC_SF_HOST_LOOKUP 5
+#define SILC_SF_INBUF_PENDING 1 /* data in inbound buffer */
+#define SILC_SF_OUTBUF_PENDING 2 /* data in outbound buffer */
+#define SILC_SF_DISCONNECTING 3 /* socket disconnecting */
+#define SILC_SF_DISCONNECTED 4 /* socket disconnected */
+#define SILC_SF_HOST_LOOKUP 5 /* performing host lookup for socket */
+#define SILC_SF_DISABLED 6 /* socket connection is disabled,
+ no data is sent or received. */
/****s* silcutil/SilcSocketConnectionAPI/SilcSocketConnectionStruct
*
#define SILC_SET_DISCONNECTING(x) SF_SET((x), SILC_SF_DISCONNECTING)
#define SILC_SET_DISCONNECTED(x) SF_SET((x), SILC_SF_DISCONNECTED)
#define SILC_SET_HOST_LOOKUP(x) SF_SET((x), SILC_SF_HOST_LOOKUP)
+#define SILC_SET_DISABLED(x) SF_SET((x), SILC_SF_HOST_LOOKUP)
#define SILC_UNSET_OUTBUF_PENDING(x) SF_UNSET((x), SILC_SF_OUTBUF_PENDING)
#define SILC_UNSET_INBUF_PENDING(x) SF_UNSET((x), SILC_SF_INBUF_PENDING)
#define SILC_UNSET_DISCONNECTING(x) SF_UNSET((x), SILC_SF_DISCONNECTING)
#define SILC_UNSET_DISCONNECTED(x) SF_UNSET((x), SILC_SF_DISCONNECTED)
#define SILC_UNSET_HOST_LOOKUP(x) SF_UNSET((x), SILC_SF_HOST_LOOKUP)
+#define SILC_UNSET_DISABLED(x) SF_UNSET((x), SILC_SF_DISABLED)
/* Checking for flags */
#define SILC_IS_OUTBUF_PENDING(x) SF_IS((x), SILC_SF_OUTBUF_PENDING)
#define SILC_IS_DISCONNECTING(x) SF_IS((x), SILC_SF_DISCONNECTING)
#define SILC_IS_DISCONNECTED(x) SF_IS((x), SILC_SF_DISCONNECTED)
#define SILC_IS_HOST_LOOKUP(x) SF_IS((x), SILC_SF_HOST_LOOKUP)
+#define SILC_IS_DISABLED(x) SF_IS((x), SILC_SF_DISABLED)
/* Prototypes */
* uint32 heartbeat,
* void *hb_context,
* SilcSocketConnectionHBCb hb_callback,
- * void *timeout_queue);
+ * SilcSchedule schedule);
*
* DESCRIPTION
*
* `hb_callback' function that is called when the `heartbeat' timeout
* expires. The callback `hb_context' won't be touched by the library
* but will be freed automatically when calling silc_socket_free. The
- * `timeout_queue' is the application's scheduler timeout queue.
+ * `schedule' is the application's scheduler.
*
***/
void silc_socket_set_heartbeat(SilcSocketConnection sock,
uint32 heartbeat,
void *hb_context,
SilcSocketConnectionHBCb hb_callback,
- void *timeout_queue);
+ SilcSchedule schedule);
/****f* silcutil/SilcSocketConnectionAPI/SilcSocketHostLookupCb
*
* SYNOPSIS
*
* void silc_socket_host_lookup(SilcSocketConnection sock,
+ * bool port_lookup,
* SilcSocketHostLookupCb callback,
* void *context,
- * void *timeout_queue);
+ * SilcSchedule schedule);
*
* DESCRIPTION
*
* specified socket connection. This may be called when the socket
* connection is created and the full IP address and fully qualified
* domain name information is desired. The `callback' with `context'
- * will be called after the lookup is performed. The `timeout_queue'
- * is the application's scheduler timeout queue which the lookup
- * routine needs. If the socket connection is freed during the
- * lookup the library will automatically cancel the lookup and
- * the `callback' will not be called.
+ * will be called after the lookup is performed. The `schedule'
+ * is the application's scheduler which the lookup routine needs.
+ * If the socket connection is freed during the lookup the library
+ * will automatically cancel the lookup and the `callback' will not be
+ * called.
*
* If `port_lookup' is TRUE then the remote port of the socket
* connection is resolved. After the information is resolved they
bool port_lookup,
SilcSocketHostLookupCb callback,
void *context,
- void *timeout_queue);
+ SilcSchedule schedule);
#endif