xpcrtfuzzing.h (988B)
1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- 2 * vim: set ts=8 sts=2 et sw=2 tw=80: 3 * This Source Code Form is subject to the terms of the Mozilla Public 4 * License, v. 2.0. If a copy of the MPL was not distributed with this 5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 6 7 // xpcrtfuzzing.h - Functionality for XPC runtime fuzzing 8 9 #ifndef shell_xpcrtfuzzing_h 10 #define shell_xpcrtfuzzing_h 11 12 #include "mozilla/dom/ScriptSettings.h" // mozilla::dom::AutoJSAPI 13 #include "XREShellData.h" 14 15 // This is the entry point of the XPC runtime fuzzing code from the XPC shell 16 int FuzzXPCRuntimeStart(mozilla::dom::AutoJSAPI* jsapi, int* argc, char*** argv, 17 const XREShellData*); 18 19 // These are the traditional libFuzzer-style functions for initialization 20 // and fuzzing iteration. 21 int FuzzXPCRuntimeInit(); 22 int FuzzXPCRuntimeFuzz(const uint8_t* buf, size_t size); 23 int FuzzXPCRuntimeShutdown(); 24 25 #endif /* shell_xpcrtfuzzing_h */