1 // Copyright 2023, The Android Open Source Project 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 //! GBL build wrapper for the Android boot image library: 16 //! https://cs.android.com/android/platform/superproject/main/+/main:system/tools/mkbootimg/rust/. 17 18 #![cfg_attr(not(test), no_std)] 19 20 #[rustfmt::skip] 21 mod bootimg; 22 pub use bootimg::*; 23 pub use bootimg_bindgen as defs; 24 25 use liberror::Error; 26 27 impl From<ImageError> for Error { from(err: ImageError) -> Error28 fn from(err: ImageError) -> Error { 29 match err { 30 ImageError::BufferTooSmall => Error::BufferTooSmall(None), 31 ImageError::BadMagic => Error::BadMagic, 32 ImageError::UnexpectedVersion => Error::UnsupportedVersion, 33 _ => Error::Other(None), 34 } 35 } 36 } 37