iPXE
general.h
Go to the documentation of this file.
00001 #ifndef CONFIG_GENERAL_H
00002 #define CONFIG_GENERAL_H
00003 
00004 /** @file
00005  *
00006  * General configuration
00007  *
00008  */
00009 
00010 FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
00011 
00012 #include <config/defaults.h>
00013 
00014 /*
00015  * Banner timeout configuration
00016  *
00017  * This controls the timeout for the "Press Ctrl-B for the iPXE
00018  * command line" banner displayed when iPXE starts up.  The value is
00019  * specified in tenths of a second for which the banner should appear.
00020  * A value of 0 disables the banner.
00021  *
00022  * ROM_BANNER_TIMEOUT controls the "Press Ctrl-B to configure iPXE"
00023  * banner displayed only by ROM builds of iPXE during POST.  This
00024  * defaults to being twice the length of BANNER_TIMEOUT, to allow for
00025  * BIOSes that switch video modes immediately before calling the
00026  * initialisation vector, thus rendering the banner almost invisible
00027  * to the user.
00028  */
00029 #define BANNER_TIMEOUT          20
00030 #define ROM_BANNER_TIMEOUT      ( 2 * BANNER_TIMEOUT )
00031 
00032 /*
00033  * Network protocols
00034  *
00035  */
00036 
00037 #define NET_PROTO_IPV4          /* IPv4 protocol */
00038 #undef  NET_PROTO_IPV6          /* IPv6 protocol */
00039 #undef  NET_PROTO_FCOE          /* Fibre Channel over Ethernet protocol */
00040 #define NET_PROTO_STP           /* Spanning Tree protocol */
00041 #define NET_PROTO_LACP          /* Link Aggregation control protocol */
00042 
00043 /*
00044  * PXE support
00045  *
00046  */
00047 //#undef        PXE_STACK               /* PXE stack in iPXE - you want this! */
00048 //#undef        PXE_MENU                /* PXE menu booting */
00049 
00050 /*
00051  * Download protocols
00052  *
00053  */
00054 
00055 #define DOWNLOAD_PROTO_TFTP     /* Trivial File Transfer Protocol */
00056 #define DOWNLOAD_PROTO_HTTP     /* Hypertext Transfer Protocol */
00057 #undef  DOWNLOAD_PROTO_HTTPS    /* Secure Hypertext Transfer Protocol */
00058 #undef  DOWNLOAD_PROTO_FTP      /* File Transfer Protocol */
00059 #undef  DOWNLOAD_PROTO_SLAM     /* Scalable Local Area Multicast */
00060 #undef  DOWNLOAD_PROTO_NFS      /* Network File System Protocol */
00061 //#undef DOWNLOAD_PROTO_FILE    /* Local filesystem access */
00062 
00063 /*
00064  * SAN boot protocols
00065  *
00066  */
00067 
00068 //#undef        SANBOOT_PROTO_ISCSI     /* iSCSI protocol */
00069 //#undef        SANBOOT_PROTO_AOE       /* AoE protocol */
00070 //#undef        SANBOOT_PROTO_IB_SRP    /* Infiniband SCSI RDMA protocol */
00071 //#undef        SANBOOT_PROTO_FCP       /* Fibre Channel protocol */
00072 //#undef        SANBOOT_PROTO_HTTP      /* HTTP SAN protocol */
00073 
00074 /*
00075  * HTTP extensions
00076  *
00077  */
00078 #define HTTP_AUTH_BASIC         /* Basic authentication */
00079 #define HTTP_AUTH_DIGEST        /* Digest authentication */
00080 //#define HTTP_AUTH_NTLM        /* NTLM authentication */
00081 //#define HTTP_ENC_PEERDIST     /* PeerDist content encoding */
00082 //#define HTTP_HACK_GCE         /* Google Compute Engine hacks */
00083 
00084 /*
00085  * 802.11 cryptosystems and handshaking protocols
00086  *
00087  */
00088 #define CRYPTO_80211_WEP        /* WEP encryption (deprecated and insecure!) */
00089 #define CRYPTO_80211_WPA        /* WPA Personal, authenticating with passphrase */
00090 #define CRYPTO_80211_WPA2       /* Add support for stronger WPA cryptography */
00091 
00092 /*
00093  * Name resolution modules
00094  *
00095  */
00096 
00097 #define DNS_RESOLVER            /* DNS resolver */
00098 
00099 /*
00100  * Image types
00101  *
00102  * Etherboot supports various image formats.  Select whichever ones
00103  * you want to use.
00104  *
00105  */
00106 //#define       IMAGE_NBI               /* NBI image support */
00107 //#define       IMAGE_ELF               /* ELF image support */
00108 //#define       IMAGE_MULTIBOOT         /* MultiBoot image support */
00109 //#define       IMAGE_PXE               /* PXE image support */
00110 //#define       IMAGE_SCRIPT            /* iPXE script image support */
00111 //#define       IMAGE_BZIMAGE           /* Linux bzImage image support */
00112 //#define       IMAGE_COMBOOT           /* SYSLINUX COMBOOT image support */
00113 //#define       IMAGE_EFI               /* EFI image support */
00114 //#define       IMAGE_SDI               /* SDI image support */
00115 //#define       IMAGE_PNM               /* PNM image support */
00116 #define IMAGE_PNG               /* PNG image support */
00117 #define IMAGE_DER               /* DER image support */
00118 #define IMAGE_PEM               /* PEM image support */
00119 
00120 /*
00121  * Command-line commands to include
00122  *
00123  */
00124 #define AUTOBOOT_CMD            /* Automatic booting */
00125 #define NVO_CMD                 /* Non-volatile option storage commands */
00126 #define CONFIG_CMD              /* Option configuration console */
00127 #define IFMGMT_CMD              /* Interface management commands */
00128 #define IWMGMT_CMD              /* Wireless interface management commands */
00129 #define IBMGMT_CMD              /* Infiniband management commands */
00130 #define FCMGMT_CMD              /* Fibre Channel management commands */
00131 #define ROUTE_CMD               /* Routing table management commands */
00132 #define IMAGE_CMD               /* Image management commands */
00133 #define DHCP_CMD                /* DHCP management commands */
00134 #define SANBOOT_CMD             /* SAN boot commands */
00135 #define MENU_CMD                /* Menu commands */
00136 #define LOGIN_CMD               /* Login command */
00137 #define SYNC_CMD                /* Sync command */
00138 #define SHELL_CMD               /* Shell command */
00139 //#define NSLOOKUP_CMD          /* DNS resolving command */
00140 //#define TIME_CMD              /* Time commands */
00141 //#define DIGEST_CMD            /* Image crypto digest commands */
00142 //#define LOTEST_CMD            /* Loopback testing commands */
00143 //#define VLAN_CMD              /* VLAN commands */
00144 //#define PXE_CMD               /* PXE commands */
00145 //#define REBOOT_CMD            /* Reboot command */
00146 //#define POWEROFF_CMD          /* Power off command */
00147 //#define IMAGE_TRUST_CMD       /* Image trust management commands */
00148 //#define PCI_CMD               /* PCI commands */
00149 //#define PARAM_CMD             /* Form parameter commands */
00150 //#define NEIGHBOUR_CMD         /* Neighbour management commands */
00151 //#define PING_CMD              /* Ping command */
00152 //#define CONSOLE_CMD           /* Console command */
00153 //#define IPSTAT_CMD            /* IP statistics commands */
00154 //#define PROFSTAT_CMD          /* Profiling commands */
00155 //#define NTP_CMD               /* NTP commands */
00156 //#define CERT_CMD              /* Certificate management commands */
00157 
00158 /*
00159  * ROM-specific options
00160  *
00161  */
00162 #undef  NONPNP_HOOK_INT19       /* Hook INT19 on non-PnP BIOSes */
00163 #define AUTOBOOT_ROM_FILTER     /* Autoboot only devices matching our ROM */
00164 
00165 /*
00166  * Virtual network devices
00167  *
00168  */
00169 #define VNIC_IPOIB              /* Infiniband IPoIB virtual NICs */
00170 //#define VNIC_XSIGO            /* Infiniband Xsigo virtual NICs */
00171 
00172 /*
00173  * Error message tables to include
00174  *
00175  */
00176 #undef  ERRMSG_80211            /* All 802.11 error descriptions (~3.3kb) */
00177 
00178 /*
00179  * Obscure configuration options
00180  *
00181  * You probably don't need to touch these.
00182  *
00183  */
00184 
00185 #undef  BUILD_SERIAL            /* Include an automatic build serial
00186                                  * number.  Add "bs" to the list of
00187                                  * make targets.  For example:
00188                                  * "make bin/rtl8139.dsk bs" */
00189 #undef  BUILD_ID                /* Include a custom build ID string,
00190                                  * e.g "test-foo" */
00191 #undef  NULL_TRAP               /* Attempt to catch NULL function calls */
00192 #undef  GDBSERIAL               /* Remote GDB debugging over serial */
00193 #undef  GDBUDP                  /* Remote GDB debugging over UDP
00194                                  * (both may be set) */
00195 //#define EFI_DOWNGRADE_UX      /* Downgrade UEFI user experience */
00196 #define TIVOLI_VMM_WORKAROUND   /* Work around the Tivoli VMM's garbling of SSE
00197                                  * registers when iPXE traps to it due to
00198                                  * privileged instructions */
00199 
00200 #include <config/named.h>
00201 #include NAMED_CONFIG(general.h)
00202 #include <config/local/general.h>
00203 #include LOCAL_NAMED_CONFIG(general.h)
00204 
00205 #endif /* CONFIG_GENERAL_H */