glob_match
Prev | Chapter 5. libata Core Internals | Next

## Name

glob_match — match a text string against a glob-style pattern

## Synopsis

`int glob_match (` | const char * text,
| const char * pattern`)`;

## Arguments

`text`

  the string to be examined

`pattern`

  the glob-style pattern to be matched against

## Description

Either/both of text and pattern can be empty strings.

Match text against a glob-style pattern, with wildcards and simple sets:

? matches any single character. * matches any run of characters. [xyz] matches a single character from the set: x, y, or z. [a-d] matches a single character from the range: a, b, c, or d. [a-d0-9] matches a single character from either range.

The special characters ?, [, -, or *, can be matched using a set, eg. [*] Behaviour with malformed patterns is undefined, though generally reasonable.

## Sample patterns

"SD1?“, ”SD1[0-5]“, ”*R0“, ”SD*1?[012]*xx"

This function uses one level of recursion per '*' in pattern. Since it calls _nothing_ else, and has _no_ explicit local variables, this will not cause stack problems for any reasonable use here.

## RETURNS

0 on match, 1 otherwise.

Prev | Up | Next
ata_dev_revalidate | Home | ata_is_40wire