Apache Portable Runtime
Data Structures | Defines | Typedefs | Functions
URI
Apache Portability Runtime library

Data Structures

struct  apr_uri_t

Defines

#define APR_URI_FTP_DEFAULT_PORT   21
#define APR_URI_SSH_DEFAULT_PORT   22
#define APR_URI_TELNET_DEFAULT_PORT   23
#define APR_URI_GOPHER_DEFAULT_PORT   70
#define APR_URI_HTTP_DEFAULT_PORT   80
#define APR_URI_POP_DEFAULT_PORT   110
#define APR_URI_NNTP_DEFAULT_PORT   119
#define APR_URI_IMAP_DEFAULT_PORT   143
#define APR_URI_PROSPERO_DEFAULT_PORT   191
#define APR_URI_WAIS_DEFAULT_PORT   210
#define APR_URI_LDAP_DEFAULT_PORT   389
#define APR_URI_HTTPS_DEFAULT_PORT   443
#define APR_URI_RTSP_DEFAULT_PORT   554
#define APR_URI_SNEWS_DEFAULT_PORT   563
#define APR_URI_ACAP_DEFAULT_PORT   674
#define APR_URI_NFS_DEFAULT_PORT   2049
#define APR_URI_TIP_DEFAULT_PORT   3372
#define APR_URI_SIP_DEFAULT_PORT   5060
#define APR_URI_UNP_OMITSITEPART   (1U<<0)
#define APR_URI_UNP_OMITUSER   (1U<<1)
#define APR_URI_UNP_OMITPASSWORD   (1U<<2)
#define APR_URI_UNP_OMITUSERINFO
#define APR_URI_UNP_REVEALPASSWORD   (1U<<3)
#define APR_URI_UNP_OMITPATHINFO   (1U<<4)
#define APR_URI_UNP_OMITQUERY   (1U<<5)

Typedefs

typedef struct apr_uri_t apr_uri_t

Functions

apr_port_t apr_uri_port_of_scheme (const char *scheme_str)
char * apr_uri_unparse (apr_pool_t *p, const apr_uri_t *uptr, unsigned flags)
apr_status_t apr_uri_parse (apr_pool_t *p, const char *uri, apr_uri_t *uptr)
apr_status_t apr_uri_parse_hostinfo (apr_pool_t *p, const char *hostinfo, apr_uri_t *uptr)

Define Documentation

#define APR_URI_ACAP_DEFAULT_PORT   674

default ACAP port

#define APR_URI_FTP_DEFAULT_PORT   21

default FTP port

#define APR_URI_GOPHER_DEFAULT_PORT   70

default Gopher port

#define APR_URI_HTTP_DEFAULT_PORT   80

default HTTP port

#define APR_URI_HTTPS_DEFAULT_PORT   443

default HTTPS port

#define APR_URI_IMAP_DEFAULT_PORT   143

default IMAP port

#define APR_URI_LDAP_DEFAULT_PORT   389

default LDAP port

#define APR_URI_NFS_DEFAULT_PORT   2049

default NFS port

#define APR_URI_NNTP_DEFAULT_PORT   119

default NNTP port

#define APR_URI_POP_DEFAULT_PORT   110

default POP port

#define APR_URI_PROSPERO_DEFAULT_PORT   191

default Prospero port

#define APR_URI_RTSP_DEFAULT_PORT   554

default RTSP port

#define APR_URI_SIP_DEFAULT_PORT   5060

default SIP port

#define APR_URI_SNEWS_DEFAULT_PORT   563

default SNEWS port

#define APR_URI_SSH_DEFAULT_PORT   22

default SSH port

#define APR_URI_TELNET_DEFAULT_PORT   23

default telnet port

#define APR_URI_TIP_DEFAULT_PORT   3372

default TIP port

#define APR_URI_UNP_OMITPASSWORD   (1U<<2)

Just omit password

#define APR_URI_UNP_OMITPATHINFO   (1U<<4)

Show "scheme://user\@site:port" only

#define APR_URI_UNP_OMITQUERY   (1U<<5)

Omit the "?queryarg" from the path

#define APR_URI_UNP_OMITSITEPART   (1U<<0)

Flags passed to unparse_uri_components(): suppress "scheme://user\@site:port"

#define APR_URI_UNP_OMITUSER   (1U<<1)

Just omit user

#define APR_URI_UNP_OMITUSERINFO
Value:
(APR_URI_UNP_OMITUSER | \
                                     APR_URI_UNP_OMITPASSWORD)

omit "user:password\@" part

#define APR_URI_UNP_REVEALPASSWORD   (1U<<3)

Show plain text password (default: show XXXXXXXX)

#define APR_URI_WAIS_DEFAULT_PORT   210

default WAIS port


Typedef Documentation

typedef struct apr_uri_t apr_uri_t
See also:
apr_uri_t

Function Documentation

apr_status_t apr_uri_parse ( apr_pool_t p,
const char *  uri,
apr_uri_t uptr 
)

Parse a given URI, fill in all supplied fields of a apr_uri_t structure. This eliminates the necessity of extracting host, port, path, query info repeatedly in the modules.

Parameters:
pThe pool to allocate out of
uriThe uri to parse
uptrThe apr_uri_t to fill out
Returns:
APR_SUCCESS for success or error code
apr_status_t apr_uri_parse_hostinfo ( apr_pool_t p,
const char *  hostinfo,
apr_uri_t uptr 
)

Special case for CONNECT parsing: it comes with the hostinfo part only

Parameters:
pThe pool to allocate out of
hostinfoThe hostinfo string to parse
uptrThe apr_uri_t to fill out
Returns:
APR_SUCCESS for success or error code
apr_port_t apr_uri_port_of_scheme ( const char *  scheme_str)

Return the default port for a given scheme. The schemes recognized are http, ftp, https, gopher, wais, nntp, snews, and prospero

Parameters:
scheme_strThe string that contains the current scheme
Returns:
The default port for this scheme
char* apr_uri_unparse ( apr_pool_t p,
const apr_uri_t uptr,
unsigned  flags 
)

Unparse a apr_uri_t structure to an URI string. Optionally suppress the password for security reasons.

Parameters:
pThe pool to allocate out of
uptrAll of the parts of the uri
flagsHow to unparse the uri. One of:
    APR_URI_UNP_OMITSITEPART        Suppress "scheme://user\@site:port" 
    APR_URI_UNP_OMITUSER            Just omit user 
    APR_URI_UNP_OMITPASSWORD        Just omit password 
    APR_URI_UNP_OMITUSERINFO        Omit "user:password\@" part
    APR_URI_UNP_REVEALPASSWORD      Show plain text password (default: show XXXXXXXX)
    APR_URI_UNP_OMITPATHINFO        Show "scheme://user\@site:port" only 
    APR_URI_UNP_OMITQUERY           Omit "?queryarg" or "#fragment" 
 
Returns:
The uri as a string
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines