mirror of
https://github.com/zeek/zeek.git
synced 2025-10-04 07:38:19 +00:00
Added protocol description functions that provide a super compressed log representation.
This commit is contained in:
parent
4dd4c5344e
commit
0bfdcc1fbc
13 changed files with 190 additions and 75 deletions
|
@ -8,6 +8,9 @@ module HTTP;
|
|||
export {
|
||||
## Default file handle provider for HTTP.
|
||||
global get_file_handle: function(c: connection, is_orig: bool): string;
|
||||
|
||||
## Default file describer for HTTP.
|
||||
global describe_file: function(f: fa_file): string;
|
||||
}
|
||||
|
||||
function get_file_handle(c: connection, is_orig: bool): string
|
||||
|
@ -27,7 +30,23 @@ function get_file_handle(c: connection, is_orig: bool): string
|
|||
}
|
||||
}
|
||||
|
||||
function describe_file(f: fa_file): string
|
||||
{
|
||||
# This shouldn't be needed, but just in case...
|
||||
if ( f$source != "HTTP" )
|
||||
return "";
|
||||
|
||||
for ( cid in f$conns )
|
||||
{
|
||||
if ( f$conns[cid]?$http )
|
||||
return build_url_http(f$conns[cid]$http);
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
event bro_init() &priority=5
|
||||
{
|
||||
Files::register_protocol(Analyzer::ANALYZER_HTTP, HTTP::get_file_handle);
|
||||
Files::register_protocol(Analyzer::ANALYZER_HTTP,
|
||||
[$get_file_handle = HTTP::get_file_handle,
|
||||
$describe = HTTP::describe_file]);
|
||||
}
|
||||
|
|
|
@ -32,6 +32,9 @@ export {
|
|||
##
|
||||
## Returns: A URL prefixed with "http://".
|
||||
global build_url_http: function(rec: Info): string;
|
||||
|
||||
## Create an extremely shortened representation of a log line.
|
||||
global describe: function(rec: Info): string;
|
||||
}
|
||||
|
||||
|
||||
|
@ -62,3 +65,8 @@ function build_url_http(rec: Info): string
|
|||
{
|
||||
return fmt("http://%s", build_url(rec));
|
||||
}
|
||||
|
||||
function describe(rec: Info): string
|
||||
{
|
||||
return build_url_http(rec);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue