mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 18:15:11 +00:00
[TCPIP] Implement InfoTdiQueryGetATInfo
This implements a case for InfoTdiQueryInformationEx. It's based on wild guesses, but it helps to make Windows 2003 lsass not fail.
This commit is contained in:
parent
962b2fd66a
commit
1e28d4d92b
1 changed files with 37 additions and 0 deletions
|
@ -180,6 +180,38 @@ TDI_STATUS InfoTdiQueryListEntities(PNDIS_BUFFER Buffer,
|
||||||
return TDI_SUCCESS;
|
return TDI_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TDI_STATUS
|
||||||
|
InfoTdiQueryGetATInfo(
|
||||||
|
TDIEntityID ID,
|
||||||
|
PIP_INTERFACE Interface,
|
||||||
|
PNDIS_BUFFER Buffer,
|
||||||
|
PUINT BufferSize)
|
||||||
|
{
|
||||||
|
ULONG ATInfo[2];
|
||||||
|
TDI_STATUS Status;
|
||||||
|
|
||||||
|
TI_DbgPrint(DEBUG_INFO, ("Called.\n"));
|
||||||
|
|
||||||
|
if (!Interface)
|
||||||
|
return TDI_INVALID_PARAMETER;
|
||||||
|
|
||||||
|
if (*BufferSize < sizeof(ATInfo))
|
||||||
|
return STATUS_BUFFER_TOO_SMALL;
|
||||||
|
|
||||||
|
/* FIXME: I have no idea what the first field should contain... */
|
||||||
|
ATInfo[0] = 0;
|
||||||
|
ATInfo[1] = Interface->Index;
|
||||||
|
|
||||||
|
Status = InfoCopyOut((PCHAR)ATInfo,
|
||||||
|
sizeof(ATInfo),
|
||||||
|
Buffer,
|
||||||
|
BufferSize);
|
||||||
|
|
||||||
|
TI_DbgPrint(DEBUG_INFO, ("Returning %08x\n", Status));
|
||||||
|
|
||||||
|
return Status;
|
||||||
|
}
|
||||||
|
|
||||||
TDI_STATUS InfoTdiQueryInformationEx(
|
TDI_STATUS InfoTdiQueryInformationEx(
|
||||||
PTDI_REQUEST Request,
|
PTDI_REQUEST Request,
|
||||||
TDIObjectID *ID,
|
TDIObjectID *ID,
|
||||||
|
@ -256,6 +288,11 @@ TDI_STATUS InfoTdiQueryInformationEx(
|
||||||
return InfoTdiQueryGetIPSnmpInfo(ID->toi_entity, EntityListContext, Buffer, BufferSize);
|
return InfoTdiQueryGetIPSnmpInfo(ID->toi_entity, EntityListContext, Buffer, BufferSize);
|
||||||
else
|
else
|
||||||
return TDI_INVALID_PARAMETER;
|
return TDI_INVALID_PARAMETER;
|
||||||
|
else if (ID->toi_entity.tei_entity == AT_ENTITY)
|
||||||
|
if ((EntityListContext = GetContext(ID->toi_entity)))
|
||||||
|
return InfoTdiQueryGetATInfo(ID->toi_entity, EntityListContext, Buffer, BufferSize);
|
||||||
|
else
|
||||||
|
return TDI_INVALID_PARAMETER;
|
||||||
else
|
else
|
||||||
return TDI_INVALID_PARAMETER;
|
return TDI_INVALID_PARAMETER;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue