Val: add TableVal::Assign() overload with IntrusivePtr

Prepare the transition to IntrusivePtr for various callers.
This commit is contained in:
Max Kellermann 2020-03-02 19:03:41 +01:00
parent 78712d009f
commit 0a6ddfb6b5
54 changed files with 379 additions and 365 deletions

View file

@ -34,9 +34,9 @@ static Val* empty_connection_table()
static RecordVal* get_conn_id_val(const Connection* conn)
{
RecordVal* v = new RecordVal(conn_id);
v->Assign(0, new AddrVal(conn->OrigAddr()));
v->Assign(0, make_intrusive<AddrVal>(conn->OrigAddr()));
v->Assign(1, val_mgr->GetPort(ntohs(conn->OrigPort()), conn->ConnTransport()));
v->Assign(2, new AddrVal(conn->RespAddr()));
v->Assign(2, make_intrusive<AddrVal>(conn->RespAddr()));
v->Assign(3, val_mgr->GetPort(ntohs(conn->RespPort()), conn->ConnTransport()));
return v;
}
@ -93,7 +93,7 @@ File::File(const string& file_id, const string& source_name, Connection* conn,
DBG_LOG(DBG_FILE_ANALYSIS, "[%s] Creating new File object", file_id.c_str());
val = new RecordVal(fa_file_type);
val->Assign(id_idx, new StringVal(file_id.c_str()));
val->Assign(id_idx, make_intrusive<StringVal>(file_id.c_str()));
SetSource(source_name);
if ( conn )
@ -117,7 +117,7 @@ File::~File()
void File::UpdateLastActivityTime()
{
val->Assign(last_active_idx, new Val(network_time, TYPE_TIME));
val->Assign(last_active_idx, make_intrusive<Val>(network_time, TYPE_TIME));
}
double File::GetLastActivityTime() const
@ -199,7 +199,7 @@ string File::GetSource() const
void File::SetSource(const string& source)
{
val->Assign(source_idx, new StringVal(source.c_str()));
val->Assign(source_idx, make_intrusive<StringVal>(source.c_str()));
}
double File::GetTimeoutInterval() const
@ -209,7 +209,7 @@ double File::GetTimeoutInterval() const
void File::SetTimeoutInterval(double interval)
{
val->Assign(timeout_interval_idx, new Val(interval, TYPE_INTERVAL));
val->Assign(timeout_interval_idx, make_intrusive<Val>(interval, TYPE_INTERVAL));
}
bool File::SetExtractionLimit(RecordVal* args, uint64_t bytes)
@ -305,7 +305,7 @@ bool File::SetMime(const string& mime_type)
return false;
RecordVal* meta = new RecordVal(fa_metadata_type);
meta->Assign(meta_mime_type_idx, new StringVal(mime_type));
meta->Assign(meta_mime_type_idx, make_intrusive<StringVal>(mime_type));
meta->Assign(meta_inferred_idx, val_mgr->GetBool(0));
FileEvent(file_sniff, {val->Ref(), meta});
@ -369,7 +369,7 @@ bool File::BufferBOF(const u_char* data, uint64_t len)
if ( bof_buffer.size > 0 )
{
BroString* bs = concatenate(bof_buffer.chunks);
val->Assign(bof_buffer_idx, new StringVal(bs));
val->Assign(bof_buffer_idx, make_intrusive<StringVal>(bs));
}
return false;