.TH "globus_gram_protocol.h" 3 "Version 13.6" "globus_gram_protocol" \" -*- nroff -*- .ad l .nh .SH NAME globus_gram_protocol.h \- GRAM Protocol API\&. .SH SYNOPSIS .br .PP \fC#include 'globus_io\&.h'\fP .br \fC#include 'globus_gram_protocol_constants\&.h'\fP .br .SS "Functions" .in +1c .ti -1c .RI "int \fBglobus_gram_protocol_setup_attr\fP (globus_io_attr_t *attr)" .br .RI "Create default I/O attribute for GRAM\&. " .ti -1c .RI "globus_bool_t \fBglobus_gram_protocol_authorize_self\fP (gss_ctx_id_t context)" .br .RI "Determine if a GSSAPI context has the same source and target identities\&. " .ti -1c .RI "int \fBglobus_gram_protocol_allow_attach\fP (char **url, globus_gram_protocol_callback_t callback, void *callback_arg)" .br .RI "Create a GRAM protocol service listener\&. " .ti -1c .RI "int \fBglobus_gram_protocol_callback_disallow\fP (char *url)" .br .RI "Stop a GASS protocol listener from handling new requests\&. " .ti -1c .RI "int \fBglobus_gram_protocol_post\fP (const char *url, globus_gram_protocol_handle_t *handle, globus_io_attr_t *attr, globus_byte_t *message, globus_size_t message_size, globus_gram_protocol_callback_t callback, void *callback_arg)" .br .RI "Post a GRAM protocol request to a GRAM server\&. " .ti -1c .RI "int \fBglobus_gram_protocol_post_delegation\fP (const char *url, globus_gram_protocol_handle_t *handle, globus_io_attr_t *attr, globus_byte_t *message, globus_size_t message_size, gss_cred_id_t cred_handle, gss_OID_set restriction_oids, gss_buffer_set_t restriction_buffers, OM_uint32 req_flags, OM_uint32 time_req, globus_gram_protocol_callback_t callback, void *callback_arg)" .br .RI "Post a GRAM protocol delegation request to a GRAM server\&. " .ti -1c .RI "int \fBglobus_gram_protocol_reply\fP (globus_gram_protocol_handle_t handle, int code, globus_byte_t *message, globus_size_t message_size)" .br .RI "Reply to a GRAM protocol message\&. " .ti -1c .RI "int \fBglobus_gram_protocol_accept_delegation\fP (globus_gram_protocol_handle_t handle, gss_OID_set restriction_oids, gss_buffer_set_t restriction_bufers, OM_uint32 req_flags, OM_uint32 time_req, globus_gram_protocol_delegation_callback_t callback, void *arg)" .br .RI "Perform the server-side of the GSSAPI delegation handshake to receive a new delegated credential\&. " .ti -1c .RI "int \fBglobus_gram_protocol_frame_request\fP (const char *url, const globus_byte_t *msg, globus_size_t msgsize, globus_byte_t **framedmsg, globus_size_t *framedsize)" .br .RI "Create a HTTP-framed copy of a GRAM request\&. " .ti -1c .RI "int \fBglobus_gram_protocol_frame_reply\fP (int code, const globus_byte_t *msg, globus_size_t msgsize, globus_byte_t **framedmsg, globus_size_t *framedsize)" .br .RI "Create a HTTP-framed copy of a GRAM reply\&. " .ti -1c .RI "int \fBglobus_gram_protocol_pack_job_request\fP (int job_state_mask, const char *callback_url, const char *rsl, globus_byte_t **query, globus_size_t *querysize)" .br .RI "Pack a GRAM Job Request\&. " .ti -1c .RI "int \fBglobus_gram_protocol_unpack_job_request\fP (const globus_byte_t *query, globus_size_t querysize, int *job_state_mask, char **callback_url, char **description)" .br .RI "Unpack a GRAM Job Request\&. " .ti -1c .RI "int \fBglobus_gram_protocol_pack_job_request_reply\fP (int status, const char *job_contact, globus_byte_t **reply, globus_size_t *replysize)" .br .RI "Pack a GRAM reply message\&. " .ti -1c .RI "int \fBglobus_gram_protocol_unpack_job_request_reply\fP (const globus_byte_t *reply, globus_size_t replysize, int *status, char **job_contact)" .br .RI "Unpack a GRAM reply message\&. " .ti -1c .RI "int \fBglobus_gram_protocol_pack_job_request_reply_with_extensions\fP (int status, const char *job_contact, globus_hashtable_t *extensions, globus_byte_t **reply, globus_size_t *replysize)" .br .RI "Pack a GRAM reply message with extension attributes\&. " .ti -1c .RI "int \fBglobus_gram_protocol_unpack_job_request_reply_with_extensions\fP (const globus_byte_t *reply, globus_size_t replysize, int *status, char **job_contact, globus_hashtable_t *extensions)" .br .RI "Unpack a GRAM reply message, parsing all extensions\&. " .ti -1c .RI "int \fBglobus_gram_protocol_pack_status_request\fP (const char *status_request, globus_byte_t **query, globus_size_t *querysize)" .br .RI "Pack a GRAM query message\&. " .ti -1c .RI "int \fBglobus_gram_protocol_unpack_status_request\fP (const globus_byte_t *query, globus_size_t querysize, char **status_requst)" .br .RI "Unpack a GRAM query message\&. " .ti -1c .RI "int \fBglobus_gram_protocol_pack_status_reply\fP (int job_status, int failure_code, int job_failure_code, globus_byte_t **reply, globus_size_t *replysize)" .br .RI "Pack a GRAM query reply message\&. " .ti -1c .RI "int \fBglobus_gram_protocol_pack_status_reply_with_extensions\fP (int job_status, int failure_code, int job_failure_code, globus_hashtable_t *extensions, globus_byte_t **reply, globus_size_t *replysize)" .br .RI "Pack a GRAM query reply message with extensions\&. " .ti -1c .RI "int \fBglobus_gram_protocol_unpack_status_reply\fP (const globus_byte_t *reply, globus_size_t replysize, int *job_status, int *failure_code, int *job_failure_code)" .br .RI "Unpack a GRAM query reply\&. " .ti -1c .RI "int \fBglobus_gram_protocol_unpack_status_reply_with_extensions\fP (const globus_byte_t *reply, globus_size_t replysize, globus_hashtable_t *extensions)" .br .RI "Unpack a GRAM query reply with extensions\&. " .ti -1c .RI "int \fBglobus_gram_protocol_pack_status_update_message\fP (char *job_contact, int status, int failure_code, globus_byte_t **reply, globus_size_t *replysize)" .br .RI "Pack a GRAM status update message\&. " .ti -1c .RI "int \fBglobus_gram_protocol_unpack_status_update_message\fP (const globus_byte_t *reply, globus_size_t replysize, char **job_contact, int *status, int *failure_code)" .br .RI "Unpack a GRAM status update message\&. " .ti -1c .RI "int \fBglobus_gram_protocol_pack_status_update_message_with_extensions\fP (char *job_contact, int status, int failure_code, globus_hashtable_t *extensions, globus_byte_t **reply, globus_size_t *replysize)" .br .RI "Pack a GRAM status update message with extensions\&. " .ti -1c .RI "int \fBglobus_gram_protocol_unpack_status_update_message_with_extensions\fP (const globus_byte_t *reply, globus_size_t replysize, globus_hashtable_t *message_hash)" .br .RI "Unpack a GRAM status update message with extensions\&. " .ti -1c .RI "int \fBglobus_gram_protocol_pack_version_request\fP (char **request, size_t *requestsize)" .br .RI "Pack a GRAM version request message\&. " .ti -1c .RI "void \fBglobus_gram_protocol_hash_destroy\fP (globus_hashtable_t *message_hash)" .br .ti -1c .RI "globus_gram_protocol_extension_t * \fBglobus_gram_protocol_create_extension\fP (const char *attribute, const char *format,\&.\&.\&.)" .br .ti -1c .RI "int \fBglobus_gram_protocol_get_sec_context\fP (globus_gram_protocol_handle_t handle, gss_ctx_id_t *context)" .br .RI "Get a reference to the GSSAPI security context associated with a GRAM protocol handle\&. " .ti -1c .RI "const char * \fBglobus_gram_protocol_error_string\fP (int error_code)" .br .RI "Get a description of a a GRAM error code\&. " .ti -1c .RI "void \fBglobus_gram_protocol_error_7_hack_replace_message\fP (const char *message)" .br .RI "Replace the error message associated with error 7 with a custom message\&. " .ti -1c .RI "void \fBglobus_gram_protocol_error_10_hack_replace_message\fP (const char *message)" .br .RI "Replace the error message associated with error 10 with a custom message\&. " .in -1c .SH "Detailed Description" .PP GRAM Protocol API\&. .SH "Function Documentation" .PP .SS "globus_gram_protocol_extension_t * globus_gram_protocol_create_extension (const char * attribute, const char * format, \&.\&.\&.)" Create a GRAM5 protocol extension entry .PP Allocates a new GRAM5 protocol extension entry containing an attribute-value pair\&. The \fIattribute\fP parameter is copied into the extension, and the \fIformat\fP parameter is a printf-style format string used to construct the value of the extension\&. .PP The caller is responsible for freeing the extension when done with it\&. The quoting rules described in \fBGRAM Protocol\fP must be implemented by the caller in the format string\&. .PP \fBParameters\fP .RS 4 \fIattribute\fP Name of the extension attribute .br \fIformat\fP Printf-style format string used along with the varargs to construct the extension's value string\&. .RE .PP \fBReturn values\fP .RS 4 \fIA\fP new GRAM5 extension structure, or NULL if a malloc error occurred\&. .RE .PP .SH "Author" .PP Generated automatically by Doxygen for globus_gram_protocol from the source code\&.