User Agent Parser - Bro implementation based on uap-core
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
scripts
src
tests
CMakeLists.txt
COPYING
Makefile
README
VERSION
bro-pkg.meta
configure
configure.plugin

README

User Agent Parser - Bro implementation based on uap-core
uap-bro
==========

User Agent Parser - Bro implementation based on uap-core

Installation
------------

bro-pkg install vitalyrepin/uap-bro

Configuration options
---------------------

uap_core_regex_path  - path to the regexp file from uap-core project (bundled with this package)

API
---

Three record types are defined in  uap-bro/scripts/types.bro  - DeviceRec, AgentRec and UserAgentRec.

In oprder to parse user-agent string, use the function parse which returns record of type UserAgentRec.

Example:

   local ua: UAP::UserAgentRec;
   ua = UAP::parse(c$http$user_agent);

Three utility functions are defined in  uap-bro/scripts/uap-utils.bro:

   function AgentRecToVersionString(agent: AgentRec): string
   function AgentRecToString(agent: AgentRec): string
   function UserAgentRecToString(ua: UserAgentRec): string

Example:

   ua_str = UAP::UserAgentRecToString(ua);