@@ -399,7 +399,7 @@ pub fn dns_print_addr(addr: &Vec<u8>) -> std::string::String {
399
399
400
400
/// Log SOA section fields.
401
401
fn dns_log_soa ( soa : & DNSRDataSOA ) -> Result < JsonBuilder , JsonError > {
402
- let mut js = JsonBuilder :: new_object ( ) ;
402
+ let mut js = JsonBuilder :: try_new_object ( ) ? ;
403
403
404
404
js. set_string_from_bytes ( "mname" , & soa. mname ) ?;
405
405
js. set_string_from_bytes ( "rname" , & soa. rname ) ?;
@@ -415,7 +415,7 @@ fn dns_log_soa(soa: &DNSRDataSOA) -> Result<JsonBuilder, JsonError> {
415
415
416
416
/// Log SSHFP section fields.
417
417
fn dns_log_sshfp ( sshfp : & DNSRDataSSHFP ) -> Result < JsonBuilder , JsonError > {
418
- let mut js = JsonBuilder :: new_object ( ) ;
418
+ let mut js = JsonBuilder :: try_new_object ( ) ? ;
419
419
420
420
let mut hex = Vec :: new ( ) ;
421
421
for byte in & sshfp. fingerprint {
@@ -432,7 +432,7 @@ fn dns_log_sshfp(sshfp: &DNSRDataSSHFP) -> Result<JsonBuilder, JsonError> {
432
432
433
433
/// Log SRV section fields.
434
434
fn dns_log_srv ( srv : & DNSRDataSRV ) -> Result < JsonBuilder , JsonError > {
435
- let mut js = JsonBuilder :: new_object ( ) ;
435
+ let mut js = JsonBuilder :: try_new_object ( ) ? ;
436
436
437
437
js. set_uint ( "priority" , srv. priority as u64 ) ?;
438
438
js. set_uint ( "weight" , srv. weight as u64 ) ?;
@@ -444,7 +444,7 @@ fn dns_log_srv(srv: &DNSRDataSRV) -> Result<JsonBuilder, JsonError> {
444
444
}
445
445
446
446
fn dns_log_json_answer_detail ( answer : & DNSAnswerEntry ) -> Result < JsonBuilder , JsonError > {
447
- let mut jsa = JsonBuilder :: new_object ( ) ;
447
+ let mut jsa = JsonBuilder :: try_new_object ( ) ? ;
448
448
449
449
jsa. set_string_from_bytes ( "rrname" , & answer. name ) ?;
450
450
jsa. set_string ( "rrtype" , & dns_rrtype_string ( answer. rrtype ) ) ?;
@@ -516,7 +516,7 @@ fn dns_log_json_answer(
516
516
js. set_string ( "rcode" , & dns_rcode_string ( header. flags ) ) ?;
517
517
518
518
if !response. answers . is_empty ( ) {
519
- let mut js_answers = JsonBuilder :: new_array ( ) ;
519
+ let mut js_answers = JsonBuilder :: try_new_array ( ) ? ;
520
520
521
521
// For grouped answers we use a HashMap keyed by the rrtype.
522
522
let mut answer_types = HashMap :: new ( ) ;
@@ -527,7 +527,7 @@ fn dns_log_json_answer(
527
527
match & answer. data {
528
528
DNSRData :: A ( addr) | DNSRData :: AAAA ( addr) => {
529
529
if !answer_types. contains_key ( & type_string) {
530
- answer_types. insert ( type_string. to_string ( ) , JsonBuilder :: new_array ( ) ) ;
530
+ answer_types. insert ( type_string. to_string ( ) , JsonBuilder :: try_new_array ( ) ? ) ;
531
531
}
532
532
if let Some ( a) = answer_types. get_mut ( & type_string) {
533
533
a. append_string ( & dns_print_addr ( addr) ) ?;
@@ -540,31 +540,31 @@ fn dns_log_json_answer(
540
540
| DNSRData :: NULL ( bytes)
541
541
| DNSRData :: PTR ( bytes) => {
542
542
if !answer_types. contains_key ( & type_string) {
543
- answer_types. insert ( type_string. to_string ( ) , JsonBuilder :: new_array ( ) ) ;
543
+ answer_types. insert ( type_string. to_string ( ) , JsonBuilder :: try_new_array ( ) ? ) ;
544
544
}
545
545
if let Some ( a) = answer_types. get_mut ( & type_string) {
546
546
a. append_string_from_bytes ( bytes) ?;
547
547
}
548
548
}
549
549
DNSRData :: SOA ( soa) => {
550
550
if !answer_types. contains_key ( & type_string) {
551
- answer_types. insert ( type_string. to_string ( ) , JsonBuilder :: new_array ( ) ) ;
551
+ answer_types. insert ( type_string. to_string ( ) , JsonBuilder :: try_new_array ( ) ? ) ;
552
552
}
553
553
if let Some ( a) = answer_types. get_mut ( & type_string) {
554
554
a. append_object ( & dns_log_soa ( soa) ?) ?;
555
555
}
556
556
}
557
557
DNSRData :: SSHFP ( sshfp) => {
558
558
if !answer_types. contains_key ( & type_string) {
559
- answer_types. insert ( type_string. to_string ( ) , JsonBuilder :: new_array ( ) ) ;
559
+ answer_types. insert ( type_string. to_string ( ) , JsonBuilder :: try_new_array ( ) ? ) ;
560
560
}
561
561
if let Some ( a) = answer_types. get_mut ( & type_string) {
562
562
a. append_object ( & dns_log_sshfp ( sshfp) ?) ?;
563
563
}
564
564
}
565
565
DNSRData :: SRV ( srv) => {
566
566
if !answer_types. contains_key ( & type_string) {
567
- answer_types. insert ( type_string. to_string ( ) , JsonBuilder :: new_array ( ) ) ;
567
+ answer_types. insert ( type_string. to_string ( ) , JsonBuilder :: try_new_array ( ) ? ) ;
568
568
}
569
569
if let Some ( a) = answer_types. get_mut ( & type_string) {
570
570
a. append_object ( & dns_log_srv ( srv) ?) ?;
0 commit comments