@ -1,4 +1,4 @@
/* Copyright (C) 2017-202 0 Open Information Security Foundation
/* Copyright (C) 2017-202 2 Open Information Security Foundation
*
*
* You can copy , redistribute or modify this Program under the terms of
* You can copy , redistribute or modify this Program under the terms of
* the GNU General Public License version 2 as published by the Free
* the GNU General Public License version 2 as published by the Free
@ -118,41 +118,42 @@ static int DetectBsizeTest04(void)
static int DetectBsizeSigTest01 ( void )
static int DetectBsizeSigTest01 ( void )
{
{
#if 0
TEST_OK ( " alert http any any -> any any (http_request_line; bsize:10; sid:1;) " ) ;
TEST_OK ( " alert http any any -> any any (http_request_line; bsize:10; sid:1;) " ) ;
TEST_OK ( " alert http any any -> any any (file_data; bsize:>1000; sid:2;) " ) ;
TEST_OK ( " alert http any any -> any any (file_data; bsize:>1000; sid:2;) " ) ;
TEST_FAIL ( " alert tcp any any -> any any (content: \" abc \" ; bsize:10; sid:3;) " ) ;
TEST_FAIL ( " alert http any any -> any any (content: \" GET \" ; http_method; bsize:10; sid:4;) " ) ;
TEST_FAIL ( " alert http any any -> any any (http_request_line; content: \" GET \" ; bsize:<10>; sid:5;) " ) ;
/* bsize validation with buffer */
/* bsize validation with buffer */
TEST_OK ( " alert http any any -> any any (http.uri; content: \" /index.php \" ; bsize:>1024; "
TEST_OK ( " alert http any any -> any any (http.uri; content: \" /index.php \" ; bsize:>1024; "
" sid:6;) " ) ;
" sid:6;) " ) ;
TEST_OK ( " alert http any any -> any any (http.uri; content: \" abdcef \" ; content: \" g \" ; bsize:1; "
" sid:7;) " ) ;
TEST_OK ( " alert http any any -> any any (http.uri; content: \" abdcef \" ; content: \" g \" ; bsize:4; "
" sid:8;) " ) ;
TEST_OK ( " alert http any any -> any any (http.uri; content: \" abcdefgh123456 \" ; bsize:<20; "
TEST_OK ( " alert http any any -> any any (http.uri; content: \" abcdefgh123456 \" ; bsize:<20; "
" sid:9;) " ) ;
" sid:9;) " ) ;
TEST_OK ( " alert http any any -> any any (http.uri; content: \" abcdefgh123456 \" ; bsize:15<>25; "
TEST_OK ( " alert http any any -> any any (http.uri; content: \" abcdefgh123456 \" ; bsize:15<>25; "
" sid:10;) " ) ;
" sid:10;) " ) ;
TEST_OK ( " alert http any any -> any any (http.uri; content: \" abcdefgh123456 \" ; bsize:10<>15; "
" sid:13;) " ) ;
TEST_FAIL ( " alert tcp any any -> any any (content: \" abc \" ; bsize:10; sid:3;) " ) ;
TEST_FAIL ( " alert http any any -> any any (content: \" GET \" ; http_method; bsize:10; sid:4;) " ) ;
TEST_FAIL ( " alert http any any -> any any (http_request_line; content: \" GET \" ; bsize:<10>; "
" sid:5;) " ) ;
TEST_FAIL ( " alert http any any -> any any (http.uri; content: \" abcdefgh123456 \" ; bsize:2; "
TEST_FAIL ( " alert http any any -> any any (http.uri; content: \" abcdefgh123456 \" ; bsize:2; "
" sid:11;) " ) ;
" sid:11;) " ) ;
TEST_FAIL ( " alert http any any -> any any (http.uri; content: \" abcdefgh123456 \" ; bsize:<13; "
TEST_FAIL ( " alert http any any -> any any (http.uri; content: \" abcdefgh123456 \" ; bsize:<13; "
" sid:12;) " ) ;
" sid:12;) " ) ;
TEST_OK ( " alert http any any -> any any (http.uri; content: \" abcdefgh123456 \" ; bsize:10<>15; "
TEST_FAIL (
" sid:13;) " ) ;
" alert http any any -> any any (http.uri; content: \" abcdef \" ; content: \" g \" ; bsize:1; "
" sid:7;) " ) ;
TEST_FAIL (
" alert http any any -> any any (http.uri; content: \" abcdef \" ; content: \" g \" ; bsize:4; "
" sid:8;) " ) ;
TEST_FAIL ( " alert http any any -> any any (http.uri; content: \" abcdefghi123456 \" ; offset:12; "
TEST_FAIL ( " alert http any any -> any any (http.uri; content: \" abcdefghi123456 \" ; offset:12; "
" bsize:3; sid:14;) " ) ;
" bsize:3; sid:14;) " ) ;
TEST_FAIL ( " alert http any any -> any any (http.uri; content: \" abc \" ; offset:3; depth:3; "
TEST_FAIL ( " alert http any any -> any any (http.uri; content: \" abc \" ; offset:3; depth:3; "
" bsize:3; sid:15;) " ) ;
" bsize:3; sid:15;) " ) ;
TEST_FAIL ( " alert http any any -> any any (http.uri; content: \" ab d cef\" ; content: \" gh \" ; "
TEST_FAIL ( " alert http any any -> any any (http.uri; content: \" ab cd ef\" ; content: \" gh \" ; "
" bsize:1; sid:16;) " ) ;
" bsize:1; sid:16;) " ) ;
TEST_FAIL ( " alert http any any -> any any (http.uri; content: \" abc \" ; offset:3; bsize:3; "
TEST_FAIL ( " alert http any any -> any any (http.uri; content: \" abc \" ; offset:3; bsize:3; "
" sid:17;) " ) ;
" sid:17;) " ) ;
# endif
TEST_FAIL ( " alert http any any -> any any (http.uri; content: \" abc \" ; offset:65535; bsize:3; "
TEST_FAIL ( " alert http any any -> any any (http.uri; content: \" abc \" ; offset:65535; bsize:3; "
" sid:18;) " ) ;
" sid:18;) " ) ;
PASS ;
PASS ;