Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
opt
cpr
opt
curl
src
tool_urlglob.h
Go to the documentation of this file.
1
#ifndef HEADER_CURL_TOOL_URLGLOB_H
2
#define HEADER_CURL_TOOL_URLGLOB_H
3
/***************************************************************************
4
* _ _ ____ _
5
* Project ___| | | | _ \| |
6
* / __| | | | |_) | |
7
* | (__| |_| | _ <| |___
8
* \___|\___/|_| \_\_____|
9
*
10
* Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
11
*
12
* This software is licensed as described in the file COPYING, which
13
* you should have received as part of this distribution. The terms
14
* are also available at https://curl.haxx.se/docs/copyright.html.
15
*
16
* You may opt to use, copy, modify, merge, publish, distribute and/or sell
17
* copies of the Software, and permit persons to whom the Software is
18
* furnished to do so, under the terms of the COPYING file.
19
*
20
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
21
* KIND, either express or implied.
22
*
23
***************************************************************************/
24
#include "
tool_setup.h
"
25
26
typedef
enum
{
27
UPTSet
= 1,
28
UPTCharRange
,
29
UPTNumRange
30
}
URLPatternType
;
31
32
typedef
struct
{
33
URLPatternType
type
;
34
int
globindex
;
/* the number of this particular glob or -1 if not used
35
within {} or [] */
36
union
{
37
struct
{
38
char
**
elements
;
39
int
size
;
40
int
ptr_s
;
41
} Set;
42
struct
{
43
char
min_c
;
44
char
max_c
;
45
char
ptr_c
;
46
int
step
;
47
} CharRange;
48
struct
{
49
unsigned
long
min_n
;
50
unsigned
long
max_n
;
51
int
padlength
;
52
unsigned
long
ptr_n
;
53
unsigned
long
step
;
54
} NumRange;
55
} content;
56
}
URLPattern
;
57
58
/* the total number of globs supported */
59
#define GLOB_PATTERN_NUM 100
60
61
typedef
struct
{
62
URLPattern
pattern[
GLOB_PATTERN_NUM
];
63
size_t
size
;
64
size_t
urllen
;
65
char
*
glob_buffer
;
66
char
beenhere
;
67
const
char
*
error
;
/* error message */
68
size_t
pos
;
/* column position of error or 0 */
69
}
URLGlob
;
70
71
CURLcode
glob_url
(
URLGlob
**,
char
*,
unsigned
long
*, FILE *);
72
CURLcode
glob_next_url
(
char
**,
URLGlob
*);
73
CURLcode
glob_match_url
(
char
**,
char
*,
URLGlob
*);
74
void
glob_cleanup
(
URLGlob
* glob);
75
76
#endif
/* HEADER_CURL_TOOL_URLGLOB_H */
77
URLPattern::min_n
unsigned long min_n
Definition:
tool_urlglob.h:49
URLPattern::min_c
char min_c
Definition:
tool_urlglob.h:43
glob_next_url
CURLcode glob_next_url(char **, URLGlob *)
Definition:
tool_urlglob.c:505
URLPattern::max_c
char max_c
Definition:
tool_urlglob.h:44
URLGlob
Definition:
tool_urlglob.h:61
glob_match_url
CURLcode glob_match_url(char **, char *, URLGlob *)
Definition:
tool_urlglob.c:600
URLGlob::size
size_t size
Definition:
tool_urlglob.h:63
UPTNumRange
Definition:
tool_urlglob.h:29
CURLcode
CURLcode
Definition:
curl.h:454
glob_url
CURLcode glob_url(URLGlob **, char *, unsigned long *, FILE *)
Definition:
tool_urlglob.c:430
URLPattern
Definition:
tool_urlglob.h:32
URLGlob::urllen
size_t urllen
Definition:
tool_urlglob.h:64
URLGlob::beenhere
char beenhere
Definition:
tool_urlglob.h:66
URLPattern::ptr_c
char ptr_c
Definition:
tool_urlglob.h:45
URLPattern::size
int size
Definition:
tool_urlglob.h:39
URLPatternType
URLPatternType
Definition:
tool_urlglob.h:26
UPTCharRange
Definition:
tool_urlglob.h:28
URLPattern::type
URLPatternType type
Definition:
tool_urlglob.h:33
GLOB_PATTERN_NUM
#define GLOB_PATTERN_NUM
Definition:
tool_urlglob.h:59
URLPattern::globindex
int globindex
Definition:
tool_urlglob.h:34
URLGlob::pos
size_t pos
Definition:
tool_urlglob.h:68
URLGlob::error
const char * error
Definition:
tool_urlglob.h:67
glob_cleanup
void glob_cleanup(URLGlob *glob)
Definition:
tool_urlglob.c:485
URLPattern::max_n
unsigned long max_n
Definition:
tool_urlglob.h:50
URLPattern::step
int step
Definition:
tool_urlglob.h:46
URLPattern::ptr_n
unsigned long ptr_n
Definition:
tool_urlglob.h:52
URLPattern::ptr_s
int ptr_s
Definition:
tool_urlglob.h:40
UPTSet
Definition:
tool_urlglob.h:27
URLPattern::step
unsigned long step
Definition:
tool_urlglob.h:53
URLGlob::glob_buffer
char * glob_buffer
Definition:
tool_urlglob.h:65
tool_setup.h
URLPattern::padlength
int padlength
Definition:
tool_urlglob.h:51
URLPattern::elements
char ** elements
Definition:
tool_urlglob.h:38
rc_tagdetect_client
Author(s): Monika Florek-Jasinska
, Raphael Schaller
autogenerated on Sat Feb 13 2021 03:42:16