mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 14:48:21 +00:00
Merge remote-tracking branch 'origin/topic/vern/script-opt-maint.Jul24'
* origin/topic/vern/script-opt-maint.Jul24: minor script optimization updates to reflect recent changes, Coverity findings
This commit is contained in:
commit
c557b2156a
14 changed files with 29 additions and 16 deletions
4
CHANGES
4
CHANGES
|
@ -1,3 +1,7 @@
|
|||
7.0.0-dev.450 | 2024-07-09 10:15:13 -0700
|
||||
|
||||
* minor script optimization updates to reflect recent changes, Coverity findings (Vern Paxson, Corelight)
|
||||
|
||||
7.0.0-dev.447 | 2024-07-09 17:10:16 +0200
|
||||
|
||||
* Fix for --display-cmake in configure (cknill)
|
||||
|
|
2
VERSION
2
VERSION
|
@ -1 +1 @@
|
|||
7.0.0-dev.447
|
||||
7.0.0-dev.450
|
||||
|
|
|
@ -2858,7 +2858,7 @@ static NameExprPtr get_RFU_LHS_var(const Stmt* s) {
|
|||
auto s_e = s->AsExprStmt()->StmtExpr();
|
||||
auto var = s_e->GetOp1()->GetOp1()->GetOp1();
|
||||
ASSERT(var->Tag() == EXPR_NAME);
|
||||
return cast_intrusive<NameExpr>(var);
|
||||
return cast_intrusive<NameExpr>(std::move(var));
|
||||
}
|
||||
|
||||
// This one mines out the RHS, so 'y' for "x$foo = y$bar", or for
|
||||
|
@ -2874,7 +2874,7 @@ static NameExprPtr get_RFU_RHS_var(const Stmt* s) {
|
|||
var = rhs->GetOp2()->GetOp1();
|
||||
|
||||
ASSERT(var->Tag() == EXPR_NAME);
|
||||
return cast_intrusive<NameExpr>(var);
|
||||
return cast_intrusive<NameExpr>(std::move(var));
|
||||
}
|
||||
|
||||
RecordFieldUpdatesExpr::RecordFieldUpdatesExpr(ExprTag t, const std::vector<const Stmt*>& stmts,
|
||||
|
@ -2952,7 +2952,7 @@ ExprPtr RecordFieldUpdatesExpr::Reduce(Reducer* c, StmtPtr& red_stmt) {
|
|||
ExprPtr AssignRecordFieldsExpr::Duplicate() {
|
||||
auto e1 = op1->Duplicate();
|
||||
auto e2 = op2->Duplicate();
|
||||
return SetSucc(new AssignRecordFieldsExpr(e1, e2, lhs_map, rhs_map));
|
||||
return SetSucc(new AssignRecordFieldsExpr(std::move(e1), std::move(e2), lhs_map, rhs_map));
|
||||
}
|
||||
|
||||
void AssignRecordFieldsExpr::FoldField(RecordVal* rv1, RecordVal* rv2, size_t i) const {
|
||||
|
@ -3027,13 +3027,13 @@ FieldExprPtr ConstructFromRecordExpr::FindRecordSource(const Expr* const_e) {
|
|||
if ( rhs_rec->Tag() != EXPR_NAME )
|
||||
return nullptr;
|
||||
|
||||
return cast_intrusive<FieldExpr>(fa_rhs);
|
||||
return cast_intrusive<FieldExpr>(std::move(fa_rhs));
|
||||
}
|
||||
|
||||
ExprPtr ConstructFromRecordExpr::Duplicate() {
|
||||
auto e1 = op1->Duplicate();
|
||||
auto e2 = op2->Duplicate();
|
||||
return SetSucc(new ConstructFromRecordExpr(e1, e2, lhs_map, rhs_map));
|
||||
return SetSucc(new ConstructFromRecordExpr(std::move(e1), std::move(e2), lhs_map, rhs_map));
|
||||
}
|
||||
|
||||
bool ConstructFromRecordExpr::IsReduced(Reducer* c) const { return op1->HasReducedOps(c) && op2->IsReduced(c); }
|
||||
|
@ -3066,7 +3066,7 @@ ExprPtr ConstructFromRecordExpr::Reduce(Reducer* c, StmtPtr& red_stmt) {
|
|||
ExprPtr AddRecordFieldsExpr::Duplicate() {
|
||||
auto e1 = op1->Duplicate();
|
||||
auto e2 = op2->Duplicate();
|
||||
return SetSucc(new AddRecordFieldsExpr(e1, e2, lhs_map, rhs_map));
|
||||
return SetSucc(new AddRecordFieldsExpr(std::move(e1), std::move(e2), lhs_map, rhs_map));
|
||||
}
|
||||
|
||||
void AddRecordFieldsExpr::FoldField(RecordVal* rv1, RecordVal* rv2, size_t i) const {
|
||||
|
@ -3084,7 +3084,7 @@ void AddRecordFieldsExpr::FoldField(RecordVal* rv1, RecordVal* rv2, size_t i) co
|
|||
auto sum = add_expr->Eval(nullptr);
|
||||
ASSERT(sum);
|
||||
|
||||
rv1->Assign(lhs_map[i], sum);
|
||||
rv1->Assign(lhs_map[i], std::move(sum));
|
||||
}
|
||||
|
||||
CoerceToAnyExpr::CoerceToAnyExpr(ExprPtr arg_op) : UnaryExpr(EXPR_TO_ANY_COERCE, std::move(arg_op)) {
|
||||
|
|
|
@ -143,7 +143,8 @@ public:
|
|||
protected:
|
||||
// Used for duplicating.
|
||||
AssignRecordFieldsExpr(ExprPtr e1, ExprPtr e2, std::vector<int> _lhs_map, std::vector<int> _rhs_map)
|
||||
: RecordFieldUpdatesExpr(EXPR_REC_ASSIGN_FIELDS, e1, e2, _lhs_map, _rhs_map) {}
|
||||
: RecordFieldUpdatesExpr(EXPR_REC_ASSIGN_FIELDS, std::move(e1), std::move(e2), std::move(_lhs_map),
|
||||
std::move(_rhs_map)) {}
|
||||
|
||||
void FoldField(RecordVal* rv1, RecordVal* rv2, size_t i) const override;
|
||||
};
|
||||
|
@ -170,7 +171,7 @@ public:
|
|||
|
||||
protected:
|
||||
ConstructFromRecordExpr(ExprPtr e1, ExprPtr e2, std::vector<int> _lhs_map, std::vector<int> _rhs_map)
|
||||
: AssignRecordFieldsExpr(e1, e2, _lhs_map, _rhs_map) {
|
||||
: AssignRecordFieldsExpr(std::move(e1), std::move(e2), std::move(_lhs_map), std::move(_rhs_map)) {
|
||||
tag = EXPR_REC_CONSTRUCT_WITH_REC;
|
||||
}
|
||||
|
||||
|
@ -191,7 +192,8 @@ public:
|
|||
|
||||
protected:
|
||||
AddRecordFieldsExpr(ExprPtr e1, ExprPtr e2, std::vector<int> _lhs_map, std::vector<int> _rhs_map)
|
||||
: RecordFieldUpdatesExpr(EXPR_REC_ADD_FIELDS, e1, e2, _lhs_map, _rhs_map) {}
|
||||
: RecordFieldUpdatesExpr(EXPR_REC_ADD_FIELDS, std::move(e1), std::move(e2), std::move(_lhs_map),
|
||||
std::move(_rhs_map)) {}
|
||||
|
||||
void FoldField(RecordVal* rv1, RecordVal* rv2, size_t i) const override;
|
||||
};
|
||||
|
|
|
@ -142,7 +142,6 @@ static std::unordered_map<std::string, unsigned int> func_attrs = {
|
|||
{"Spicy::__toggle_analyzer", ATTR_NO_SCRIPT_SIDE_EFFECTS},
|
||||
{"Supervisor::__create", ATTR_NO_SCRIPT_SIDE_EFFECTS},
|
||||
{"Supervisor::__destroy", ATTR_NO_SCRIPT_SIDE_EFFECTS},
|
||||
{"Supervisor::__init_cluster", ATTR_NO_SCRIPT_SIDE_EFFECTS},
|
||||
{"Supervisor::__is_supervised", ATTR_IDEMPOTENT},
|
||||
{"Supervisor::__is_supervisor", ATTR_IDEMPOTENT},
|
||||
{"Supervisor::__node", ATTR_IDEMPOTENT},
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
### BTest baseline data generated by btest-diff. Do not edit. Use "btest -U/-u" to update. Requires BTest >= 0.63.
|
||||
error in <...>/from_json.zeek, line 4: tables are not supported (from_json([], <internal>::#0, from_json_default_key_mapper))
|
||||
error in <...>/from_json.zeek, line 4: cannot convert JSON type 'array' to Zeek type 'table' (from_json([], <internal>::#0, from_json_default_key_mapper))
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
### BTest baseline data generated by btest-diff. Do not edit. Use "btest -U/-u" to update. Requires BTest >= 0.63.
|
||||
error in <...>/from_json.zeek, line 5: wrong port format, must be <...>/(tcp|udp|icmp|unknown)/ (from_json("80", <internal>::#0, from_json_default_key_mapper))
|
||||
error in <...>/from_json.zeek, line 8: wrong port format, string must be <...>/(tcp|udp|icmp|unknown)/ (from_json("80", <internal>::#2, from_json_default_key_mapper))
|
||||
error in <...>/from_json.zeek, line 9: wrong port format, object must have 'port' and 'proto' members (from_json({}, <internal>::#4, from_json_default_key_mapper))
|
||||
|
|
|
@ -1,2 +1,4 @@
|
|||
### BTest baseline data generated by btest-diff. Do not edit. Use "btest -U/-u" to update. Requires BTest >= 0.63.
|
||||
[v=80/tcp, valid=T]
|
||||
[v=<uninitialized>, valid=F]
|
||||
[v=<uninitialized>, valid=F]
|
||||
|
|
|
@ -5,4 +5,6 @@ aa:bb::/32,
|
|||
}, se={
|
||||
[192.168.0.1, 80/tcp] ,
|
||||
[2001:db8::1, 8080/udp]
|
||||
}, tbl={
|
||||
[192.168.0.1, 80/tcp] = foo
|
||||
}], valid=T]
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
### BTest baseline data generated by btest-diff. Do not edit. Use "btest -U/-u" to update. Requires BTest >= 0.63.
|
||||
received termination signal
|
|
@ -8,3 +8,4 @@
|
|||
#fields ts fuid uid id.orig_h id.orig_p id.resp_h id.resp_p source depth analyzers mime_type filename duration local_orig is_orig seen_bytes total_bytes missing_bytes overflow_bytes timedout parent_fuid
|
||||
#types time string string addr port addr port string count set[string] string string interval bool bool count count count count bool string
|
||||
XXXXXXXXXX.XXXXXX FKPuH630Tmj6UQUMP7 - - - - - ./myfile.exe 0 PE application/x-dosexec - 0.000000 - - 64 - 0 0 F -
|
||||
#close XXXX-XX-XX-XX-XX-XX
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
### BTest baseline data generated by btest-diff. Do not edit. Use "btest -U/-u" to update. Requires BTest >= 0.63.
|
||||
534 seen BiFs, 0 unseen BiFs (), 0 new BiFs ()
|
||||
533 seen BiFs, 0 unseen BiFs (), 0 new BiFs ()
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
# @TEST-DOC: Test for correct ZAM optimization of record "chains".
|
||||
#
|
||||
# @TEST-REQUIRES: test "${ZEEK_USE_CPP}" != "1"
|
||||
# @TEST-EXEC: zeek -b -O ZAM %INPUT >output
|
||||
# @TEST-EXEC: btest-diff output
|
||||
|
||||
|
|
|
@ -170,7 +170,6 @@ global known_BiFs = set(
|
|||
"Spicy::__toggle_analyzer",
|
||||
"Supervisor::__create",
|
||||
"Supervisor::__destroy",
|
||||
"Supervisor::__init_cluster",
|
||||
"Supervisor::__is_supervised",
|
||||
"Supervisor::__is_supervisor",
|
||||
"Supervisor::__node",
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue