|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 2/3] Refactor FrontendDumpIPv4/IPv6Address
Questions inline.
> diff --git a/src/xenvif/frontend.c b/src/xenvif/frontend.c
> index 4184b14..481fcee 100644
> --- a/src/xenvif/frontend.c
> +++ b/src/xenvif/frontend.c
> @@ -681,42 +681,80 @@ static NTSTATUS
> FrontendDumpIPv4Address(
> _In_ PXENVIF_FRONTEND Frontend,
> _In_ PXENBUS_STORE_TRANSACTION Transaction,
> - _In_ PSTR Node,
> - _In_ PIPV4_ADDRESS Address
> + _In_ ULONG AddressIndex,
> + _In_ PXENVIF_ADDRESS Entry
> )
> {
> + CHAR Node[sizeof ("ipv4/XXXXXXXXXX")];
> + PIN_ADDR Address;
> NTSTATUS status;
>
> + Address = &Entry->Address.Ipv4.sin_addr;
> +
> + status = RtlStringCbPrintfA(Node,
> + sizeof (Node),
> + "ipv4/%u",
> + AddressIndex);
> + if (!NT_SUCCESS(status))
> + return status;
> +
> status = XENBUS_STORE(Printf,
> &Frontend->StoreInterface,
> Transaction,
> __FrontendGetPrefix(Frontend),
> Node,
> "%u.%u.%u.%u",
> - Address->Byte[0],
> - Address->Byte[1],
> - Address->Byte[2],
> - Address->Byte[3]);
> - return status;
> + Address->S_un.S_un_b.s_b1,
> + Address->S_un.S_un_b.s_b2,
> + Address->S_un.S_un_b.s_b3,
> + Address->S_un.S_un_b.s_b4);
> + if (!NT_SUCCESS(status))
> + return status;
> +
> + status = XENBUS_STORE(Printf,
> + &Frontend->StoreInterface,
> + Transaction,
> + __FrontendGetPrefix(Frontend),
> + Node,
> + "%u.%u.%u.%u",
> + Address->S_un.S_un_b.s_b1,
> + Address->S_un.S_un_b.s_b2,
> + Address->S_un.S_un_b.s_b3,
> + Address->S_un.S_un_b.s_b4);
> + if (!NT_SUCCESS(status))
> + return status;
> +
This looks like its dumping the IPv4 address twice
Owen
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |