AFD_ADDRESS - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
#ifndef _NTAFD_H
#include <pshpack1.h>

// rev - a union for TLI/TDI socket addresses
typedef union _AFD_ADDRESS
{
    SOCKADDR_STORAGE TliAddress;
    TDI_ADDRESS_INFO TdiAddress;

    struct
    {
        //
        // TDI_ADDRESS_INFO includes an embedded socket address that starts at AddressType (which corresponds to sa_family).
        //
        // ---------------- | ------------------------- |
        //                  | ULONG ActivityCount       |
        //                  | ------------------------- | --------------------- |
        //                  |                           | ULONG TAAddressCount  |
        //                  |                           | --------------------- | ---------------------------- |
        //                  |                           |                       | USHORT AddressLength         |
        // TDI_ADDRESS_INFO | TRANSPORT_ADDRESS Address |                       | ---------------------------- | ---------- | ---------------- |
        //                  |                           | TA_ADDRESS Address[1] | USHORT AddressType           |            | USHORT sa_family |
        //                  |                           |                       | ---------------------------- |  SOCKADDR  | ---------------- |
        //                  |                           |                       | UCHAR Address[AddressLength] | (embedded) |       ...        |
        //                  |                           |                       |             ...              |            |                  |
        // ---------------- | ------------------------- | --------------------- | ---------------------------- | ---------- | ---------------- |
        //

        UCHAR Padding[10]; // RTL_SIZEOF_THROUGH_FIELD(TDI_ADDRESS_INFO, Address.Address[0].AddressLength)
        SOCKADDR_STORAGE EmbeddedAddress;
    } TdiAddressUnpacked;
} AFD_ADDRESS, *PAFD_ADDRESS;

#include <poppack.h>
#endif

View code on GitHub

No description available.