| /* SPDX-License-Identifier: GPL-2.0+ */ |
| /* |
| * Copyright (c) 2020, Heinrich Schuchardt <xypron.glpk@gmx.de> |
| * |
| * Header file for logging tests |
| */ |
| |
| #ifndef __SYSLOG_TEST_H |
| #define __SYSLOG_TEST_H |
| |
| /** |
| * struct sb_log_env - private data for sandbox ethernet driver |
| * |
| * This structure is used for the private data of the sandbox ethernet |
| * driver. |
| * |
| * @expected: string expected to be written by the syslog driver |
| * @uts: unit test state |
| */ |
| struct sb_log_env { |
| const char *expected; |
| struct unit_test_state *uts; |
| }; |
| |
| /** |
| * sb_log_tx_handler() - transmit callback function |
| * |
| * This callback function is invoked when a network package is sent using the |
| * sandbox Ethernet driver. The private data of the driver holds a sb_log_env |
| * structure with the unit test state and the expected UDP payload. |
| * |
| * The following checks are executed: |
| * |
| * * the Ethernet packet indicates a IP broadcast message |
| * * the IP header is for a local UDP broadcast message to port 514 |
| * * the UDP payload matches the expected string |
| * |
| * After testing the pointer to the expected string is set to NULL to signal |
| * that the callback function has been called. |
| * |
| * @dev: sandbox ethernet device |
| * @packet: Ethernet packet |
| * @len: length of Ethernet packet |
| * Return: 0 = success |
| */ |
| int sb_log_tx_handler(struct udevice *dev, void *packet, unsigned int len); |
| |
| /** |
| * syslog_test_setup() - Enable syslog logging ready for tests |
| * |
| * @uts: Test state |
| * @return 0 if OK, -ENOENT if the syslog log driver is not found |
| */ |
| int syslog_test_setup(struct unit_test_state *uts); |
| |
| /** |
| * syslog_test_finish() - Disable syslog logging after tests |
| * |
| * @uts: Test state |
| * @return 0 if OK, -ENOENT if the syslog log driver is not found |
| */ |
| int syslog_test_finish(struct unit_test_state *uts); |
| |
| #endif |