rpmio/rpmurl.h -
#include <assert.h>
struct urlinfo_s
URL control structure.
#define URLMAGIC 0xd00b1ed0
#define URLSANE(u) assert(u && u->magic == URLMAGIC)
#define RPMURL_IOBUF_SIZE 4096
#define RPMURL_DEBUG_IO 0x40000000
#define RPMURL_DEBUG_REFS 0x20000000
#define urlNew(_msg) XurlNew(_msg, __FILE__, __LINE__)
#define urlLink(_u, _msg) XurlLink(_u, _msg, __FILE__, __LINE__)
#define urlFree(_u, _msg) XurlFree(_u, _msg, __FILE__, __LINE__)
typedef enum urltype_e urltype
Supported URL types.
typedef urlinfo_s * urlinfo
enum urltype_e { URL_IS_UNKNOWN = 0, URL_IS_DASH = 1, URL_IS_PATH = 2, URL_IS_FTP = 3, URL_IS_HTTP = 4 }
Supported URL types.
urlinfo urlNew (const char *msg)
Create a URL control structure instance.
urlinfo XurlNew (const char *msg, const char *file, unsigned line)
urlinfo urlLink (urlinfo u, const char *msg)
Reference a URL control structure instance.
urlinfo XurlLink (urlinfo u, const char *msg, const char *file, unsigned line)
urlinfo urlFree (urlinfo u, const char *msg)
Dereference a URL control structure instance.
urlinfo XurlFree (urlinfo u, const char *msg, const char *file, unsigned line)
void urlFreeCache (void)
Free cached URL control structures.
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.
int _url_count
urlinfo * _url_cache
int _url_iobuf_size
int _url_debug
Definition at line 76 of file rpmurl.h.
Definition at line 77 of file rpmurl.h.
Definition at line 72 of file rpmurl.h.
Definition at line 119 of file rpmurl.h.
Referenced by ufdClose(), urlConnect(), urlFind(), urlFreeCache(), and urlSplit().
Definition at line 103 of file rpmurl.h.
Referenced by ftpOpen(), httpOpen(), ufdGetUrlinfo(), urlConnect(), and urlFind().
Definition at line 21 of file rpmurl.h.
Definition at line 89 of file rpmurl.h.
Definition at line 22 of file rpmurl.h.
Referenced by checkResponse(), ftpAbort(), ftpCheckResponse(), ftpCommand(), ftpFileDone(), ftpLogin(), ftpReq(), httpReq(), httpResp(), urlFind(), XurlFree(), and XurlLink().
Definition at line 24 of file rpmurl.h.
Supported URL types.
Referenced by doPatch(), doUntar(), rpmioFileExists(), ufdOpen(), urlIsURL(), and urlPath().
Supported URL types.
Enumeration values:
Definition at line 13 of file rpmurl.h.
Dereference a URL control structure instance.
Parameters:
Returns: dereferenced instance (NULL if freed)
Free cached URL control structures.
Definition at line 158 of file url.c.
References _, _free(), _url_count, and urlFree.
Copy data from URL to local file.
Parameters:
Returns: 0 on success, otherwise FTPERR_* code
Definition at line 496 of file url.c.
References _, Fclose(), Ferror(), Fopen(), Fstrerror(), FTPERR_UNKNOWN, RPMMESS_DEBUG, rpmMessage, ufdGetFile(), Unlink(), URL_IS_DASH, URL_IS_FTP, URL_IS_HTTP, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().
Referenced by doUntar(), and rpmInstall().
Return type of URL.
Parameters:
Returns: type of url
Definition at line 344 of file url.c.
References urlstring::leadin, urlstring::ret, URL_IS_UNKNOWN, urlstrings, and urltype.
Referenced by Fopen(), main(), rpmInstall(), runScript(), urlPath(), urlSplit(), and urlStrerror().
Reference a URL control structure instance.
Parameters:
Create a URL control structure instance.
Parameters:
Return path component of URL.
Parameters:
Return values:
Returns: type of url
Definition at line 360 of file url.c.
References URL_IS_DASH, URL_IS_FTP, URL_IS_HTTP, URL_IS_PATH, URL_IS_UNKNOWN, urlIsURL(), and urltype.
Referenced by Access(), addFile(), buildForTarget(), Chdir(), chkdir(), db1close(), db1open(), db3close(), db3open(), doFoo(), doPatch(), doScript(), doSetupMacro(), doUntar(), ftpCmd(), ftpNLST(), genCpioListAndHeader(), generateDepends(), Glob(), handlePreambleTag(), Link(), Lstat(), makeTempFile(), Mkdir(), myGlobPatternP(), Opendir(), parseSpec(), processBinaryFile(), processSourceFiles(), psmStage(), Readlink(), Rename(), Rmdir(), rpmGenPath(), rpmGlob(), rpmInstall(), rpmioFileExists(), Stat(), ufdOpen(), Unlink(), and urlGetFile().
Parse URL string into a control structure.
Parameters:
Return values:
Returns: 0 on success, -1 on error
Definition at line 400 of file url.c.
References _, _free(), urlinfo_s::host, IPPORT_FTP, IPPORT_HTTP, urlinfo_s::password, urlinfo_s::port, urlinfo_s::portstr, RPMMESS_ERROR, rpmMessage, urlinfo_s::service, urlinfo_s::url, URL_IS_FTP, URL_IS_HTTP, urlFind(), urlFree, urlIsURL(), urlNew, urlinfo_s::urltype, urlinfo_s::user, and xstrdup().
Referenced by doScript(), generateDepends(), httpOpen(), urlConnect(), and urlStrerror().
Todo:
Remove debugging entry from the ABI.
Definition at line 94 of file url.c.
References _, _free(), urlinfo_s::buf, urlinfo_s::ctrl, urlinfo_s::data, Fclose(), fdGetFp(), fdPush(), urlinfo_s::host, urlinfo_s::nrefs, urlinfo_s::password, urlinfo_s::portstr, urlinfo_s::proxyh, urlinfo_s::proxyu, urlinfo_s::service, urlinfo_s::url, URLDBGREFS, URLSANE, and urlinfo_s::user.
Todo:
Remove debugging entry from the ABI.
Definition at line 64 of file url.c.
References urlinfo_s::nrefs, URLDBGREFS, and URLSANE.
Todo:
Remove debugging entry from the ABI.
Definition at line 74 of file url.c.
References urlinfo_s::buf, urlinfo_s::bufAlloced, urlinfo_s::ctrl, urlinfo_s::data, urlinfo_s::httpHasRange, urlinfo_s::httpVersion, urlinfo_s::magic, urlinfo_s::nrefs, urlinfo_s::port, urlinfo_s::proxyp, URL_IS_UNKNOWN, URLMAGIC, urlinfo_s::urltype, xmalloc(), and XurlLink().
URL cache.
Definition at line 68 of file rpmurl.h.
No. of cached URL's.
Definition at line 64 of file rpmurl.h.
Referenced by urlFind(), and urlFreeCache().
URL debugging?
Definition at line 75 of file rpmurl.h.
Initial size of URL I/O buffer.
Definition at line 71 of file rpmurl.h.
Generated automatically by Doxygen for rpm from the source code.
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |