Applied, thanks!
Damien Zammit, le jeu. 09 oct. 2025 05:40:59 +0000, a ecrit:
> Previously, on x86_64, fragments would only be received because
> the bpf header was being parsed wrong. This fixes rumpnet on hurd-amd64.
>
> ---
> rumpnet/net-rump.c | 10 ++++++----
> 1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/rumpnet/net-rump.c b/rumpnet/net-rump.c
> index a9627c72..a2a0a188 100644
> --- a/rumpnet/net-rump.c
> +++ b/rumpnet/net-rump.c
> @@ -125,8 +125,13 @@ struct bpf_program {
> #define BPF_BUFSIZE 131072
>
> struct bpf_hdr {
> +#if defined (__x86_64__)
> + int64_t usec;
> + int64_t sec;
> +#else
> int32_t usec;
> int32_t sec;
> +#endif
> uint32_t bh_caplen; /* length of captured portion */
> uint32_t bh_datalen; /* original length of packet */
> uint16_t bh_hdrlen; /* length of this struct + alignment padding */
> @@ -706,10 +711,7 @@ poll_again:
> todo -= buf_inc;
>
> if (fragment)
> - {
> - mach_print("fragment rcvd, try again\n");
> - return 0;
> - }
> + return 0;
>
> if (!cmp_hwaddr(hdr->h_source, nd->hw_address))
> {
> --
> 2.51.0
>
>
>