()
| 151 | |
| 152 | #[cfg(feature = "system")] |
| 153 | fn load_linux_kernel_config() -> io::Result<Vec<u8>> { |
| 154 | if let Ok(compressed_bytes) = fs::read("/proc/config.gz") { |
| 155 | let mut decoder = flate2::bufread::GzDecoder::new(compressed_bytes.as_slice()); |
| 156 | let mut bytes = Vec::default(); |
| 157 | decoder.read_to_end(&mut bytes)?; |
| 158 | return Ok(bytes); |
| 159 | } |
| 160 | |
| 161 | let info = rustix::system::uname(); |
| 162 | let release = info |
| 163 | .release() |
| 164 | .to_str() |
| 165 | .map_err(|_r| io::Error::from(io::ErrorKind::InvalidData))?; |
| 166 | |
| 167 | fs::read(format!("/boot/config-{}", release)) |
| 168 | } |
| 169 | |
| 170 | #[cfg(feature = "system")] |
| 171 | fn is_linux_kernel_config_item_enabled(config: &[u8], name: &str) -> io::Result<bool> { |
no test coverage detected