mirror of
https://github.com/zeek/zeek.git
synced 2025-10-09 18:18:19 +00:00
Merge remote-tracking branch 'origin/topic/timw/150-to-json'
* origin/topic/timw/150-to-json: Update submodules for JSON work Update unit tests for JSON logger to match new output Modify JSON log writer to use the external JSON library Update unit test output to match json.zeek being deprecated and slight format changes to JSON output Add proper JSON serialization via C++, deprecate json.zeek Add new method for escaping UTF8 strings for JSON output Move do_sub method from zeek.bif to StringVal class method Move record_fields method from zeek.bif to Val class method Add ToStdString method for StringVal
This commit is contained in:
commit
1f329ad541
29 changed files with 740 additions and 413 deletions
10
src/Val.h
10
src/Val.h
|
@ -20,6 +20,7 @@
|
|||
#include "Notifier.h"
|
||||
#include "IPAddr.h"
|
||||
#include "DebugLogger.h"
|
||||
#include "RE.h"
|
||||
|
||||
// We have four different port name spaces: TCP, UDP, ICMP, and UNKNOWN.
|
||||
// We distinguish between them based on the bits specified in the *_PORT_MASK
|
||||
|
@ -34,7 +35,6 @@
|
|||
class Val;
|
||||
class Func;
|
||||
class BroFile;
|
||||
class RE_Matcher;
|
||||
class PrefixTable;
|
||||
|
||||
class PortVal;
|
||||
|
@ -347,6 +347,10 @@ public:
|
|||
|
||||
static bool WouldOverflow(const BroType* from_type, const BroType* to_type, const Val* val);
|
||||
|
||||
TableVal* GetRecordFields();
|
||||
|
||||
StringVal* ToJSON(bool only_loggable=false, RE_Matcher* re=new RE_Matcher("^_"));
|
||||
|
||||
protected:
|
||||
|
||||
friend class EnumType;
|
||||
|
@ -530,6 +534,7 @@ public:
|
|||
|
||||
// Returns the port number in host order (not including the mask).
|
||||
uint32 Port() const;
|
||||
string Protocol() const;
|
||||
|
||||
// Tests for protocol types.
|
||||
int IsTCP() const;
|
||||
|
@ -632,10 +637,13 @@ public:
|
|||
// char* ExpandedString(int format = BroString::EXPANDED_STRING)
|
||||
// { return AsString()->ExpandedString(format); }
|
||||
|
||||
std::string ToStdString() const;
|
||||
StringVal* ToUpper();
|
||||
|
||||
unsigned int MemoryAllocation() const override;
|
||||
|
||||
Val* Substitute(RE_Matcher* re, StringVal* repl, bool do_all);
|
||||
|
||||
protected:
|
||||
friend class Val;
|
||||
StringVal() {}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue