grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCHv2] EFI - PXE - include details from proxy (altserviceboot) of


From: Andrey Borzenkov
Subject: Re: [PATCHv2] EFI - PXE - include details from proxy (altserviceboot) offer when available (resend)
Date: Tue, 11 Feb 2014 20:06:20 +0400

В Tue, 11 Feb 2014 02:20:19 +0000
"Mroczek, Joseph T" <address@hidden> пишет:

> Updated efi api.h with more of pxe mode structure. Definitions from uEFI 
> specification v2.4 errata A.
> 
> I had to update the typedef for grub_efi_ip_address_t, but it did not seem to 
> be used anywhere at this point.
> 
> There is a minor issue that it is still not capturing the file name. It is 
> beyond my skill level to track down exactly why and fix it safely.
> 
> Please let me know if there is anything more I can do.
> 
> ~joe
> 
> diff -Naur grub-2.02~beta2/grub-core/net/drivers/efi/efinet.c 
> grub-2.02~beta2-bug41488-jtm/grub-core/net/drivers/efi/efinet.c
> --- grub-2.02~beta2/grub-core/net/drivers/efi/efinet.c 2013-12-24 
> 11:29:27.000000000 -0500
> +++ grub-2.02~beta2-bug41488-jtm/grub-core/net/drivers/efi/efinet.c           
>      2014-02-10 20:21:29.342895600 -0500
> @@ -250,6 +250,12 @@
>                                                                    
> &pxe_mode->dhcp_ack,
>                                                                    sizeof 
> (pxe_mode->dhcp_ack),
>                                                                    1, device, 
> path);
> +    if (pxe_mode->proxy_offer_received)

Should not preceding grub_net_configure_by_dhcp_ack be made conditional
on pxe_mode->dhcp_ack_received as well?

> +      grub_net_configure_by_dhcp_ack (card->name, card, 0,
> +                                                                 (struct 
> grub_net_bootp_packet *)
> +                                                                 
> &pxe_mode->proxy_offer,
> +                                                                 sizeof 
> (pxe_mode->proxy_offer),
> +                                                                 1, device, 
> path);
>      return;
>    }
> }
> diff -Naur grub-2.02~beta2/include/grub/efi/api.h 
> grub-2.02~beta2-bug41488-jtm/include/grub/efi/api.h
> --- grub-2.02~beta2/include/grub/efi/api.h         2013-12-24 
> 12:04:54.000000000 -0500
> +++ grub-2.02~beta2-bug41488-jtm/include/grub/efi/api.h        2014-02-10 
> 20:30:32.754895600 -0500
> @@ -526,7 +526,7 @@
> typedef grub_uint8_t grub_efi_mac_address_t[32];
> typedef grub_uint8_t grub_efi_ipv4_address_t[4];
> typedef grub_uint16_t grub_efi_ipv6_address_t[8];
> -typedef grub_uint8_t grub_efi_ip_address_t[8] __attribute__ ((aligned(4)));
> +typedef grub_uint8_t grub_efi_ip_address_t[16] __attribute__ ((aligned(4)));
> typedef grub_efi_uint64_t grub_efi_physical_address_t;
> typedef grub_efi_uint64_t grub_efi_virtual_address_t;
> 
> @@ -1342,12 +1342,33 @@
> 
>  typedef struct grub_efi_pxe_mode
> {
> -  grub_uint8_t unused[52];
> +  grub_uint8_t started;
> +  grub_uint8_t ipv6_available;
> +  grub_uint8_t ipv6_supported;
> +  grub_uint8_t using_ipv6;
> +  grub_uint8_t bis_supported;
> +  grub_uint8_t bis_detected;
> +  grub_uint8_t auto_arp;
> +  grub_uint8_t send_guid;
> +  grub_uint8_t dhcp_discover_valid;
> +  grub_uint8_t dhcp_ack_received;
> +  grub_uint8_t proxy_offer_received;
> +  grub_uint8_t pxe_discover_valid;
> +  grub_uint8_t pxe_reply_received;
> +  grub_uint8_t pxe_bis_reply_received;
> +  grub_uint8_t icmp_error_received;
> +  grub_uint8_t tftp_error_received;
> +  grub_uint8_t make_callbacks;
> +  grub_uint8_t ttl;
> +  grub_uint8_t tos;
> +  grub_efi_ip_address_t station_ip;
> +  grub_efi_ip_address_t subnet_mask;
>    grub_efi_pxe_packet_t dhcp_discover;
>    grub_efi_pxe_packet_t dhcp_ack;
>    grub_efi_pxe_packet_t proxy_offer;
>    grub_efi_pxe_packet_t pxe_discover;
>    grub_efi_pxe_packet_t pxe_reply;
> +  grub_efi_pxe_packet_t pxe_bis_reply;
> } grub_efi_pxe_mode_t;
> 
>  typedef struct grub_efi_pxe
> 
> 
> _______________________________________________
> Grub-devel mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/grub-devel




reply via email to

[Prev in Thread] Current Thread [Next in Thread]