main.swift 641 B

123456789101112131415161718192021
  1. import Foundation
  2. import FuzzCommon
  3. @_cdecl("LLVMFuzzerTestOneInput")
  4. public func FuzzTextFormat(_ start: UnsafeRawPointer, _ count: Int) -> CInt {
  5. let bytes = UnsafeRawBufferPointer(start: start, count: count)
  6. guard let str = String(data: Data(bytes), encoding: .utf8) else { return 0 }
  7. var msg: Fuzz_Testing_Message?
  8. do {
  9. msg = try Fuzz_Testing_Message(
  10. textFormatString: str,
  11. extensions: Fuzz_Testing_FuzzTesting_Extensions)
  12. } catch {
  13. // Error parsing are to be expected since not all input will be well formed.
  14. }
  15. // Test serialization for completeness.
  16. let _ = msg?.textFormatString()
  17. return 0
  18. }