blob: 8746550a8778e7e64cec764aedd3c0617eb64bfe [file] [log] [blame]
/* 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/. */
#ifndef TESTING_NETWORKLAYERS_H_
#define TESTING_NETWORKLAYERS_H_
#include <open62541/server_config.h>
_UA_BEGIN_DECLS
/**
* Create the TCP networklayer and listen to the specified port
*
* @param sendBufferSize The send buffer is reused. This is the max chunk size
* @param verificationBuffer the send function will copy the data that is sent
* to this buffer, so that it is possible to check what the send function
* received. */
UA_Connection createDummyConnection(size_t sendBufferSize,
UA_ByteString *verificationBuffer);
extern UA_UInt32 UA_Client_recvSleepDuration;
extern UA_StatusCode (*UA_Client_recv)(UA_Connection *connection, UA_ByteString *response,
UA_UInt32 timeout);
extern UA_StatusCode UA_Client_recvTesting_result;
/* Override the client recv method to increase the simulated clock after the first recv.
* UA_Client_recvSleepDuration is set to zero after the first recv.
* UA_Client_recvTesting_result can be used to simulate an error */
UA_StatusCode
UA_Client_recvTesting(UA_Connection *connection, UA_ByteString *response,
UA_UInt32 timeout);
_UA_END_DECLS
#endif /* TESTING_NETWORKLAYERS_H_ */