Fix merge conflicts in 6 files

This commit is contained in:
Tim Teebken
2024-03-13 18:24:00 -06:00
parent 328cc025b3
commit cb5c0d16d9
6 changed files with 40 additions and 66 deletions

View File

@@ -13,9 +13,9 @@ NetX Duo can be obtained from our public source code repository at <https://gith
- **nxd_dhcp_client.h**: Header file for NetX Duo DHCP
- **nxd_dhcp_client.c**: C Source file for DHCP NetX Duo
- **nxd_dhcp_client.pdf**: User Guide for NetX Duo DHCP
- **demo_netxduo_dhcp.c**: NetX Duo DHCP Client demonstration
- **demo_netxduo_multihome_dhcp_client.c**: NetX Duo DHCP Client demonstration of DHCP on multiple interfaces
- **nxd_dhcp_client.pdf**: User Guide for NetX Duo DHCP
- **demo_netxduo_dhcp.c**: NetX Duo DHCP Client demonstration
- **demo_netxduo_multihome_dhcp_client.c**: NetX Duo DHCP Client demonstration of DHCP on multiple interfaces
## DHCP Installation
@@ -37,10 +37,10 @@ While the DHCP Client is in the bound state, the DHCP Client thread processes th
The DHCP Client has API services that allow the host application to send a message to the DHCP Server. Note these services are NOT intended for the host application to manually run the DHCP Client protocol.
- *nx_dhcp_release*: this sends a RELEASE message to the Server when the host application is either leaving the network or needs relinquish its IP address.
- *nx_dhcp_decline*: this sends a DECLINE message to the Server if the host application determines independently of the DHCP Client that its IP address is already in use.
- *nx_dhcp_forcerenew*: this sends a FORCERENEW message to the Server
- *nx_dhcp_send_request*: This takes as an argument a DHCP message type, as specified in *nxd_dhcp_client.h*, and sends the message to the Server. This is intended primarily for sending the DHCP INFORM message.
- *nx_dhcp_release*: this sends a RELEASE message to the Server when the host application is either leaving the network or needs relinquish its IP address.
- *nx_dhcp_decline*: this sends a DECLINE message to the Server if the host application determines independently of the DHCP Client that its IP address is already in use.
- *nx_dhcp_forcerenew*: this sends a FORCERENEW message to the Server
- *nx_dhcp_send_request*: This takes as an argument a DHCP message type, as specified in *nxd_dhcp_client.h*, and sends the message to the Server. This is intended primarily for sending the DHCP INFORM message.
See [Description of DHCP Services](chapter3.md) for more information about these services
@@ -76,11 +76,7 @@ Note that the application can optimize the packet payload and number of packets
## Small Example System
<<<<<<< HEAD
An example of how to use NetX Duo is shown in Figure 1.1 below. The application thread entry function "*my_thread_entry*" is created at line 101. After successful creation, DHCP processing is initiated with the *nx_dhcp_start* call at line 108. At this point, the DHCP Client thread task separately attempts to contact a DHCP server. During this process, the application code waits for a valid IP address to be registered with the IP instance using the *nx_ip_status_check* service (or *nx_ip_interface_status_check* for a secondary interface) on line 95. This is more commonly done in a loop with a shorter wait option.
=======
An example of how to use NetX Duo is shown below. The application thread entry function “*my_thread_entry*” is created at line 101. After successful creation, DHCP processing is initiated with the *nx_dhcp_start* call at line 108. At this point, the DHCP Client thread task separately attempts to contact a DHCP server. During this process, the application code waits for a valid IP address to be registered with the IP instance using the *nx_ip_status_check* service (or *nx_ip_interface_status_check* for a secondary interface) on line 95. This is more commonly done in a loop with a shorter wait option.
>>>>>>> cbb4d6e18ee28d86c6b8480f0804ded7e385d395
After line 127, DHCP has received a valid IP address and the application can then proceed, utilizing NetX Duo TCP/IP services as desired.

View File

