1 /**************************************************************************/ 2 /* */ 3 /* Copyright (c) Microsoft Corporation. All rights reserved. */ 4 /* */ 5 /* This software is licensed under the Microsoft Software License */ 6 /* Terms for Microsoft Azure RTOS. Full text of the license can be */ 7 /* found in the LICENSE file at https://aka.ms/AzureRTOS_EULA */ 8 /* and in the root directory of this software. */ 9 /* */ 10 /**************************************************************************/ 11 12 13 /**************************************************************************/ 14 /**************************************************************************/ 15 /** */ 16 /** NetX Component */ 17 /** */ 18 /** Internet Control Message Protocol (ICMP) */ 19 /** */ 20 /**************************************************************************/ 21 /**************************************************************************/ 22 23 24 /**************************************************************************/ 25 /* */ 26 /* COMPONENT DEFINITION RELEASE */ 27 /* */ 28 /* nx_icmp.h PORTABLE C */ 29 /* 6.1.9 */ 30 /* AUTHOR */ 31 /* */ 32 /* Yuxin Zhou, Microsoft Corporation */ 33 /* */ 34 /* DESCRIPTION */ 35 /* */ 36 /* This file defines the NetX Internet Control Message Protocol (ICMP) */ 37 /* component, including all data types and external references. It is */ 38 /* assumed that nx_api.h and nx_port.h have already been included. */ 39 /* */ 40 /* RELEASE HISTORY */ 41 /* */ 42 /* DATE NAME DESCRIPTION */ 43 /* */ 44 /* 05-19-2020 Yuxin Zhou Initial Version 6.0 */ 45 /* 09-30-2020 Yuxin Zhou Modified comment(s), */ 46 /* resulting in version 6.1 */ 47 /* 10-15-2021 Yuxin Zhou Modified comment(s), included */ 48 /* necessary header file, */ 49 /* resulting in version 6.1.9 */ 50 /* */ 51 /**************************************************************************/ 52 53 #ifndef NX_ICMP_H 54 #define NX_ICMP_H 55 56 #include "nx_api.h" 57 58 VOID _nx_icmp_packet_receive(NX_IP *ip_ptr, NX_PACKET *packet_ptr); 59 VOID _nx_icmp_cleanup(TX_THREAD *thread_ptr NX_CLEANUP_PARAMETER); 60 61 UINT _nxd_icmp_ping(NX_IP *ip_ptr, NXD_ADDRESS *ip_address, 62 CHAR *data_ptr, ULONG data_size, 63 NX_PACKET **response_ptr, ULONG wait_option); 64 UINT _nxd_icmp_source_ping(NX_IP *ip_ptr, NXD_ADDRESS *ip_address, 65 UINT address_index, CHAR *data_ptr, ULONG data_size, 66 NX_PACKET **response_ptr, ULONG wait_option); 67 68 UINT _nxd_icmp_enable(NX_IP *ip_ptr); 69 70 UINT _nxde_icmp_ping(NX_IP *ip_ptr, NXD_ADDRESS *ip_address, 71 CHAR *data_ptr, ULONG data_size, 72 NX_PACKET **response_ptr, ULONG wait_option); 73 UINT _nxde_icmp_source_ping(NX_IP *ip_ptr, NXD_ADDRESS *ip_address, 74 UINT address_index, CHAR *data_ptr, ULONG data_size, 75 NX_PACKET **response_ptr, ULONG wait_option); 76 UINT _nxde_icmp_enable(NX_IP *ip_ptr); 77 78 #include "nx_icmpv4.h" 79 #include "nx_icmpv6.h" 80 81 #endif 82 83