grub-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 3/4] efinet: UEFI IPv6 PXE support


From: Thomas Frauendorfer
Subject: Re: [PATCH 3/4] efinet: UEFI IPv6 PXE support
Date: Fri, 5 Jun 2020 13:39:56 +0200

On Fri, Jun 5, 2020 at 4:16 AM Michael Chang <mchang@suse.com> wrote:
>
> You're probably right if the data type for `station_ip` is
> `grub_efi_pxe_ip_address_t`, but here it is `grub_efi_ip_address_t` declared
> as:
>
>   typedef grub_uint8_t grub_efi_ip_address_t[8] __attribute__ ((aligned(4)));
>
> So the compiler would have been taking care of the alignment already ...

Oh, right.
I only ran into an alignment problem wenn I combined your patches to use the
UEFI Managed Network Protocol together with a patch to handle proxy dhcp.
Sorry for the noise

> By the way, I found the mentioned hunk is different to what was posted on the
> list[1], which had relevant fields like this:
>
>   grub_uint8_t using_ipv6;
>   grub_uint8_t unused[16];
>   grub_efi_pxe_ip_address_t station_ip;
>   grub_efi_pxe_ip_address_t subnet_mask;
>
> Maybe Javier could help to shed some light on why the change was made ? Though
> I'm not against it, I'm still interested to know about it if they have any
> other concern or in case anything could be missing here. :)
>
> [1] https://lists.gnu.org/archive/html/grub-devel/2016-08/msg00003.html
>
> Thanks,
> Michael
>
> >
> > On Thu, Jun 4, 2020 at 9:34 AM Javier Martinez Canillas
> > <javierm@redhat.com> wrote:
> > >
> >
> > >  typedef struct grub_efi_pxe_mode
> > >  {
> > > -  grub_uint8_t unused[52];
> > > +  grub_efi_boolean_t started;
> > > +  grub_efi_boolean_t ipv6_available;
> > > +  grub_efi_boolean_t ipv6_supported;
> > > +  grub_efi_boolean_t using_ipv6;
> > > +  grub_efi_boolean_t bis_supported;
> > > +  grub_efi_boolean_t bis_detected;
> > > +  grub_efi_boolean_t auto_arp;
> > > +  grub_efi_boolean_t send_guid;
> > > +  grub_efi_boolean_t dhcp_discover_valid;
> > > +  grub_efi_boolean_t dhcp_ack_received;
> > > +  grub_efi_boolean_t proxy_offer_received;
> > > +  grub_efi_boolean_t pxe_discover_valid;
> > > +  grub_efi_boolean_t pxe_reply_received;
> > > +  grub_efi_boolean_t pxe_bis_reply_received;
> > > +  grub_efi_boolean_t icmp_error_received;
> > > +  grub_efi_boolean_t tftp_error_received;
> > > +  grub_efi_boolean_t make_callbacks;
> > > +  grub_efi_uint8_t ttl;
> > > +  grub_efi_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_ip_filter_t ip_filter;
> > > +  grub_efi_uint32_t arp_cache_entries;
> > > +  grub_efi_pxe_arp_entry_t 
> > > arp_cache[GRUB_EFI_PXE_BASE_CODE_MAX_ARP_ENTRIES];
> > > +  grub_efi_uint32_t route_table_entries;
> > > +  grub_efi_pxe_route_entry_t 
> > > route_table[GRUB_EFI_PXE_BASE_CODE_MAX_ROUTE_ENTRIES];
> > > +  grub_efi_pxe_icmp_error_t icmp_error;
> > > +  grub_efi_pxe_tftp_error_t tftp_error;
> > >  } grub_efi_pxe_mode_t;
> > >
> > >  typedef struct grub_efi_pxe

Those changes look like the api.h changes in a patch from Joseph
Mroczek to support proxy dhcp

https://lists.gnu.org/archive/html/grub-devel/2014-05/msg00002.html



reply via email to

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