17 #if !defined(GLOBUS_XIO_H)
20 #include "globus_common.h"
21 #include "globus_xio_types.h"
22 #include "globus_xio_util.h"
23 #include "globus_xio_load.h"
29 #ifndef GLOBUS_GLOBAL_DOCUMENT_SET
213 globus_xio_attr_t * attr);
243 globus_xio_attr_t attr,
244 globus_xio_driver_t driver,
255 globus_xio_attr_t * dst,
256 globus_xio_attr_t src);
269 globus_xio_attr_t attr);
282 globus_xio_stack_t * stack,
283 globus_xio_attr_t stack_attr);
295 globus_xio_stack_t stack,
296 globus_xio_driver_t driver);
304 globus_xio_stack_t * dst,
305 globus_xio_stack_t src);
313 globus_xio_stack_t stack);
342 globus_xio_server_t server,
343 globus_xio_handle_t handle,
344 globus_result_t result,
356 globus_xio_server_t server,
379 globus_xio_server_t * server,
380 globus_xio_attr_t server_attr,
381 globus_xio_stack_t stack);
399 globus_xio_server_t server,
400 char ** contact_string);
411 globus_xio_server_t server,
421 globus_xio_server_t server);
433 globus_xio_server_t server,
434 globus_xio_driver_t driver,
448 globus_xio_handle_t * out_handle,
449 globus_xio_server_t server);
460 globus_xio_server_t server,
474 globus_xio_handle_t * handle,
475 globus_xio_stack_t stack);
504 typedef globus_bool_t
506 globus_xio_handle_t handle,
510 typedef globus_bool_t
511 (*globus_xio_timeout_server_callback_t)(
512 globus_xio_server_t server,
534 globus_xio_data_descriptor_t * data_desc,
535 globus_xio_handle_t handle);
543 globus_xio_data_descriptor_t data_desc);
555 globus_xio_data_descriptor_t data_desc,
556 globus_xio_driver_t driver,
571 globus_xio_handle_t handle,
572 globus_result_t result,
585 globus_xio_handle_t handle,
586 globus_result_t result,
587 globus_byte_t * buffer,
589 globus_size_t nbytes,
590 globus_xio_data_descriptor_t data_desc,
603 globus_xio_handle_t handle,
604 globus_result_t result,
605 globus_xio_iovec_t * iovec,
607 globus_size_t nbytes,
608 globus_xio_data_descriptor_t data_desc,
625 globus_xio_handle_t handle,
626 globus_xio_driver_t driver,
692 globus_xio_handle_t handle,
693 const char * contact_string,
694 globus_xio_attr_t attr,
704 globus_xio_handle_t handle,
705 const char * contact_string,
706 globus_xio_attr_t attr);
714 globus_xio_handle_t handle,
715 globus_byte_t * buffer,
716 globus_size_t buffer_length,
717 globus_size_t waitforbytes,
718 globus_xio_data_descriptor_t data_desc,
728 globus_xio_handle_t handle,
729 globus_byte_t * buffer,
730 globus_size_t buffer_length,
731 globus_size_t waitforbytes,
732 globus_size_t * nbytes,
733 globus_xio_data_descriptor_t data_desc);
741 globus_xio_handle_t handle,
742 globus_xio_iovec_t * iovec,
744 globus_size_t waitforbytes,
745 globus_xio_data_descriptor_t data_desc,
755 globus_xio_handle_t handle,
756 globus_xio_iovec_t * iovec,
758 globus_size_t waitforbytes,
759 globus_size_t * nbytes,
760 globus_xio_data_descriptor_t data_desc);
768 globus_xio_handle_t handle,
769 globus_byte_t * buffer,
770 globus_size_t buffer_length,
771 globus_size_t waitforbytes,
772 globus_xio_data_descriptor_t data_desc,
782 globus_xio_handle_t handle,
783 globus_byte_t * buffer,
784 globus_size_t buffer_length,
785 globus_size_t waitforbytes,
786 globus_size_t * nbytes,
787 globus_xio_data_descriptor_t data_desc);
795 globus_xio_handle_t handle,
796 globus_xio_iovec_t * iovec,
798 globus_size_t waitforbytes,
799 globus_xio_data_descriptor_t data_desc,
809 globus_xio_handle_t handle,
810 globus_xio_iovec_t * iovec,
812 globus_size_t waitforbytes,
813 globus_size_t * nbytes,
814 globus_xio_data_descriptor_t data_desc);
821 globus_xio_handle_cancel_operations(
822 globus_xio_handle_t handle,
826 globus_xio_server_cancel_accept(
827 globus_xio_server_t server);
851 globus_xio_handle_t handle,
852 globus_xio_attr_t attr,
862 globus_xio_handle_t handle,
863 globus_xio_attr_t attr);
988 globus_xio_driver_list_ent_t *
989 globus_xio_driver_list_find_driver(
990 globus_list_t * driver_list,
991 const char * driver_name);
994 globus_xio_driver_list_destroy(
995 globus_list_t * driver_list,
996 globus_bool_t unload);
1000 globus_list_t * driver_list,
1001 globus_xio_stack_t stack,
1002 globus_xio_attr_t attr);
1005 globus_xio_driver_list_from_string(
1006 char * driver_string,
1007 globus_list_t ** driver_list,
1008 globus_hashtable_t * safe_table);
1011 globus_xio_driver_safe_table_from_string(
1012 char * driver_string,
1013 globus_hashtable_t * safe_table);
1016 globus_xio_driver_list_create_ent(
1017 const char * driver_desc,
1018 globus_xio_driver_t driver_in,
1020 globus_xio_driver_list_ent_t ** ent_out);
1022 extern globus_module_descriptor_t globus_i_xio_module;
1023 #define GLOBUS_XIO_MODULE &globus_i_xio_module
1025 #define _XIOSL(s) globus_common_i18n_get_string( \
1026 GLOBUS_XIO_MODULE, \
1058 globus_xio_handle_t * out_h,
1059 const char * scheme,
1060 globus_xio_attr_t attr,
1061 char * param_string);
globus_result_t globus_xio_writev(globus_xio_handle_t handle, globus_xio_iovec_t *iovec, int iovec_count, globus_size_t waitforbytes, globus_size_t *nbytes, globus_xio_data_descriptor_t data_desc)
Definition: globus_xio_handle.c:3454
globus_result_t globus_xio_server_register_close(globus_xio_server_t server, globus_xio_server_callback_t cb, void *user_arg)
Definition: globus_xio_server.c:1406
globus_result_t globus_xio_attr_copy(globus_xio_attr_t *dst, globus_xio_attr_t src)
Definition: globus_xio_attr.c:557
globus_result_t globus_xio_register_writev(globus_xio_handle_t handle, globus_xio_iovec_t *iovec, int iovec_count, globus_size_t waitforbytes, globus_xio_data_descriptor_t data_desc, globus_xio_iovec_callback_t cb, void *user_arg)
Definition: globus_xio_handle.c:2501
globus_result_t globus_xio_register_open(globus_xio_handle_t handle, const char *contact_string, globus_xio_attr_t attr, globus_xio_callback_t cb, void *user_arg)
Definition: globus_xio_handle.c:2148
globus_result_t globus_xio_stack_push_driver(globus_xio_stack_t stack, globus_xio_driver_t driver)
Definition: globus_xio_attr.c:1005
globus_result_t globus_xio_stack_init(globus_xio_stack_t *stack, globus_xio_attr_t stack_attr)
Definition: globus_xio_attr.c:929
void(* globus_xio_iovec_callback_t)(globus_xio_handle_t handle, globus_result_t result, globus_xio_iovec_t *iovec, int count, globus_size_t nbytes, globus_xio_data_descriptor_t data_desc, void *user_arg)
Definition: globus_xio.h:602
globus_result_t globus_xio_data_descriptor_destroy(globus_xio_data_descriptor_t data_desc)
Definition: globus_xio_attr.c:752
enum globus_i_xio_op_type_e globus_xio_operation_type_t
globus_result_t globus_xio_attr_init(globus_xio_attr_t *attr)
Definition: globus_xio_attr.c:38
globus_result_t globus_xio_register_close(globus_xio_handle_t handle, globus_xio_attr_t attr, globus_xio_callback_t cb, void *user_arg)
Definition: globus_xio_handle.c:2583
globus_result_t globus_xio_server_cntl(globus_xio_server_t server, globus_xio_driver_t driver, int cmd,...)
Definition: globus_xio_server.c:1063
globus_result_t globus_xio_server_create(globus_xio_server_t *server, globus_xio_attr_t server_attr, globus_xio_stack_t stack)
Definition: globus_xio_server.c:869
globus_result_t globus_xio_server_close(globus_xio_server_t server)
Definition: globus_xio_server.c:1455
globus_result_t globus_xio_handle_create_from_url(globus_xio_handle_t *out_h, const char *scheme, globus_xio_attr_t attr, char *param_string)
Definition: globus_xio_handle.c:3742
void(* globus_xio_data_callback_t)(globus_xio_handle_t handle, globus_result_t result, globus_byte_t *buffer, globus_size_t len, globus_size_t nbytes, globus_xio_data_descriptor_t data_desc, void *user_arg)
Definition: globus_xio.h:584
globus_result_t globus_xio_read(globus_xio_handle_t handle, globus_byte_t *buffer, globus_size_t buffer_length, globus_size_t waitforbytes, globus_size_t *nbytes, globus_xio_data_descriptor_t data_desc)
Definition: globus_xio_handle.c:3073
globus_result_t globus_xio_data_descriptor_init(globus_xio_data_descriptor_t *data_desc, globus_xio_handle_t handle)
Definition: globus_xio_attr.c:684
globus_result_t globus_xio_server_register_accept(globus_xio_server_t server, globus_xio_accept_callback_t cb, void *user_arg)
Definition: globus_xio_server.c:1135
globus_result_t globus_xio_driver_list_to_stack_attr(globus_list_t *driver_list, globus_xio_stack_t stack, globus_xio_attr_t attr)
Add a list of driver entries to a stack.
Definition: globus_xio_attr.c:181
globus_result_t globus_xio_readv(globus_xio_handle_t handle, globus_xio_iovec_t *iovec, int iovec_count, globus_size_t waitforbytes, globus_size_t *nbytes, globus_xio_data_descriptor_t data_desc)
Definition: globus_xio_handle.c:3198
void(* globus_xio_server_callback_t)(globus_xio_server_t server, void *user_arg)
Definition: globus_xio.h:355
globus_result_t globus_xio_write(globus_xio_handle_t handle, globus_byte_t *buffer, globus_size_t buffer_length, globus_size_t waitforbytes, globus_size_t *nbytes, globus_xio_data_descriptor_t data_desc)
Definition: globus_xio_handle.c:3329
globus_result_t globus_xio_server_get_contact_string(globus_xio_server_t server, char **contact_string)
Definition: globus_xio_server.c:1021
globus_result_t globus_xio_server_accept(globus_xio_handle_t *out_handle, globus_xio_server_t server)
Definition: globus_xio_server.c:1250
globus_result_t globus_xio_open(globus_xio_handle_t handle, const char *contact_string, globus_xio_attr_t attr)
Definition: globus_xio_handle.c:2934
globus_result_t globus_xio_register_readv(globus_xio_handle_t handle, globus_xio_iovec_t *iovec, int iovec_count, globus_size_t waitforbytes, globus_xio_data_descriptor_t data_desc, globus_xio_iovec_callback_t cb, void *user_arg)
Definition: globus_xio_handle.c:2341
globus_result_t globus_xio_attr_cntl(globus_xio_attr_t attr, globus_xio_driver_t driver, int cmd,...)
Definition: globus_xio_attr.c:433
globus_result_t globus_xio_register_read(globus_xio_handle_t handle, globus_byte_t *buffer, globus_size_t buffer_length, globus_size_t waitforbytes, globus_xio_data_descriptor_t data_desc, globus_xio_data_callback_t cb, void *user_arg)
Definition: globus_xio_handle.c:2264
globus_result_t globus_xio_close(globus_xio_handle_t handle, globus_xio_attr_t attr)
Definition: globus_xio_handle.c:3582
void(* globus_xio_callback_t)(globus_xio_handle_t handle, globus_result_t result, void *user_arg)
Definition: globus_xio.h:570
globus_result_t globus_xio_data_descriptor_cntl(globus_xio_data_descriptor_t data_desc, globus_xio_driver_t driver, int cmd,...)
Definition: globus_xio_attr.c:816
void(* globus_xio_accept_callback_t)(globus_xio_server_t server, globus_xio_handle_t handle, globus_result_t result, void *user_arg)
Definition: globus_xio.h:341
globus_result_t globus_xio_handle_cntl(globus_xio_handle_t handle, globus_xio_driver_t driver, int cmd,...)
Definition: globus_xio_handle.c:2694
globus_result_t globus_xio_handle_create(globus_xio_handle_t *handle, globus_xio_stack_t stack)
Definition: globus_xio_handle.c:2058
globus_result_t globus_xio_register_write(globus_xio_handle_t handle, globus_byte_t *buffer, globus_size_t buffer_length, globus_size_t waitforbytes, globus_xio_data_descriptor_t data_desc, globus_xio_data_callback_t cb, void *user_arg)
Definition: globus_xio_handle.c:2421
globus_result_t globus_xio_stack_destroy(globus_xio_stack_t stack)
Definition: globus_xio_attr.c:1078
globus_result_t globus_xio_attr_destroy(globus_xio_attr_t attr)
Definition: globus_xio_attr.c:478
globus_bool_t(* globus_xio_timeout_callback_t)(globus_xio_handle_t handle, globus_xio_operation_type_t type, void *user_arg)
Definition: globus_xio.h:505
globus_result_t globus_xio_stack_copy(globus_xio_stack_t *dst, globus_xio_stack_t src)
Definition: globus_xio_attr.c:955