globus_gass_transfer.h(3)

πŸ’– globus_gass_transfer.h(3) πŸ’–

okay so welcome to the globus_gass_transfer.h page, straight out of the Library Functions Manual ✨ this is the GASS transfer header, and she is loaded with goodies β€” macros, typedefs, enums, and a whole roster of functions. let's get into it bestie 🫢


🌈 NAME 🌈

globus_gass_transfer.h β€” GASS transfer. that's it, that's the name, short and iconic πŸ’…


✨ SYNOPSIS ✨

#include 'globus_common.h'

πŸŽ€ Macros πŸŽ€

#define GLOBUS_GASS_TRANSFER_MODULE
#define GLOBUS_GASS_TRANSFER_LENGTH_UNKNOWN
#define GLOBUS_GASS_TRANSFER_TIMESTAMP_UNKNOWN

πŸ¦‹ Typedefs πŸ¦‹

typedef void(* globus_gass_transfer_close_callback_t) (void
    *callback_arg, globus_gass_transfer_listener_t listener)
typedef void(* globus_gass_transfer_listen_callback_t) (void
    *callback_arg, globus_gass_transfer_listener_t listener)
typedef void(* globus_gass_transfer_bytes_callback_t) (void *arg,
    globus_gass_transfer_request_t request, globus_byte_t *bytes,
    globus_size_t length, globus_bool_t last_data)

πŸ’œ Enumerations πŸ’œ

enum globus_gass_transfer_request_type_t {
    GLOBUS_GASS_TRANSFER_REQUEST_TYPE_INVALID,
    GLOBUS_GASS_TRANSFER_REQUEST_TYPE_GET,
    GLOBUS_GASS_TRANSFER_REQUEST_TYPE_PUT,
    GLOBUS_GASS_TRANSFER_REQUEST_TYPE_APPEND }
enum globus_gass_transfer_request_status_t {
    GLOBUS_GASS_TRANSFER_REQUEST_INVALID,
    GLOBUS_GASS_TRANSFER_REQUEST_STARTING,
    GLOBUS_GASS_TRANSFER_REQUEST_PENDING,
    GLOBUS_GASS_TRANSFER_REQUEST_FAILED,
    GLOBUS_GASS_TRANSFER_REQUEST_REFERRED,
    GLOBUS_GASS_TRANSFER_REQUEST_DENIED,
    GLOBUS_GASS_TRANSFER_REQUEST_DONE }
enum { GLOBUS_GASS_TRANSFER_ERROR_BAD_PORT = 2,
    GLOBUS_GASS_TRANSFER_ERROR_INTERNAL_ERROR,
    GLOBUS_GASS_TRANSFER_ERROR_BAD_URL,
    GLOBUS_GASS_TRANSFER_ERROR_NOT_SUPPORTED,
    GLOBUS_GASS_TRANSFER_ERROR_NOT_IMPLEMENTED,
    GLOBUS_GASS_TRANSFER_ERROR_MALLOC_FAILED,
    GLOBUS_GASS_TRANSFER_ERROR_NOT_INITIALIZED,
    GLOBUS_GASS_TRANSFER_ERROR_NULL_POINTER,
    GLOBUS_GASS_TRANSFER_ERROR_NOT_REGISTERED,
    GLOBUS_GASS_TRANSFER_ERROR_NOT_FOUND,
    GLOBUS_GASS_TRANSFER_ERROR_INVALID_USE,
    GLOBUS_GASS_TRANSFER_ERROR_TOO_LARGE,
    GLOBUS_GASS_TRANSFER_ERROR_REQUEST_FAILED,
    GLOBUS_GASS_TRANSFER_ERROR_DONE,
    GLOBUS_GASS_TRANSFER_ERROR_ALREADY_REGISTERED,
    GLOBUS_GASS_TRANSFER_ERROR_OPEN_FAILED,
    GLOBUS_GASS_TRANSFER_ERROR_TRANSFER_FAILED }
