ipxe: update to current git
Now that ipxe has separate settings for load / boot banner timeouts
re-enable the boot banner while keeping the load banner turned off,
so we don't add a delay to non-pxe boots.
git shortlog:
Adrian Jamróz (2):
[rhine] Rewrite VIA Rhine driver
[velocity] Rewrite VIA Velocity driver
Alex Williamson (4):
[romprefix] Allow ROM banner timeout to be configured independently
[autoboot] Enable infrastructure to specify an autoboot device location
[prefix] Allow prefix to specify a PCI autoboot device location
[romprefix] Store boot bus:dev.fn address as autoboot device location
Alexander Chernyakhovsky (1):
[ocsp] Handle OCSP responses that don't provide certificates
Bo Yang (1):
[build] Avoid strict-aliasing warning for gcc 4.3
Brandon Penglase (1):
[build] Add vmware build target
Christian Hesse (2):
[build] Update build system for Syslinux 6.x
[build] Fix LABEL name for .liso images
Daniel P. Berrange (1):
[zbin] Fix size used for memset in alloc_output_file
Frediano Ziglio (1):
[romprefix] Fix incorrect pointer offset in undiloader.S
Kevin Tran (1):
[tg3] Fix various tg3 issues
Marin Hannache (8):
[linux] Add missing #include <stddef.h>
[legal] Add FILE_LICENCE for valgrind headers
[legal] Add FILE_LICENCE for core/errno.c
[legal] Add FILE_LICENCE for ath9k driver headers
[legal] Add missing FILE_LICENCE declarations
[cmdline] Add "poweroff" command
[nfs] Add support for NFS protocol
[nfs] Fix an issue with the selection of a local port
Michael Brown (363):
[netdevice] Separate VLAN support from presence of VLAN-supporting drivers
[undi] Work around specific devices with known broken interrupt behaviour
[menu] Prevent character code zero from acting as a shortcut key
[menu] Prevent separators with shortcut keys from being selected
[tftp] Allow TFTP block size to be controlled via the PXE TFTP API
[pcbios] Add extra debugging messages when unhiding iPXE from memory
[nbiprefix] Set up real-mode stack before jumping to .text16
[prefix] Use %cs as implicit parameter to uninstall()
[pcbios] Inhibit all calls to INT 15,e820 and INT 15,e801 during POST
[romprefix] Display only one "Ctrl-B" prompt per PCI device during POST
[efi] Update to latest EDK2 headers
[autoboot] Split main control flow out of main() into a new function ipxe()
[efi] Add last_opened_snpdev()
[efi] Expose downloaded images via EFI_SIMPLE_FILE_SYSTEM_PROTOCOL
[efi] Add our own EFI_LOAD_FILE_PROTOCOL implementation
[efi] Fix building with newer binutils
[lkrnprefix] Allow relocation when no initrd is present
[efi] Fix minor typos in efi_image.c
[efi] Add EFI-specific debugging macros
[int13] Split out ISO9660 and El Torito definitions to separate header files
[smbios] Provide SMBIOS version number via smbios_version()
[smbios] Mangle UUIDs for SMBIOS version 2.6 and newer
[dhcp] Use PXE byte ordering for UUID in DHCP option 97
[uuid] Abstract UUID mangling code out to a separate uuid_mangle() function
[efi] Provide efi_guid_ntoa() for printing EFI GUIDs
[efi] Add "reboot" command for EFI
[cmdline] Add ability to perform a warm reboot
[efi] Enable "cpuid" command by default for EFI
[cs89x0] Remove conflicting macro definitions
[igbvf] Remove conflicting macro definitions
[prism2] Use standard type names
[efi] Fetch device path for loaded image during initialisation
[settings] Expose build architecture and platform via settings
[bios] Fix screen clearing on buggy BIOSes
[intel] Remove hardcoded offsets for descriptor ring registers
[intel] Expose functionality to be shared with intelx driver
[intel] Add intelx driver for Intel 10 Gigabit Ethernet NICs
[efi] Remove obsolete EFI I/O implementation using EFI_CPU_IO_PROTOCOL
[libc] Use __einfo() tuple as first argument to EUNIQ()
[libc] Redefine low 8 bits of error code as "platform error code"
[efi] Perform meaningful error code conversions
[efi] Add sample platform-generated error disambiguations
[netdevice] Use link-layer address as part of RNG seed
[build] Allow sparse to find compiler.h
[build] Define __WINT_TYPE__ if necessary
[build] Allow sparse to be invoked via "make C=1"
[build] Avoid sparse undeclared symbol warning for PROVIDE_SYMBOL()
[process] Mark process descriptor as static in PERMANENT_PROCESS
[realtek] Print bad MAC address in debug message when inferring no EEPROM
[build] Use -Wno-decl when running sparse
[build] Fix uses of literal 0 as a NULL pointer
[build] Fix dubious uses of bitwise operators
[build] Default to short wchar_t in stddef.h
[realtek] Use ID word to detect EEPROM presence
[errdb] Strip platform error code for non-platform-generated errors
[pxe] Convert external PXE API errors into iPXE platform-generated errors
[realtek] Allow reaction time between writing RTL_CAPR and reading RTL_CR
[romprefix] Report failure cause when unable to open payload
[realtek] Ensure EEPROM writes reach chip before starting udelay()
[dhcp] Remove obsolete bootp.h header
[netdevice] Add netdev_tx_defer() to allow drivers to defer transmissions
[realtek] Defer packets when no transmit descriptors are available
[settings] Eliminate settings "tag magic"
[smbios] Allow access to unreferenced SMBIOS strings
[smbios] Allow access to multiple instances of SMBIOS structures
[crypto] Report meaningful error when certificate chain validation fails
[build] Use $(eval) if available
[build] Provide "allXXXs" targets for all media on all platforms
[build] Add efidrv.cab target for UEFI Secure Boot signing
[netdevice] Add "chip" setting
[netdevice] Reset MAC address when asked to clear the "mac" setting
[realtek] Fix reopening of legacy-mode 8139 NIC
[crypto] Accept OCSP responses containing multiple certificates
[bzimage] Align initrd images to page boundary
[bzimage] Fix spurious uninitialised-variable warning on some gcc versions
[build] Work around bug in gcc >= 4.8
[autoboot] Use next-server from filename's settings block
[tcp] Do not send RST for unrecognised connections
[tcp] Fix comment to match code behaviour
[test] Add self-tests for base16
[base16] Generalise base16_decode() to hex_decode()
[settings] Use hex_decode() to parse hex settings
[settings] Add "hexraw" setting type
[netdevice] Add "bustype" and "busloc" settings
[settings] Add "busdevfn" setting type
[linux] Add support for accessing PCI configuration space via /proc/bus/pci
[settings] Add config/settings.h
[settings] Expose PCI configuration space via settings mechanism
[settings] Make "netX" settings block function as a symbolic link
[cmdline] Accept "netX" in iPXE commands
[lotest] Include sequence number within loopback test packets
[intel] Incorporate ring producer and consumer counters in diagnostics
[base16] Ensure base16_encode() always terminates its result string
[realtek] Report RX error detail in debug messages
[script] Allow for backslash continuation of script lines
[settings] Add support for navigation keys in "config" user interface
[realtek] Allow extra space in RX buffers
[ifmgmt] Avoid relying on global variable within ifcommon_exec()
[script] Avoid trying to read final character of a zero-length string
[legal] Add missing FILE_LICENCE declarations
[build] Fix %.licence build target
[settings] Clarify usage of the term "named setting"
[settings] Avoid potentially large stack allocations
[settings] Remove temporary name buffer parameter from parse_setting_name()
[settings] Remove default_type parameter from parse_setting_name()
[settings] Expose parse_setting_name()
[settings] Change "not-found" semantics of fetch_setting_copy()
[settings] Add fetchf_setting_copy()
[settings] Eliminate call to fetchf_named_setting() in expand_settings()
[settings] Eliminate call to store_named_setting() in nslookup.c
[settings] Remove now-unused store_named_setting()
[parseopt] Allow parsed option to be modified
[parseopt] Move parse_settings() to parseopt.c
[parseopt] Add parse_setting()
[settings] Eliminate call to storef_named_setting() in choose_exec()
[settings] Eliminate calls to {fetch,store}f_named_setting() in NVO commands
[settings] Remove now-unused fetchf_named_setting() and storef_named_setting()
[script] Allow initial whitespace on lines containing labels
[script] Allow commands following a script label
[settings] Introduce the generalised concept of a numeric setting
[cmdline] Add "inc" command
[pci] Add pci_find_next() to iterate over existent PCI devices
[cmdline] Add "pciscan" command to allow iteration over PCI devices
[udp] Move high-frequency debug messages to DBGLVL_EXTRA
[ipv6] Rename sin_{family,port} to sin6_{family,port} in struct sockaddr_in6
[tcpip] Allow binding to unspecified privileged ports (below 1024)
[settings] Expose CPUID instruction via settings mechanism
[test] Add self-tests for snprintf()
[settings] Allow numeric_setting_value() to handle long setting values
[settings] Expose memory map via settings mechanism
[params] Add support for the general concept of a form parameter list
[cmdline] Add "params" and "param" commands to manage form parameter lists
[uri] Allow URIs to incorporate a parameter list
[http] Add support for HTTP POST
[settings] Make built-in settings a linker table
[linux] Give tap devices a name and bus type
[ipv4] Generalise fragment reassembly mechanism
[netdevice] Increase maximum network-layer address length
[netdevice] Add concept of a network device index
[netdevice] Add method for generating EUI-64 address from link-layer address
[ethernet] Add support for generating multicast hash for IPv6 addresses
[linux] Apply MAC address prior to registering network device
[tcpip] Pass through network device to transport layer protocols
[neighbour] Generalise concept of neighbour discovery
[ipv4] Abstract out protocol-specific portions of "route" command
[ipv6] Replace IPv6 stack
[ipv6] Fix uninitialised-variable warning
[tcp] Reduce path MTU to 1280 bytes
[ipv6] Add inet6_aton()
[build] Work around bug in gcc >= 4.8
[neighbour] Add nstat() function to print out neighbour table
[cmdline] Add "nstat" command
[tcp] Add AF_INET6 socket opener
[udp] Add AF_INET6 socket opener
[netdevice] Add find_netdev_by_index()
[socket] Add concept of a generalised socket address converter
[ipv4] Add IPv4 socket address converter
[ipv6] Add IPv6 socket address converter
[resolv] Use sock_aton() to allow parsing of arbitrary numeric addresses
[icmp] Add support for sending ICMP echo requests
[ping] Add concept of a ping socket
[ping] Add generic ping mechanism
[ping] Add top-level ping() function to ping a host
[cmdline] Add "ping" command
[ipv6] Handle IPv6 option length correctly
[ipv6] Extract link layer addresses from router advertisements
[ipv6] Support stateless address autoconfiguration (SLAAC)
[ipv6] Treat sin6_scope_id consistently
[ipv6] Automatically choose source for link-local and multicast destinations
[pxe] Always retrieve cached DHCPACK and apply to relevant network device
[ipv6] Add ndp_tx_router_solicitation() to send router solicitations
[parseopt] Add parse_timeout()
[netdevice] Make all net_driver methods optional
[interface] Default to calling intf_restart() in response to intf_close()
[job] Allow job_progress() to return an ongoing job status code, if known
[monojob] Add timeout parameter to monojob_wait()
[monojob] Report ongoing job status as overall return status on timeout
[cmdline] Rewrite "sync" command to use monojob_wait()
[autoboot] Fix shell banner timeout
[ifmgmt] Rewrite iflinkwait() to use monojob_wait()
[cmdline] Allow "if<xxx>" commands to take options
[netdevice] Add generic concept of a network device configurator
[dhcp] Add DHCP network device configurator
[parseopt] Add parse_netdev_configurator()
[ifmgmt] Add ifconf() to carry out network device configuration
[autoboot] Use ifconf() to configure network device
[cmdline] Add "ifconf" command
[cmdline] Make "dhcp" command a synonym for "ifconf"
[dhcp] Remove obsolete dhcp() function
[ipv6] Add IPv6 network device configurator
[cmdline] Generate command option help text automatically
[pxe] Ensure cached DHCPACK is retrieved prior to network device creation
[base16] Fix comparison of signed and unsigned integers
[settings] Move user-class setting from dhcp.c to settings.c
[ipv6] Use given source address only if it is not the unspecified address
[ipv6] Add "ipv6" setting type
[dhcpv6] Add basic support for stateful and stateless DHCPv6
[ipv6] Separate the concepts of prefix and address creation
[dhcpv6] Allow stateful DHCPv6 to apply obtained IPv6 addresses
[test] Include failing code within failed test result output
[main] Defer "initialising devices" message until initialising devices
[console] Pass escape sequence context to ANSI escape sequence handlers
[pixbuf] Add generic concept of a pixel buffer
[image] Allow for non-executable image formats
[image] Add image_pixbuf() to create pixel buffer from image
[pnm] Add support for PNM images
[mucurses] Use "<ESC>[2J" ANSI escape sequence to clear screen
[console] Allow console input and output to be disabled independently
[console] Add concept of generic console configuration
[cmdline] Add "console" command to configure console
[fbcon] Add generic concept of a frame buffer console
[vesafb] Add VESA frame buffer console
[vesafb] Include raw status value within VBE error messages
[vesafb] Skip modes for which we cannot get mode information
[vesafb] Return meaningful error when no suitable mode is found
[vesafb] Select an optimal mode, rather than the first acceptable mode
[build] Fix building on OpenBSD 5.4
[console] Allow '?' as an intermediate byte in ANSI escape sequences
[mucurses] Implement curs_set() to control cursor visibility
[settings] Hide cursor when not actively editing a setting
[menu] Hide cursor when displaying menu
[fbcon] Add support for displaying a cursor
[settings] Explicitly separate the concept of a completed fetched setting
[settings] Allow for IPv6 setting types in non-IPv6 builds
[settings] Add fetch_ipv6_setting()
[dns] Add support for resolving IPv6 addresses via AAAA records
[socket] Ensure socket address structure sizes are fixed
[syslog] Add support for IPv6 syslog server
[ipv6] Add support for resolving IPv6 addresses via the "nslookup" command
[linux] Provide access to SMBIOS via /dev/mem
[dhcpv6] Use DUID-UUID form of client DUID
[settings] Force settings into alphabetical order within sections
[settings] Allow for multiple definitions of each predefined setting
[settings] Merge SETTING_IPv4 and SETTING_IPv6
[dhcpv6] Add DHCPv6 "filename" setting
[ipv6] Expose NDP-provided settings (including the DNS server)
[vesafb] Work around data corruption bug in bochs/qemu VBE implementation
[settings] Adapt user interface to fit display size
[login] Adapt user interface to fit display size
[menu] Adapt user interface to fit display size
[console] Allow consoles to update the recorded console size
[fbcon] Update the console width and height after changing mode
[lkrnprefix] Include iPXE version string in image header
[fbcon] Always draw cursor using current foreground and background colours
[console] Add centralised concept of colours and colour pairs
[mucurses] Use centralised concept of colour pairs
[cmdline] Add the "colour" and "cpair" commands
[console] Add concept of a "magic" colour
[vesafb] Set "magic" colour to transparent when a background picture is used
[build] Remove obsolete check for GNU as version 2.9.1
[ipv6] Fix compilation under FreeBSD
[build] Build ROMs used by qemu and VMware as part of "make all"
[libc] Add isprint()
[test] Add okx() macro taking an explicit file name and line number
[deflate] Add support for DEFLATE decompression
[deflate] Fix literal data length calculation
[libc] Add abs()
[uaccess] Add memcmp_user()
[test] Rewrite pnm_ok() using okx()
[test] Generalise pnm_ok() to pixbuf_ok()
[png] Add support for PNG images
[vesafb] Handle failures from fbcon_init()
[fbcon] Centre background picture on console
[fbcon] Allow for an arbitrary margin around the text area
[vesafb] Allow for an arbitrary margin around the text area
[cmdline] Rename "console" command's --bpp option to --depth
[cmdline] Add margin options to the "console" command
[fbcon] Allow ANSI CUP with missing arguments
[cmdline] Always clear screen after reconfiguring console
[intel] Add some missing PCI IDs
[dns] Support DNS search lists
[dns] Update end-of-name pointer after processing CNAME record
[dhcp] Copy exactly the required length when resizing DHCP options
[settings] Remove "uristring" setting type
[params] Use reference counters for form parameter lists
[uri] Refactor URI parsing and formatting
[image] Ensure every image has a fully resolved URI
[tcpip] Add IP statistics collection as per RFC 4293
[cmdline] Add the "ipstat" command
[prefix] Ignore PCI autoboot device location if set to 00:00.0
[tcpip] Provide tcpip_netdev() to determine the transmitting network device
[tcpip] Provide tcpip_mtu() to determine the maximum transmission unit
[tcp] Calculate correct MSS from peer address
[bzimage] Report exact initrd length via bzImage header
[realtek] Include link status register details in debug messages
[romprefix] Do not clobber stack segment when returning to BIOS
[netdevice] Mark devices as open before calling open() method
[tcp] Update window even if ACK does not acknowledge new data
[linux] Avoid starting currticks() from zero every time
[http] Use a retry timer to trigger retried requests
[http] Automatically retry request on a 503 Service Unavailable
[mii] Add mii_dump() to dump all MII registers
[realtek] Dump all MII register contents when link status changes
[monojob] Reset timeout when progress is made
[image] Add "--timeout" parameter to image downloading commands
[efi] Allow for 64-bit EFI_STATUS codes
[efi] Allow driver to be unloaded
[efi] Connect driver to devices as part of installation
[console] Fix display of characters with top bit set
[lotest] Allow loopback testing on shared networks
[netdevice] Notify upper-layer drivers when RX processing is (un)frozen
[efi] Avoid accidentally calling main() twice
[efi] Unload our own image before exiting UEFI application
[efi] Disable SNP devices when running iPXE as the application
[realtek] Add ability to dump all internal registers
[realtek] Clear bit 24 of RCR
[bios] Fix screen clearing on even more buggy BIOSes
[http] Accept Content-Length header with trailing whitespace
[crypto] Remove dynamically-allocated storage for certificate name
[crypto] Remove dynamically-allocated storage for certificate OCSP URI
[build] Remove long-obsolete mechanism for wrapping embedded images
[build] Disable ccache for all relevant build targets
[build] Add dependency of generated files upon Makefile
[crypto] Add pubkey_match() to check for matching public/private key pairs
[crypto] Generalise X.509 cache to a full certificate store
[crypto] Use fingerprint when no common name is available for debug messages
[crypto] Allow signed timestamp error margin to be configured at build time
[test] Rewrite X.509 tests using okx()
[test] Rewrite CMS tests using okx()
[test] Add tests for x509_check_name()
[test] Add subject alternative names to X.509 server test certificate
[crypto] Add support for subjectAltName and wildcard certificates
[crypto] Allow wildcard matches on commonName as well as subjectAltName
[intel] Avoid completely filling the TX descriptor ring
[test] Rewrite TCP/IP tests using okx()
[test] Add self-tests for flsl()
[libc] Add inline assembly implementation of flsl() using BSR instruction
[test] Add tests for 64-bit division
[build] Fix __libgcc attribute for recent gcc versions
[test] Check for correct -mrtd assumption on libgcc arithmetic functions
[libc] Add isqrt() function to find integer square roots
[libc] Add flsll()
[profile] Add generic profiling infrastructure
[cmdline] Add "profstat" command to display profiling statistics
[netdevice] Profile common operations
[intel] Profile common virtual machine operations
[intel] Push new RX descriptors in batches
[librm] Use genuine real mode to accelerate operation in virtual machines
[ipv4] Profile transmit and receive datapaths
[tcp] Profile transmit and receive datapaths
[http] Profile receive datapath
[downloader] Profile receive datapath
[build] Allow for a debug level of zero
[librm] Allow interrupts in protected mode
[comboot] Use built-in interrupt reflector
[pcbios] Do not switch to real mode to check for timer interrupt
[pcbios] Do not switch to real mode to sleep the CPU
[test] Print out profiling statistics after a successful test run
[librm] Add a profiling self-test for measuring mode transition times
[librm] Add meaningful labels at section changes
[librm] Speed up protected-to-real mode transition under KVM
[librm] Speed up real-to-protected mode transition under KVM
[librm] Speed up protected-mode calls under KVM
[profile] Provide methods for profiling individual stages of operations
[librm] Add profiling self-tests for complete real_call and prot_call cycles
[pxe] Profile all PXE API calls
[pxe] Profile UNDI transmit datapath
[pxe] Work around missing PXENV_UNDI_OPEN only when necessary
[undi] Profile all PXE API calls
[undi] Profile transmit and receive datapaths
[undi] Report any PXENV_UNDI_ISR errors via netdev_rx_err()
[undi] Do not switch to real mode to check for NIC interrupt
[undi] Place an upper limit on the number of PXENV_UNDI_ISR calls per poll
Peter Pickford (1):
[serial] Enable UART FIFOs
Robin Smidsrød (2):
[settings] Add "version" builtin setting
[build] Include ipxe.pxe in default build
Stefan Hajnoczi (2):
[netdevice] Add vlan_tag() to get the VLAN tag of a network device
[iscsi] Include 802.1Q VLAN identifier in iBFT
Thomas Miletich (3):
[3c90x] Stall upload engine before setting RX ring address
[3c90x] Don't round up transmit packet length
[3c90x] Fix High-MTU packet reception
lolipop (1):
[intel] Add Intel I217 Gigabit Ethernet PCI ID
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>