char *str is the string to be compared.
char *exp is the shell expression (wildcard pattern) to compare against.