globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_AFFECT_ATTR_DEFAULTS,globus_bool_taffect_global)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Change the default attr values.
Parametersaffect_global If GLOBUS_TRUE, any future cntls on this attr will access the global default attr
(which all new attrs are initialized from) The default is GLOBUS_FALSE. Note: this should only be
used at the application level and there should only be one. There is no mutex protecting the global
attr. This feature should not be abused. There are some attrs that make no sense to change globally.
Attrs that do include the tcp port range stuff, socket buffer sizes, etc.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_BACKLOG,int*listener_backlog_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the listener backlog on an attr.
Parameterslistener_backlog_out The backlog will be stored here.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_BLOCKING_IO,globus_bool_t*use_blocking_io_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the blocking io status in use or in attr.
Parametersuse_blocking_io_out The flag will be set here. GLOBUS_TRUE for enabled.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_CONNECT_RANGE,int*connector_min_port_out,int*connector_max_port_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp source port range on an attr.
Parametersconnector_min_port_out The lower bound will be stored here.
connector_max_port_out The upper bound will be stored here.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_HANDLE,globus_xio_system_socket_t*handle_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp socket handle on an attr, handle, or server.
Parametershandle_out The tcp socket will be stored here. If none is set, GLOBUS_XIO_TCP_INVALID_HANDLE will be
set.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_INTERFACE,char**interface_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the interface on the attr.
Parametersinterface_out A pointer to the interface will be stored here If one is set, NULL will be passed back.
Otherwise, the interface will be duplicated with strdup() and the user should call free() on it.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_KEEPALIVE,globus_bool_t*keepalive_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp keepalive flag.
Parameterskeepalive_out The tcp keepalive flag will be stored here.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_LINGER,globus_bool_t*linger_out,int*linger_time_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp linger flag and time.
Parameterslinger_out The linger flag will be stored here.
linger_time_out The linger time will be set here.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_LISTEN_RANGE,int*listener_min_port_out,int*listener_max_port_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp port range on an attr.
Parameterslistener_min_port_out The lower bound will be stored here.
listener_max_port_out The upper bound will be stored here.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_NO_IPV6,globus_bool_t*no_ipv6_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the no ipv6 flag on an attr.
Parametersno_ipv6_out The no ipv6 flag will be stored here.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_NODELAY,globus_bool_t*nodelay_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp nodelay flag.
Parametersnodelay_out The no delay flag will be stored here.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_OOBINLINE,globus_bool_t*oobinline_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the oobinline flag.
Parametersoobinline_out The oobinline flag will be stored here.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_PORT,int*listener_port_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp port number to bind to.
Parameterslistener_port_out The port will be stored here.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_RCVBUF,int*rcvbuf_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp receive buffer size on the attr or handle.
Parametersrcvbuf_out The receive buffer size will be stored here.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_RESTRICT_PORT,globus_bool_t*restrict_port_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the restrict port flag.
Parametersrestrict_port_out The restrict port flag will be stored here.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_REUSEADDR,globus_bool_t*resuseaddr_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the reuseaddr flag on an attr.
Parametersresuseaddr_out The reuseaddr flag will be stored here.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_SERVICE,char**service_name_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp service name to bind to.
Parametersservice_name_out A pointer to the service name will be stored here If none is set, NULL will be
passed back. Otherwise, the name will be duplicated with strdup() and the user should call free() on
it.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_GET_SNDBUF,int*sndbuf_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp send buffer size on the attr or handle.
Parameterssndbuf_out The send buffer size will be stored here.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_BACKLOG,intlistener_backlog)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Set the listener backlog on a server.
Used only on attrs for globus_xio_server_create(). The default backlog is -1 (system maximum)
Parameterslistener_backlog This indicates the maximum length of the system's queue of pending connections. Any
connection attempts when the queue is full will fail. If backlog is equal to -1, then the system-
specific maximum queue length will be used.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_BLOCKING_IO,globus_bool_tuse_blocking_io)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Enable true blocking io when making globus_xio_read/write() calls. Note:
use with caution. you can deadlock an entire app with this.
Parametersuse_blocking_io If GLOBUS_TRUE, true blocking io will be enabled. GLOBUS_FALSE will disable it
(default);
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_CONNECT_RANGE,intconnector_min_port,intconnector_max_port)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Set the tcp port range to confine the server to.
Used only on attrs for globus_xio_register_open(). It overrides the range set in the
GLOBUS_TCP_SOURCE_RANGE env variable. If 'restrict port' is true, the connecting socket's local port will
be constrained to the range specified.
Parametersconnector_min_port The lower bound on the listener port. (default 0 -- no bound)
connector_max_port The upper bound on the listener port. (default 0 -- no bound)
SeealsoGLOBUS_XIO_TCP_SET_RESTRICT_PORTglobus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_HANDLE,globus_xio_system_socket_thandle)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Set the tcp socket to use for a handle or server.
Used only on attrs for globus_xio_server_create() or globus_xio_register_open().
Parametershandle Use this handle (fd or SOCKET) for the listener or connection. Note: close() will not be
called on this handle.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_INTERFACE,constchar*interface)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Set the interface to bind a listener or connection to.
Used only on attrs for globus_xio_server_create() or globus_xio_register_open.
Parametersinterface The interface to use. Can be a hostname or numeric IP
string opt: iface=stringglobus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_KEEPALIVE,globus_bool_tkeepalive)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Enable tcp keepalive.
Used on attrs for globus_xio_server_create(), globus_xio_register_open() and with
globus_xio_handle_cntl() to determine whether or not to periodically send 'keepalive' messages on a
connected socket handle. This may enable earlier detection of broken connections.
Parameterskeepalive GLOBUS_TRUE to enable, GLOBUS_FALSE to disable (default)
string opt: keepalive=boolglobus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_LINGER,globus_bool_tlinger,intlinger_time)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Set tcp linger.
Used on attrs for globus_xio_server_create(), globus_xio_register_open() and with
globus_xio_handle_cntl() to determine what to do when data is in the socket's buffer when the socket is
closed. If linger is set to true, then the close operation will block until the socket buffers are empty,
or the linger_time has expired. If this is enabled, any data remaining after the linger time has expired,
will be discarded. If this is disabled, close finishes immediately, but the OS will still attempt to
transmit the remaining data.
Parameterslinger GLOBUS_TRUE to enable, GLOBUS_FALSE to disable (default)
linger_time The time (in seconds) to block at close time if linger is true and data is queued in the
socket buffer.
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_LISTEN_RANGE,intlistener_min_port,intlistener_max_port)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Set the tcp port range to confine the server to.
Used only on attrs for globus_xio_server_create() where no specific service or port has been set. It
overrides the range set in the GLOBUS_TCP_PORT_RANGE env variable. If 'restrict port' is true, the
server's listening port will be constrained to the range specified.
Parameterslistener_min_port The lower bound on the listener port. (default 0 -- no bound)
listener_max_port The upper bound on the listener port. (default 0 -- no bound)
SeealsoGLOBUS_XIO_TCP_SET_RESTRICT_PORT
string opt: listen_range=int,intglobus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_NO_IPV6,globus_bool_tno_ipv6)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Restrict to IPV4 only.
Used only on attrs for globus_xio_server_create() or globus_xio_register_open(). Disallow IPV6 sockets
from being used (default is to use either ipv4 or ipv6)
Parametersno_ipv6 GLOBUS_TRUE to disallow ipv6, GLOBUS_FALSE to allow (default)
string opt: noipv6=boolglobus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_NODELAY,globus_bool_tnodelay)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Disable Nagle's algorithm.
Used on attrs for globus_xio_server_create(), globus_xio_register_open() and with
globus_xio_handle_cntl() to determine whether or not to disable Nagle's algorithm. If set to GLOBUS_TRUE,
the socket will send packets as soon as possible with no unnecessary delays introduced.
Parametersnodelay GLOBUS_TRUE to disable nagle, GLOBUS_FALSE to enable (default)
string opt: nodelay=boolglobus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_OOBINLINE,globus_bool_toobinline)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Receive out of band data (tcp urgent data) in normal stream.
Used on attrs for globus_xio_server_create(), globus_xio_register_open() and with
globus_xio_handle_cntl() to choose whether out-of-band data is received in the normal data queue.
(Currently, there is no other way to receive OOB data)
Parametersoobinline GLOBUS_TRUE to enable, GLOBUS_FALSE to disable (default)
globus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_PORT,intlistener_port)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Set the tcp port number to bind to.
Used only on attrs for globus_xio_server_create(). The default port number is 0 (system assigned)
Parameterslistener_port The port number to use when setting up the listener. If the service name is also set,
this will only be used if that can't be resolved.
string opt: port=intglobus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_RCVBUF,intrcvbuf)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Set the tcp socket receive buffer size.
Used on attrs for globus_xio_server_create(), globus_xio_register_open() and with
globus_xio_handle_cntl() to set the size of the receive buffer used on the socket. The receive buffer
size is often used by the operating system to choose the appropriate TCP window size.
Parametersrcvbuf The receive buffer size in bytes. (default is system specific)
string opt: rcvbuf=formattedintglobus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_RESTRICT_PORT,globus_bool_trestrict_port)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Enable or disable the listener or connector range constraints.
Used only on attrs for globus_xio_server_create() or globus_xio_register_open(). This enables or ignores
the port range found in the attr or in then env. By default, those ranges are enabled.
Parametersrestrict_port GLOBUS_TRUE to enable (default), GLOBUS_FALSE to disable.
SeealsoGLOBUS_XIO_TCP_SET_LISTEN_RANGEGLOBUS_XIO_TCP_SET_CONNECT_RANGEglobus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_REUSEADDR,globus_bool_tresuseaddr)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Reuse addr when binding.
Used only on attrs for globus_xio_server_create() or globus_xio_register_open() to determine whether or
not to allow reuse of addresses when binding a socket to a port number.
Parametersresuseaddr GLOBUS_TRUE to allow, GLOBUS_FALSE to disallow (default)
string opt: reuse=boolglobus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_SERVICE,constchar*service_name)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Set the tcp service name to bind to.
Used only on attrs for globus_xio_server_create().
Parametersservice_name The service name to use when setting up the listener. If the service name cannot be
resolved, the port (if one is set) will be used instead.
string opt: port=stringglobus_result_tglobus_xio_attr_cntl(attr,driver,GLOBUS_XIO_TCP_SET_SNDBUF,intsndbuf)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Set the tcp socket send buffer size.
Used on attrs for globus_xio_server_create(), globus_xio_register_open() and with
globus_xio_handle_cntl() to set the size of the send buffer used on the socket.
Parameterssndbuf The send buffer size in bytes to use. (default is system specific)
string opt: sndbuf=formattedintglobus_result_tglobus_xio_data_descriptor_cntl(dd,driver,GLOBUS_XIO_TCP_GET_SEND_FLAGS,int*send_flags_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get tcp send flags.
Parameterssend_flags_out The flags to use will be stored here.
globus_result_tglobus_xio_data_descriptor_cntl(dd,driver,GLOBUS_XIO_TCP_SET_SEND_FLAGS,intsend_flags)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Set tcp send flags.
Used only for data descriptors to write calls.
Parameterssend_flags The flags to use when sending data.
Seealsoglobus_xio_tcp_send_flags_tglobus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_GET_BLOCKING_IO,globus_bool_t*use_blocking_io_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the blocking io status in use or in attr.
Parametersuse_blocking_io_out The flag will be set here. GLOBUS_TRUE for enabled.
globus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_GET_HANDLE,globus_xio_system_socket_t*handle_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp socket handle on an attr, handle, or server.
Parametershandle_out The tcp socket will be stored here. If none is set, GLOBUS_XIO_TCP_INVALID_HANDLE will be
set.
globus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_GET_KEEPALIVE,globus_bool_t*keepalive_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp keepalive flag.
Parameterskeepalive_out The tcp keepalive flag will be stored here.
globus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_GET_LINGER,globus_bool_t*linger_out,int*linger_time_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp linger flag and time.
Parameterslinger_out The linger flag will be stored here.
linger_time_out The linger time will be set here.
globus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_GET_LOCAL_CONTACT,char**contact_string_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get local socket info.
Parameterscontact_string_out A pointer to a contact string for the local end of a connected socket or listener
will be stored here. The user should free() it when done with it. It will be in the format:
<hostname>:<port>
Seealsoglobus_xio_server_get_contact_string()GLOBUS_XIO_GET_LOCAL_CONTACTglobus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_GET_LOCAL_NUMERIC_CONTACT,char**contact_string_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get local socket info.
Parameterscontact_string_out A pointer to a contact string for the local end of a connected socket or listener
will be stored here. The user should free() it when done with it. It will be in the format:
<ip>:<port>
SeealsoGLOBUS_XIO_GET_LOCAL_NUMERIC_CONTACTglobus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_GET_NODELAY,globus_bool_t*nodelay_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp nodelay flag.
Parametersnodelay_out The no delay flag will be stored here.
globus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_GET_OOBINLINE,globus_bool_t*oobinline_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the oobinline flag.
Parametersoobinline_out The oobinline flag will be stored here.
globus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_GET_RCVBUF,int*rcvbuf_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp receive buffer size on the attr or handle.
Parametersrcvbuf_out The receive buffer size will be stored here.
globus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_GET_REMOTE_CONTACT,char**contact_string_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get remote socket info.
Parameterscontact_string_out A pointer to a contact string for the remote end of a connected socket will be
stored here. The user should free() it when done with it. It will be in the format: <hostname>:<port>
SeealsoGLOBUS_XIO_GET_REMOTE_CONTACTglobus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_GET_REMOTE_NUMERIC_CONTACT,char**contact_string_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get remote socket info.
Parameterscontact_string_out A pointer to a contact string for the remote end of a connected socket will be
stored here. The user should free() it when done with it. It will be in the format: <ip>:<port>
SeealsoGLOBUS_XIO_GET_REMOTE_NUMERIC_CONTACTglobus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_GET_SNDBUF,int*sndbuf_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp send buffer size on the attr or handle.
Parameterssndbuf_out The send buffer size will be stored here.
globus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_SET_BLOCKING_IO,globus_bool_tuse_blocking_io)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Enable true blocking io when making globus_xio_read/write() calls. Note:
use with caution. you can deadlock an entire app with this.
Parametersuse_blocking_io If GLOBUS_TRUE, true blocking io will be enabled. GLOBUS_FALSE will disable it
(default);
globus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_SET_KEEPALIVE,globus_bool_tkeepalive)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Enable tcp keepalive.
Used on attrs for globus_xio_server_create(), globus_xio_register_open() and with
globus_xio_handle_cntl() to determine whether or not to periodically send 'keepalive' messages on a
connected socket handle. This may enable earlier detection of broken connections.
Parameterskeepalive GLOBUS_TRUE to enable, GLOBUS_FALSE to disable (default)
string opt: keepalive=boolglobus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_SET_LINGER,globus_bool_tlinger,intlinger_time)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Set tcp linger.
Used on attrs for globus_xio_server_create(), globus_xio_register_open() and with
globus_xio_handle_cntl() to determine what to do when data is in the socket's buffer when the socket is
closed. If linger is set to true, then the close operation will block until the socket buffers are empty,
or the linger_time has expired. If this is enabled, any data remaining after the linger time has expired,
will be discarded. If this is disabled, close finishes immediately, but the OS will still attempt to
transmit the remaining data.
Parameterslinger GLOBUS_TRUE to enable, GLOBUS_FALSE to disable (default)
linger_time The time (in seconds) to block at close time if linger is true and data is queued in the
socket buffer.
globus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_SET_NODELAY,globus_bool_tnodelay)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Disable Nagle's algorithm.
Used on attrs for globus_xio_server_create(), globus_xio_register_open() and with
globus_xio_handle_cntl() to determine whether or not to disable Nagle's algorithm. If set to GLOBUS_TRUE,
the socket will send packets as soon as possible with no unnecessary delays introduced.
Parametersnodelay GLOBUS_TRUE to disable nagle, GLOBUS_FALSE to enable (default)
string opt: nodelay=boolglobus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_SET_OOBINLINE,globus_bool_toobinline)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Receive out of band data (tcp urgent data) in normal stream.
Used on attrs for globus_xio_server_create(), globus_xio_register_open() and with
globus_xio_handle_cntl() to choose whether out-of-band data is received in the normal data queue.
(Currently, there is no other way to receive OOB data)
Parametersoobinline GLOBUS_TRUE to enable, GLOBUS_FALSE to disable (default)
globus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_SET_RCVBUF,intrcvbuf)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Set the tcp socket receive buffer size.
Used on attrs for globus_xio_server_create(), globus_xio_register_open() and with
globus_xio_handle_cntl() to set the size of the receive buffer used on the socket. The receive buffer
size is often used by the operating system to choose the appropriate TCP window size.
Parametersrcvbuf The receive buffer size in bytes. (default is system specific)
string opt: rcvbuf=formattedintglobus_result_tglobus_xio_handle_cntl(handle,driver,GLOBUS_XIO_TCP_SET_SNDBUF,intsndbuf)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Set the tcp socket send buffer size.
Used on attrs for globus_xio_server_create(), globus_xio_register_open() and with
globus_xio_handle_cntl() to set the size of the send buffer used on the socket.
Parameterssndbuf The send buffer size in bytes to use. (default is system specific)
string opt: sndbuf=formattedintglobus_result_tglobus_xio_server_cntl(server,driver,GLOBUS_XIO_TCP_GET_HANDLE,globus_xio_system_socket_t*handle_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get the tcp socket handle on an attr, handle, or server.
Parametershandle_out The tcp socket will be stored here. If none is set, GLOBUS_XIO_TCP_INVALID_HANDLE will be
set.
globus_result_tglobus_xio_server_cntl(server,driver,GLOBUS_XIO_TCP_GET_LOCAL_CONTACT,char**contact_string_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get local socket info.
Parameterscontact_string_out A pointer to a contact string for the local end of a connected socket or listener
will be stored here. The user should free() it when done with it. It will be in the format:
<hostname>:<port>
Seealsoglobus_xio_server_get_contact_string()GLOBUS_XIO_GET_LOCAL_CONTACTglobus_result_tglobus_xio_server_cntl(server,driver,GLOBUS_XIO_TCP_GET_LOCAL_NUMERIC_CONTACT,char**contact_string_out)
This is an overloaded member function, provided for convenience. It differs from the above function only
in what argument(s) it accepts. Get local socket info.
Parameterscontact_string_out A pointer to a contact string for the local end of a connected socket or listener
will be stored here. The user should free() it when done with it. It will be in the format:
<ip>:<port>
SeealsoGLOBUS_XIO_GET_LOCAL_NUMERIC_CONTACT