rpmio/url.c -
#include 'system.h'
#include <netinet/in.h>
#include 'rpmmacro.h'
#include 'rpmmessages.h'
#include 'rpmio_internal.h'
#include 'debug.h'
#define IPPORT_FTP 21
#define IPPORT_HTTP 80
#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)
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.
int urlStrcmp (const char *str1, const char *str2)
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.
int _url_iobuf_size = RPMURL_IOBUF_SIZE
int _url_debug = 0
urlinfo * _url_cache = NULL
int _url_count = 0
urlstring urlstrings []
Definition at line 20 of file url.c.
Definition at line 23 of file url.c.
Definition at line 36 of file url.c.
Definition at line 38 of file url.c.
Definition at line 39 of file url.c.
Referenced by XurlFree(), and XurlLink().
Wrapper to free(3), hides const compilation noise, permit NULL, return NULL.
Parameters:
Return values:
Definition at line 58 of file url.c.
Referenced by addFileToTagAux(), addOrAppendListEntry(), addSource(), alAllFileSatisfiesDepend(), alFree(), alFreeIndex(), alSatisfiesDepend(), armorFormat(), base64Format(), buildForTarget(), checkPackageDeps(), checkSpec(), closeSpec(), cpio_doio(), cpioHeaderRead(), db1close(), db1open(), db3close(), db3open(), db3stat(), db_init(), dbiFreeIndexSet(), dbiTagsInit(), dbiUpdateRecord(), defaultMachine(), dnlFreeIterator(), do_wait_for_lock(), doBuildFileList(), doHeaderUnload(), domd5(), doPatch(), doReadRC(), doRmSource(), doScript(), doSetupMacro(), doUntar(), expandFilelist(), expandRegular(), fillOutMainPackage(), formatValue(), freeAttrRec(), freeExtensionCache(), freeFi(), freeFileList(), freeFilesystems(), freeFl(), freeFormat(), freeFSM(), freeHardLink(), freeNames(), freePackage(), freeRpmVar(), freeSl(), freeSources(), freeSpec(), freeSplitString(), freeSt(), freeStringBuf(), freeTriggerFiles(), fsmCommitLinks(), fsmMakeLinks(), fsmMapPath(), fsmStage(), fssizesTag(), genCpioListAndHeader(), generateDepends(), getFilesystemList(), handlePreambleTag(), headerAddI18NString(), headerCopyLoad(), headerFree(), headerFreeIterator(), headerFreeTag(), headerLoad(), headerModifyEntry(), headerRead(), headerReload(), headerRemoveEntry(), headerSprintf(), headerWrite(), htFree(), i18nTag(), IDTXfree(), IDTXglob(), ignoreDep(), machCompatCacheAdd(), machFindEquivs(), main(), makeGPGSignature(), makePGPSignature(), makeTempFile(), mapFreeIterator(), newRpmdb(), packageBinaries(), packageSources(), parseDescription(), parseExpressionBoolean(), parseExpressionString(), parseFiles(), parseForRegexLang(), parseForRegexMultiLib(), parseForSimple(), parseRCPOT(), parseScript(), parseSpec(), permsFormat(), pgpFreeDig(), pgpHexSet(), pgpReadPkts(), popMacro(), printFileInfo(), printNewSpecfile(), processBinaryFile(), processPackageFiles(), processSourceFiles(), psmStage(), pushMacro(), readIcon(), readLine(), relocateFileList(), rpmCheckSig(), rpmdbAdd(), rpmdbClose(), rpmdbFindByFile(), rpmdbFindFpList(), rpmdbFreeIterator(), rpmdbMoveDatabase(), rpmdbNextIterator(), rpmdbRebuild(), rpmdbRemove(), rpmdbRemoveDatabase(), rpmdbSetIteratorRE(), rpmdepCheck(), rpmdepFreeConflicts(), rpmdepOrder(), rpmDetectPGPVersion(), rpmErase(), rpmExpandNumeric(), rpmFreeMacros(), rpmFreeRpmrc(), rpmGenPath(), rpmGetFilesystemUsage(), rpmGetPassPhrase(), rpmGetRpmlibProvides(), rpmGlob(), rpmInitMacros(), rpmInstall(), rpmInstallSource(), rpmInstallSourcePackage(), rpmlogClose(), rpmLookupSignatureType(), rpmProblemPrint(), rpmProblemSetFree(), rpmQueryVerify(), rpmRangesOverlap(), rpmReadConfigFiles(), rpmReadPackageManifest(), rpmReadRC(), rpmRebuildTargetVars(), rpmReSign(), rpmRollback(), rpmRunTransactions(), rpmSetMachine(), rpmSetVarArch(), rpmShowProgress(), rpmtransFree(), rpmVerifyDigest(), rpmVerifyScript(), runScript(), saveHardLink(), showQueryPackage(), skipFiles(), triggercondsTag(), tsFreeIterator(), urlFind(), urlFreeCache(), urlSplit(), valueFree(), verifyGPGSignature(), verifyHeader(), verifyPGPSignature(), vrpmlog(), writeLinkedFile(), writeRPM(), XfdFree(), XurlFree(), and zapRelation().
Definition at line 190 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::service, stpcpy(), URL_IS_FTP, URL_IS_HTTP, urlFree, urlLink, URLSANE, urlStrcmp(), urlinfo_s::urltype, urlinfo_s::user, xmalloc(), xrealloc(), and xstrdup().
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().
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().
Definition at line 177 of file url.c.
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 45 of file url.c.
No. of cached URL's.
Definition at line 50 of file url.c.
Referenced by urlFind(), and urlFreeCache().
URL debugging?
Definition at line 34 of file url.c.
Initial size of URL I/O buffer.
Definition at line 29 of file url.c.
Generated automatically by Doxygen for rpm from the source code.
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |