[svn] xline/resv wildcard checking:
- count escaped (\) characters as one nonwild - accept strings without wilds no matter how short they are
This commit is contained in:
parent
5832fa369b
commit
7d08aa8911
3 changed files with 19 additions and 4 deletions
|
@ -1,3 +1,12 @@
|
|||
jilles 2007/05/30 10:22:25 UTC (20070530-3498)
|
||||
Log:
|
||||
Tweak some comments in sno_whois extension.
|
||||
|
||||
|
||||
Changes: Modified:
|
||||
+2 -2 trunk/extensions/sno_whois.c (File Modified)
|
||||
|
||||
|
||||
jilles 2007/05/30 10:22:01 UTC (20070530-3496)
|
||||
Log:
|
||||
Tweak NEWS a little.
|
||||
|
|
|
@ -1 +1 @@
|
|||
#define SERNO "20070530-3496"
|
||||
#define SERNO "20070530-3498"
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* $Id: s_newconf.c 3161 2007-01-25 07:23:01Z nenolod $
|
||||
* $Id: s_newconf.c 3508 2007-06-04 16:04:49Z jilles $
|
||||
*/
|
||||
|
||||
#include "stdinc.h"
|
||||
|
@ -595,6 +595,7 @@ valid_wild_card_simple(const char *data)
|
|||
const char *p;
|
||||
char tmpch;
|
||||
int nonwild = 0;
|
||||
int wild = 0;
|
||||
|
||||
/* check the string for minimum number of nonwildcard chars */
|
||||
p = data;
|
||||
|
@ -604,9 +605,11 @@ valid_wild_card_simple(const char *data)
|
|||
/* found an escape, p points to the char after it, so skip
|
||||
* that and move on.
|
||||
*/
|
||||
if(tmpch == '\\')
|
||||
if(tmpch == '\\' && *p)
|
||||
{
|
||||
p++;
|
||||
if(++nonwild >= ConfigFileEntry.min_nonwildcard_simple)
|
||||
return 1;
|
||||
}
|
||||
else if(!IsMWildChar(tmpch))
|
||||
{
|
||||
|
@ -614,9 +617,12 @@ valid_wild_card_simple(const char *data)
|
|||
if(++nonwild >= ConfigFileEntry.min_nonwildcard_simple)
|
||||
return 1;
|
||||
}
|
||||
else
|
||||
wild++;
|
||||
}
|
||||
|
||||
return 0;
|
||||
/* strings without wilds are also ok */
|
||||
return wild == 0;
|
||||
}
|
||||
|
||||
time_t
|
||||
|
|
Loading…
Reference in a new issue