Main Page   Modules   Compound List   File List   Compound Members   File Members   Related Pages  

rpmio/rpmurl.h File Reference

More...

#include <assert.h>

Go to the source code of this file.

Compounds

struct  urlinfo

Defines

#define URLMAGIC   0xd00b1ed0
#define URLSANE(u)    assert(u && u->magic == URLMAGIC)
#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__)

Typedefs

typedef struct urlinfo * urlinfo
 URL control structure.


Enumerations

enum  urltype {
  URL_IS_UNKNOWN = 0, URL_IS_DASH = 1, URL_IS_PATH = 2, URL_IS_FTP = 3,
  URL_IS_HTTP = 4
}
 Supported URL types. More...


Functions

urlinfo urlNew (const char * msg)
 Create a URL control structure instance. More...

urlinfo XurlNew (const char * msg, const char * file, unsigned line)
urlinfo urlLink (urlinfo u, const char * msg)
 Reference a URL control structure instance. More...

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

urlinfo XurlFree ( urlinfo u, const char * msg, const char * file, unsigned line)
void urlFreeCache (void)
 Free cached URL control structures. More...

urltype urlIsURL (const char * url)
 Return type of URL. More...

urltype urlPath (const char * url, const char ** pathp)
 Return path component of URL. More...

int urlSplit (const char * url, urlinfo * u)
 Parse URL string into a control structure. More...

int urlGetFile (const char * url, const char * dest)
 Copy data from URL to local file. More...


Variables

int url_iobuf_size = 4096


Detailed Description

Definition in file rpmurl.h.


Define Documentation

#define URLMAGIC   0xd00b1ed0
 

Definition at line 21 of file rpmurl.h.

#define URLSANE( u )   assert(u && u->magic == URLMAGIC)
 

Definition at line 22 of file rpmurl.h.

Referenced by XurlFree(), XurlLink(), checkResponse(), ftpCheckResponse(), ftpCommand(), ftpLogin(), and ftpReq().

#define urlFree( _u, _msg )   XurlFree(_u, _msg, __FILE__, __LINE__)
 

Definition at line 83 of file rpmurl.h.

Referenced by ufdClose(), and urlSplit().

#define urlLink( _u, _msg )   XurlLink(_u, _msg, __FILE__, __LINE__)
 

Definition at line 73 of file rpmurl.h.

#define urlNew( _msg )   XurlNew(_msg, __FILE__, __LINE__)
 

Definition at line 63 of file rpmurl.h.

Referenced by urlinfo::magic(), and urlSplit().


Typedef Documentation

typedef struct urlinfo * urlinfo
 

URL control structure.


Enumeration Type Documentation

enum urltype
 

Supported URL types.

Enumeration values:
URL_IS_UNKNOWN   unknown (aka a file)
URL_IS_DASH   stdin/stdout
URL_IS_PATH   file://...
URL_IS_FTP   ftp://...
URL_IS_HTTP   http://...

Definition at line 13 of file rpmurl.h.


Function Documentation

urlinfo XurlFree ( urlinfo u,
const char * msg,
const char * file,
unsigned line )
 

Definition at line 70 of file url.c.

urlinfo XurlLink ( urlinfo u,
const char * msg,
const char * file,
unsigned line )
 

Definition at line 42 of file url.c.

Referenced by XurlNew().

urlinfo XurlNew ( const char * msg,
const char * file,
unsigned line )
 

Definition at line 50 of file url.c.

Referenced by urlinfo::magic().

urlinfo urlFree ( urlinfo u,
const char * msg )
 

Dereference a URL control structure instance.

Parameters:
u   URL control structure
msg   debugging identifier (unused)
Returns:
dereferenced instance (NULL if freed)

void urlFreeCache ( void )
 

Free cached URL control structures.

Definition at line 131 of file url.c.

Referenced by main().

int urlGetFile ( const char * url,
const char * dest )
 

Copy data from URL to local file.

Parameters:
url   url string of source
dest   file name of destination
Returns:
0 on success, otherwise FTPERR_* code

Definition at line 440 of file url.c.

Referenced by doUntar(), and rpmInstall().

urltype urlIsURL ( const char * url )
 

Return type of URL.

Parameters:
url   url string
Returns:
type of url

Definition at line 299 of file url.c.

Referenced by Fopen(), main(), rpmInstall(), runScript(), urlPath(), and urlSplit().

urlinfo urlLink ( urlinfo u,
const char * msg )
 

Reference a URL control structure instance.

Parameters:
u   URL control structure
msg   debugging identifier (unused)
Returns:
referenced instance

urlinfo urlNew ( const char * msg )
 

Create a URL control structure instance.

Parameters:
msg   debugging identifier (unused)
Returns:
new instance

urltype urlPath ( const char * url,
const char ** pathp )
 

Return path component of URL.

Parameters:
url   url string
Return values:
pathp   pointer to path component of url
Returns:
type of url

Definition at line 314 of file url.c.

Referenced by Access(), Chdir(), Glob(), Link(), Lstat(), Mkdir(), Opendir(), Readlink(), Rename(), Rmdir(), Stat(), Unlink(), addFile(), buildForTarget(), db1close(), db1open(), doFoo(), doPatch(), doScript(), doSetupMacro(), doUntar(), ftpNLST(), genCpioListAndHeader(), handlePreambleTag(), installArchive(), installSources(), makeTempFile(), myGlobPatternP(), parseSpec(), processBinaryFile(), processSourceFiles(), rpmGenPath(), rpmGlob(), rpmInstall(), rpmfileexists(), and urlGetFile().

int urlSplit ( const char * url,
urlinfo * uret )
 

Parse URL string into a control structure.

Parameters:
url   url string
Return values:
u   address of new control instance pointer
Returns:
0 on success, -1 on error

Definition at line 351 of file url.c.

Referenced by doScript().


Variable Documentation

int url_iobuf_size = 4096
 

Definition at line 28 of file url.c.


Generated at Sun Apr 8 18:43:05 2001 for rpm by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000