/*++ BUILD Version: 0001 // Increment this if a change has global effects Copyright (c) 1992 Microsoft Corporation Module Name: datatcp.c Abstract: The file containing the constant data structures for the Performance Monitor data for the TCP/IP Extensible Objects (Network Interface, IP, ICMP, TCP and UDP). This file contains a set of constant data structures which are currently defined for the TCP/IP Extensible Objects. This is an example of how other such objects could be defined. Created: Christos Tsollis 08/28/92 Revision History: --*/ // // // Include Files // #include #include #include #include #include #include "datatcp.h" // // Constant structure initializations // NET_INTERFACE_DATA_DEFINITION NetInterfaceDataDefinition = { { sizeof(NET_INTERFACE_DATA_DEFINITION) + SIZE_OF_IF_DATA, sizeof(NET_INTERFACE_DATA_DEFINITION), sizeof(PERF_OBJECT_TYPE), 510, 0, 511, 0, PERF_DETAIL_ADVANCED, (sizeof(NET_INTERFACE_DATA_DEFINITION)-sizeof(PERF_OBJECT_TYPE))/ sizeof(PERF_COUNTER_DEFINITION), 0, // default is Byte Total/sec 0, 0 }, { sizeof(PERF_COUNTER_DEFINITION), 388, 0, 513, 0, -4, PERF_DETAIL_ADVANCED, PERF_COUNTER_BULK_COUNT, sizeof(LONGLONG), IF_OCTETS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 400, 0, 515, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), IF_PACKETS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 266, 0, 517, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), IF_INPKTS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 452, 0, 519, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), IF_OUTPKTS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 520, 0, 521, 0, -6, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), IF_SPEED_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 264, 0, 523, 0, -4, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), IF_INOCTETS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 524, 0, 525, 0, -1, PERF_DETAIL_EXPERT, PERF_COUNTER_COUNTER, sizeof(DWORD), IF_INUCASTPKTS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 526, 0, 527, 0, -1, PERF_DETAIL_EXPERT, PERF_COUNTER_COUNTER, sizeof(DWORD), IF_INNUCASTPKTS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 528, 0, 529, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), IF_INDISCARDS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 530, 0, 531, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), IF_INERRORS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 532, 0, 533, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), IF_INUNKNOWNPROTOS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 506, 0, 535, 0, -4, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), IF_OUTOCTETS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 536, 0, 537, 0, -1, PERF_DETAIL_EXPERT, PERF_COUNTER_COUNTER, sizeof(DWORD), IF_OUTUCASTPKTS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 538, 0, 539, 0, -1, PERF_DETAIL_EXPERT, PERF_COUNTER_COUNTER, sizeof(DWORD), IF_OUTNUCASTPKTS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 540, 0, 541, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), IF_OUTDISCARDS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 542, 0, 543, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), IF_OUTERRORS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 544, 0, 545, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), IF_OUTQLEN_OFFSET } }; IP_DATA_DEFINITION IpDataDefinition = { { sizeof(IP_DATA_DEFINITION) + SIZE_OF_IP_DATA, sizeof(IP_DATA_DEFINITION), sizeof(PERF_OBJECT_TYPE), 546, 0, 547, 0, PERF_DETAIL_ADVANCED, (sizeof(IP_DATA_DEFINITION)-sizeof(PERF_OBJECT_TYPE))/ sizeof(PERF_COUNTER_DEFINITION), 0, -1, 0 }, { sizeof(PERF_COUNTER_DEFINITION), 438, 0, 549, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), IP_DATAGRAMS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 446, 0, 551, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), IP_INRECEIVES_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 552, 0, 553, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), IP_INHDRERRORS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 554, 0, 555, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), IP_INADDRERRORS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 556, 0, 557, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), IP_FORWDATAGRAMS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 558, 0, 559, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), IP_INUNKNOWNPROTOS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 560, 0, 561, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), IP_INDISCARDS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 562, 0, 563, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), IP_INDELIVERS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 442, 0, 565, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), IP_OUTREQUESTS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 566, 0, 567, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), IP_OUTDISCARDS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 568, 0, 569, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), IP_OUTNOROUTES_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 570, 0, 571, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), IP_REASMREQDS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 572, 0, 573, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), IP_REASMOKS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 574, 0, 575, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), IP_REASMFAILS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 576, 0, 577, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), IP_FRAGOKS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 578, 0, 579, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), IP_FRAGFAILS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 580, 0, 581, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), IP_FRAGCREATES_OFFSET } }; ICMP_DATA_DEFINITION IcmpDataDefinition = { { sizeof(ICMP_DATA_DEFINITION) + SIZE_OF_ICMP_DATA, sizeof(ICMP_DATA_DEFINITION), sizeof(PERF_OBJECT_TYPE), 582, 0, 583, 0, PERF_DETAIL_ADVANCED, (sizeof(ICMP_DATA_DEFINITION)-sizeof(PERF_OBJECT_TYPE))/ sizeof(PERF_COUNTER_DEFINITION), 0, -1, 0 }, { sizeof(PERF_COUNTER_DEFINITION), 584, 0, 585, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), ICMP_MESSAGES_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 586, 0, 587, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), ICMP_INMSGS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 588, 0, 589, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), ICMP_INERRORS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 590, 0, 591, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), ICMP_INDESTUNREACHS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 592, 0, 593, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), ICMP_INTIMEEXCDS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 594, 0, 595, 0, 0, PERF_DETAIL_EXPERT, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), ICMP_INPARMPROBS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 596, 0, 597, 0, 0, PERF_DETAIL_WIZARD, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), ICMP_INSRCQUENCHS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 598, 0, 599, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), ICMP_INREDIRECTS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 600, 0, 601, 0, -1, PERF_DETAIL_EXPERT, PERF_COUNTER_COUNTER, sizeof(DWORD), ICMP_INECHOS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 602, 0, 603, 0, -1, PERF_DETAIL_EXPERT, PERF_COUNTER_COUNTER, sizeof(DWORD), ICMP_INECHOREPS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 604, 0, 605, 0, -1, PERF_DETAIL_EXPERT, PERF_COUNTER_COUNTER, sizeof(DWORD), ICMP_INTIMESTAMPS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 606, 0, 607, 0, -1, PERF_DETAIL_EXPERT, PERF_COUNTER_COUNTER, sizeof(DWORD), ICMP_INTIMESTAMPREPS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 608, 0, 609, 0, 0, PERF_DETAIL_EXPERT, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), ICMP_INADDRMASKS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 610, 0, 611, 0, 0, PERF_DETAIL_EXPERT, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), ICMP_INADDRMASKREPS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 612, 0, 613, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), ICMP_OUTMSGS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 614, 0, 615, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), ICMP_OUTERRORS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 616, 0, 617, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), ICMP_OUTDESTUNREACHS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 618, 0, 619, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), ICMP_OUTTIMEEXCDS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 620, 0, 621, 0, 0, PERF_DETAIL_EXPERT, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), ICMP_OUTPARMPROBS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 622, 0, 623, 0, 0, PERF_DETAIL_WIZARD, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), ICMP_OUTSRCQUENCHS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 624, 0, 625, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), ICMP_OUTREDIRECTS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 626, 0, 627, 0, -1, PERF_DETAIL_EXPERT, PERF_COUNTER_COUNTER, sizeof(DWORD), ICMP_OUTECHOS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 628, 0, 629, 0, -1, PERF_DETAIL_EXPERT, PERF_COUNTER_COUNTER, sizeof(DWORD), ICMP_OUTECHOREPS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 630, 0, 631, 0, -1, PERF_DETAIL_EXPERT, PERF_COUNTER_COUNTER, sizeof(DWORD), ICMP_OUTTIMESTAMPS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 632, 0, 633, 0, -1, PERF_DETAIL_EXPERT, PERF_COUNTER_COUNTER, sizeof(DWORD), ICMP_OUTTIMESTAMPREPS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 634, 0, 635, 0, 0, PERF_DETAIL_EXPERT, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), ICMP_OUTADDRMASKS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 636, 0, 637, 0, 0, PERF_DETAIL_EXPERT, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), ICMP_OUTADDRMASKREPS_OFFSET } }; TCP_DATA_DEFINITION TcpDataDefinition = { { sizeof(TCP_DATA_DEFINITION) + SIZE_OF_TCP_DATA, sizeof(TCP_DATA_DEFINITION), sizeof(PERF_OBJECT_TYPE), 638, 0, 639, 0, PERF_DETAIL_ADVANCED, (sizeof(TCP_DATA_DEFINITION)-sizeof(PERF_OBJECT_TYPE))/ sizeof(PERF_COUNTER_DEFINITION), 0, -1, 0 }, { sizeof(PERF_COUNTER_DEFINITION), 640, 0, 641, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), TCP_SEGMENTS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 642, 0, 643, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), TCP_CURRESTAB_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 644, 0, 645, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), TCP_ACTIVEOPENS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 646, 0, 647, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), TCP_PASSIVEOPENS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 648, 0, 649, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), TCP_ATTEMPTFAILS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 650, 0, 651, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), TCP_ESTABRESETS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 652, 0, 653, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), TCP_INSEGS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 654, 0, 655, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), TCP_OUTSEGS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 656, 0, 657, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), TCP_RETRANSSEGS_OFFSET } }; UDP_DATA_DEFINITION UdpDataDefinition = { { sizeof(UDP_DATA_DEFINITION) + SIZE_OF_UDP_DATA, sizeof(UDP_DATA_DEFINITION), sizeof(PERF_OBJECT_TYPE), 658, 0, 659, 0, PERF_DETAIL_ADVANCED, (sizeof(UDP_DATA_DEFINITION)-sizeof(PERF_OBJECT_TYPE))/ sizeof(PERF_COUNTER_DEFINITION), 0, -1, 0 }, { sizeof(PERF_COUNTER_DEFINITION), 438, 0, 661, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), UDP_DATAGRAMS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 446, 0, 663, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), UDP_INDATAGRAMS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 664, 0, 665, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), UDP_NOPORTS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 666, 0, 667, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof(DWORD), UDP_INERRORS_OFFSET }, { sizeof(PERF_COUNTER_DEFINITION), 442, 0, 669, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_COUNTER, sizeof(DWORD), UDP_OUTDATAGRAMS_OFFSET } };