zeek/policy/http/utils.bro
Seth Hall 10247abbbc More HTTP rework.
* New script: http/file-extract.bro
* New script: http/file-ident.bro
* New script: http/file-hash.bro
* Lot of cleanup.  The output logs are better than before.
2011-04-04 12:00:07 -04:00

31 lines
No EOL
739 B
Text

##! Utilities specific for HTTP processing.
@load http/base
module HTTP;
export {
global extract_keys: function(data: string, kv_splitter: pattern): string_vec;
global build_url: function(c: connection): string;
}
function extract_keys(data: string, kv_splitter: pattern): string_vec
{
local key_vec: vector of string = vector("");
local parts = split(data, kv_splitter);
for ( part_index in parts )
{
local key_val = split1(parts[part_index], /=/);
# TODO: Change once problem with empty vectors is fixed. (remove the initial value)
if ( 1 in key_val )
key_vec[|key_vec|+1] = key_val[1];
}
return key_vec;
}
function build_url(c: connection): string
{
return fmt("http://%s/%s", c$http$host, c$http$uri);
}