rpm  4.8.1
rpmurl.h
Go to the documentation of this file.
1 #ifndef H_RPMURL
2 #define H_RPMURL
3 
8 #ifdef __cplusplus
9 extern "C" {
10 #endif
11 
15 typedef enum urltype_e {
19  URL_IS_FTP = 3,
23 } urltype;
24 
25 typedef struct urlinfo_s * urlinfo;
26 
30 struct urlinfo_s {
31  char * url;
32  char * scheme;
33  char * user;
34  char * password;
35  char * host;
36  char * portstr;
37  char * proxyu;
38  char * proxyh;
39  int proxyp;
40  int port;
41  int urltype;
42  int openError;
43  int magic;
44 };
45 
46 extern int _url_debug;
52 urlinfo urlNew(void);
53 
59 urlinfo urlFree(urlinfo u);
60 
66 urltype urlIsURL(const char * url);
67 
74 urltype urlPath(const char * url, const char ** pathp);
75 
82 int urlSplit(const char * url, urlinfo * uret);
83 
90 int urlGetFile(const char * url, const char * dest);
91 
92 #ifdef __cplusplus
93 }
94 #endif
95 
96 #endif /* H_RPMURL */
char * portstr
Definition: rpmurl.h:36
char * proxyh
Definition: rpmurl.h:38
enum urltype_e urltype
Supported URL types.
struct urlinfo_s * urlinfo
Definition: rpmurl.h:25
URL control structure.
Definition: rpmurl.h:30
char * proxyu
Definition: rpmurl.h:37
urltype_e
Supported URL types.
Definition: rpmurl.h:15
urltype urlIsURL(const char *url)
Return type of URL.
char * scheme
Definition: rpmurl.h:32
int openError
Definition: rpmurl.h:42
int port
Definition: rpmurl.h:40
int urlGetFile(const char *url, const char *dest)
Copy data from URL to local file.
int _url_debug
char * url
Definition: rpmurl.h:31
char * host
Definition: rpmurl.h:35
urlinfo urlNew(void)
Create a URL info structure instance.
int proxyp
Definition: rpmurl.h:39
urlinfo urlFree(urlinfo u)
Free a URL info structure instance.
int urlSplit(const char *url, urlinfo *uret)
Parse URL string into a control structure.
urltype urlPath(const char *url, const char **pathp)
Return path component of URL.
int urltype
Definition: rpmurl.h:41
char * user
Definition: rpmurl.h:33
char * password
Definition: rpmurl.h:34
int magic
Definition: rpmurl.h:43