fuzz_target_1.rs 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #![no_main]
  2. use libfuzzer_sys::fuzz_target;
  3. extern crate aml;
  4. fuzz_target!(|data: &[u8]| {
  5. simplelog::SimpleLogger::init(simplelog::LevelFilter::Trace, simplelog::Config::default());
  6. let mut context = aml::AmlContext::new(Box::new(Handler), false, aml::DebugVerbosity::None);
  7. let _ = context.parse_table(data);
  8. });
  9. struct Handler;
  10. impl aml::Handler for Handler {
  11. fn read_u8(&self, _address: usize) -> u8 {
  12. 0
  13. }
  14. fn read_u16(&self, _address: usize) -> u16 {
  15. 0
  16. }
  17. fn read_u32(&self, _address: usize) -> u32 {
  18. 0
  19. }
  20. fn read_u64(&self, _address: usize) -> u64 {
  21. 0
  22. }
  23. fn write_u8(&mut self, _address: usize, _value: u8) {}
  24. fn write_u16(&mut self, _address: usize, _value: u16) {}
  25. fn write_u32(&mut self, _address: usize, _value: u32) {}
  26. fn write_u64(&mut self, _address: usize, _value: u64) {}
  27. fn read_io_u8(&self, _port: u16) -> u8 {
  28. 0
  29. }
  30. fn read_io_u16(&self, _port: u16) -> u16 {
  31. 0
  32. }
  33. fn read_io_u32(&self, _port: u16) -> u32 {
  34. 0
  35. }
  36. fn write_io_u8(&self, _port: u16, _value: u8) {}
  37. fn write_io_u16(&self, _port: u16, _value: u16) {}
  38. fn write_io_u32(&self, _port: u16, _value: u32) {}
  39. fn read_pci_u8(&self, _segment: u16, _bus: u8, _device: u8, _function: u8, _offset: u16) -> u8 {
  40. 0
  41. }
  42. fn read_pci_u16(&self, _segment: u16, _bus: u8, _device: u8, _function: u8, _offset: u16) -> u16 {
  43. 0
  44. }
  45. fn read_pci_u32(&self, _segment: u16, _bus: u8, _device: u8, _function: u8, _offset: u16) -> u32 {
  46. 0
  47. }
  48. fn write_pci_u8(&self, _segment: u16, _bus: u8, _device: u8, _function: u8, _offset: u16, _value: u8) {}
  49. fn write_pci_u16(&self, _segment: u16, _bus: u8, _device: u8, _function: u8, _offset: u16, _value: u16) {}
  50. fn write_pci_u32(&self, _segment: u16, _bus: u8, _device: u8, _function: u8, _offset: u16, _value: u32) {}
  51. }