📄 net.cdl
字号:
# ====================================================================## net.cdl## Networking configuration data## ====================================================================#####ECOSPDCOPYRIGHTBEGIN###### Copyright (C) 2000, 2001, 2002 Red Hat, Inc.# All Rights Reserved.## Permission is granted to use, copy, modify and redistribute this# file.######ECOSPDCOPYRIGHTEND##### ====================================================================######DESCRIPTIONBEGIN###### Author(s): gthomas# Original data: gthomas# Contributors:# Date: 1999-11-29######DESCRIPTIONEND###### ====================================================================cdl_package CYGPKG_NET { display "Basic networking framework" doc ref/net-common-tcpip.html include_dir . requires CYGPKG_IO requires CYGPKG_ISOINFRA requires CYGINT_ISO_C_TIME_TYPES requires CYGINT_ISO_STRERROR requires CYGINT_ISO_ERRNO requires CYGINT_ISO_ERRNO_CODES requires CYGINT_ISO_MALLOC requires CYGINT_ISO_STRING_BSD_FUNCS description "Basic networking support, including TCP/IP." cdl_interface CYGPKG_NET_DRIVER_FRAMEWORK { display "Suitable driver framework interface, used by network package" description " In order to decouple the network stack from driver specifics, the driver framework must be defined in a separate package." } # Commonly exported infrastructure implements CYGINT_ISO_NETDB_PROTO implements CYGINT_ISO_NETDB_SERV requires { CYGBLD_ISO_NETDB_PROTO_HEADER == "<net/netdb.h>" } requires { CYGBLD_ISO_NETDB_SERV_HEADER == "<net/netdb.h>" } cdl_interface CYGPKG_NET_STACK { display "Suitable network stack implementation, used by network package" description " In order to decouple the network support from most stack specifics, the actual stack implementation must be defined in a separate package." } requires { CYGPKG_NET_STACK == 1 } define_proc { puts $::cdl_header "#include <pkgconf/system.h>" puts $::cdl_header "#include CYGDAT_NET_STACK_CFG" } cdl_interface CYGPKG_NET_STACK_INET { display "Network stack support for IPv4" } cdl_interface CYGPKG_NET_STACK_INET6 { display "Network stack support for IPv6" } cdl_interface CYGPKG_NET_STACK_IPSEC { display "Network stack support for IPSEC" } cdl_component CYGPKG_NET_INET { display "INET support" active_if CYGPKG_NET_STACK_INET flavor bool no_define default_value 1 description " This option enables support for INET (IP) network processing." define INET compile \ inet_addr.c \ inet_ntoa.c \ inet_ntop.c \ inet_pton.c \ bootp_support.c \ dhcp_support.c \ dhcp_prot.c \ network_support.c \ getproto.c \ getserv.c compile getaddrinfo.c \ ifaddrs.c cdl_option CYGPKG_NET_INET6 { display "IPv6 support" active_if CYGPKG_NET_STACK_INET6 requires CYGINT_IO_ETH_MULTICAST flavor bool default_value 0 description " This option enables support for IPv6 networks." define INET6 } cdl_option CYGPKG_NET_IPSEC { display "IPSEC support" active_if CYGPKG_NET_STACK_IPSEC flavor bool default_value 1 description " This option enables support for IPSEC" define IPSEC define IPSEC_ESP } cdl_option CYGSEM_NET_ROUTING { display "Multicast routing support" flavor bool no_define default_value 0 description " This option enables support for packet routing." define MROUTING } cdl_option CYGSEM_NET_RANDOMID { display "Use random sequence for IP packet identifiers" flavor bool no_define default_value 0 description " This option enables the use of random IP packet sequence identifiers, rather than a purely sequential sequence. It is believed that use of random identifiers improves security, at a fairly substantial computational overhead." define RANDOM_IP_ID } } cdl_component CYGPKG_NET_TFTP { display "TFTP (RFC-1350) support" requires CYGPKG_NET_INET flavor bool default_value 1 compile tftp_client.c \ tftp_server.c description " This option provides additional library support for the TFTP (Trivial File Transfer Protocol)." cdl_option CYGPKG_NET_TFTPD_THREAD_PRIORITY { display "Priority level for TFTP daemon thread." flavor data default_value 10 description " This option allows the thread priority level used by the TFTP server thread to be adjusted by the user. It should be set high enough that sufficient CPU resources are available to process network data, but may be adjusted so that application threads can have precedence over TFTP server processing." } cdl_option CYGPKG_NET_TFTPD_THREAD_STACK_SIZE { display "Stack size for TFTP threads." flavor data default_value { "(CYGNUM_HAL_STACK_SIZE_TYPICAL+(3*(SEGSIZE+4)))" } description " This option controls the size of the stack used for the TFTP server. The default should be sufficient for most cases but some applications my require bigger stacks when the implementation of file operations are complex." } cdl_component CYGSEM_NET_TFTPD_MULTITHREADED { display "Multiple TFTPD server threads on the same port." flavor bool default_value 1 description " This option controls the tftp server ability to be multi-threaded. When enabled, multiple server can be started on the same port number. This allows multiple concurrent transfers to be active. When this option is not enabled, while one transfer is active, other requests will be delayed or even ignored." cdl_option CYGNUM_NET_TFTPD_MULTITHREADED_PORTS { display "Number of different ports with servers" flavor data default_value 1 description " Each set of servers running on the same port number require a semaphore to synchronise there operation. This option controls the number of semaphores and so the number of port numbers multithreaded servers which can be running on." } } cdl_option CYGPKG_NET_TFTP_FILE_ACCESS { display "File I/O functions for TFTP server" flavor bool default_value 1 compile tftp_dummy_file.c description " Minimal in-memory file I/O support for TFTP server." } } cdl_component CYGPKG_NET_DHCP { display "Use full DHCP instead of BOOTP" requires CYGPKG_NET_INET active_if (CYGHWR_NET_DRIVERS > 0) flavor bool default_value 1 description " Provide DHCP for initializing the IP address of network interfaces. The DHCP client is capable of falling back to BOOTP usage if the server does not support DHCP, so it should never be necessary to disable this option. However, depending on other configuration the DHCP client may provide or require a kernel thread of its own; this consumes quite a lot of resource which a BOOTP solution does not require." cdl_option CYGOPT_NET_DHCP_DHCP_THREAD { display "DHCP management thread" flavor bool default_value 1 description " Provide a separate thread to renew DHCP leases; otherwise the application MUST periodically examine the semaphore dhcp_needs_attention and call dhcp_bind() if it is signalled. If enabled, this thread does all that for you. Independent of this option, initialization of the interfaces still occurs in init_all_network_interfaces() and your startup code must call that. It will start the DHCP management thread if necessary. If a lease fails to be renewed, the management thread will shut down all interfaces and attempt to initialize all the interfaces again from scratch. This may cause application problems, in which case managing the DHCP state in an application aware thread is recommended. See comments in dhcp.h" } cdl_option CYGOPT_NET_DHCP_DHCP_THREAD_PARAM { display "DHCP management thread loops forever" flavor data default_value 1 active_if CYGOPT_NET_DHCP_DHCP_THREAD description " If the parameter is nonzero, it loops forever; if zero, the thread exits if a lease expires, and the application must detect this and tidy up or reboot the whole machine." } cdl_option CYGPKG_NET_DHCP_THREAD_PRIORITY { display "DHCP management thread priority"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -