[INFO] crate etherparse 0.7.1 is already in cache [INFO] extracting crate etherparse 0.7.1 into work/ex/clippy-test-run/sources/stable/reg/etherparse/0.7.1 [INFO] extracting crate etherparse 0.7.1 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/etherparse/0.7.1 [INFO] validating manifest of etherparse-0.7.1 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of etherparse-0.7.1 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing etherparse-0.7.1 [INFO] finished frobbing etherparse-0.7.1 [INFO] frobbed toml for etherparse-0.7.1 written to work/ex/clippy-test-run/sources/stable/reg/etherparse/0.7.1/Cargo.toml [INFO] started frobbing etherparse-0.7.1 [INFO] finished frobbing etherparse-0.7.1 [INFO] frobbed toml for etherparse-0.7.1 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/etherparse/0.7.1/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting etherparse-0.7.1 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-2/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/etherparse/0.7.1:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 94322bab846d8fc8ac34101d19a6230ea4a150ba876f63337c18dc421e7a8628 [INFO] running `"docker" "start" "-a" "94322bab846d8fc8ac34101d19a6230ea4a150ba876f63337c18dc421e7a8628"` [INFO] [stderr] Checking etherparse v0.7.1 (/opt/crater/workdir) [INFO] [stderr] Checking proptest v0.8.7 [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/link/vlan_tagging.rs:49:13 [INFO] [stderr] | [INFO] [stderr] 49 | priority_code_point: priority_code_point, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `priority_code_point` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/link/vlan_tagging.rs:50:13 [INFO] [stderr] | [INFO] [stderr] 50 | drop_eligible_indicator: drop_eligible_indicator, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `drop_eligible_indicator` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/link/vlan_tagging.rs:51:13 [INFO] [stderr] | [INFO] [stderr] 51 | vlan_identifier: vlan_identifier, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `vlan_identifier` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/link/vlan_tagging.rs:100:17 [INFO] [stderr] | [INFO] [stderr] 100 | outer: outer, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `outer` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:79:13 [INFO] [stderr] | [INFO] [stderr] 79 | time_to_live: time_to_live, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `time_to_live` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:82:13 [INFO] [stderr] | [INFO] [stderr] 82 | source: source, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `source` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:83:13 [INFO] [stderr] | [INFO] [stderr] 83 | destination: destination [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:123:13 [INFO] [stderr] | [INFO] [stderr] 123 | total_length: total_length, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `total_length` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:124:13 [INFO] [stderr] | [INFO] [stderr] 124 | identification: identification, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `identification` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:125:13 [INFO] [stderr] | [INFO] [stderr] 125 | dont_fragment: dont_fragment, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `dont_fragment` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:126:13 [INFO] [stderr] | [INFO] [stderr] 126 | more_fragments: more_fragments, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `more_fragments` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:127:13 [INFO] [stderr] | [INFO] [stderr] 127 | fragments_offset: fragments_offset, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `fragments_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:378:13 [INFO] [stderr] | [INFO] [stderr] 378 | traffic_class: traffic_class, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traffic_class` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:379:13 [INFO] [stderr] | [INFO] [stderr] 379 | flow_label: flow_label, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `flow_label` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:456:29 [INFO] [stderr] | [INFO] [stderr] 456 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:457:29 [INFO] [stderr] | [INFO] [stderr] 457 | max: max, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `max` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:458:29 [INFO] [stderr] | [INFO] [stderr] 458 | field: field })) [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `field` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/udp.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | source_port: source_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `source_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/udp.rs:31:13 [INFO] [stderr] | [INFO] [stderr] 31 | destination_port: destination_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/udp.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | source_port: source_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `source_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/udp.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | destination_port: destination_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/udp.rs:93:13 [INFO] [stderr] | [INFO] [stderr] 93 | source_port: source_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `source_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/udp.rs:94:13 [INFO] [stderr] | [INFO] [stderr] 94 | destination_port: destination_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:84:13 [INFO] [stderr] | [INFO] [stderr] 84 | source_port: source_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `source_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:85:13 [INFO] [stderr] | [INFO] [stderr] 85 | destination_port: destination_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:86:13 [INFO] [stderr] | [INFO] [stderr] 86 | sequence_number: sequence_number, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `sequence_number` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:98:13 [INFO] [stderr] | [INFO] [stderr] 98 | window_size: window_size, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `window_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:289:13 [INFO] [stderr] | [INFO] [stderr] 289 | source_port: source_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `source_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:290:13 [INFO] [stderr] | [INFO] [stderr] 290 | destination_port: destination_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:291:13 [INFO] [stderr] | [INFO] [stderr] 291 | sequence_number: sequence_number, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `sequence_number` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:292:13 [INFO] [stderr] | [INFO] [stderr] 292 | acknowledgment_number: acknowledgment_number, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `acknowledgment_number` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:293:13 [INFO] [stderr] | [INFO] [stderr] 293 | ns: ns, [INFO] [stderr] | ^^^^^^ help: replace it with: `ns` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:46:21 [INFO] [stderr] | [INFO] [stderr] 46 | source: source, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `source` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:47:21 [INFO] [stderr] | [INFO] [stderr] 47 | destination: destination, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:85:13 [INFO] [stderr] | [INFO] [stderr] 85 | time_to_live: time_to_live, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `time_to_live` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:88:13 [INFO] [stderr] | [INFO] [stderr] 88 | source: source, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `source` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:89:13 [INFO] [stderr] | [INFO] [stderr] 89 | destination: destination [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:158:13 [INFO] [stderr] | [INFO] [stderr] 158 | hop_limit: hop_limit, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `hop_limit` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:159:13 [INFO] [stderr] | [INFO] [stderr] 159 | source: source, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `source` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:160:13 [INFO] [stderr] | [INFO] [stderr] 160 | destination: destination [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:185:13 [INFO] [stderr] | [INFO] [stderr] 185 | vlan_identifier: vlan_identifier, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `vlan_identifier` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:294:13 [INFO] [stderr] | [INFO] [stderr] 294 | source_port: source_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `source_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:295:13 [INFO] [stderr] | [INFO] [stderr] 295 | destination_port: destination_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_decoder.rs:54:29 [INFO] [stderr] | [INFO] [stderr] 54 | outer: outer, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `outer` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_decoder.rs:55:29 [INFO] [stderr] | [INFO] [stderr] 55 | inner: inner [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_slicing.rs:198:13 [INFO] [stderr] | [INFO] [stderr] 198 | link: link, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `link` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_slicing.rs:199:13 [INFO] [stderr] | [INFO] [stderr] 199 | vlan: vlan, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `vlan` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_slicing.rs:200:13 [INFO] [stderr] | [INFO] [stderr] 200 | ip: ip, [INFO] [stderr] | ^^^^^^ help: replace it with: `ip` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_slicing.rs:201:13 [INFO] [stderr] | [INFO] [stderr] 201 | transport: transport, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `transport` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:122:13 [INFO] [stderr] | [INFO] [stderr] 122 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:123:13 [INFO] [stderr] | [INFO] [stderr] 123 | max: max, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `max` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:124:13 [INFO] [stderr] | [INFO] [stderr] 124 | field: field [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `field` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:135:13 [INFO] [stderr] | [INFO] [stderr] 135 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:136:13 [INFO] [stderr] | [INFO] [stderr] 136 | max: max, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `max` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:137:13 [INFO] [stderr] | [INFO] [stderr] 137 | field: field [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `field` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:152:13 [INFO] [stderr] | [INFO] [stderr] 152 | start: start, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `start` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:153:13 [INFO] [stderr] | [INFO] [stderr] 153 | end: end, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `end` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:154:13 [INFO] [stderr] | [INFO] [stderr] 154 | step: step [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `step` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/packet_builder.rs:546:5 [INFO] [stderr] | [INFO] [stderr] 546 | result [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/packet_builder.rs:530:18 [INFO] [stderr] | [INFO] [stderr] 530 | let result = match builder.state.ethernet2_header { [INFO] [stderr] | __________________^ [INFO] [stderr] 531 | | Some(_) => Ethernet2Header::SERIALIZED_SIZE, [INFO] [stderr] 532 | | None => 0 [INFO] [stderr] 533 | | } + match builder.state.vlan_header { [INFO] [stderr] ... | [INFO] [stderr] 544 | | None => 0 [INFO] [stderr] 545 | | } + payload_size; [INFO] [stderr] | |____________________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/link/vlan_tagging.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | buffer[0] = buffer[0] & 0xf; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `buffer[0] &= 0xf` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/link/vlan_tagging.rs:66:17 [INFO] [stderr] | [INFO] [stderr] 66 | buffer[0] = buffer[0] | 0x10; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `buffer[0] |= 0x10` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/link/vlan_tagging.rs:68:13 [INFO] [stderr] | [INFO] [stderr] 68 | buffer[0] = buffer[0] | (self.priority_code_point << 5); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `buffer[0] |= (self.priority_code_point << 5)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i64 may become silently lossy if types change [INFO] [stderr] --> src/internet/ip.rs:153:20 [INFO] [stderr] | [INFO] [stderr] 153 | let skip = ((self.header_length - 5) as i64)*4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(self.header_length - 5)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/internet/ip.rs:227:21 [INFO] [stderr] | [INFO] [stderr] 227 | result = result | 64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `result |= 64` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/internet/ip.rs:230:21 [INFO] [stderr] | [INFO] [stderr] 230 | result = result | 32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `result |= 32` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/internet/ip.rs:287:25 [INFO] [stderr] | [INFO] [stderr] 287 | result = result | 64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `result |= 64` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/internet/ip.rs:290:25 [INFO] [stderr] | [INFO] [stderr] 290 | result = result | 32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `result |= 32` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/internet/ip.rs:302:48 [INFO] [stderr] | [INFO] [stderr] 302 | ].iter().fold(0, |a: u32, x: &u16| a + (*x as u32)); [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u32::from(*x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/internet/ip.rs:304:20 [INFO] [stderr] | [INFO] [stderr] 304 | sum += BigEndian::read_u16(&options[i*2..i*2 + 2]) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(BigEndian::read_u16(&options[i*2..i*2 + 2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/internet/ip.rs:373:13 [INFO] [stderr] | [INFO] [stderr] 373 | buffer[1] = buffer[1] & 0xf; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `buffer[1] &= 0xf` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i64 may become silently lossy if types change [INFO] [stderr] --> src/internet/ip.rs:406:15 [INFO] [stderr] | [INFO] [stderr] 406 | (((reader.read_u8()? as i64) + 1)*8) - 2 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(reader.read_u8()?)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/internet/ip.rs:472:13 [INFO] [stderr] | [INFO] [stderr] 472 | buffer[1] = buffer[1] | (self.traffic_class << 4); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `buffer[1] |= (self.traffic_class << 4)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/transport/udp.rs:62:50 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn calc_checksum_ipv4_raw(&self, source: &[u8;4], destination: &[u8;4], protocol: u8, payload: &[u8]) -> Result { [INFO] [stderr] | ^^^^^^^ help: consider passing by value instead: `[u8;4]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/transport/udp.rs:62:72 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn calc_checksum_ipv4_raw(&self, source: &[u8;4], destination: &[u8;4], protocol: u8, payload: &[u8]) -> Result { [INFO] [stderr] | ^^^^^^^ help: consider passing by value instead: `[u8;4]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/transport/udp.rs:73:51 [INFO] [stderr] | [INFO] [stderr] 73 | fn calc_checksum_ipv4_internal(&self, source: &[u8;4], destination: &[u8;4], protocol: u8, payload: &[u8]) -> u16 { [INFO] [stderr] | ^^^^^^^ help: consider passing by value instead: `[u8;4]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/transport/udp.rs:73:73 [INFO] [stderr] | [INFO] [stderr] 73 | fn calc_checksum_ipv4_internal(&self, source: &[u8;4], destination: &[u8;4], protocol: u8, payload: &[u8]) -> u16 { [INFO] [stderr] | ^^^^^^^ help: consider passing by value instead: `[u8;4]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:74:36 [INFO] [stderr] | [INFO] [stderr] 74 | self.calc_checksum_post_ip(BigEndian::read_u16(&source[0..2]) as u64 + //pseudo header [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&source[0..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:75:36 [INFO] [stderr] | [INFO] [stderr] 75 | BigEndian::read_u16(&source[2..4]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&source[2..4]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:76:36 [INFO] [stderr] | [INFO] [stderr] 76 | BigEndian::read_u16(&destination[0..2]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&destination[0..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:77:36 [INFO] [stderr] | [INFO] [stderr] 77 | BigEndian::read_u16(&destination[2..4]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&destination[2..4]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:78:36 [INFO] [stderr] | [INFO] [stderr] 78 | protocol as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u64::from(protocol)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:79:36 [INFO] [stderr] | [INFO] [stderr] 79 | self.length as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.length)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:123:27 [INFO] [stderr] | [INFO] [stderr] 123 | result += BigEndian::read_u16(&value[index..(index + 2)]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&value[index..(index + 2)]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:130:36 [INFO] [stderr] | [INFO] [stderr] 130 | self.length as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.length)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:137:23 [INFO] [stderr] | [INFO] [stderr] 137 | self.source_port as u64 + //udp header start [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.source_port)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:138:23 [INFO] [stderr] | [INFO] [stderr] 138 | self.destination_port as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.destination_port)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:139:23 [INFO] [stderr] | [INFO] [stderr] 139 | self.length as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.length)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:142:20 [INFO] [stderr] | [INFO] [stderr] 142 | sum += BigEndian::read_u16(&payload[i*2..i*2 + 2]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&payload[i*2..i*2 + 2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:146:20 [INFO] [stderr] | [INFO] [stderr] 146 | sum += BigEndian::read_u16(&[*payload.last().unwrap(), 0]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&[*payload.last().unwrap(), 0]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:115:9 [INFO] [stderr] | [INFO] [stderr] 115 | self._data_offset as u16 * 4 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self._data_offset)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/transport/tcp.rs:126:5 [INFO] [stderr] | [INFO] [stderr] 126 | / pub fn options<'a>(&'a self) -> &'a[u8] { [INFO] [stderr] 127 | | &self.options_buffer[..self.options_len()] [INFO] [stderr] 128 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/transport/tcp.rs:270:5 [INFO] [stderr] | [INFO] [stderr] 270 | / pub fn options_iterator<'a>(&'a self) -> TcpOptionsIterator<'a> { [INFO] [stderr] 271 | | TcpOptionsIterator { [INFO] [stderr] 272 | | options: &self.options_buffer[..self.options_len()] [INFO] [stderr] 273 | | } [INFO] [stderr] 274 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:344:17 [INFO] [stderr] | [INFO] [stderr] 344 | value = value | 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:347:17 [INFO] [stderr] | [INFO] [stderr] 347 | value = value | 2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:350:17 [INFO] [stderr] | [INFO] [stderr] 350 | value = value | 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 4` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:353:17 [INFO] [stderr] | [INFO] [stderr] 353 | value = value | 8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 8` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:356:17 [INFO] [stderr] | [INFO] [stderr] 356 | value = value | 16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 16` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:359:17 [INFO] [stderr] | [INFO] [stderr] 359 | value = value | 32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 32` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:362:17 [INFO] [stderr] | [INFO] [stderr] 362 | value = value | 64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 64` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:365:17 [INFO] [stderr] | [INFO] [stderr] 365 | value = value | 128; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 128` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/transport/tcp.rs:387:53 [INFO] [stderr] | [INFO] [stderr] 387 | pub fn calc_checksum_ipv4_raw(&self, source_ip: &[u8;4], destination_ip: &[u8;4], payload: &[u8]) -> Result { [INFO] [stderr] | ^^^^^^^ help: consider passing by value instead: `[u8;4]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/transport/tcp.rs:387:78 [INFO] [stderr] | [INFO] [stderr] 387 | pub fn calc_checksum_ipv4_raw(&self, source_ip: &[u8;4], destination_ip: &[u8;4], payload: &[u8]) -> Result { [INFO] [stderr] | ^^^^^^^ help: consider passing by value instead: `[u8;4]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:396:39 [INFO] [stderr] | [INFO] [stderr] 396 | Ok(self.calc_checksum_post_ip(BigEndian::read_u16(&source_ip[0..2]) as u64 + //pseudo header [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&source_ip[0..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:397:39 [INFO] [stderr] | [INFO] [stderr] 397 | BigEndian::read_u16(&source_ip[2..4]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&source_ip[2..4]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:398:39 [INFO] [stderr] | [INFO] [stderr] 398 | BigEndian::read_u16(&destination_ip[0..2]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&destination_ip[0..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:399:39 [INFO] [stderr] | [INFO] [stderr] 399 | BigEndian::read_u16(&destination_ip[2..4]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&destination_ip[2..4]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:423:27 [INFO] [stderr] | [INFO] [stderr] 423 | result += BigEndian::read_u16(&value[index..(index + 2)]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&value[index..(index + 2)]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:434:17 [INFO] [stderr] | [INFO] [stderr] 434 | BigEndian::read_u16(&buffer[0..2]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&buffer[0..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:435:17 [INFO] [stderr] | [INFO] [stderr] 435 | BigEndian::read_u16(&buffer[2..4]) as u64 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&buffer[2..4]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:445:13 [INFO] [stderr] | [INFO] [stderr] 445 | (BigEndian::read_u16(&buffer[..2]) as u64) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&buffer[..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:446:13 [INFO] [stderr] | [INFO] [stderr] 446 | (BigEndian::read_u16(&buffer[2..]) as u64) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&buffer[2..]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:450:13 [INFO] [stderr] | [INFO] [stderr] 450 | self.source_port as u64 + //udp header start [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.source_port)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:451:13 [INFO] [stderr] | [INFO] [stderr] 451 | self.destination_port as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.destination_port)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:454:13 [INFO] [stderr] | [INFO] [stderr] 454 | / BigEndian::read_u16(&[ [INFO] [stderr] 455 | | { [INFO] [stderr] 456 | | let value = (self._data_offset << 4) & 0xF0; [INFO] [stderr] 457 | | if self.ns { [INFO] [stderr] ... | [INFO] [stderr] 490 | | } [INFO] [stderr] 491 | | ]) as u64 + [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 454 | u64::from(BigEndian::read_u16(&[ [INFO] [stderr] 455 | { [INFO] [stderr] 456 | let value = (self._data_offset << 4) & 0xF0; [INFO] [stderr] 457 | if self.ns { [INFO] [stderr] 458 | value | 1 [INFO] [stderr] 459 | } else { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:466:25 [INFO] [stderr] | [INFO] [stderr] 466 | value = value | 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:469:25 [INFO] [stderr] | [INFO] [stderr] 469 | value = value | 2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:472:25 [INFO] [stderr] | [INFO] [stderr] 472 | value = value | 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 4` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:475:25 [INFO] [stderr] | [INFO] [stderr] 475 | value = value | 8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 8` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:478:25 [INFO] [stderr] | [INFO] [stderr] 478 | value = value | 16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 16` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:481:25 [INFO] [stderr] | [INFO] [stderr] 481 | value = value | 32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 32` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:484:25 [INFO] [stderr] | [INFO] [stderr] 484 | value = value | 64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 64` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:487:25 [INFO] [stderr] | [INFO] [stderr] 487 | value = value | 128; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 128` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:492:13 [INFO] [stderr] | [INFO] [stderr] 492 | self.window_size as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.window_size)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:493:13 [INFO] [stderr] | [INFO] [stderr] 493 | self.urgent_pointer as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.urgent_pointer)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:498:20 [INFO] [stderr] | [INFO] [stderr] 498 | sum += BigEndian::read_u16(&self.options_buffer[i..i + 2]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&self.options_buffer[i..i + 2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:503:20 [INFO] [stderr] | [INFO] [stderr] 503 | sum += BigEndian::read_u16(&payload[i..i + 2]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&payload[i..i + 2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:507:20 [INFO] [stderr] | [INFO] [stderr] 507 | sum += BigEndian::read_u16(&[*payload.last().unwrap(), 0]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&[*payload.last().unwrap(), 0]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/transport/tcp.rs:743:5 [INFO] [stderr] | [INFO] [stderr] 743 | / pub fn options_iterator<'b>(&'b self) -> TcpOptionsIterator<'b> { [INFO] [stderr] 744 | | TcpOptionsIterator { [INFO] [stderr] 745 | | options: self.options() [INFO] [stderr] 746 | | } [INFO] [stderr] 747 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/transport/tcp.rs:772:20 [INFO] [stderr] | [INFO] [stderr] 772 | if options.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!options.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:796:39 [INFO] [stderr] | [INFO] [stderr] 796 | Ok(self.calc_checksum_post_ip(BigEndian::read_u16(&source_ip[0..2]) as u64 + //pseudo header [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&source_ip[0..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:797:39 [INFO] [stderr] | [INFO] [stderr] 797 | BigEndian::read_u16(&source_ip[2..4]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&source_ip[2..4]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:798:39 [INFO] [stderr] | [INFO] [stderr] 798 | BigEndian::read_u16(&destination_ip[0..2]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&destination_ip[0..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:799:39 [INFO] [stderr] | [INFO] [stderr] 799 | BigEndian::read_u16(&destination_ip[2..4]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&destination_ip[2..4]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:823:27 [INFO] [stderr] | [INFO] [stderr] 823 | result += BigEndian::read_u16(&value[index..(index + 2)]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&value[index..(index + 2)]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:834:17 [INFO] [stderr] | [INFO] [stderr] 834 | BigEndian::read_u16(&buffer[0..2]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&buffer[0..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:835:17 [INFO] [stderr] | [INFO] [stderr] 835 | BigEndian::read_u16(&buffer[2..4]) as u64 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&buffer[2..4]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:847:20 [INFO] [stderr] | [INFO] [stderr] 847 | sum += BigEndian::read_u16(&self.slice[i..i + 2]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&self.slice[i..i + 2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:851:20 [INFO] [stderr] | [INFO] [stderr] 851 | sum += BigEndian::read_u16(&self.slice[i..i + 2]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&self.slice[i..i + 2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:855:20 [INFO] [stderr] | [INFO] [stderr] 855 | sum += BigEndian::read_u16(&payload[i..i + 2]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&payload[i..i + 2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:859:20 [INFO] [stderr] | [INFO] [stderr] 859 | sum += BigEndian::read_u16(&[*payload.last().unwrap(), 0]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&[*payload.last().unwrap(), 0]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/transport/tcp.rs:943:12 [INFO] [stderr] | [INFO] [stderr] 943 | if self.options.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.options.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `acks` [INFO] [stderr] --> src/transport/tcp.rs:1005:38 [INFO] [stderr] | [INFO] [stderr] 1005 | for i in 0usize..3 { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 1005 | for (i, ) in acks.iter_mut().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/transport/mod.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | / pub fn mut_udp<'a>(&'a mut self) -> Option<&'a mut udp::UdpHeader> { [INFO] [stderr] 28 | | use TransportHeader::*; [INFO] [stderr] 29 | | match self { [INFO] [stderr] 30 | | Udp(ref mut value) => Some(value), [INFO] [stderr] 31 | | Tcp(_) => None [INFO] [stderr] 32 | | } [INFO] [stderr] 33 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/transport/mod.rs:47:5 [INFO] [stderr] | [INFO] [stderr] 47 | / pub fn mut_tcp<'a>(&'a mut self) -> Option<&'a mut tcp::TcpHeader> { [INFO] [stderr] 48 | | use TransportHeader::*; [INFO] [stderr] 49 | | match self { [INFO] [stderr] 50 | | Udp(_) => None, [INFO] [stderr] 51 | | Tcp(ref mut value) => Some(value) [INFO] [stderr] 52 | | } [INFO] [stderr] 53 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: passing a unit value to a function [INFO] [stderr] --> src/transport/mod.rs:115:33 [INFO] [stderr] | [INFO] [stderr] 115 | Ok(value) => Ok(value), [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unit_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unit_arg [INFO] [stderr] help: if you intended to pass a unit value, use a unit literal instead [INFO] [stderr] | [INFO] [stderr] 115 | Ok(value) => Ok(()), [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/packet_builder.rs:428:5 [INFO] [stderr] | [INFO] [stderr] 428 | / match builder.state.ethernet2_header { [INFO] [stderr] 429 | | Some(mut eth) => { [INFO] [stderr] 430 | | eth.ether_type = { [INFO] [stderr] 431 | | [INFO] [stderr] ... | [INFO] [stderr] 443 | | None => {} [INFO] [stderr] 444 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 428 | if let Some(mut eth) = builder.state.ethernet2_header { [INFO] [stderr] 429 | eth.ether_type = { [INFO] [stderr] 430 | [INFO] [stderr] 431 | use VlanHeader::*; [INFO] [stderr] 432 | //determine the ether type depending on if there is a vlan tagging header [INFO] [stderr] 433 | match builder.state.vlan_header { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/packet_decoder.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | / pub fn from_ethernet_slice<'b>(packet: &'b [u8]) -> Result, ReadError> { [INFO] [stderr] 17 | | [INFO] [stderr] 18 | | use std::io::Cursor; [INFO] [stderr] 19 | | let mut cursor = Cursor::new(&packet); [INFO] [stderr] ... | [INFO] [stderr] 105 | | Ok(result) [INFO] [stderr] 106 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `ip_extensions`. [INFO] [stderr] --> src/packet_slicing.rs:135:26 [INFO] [stderr] | [INFO] [stderr] 135 | for i in 0..IPV6_MAX_NUM_HEADER_EXTENSIONS { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 135 | for in ip_extensions.iter_mut().take(IPV6_MAX_NUM_HEADER_EXTENSIONS) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/link/vlan_tagging.rs:49:13 [INFO] [stderr] | [INFO] [stderr] 49 | priority_code_point: priority_code_point, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `priority_code_point` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/link/vlan_tagging.rs:50:13 [INFO] [stderr] | [INFO] [stderr] 50 | drop_eligible_indicator: drop_eligible_indicator, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `drop_eligible_indicator` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/link/vlan_tagging.rs:51:13 [INFO] [stderr] | [INFO] [stderr] 51 | vlan_identifier: vlan_identifier, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `vlan_identifier` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/link/vlan_tagging.rs:100:17 [INFO] [stderr] | [INFO] [stderr] 100 | outer: outer, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `outer` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:79:13 [INFO] [stderr] | [INFO] [stderr] 79 | time_to_live: time_to_live, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `time_to_live` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:82:13 [INFO] [stderr] | [INFO] [stderr] 82 | source: source, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `source` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:83:13 [INFO] [stderr] | [INFO] [stderr] 83 | destination: destination [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:123:13 [INFO] [stderr] | [INFO] [stderr] 123 | total_length: total_length, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `total_length` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:124:13 [INFO] [stderr] | [INFO] [stderr] 124 | identification: identification, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `identification` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:125:13 [INFO] [stderr] | [INFO] [stderr] 125 | dont_fragment: dont_fragment, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `dont_fragment` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:126:13 [INFO] [stderr] | [INFO] [stderr] 126 | more_fragments: more_fragments, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `more_fragments` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:127:13 [INFO] [stderr] | [INFO] [stderr] 127 | fragments_offset: fragments_offset, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `fragments_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:378:13 [INFO] [stderr] | [INFO] [stderr] 378 | traffic_class: traffic_class, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traffic_class` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:379:13 [INFO] [stderr] | [INFO] [stderr] 379 | flow_label: flow_label, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `flow_label` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:456:29 [INFO] [stderr] | [INFO] [stderr] 456 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:457:29 [INFO] [stderr] | [INFO] [stderr] 457 | max: max, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `max` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/internet/ip.rs:458:29 [INFO] [stderr] | [INFO] [stderr] 458 | field: field })) [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `field` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/udp.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | source_port: source_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `source_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/udp.rs:31:13 [INFO] [stderr] | [INFO] [stderr] 31 | destination_port: destination_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/udp.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | source_port: source_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `source_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/udp.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | destination_port: destination_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/udp.rs:93:13 [INFO] [stderr] | [INFO] [stderr] 93 | source_port: source_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `source_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/udp.rs:94:13 [INFO] [stderr] | [INFO] [stderr] 94 | destination_port: destination_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:84:13 [INFO] [stderr] | [INFO] [stderr] 84 | source_port: source_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `source_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:85:13 [INFO] [stderr] | [INFO] [stderr] 85 | destination_port: destination_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:86:13 [INFO] [stderr] | [INFO] [stderr] 86 | sequence_number: sequence_number, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `sequence_number` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:98:13 [INFO] [stderr] | [INFO] [stderr] 98 | window_size: window_size, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `window_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:289:13 [INFO] [stderr] | [INFO] [stderr] 289 | source_port: source_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `source_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:290:13 [INFO] [stderr] | [INFO] [stderr] 290 | destination_port: destination_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:291:13 [INFO] [stderr] | [INFO] [stderr] 291 | sequence_number: sequence_number, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `sequence_number` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:292:13 [INFO] [stderr] | [INFO] [stderr] 292 | acknowledgment_number: acknowledgment_number, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `acknowledgment_number` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/transport/tcp.rs:293:13 [INFO] [stderr] | [INFO] [stderr] 293 | ns: ns, [INFO] [stderr] | ^^^^^^ help: replace it with: `ns` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:46:21 [INFO] [stderr] | [INFO] [stderr] 46 | source: source, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `source` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:47:21 [INFO] [stderr] | [INFO] [stderr] 47 | destination: destination, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:85:13 [INFO] [stderr] | [INFO] [stderr] 85 | time_to_live: time_to_live, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `time_to_live` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:88:13 [INFO] [stderr] | [INFO] [stderr] 88 | source: source, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `source` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:89:13 [INFO] [stderr] | [INFO] [stderr] 89 | destination: destination [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:158:13 [INFO] [stderr] | [INFO] [stderr] 158 | hop_limit: hop_limit, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `hop_limit` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:159:13 [INFO] [stderr] | [INFO] [stderr] 159 | source: source, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `source` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:160:13 [INFO] [stderr] | [INFO] [stderr] 160 | destination: destination [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:185:13 [INFO] [stderr] | [INFO] [stderr] 185 | vlan_identifier: vlan_identifier, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `vlan_identifier` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:294:13 [INFO] [stderr] | [INFO] [stderr] 294 | source_port: source_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `source_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_builder.rs:295:13 [INFO] [stderr] | [INFO] [stderr] 295 | destination_port: destination_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `destination_port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_decoder.rs:54:29 [INFO] [stderr] | [INFO] [stderr] 54 | outer: outer, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `outer` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_decoder.rs:55:29 [INFO] [stderr] | [INFO] [stderr] 55 | inner: inner [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_slicing.rs:198:13 [INFO] [stderr] | [INFO] [stderr] 198 | link: link, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `link` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_slicing.rs:199:13 [INFO] [stderr] | [INFO] [stderr] 199 | vlan: vlan, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `vlan` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_slicing.rs:200:13 [INFO] [stderr] | [INFO] [stderr] 200 | ip: ip, [INFO] [stderr] | ^^^^^^ help: replace it with: `ip` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/packet_slicing.rs:201:13 [INFO] [stderr] | [INFO] [stderr] 201 | transport: transport, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `transport` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:122:13 [INFO] [stderr] | [INFO] [stderr] 122 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:123:13 [INFO] [stderr] | [INFO] [stderr] 123 | max: max, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `max` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:124:13 [INFO] [stderr] | [INFO] [stderr] 124 | field: field [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `field` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:135:13 [INFO] [stderr] | [INFO] [stderr] 135 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:136:13 [INFO] [stderr] | [INFO] [stderr] 136 | max: max, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `max` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:137:13 [INFO] [stderr] | [INFO] [stderr] 137 | field: field [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `field` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:152:13 [INFO] [stderr] | [INFO] [stderr] 152 | start: start, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `start` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:153:13 [INFO] [stderr] | [INFO] [stderr] 153 | end: end, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `end` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:154:13 [INFO] [stderr] | [INFO] [stderr] 154 | step: step [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `step` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tests/internet/ip.rs:527:13 [INFO] [stderr] | [INFO] [stderr] 527 | header_length: header_length, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `header_length` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> examples/read_by_slicing.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | / match value.link { [INFO] [stderr] 37 | | Some(Ethernet2(value)) => println!(" Ethernet2 {:?} => {:?}", value.source(), value.destination()), [INFO] [stderr] 38 | | None => {} [INFO] [stderr] 39 | | } [INFO] [stderr] | |_____________^ help: try this: `if let Some(Ethernet2(value)) = value.link { println!(" Ethernet2 {:?} => {:?}", value.source(), value.destination()) }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/packet_builder.rs:546:5 [INFO] [stderr] | [INFO] [stderr] 546 | result [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/packet_builder.rs:530:18 [INFO] [stderr] | [INFO] [stderr] 530 | let result = match builder.state.ethernet2_header { [INFO] [stderr] | __________________^ [INFO] [stderr] 531 | | Some(_) => Ethernet2Header::SERIALIZED_SIZE, [INFO] [stderr] 532 | | None => 0 [INFO] [stderr] 533 | | } + match builder.state.vlan_header { [INFO] [stderr] ... | [INFO] [stderr] 544 | | None => 0 [INFO] [stderr] 545 | | } + payload_size; [INFO] [stderr] | |____________________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/link/vlan_tagging.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | buffer[0] = buffer[0] & 0xf; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `buffer[0] &= 0xf` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/link/vlan_tagging.rs:66:17 [INFO] [stderr] | [INFO] [stderr] 66 | buffer[0] = buffer[0] | 0x10; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `buffer[0] |= 0x10` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/link/vlan_tagging.rs:68:13 [INFO] [stderr] | [INFO] [stderr] 68 | buffer[0] = buffer[0] | (self.priority_code_point << 5); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `buffer[0] |= (self.priority_code_point << 5)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i64 may become silently lossy if types change [INFO] [stderr] --> src/internet/ip.rs:153:20 [INFO] [stderr] | [INFO] [stderr] 153 | let skip = ((self.header_length - 5) as i64)*4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(self.header_length - 5)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/internet/ip.rs:227:21 [INFO] [stderr] | [INFO] [stderr] 227 | result = result | 64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `result |= 64` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/internet/ip.rs:230:21 [INFO] [stderr] | [INFO] [stderr] 230 | result = result | 32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `result |= 32` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/internet/ip.rs:287:25 [INFO] [stderr] | [INFO] [stderr] 287 | result = result | 64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `result |= 64` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/internet/ip.rs:290:25 [INFO] [stderr] | [INFO] [stderr] 290 | result = result | 32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `result |= 32` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/internet/ip.rs:302:48 [INFO] [stderr] | [INFO] [stderr] 302 | ].iter().fold(0, |a: u32, x: &u16| a + (*x as u32)); [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u32::from(*x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/internet/ip.rs:304:20 [INFO] [stderr] | [INFO] [stderr] 304 | sum += BigEndian::read_u16(&options[i*2..i*2 + 2]) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(BigEndian::read_u16(&options[i*2..i*2 + 2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/internet/ip.rs:373:13 [INFO] [stderr] | [INFO] [stderr] 373 | buffer[1] = buffer[1] & 0xf; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `buffer[1] &= 0xf` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i64 may become silently lossy if types change [INFO] [stderr] --> src/internet/ip.rs:406:15 [INFO] [stderr] | [INFO] [stderr] 406 | (((reader.read_u8()? as i64) + 1)*8) - 2 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(reader.read_u8()?)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/internet/ip.rs:472:13 [INFO] [stderr] | [INFO] [stderr] 472 | buffer[1] = buffer[1] | (self.traffic_class << 4); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `buffer[1] |= (self.traffic_class << 4)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/transport/udp.rs:62:50 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn calc_checksum_ipv4_raw(&self, source: &[u8;4], destination: &[u8;4], protocol: u8, payload: &[u8]) -> Result { [INFO] [stderr] | ^^^^^^^ help: consider passing by value instead: `[u8;4]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/transport/udp.rs:62:72 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn calc_checksum_ipv4_raw(&self, source: &[u8;4], destination: &[u8;4], protocol: u8, payload: &[u8]) -> Result { [INFO] [stderr] | ^^^^^^^ help: consider passing by value instead: `[u8;4]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/transport/udp.rs:73:51 [INFO] [stderr] | [INFO] [stderr] 73 | fn calc_checksum_ipv4_internal(&self, source: &[u8;4], destination: &[u8;4], protocol: u8, payload: &[u8]) -> u16 { [INFO] [stderr] | ^^^^^^^ help: consider passing by value instead: `[u8;4]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/transport/udp.rs:73:73 [INFO] [stderr] | [INFO] [stderr] 73 | fn calc_checksum_ipv4_internal(&self, source: &[u8;4], destination: &[u8;4], protocol: u8, payload: &[u8]) -> u16 { [INFO] [stderr] | ^^^^^^^ help: consider passing by value instead: `[u8;4]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:74:36 [INFO] [stderr] | [INFO] [stderr] 74 | self.calc_checksum_post_ip(BigEndian::read_u16(&source[0..2]) as u64 + //pseudo header [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&source[0..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:75:36 [INFO] [stderr] | [INFO] [stderr] 75 | BigEndian::read_u16(&source[2..4]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&source[2..4]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:76:36 [INFO] [stderr] | [INFO] [stderr] 76 | BigEndian::read_u16(&destination[0..2]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&destination[0..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:77:36 [INFO] [stderr] | [INFO] [stderr] 77 | BigEndian::read_u16(&destination[2..4]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&destination[2..4]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:78:36 [INFO] [stderr] | [INFO] [stderr] 78 | protocol as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u64::from(protocol)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:79:36 [INFO] [stderr] | [INFO] [stderr] 79 | self.length as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.length)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:123:27 [INFO] [stderr] | [INFO] [stderr] 123 | result += BigEndian::read_u16(&value[index..(index + 2)]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&value[index..(index + 2)]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:130:36 [INFO] [stderr] | [INFO] [stderr] 130 | self.length as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.length)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:137:23 [INFO] [stderr] | [INFO] [stderr] 137 | self.source_port as u64 + //udp header start [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.source_port)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:138:23 [INFO] [stderr] | [INFO] [stderr] 138 | self.destination_port as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.destination_port)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:139:23 [INFO] [stderr] | [INFO] [stderr] 139 | self.length as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.length)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:142:20 [INFO] [stderr] | [INFO] [stderr] 142 | sum += BigEndian::read_u16(&payload[i*2..i*2 + 2]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&payload[i*2..i*2 + 2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/udp.rs:146:20 [INFO] [stderr] | [INFO] [stderr] 146 | sum += BigEndian::read_u16(&[*payload.last().unwrap(), 0]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&[*payload.last().unwrap(), 0]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:115:9 [INFO] [stderr] | [INFO] [stderr] 115 | self._data_offset as u16 * 4 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self._data_offset)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/transport/tcp.rs:126:5 [INFO] [stderr] | [INFO] [stderr] 126 | / pub fn options<'a>(&'a self) -> &'a[u8] { [INFO] [stderr] 127 | | &self.options_buffer[..self.options_len()] [INFO] [stderr] 128 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/transport/tcp.rs:270:5 [INFO] [stderr] | [INFO] [stderr] 270 | / pub fn options_iterator<'a>(&'a self) -> TcpOptionsIterator<'a> { [INFO] [stderr] 271 | | TcpOptionsIterator { [INFO] [stderr] 272 | | options: &self.options_buffer[..self.options_len()] [INFO] [stderr] 273 | | } [INFO] [stderr] 274 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:344:17 [INFO] [stderr] | [INFO] [stderr] 344 | value = value | 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:347:17 [INFO] [stderr] | [INFO] [stderr] 347 | value = value | 2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:350:17 [INFO] [stderr] | [INFO] [stderr] 350 | value = value | 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 4` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:353:17 [INFO] [stderr] | [INFO] [stderr] 353 | value = value | 8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 8` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:356:17 [INFO] [stderr] | [INFO] [stderr] 356 | value = value | 16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 16` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:359:17 [INFO] [stderr] | [INFO] [stderr] 359 | value = value | 32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 32` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:362:17 [INFO] [stderr] | [INFO] [stderr] 362 | value = value | 64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 64` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:365:17 [INFO] [stderr] | [INFO] [stderr] 365 | value = value | 128; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 128` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/transport/tcp.rs:387:53 [INFO] [stderr] | [INFO] [stderr] 387 | pub fn calc_checksum_ipv4_raw(&self, source_ip: &[u8;4], destination_ip: &[u8;4], payload: &[u8]) -> Result { [INFO] [stderr] | ^^^^^^^ help: consider passing by value instead: `[u8;4]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/transport/tcp.rs:387:78 [INFO] [stderr] | [INFO] [stderr] 387 | pub fn calc_checksum_ipv4_raw(&self, source_ip: &[u8;4], destination_ip: &[u8;4], payload: &[u8]) -> Result { [INFO] [stderr] | ^^^^^^^ help: consider passing by value instead: `[u8;4]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:396:39 [INFO] [stderr] | [INFO] [stderr] 396 | Ok(self.calc_checksum_post_ip(BigEndian::read_u16(&source_ip[0..2]) as u64 + //pseudo header [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&source_ip[0..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:397:39 [INFO] [stderr] | [INFO] [stderr] 397 | BigEndian::read_u16(&source_ip[2..4]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&source_ip[2..4]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:398:39 [INFO] [stderr] | [INFO] [stderr] 398 | BigEndian::read_u16(&destination_ip[0..2]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&destination_ip[0..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:399:39 [INFO] [stderr] | [INFO] [stderr] 399 | BigEndian::read_u16(&destination_ip[2..4]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&destination_ip[2..4]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:423:27 [INFO] [stderr] | [INFO] [stderr] 423 | result += BigEndian::read_u16(&value[index..(index + 2)]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&value[index..(index + 2)]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:434:17 [INFO] [stderr] | [INFO] [stderr] 434 | BigEndian::read_u16(&buffer[0..2]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&buffer[0..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:435:17 [INFO] [stderr] | [INFO] [stderr] 435 | BigEndian::read_u16(&buffer[2..4]) as u64 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&buffer[2..4]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:445:13 [INFO] [stderr] | [INFO] [stderr] 445 | (BigEndian::read_u16(&buffer[..2]) as u64) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&buffer[..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:446:13 [INFO] [stderr] | [INFO] [stderr] 446 | (BigEndian::read_u16(&buffer[2..]) as u64) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&buffer[2..]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:450:13 [INFO] [stderr] | [INFO] [stderr] 450 | self.source_port as u64 + //udp header start [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.source_port)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:451:13 [INFO] [stderr] | [INFO] [stderr] 451 | self.destination_port as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.destination_port)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:454:13 [INFO] [stderr] | [INFO] [stderr] 454 | / BigEndian::read_u16(&[ [INFO] [stderr] 455 | | { [INFO] [stderr] 456 | | let value = (self._data_offset << 4) & 0xF0; [INFO] [stderr] 457 | | if self.ns { [INFO] [stderr] ... | [INFO] [stderr] 490 | | } [INFO] [stderr] 491 | | ]) as u64 + [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 454 | u64::from(BigEndian::read_u16(&[ [INFO] [stderr] 455 | { [INFO] [stderr] 456 | let value = (self._data_offset << 4) & 0xF0; [INFO] [stderr] 457 | if self.ns { [INFO] [stderr] 458 | value | 1 [INFO] [stderr] 459 | } else { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:466:25 [INFO] [stderr] | [INFO] [stderr] 466 | value = value | 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:469:25 [INFO] [stderr] | [INFO] [stderr] 469 | value = value | 2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:472:25 [INFO] [stderr] | [INFO] [stderr] 472 | value = value | 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 4` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:475:25 [INFO] [stderr] | [INFO] [stderr] 475 | value = value | 8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 8` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:478:25 [INFO] [stderr] | [INFO] [stderr] 478 | value = value | 16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 16` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:481:25 [INFO] [stderr] | [INFO] [stderr] 481 | value = value | 32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 32` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:484:25 [INFO] [stderr] | [INFO] [stderr] 484 | value = value | 64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 64` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/transport/tcp.rs:487:25 [INFO] [stderr] | [INFO] [stderr] 487 | value = value | 128; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: replace it with: `value |= 128` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:492:13 [INFO] [stderr] | [INFO] [stderr] 492 | self.window_size as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.window_size)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:493:13 [INFO] [stderr] | [INFO] [stderr] 493 | self.urgent_pointer as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.urgent_pointer)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:498:20 [INFO] [stderr] | [INFO] [stderr] 498 | sum += BigEndian::read_u16(&self.options_buffer[i..i + 2]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&self.options_buffer[i..i + 2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:503:20 [INFO] [stderr] | [INFO] [stderr] 503 | sum += BigEndian::read_u16(&payload[i..i + 2]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&payload[i..i + 2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:507:20 [INFO] [stderr] | [INFO] [stderr] 507 | sum += BigEndian::read_u16(&[*payload.last().unwrap(), 0]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&[*payload.last().unwrap(), 0]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/transport/tcp.rs:743:5 [INFO] [stderr] | [INFO] [stderr] 743 | / pub fn options_iterator<'b>(&'b self) -> TcpOptionsIterator<'b> { [INFO] [stderr] 744 | | TcpOptionsIterator { [INFO] [stderr] 745 | | options: self.options() [INFO] [stderr] 746 | | } [INFO] [stderr] 747 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/transport/tcp.rs:772:20 [INFO] [stderr] | [INFO] [stderr] 772 | if options.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!options.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:796:39 [INFO] [stderr] | [INFO] [stderr] 796 | Ok(self.calc_checksum_post_ip(BigEndian::read_u16(&source_ip[0..2]) as u64 + //pseudo header [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&source_ip[0..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:797:39 [INFO] [stderr] | [INFO] [stderr] 797 | BigEndian::read_u16(&source_ip[2..4]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&source_ip[2..4]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:798:39 [INFO] [stderr] | [INFO] [stderr] 798 | BigEndian::read_u16(&destination_ip[0..2]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&destination_ip[0..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:799:39 [INFO] [stderr] | [INFO] [stderr] 799 | BigEndian::read_u16(&destination_ip[2..4]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&destination_ip[2..4]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:823:27 [INFO] [stderr] | [INFO] [stderr] 823 | result += BigEndian::read_u16(&value[index..(index + 2)]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&value[index..(index + 2)]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:834:17 [INFO] [stderr] | [INFO] [stderr] 834 | BigEndian::read_u16(&buffer[0..2]) as u64 + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&buffer[0..2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:835:17 [INFO] [stderr] | [INFO] [stderr] 835 | BigEndian::read_u16(&buffer[2..4]) as u64 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&buffer[2..4]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:847:20 [INFO] [stderr] | [INFO] [stderr] 847 | sum += BigEndian::read_u16(&self.slice[i..i + 2]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&self.slice[i..i + 2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:851:20 [INFO] [stderr] | [INFO] [stderr] 851 | sum += BigEndian::read_u16(&self.slice[i..i + 2]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&self.slice[i..i + 2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:855:20 [INFO] [stderr] | [INFO] [stderr] 855 | sum += BigEndian::read_u16(&payload[i..i + 2]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&payload[i..i + 2]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/transport/tcp.rs:859:20 [INFO] [stderr] | [INFO] [stderr] 859 | sum += BigEndian::read_u16(&[*payload.last().unwrap(), 0]) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BigEndian::read_u16(&[*payload.last().unwrap(), 0]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/transport/tcp.rs:943:12 [INFO] [stderr] | [INFO] [stderr] 943 | if self.options.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.options.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `acks` [INFO] [stderr] --> src/transport/tcp.rs:1005:38 [INFO] [stderr] | [INFO] [stderr] 1005 | for i in 0usize..3 { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 1005 | for (i, ) in acks.iter_mut().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/transport/mod.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | / pub fn mut_udp<'a>(&'a mut self) -> Option<&'a mut udp::UdpHeader> { [INFO] [stderr] 28 | | use TransportHeader::*; [INFO] [stderr] 29 | | match self { [INFO] [stderr] 30 | | Udp(ref mut value) => Some(value), [INFO] [stderr] 31 | | Tcp(_) => None [INFO] [stderr] 32 | | } [INFO] [stderr] 33 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/transport/mod.rs:47:5 [INFO] [stderr] | [INFO] [stderr] 47 | / pub fn mut_tcp<'a>(&'a mut self) -> Option<&'a mut tcp::TcpHeader> { [INFO] [stderr] 48 | | use TransportHeader::*; [INFO] [stderr] 49 | | match self { [INFO] [stderr] 50 | | Udp(_) => None, [INFO] [stderr] 51 | | Tcp(ref mut value) => Some(value) [INFO] [stderr] 52 | | } [INFO] [stderr] 53 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: passing a unit value to a function [INFO] [stderr] --> src/transport/mod.rs:115:33 [INFO] [stderr] | [INFO] [stderr] 115 | Ok(value) => Ok(value), [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unit_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unit_arg [INFO] [stderr] help: if you intended to pass a unit value, use a unit literal instead [INFO] [stderr] | [INFO] [stderr] 115 | Ok(value) => Ok(()), [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/packet_builder.rs:428:5 [INFO] [stderr] | [INFO] [stderr] 428 | / match builder.state.ethernet2_header { [INFO] [stderr] 429 | | Some(mut eth) => { [INFO] [stderr] 430 | | eth.ether_type = { [INFO] [stderr] 431 | | [INFO] [stderr] ... | [INFO] [stderr] 443 | | None => {} [INFO] [stderr] 444 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 428 | if let Some(mut eth) = builder.state.ethernet2_header { [INFO] [stderr] 429 | eth.ether_type = { [INFO] [stderr] 430 | [INFO] [stderr] 431 | use VlanHeader::*; [INFO] [stderr] 432 | //determine the ether type depending on if there is a vlan tagging header [INFO] [stderr] 433 | match builder.state.vlan_header { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/packet_decoder.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | / pub fn from_ethernet_slice<'b>(packet: &'b [u8]) -> Result, ReadError> { [INFO] [stderr] 17 | | [INFO] [stderr] 18 | | use std::io::Cursor; [INFO] [stderr] 19 | | let mut cursor = Cursor::new(&packet); [INFO] [stderr] ... | [INFO] [stderr] 105 | | Ok(result) [INFO] [stderr] 106 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `ip_extensions`. [INFO] [stderr] --> src/packet_slicing.rs:135:26 [INFO] [stderr] | [INFO] [stderr] 135 | for i in 0..IPV6_MAX_NUM_HEADER_EXTENSIONS { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 135 | for in ip_extensions.iter_mut().take(IPV6_MAX_NUM_HEADER_EXTENSIONS) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> tests/internet/ip.rs:651:25 [INFO] [stderr] | [INFO] [stderr] 651 | flow_label: 0x201806, [INFO] [stderr] | ^^^^^^^^ help: consider: `0x0020_1806` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> tests/internet/ip.rs:670:32 [INFO] [stderr] | [INFO] [stderr] 670 | value.flow_label = 0x100000; [INFO] [stderr] | ^^^^^^^^ help: consider: `0x0010_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> tests/internet/ip.rs:673:43 [INFO] [stderr] | [INFO] [stderr] 673 | Err(ValueError(U32TooLarge{value: 0x100000, max: 0xFFFFF, field: Ipv6FlowLabel}))); [INFO] [stderr] | ^^^^^^^^ help: consider: `0x0010_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> tests/transport/tcp.rs:225:39 [INFO] [stderr] | [INFO] [stderr] 225 | Timestamp(2661445915, 0), // 10 [INFO] [stderr] | ^^^^^^^^^^ help: consider: `2_661_445_915` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> tests/transport/tcp.rs:429:13 [INFO] [stderr] | [INFO] [stderr] 429 | 0x24900448, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x2490_0448` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> tests/transport/tcp.rs:445:23 [INFO] [stderr] | [INFO] [stderr] 445 | Timestamp(0x4161008, 0x84161708) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0416_1008` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> tests/transport/tcp.rs:445:34 [INFO] [stderr] | [INFO] [stderr] 445 | Timestamp(0x4161008, 0x84161708) [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x8416_1708` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> tests/transport/tcp.rs:487:13 [INFO] [stderr] | [INFO] [stderr] 487 | 0x24900448, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x2490_0448` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> tests/transport/tcp.rs:503:23 [INFO] [stderr] | [INFO] [stderr] 503 | Timestamp(0x4161008, 0x84161708) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0416_1008` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> tests/transport/tcp.rs:503:34 [INFO] [stderr] | [INFO] [stderr] 503 | Timestamp(0x4161008, 0x84161708) [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x8416_1708` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> tests/transport/tcp.rs:547:9 [INFO] [stderr] | [INFO] [stderr] 547 | 0x24900448, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x2490_0448` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> tests/transport/tcp.rs:565:19 [INFO] [stderr] | [INFO] [stderr] 565 | Timestamp(0x4161008, 0x84161708) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0416_1008` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> tests/transport/tcp.rs:565:30 [INFO] [stderr] | [INFO] [stderr] 565 | Timestamp(0x4161008, 0x84161708) [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x8416_1708` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> tests/internet/ip.rs:306:9 [INFO] [stderr] | [INFO] [stderr] 306 | buffer.write(&input.1).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::unused_io_amount)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: useless use of `vec!` [INFO] [stderr] --> tests/internet/ip.rs:463:52 [INFO] [stderr] | [INFO] [stderr] 463 | let result = base().write_raw(&mut buffer, &vec![0;44]); [INFO] [stderr] | ^^^^^^^^^^^ help: you can use a slice directly: `&[0; 44]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_vec)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> tests/internet/ip.rs:754:23 [INFO] [stderr] | [INFO] [stderr] 754 | for i_as16 in 0..((u8::max_value() as u16) + 1) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `0..=(u8::max_value() as u16)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::range_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> tests/internet/ip.rs:754:27 [INFO] [stderr] | [INFO] [stderr] 754 | for i_as16 in 0..((u8::max_value() as u16) + 1) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(u8::max_value())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: slow zero-filling initialization [INFO] [stderr] --> tests/transport/udp.rs:302:9 [INFO] [stderr] | [INFO] [stderr] 301 | let mut payload = Vec::with_capacity(MAX); [INFO] [stderr] | ----------------------- help: consider replace allocation with: `vec![0; MAX]` [INFO] [stderr] 302 | payload.resize(MAX, 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::slow_vector_initialization)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#slow_vector_initialization [INFO] [stderr] [INFO] [stderr] warning: slow zero-filling initialization [INFO] [stderr] --> tests/transport/udp.rs:321:9 [INFO] [stderr] | [INFO] [stderr] 320 | let mut payload = Vec::with_capacity(OVER_MAX); [INFO] [stderr] | ---------------------------- help: consider replace allocation with: `vec![0; OVER_MAX]` [INFO] [stderr] 321 | payload.resize(OVER_MAX, 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#slow_vector_initialization [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> tests/transport/tcp.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 34 | options_length = options_length * 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `options_length *= 4` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: slow zero-filling initialization [INFO] [stderr] --> tests/transport/tcp.rs:602:5 [INFO] [stderr] | [INFO] [stderr] 601 | let mut tcp_payload = Vec::with_capacity(len); [INFO] [stderr] | ----------------------- help: consider replace allocation with: `vec![0; len]` [INFO] [stderr] 602 | tcp_payload.resize(len, 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#slow_vector_initialization [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> tests/transport/tcp.rs:626:32 [INFO] [stderr] | [INFO] [stderr] 626 | let len = (std::u32::MAX - tcp.header_len() as u32) as usize + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(tcp.header_len())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: `0 as *const _` detected. Consider using `ptr::null()` [INFO] [stderr] --> tests/transport/tcp.rs:631:15 [INFO] [stderr] | [INFO] [stderr] 631 | let ptr = 0x0 as *const u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::zero_ptr)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#zero_ptr [INFO] [stderr] [INFO] [stderr] warning: `0 as *const _` detected. Consider using `ptr::null()` [INFO] [stderr] --> tests/transport/mod.rs:66:43 [INFO] [stderr] | [INFO] [stderr] 66 | slice::from_raw_parts(0x0 as *const u8, len) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#zero_ptr [INFO] [stderr] [INFO] [stderr] warning: `0 as *const _` detected. Consider using `ptr::null()` [INFO] [stderr] --> tests/transport/mod.rs:90:43 [INFO] [stderr] | [INFO] [stderr] 90 | slice::from_raw_parts(0x0 as *const u8, len) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#zero_ptr [INFO] [stderr] [INFO] [stderr] warning: `0 as *const _` detected. Consider using `ptr::null()` [INFO] [stderr] --> tests/transport/mod.rs:115:43 [INFO] [stderr] | [INFO] [stderr] 115 | slice::from_raw_parts(0x0 as *const u8, len) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#zero_ptr [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> tests/transport/mod.rs:138:44 [INFO] [stderr] | [INFO] [stderr] 138 | let len = (std::u32::MAX - tcp_header.header_len() as u32) as usize + 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(tcp_header.header_len())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: `0 as *const _` detected. Consider using `ptr::null()` [INFO] [stderr] --> tests/transport/mod.rs:140:43 [INFO] [stderr] | [INFO] [stderr] 140 | slice::from_raw_parts(0x0 as *const u8, len) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#zero_ptr [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> tests/proptest_generators/mod.rs:19:1 [INFO] [stderr] | [INFO] [stderr] 19 | / prop_compose! { [INFO] [stderr] 20 | | [pub] fn ethernet_2_any() [INFO] [stderr] 21 | | (ether_type in any::()) [INFO] [stderr] 22 | | (result in ethernet_2_with(ether_type)) [INFO] [stderr] ... | [INFO] [stderr] 26 | | } [INFO] [stderr] 27 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> tests/proptest_generators/mod.rs:107:1 [INFO] [stderr] | [INFO] [stderr] 107 | / prop_compose! { [INFO] [stderr] 108 | | [pub] fn ipv4_any() [INFO] [stderr] 109 | | (protocol in any::()) [INFO] [stderr] 110 | | (result in ipv4_with(protocol)) [INFO] [stderr] ... | [INFO] [stderr] 114 | | } [INFO] [stderr] 115 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> tests/proptest_generators/mod.rs:183:1 [INFO] [stderr] | [INFO] [stderr] 183 | / prop_compose! { [INFO] [stderr] 184 | | [pub] fn ipv6_any() [INFO] [stderr] 185 | | (next_header in any::()) [INFO] [stderr] 186 | | (result in ipv6_with(next_header)) [INFO] [stderr] ... | [INFO] [stderr] 190 | | } [INFO] [stderr] 191 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> tests/proptest_generators/mod.rs:323:39 [INFO] [stderr] | [INFO] [stderr] 323 | [pub] fn tcp_any()(data_offset in TCP_MINIMUM_DATA_OFFSET..(TCP_MAXIMUM_DATA_OFFSET + 1)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `TCP_MINIMUM_DATA_OFFSET..=TCP_MAXIMUM_DATA_OFFSET` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stderr] --> tests/packet_compositions/mod.rs:44:21 [INFO] [stderr] | [INFO] [stderr] 44 | for ref ext in exts { [INFO] [stderr] | ^^^^^^^ ---- help: try: `let ext = &exts;` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::toplevel_ref_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> tests/packet_compositions/mod.rs:45:21 [INFO] [stderr] | [INFO] [stderr] 45 | buffer.write(&ext.1).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> tests/packet_compositions/mod.rs:56:9 [INFO] [stderr] | [INFO] [stderr] 56 | buffer.write(&self.payload[..]).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> tests/packet_compositions/mod.rs:145:45 [INFO] [stderr] | [INFO] [stderr] 145 | fn assert_decoded_packet(&self, buffer: &Vec) { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> tests/packet_compositions/mod.rs:204:51 [INFO] [stderr] | [INFO] [stderr] 204 | fn run_ipv6(&self, ip: &Ipv6Header, ipv6_ext: &Vec<(u8, Vec)>, udp: &UdpHeader, tcp: &TcpHeader) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] help: change this to [INFO] [stderr] | [INFO] [stderr] 204 | fn run_ipv6(&self, ip: &Ipv6Header, ipv6_ext: &[(u8, Vec)], udp: &UdpHeader, tcp: &TcpHeader) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] help: change `ipv6_ext.clone()` to [INFO] [stderr] | [INFO] [stderr] 250 | let mut exts = ipv6_ext.to_owned(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> tests/packet_compositions/mod.rs:210:36 [INFO] [stderr] | [INFO] [stderr] 210 | v.next_header = if exts.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!exts.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> tests/packet_compositions/mod.rs:220:20 [INFO] [stderr] | [INFO] [stderr] 220 | if ext_result.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!ext_result.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> tests/packet_compositions/mod.rs:253:16 [INFO] [stderr] | [INFO] [stderr] 253 | if exts.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!exts.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> tests/packet_compositions/mod.rs:273:27 [INFO] [stderr] | [INFO] [stderr] 273 | ipv6_ext: &Vec<(u8, Vec)>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: change this to: `&[(u8, Vec)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (8/7) [INFO] [stderr] --> tests/packet_compositions/mod.rs:268:5 [INFO] [stderr] | [INFO] [stderr] 268 | / fn run_vlan(&self, [INFO] [stderr] 269 | | outer_vlan: &SingleVlanHeader, [INFO] [stderr] 270 | | inner_vlan: &SingleVlanHeader, [INFO] [stderr] 271 | | ipv4: &(Ipv4Header, Vec), [INFO] [stderr] ... | [INFO] [stderr] 312 | | } [INFO] [stderr] 313 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::too_many_arguments)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] error: aborting due to 3 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `etherparse`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "94322bab846d8fc8ac34101d19a6230ea4a150ba876f63337c18dc421e7a8628"` [INFO] running `"docker" "rm" "-f" "94322bab846d8fc8ac34101d19a6230ea4a150ba876f63337c18dc421e7a8628"` [INFO] [stdout] 94322bab846d8fc8ac34101d19a6230ea4a150ba876f63337c18dc421e7a8628