#include "system.h"
#include <netinet/in.h>
#include <rpmmacro.h>
#include <rpmmessages.h>
#include <rpmio_internal.h>
#include "debug.h"
Include dependency graph for url.c:
Go to the source code of this file.
Data Structures | |
struct | urlstring |
Defines | |
#define | IPPORT_FTP 21 |
#define | IPPORT_HTTP 80 |
#define | IPPORT_HTTPS 443 |
#define | IPPORT_PGPKEYSERVER 11371 |
#define | URLDBG(_f, _m, _x) if ((_url_debug | (_f)) & (_m)) fprintf _x |
#define | URLDBGIO(_f, _x) URLDBG((_f), RPMURL_DEBUG_IO, _x) |
#define | URLDBGREFS(_f, _x) URLDBG((_f), RPMURL_DEBUG_REFS, _x) |
Functions | |
static void * | _free (const void *p) |
Wrapper to free(3), hides const compilation noise, permit NULL, return NULL. | |
urlinfo | XurlLink (urlinfo u, const char *msg, const char *file, unsigned line) |
urlinfo | XurlNew (const char *msg, const char *file, unsigned line) |
urlinfo | XurlFree (urlinfo u, const char *msg, const char *file, unsigned line) |
void | urlFreeCache (void) |
Free cached URL control structures. | |
static int | urlStrcmp (const char *str1, const char *str2) |
static void | urlFind (urlinfo *uret, int mustAsk) |
urltype | urlIsURL (const char *url) |
Return type of URL. | |
urltype | urlPath (const char *url, const char **pathp) |
Return path component of URL. | |
int | urlSplit (const char *url, urlinfo *uret) |
Parse URL string into a control structure. | |
int | urlGetFile (const char *url, const char *dest) |
Copy data from URL to local file. | |
Variables | |
int | _url_iobuf_size = RPMURL_IOBUF_SIZE |
int | _url_debug = 0 |
urlinfo * | _url_cache = NULL |
int | _url_count = 0 |
static struct urlstring | urlstrings [] |
Definition in file url.c.
|
|
|
|
|
Definition at line 25 of file url.c. Referenced by urlSplit(). |
|
Definition at line 28 of file url.c. Referenced by urlSplit(). |
|
|
|
|
|
Definition at line 44 of file url.c. Referenced by XurlFree(), and XurlLink(). |
|
Wrapper to free(3), hides const compilation noise, permit NULL, return NULL.
|
|
Definition at line 197 of file url.c. References _, _free(), _url_count, alloca(), urlinfo_s::host, urlinfo_s::password, urlinfo_s::portstr, urlinfo_s::proxyh, urlinfo_s::proxyp, urlinfo_s::proxyu, rpmExpand(), urlinfo_s::scheme, stpcpy(), URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, urlFree, urlLink, URLSANE, urlStrcmp(), urlinfo_s::urltype, urlinfo_s::user, xmalloc(), xrealloc(), and xstrdup(). Referenced by urlSplit(). |
|
Free cached URL control structures.
Definition at line 164 of file url.c. References _, _free(), _url_count, and urlFree. Referenced by rpmcliFini(). |
|
Copy data from URL to local file.
Definition at line 539 of file url.c. References _, _url_debug, Fclose(), Ferror(), Fopen(), Fstrerror(), FTPERR_UNKNOWN, RPMMESS_DEBUG, rpmMessage, ufdGetFile(), Unlink(), URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath(). Referenced by prepFetch(), and rpmInstall(). |
|
Return type of URL.
Definition at line 354 of file url.c. References urlstring::leadin, urlstring::ret, URL_IS_UNKNOWN, and urlstrings. Referenced by Fopen(), Fts_open(), main(), rpmInstall(), runScript(), urlPath(), urlSplit(), and urlStrerror(). |
|
|
Parse URL string into a control structure.
Definition at line 431 of file url.c. References _, _free(), urlinfo_s::host, IPPORT_FTP, IPPORT_HTTP, IPPORT_HTTPS, IPPORT_PGPKEYSERVER, urlinfo_s::password, urlinfo_s::port, urlinfo_s::portstr, RPMMESS_ERROR, rpmMessage, urlinfo_s::scheme, urlinfo_s::url, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, urlFind(), urlFree, urlIsURL(), urlNew, urlinfo_s::urltype, urlinfo_s::user, and xstrdup(). Referenced by doScript(), urlConnect(), and urlStrerror(). |
|
Definition at line 184 of file url.c. Referenced by urlFind(). |
|
Definition at line 99 of file url.c. References _, FDIO_s::_fdderef, FDIO_s::_fileno, _free(), urlinfo_s::buf, FDIO_s::close, urlinfo_s::ctrl, urlinfo_s::data, Fclose(), fdGetFp(), fdio, fdPush(), fpio, urlinfo_s::host, urlinfo_s::nrefs, urlinfo_s::password, urlinfo_s::portstr, urlinfo_s::proxyh, urlinfo_s::proxyu, urlinfo_s::scheme, urlinfo_s::url, URLDBGREFS, URLSANE, and urlinfo_s::user. |
|
Definition at line 69 of file url.c. References urlinfo_s::nrefs, URLDBGREFS, and URLSANE. Referenced by XurlNew(). |
|
Definition at line 79 of file url.c. References RPMURL_SERVER_HASRANGE, URL_IS_UNKNOWN, URLMAGIC, xmalloc(), and XurlLink(). |
|
URL cache. |
|
No. of cached URL's. Definition at line 55 of file url.c. Referenced by urlFind(), and urlFreeCache(). |
|
URL debugging? Definition at line 39 of file url.c. Referenced by urlGetFile(). |
|
Initial size of URL I/O buffer. Definition at line 34 of file url.c. Referenced by checkResponse(), and ftpNLST(). |
|
Referenced by urlIsURL(). |