Update deprecated ValManager::GetEmptyString usages

This commit is contained in:
Jon Siwek 2020-04-08 16:01:27 -07:00
parent 93f4c5871b
commit de8761f761
27 changed files with 102 additions and 97 deletions

View file

@ -367,7 +367,7 @@ RecordVal* Connection::BuildConnVal()
conn_val->Assign(2, std::move(resp_endp));
// 3 and 4 are set below.
conn_val->Assign(5, make_intrusive<TableVal>(IntrusivePtr{NewRef{}, string_set})); // service
conn_val->Assign(6, val_mgr->GetEmptyString()); // history
conn_val->Assign(6, val_mgr->EmptyString()); // history
if ( ! uid )
uid.Set(bits_per_uid);

View file

@ -56,7 +56,7 @@ static VectorVal* BuildOptionsVal(const u_char* data, int len)
{
// Pad1 option
rv->Assign(1, val_mgr->Count(0));
rv->Assign(2, val_mgr->GetEmptyString());
rv->Assign(2, val_mgr->EmptyString());
data += sizeof(uint8_t);
len -= sizeof(uint8_t);
}

View file

@ -171,8 +171,7 @@ bool HashVal::Init()
IntrusivePtr<StringVal> HashVal::Get()
{
if ( ! valid )
return IntrusivePtr<StringVal>(AdoptRef{},
val_mgr->GetEmptyString());
return val_mgr->EmptyString();
auto result = DoGet();
valid = false;
@ -203,7 +202,7 @@ bool HashVal::DoFeed(const void*, size_t)
IntrusivePtr<StringVal> HashVal::DoGet()
{
assert(! "missing implementation of DoGet()");
return IntrusivePtr<StringVal>(AdoptRef{}, val_mgr->GetEmptyString());
return val_mgr->EmptyString();
}
HashVal::HashVal(OpaqueType* t) : OpaqueVal(t)
@ -275,7 +274,7 @@ bool MD5Val::DoFeed(const void* data, size_t size)
IntrusivePtr<StringVal> MD5Val::DoGet()
{
if ( ! IsValid() )
return IntrusivePtr<StringVal>(AdoptRef{}, val_mgr->GetEmptyString());
return val_mgr->EmptyString();
u_char digest[MD5_DIGEST_LENGTH];
hash_final(ctx, digest);
@ -395,8 +394,7 @@ bool SHA1Val::DoFeed(const void* data, size_t size)
IntrusivePtr<StringVal> SHA1Val::DoGet()
{
if ( ! IsValid() )
return IntrusivePtr<StringVal>(AdoptRef{},
val_mgr->GetEmptyString());
return val_mgr->EmptyString();
u_char digest[SHA_DIGEST_LENGTH];
hash_final(ctx, digest);
@ -519,8 +517,7 @@ bool SHA256Val::DoFeed(const void* data, size_t size)
IntrusivePtr<StringVal> SHA256Val::DoGet()
{
if ( ! IsValid() )
return IntrusivePtr<StringVal>(AdoptRef{},
val_mgr->GetEmptyString());
return val_mgr->EmptyString();
u_char digest[SHA256_DIGEST_LENGTH];
hash_final(ctx, digest);

View file

@ -24,7 +24,7 @@ void RuleActionEvent::DoAction(const Rule* parent, RuleEndpointState* state,
mgr.Enqueue(signature_match,
IntrusivePtr{AdoptRef{}, rule_matcher->BuildRuleStateValue(parent, state)},
make_intrusive<StringVal>(msg),
data ? make_intrusive<StringVal>(len, (const char*)data) : IntrusivePtr{AdoptRef{}, val_mgr->GetEmptyString()}
data ? make_intrusive<StringVal>(len, (const char*)data) : val_mgr->EmptyString()
);
}

View file

@ -174,7 +174,7 @@ bool RuleConditionEval::DoMatch(Rule* rule, RuleEndpointState* state,
if ( data )
args.emplace_back(make_intrusive<StringVal>(len, (const char*) data));
else
args.emplace_back(AdoptRef{}, val_mgr->GetEmptyString());
args.emplace_back(val_mgr->EmptyString());
bool result = false;

View file

@ -152,7 +152,7 @@ StringVal* asn1_oid_to_val(const ASN1Encoding* oid)
if ( ! subidentifier.empty() || subidentifiers.size() < 1 )
// Underflow.
return val_mgr->GetEmptyString();
return val_mgr->EmptyString()->Ref()->AsStringVal();
for ( size_t i = 0; i < subidentifiers.size(); ++i )
{

View file

@ -215,6 +215,6 @@ function fmt_ftp_port%(a: addr, p: port%): string
{
builtin_error("conversion of non-IPv4 address in fmt_ftp_port",
@ARG@[0]);
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
%}

View file

@ -740,15 +740,15 @@ void IRC_Analyzer::DeliverStream(int length, const u_char* line, bool orig)
if ( parts.size() > 0 )
vl.emplace_back(make_intrusive<StringVal>(parts[0].c_str()));
else vl.emplace_back(AdoptRef{}, val_mgr->GetEmptyString());
else vl.emplace_back(val_mgr->EmptyString());
if ( parts.size() > 1 )
vl.emplace_back(make_intrusive<StringVal>(parts[1].c_str()));
else vl.emplace_back(AdoptRef{}, val_mgr->GetEmptyString());
else vl.emplace_back(val_mgr->EmptyString());
if ( parts.size() > 2 )
vl.emplace_back(make_intrusive<StringVal>(parts[2].c_str()));
else vl.emplace_back(AdoptRef{}, val_mgr->GetEmptyString());
else vl.emplace_back(val_mgr->EmptyString());
string realname;
for ( unsigned int i = 3; i < parts.size(); i++ )
@ -810,7 +810,7 @@ void IRC_Analyzer::DeliverStream(int length, const u_char* line, bool orig)
vl.emplace_back(make_intrusive<StringVal>(comment.c_str()));
}
else
vl.emplace_back(AdoptRef{}, val_mgr->GetEmptyString());
vl.emplace_back(val_mgr->EmptyString());
EnqueueConnEvent(irc_kick_message, std::move(vl));
}
@ -1026,7 +1026,7 @@ void IRC_Analyzer::DeliverStream(int length, const u_char* line, bool orig)
val_mgr->Bool(orig),
parts.size() > 0 ?
make_intrusive<StringVal>(parts[0].c_str()) :
IntrusivePtr{AdoptRef{}, val_mgr->GetEmptyString()},
val_mgr->EmptyString(),
val_mgr->Bool(oper)
);
}

View file

@ -87,7 +87,9 @@ void KRB_Analyzer::DeliverPacket(int len, const u_char* data, bool orig,
}
}
StringVal* KRB_Analyzer::GetAuthenticationInfo(const BroString* principal, const BroString* ciphertext, const bro_uint_t enctype)
IntrusivePtr<StringVal> KRB_Analyzer::GetAuthenticationInfo(const BroString* principal,
const BroString* ciphertext,
const bro_uint_t enctype)
{
#ifdef USE_KRB5
if ( !krb_available )
@ -145,7 +147,7 @@ StringVal* KRB_Analyzer::GetAuthenticationInfo(const BroString* principal, const
return nullptr;
}
StringVal* ret = new StringVal(cp);
auto ret = make_intrusive<StringVal>(cp);
krb5_free_unparsed_name(krb_context, cp);
krb5_free_ticket(krb_context, tkt);

View file

@ -25,7 +25,9 @@ public:
static analyzer::Analyzer* Instantiate(Connection* conn)
{ return new KRB_Analyzer(conn); }
StringVal* GetAuthenticationInfo(const BroString* principal, const BroString* ciphertext, const bro_uint_t enctype);
IntrusivePtr<StringVal> GetAuthenticationInfo(const BroString* principal,
const BroString* ciphertext,
const bro_uint_t enctype);
protected:

View file

@ -21,7 +21,10 @@ public:
// Overriden from tcp::TCP_ApplicationAnalyzer.
void EndpointEOF(bool is_orig) override;
StringVal* GetAuthenticationInfo(const BroString* principal, const BroString* ciphertext, const bro_uint_t enctype) { return val_mgr->GetEmptyString(); }
IntrusivePtr<StringVal> GetAuthenticationInfo(const BroString* principal,
const BroString* ciphertext,
const bro_uint_t enctype)
{ return val_mgr->EmptyString(); }
static analyzer::Analyzer* Instantiate(Connection* conn)
{ return new KRB_Analyzer(conn); }

View file

@ -263,7 +263,7 @@ refine connection KRB_Conn += {
rv->Assign(1, val_mgr->Bool(${msg.ap_options.mutual_required}));
RecordVal* rvticket = proc_ticket(${msg.ticket});
StringVal* authenticationinfo = bro_analyzer()->GetAuthenticationInfo(rvticket->Lookup(2)->AsString(), rvticket->Lookup(4)->AsString(), rvticket->Lookup(3)->AsCount());
auto authenticationinfo = bro_analyzer()->GetAuthenticationInfo(rvticket->Lookup(2)->AsString(), rvticket->Lookup(4)->AsString(), rvticket->Lookup(3)->AsCount());
if ( authenticationinfo )
rvticket->Assign(5, authenticationinfo);
BifEvent::generate_krb_ap_request(bro_analyzer(), bro_analyzer()->Conn(),

View file

@ -423,7 +423,7 @@ void Login_Analyzer::LoginEvent(EventHandlerPtr f, const char* line,
IntrusivePtr{AdoptRef{}, BuildConnVal()},
IntrusivePtr{NewRef{}, username},
client_name ? IntrusivePtr{NewRef{}, client_name}
: IntrusivePtr{AdoptRef{}, val_mgr->GetEmptyString()},
: val_mgr->EmptyString(),
IntrusivePtr{AdoptRef{}, password},
make_intrusive<StringVal>(line)
);
@ -593,7 +593,7 @@ Val* Login_Analyzer::PopUserTextVal()
if ( s )
return new StringVal(new BroString(true, byte_vec(s), strlen(s)));
else
return val_mgr->GetEmptyString();
return val_mgr->EmptyString()->Ref();
}
bool Login_Analyzer::MatchesTypeahead(const char* line) const

View file

@ -100,17 +100,17 @@ refine flow SIP_Flow += {
function build_sip_header_val(name: const_bytestring, value: const_bytestring): BroVal
%{
RecordVal* header_record = new RecordVal(mime_header_rec);
IntrusivePtr<StringVal> name_val;
StringVal* name_val = 0;
if ( name.length() > 0 )
{
// Make it all uppercase.
name_val = new StringVal(name.length(), (const char*) name.begin());
name_val = make_intrusive<StringVal>(name.length(), (const char*) name.begin());
name_val->ToUpper();
}
else
{
name_val = val_mgr->GetEmptyString();
name_val = val_mgr->EmptyString();
}
header_record->Assign(0, name_val);

View file

@ -91,9 +91,9 @@ refine connection SMB_Conn += {
{
case 3: // pre NT LM 0.12
response->Assign(1, val_mgr->Bool(${val.lanman.is_guest}));
response->Assign(2, ${val.lanman.byte_count} == 0 ? val_mgr->GetEmptyString() : smb_string2stringval(${val.lanman.native_os[0]}));
response->Assign(3, ${val.lanman.byte_count} == 0 ? val_mgr->GetEmptyString() : smb_string2stringval(${val.lanman.native_lanman[0]}));
response->Assign(4, ${val.lanman.byte_count} == 0 ? val_mgr->GetEmptyString() : smb_string2stringval(${val.lanman.primary_domain[0]}));
response->Assign(2, ${val.lanman.byte_count} == 0 ? val_mgr->EmptyString()->Ref()->AsStringVal() : smb_string2stringval(${val.lanman.native_os[0]}));
response->Assign(3, ${val.lanman.byte_count} == 0 ? val_mgr->EmptyString()->Ref()->AsStringVal() : smb_string2stringval(${val.lanman.native_lanman[0]}));
response->Assign(4, ${val.lanman.byte_count} == 0 ? val_mgr->EmptyString()->Ref()->AsStringVal() : smb_string2stringval(${val.lanman.primary_domain[0]}));
break;
case 4: // NT LM 0.12
response->Assign(1, val_mgr->Bool(${val.ntlm.is_guest}));

View file

@ -17,7 +17,7 @@ refine connection SMB_Conn += {
StringVal* parameters = new StringVal(${val.parameters}.length(),
(const char*)${val.parameters}.data());
StringVal* payload_str = nullptr;
IntrusivePtr<StringVal> payload_str;
SMB1_transaction_data* payload = nullptr;
if ( ${val.data_count} > 0 )
@ -29,20 +29,20 @@ refine connection SMB_Conn += {
{
switch ( payload->trans_type() ) {
case SMB_PIPE:
payload_str = new StringVal(${val.data_count}, (const char*)${val.data.pipe_data}.data());
payload_str = make_intrusive<StringVal>(${val.data_count}, (const char*)${val.data.pipe_data}.data());
break;
case SMB_UNKNOWN:
payload_str = new StringVal(${val.data_count}, (const char*)${val.data.unknown}.data());
payload_str = make_intrusive<StringVal>(${val.data_count}, (const char*)${val.data.unknown}.data());
break;
default:
payload_str = new StringVal(${val.data_count}, (const char*)${val.data.data}.data());
payload_str = make_intrusive<StringVal>(${val.data_count}, (const char*)${val.data.data}.data());
break;
}
}
if ( ! payload_str )
{
payload_str = val_mgr->GetEmptyString();
payload_str = val_mgr->EmptyString();
}
BifEvent::generate_smb1_transaction_secondary_request(bro_analyzer(),
@ -50,7 +50,7 @@ refine connection SMB_Conn += {
BuildHeaderVal(header),
args,
parameters,
payload_str);
payload_str.release());
return true;
%}

View file

@ -5,19 +5,19 @@ enum Trans_subcommands {
};
%code{
StringVal* SMB_Conn::transaction_data_to_val(SMB1_transaction_data* payload)
IntrusivePtr<StringVal> SMB_Conn::transaction_data_to_val(SMB1_transaction_data* payload)
{
switch ( payload->trans_type() ) {
case SMB_PIPE:
return bytestring_to_val(payload->pipe_data());
return {AdoptRef{}, bytestring_to_val(payload->pipe_data())};
case SMB_UNKNOWN:
return bytestring_to_val(payload->unknown());
return {AdoptRef{}, bytestring_to_val(payload->unknown())};
default:
return bytestring_to_val(payload->data());
return {AdoptRef{}, bytestring_to_val(payload->data())};
}
assert(false);
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
%}
@ -26,7 +26,7 @@ refine connection SMB_Conn += {
%member{
map<uint16, bool> is_file_a_pipe;
static StringVal* transaction_data_to_val(SMB1_transaction_data* payload);
static IntrusivePtr<StringVal> transaction_data_to_val(SMB1_transaction_data* payload);
%}
function get_is_file_a_pipe(id: uint16): bool
@ -55,12 +55,12 @@ refine connection SMB_Conn += {
StringVal* parameters = new StringVal(${val.parameters}.length(),
(const char*)${val.parameters}.data());
StringVal* payload_str = nullptr;
IntrusivePtr<StringVal> payload_str;
if ( ${val.data_count} > 0 )
payload_str = transaction_data_to_val(${val.data});
else
payload_str = val_mgr->GetEmptyString();
payload_str = val_mgr->EmptyString();
BifEvent::generate_smb1_transaction_request(bro_analyzer(),
bro_analyzer()->Conn(),
@ -68,7 +68,7 @@ refine connection SMB_Conn += {
smb_string2stringval(${val.name}),
${val.sub_cmd},
parameters,
payload_str);
payload_str.release());
return true;
%}
@ -80,18 +80,18 @@ refine connection SMB_Conn += {
StringVal* parameters = new StringVal(${val.parameters}.length(),
(const char*)${val.parameters}.data());
StringVal* payload_str = nullptr;
IntrusivePtr<StringVal> payload_str;
if ( ${val.data_count} > 0 )
payload_str = transaction_data_to_val(${val.data[0]});
else
payload_str = val_mgr->GetEmptyString();
payload_str = val_mgr->EmptyString();
BifEvent::generate_smb1_transaction_response(bro_analyzer(),
bro_analyzer()->Conn(),
BuildHeaderVal(header),
parameters,
payload_str);
payload_str.release());
return true;
%}
};

View file

@ -23,7 +23,7 @@ refine connection SMB_Conn += {
bro_analyzer()->Conn(),
BuildHeaderVal(header),
service_string,
${val.byte_count} > ${val.service.a}->size() ? smb_string2stringval(${val.native_file_system[0]}) : val_mgr->GetEmptyString());
${val.byte_count} > ${val.service.a}->size() ? smb_string2stringval(${val.native_file_system[0]}) : val_mgr->EmptyString()->Ref()->AsStringVal());
else
Unref(service_string);

View file

@ -111,7 +111,7 @@ refine connection SOCKS_Conn += {
${request.command},
sa,
val_mgr->GetPort(${request.port}, TRANSPORT_TCP),
val_mgr->GetEmptyString());
val_mgr->EmptyString()->Ref()->AsStringVal());
else
Unref(sa);

View file

@ -120,7 +120,7 @@ function Broker::__store_name%(h: opaque of Broker::Store%): string
if ( ! h )
{
builtin_error("invalid Broker store handle");
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
auto handle = static_cast<bro_broker::StoreHandleVal*>(h);

View file

@ -89,10 +89,10 @@ static bool ocsp_add_cert_id(const OCSP_CERTID* cert_id, zeek::Args* vl, BIO* bi
if ( ! res )
{
reporter->Weird("OpenSSL failed to get OCSP_CERTID info");
vl->emplace_back(AdoptRef{}, val_mgr->GetEmptyString());
vl->emplace_back(AdoptRef{}, val_mgr->GetEmptyString());
vl->emplace_back(AdoptRef{}, val_mgr->GetEmptyString());
vl->emplace_back(AdoptRef{}, val_mgr->GetEmptyString());
vl->emplace_back(val_mgr->EmptyString());
vl->emplace_back(val_mgr->EmptyString());
vl->emplace_back(val_mgr->EmptyString());
vl->emplace_back(val_mgr->EmptyString());
return false;
}
@ -215,8 +215,9 @@ typedef struct ocsp_basic_response_st {
STACK_OF(X509) *certs;
} OCSP_BASICRESP;
*/
static StringVal* parse_basic_resp_sig_alg(OCSP_BASICRESP* basic_resp,
BIO* bio, char* buf, size_t buf_len)
static IntrusivePtr<StringVal> parse_basic_resp_sig_alg(OCSP_BASICRESP* basic_resp,
BIO* bio, char* buf,
size_t buf_len)
{
int der_basic_resp_len = 0;
unsigned char* der_basic_resp_dat = nullptr;
@ -224,7 +225,7 @@ static StringVal* parse_basic_resp_sig_alg(OCSP_BASICRESP* basic_resp,
der_basic_resp_len = i2d_OCSP_BASICRESP(basic_resp, &der_basic_resp_dat);
if ( der_basic_resp_len <= 0 )
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
const unsigned char* const_der_basic_resp_dat = der_basic_resp_dat;
@ -233,13 +234,13 @@ static StringVal* parse_basic_resp_sig_alg(OCSP_BASICRESP* basic_resp,
if ( ! bseq )
{
OPENSSL_free(der_basic_resp_dat);
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
if ( sk_ASN1_TYPE_num(bseq) < 3 )
{
OPENSSL_free(der_basic_resp_dat);
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
auto constexpr sig_alg_idx = 1u;
@ -248,7 +249,7 @@ static StringVal* parse_basic_resp_sig_alg(OCSP_BASICRESP* basic_resp,
if ( ASN1_TYPE_get(aseq_type) != V_ASN1_SEQUENCE )
{
OPENSSL_free(der_basic_resp_dat);
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
auto aseq_str = aseq_type->value.asn1_string;
@ -260,13 +261,13 @@ static StringVal* parse_basic_resp_sig_alg(OCSP_BASICRESP* basic_resp,
if ( ! aseq )
{
OPENSSL_free(der_basic_resp_dat);
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
if ( sk_ASN1_TYPE_num(aseq) < 1 )
{
OPENSSL_free(der_basic_resp_dat);
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
auto constexpr alg_obj_idx = 0u;
@ -275,13 +276,13 @@ static StringVal* parse_basic_resp_sig_alg(OCSP_BASICRESP* basic_resp,
if ( ASN1_TYPE_get(alg_obj_type) != V_ASN1_OBJECT )
{
OPENSSL_free(der_basic_resp_dat);
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
auto alg_obj = alg_obj_type->value.object;
i2a_ASN1_OBJECT(bio, alg_obj);
auto alg_len = BIO_read(bio, buf, buf_len);
auto rval = new StringVal(alg_len, buf);
auto rval = make_intrusive<StringVal>(alg_len, buf);
BIO_reset(bio);
OPENSSL_free(der_basic_resp_dat);
@ -521,7 +522,7 @@ void file_analysis::OCSP::ParseResponse(OCSP_RESPONSE *resp)
else
{
reporter->Weird("OpenSSL failed to get OCSP responder id");
vl.emplace_back(AdoptRef{}, val_mgr->GetEmptyString());
vl.emplace_back(val_mgr->EmptyString());
}
// producedAt
@ -625,7 +626,7 @@ void file_analysis::OCSP::ParseResponse(OCSP_RESPONSE *resp)
vl.emplace_back(make_intrusive<StringVal>(len, buf));
BIO_reset(bio);
#else
vl.emplace_back(AdoptRef{}, parse_basic_resp_sig_alg(basic_resp, bio, buf, sizeof(buf)));
vl.emplace_back(parse_basic_resp_sig_alg(basic_resp, bio, buf, sizeof(buf)));
#endif
//i2a_ASN1_OBJECT(bio, basic_resp->signature);

View file

@ -316,7 +316,7 @@ IntrusivePtr<StringVal> file_analysis::X509Common::GetExtensionFromBIO(BIO* bio,
if ( length == 0 )
{
BIO_free_all(bio);
return {AdoptRef{}, val_mgr->GetEmptyString()};
return val_mgr->EmptyString();
}
char* buffer = (char*) malloc(length);

View file

@ -192,7 +192,7 @@ function x509_get_certificate_string%(cert: opaque of x509, pem: bool &default=F
auto ext_val = file_analysis::X509::GetExtensionFromBIO(bio);
if ( ! ext_val )
ext_val = {AdoptRef{}, val_mgr->GetEmptyString()};
ext_val = val_mgr->EmptyString();
return ext_val.release();
%}

View file

@ -741,7 +741,7 @@ bool Manager::Write(EnumVal* id, RecordVal* columns_arg)
if ( filter->path_val )
path_arg = {NewRef{}, filter->path_val};
else
path_arg = {AdoptRef{}, val_mgr->GetEmptyString()};
path_arg = val_mgr->EmptyString();
IntrusivePtr<Val> rec_arg;
BroType* rt = filter->path_func->FType()->Args()->FieldType("rec");

View file

@ -952,7 +952,7 @@ function find_last%(str: string, re: pattern%) : string
return new StringVal(n, (const char*) t);
}
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
%}
## Returns a hex dump for given input data. The hex dump renders 16 bytes per
@ -997,13 +997,13 @@ function hexdump%(data_str: string%) : string
unsigned data_size = data_str->Len();
if ( ! data )
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
int num_lines = (data_size / 16) + 1;
int len = num_lines * HEX_LINE_WIDTH;
u_char* hex_data = new u_char[len + 1];
if ( ! hex_data )
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
memset(hex_data, ' ', len);

View file

@ -1655,7 +1655,7 @@ function cat_sep%(sep: string, def: string, ...%): string
function fmt%(...%): string
%{
if ( @ARGC@ == 0 )
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
Val* fmt_v = @ARG@[0].get();
@ -1674,13 +1674,13 @@ function fmt%(...%): string
if ( n < static_cast<int>(@ARGC@) - 1 )
{
builtin_error("too many arguments for format", fmt_v);
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
else if ( n >= static_cast<int>(@ARGC@) )
{
builtin_error("too few arguments for format", fmt_v);
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
BroString* s = new BroString(1, d.TakeBytes(), d.Len());
@ -2857,7 +2857,7 @@ function hexstr_to_bytestring%(hexstr: string%): string
if ( len % 2 != 0 )
{
reporter->Error("Hex string '%s' has invalid length (not divisible by 2)", hexstr->CheckString());
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
const char* bytes = hexstr->AsString()->CheckString();
@ -2873,13 +2873,13 @@ function hexstr_to_bytestring%(hexstr: string%): string
if ( res == EOF )
{
reporter->Error("Hex string %s contains invalid input: %s", hexstr->CheckString(), strerror(errno));
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
else if ( res != 1 )
{
reporter->Error("Could not read hex element from input %s", hexstr->CheckString());
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
}
@ -2905,7 +2905,7 @@ function encode_base64%(s: string, a: string &default=""%): string
else
{
reporter->Error("Broker query has an invalid data store");
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
%}
@ -2927,7 +2927,7 @@ function decode_base64%(s: string, a: string &default=""%): string
else
{
reporter->Error("error in decoding string %s", s->CheckString());
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
%}
@ -2951,7 +2951,7 @@ function decode_base64_conn%(cid: conn_id, s: string, a: string &default=""%): s
if ( ! conn )
{
builtin_error("connection ID not a known connection", cid);
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
BroString* t = decode_base64(s->AsString(), a->AsString(), conn);
@ -2960,7 +2960,7 @@ function decode_base64_conn%(cid: conn_id, s: string, a: string &default=""%): s
else
{
reporter->Error("error in decoding string %s", s->CheckString());
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
}
%}
@ -3327,7 +3327,7 @@ function lookup_connection%(cid: conn_id%): connection
c->Assign(3, make_intrusive<Val>(network_time, TYPE_TIME));
c->Assign(4, make_intrusive<Val>(0.0, TYPE_INTERVAL));
c->Assign(5, make_intrusive<TableVal>(IntrusivePtr{NewRef{}, string_set})); // service
c->Assign(6, val_mgr->GetEmptyString()); // history
c->Assign(6, val_mgr->EmptyString()); // history
return c;
%}
@ -3398,7 +3398,7 @@ function get_current_packet%(%) : pcap_packet
pkt->Assign(1, val_mgr->Count(0));
pkt->Assign(2, val_mgr->Count(0));
pkt->Assign(3, val_mgr->Count(0));
pkt->Assign(4, val_mgr->GetEmptyString());
pkt->Assign(4, val_mgr->EmptyString());
pkt->Assign(5, BifType::Enum::link_encap->GetVal(BifEnum::LINK_UNKNOWN));
return pkt;
}
@ -4585,7 +4585,7 @@ function active_file%(f: file%): bool
function get_file_name%(f: file%): string
%{
if ( ! f )
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
return new StringVal(f->Name());
%}
@ -4606,8 +4606,8 @@ function rotate_file%(f: file%): rotate_info
// Record indicating error.
info = new RecordVal(rotate_info);
info->Assign(0, val_mgr->GetEmptyString());
info->Assign(1, val_mgr->GetEmptyString());
info->Assign(0, val_mgr->EmptyString());
info->Assign(1, val_mgr->EmptyString());
info->Assign(2, make_intrusive<Val>(0.0, TYPE_TIME));
info->Assign(3, make_intrusive<Val>(0.0, TYPE_TIME));
@ -4647,8 +4647,8 @@ function rotate_file_by_name%(f: string%): rotate_info
if ( ! file )
{
// Record indicating error.
info->Assign(0, val_mgr->GetEmptyString());
info->Assign(1, val_mgr->GetEmptyString());
info->Assign(0, val_mgr->EmptyString());
info->Assign(1, val_mgr->EmptyString());
info->Assign(2, make_intrusive<Val>(0.0, TYPE_TIME));
info->Assign(3, make_intrusive<Val>(0.0, TYPE_TIME));
return info;

View file

@ -28,7 +28,7 @@ function get_identifier_comments%(name: string%): string
IdentifierInfo* d = zeekygen_mgr->GetIdentifierInfo(name->CheckString());
if ( ! d )
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
return comments_to_val(d->GetComments());
%}
@ -48,7 +48,7 @@ function get_script_comments%(name: string%): string
ScriptInfo* d = zeekygen_mgr->GetScriptInfo(name->CheckString());
if ( ! d )
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
return comments_to_val(d->GetComments());
%}
@ -66,7 +66,7 @@ function get_package_readme%(name: string%): string
PackageInfo* d = zeekygen_mgr->GetPackageInfo(name->CheckString());
if ( ! d )
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
return comments_to_val(d->GetReadme());
%}
@ -86,14 +86,14 @@ function get_record_field_comments%(name: string%): string
size_t i = accessor.find('$');
if ( i > accessor.size() - 2 )
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
string id = accessor.substr(0, i);
IdentifierInfo* d = zeekygen_mgr->GetIdentifierInfo(id);
if ( ! d )
return val_mgr->GetEmptyString();
return val_mgr->EmptyString();
string field = accessor.substr(i + 1);
return comments_to_val(d->GetFieldComments(field));