zeek/testing/btest/language/raw_output_attr.test
Robin Sommer d8aece07d7 Merge remote-tracking branch 'origin/topic/jsiwek/raw_output'
* origin/topic/jsiwek/raw_output:
  Fix &raw_output and enable_raw_output interpretation of NUL characters
2011-08-03 16:27:52 -07:00

45 lines
1,010 B
Text

# Files with the &raw_output attribute shouldn't interpret NUL characters
# in strings that are `print`ed to it.
# @TEST-EXEC: bro %INPUT
# @TEST-EXEC: tr '\000' 'X' <myfile >output
# @TEST-EXEC: btest-diff output
# @TEST-EXEC: cmp myfile hookfile
# first check local variable of file type w/ &raw_output
event bro_init()
{
local myfile: file;
myfile = open("myfile");
enable_raw_output(myfile);
print myfile, "hello\x00world", "hi";
close(myfile);
}
event print_hook(f: file, s: string)
{
local hookfile = open("hookfile");
write_file(hookfile, s);
close(hookfile);
}
# @TEST-START-NEXT
# now check global variables of file type w/ &raw_output
global myfile: file;
event bro_init()
{
myfile = open("myfile");
enable_raw_output(myfile);
print myfile, "hello\x00world", "hi";
close(myfile);
}
event print_hook(f: file, s: string)
{
local hookfile = open("hookfile");
write_file(hookfile, s);
close(hookfile);
}