enum

🌸 Functions 🌸

int globus_gass_transfer_register_get (globus_gass_transfer_request_t
    *request, globus_gass_transfer_requestattr_t *attr, char *url,
    globus_gass_transfer_callback_t callback, void *user_arg)
int globus_gass_transfer_get (globus_gass_transfer_request_t *request,
    globus_gass_transfer_requestattr_t *attr, char *url)
int globus_gass_transfer_register_put (globus_gass_transfer_request_t
    *request, globus_gass_transfer_requestattr_t *attr, char *url,
    globus_size_t length, globus_gass_transfer_callback_t callback, void
    *user_arg)
int globus_gass_transfer_put (globus_gass_transfer_request_t *request,
    globus_gass_transfer_requestattr_t *attr, char *url, globus_size_t
    length)
int globus_gass_transfer_register_append (globus_gass_transfer_request_t
    *request, globus_gass_transfer_requestattr_t *attr, char *url,
    globus_size_t length, globus_gass_transfer_callback_t callback, void
    *user_arg)
int globus_gass_transfer_append (globus_gass_transfer_request_t
    *request, globus_gass_transfer_requestattr_t *attr, char *url,
    globus_size_t length)
int globus_gass_transfer_create_listener
    (globus_gass_transfer_listener_t *listener,
    globus_gass_transfer_listenerattr_t *attr, char *scheme)
int globus_gass_transfer_close_listener (globus_gass_transfer_listener_t
    listener, globus_gass_transfer_close_callback_t callback, void
    *user_arg)
int globus_gass_transfer_register_listen
    (globus_gass_transfer_listener_t listener,
    globus_gass_transfer_listen_callback_t callback, void *user_arg)
int globus_gass_transfer_register_accept (globus_gass_transfer_request_t
    *request, globus_gass_transfer_requestattr_t *attr,
    globus_gass_transfer_listener_t listener,
    globus_gass_transfer_callback_t callback, void *user_arg)
int globus_gass_transfer_refer (globus_gass_transfer_request_t request,
    char **urls, globus_size_t num_urls)
int globus_gass_transfer_authorize (globus_gass_transfer_request_t
    request, globus_size_t total_length)
int globus_gass_transfer_deny (globus_gass_transfer_request_t request,
    int reason, char *message)
char * globus_gass_transfer_listener_get_base_url
    (globus_gass_transfer_listener_t listener)
void * globus_gass_transfer_listener_get_user_pointer
    (globus_gass_transfer_listener_t listener)
int globus_gass_transfer_listener_set_user_pointer
    (globus_gass_transfer_listener_t listener, void *user_pointer)
int globus_gass_transfer_send_bytes (globus_gass_transfer_request_t
    request, globus_byte_t *bytes, globus_size_t send_length,
    globus_bool_t last_data, globus_gass_transfer_bytes_callback_t
    callback, void *user_arg)
int globus_gass_transfer_receive_bytes (globus_gass_transfer_request_t
    request, globus_byte_t *bytes, globus_size_t max_length,
    globus_size_t wait_for_length, globus_gass_transfer_bytes_callback_t
    callback, void *user_arg)
globus_object_t * globus_gass_transfer_requestattr_initialize
    (globus_object_t *obj, char *proxy_url, globus_size_t block_size,
    globus_gass_transfer_file_mode_t file_mode, globus_bool_t
    connection_reuse)
globus_object_t * globus_gass_transfer_socket_requestattr_initialize
    (globus_object_t *obj, char *proxy_url, globus_size_t block_size,
    globus_gass_transfer_file_mode_t file_mode, globus_bool_t
    connection_reuse, int sndbuf, int rcvbuf, globus_bool_t nodelay)
