[INFO] crate ifaces 0.1.0 is already in cache [INFO] extracting crate ifaces 0.1.0 into work/ex/clippy-test-run/sources/stable/reg/ifaces/0.1.0 [INFO] extracting crate ifaces 0.1.0 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/ifaces/0.1.0 [INFO] validating manifest of ifaces-0.1.0 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 ifaces-0.1.0 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 ifaces-0.1.0 [INFO] finished frobbing ifaces-0.1.0 [INFO] frobbed toml for ifaces-0.1.0 written to work/ex/clippy-test-run/sources/stable/reg/ifaces/0.1.0/Cargo.toml [INFO] started frobbing ifaces-0.1.0 [INFO] finished frobbing ifaces-0.1.0 [INFO] frobbed toml for ifaces-0.1.0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/ifaces/0.1.0/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 ifaces-0.1.0 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-4/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/ifaces/0.1.0:/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] 083b9f4208c6bef7c4cb01821d15fadbbd20ff6f06366c0d46252285750c35d2 [INFO] running `"docker" "start" "-a" "083b9f4208c6bef7c4cb01821d15fadbbd20ff6f06366c0d46252285750c35d2"` [INFO] [stderr] Checking ifaces v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/interface.rs:103:9 [INFO] [stderr] | [INFO] [stderr] 103 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [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/interface.rs:104:9 [INFO] [stderr] | [INFO] [stderr] 104 | kind: kind, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [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/interface.rs:105:9 [INFO] [stderr] | [INFO] [stderr] 105 | addr: addr, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `addr` [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/interface.rs:106:9 [INFO] [stderr] | [INFO] [stderr] 106 | mask: mask, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `mask` [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/interface.rs:107:9 [INFO] [stderr] | [INFO] [stderr] 107 | hop: hop, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `hop` [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/interface.rs:103:9 [INFO] [stderr] | [INFO] [stderr] 103 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [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/interface.rs:104:9 [INFO] [stderr] | [INFO] [stderr] 104 | kind: kind, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [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/interface.rs:105:9 [INFO] [stderr] | [INFO] [stderr] 105 | addr: addr, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `addr` [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/interface.rs:106:9 [INFO] [stderr] | [INFO] [stderr] 106 | mask: mask, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `mask` [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/interface.rs:107:9 [INFO] [stderr] | [INFO] [stderr] 107 | hop: hop, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `hop` [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: variant `IFF_UP` should have a camel case name such as `IffUp` [INFO] [stderr] --> src/ffi.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | IFF_UP = 0x1, /* Interface is up. */ [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_camel_case_types)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_BROADCAST` should have a camel case name such as `IffBroadcast` [INFO] [stderr] --> src/ffi.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | IFF_BROADCAST = 0x2, /* Broadcast address valid. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_DEBUG` should have a camel case name such as `IffDebug` [INFO] [stderr] --> src/ffi.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | IFF_DEBUG = 0x4, /* Turn on debugging. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_LOOPBACK` should have a camel case name such as `IffLoopback` [INFO] [stderr] --> src/ffi.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | IFF_LOOPBACK = 0x8, /* Is a loopback net. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_POINTOPOINT` should have a camel case name such as `IffPointopoint` [INFO] [stderr] --> src/ffi.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | IFF_POINTOPOINT = 0x10, /* Interface is point-to-point link. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_NOTRAILERS` should have a camel case name such as `IffNotrailers` [INFO] [stderr] --> src/ffi.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | IFF_NOTRAILERS = 0x20, /* Avoid use of trailers. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_RUNNING` should have a camel case name such as `IffRunning` [INFO] [stderr] --> src/ffi.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | IFF_RUNNING = 0x40, /* Resources allocated. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_NOARP` should have a camel case name such as `IffNoarp` [INFO] [stderr] --> src/ffi.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | IFF_NOARP = 0x80, /* No address resolution protocol. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_PROMISC` should have a camel case name such as `IffPromisc` [INFO] [stderr] --> src/ffi.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | IFF_PROMISC = 0x100, /* Receive all packets. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_ALLMULTI` should have a camel case name such as `IffAllmulti` [INFO] [stderr] --> src/ffi.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | IFF_ALLMULTI = 0x200, /* Receive all multicast packets. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_MASTER` should have a camel case name such as `IffMaster` [INFO] [stderr] --> src/ffi.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | IFF_MASTER = 0x400, /* Master of a load balancer. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_SLAVE` should have a camel case name such as `IffSlave` [INFO] [stderr] --> src/ffi.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | IFF_SLAVE = 0x800, /* Slave of a load balancer. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_MULTICAST` should have a camel case name such as `IffMulticast` [INFO] [stderr] --> src/ffi.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | IFF_MULTICAST = 0x1000, /* Supports multicast. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_PORTSEL` should have a camel case name such as `IffPortsel` [INFO] [stderr] --> src/ffi.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | IFF_PORTSEL = 0x2000, /* Can set media type. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_AUTOMEDIA` should have a camel case name such as `IffAutomedia` [INFO] [stderr] --> src/ffi.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | IFF_AUTOMEDIA = 0x4000, /* Auto media select active. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_DYNAMIC` should have a camel case name such as `IffDynamic` [INFO] [stderr] --> src/ffi.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | IFF_DYNAMIC = 0x8000 /* Dialup device with changing addresses. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: Comparing with null is better expressed by the .is_null() method [INFO] [stderr] --> src/ffi.rs:66:8 [INFO] [stderr] | [INFO] [stderr] 66 | if sa == ptr::null_mut() { return None; } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cmp_null)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_null [INFO] [stderr] [INFO] [stderr] warning: casting u16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/ffi.rs:68:11 [INFO] [stderr] | [INFO] [stderr] 68 | match unsafe { *sa }.sa_family as i32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(unsafe { *sa }.sa_family)` [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: transmute from a pointer to a pointer [INFO] [stderr] --> src/ffi.rs:70:59 [INFO] [stderr] | [INFO] [stderr] 70 | let sa: *const socket::sockaddr_in = unsafe { mem::transmute(sa) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `sa as *const libc::sockaddr_in` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::transmute_ptr_to_ptr)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer to a pointer [INFO] [stderr] --> src/ffi.rs:83:60 [INFO] [stderr] | [INFO] [stderr] 83 | let sa: *const socket::sockaddr_in6 = unsafe { mem::transmute(sa) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `sa as *const libc::sockaddr_in6` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: Comparing with null is better expressed by the .is_null() method [INFO] [stderr] --> src/interface.rs:51:15 [INFO] [stderr] | [INFO] [stderr] 51 | while cur != ptr::null_mut() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_null [INFO] [stderr] [INFO] [stderr] warning: Comparing with null is better expressed by the .is_null() method [INFO] [stderr] --> src/interface.rs:75:19 [INFO] [stderr] | [INFO] [stderr] 75 | let kind = if ifa.ifa_addr != ptr::null_mut() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_null [INFO] [stderr] [INFO] [stderr] warning: casting u16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/interface.rs:76:15 [INFO] [stderr] | [INFO] [stderr] 76 | match unsafe { *ifa.ifa_addr }.sa_family as i32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(unsafe { *ifa.ifa_addr }.sa_family)` [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: variant `IFF_UP` should have a camel case name such as `IffUp` [INFO] [stderr] --> src/ffi.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | IFF_UP = 0x1, /* Interface is up. */ [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_camel_case_types)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_BROADCAST` should have a camel case name such as `IffBroadcast` [INFO] [stderr] --> src/ffi.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | IFF_BROADCAST = 0x2, /* Broadcast address valid. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_DEBUG` should have a camel case name such as `IffDebug` [INFO] [stderr] --> src/ffi.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | IFF_DEBUG = 0x4, /* Turn on debugging. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_LOOPBACK` should have a camel case name such as `IffLoopback` [INFO] [stderr] --> src/ffi.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | IFF_LOOPBACK = 0x8, /* Is a loopback net. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_POINTOPOINT` should have a camel case name such as `IffPointopoint` [INFO] [stderr] --> src/ffi.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | IFF_POINTOPOINT = 0x10, /* Interface is point-to-point link. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_NOTRAILERS` should have a camel case name such as `IffNotrailers` [INFO] [stderr] --> src/ffi.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | IFF_NOTRAILERS = 0x20, /* Avoid use of trailers. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_RUNNING` should have a camel case name such as `IffRunning` [INFO] [stderr] --> src/ffi.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | IFF_RUNNING = 0x40, /* Resources allocated. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_NOARP` should have a camel case name such as `IffNoarp` [INFO] [stderr] --> src/ffi.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | IFF_NOARP = 0x80, /* No address resolution protocol. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_PROMISC` should have a camel case name such as `IffPromisc` [INFO] [stderr] --> src/ffi.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | IFF_PROMISC = 0x100, /* Receive all packets. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_ALLMULTI` should have a camel case name such as `IffAllmulti` [INFO] [stderr] --> src/ffi.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | IFF_ALLMULTI = 0x200, /* Receive all multicast packets. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_MASTER` should have a camel case name such as `IffMaster` [INFO] [stderr] --> src/ffi.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | IFF_MASTER = 0x400, /* Master of a load balancer. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_SLAVE` should have a camel case name such as `IffSlave` [INFO] [stderr] --> src/ffi.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | IFF_SLAVE = 0x800, /* Slave of a load balancer. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_MULTICAST` should have a camel case name such as `IffMulticast` [INFO] [stderr] --> src/ffi.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | IFF_MULTICAST = 0x1000, /* Supports multicast. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_PORTSEL` should have a camel case name such as `IffPortsel` [INFO] [stderr] --> src/ffi.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | IFF_PORTSEL = 0x2000, /* Can set media type. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_AUTOMEDIA` should have a camel case name such as `IffAutomedia` [INFO] [stderr] --> src/ffi.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | IFF_AUTOMEDIA = 0x4000, /* Auto media select active. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IFF_DYNAMIC` should have a camel case name such as `IffDynamic` [INFO] [stderr] --> src/ffi.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | IFF_DYNAMIC = 0x8000 /* Dialup device with changing addresses. */ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: Comparing with null is better expressed by the .is_null() method [INFO] [stderr] --> src/ffi.rs:66:8 [INFO] [stderr] | [INFO] [stderr] 66 | if sa == ptr::null_mut() { return None; } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cmp_null)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_null [INFO] [stderr] [INFO] [stderr] warning: casting u16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/ffi.rs:68:11 [INFO] [stderr] | [INFO] [stderr] 68 | match unsafe { *sa }.sa_family as i32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(unsafe { *sa }.sa_family)` [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: transmute from a pointer to a pointer [INFO] [stderr] --> src/ffi.rs:70:59 [INFO] [stderr] | [INFO] [stderr] 70 | let sa: *const socket::sockaddr_in = unsafe { mem::transmute(sa) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `sa as *const libc::sockaddr_in` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::transmute_ptr_to_ptr)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer to a pointer [INFO] [stderr] --> src/ffi.rs:83:60 [INFO] [stderr] | [INFO] [stderr] 83 | let sa: *const socket::sockaddr_in6 = unsafe { mem::transmute(sa) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `sa as *const libc::sockaddr_in6` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: Comparing with null is better expressed by the .is_null() method [INFO] [stderr] --> src/interface.rs:51:15 [INFO] [stderr] | [INFO] [stderr] 51 | while cur != ptr::null_mut() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_null [INFO] [stderr] [INFO] [stderr] warning: Comparing with null is better expressed by the .is_null() method [INFO] [stderr] --> src/interface.rs:75:19 [INFO] [stderr] | [INFO] [stderr] 75 | let kind = if ifa.ifa_addr != ptr::null_mut() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_null [INFO] [stderr] [INFO] [stderr] warning: casting u16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/interface.rs:76:15 [INFO] [stderr] | [INFO] [stderr] 76 | match unsafe { *ifa.ifa_addr }.sa_family as i32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(unsafe { *ifa.ifa_addr }.sa_family)` [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] Finished dev [unoptimized + debuginfo] target(s) in 2.11s [INFO] running `"docker" "inspect" "083b9f4208c6bef7c4cb01821d15fadbbd20ff6f06366c0d46252285750c35d2"` [INFO] running `"docker" "rm" "-f" "083b9f4208c6bef7c4cb01821d15fadbbd20ff6f06366c0d46252285750c35d2"` [INFO] [stdout] 083b9f4208c6bef7c4cb01821d15fadbbd20ff6f06366c0d46252285750c35d2