@@ -33,11 +33,7 @@ Note that the NetX Duo library can be enabled for IPv6 and still support IPv4 ne
## Small Example System of NetX Duo FTP
<<<<<<< HEAD
An example of how easy it is to use NetX Duo FTP is described in Figure 1.1 that appears below. In this example, both an FTP Server and an FTP Client are created. Therefore both FTP include files *nxd_ftp_client.h and nxd_ftp_server.h are* brought in at line 10 and 11. Next, the FTP Server is created in "*tx_application_define*" at line 99. Note that the FTP Server and Client control blocks are defined as global variables at line 26 previously.
=======
An example of how easy it is to use NetX Duo FTP is described below. In this example, both an FTP Server and an FTP Client are created. Therefore both FTP include files *nxd_ftp_client.h and nxd_ftp_server.h are* brought in at line 10 and 11. Next, the FTP Server is created in “*tx_application_define*” at line 99. Note that the FTP Server and Client control blocks are defined as global variables at line 26 previously.
>>>>>>> cbb4d6e18ee28d86c6b8480f0804ded7e385d395
This demo shows how to use the duo functions available in NetX Duo FTP as well as the legacy IPv4 limited FTP services. To use the IPv6 functions, the demo defines USE_IPV6 in line 16

View File

@@ -11,14 +11,14 @@ This chapter contains a description of various issues related to installation, s
NetX Duo can be obtained from our public source code repository at [https://github.com/eclipse-threadx/netxduo/](https://github.com/eclipse-threadx/netxduo/).
- **nxd_http_client.h** Header file for HTTP Client for NetX Duo
- **nxd_http_server.h** Header file for HTTP Server for NetX Duo
- **nxd_http_client.c** C Source file for HTTP Client for NetX Duo
- **nxd_http_server.c** C Source file for HTTP Server for NetX Duo
- **nx_md5.c** MD5 digest algorithms
- **filex_stub.h** Stub file if FileX is not present
- **nxd_http.pdf** Description of HTTP for NetX Duo
- **demo_netxduo_http.c** NetX Duo HTTP demonstration
- **nxd_http_client.h** Header file for HTTP Client for NetX Duo
- **nxd_http_server.h** Header file for HTTP Server for NetX Duo
- **nxd_http_client.c** C Source file for HTTP Client for NetX Duo
- **nxd_http_server.c** C Source file for HTTP Server for NetX Duo
- **nx_md5.c** MD5 digest algorithms
- **filex_stub.h** Stub file if FileX is not present
- **nxd_http.pdf** Description of HTTP for NetX Duo
- **demo_netxduo_http.c** NetX Duo HTTP demonstration
## HTTP Installation
@@ -34,11 +34,7 @@ Using HTTP for NetX Duo is easy. Basically, the application code must include *n
## Small Example System
<<<<<<< HEAD
An example of how easy it is to use NetX Duo HTTP is described in Figure 1.1 that appears below. This example works with the 'duo' services available in NetX Duo HTTP placement of #define USE_DUO on line 23. Otherwise it uses the legacy NetX HTTP equivalent (limited to IPv4 only). Developers are encouraged to migrate existing applications to using the NetX Duo HTTP services.
=======
An example of how easy it is to use NetX Duo HTTP is described below. This example works with the duo services available in NetX Duo HTTP placement of #define USE_DUO on line 23. Otherwise it uses the legacy NetX HTTP equivalent (limited to IPv4 only). Developers are encouraged to migrate existing applications to using the NetX Duo HTTP services.
>>>>>>> cbb4d6e18ee28d86c6b8480f0804ded7e385d395
To specify IPv6 communication, the application defines IPTYPE to IPv6 in line 24.
@@ -525,28 +521,28 @@ The HTTP Client thread's first task is create and format the FileX media (lines
There are several configuration options for building HTTP for NetX Duo. Following is a list of all options, where each is described in detail. The default values are listed, but can be redefined prior to inclusion of *nxd_http_client.h* and *nxd_http_server.h*:
- **NX_DISABLE_ERROR_CHECKING** Defined, this option removes the basic HTTP error checking. It is typically used after the application has been debugged
- **NX_HTTP_SERVER_PRIORITY** The priority of the HTTP Server thread. By default, this value is defined as 16 to specify priority 16.
- **NX_HTTP_NO_FILEX** Defined, this option provides a stub for FileX dependencies. The HTTP Client will function without any change if this option is defined. The HTTP Server will need to either be modified or the user will have to create a handful of FileX services in order to function properly.
- **NX_HTTP_TYPE_OF_SERVICE** Type of service required for the HTTP TCP requests. By default, this value is defined as NX_IP_NORMAL to indicate normal IP packet service.
- **NX_HTTP_SERVER_THREAD_TIME_SLICE** The number of timer ticks the Server thread is allowed to run before yielding to threads of the same priority. The default value is 2.
- **NX_HTTP_FRAGMENT_OPTION** Fragment enable for HTTP TCP requests. By default, this value is NX_DONT_FRAGMENT to disable HTTP TCP fragmenting.
- **NX_HTTP_SERVER_WINDOW_SIZE** Server socket window size. By default, this value is 2048 bytes
- **NX_HTTP_TIME_TO_LIVE** Specifies the number of routers this packet can pass before it is discarded. The default value is set to 0x80.
- **NX_HTTP_SERVER_TIMEOUT** Specifies the number of ThreadX ticks that internal services will suspend for. The default value is set to 10 seconds (10 * NX_IP_PERIODIC_RATE).
- **NX_HTTP_SERVER_TIMEOUT_ACCEPT** Specifies the number of ThreadX ticks that internal services will suspend for in internal *nx_tcp_server_socket_accept* calls. The default value is set to (10 * NX_IP_PERIODIC_RATE).
- **NX_HTTP_SERVER_TIMEOUT_DISCONNECT** Specifies the number of ThreadX ticks that internal services will suspend for in internal *nx_tcp_socket_disconnect* calls. The default value is set to 10 seconds (10 * NX_IP_PERIODIC_RATE).
- **NX_HTTP_SERVER_TIMEOUT_RECEIVE** Specifies the number of ThreadX ticks that internal services will suspend for in internal *nx_tcp_socket_receive* calls. The default value is set to 10 seconds (10 * NX_IP_PERIODIC_RATE).
- **NX_HTTP_SERVER_TIMEOUT_SEND** Specifies the number of ThreadX ticks that internal services will suspend for in internal *nx_tcp_socket_send* calls. The default value is set to 10 seconds (10 * NX_IP_PERIODIC_RATE).
- **NX_HTTP_MAX_HEADER_FIELD** Specifies the maximum size of the HTTP header field. The default value is 256.
- **NX_HTTP_MULTIPART_ENABLE** If defined, enables HTTP Server to support multipart HTTP requests.
- **NX_HTTP_SERVER_MAX_PENDING** Specifies the number of connections that can be queued for the HTTP Server. The default value is set to 5.
- **NX_HTTP_MAX_RESOURCE** Specifies the number of bytes allowed in a client supplied *resource name*. The default value is set to 40.
- **NX_HTTP_MAX_NAME** Specifies the number of bytes allowed in a client supplied *username*. The default value is set to 20.
- **NX_HTTP_MAX_PASSWORD** Specifies the number of bytes allowed in a client supplied *password*. The default value is set to 20.
- **NX_HTTP_SERVER_MIN_PACKET_SIZE** Specifies the minimum size of the packets in the pool specified at Server creation. The minimum size is needed to ensure the complete HTTP header can be contained in one packet. The default value is set to 600.
- **NX_HTTP_CLIENT_MIN_PACKET_SIZE** Specifies the minimum size of the packets in the pool specified at Client creation. The minimum size is needed to ensure the complete HTTP header can be contained in one packet. The default value is set to 300.
- **NX_HTTP_SERVER_RETRY_SECONDS** Set the Server socket retransmission timeout in seconds. The default value is set to 2.
- **NX_HTTP_SERVER_ RETRY_MAX** This sets the maximum number of retransmissions on Server socket. The default value is set to 10.
- **NX_HTTP_SERVER_ RETRY_SHIFT** This value is used to set the next retransmission timeout. The current timeout is multiplied by the number of retransmissions thus far, shifted by the value of the socket timeout shift. The default value is set to 1 for doubling the timeout.
- **NX_HTTP_SERVER_TRANSMIT_QUEUE_DEPTH** This specifies the maximum number of packets that can be enqueued on the Server socket retransmission queue. If the number of packets enqueued reaches this number, no more packets can be sent until one or more enqueued packets are released. The default value is set to 20.
- **NX_DISABLE_ERROR_CHECKING** Defined, this option removes the basic HTTP error checking. It is typically used after the application has been debugged
- **NX_HTTP_SERVER_PRIORITY** The priority of the HTTP Server thread. By default, this value is defined as 16 to specify priority 16.
- **NX_HTTP_NO_FILEX** Defined, this option provides a stub for FileX dependencies. The HTTP Client will function without any change if this option is defined. The HTTP Server will need to either be modified or the user will have to create a handful of FileX services in order to function properly.
- **NX_HTTP_TYPE_OF_SERVICE** Type of service required for the HTTP TCP requests. By default, this value is defined as NX_IP_NORMAL to indicate normal IP packet service.
- **NX_HTTP_SERVER_THREAD_TIME_SLICE** The number of timer ticks the Server thread is allowed to run before yielding to threads of the same priority. The default value is 2.
- **NX_HTTP_FRAGMENT_OPTION** Fragment enable for HTTP TCP requests. By default, this value is NX_DONT_FRAGMENT to disable HTTP TCP fragmenting.
- **NX_HTTP_SERVER_WINDOW_SIZE** Server socket window size. By default, this value is 2048 bytes
- **NX_HTTP_TIME_TO_LIVE** Specifies the number of routers this packet can pass before it is discarded. The default value is set to 0x80.
- **NX_HTTP_SERVER_TIMEOUT** Specifies the number of ThreadX ticks that internal services will suspend for. The default value is set to 10 seconds (10 * NX_IP_PERIODIC_RATE).
- **NX_HTTP_SERVER_TIMEOUT_ACCEPT** Specifies the number of ThreadX ticks that internal services will suspend for in internal *nx_tcp_server_socket_accept* calls. The default value is set to (10 * NX_IP_PERIODIC_RATE).
- **NX_HTTP_SERVER_TIMEOUT_DISCONNECT** Specifies the number of ThreadX ticks that internal services will suspend for in internal *nx_tcp_socket_disconnect* calls. The default value is set to 10 seconds (10 * NX_IP_PERIODIC_RATE).
- **NX_HTTP_SERVER_TIMEOUT_RECEIVE** Specifies the number of ThreadX ticks that internal services will suspend for in internal *nx_tcp_socket_receive* calls. The default value is set to 10 seconds (10 * NX_IP_PERIODIC_RATE).
- **NX_HTTP_SERVER_TIMEOUT_SEND** Specifies the number of ThreadX ticks that internal services will suspend for in internal *nx_tcp_socket_send* calls. The default value is set to 10 seconds (10 * NX_IP_PERIODIC_RATE).
- **NX_HTTP_MAX_HEADER_FIELD** Specifies the maximum size of the HTTP header field. The default value is 256.
- **NX_HTTP_MULTIPART_ENABLE** If defined, enables HTTP Server to support multipart HTTP requests.
- **NX_HTTP_SERVER_MAX_PENDING** Specifies the number of connections that can be queued for the HTTP Server. The default value is set to 5.
- **NX_HTTP_MAX_RESOURCE** Specifies the number of bytes allowed in a client supplied *resource name*. The default value is set to 40.
- **NX_HTTP_MAX_NAME** Specifies the number of bytes allowed in a client supplied *username*. The default value is set to 20.
- **NX_HTTP_MAX_PASSWORD** Specifies the number of bytes allowed in a client supplied *password*. The default value is set to 20.
- **NX_HTTP_SERVER_MIN_PACKET_SIZE** Specifies the minimum size of the packets in the pool specified at Server creation. The minimum size is needed to ensure the complete HTTP header can be contained in one packet. The default value is set to 600.
- **NX_HTTP_CLIENT_MIN_PACKET_SIZE** Specifies the minimum size of the packets in the pool specified at Client creation. The minimum size is needed to ensure the complete HTTP header can be contained in one packet. The default value is set to 300.
- **NX_HTTP_SERVER_RETRY_SECONDS** Set the Server socket retransmission timeout in seconds. The default value is set to 2.
- **NX_HTTP_SERVER_ RETRY_MAX** This sets the maximum number of retransmissions on Server socket. The default value is set to 10.
- **NX_HTTP_SERVER_ RETRY_SHIFT** This value is used to set the next retransmission timeout. The current timeout is multiplied by the number of retransmissions thus far, shifted by the value of the socket timeout shift. The default value is set to 1 for doubling the timeout.
- **NX_HTTP_SERVER_TRANSMIT_QUEUE_DEPTH** This specifies the maximum number of packets that can be enqueued on the Server socket retransmission queue. If the number of packets enqueued reaches this number, no more packets can be sent until one or more enqueued packets are released. The default value is set to 20.

View File

@@ -100,8 +100,4 @@ Note that if the Client is configured for no authentication and the SMTP Server
## RFCs Supported by NetX Duo SMTP Client
<<<<<<< HEAD
NetX Duo SMTP Client API is compliant with RFC2821 "Simple Mail Transfer Protocol" and RFC 2554 "SMTP Service Extension for Authentication. "
=======
NetX Duo SMTP Client API is compliant with RFC2821 “Simple Mail Transfer Protocol” and RFC 2554 “SMTP Service Extension for Authentication.“
>>>>>>> cbb4d6e18ee28d86c6b8480f0804ded7e385d395

View File

@@ -32,11 +32,7 @@ Note also that because Telnet utilizes NetX Duo TCP services, TCP must be enable
## Small Example System
<<<<<<< HEAD
An example of how to use NetX Duo Telnet is shown in Figure 1.1 below. In this example, the Telnet include files *are* brought in at line 7 and 8. Next, the Telnet Server is created in "*tx_application_define*" at line 146. Note that the Telnet Server and Client control blocks are defined as global variables at line 23-24 previously.
=======
An example of how to use NetX Duo Telnet is shown below. In this example, the Telnet include files *are* brought in at line 7 and 8. Next, the Telnet Server is created in “*tx_application_define*” at line 146. Note that the Telnet Server and Client control blocks are defined as global variables at line 23-24 previously.
>>>>>>> cbb4d6e18ee28d86c6b8480f0804ded7e385d395
Before the Telnet Server or Client can be started they must validate their IP address with NetX Duo. For IPv4 connections this is accomplished by simply waiting briefly to let the NetX Duo driver initialize the system on line 166. For IPv6 connections, this requires enabling IPv6 and ICMPv6 which it does in lines 171-172. The Client sets its global and link local IPv6 addresses on the primary interface on lines 181-186 and waits for NetX Duo validation to complete in the background. The Server also sets its global and link local addresses on its primary interface in lines 192 198. Note that the two services, *nxd_ipv6_global_address_set* and *nxd_ipv6_linklocal_address_set* are replaced with *nxd_ipv6_address_set service*. The former two services are still available for legacy NetX applications but are eventually deprecated. Developers are encouraged to use *nxd_ipv6_address_set* instead.

View File

@@ -11,7 +11,6 @@ This chapter contains a description of various issues related to installation, s
NetX Duo can be obtained from our public source code repository at https://github.com/eclipse-threadx/netxduo/. The package includes the following files:
- **nxd_tftp_client.h** Header file for NetX Duo TFTP Client
- **nxd_tftp_client.c** C Source file for NetX Duo TFTP Client
@@ -38,11 +37,7 @@ To run a TFTP application, the application code must include *nxd_tftp_client.h*
## Small Example System
<<<<<<< HEAD
An example of how easy it is to use NetX Duo TFTP is described in Figure 1.1 that appears below. In this example, the TFTP include file *nxd_tftp_client.h* and *nxd_tftp_server.h* are brought in at line 19 and 20. Next, the TFTP Server is created in "*tx_application_define*" at line 179.
=======
An example of how easy it is to use NetX Duo TFTP is described below. In this example, the TFTP include file *nxd_tftp_client.h* and *nxd_tftp_server.h* are brought in at line 19 and 20. Next, the TFTP Server is created in “*tx_application_define*” at line 179.
>>>>>>> cbb4d6e18ee28d86c6b8480f0804ded7e385d395
> **Note:** The TFTP Server control block "*server*" was defined as a global variable at line 45 previously. This demo chooses to use IPv4 for its TFTP communication in line 14. After successful creation, the TFTP Server is started at line 304. At line 411 the TFTP Client is created. And finally, the Client writes the file at line 450 and reads the file back at line 485.
@@ -611,7 +606,6 @@ UINT iface_index;
There are several configuration options for building NetX Duo TFTP. The following list describes each in detail. Unless otherwise specified, these options are found in *nxd_tftp_client.h* and *nxd_tftp_server.h*.
- **NX_DISABLE_ERROR_CHECKING** Defined, this option removes the basic TFTP error checking. It is typically used after the application has been debugged.
- **NX_TFTP_SERVER_PRIORITY** The priority of the TFTP server thread. By default, this value is defined as 16 to specify priority 16.