globus_object_t * globus_gass_transfer_secure_requestattr_initialize
    (globus_object_t *obj, char *proxy_url, globus_size_t block_size,
    globus_gass_transfer_file_mode_t file_mode, globus_bool_t
    connection_reuse, int sndbuf, int rcvbuf, globus_bool_t nodelay,
    globus_gass_transfer_authorization_t authorization, char *subject)
globus_object_t * globus_gass_transfer_listenerattr_initialize
    (globus_object_t *obj, int backlog, unsigned short port)

🌟 Detailed Description 🌟

GASS transfer. literally that's the whole description bestie, she said what she said πŸ’…


πŸ“ Macro Definition Documentation πŸ“

#define GLOBUS_GASS_TRANSFER_LENGTH_UNKNOWN

the value you use for files where we genuinely do not know the length. mystery file energy, we respect it πŸ”₯

#define GLOBUS_GASS_TRANSFER_TIMESTAMP_UNKNOWN

the value for timestamps where we don't know the actual value. clock said idk πŸ•πŸ’€


πŸ‘‘ Enumeration Type Documentation πŸ‘‘

anonymous enum

GASS error codes β€” the whole mood board of things that can go wrong:

  • GLOBUS_GASS_TRANSFER_ERROR_BAD_PORT β€” Invalid port in URL
  • GLOBUS_GASS_TRANSFER_ERROR_INTERNAL_ERROR β€” Something bad occurred while processing the request
  • GLOBUS_GASS_TRANSFER_ERROR_BAD_URL β€” Unparsable URL
  • GLOBUS_GASS_TRANSFER_ERROR_NOT_SUPPORTED β€” Invalid file open mode in the GASS File library
  • GLOBUS_GASS_TRANSFER_ERROR_NOT_IMPLEMENTED β€” Operation not supported by GASS for this type of URL
  • GLOBUS_GASS_TRANSFER_ERROR_MALLOC_FAILED β€” Out of memory
  • GLOBUS_GASS_TRANSFER_ERROR_NOT_INITIALIZED β€” Uninitialized or invalid handle
  • GLOBUS_GASS_TRANSFER_ERROR_NULL_POINTER β€” NULL pointer passed as parameter
  • GLOBUS_GASS_TRANSFER_ERROR_NOT_REGISTERED β€” GASS Server not yet registered
  • GLOBUS_GASS_TRANSFER_ERROR_NOT_FOUND β€” URL not in cache
  • GLOBUS_GASS_TRANSFER_ERROR_INVALID_USE β€” Invalid use of a GASS handle
  • GLOBUS_GASS_TRANSFER_ERROR_TOO_LARGE β€” Bytes array exceeds GASS request size
  • GLOBUS_GASS_TRANSFER_ERROR_REQUEST_FAILED β€” GASS Transfer request did not complete successfully
  • GLOBUS_GASS_TRANSFER_ERROR_DONE β€” GASS handle already closed before this operation began
  • GLOBUS_GASS_TRANSFER_ERROR_ALREADY_REGISTERED β€” GASS handle already registered for processing
  • GLOBUS_GASS_TRANSFER_ERROR_OPEN_FAILED β€” Could not open local file
  • GLOBUS_GASS_TRANSFER_ERROR_TRANSFER_FAILED β€” A protocol error or client-initiated failure has occurred
heads up: GLOBUS_GASS_TRANSFER_ERROR_BAD_PORT is = 2, and everything after it just counts up from there. no cap πŸ’―

anonymous enum

Default buffer length for the globus_gass_transfer_assist library. that's the whole thing, a little anonymous legend 🧚


πŸ’œ Author πŸ’œ

Generated automatically by Doxygen for globus_gass_transfer from the source code. yes bestie, the robot wrote it, we're just here to make it cute ✨


okay that's the whole page!! this was the globus_gass_transfer page, Version 9.5 of globus_gass_transfer.h(3) β€” go forth and transfer, you absolute icon πŸ‘‘πŸ’–πŸ¦‹

πŸ“¦ where this page comes from