Provided by: libglobus-common-doc_14.10-2_all
NAME
URL String Parser - Data Structures struct globus_url_t Enumerations enum globus_url_scheme_t { GLOBUS_URL_SCHEME_FTP =0, GLOBUS_URL_SCHEME_GSIFTP, GLOBUS_URL_SCHEME_HTTP, GLOBUS_URL_SCHEME_HTTPS, GLOBUS_URL_SCHEME_LDAP, GLOBUS_URL_SCHEME_FILE, GLOBUS_URL_SCHEME_X_NEXUS, GLOBUS_URL_SCHEME_X_GASS_CACHE, GLOBUS_URL_SCHEME_UNKNOWN, GLOBUS_URL_NUM_SCHEMES } Functions int globus_url_parse (const char *url_string, globus_url_t *url) int globus_url_parse_rfc1738 (const char *url_string, globus_url_t *url) int globus_url_parse_loose (const char *url_string, globus_url_t *url) int globus_url_destroy (globus_url_t *url) int globus_url_get_scheme (const char *url_string, globus_url_scheme_t *scheme_type) int globus_url_copy (globus_url_t *dst, const globus_url_t *src)
Detailed Description
The Globus URL functions provide a simple mechanism for parsing a URL string into a data structure, and for determining the scheme of an URL string. These functions are part of the Globus common library. The GLOBUS_COMMON module must be activated in order to use them.
Enumeration Type Documentation
enum globus_url_scheme_t URL Schemes. The Globus URL library supports a set of URL schemes (protocols). This enumeration can be used to quickly dispatch a parsed URL based on a constant value. See Also: globus_url_t::scheme_type Enumerator GLOBUS_URL_SCHEME_FTP File Transfer Protocol. GLOBUS_URL_SCHEME_GSIFTP GSI-enhanced File Transfer Protocol. GLOBUS_URL_SCHEME_HTTP HyperText Transfer Protocol. GLOBUS_URL_SCHEME_HTTPS Secure HyperText Transfer Protocol. GLOBUS_URL_SCHEME_LDAP Lightweight Directory Access Protocol. GLOBUS_URL_SCHEME_FILE File Location. GLOBUS_URL_SCHEME_X_NEXUS Nexus endpoint. GLOBUS_URL_SCHEME_X_GASS_CACHE GASS Cache Entry. GLOBUS_URL_SCHEME_UNKNOWN Any other URL of the form scheme://something GLOBUS_URL_NUM_SCHEMES Total number of URL schemes supported.
Function Documentation
int globus_url_parse (const char *url_string, globus_url_t *url) Parse a string containing a URL into a globus_url_t. Parameters: url_string String to parse url Pointer to globus_url_t to be filled with the fields of the url Return values: GLOBUS_SUCCESS The string was successfully parsed. GLOBUS_URL_ERROR_NULL_STRING The url_string was GLOBUS_NULL. GLOBUS_URL_ERROR_NULL_URL The URL pointer was GLOBUS_NULL. GLOBUS_URL_ERROR_BAD_SCHEME The URL scheme (protocol) contained invalid characters. GLOBUS_URL_ERROR_BAD_USER The user part of the URL contained invalid characters. GLOBUS_URL_ERROR_BAD_PASSWORD The password part of the URL contained invalid characters. GLOBUS_URL_ERROR_BAD_HOST The host part of the URL contained invalid characters. GLOBUS_URL_ERROR_BAD_PORT The port part of the URL contained invalid characters. GLOBUS_URL_ERROR_BAD_PATH The path part of the URL contained invalid characters. GLOBUS_URL_ERROR_BAD_DN -9 The DN part of an LDAP URL contained invalid characters. GLOBUS_URL_ERROR_BAD_ATTRIBUTES -10 The attributes part of an LDAP URL contained invalid characters. GLOBUS_URL_ERROR_BAD_SCOPE -11 The scope part of an LDAP URL contained invalid characters. GLOBUS_URL_ERROR_BAD_FILTER -12 The filter part of an LDAP URL contained invalid characters. GLOBUS_URL_ERROR_OUT_OF_MEMORY -13 The library was unable to allocate memory to create the the globus_url_t contents. GLOBUS_URL_ERROR_INTERNAL_ERROR -14 Some unexpected error occurred parsing the URL. References globus_url_t::attributes, globus_url_t::dn, globus_url_t::filter, globus_url_destroy(), GLOBUS_URL_SCHEME_FILE, GLOBUS_URL_SCHEME_FTP, GLOBUS_URL_SCHEME_GSIFTP, GLOBUS_URL_SCHEME_HTTP, GLOBUS_URL_SCHEME_HTTPS, GLOBUS_URL_SCHEME_LDAP, GLOBUS_URL_SCHEME_X_GASS_CACHE, GLOBUS_URL_SCHEME_X_NEXUS, globus_url_t::host, globus_url_t::password, globus_url_t::port, globus_url_t::scheme, globus_url_t::scheme_type, globus_url_t::scope, globus_url_t::url_path, globus_url_t::url_specific_part, and globus_url_t::user. int globus_url_parse_rfc1738 (const char *url_string, globus_url_t *url) Parse a string containing a URL into a globus_url_t. Parameters: url_string String to parse url Pointer to globus_url_t to be filled with the fields of the url Return values: GLOBUS_SUCCESS The string was successfully parsed. GLOBUS_URL_ERROR_NULL_STRING The url_string was GLOBUS_NULL. GLOBUS_URL_ERROR_NULL_URL The URL pointer was GLOBUS_NULL. GLOBUS_URL_ERROR_BAD_SCHEME The URL scheme (protocol) contained invalid characters. GLOBUS_URL_ERROR_BAD_USER The user part of the URL contained invalid characters. GLOBUS_URL_ERROR_BAD_PASSWORD The password part of the URL contained invalid characters. GLOBUS_URL_ERROR_BAD_HOST The host part of the URL contained invalid characters. GLOBUS_URL_ERROR_BAD_PORT The port part of the URL contained invalid characters. GLOBUS_URL_ERROR_BAD_PATH The path part of the URL contained invalid characters. GLOBUS_URL_ERROR_BAD_DN -9 The DN part of an LDAP URL contained invalid characters. GLOBUS_URL_ERROR_BAD_ATTRIBUTES -10 The attributes part of an LDAP URL contained invalid characters. GLOBUS_URL_ERROR_BAD_SCOPE -11 The scope part of an LDAP URL contained invalid characters. GLOBUS_URL_ERROR_BAD_FILTER -12 The filter part of an LDAP URL contained invalid characters. GLOBUS_URL_ERROR_OUT_OF_MEMORY -13 The library was unable to allocate memory to create the the globus_url_t contents. GLOBUS_URL_ERROR_INTERNAL_ERROR -14 Some unexpected error occurred parsing the URL. References globus_url_t::attributes, globus_url_t::dn, globus_url_t::filter, globus_url_destroy(), GLOBUS_URL_SCHEME_FILE, GLOBUS_URL_SCHEME_FTP, GLOBUS_URL_SCHEME_GSIFTP, GLOBUS_URL_SCHEME_HTTP, GLOBUS_URL_SCHEME_HTTPS, GLOBUS_URL_SCHEME_LDAP, GLOBUS_URL_SCHEME_X_GASS_CACHE, GLOBUS_URL_SCHEME_X_NEXUS, globus_url_t::host, globus_url_t::password, globus_url_t::port, globus_url_t::scheme, globus_url_t::scheme_type, globus_url_t::scope, globus_url_t::url_path, globus_url_t::url_specific_part, and globus_url_t::user. int globus_url_parse_loose (const char *url_string, globus_url_t *url) Parse a string containing a URL into a globus_url_t Looser restrictions on characters allowed in the path part of the URL. Parameters: url_string String to parse url Pointer to globus_url_t to be filled with the fields of the url Return values: GLOBUS_SUCCESS The string was successfully parsed. GLOBUS_URL_ERROR_NULL_STRING The url_string was GLOBUS_NULL. GLOBUS_URL_ERROR_NULL_URL The URL pointer was GLOBUS_NULL. GLOBUS_URL_ERROR_BAD_SCHEME The URL scheme (protocol) contained invalid characters. GLOBUS_URL_ERROR_BAD_USER The user part of the URL contained invalid characters. GLOBUS_URL_ERROR_BAD_PASSWORD The password part of the URL contained invalid characters. GLOBUS_URL_ERROR_BAD_HOST The host part of the URL contained invalid characters. GLOBUS_URL_ERROR_BAD_PORT The port part of the URL contained invalid characters. GLOBUS_URL_ERROR_BAD_PATH The path part of the URL contained invalid characters. GLOBUS_URL_ERROR_BAD_DN -9 The DN part of an LDAP URL contained invalid characters. GLOBUS_URL_ERROR_BAD_ATTRIBUTES -10 The attributes part of an LDAP URL contained invalid characters. GLOBUS_URL_ERROR_BAD_SCOPE -11 The scope part of an LDAP URL contained invalid characters. GLOBUS_URL_ERROR_BAD_FILTER -12 The filter part of an LDAP URL contained invalid characters. GLOBUS_URL_ERROR_OUT_OF_MEMORY -13 The library was unable to allocate memory to create the the globus_url_t contents. GLOBUS_URL_ERROR_INTERNAL_ERROR -14 Some unexpected error occurred parsing the URL. References globus_url_t::attributes, globus_url_t::dn, globus_url_t::filter, globus_url_destroy(), GLOBUS_URL_SCHEME_FILE, GLOBUS_URL_SCHEME_FTP, GLOBUS_URL_SCHEME_GSIFTP, GLOBUS_URL_SCHEME_HTTP, GLOBUS_URL_SCHEME_HTTPS, GLOBUS_URL_SCHEME_LDAP, GLOBUS_URL_SCHEME_X_GASS_CACHE, GLOBUS_URL_SCHEME_X_NEXUS, globus_url_t::host, globus_url_t::password, globus_url_t::port, globus_url_t::scheme, globus_url_t::scheme_type, globus_url_t::scope, globus_url_t::url_path, globus_url_t::url_specific_part, and globus_url_t::user. int globus_url_destroy (globus_url_t *url) Destroy a globus_url_t structure. This function frees all memory associated with a globus_url_t structure. Parameters: url The url structure to destroy Return values: GLOBUS_SUCCESS The URL was successfully destroyed. References globus_url_t::attributes, globus_url_t::dn, globus_url_t::filter, globus_url_t::host, globus_url_t::password, globus_url_t::scheme, globus_url_t::scope, globus_url_t::url_path, globus_url_t::url_specific_part, and globus_url_t::user. int globus_url_get_scheme (const char *url_string, globus_url_scheme_t *scheme_type) Get the scheme of an URL. This function determines the scheme type of the url string, and populates the variable pointed to by second parameter with that value. This performs a less expensive parsing than globus_url_parse() and is suitable for applications which need only to choose a handler based on the URL scheme. Parameters: url_string The string containing the URL. scheme_type A pointer to a globus_url_scheme_t which will be set to the scheme. Return values: GLOBUS_SUCCESS The URL scheme was recogized, and scheme_type has been updated. GLOBUS_URL_ERROR_BAD_SCHEME The URL scheme was not recogized. References GLOBUS_URL_SCHEME_FILE, GLOBUS_URL_SCHEME_FTP, GLOBUS_URL_SCHEME_GSIFTP, GLOBUS_URL_SCHEME_HTTP, GLOBUS_URL_SCHEME_HTTPS, GLOBUS_URL_SCHEME_LDAP, GLOBUS_URL_SCHEME_UNKNOWN, GLOBUS_URL_SCHEME_X_GASS_CACHE, and GLOBUS_URL_SCHEME_X_NEXUS. int globus_url_copy (globus_url_t *dst, const globus_url_t *src) Create a copy of an URL structure. This function copies the contents of a url structure into another. Parameters: dst The URL structure to be populated with a copy of the contents of src. src The original URL. Return values: GLOBUS_SUCCESS The URL was successfully copied. GLOBUS_URL_ERROR_NULL_URL One of the URLs was GLOBUS_NULL. GLOBUS_URL_ERROR_OUT_OF_MEMORY; The library was unable to allocate memory to create the the globus_url_t contents. References globus_url_t::port, globus_url_t::scheme, and globus_url_t::scheme_type.
Author
Generated automatically by Doxygen for globus common from the source code.