12345678910111213141516171819202122232425262728293031 |
- /* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- #include "fuzz_common.h"
- /*
- ** Main entry point. The fuzzer invokes this function with each
- ** fuzzed input.
- */
- int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
- UA_Connection c = createDummyConnection();
- UA_ServerConfig config = UA_ServerConfig_standard;
- config.logger = UA_Log_Stdout;
- UA_Server *server = UA_Server_new(config);
- UA_ByteString msg;
- config.logger = UA_Log_Stdout;
- msg.length = size;
- msg.data = data;
- UA_Boolean reallocated = UA_FALSE;
- UA_StatusCode retval = UA_Connection_completeMessages(&c, &msg, &reallocated);
- if(retval == UA_STATUSCODE_GOOD && msg.length > 0)
- UA_Server_processBinaryMessage(server, &c, &msg);
- UA_Server_delete(server);
- UA_Connection_deleteMembers(&c);
- return 0;
- }
|