GLOBUS_URL_SCHEME_HTTPS(3)

URL String Parser

Section 3 libglobus-common-doc bookworm source

Description

globus_url

NAME

globus_url - URL String Parser

- URL String Parser.

SYNOPSIS

Data Structures

struct globus_url_t
Parsed URLs.

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_SCHEME_SSHFTP, GLOBUS_URL_NUM_SCHEMES }
URL 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

URL String Parser.

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.

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_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.

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.

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 recognized, and scheme_type has been updated.
GLOBUS_URL_ERROR_BAD_SCHEME
The URL scheme was not recognized.

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.

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.

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.

Author

Generated automatically by Doxygen for globus_common from the source code.