NAT

GameSpy SDK

NAT

The result of a NAT detection. Upon successful completion of a detection, this will contain as many properties of the NAT as could be determined.

typedef struct 
{
char brand[32];
char model[32];
char firmware[64];
gsi_bool ipRestricted;
gsi_bool portRestricted;
NatPromiscuity promiscuity;
NatType natType;
NatMappingScheme mappingScheme;
AddressMapping mappings[4];
gsi_bool qr2Compatible;
} NAT;

Members

brand
NAT device brand/vendor (not currently used).
model
NAT device model name/number (not currently used).
firmware
NAT device brand/vendor (not currently used).
ipRestricted
gsi_true if the NAT drops packets from unsolicited IP addresses.
portRestricted
gsi_true if the NAT drops packets from unsolicted ports.
promiscuity
The type of promiscuity the NAT allows.
natType
The type of NAT as defined by RFC2663.
mappingScheme
The type of port mapping/allocation scheme used by the NAT.
mappings
Port mappings observed during the detection process.
qr2Compatible
gsi_true if the NAT is compatible with QR2.