1 #ifndef CONFIG_GENERAL_H
2 #define CONFIG_GENERAL_H
6 * General configuration
10 FILE_LICENCE ( GPL2_OR_LATER );
12 #include <config/defaults.h>
17 * Vendors may use these strings to add their own branding to iPXE.
18 * PRODUCT_NAME is displayed prior to any iPXE branding in startup
19 * messages, and PRODUCT_SHORT_NAME is used where a brief product
20 * label is required (e.g. in BIOS boot selection menus).
22 * To minimise end-user confusion, it's probably a good idea to either
23 * make PRODUCT_SHORT_NAME a substring of PRODUCT_NAME or leave it as
27 #define PRODUCT_NAME ""
28 #define PRODUCT_SHORT_NAME "iPXE"
31 * Banner timeout configuration
33 * This controls the timeout for the "Press Ctrl-B for the iPXE
34 * command line" banner displayed when iPXE starts up. The value is
35 * specified in tenths of a second for which the banner should appear.
36 * A value of 0 disables the banner.
38 * ROM_BANNER_TIMEOUT controls the "Press Ctrl-B to configure iPXE"
39 * banner displayed only by ROM builds of iPXE during POST. This
40 * defaults to being twice the length of BANNER_TIMEOUT, to allow for
41 * BIOSes that switch video modes immediately before calling the
42 * initialisation vector, thus rendering the banner almost invisible
45 #define BANNER_TIMEOUT 20
46 #define ROM_BANNER_TIMEOUT ( 2 * BANNER_TIMEOUT )
53 #define NET_PROTO_IPV4 /* IPv4 protocol */
54 #undef NET_PROTO_IPV6 /* IPv6 protocol */
55 #undef NET_PROTO_FCOE /* Fibre Channel over Ethernet protocol */
61 //#undef PXE_STACK /* PXE stack in iPXE - you want this! */
62 //#undef PXE_MENU /* PXE menu booting */
69 #define DOWNLOAD_PROTO_TFTP /* Trivial File Transfer Protocol */
70 #define DOWNLOAD_PROTO_HTTP /* Hypertext Transfer Protocol */
71 #undef DOWNLOAD_PROTO_HTTPS /* Secure Hypertext Transfer Protocol */
72 #undef DOWNLOAD_PROTO_FTP /* File Transfer Protocol */
73 #undef DOWNLOAD_PROTO_SLAM /* Scalable Local Area Multicast */
74 #undef DOWNLOAD_PROTO_NFS /* Network File System Protocol */
81 //#undef SANBOOT_PROTO_ISCSI /* iSCSI protocol */
82 //#undef SANBOOT_PROTO_AOE /* AoE protocol */
83 //#undef SANBOOT_PROTO_IB_SRP /* Infiniband SCSI RDMA protocol */
84 //#undef SANBOOT_PROTO_FCP /* Fibre Channel protocol */
87 * 802.11 cryptosystems and handshaking protocols
90 #define CRYPTO_80211_WEP /* WEP encryption (deprecated and insecure!) */
91 #define CRYPTO_80211_WPA /* WPA Personal, authenticating with passphrase */
92 #define CRYPTO_80211_WPA2 /* Add support for stronger WPA cryptography */
95 * Name resolution modules
99 #define DNS_RESOLVER /* DNS resolver */
104 * Etherboot supports various image formats. Select whichever ones
108 //#define IMAGE_NBI /* NBI image support */
109 //#define IMAGE_ELF /* ELF image support */
110 //#define IMAGE_MULTIBOOT /* MultiBoot image support */
111 //#define IMAGE_PXE /* PXE image support */
112 //#define IMAGE_SCRIPT /* iPXE script image support */
113 //#define IMAGE_BZIMAGE /* Linux bzImage image support */
114 //#define IMAGE_COMBOOT /* SYSLINUX COMBOOT image support */
115 //#define IMAGE_EFI /* EFI image support */
116 //#define IMAGE_SDI /* SDI image support */
117 //#define IMAGE_PNM /* PNM image support */
118 //#define IMAGE_PNG /* PNG image support */
121 * Command-line commands to include
124 #define AUTOBOOT_CMD /* Automatic booting */
125 #define NVO_CMD /* Non-volatile option storage commands */
126 #define CONFIG_CMD /* Option configuration console */
127 #define IFMGMT_CMD /* Interface management commands */
128 #define IWMGMT_CMD /* Wireless interface management commands */
129 #define FCMGMT_CMD /* Fibre Channel management commands */
130 #define ROUTE_CMD /* Routing table management commands */
131 #define IMAGE_CMD /* Image management commands */
132 #define DHCP_CMD /* DHCP management commands */
133 #define SANBOOT_CMD /* SAN boot commands */
134 #define MENU_CMD /* Menu commands */
135 #define LOGIN_CMD /* Login command */
136 #define SYNC_CMD /* Sync command */
137 //#define NSLOOKUP_CMD /* DNS resolving command */
138 //#define TIME_CMD /* Time commands */
139 //#define DIGEST_CMD /* Image crypto digest commands */
140 //#define LOTEST_CMD /* Loopback testing commands */
141 //#define VLAN_CMD /* VLAN commands */
142 //#define PXE_CMD /* PXE commands */
143 //#define REBOOT_CMD /* Reboot command */
144 //#define POWEROFF_CMD /* Power off command */
145 //#define IMAGE_TRUST_CMD /* Image trust management commands */
146 //#define PCI_CMD /* PCI commands */
147 //#define PARAM_CMD /* Form parameter commands */
148 //#define NEIGHBOUR_CMD /* Neighbour management commands */
149 //#define PING_CMD /* Ping command */
150 //#define CONSOLE_CMD /* Console command */
151 //#define IPSTAT_CMD /* IP statistics commands */
152 //#define PROFSTAT_CMD /* Profiling commands */
155 * ROM-specific options
158 #undef NONPNP_HOOK_INT19 /* Hook INT19 on non-PnP BIOSes */
161 * Error message tables to include
164 #undef ERRMSG_80211 /* All 802.11 error descriptions (~3.3kb) */
167 * Obscure configuration options
169 * You probably don't need to touch these.
173 #define NETDEV_DISCARD_RATE 0 /* Drop every N packets (0=>no drop) */
174 #undef BUILD_SERIAL /* Include an automatic build serial
175 * number. Add "bs" to the list of
176 * make targets. For example:
177 * "make bin/rtl8139.dsk bs" */
178 #undef BUILD_ID /* Include a custom build ID string,
180 #undef NULL_TRAP /* Attempt to catch NULL function calls */
181 #undef GDBSERIAL /* Remote GDB debugging over serial */
182 #undef GDBUDP /* Remote GDB debugging over UDP
183 * (both may be set) */
185 #include <config/named.h>
186 #include NAMED_CONFIG(general.h)
187 #include <config/local/general.h>
188 #include LOCAL_NAMED_CONFIG(general.h)
190 #endif /* CONFIG_GENERAL_H */