Skip to content

Commit 43fd78d

Browse files
committed
Fix #521. Cleanup unclear naming of xlate records
1 parent e8e8c38 commit 43fd78d

19 files changed

+555
-300
lines changed

src/libnfdump/filter/filter.c

+15-15
Original file line numberDiff line numberDiff line change
@@ -270,13 +270,13 @@ static uint64_t mpls_any_function(void *dataPtr, uint32_t length, data_t data, r
270270
} // End of mpls_any_function
271271

272272
static uint64_t pblock_function(void *dataPtr, uint32_t length, data_t data, recordHandle_t *handle) {
273-
EXnelXlatePort_t *nelXlatePort = (EXnelXlatePort_t *)handle->extensionList[EXnelXlatePortID];
273+
EXnatPortBlock_t *natPortBlock = (EXnatPortBlock_t *)handle->extensionList[EXnatPortBlockID];
274274

275-
if (!nelXlatePort) return 0;
275+
if (!natPortBlock) return 0;
276276

277277
uint16_t port = *((uint16_t *)dataPtr);
278278

279-
return (port >= nelXlatePort->blockStart && port <= nelXlatePort->blockEnd);
279+
return (port >= natPortBlock->blockStart && port <= natPortBlock->blockEnd);
280280

281281
} // End of pblock_function
282282

@@ -374,21 +374,21 @@ static int geoLookup(char *geoChar, uint64_t direction, recordHandle_t *recordHa
374374
}
375375
} break;
376376
case DIR_SRC_NAT: {
377-
EXnselXlateIPv4_t *nselXlateIPv4 = (EXnselXlateIPv4_t *)recordHandle->extensionList[EXnselXlateIPv4ID];
378-
EXnselXlateIPv6_t *nselXlateIPv6 = (EXnselXlateIPv6_t *)recordHandle->extensionList[EXnselXlateIPv6ID];
379-
if (nselXlateIPv4) {
380-
LookupV4Country(nselXlateIPv4->xlateSrcAddr, geoChar);
381-
} else if (nselXlateIPv6) {
382-
LookupV6Country(nselXlateIPv6->xlateSrcAddr, geoChar);
377+
EXnatXlateIPv4_t *natXlateIPv4 = (EXnatXlateIPv4_t *)recordHandle->extensionList[EXnatXlateIPv4ID];
378+
EXnatXlateIPv6_t *natXlateIPv6 = (EXnatXlateIPv6_t *)recordHandle->extensionList[EXnatXlateIPv6ID];
379+
if (natXlateIPv4) {
380+
LookupV4Country(natXlateIPv4->xlateSrcAddr, geoChar);
381+
} else if (natXlateIPv6) {
382+
LookupV6Country(natXlateIPv6->xlateSrcAddr, geoChar);
383383
}
384384
} break;
385385
case DIR_DST_NAT: {
386-
EXnselXlateIPv4_t *nselXlateIPv4 = (EXnselXlateIPv4_t *)recordHandle->extensionList[EXnselXlateIPv4ID];
387-
EXnselXlateIPv6_t *nselXlateIPv6 = (EXnselXlateIPv6_t *)recordHandle->extensionList[EXnselXlateIPv6ID];
388-
if (nselXlateIPv4) {
389-
LookupV4Country(nselXlateIPv4->xlateDstAddr, geoChar);
390-
} else if (nselXlateIPv6) {
391-
LookupV6Country(nselXlateIPv6->xlateDstAddr, geoChar);
386+
EXnatXlateIPv4_t *natXlateIPv4 = (EXnatXlateIPv4_t *)recordHandle->extensionList[EXnatXlateIPv4ID];
387+
EXnatXlateIPv6_t *natXlateIPv6 = (EXnatXlateIPv6_t *)recordHandle->extensionList[EXnatXlateIPv6ID];
388+
if (natXlateIPv4) {
389+
LookupV4Country(natXlateIPv4->xlateDstAddr, geoChar);
390+
} else if (natXlateIPv6) {
391+
LookupV6Country(natXlateIPv6->xlateDstAddr, geoChar);
392392
}
393393
} break;
394394
case DIR_SRC_TUN: {

src/libnfdump/filter/grammar.y

+23-23
Original file line numberDiff line numberDiff line change
@@ -577,10 +577,10 @@ static uint32_t NewIPElement(ipStack_t *ipStack, int direction, int comp, data_t
577577
block = NewElement(EXipv4FlowID, OFFdst4Addr, SIZEdst4Addr, ipStack->ipaddr[1], comp, FUNC_NONE, data[0]);
578578
break;
579579
case DIR_SRC_NAT:
580-
block = NewElement(EXnselXlateIPv4ID, OFFxlateSrc4Addr, SIZExlateSrc4Addr, ipStack->ipaddr[1], comp, FUNC_NONE, data[0]);
580+
block = NewElement(EXnatXlateIPv4ID, OFFxlateSrc4Addr, SIZExlateSrc4Addr, ipStack->ipaddr[1], comp, FUNC_NONE, data[0]);
581581
break;
582582
case DIR_DST_NAT:
583-
block = NewElement(EXnselXlateIPv4ID, OFFxlateDst4Addr, SIZExlateDst4Addr, ipStack->ipaddr[1], comp, FUNC_NONE, data[0]);
583+
block = NewElement(EXnatXlateIPv4ID, OFFxlateDst4Addr, SIZExlateDst4Addr, ipStack->ipaddr[1], comp, FUNC_NONE, data[0]);
584584
break;
585585
case DIR_SRC_TUN:
586586
block = NewElement(EXtunIPv4ID, OFFtunSrc4Addr, SIZEtunSrc4Addr, ipStack->ipaddr[1], comp, FUNC_NONE, data[0]);
@@ -612,12 +612,12 @@ static uint32_t NewIPElement(ipStack_t *ipStack, int direction, int comp, data_t
612612
v6_2 = NewElement(EXipv6FlowID, OFFdst6Addr + sizeof(uint64_t), sizeof(uint64_t), ipStack->ipaddr[1], comp, FUNC_NONE, data[1]);
613613
break;
614614
case DIR_SRC_NAT:
615-
v6_1 = NewElement(EXnselXlateIPv6ID, OFFxlateSrc6Addr, sizeof(uint64_t), ipStack->ipaddr[0], comp, FUNC_NONE, data[0]);
616-
v6_2 = NewElement(EXnselXlateIPv6ID, OFFxlateSrc6Addr + sizeof(uint64_t), sizeof(uint64_t), ipStack->ipaddr[1], comp, FUNC_NONE, data[1]);
615+
v6_1 = NewElement(EXnatXlateIPv6ID, OFFxlateSrc6Addr, sizeof(uint64_t), ipStack->ipaddr[0], comp, FUNC_NONE, data[0]);
616+
v6_2 = NewElement(EXnatXlateIPv6ID, OFFxlateSrc6Addr + sizeof(uint64_t), sizeof(uint64_t), ipStack->ipaddr[1], comp, FUNC_NONE, data[1]);
617617
break;
618618
case DIR_DST_NAT:
619-
v6_1 = NewElement(EXnselXlateIPv6ID, OFFxlateDst6Addr, sizeof(uint64_t), ipStack->ipaddr[0], comp, FUNC_NONE, data[0]);
620-
v6_2 = NewElement(EXnselXlateIPv6ID, OFFxlateDst6Addr + sizeof(uint64_t), sizeof(uint64_t), ipStack->ipaddr[1], comp, FUNC_NONE, data[1]);
619+
v6_1 = NewElement(EXnatXlateIPv6ID, OFFxlateDst6Addr, sizeof(uint64_t), ipStack->ipaddr[0], comp, FUNC_NONE, data[0]);
620+
v6_2 = NewElement(EXnatXlateIPv6ID, OFFxlateDst6Addr + sizeof(uint64_t), sizeof(uint64_t), ipStack->ipaddr[1], comp, FUNC_NONE, data[1]);
621621
break;
622622
case DIR_SRC_TUN:
623623
v6_1 = NewElement(EXtunIPv6ID, OFFtunSrc6Addr, sizeof(uint64_t), ipStack->ipaddr[0], comp, FUNC_NONE, data[0]);
@@ -766,10 +766,10 @@ static int AddPortNumber(direction_t direction, uint16_t comp, uint64_t port) {
766766
ret = NewElement(EXgenericFlowID, OFFdstPort, SIZEdstPort, port, comp, FUNC_NONE, NULLPtr);
767767
break;
768768
case DIR_SRC_NAT:
769-
ret = NewElement(EXnselXlatePortID, OFFxlateSrcPort, SIZExlateSrcPort, port, comp, FUNC_NONE, NULLPtr);
769+
ret = NewElement(EXnatXlatePortID, OFFxlateSrcPort, SIZExlateSrcPort, port, comp, FUNC_NONE, NULLPtr);
770770
break;
771771
case DIR_DST_NAT:
772-
ret = NewElement(EXnselXlatePortID, OFFxlateDstPort, SIZExlateDstPort, port, comp, FUNC_NONE, NULLPtr);
772+
ret = NewElement(EXnatXlatePortID, OFFxlateDstPort, SIZExlateDstPort, port, comp, FUNC_NONE, NULLPtr);
773773
break;
774774
case DIR_UNSPEC:
775775
ret = Connect_OR(
@@ -779,8 +779,8 @@ static int AddPortNumber(direction_t direction, uint16_t comp, uint64_t port) {
779779
break;
780780
case DIR_UNSPEC_NAT:
781781
ret = Connect_OR(
782-
NewElement(EXnselXlatePortID, OFFxlateSrcPort, SIZExlateSrcPort, port, comp, FUNC_NONE, NULLPtr),
783-
NewElement(EXnselXlatePortID, OFFxlateDstPort, SIZExlateDstPort, port, comp, FUNC_NONE, NULLPtr)
782+
NewElement(EXnatXlatePortID, OFFxlateSrcPort, SIZExlateSrcPort, port, comp, FUNC_NONE, NULLPtr),
783+
NewElement(EXnatXlatePortID, OFFxlateDstPort, SIZExlateDstPort, port, comp, FUNC_NONE, NULLPtr)
784784
);
785785
break;
786786
default:
@@ -1212,7 +1212,7 @@ static int AddNatPortBlocks(char *type, char *subtype, uint16_t comp, uint64_t n
12121212
return -1;
12131213
}
12141214

1215-
return NewElement(EXnelXlatePortID, offset, SIZEnelblockStart, number, comp, FUNC_NONE, NULLPtr);
1215+
return NewElement(EXnatPortBlockID, offset, SIZEnelblockStart, number, comp, FUNC_NONE, NULLPtr);
12161216
return -1;
12171217
} // End of AddNatPortBlocks
12181218

@@ -1660,14 +1660,14 @@ static int AddIPlist(direction_t direction, void *IPlist) {
16601660
break;
16611661
case DIR_SRC_NAT:
16621662
ret = Connect_OR(
1663-
NewElement(EXnselXlateIPv4ID, OFFxlateSrc4Addr, SIZExlateSrc4Addr, 0, CMP_IPLIST, FUNC_NONE, IPlistData),
1664-
NewElement(EXnselXlateIPv6ID, OFFxlateSrc6Addr, SIZExlateSrc6Addr, 0, CMP_IPLIST, FUNC_NONE, IPlistData)
1663+
NewElement(EXnatXlateIPv4ID, OFFxlateSrc4Addr, SIZExlateSrc4Addr, 0, CMP_IPLIST, FUNC_NONE, IPlistData),
1664+
NewElement(EXnatXlateIPv6ID, OFFxlateSrc6Addr, SIZExlateSrc6Addr, 0, CMP_IPLIST, FUNC_NONE, IPlistData)
16651665
);
16661666
break;
16671667
case DIR_DST_NAT:
16681668
ret = Connect_OR(
1669-
NewElement(EXnselXlateIPv4ID, OFFxlateDst4Addr, SIZExlateDst4Addr, 0, CMP_IPLIST, FUNC_NONE, IPlistData),
1670-
NewElement(EXnselXlateIPv6ID, OFFxlateDst6Addr, SIZExlateDst6Addr, 0, CMP_IPLIST, FUNC_NONE, IPlistData)
1669+
NewElement(EXnatXlateIPv4ID, OFFxlateDst4Addr, SIZExlateDst4Addr, 0, CMP_IPLIST, FUNC_NONE, IPlistData),
1670+
NewElement(EXnatXlateIPv6ID, OFFxlateDst6Addr, SIZExlateDst6Addr, 0, CMP_IPLIST, FUNC_NONE, IPlistData)
16711671
);
16721672
break;
16731673
case DIR_SRC_TUN:
@@ -1701,12 +1701,12 @@ static int AddIPlist(direction_t direction, void *IPlist) {
17011701
} break;
17021702
case DIR_UNSPEC_NAT: {
17031703
int v4 = Connect_OR(
1704-
NewElement(EXnselXlateIPv4ID, OFFxlateSrc4Addr, SIZExlateSrc4Addr, 0, CMP_IPLIST, FUNC_NONE, IPlistData),
1705-
NewElement(EXnselXlateIPv4ID, OFFxlateDst4Addr, SIZExlateDst4Addr, 0, CMP_IPLIST, FUNC_NONE, IPlistData)
1704+
NewElement(EXnatXlateIPv4ID, OFFxlateSrc4Addr, SIZExlateSrc4Addr, 0, CMP_IPLIST, FUNC_NONE, IPlistData),
1705+
NewElement(EXnatXlateIPv4ID, OFFxlateDst4Addr, SIZExlateDst4Addr, 0, CMP_IPLIST, FUNC_NONE, IPlistData)
17061706
);
17071707
int v6 = Connect_OR(
1708-
NewElement(EXnselXlateIPv6ID, OFFxlateSrc6Addr, SIZExlateSrc6Addr, 0, CMP_IPLIST, FUNC_NONE, IPlistData),
1709-
NewElement(EXnselXlateIPv6ID, OFFxlateDst6Addr, SIZExlateDst6Addr, 0, CMP_IPLIST, FUNC_NONE, IPlistData)
1708+
NewElement(EXnatXlateIPv6ID, OFFxlateSrc6Addr, SIZExlateSrc6Addr, 0, CMP_IPLIST, FUNC_NONE, IPlistData),
1709+
NewElement(EXnatXlateIPv6ID, OFFxlateDst6Addr, SIZExlateDst6Addr, 0, CMP_IPLIST, FUNC_NONE, IPlistData)
17101710
);
17111711
ret = Connect_OR(v4, v6);
17121712
} break;
@@ -1875,15 +1875,15 @@ static int AddPortList(direction_t direction, void *U64List) {
18751875
);
18761876
break;
18771877
case DIR_SRC_NAT:
1878-
ret = NewElement(EXnselXlatePortID, OFFxlateSrcPort, SIZExlateSrcPort, 0, CMP_U64LIST, FUNC_NONE, U64ListPtr);
1878+
ret = NewElement(EXnatXlatePortID, OFFxlateSrcPort, SIZExlateSrcPort, 0, CMP_U64LIST, FUNC_NONE, U64ListPtr);
18791879
break;
18801880
case DIR_DST_NAT:
1881-
ret = NewElement(EXnselXlatePortID, OFFxlateDstPort, SIZExlateDstPort, 0, CMP_U64LIST, FUNC_NONE, U64ListPtr);
1881+
ret = NewElement(EXnatXlatePortID, OFFxlateDstPort, SIZExlateDstPort, 0, CMP_U64LIST, FUNC_NONE, U64ListPtr);
18821882
break;
18831883
case DIR_UNSPEC_NAT:
18841884
ret = Connect_OR(
1885-
NewElement(EXnselXlatePortID, OFFxlateSrcPort, SIZExlateSrcPort, 0, CMP_U64LIST, FUNC_NONE, U64ListPtr),
1886-
NewElement(EXnselXlatePortID, OFFxlateDstPort, SIZExlateDstPort, 0, CMP_U64LIST, FUNC_NONE, U64ListPtr )
1885+
NewElement(EXnatXlatePortID, OFFxlateSrcPort, SIZExlateSrcPort, 0, CMP_U64LIST, FUNC_NONE, U64ListPtr),
1886+
NewElement(EXnatXlatePortID, OFFxlateDstPort, SIZExlateDstPort, 0, CMP_U64LIST, FUNC_NONE, U64ListPtr )
18871887
);
18881888
break;
18891889
default:

src/libnffile/nfxV3.h

+46-46
Original file line numberDiff line numberDiff line change
@@ -428,38 +428,38 @@ typedef struct EXnselCommon_s {
428428
} EXnselCommon_t;
429429
#define EXnselCommonSize (sizeof(EXnselCommon_t) + sizeof(elementHeader_t))
430430

431-
typedef struct EXnselXlateIPv4_s {
432-
#define EXnselXlateIPv4ID 20
431+
typedef struct EXnatXlateIPv4_s {
432+
#define EXnatXlateIPv4ID 20
433433
uint32_t xlateSrcAddr; // NF_F_XLATE_SRC_ADDR_IPV4(225), NF_F_XLATE_SRC_ADDR_84(40001)
434434
uint32_t xlateDstAddr; // NF_F_XLATE_DST_ADDR_IPV4(226), NF_F_XLATE_DST_ADDR_84(40002)
435-
#define OFFxlateSrc4Addr offsetof(EXnselXlateIPv4_t, xlateSrcAddr)
436-
#define SIZExlateSrc4Addr MemberSize(EXnselXlateIPv4_t, xlateSrcAddr)
437-
#define OFFxlateDst4Addr offsetof(EXnselXlateIPv4_t, xlateDstAddr)
438-
#define SIZExlateDst4Addr MemberSize(EXnselXlateIPv4_t, xlateDstAddr)
439-
} EXnselXlateIPv4_t;
440-
#define EXnselXlateIPv4Size (sizeof(EXnselXlateIPv4_t) + sizeof(elementHeader_t))
441-
442-
typedef struct EXnselXlateIPv6_s {
443-
#define EXnselXlateIPv6ID 21
435+
#define OFFxlateSrc4Addr offsetof(EXnatXlateIPv4_t, xlateSrcAddr)
436+
#define SIZExlateSrc4Addr MemberSize(EXnatXlateIPv4_t, xlateSrcAddr)
437+
#define OFFxlateDst4Addr offsetof(EXnatXlateIPv4_t, xlateDstAddr)
438+
#define SIZExlateDst4Addr MemberSize(EXnatXlateIPv4_t, xlateDstAddr)
439+
} EXnatXlateIPv4_t;
440+
#define EXnatXlateIPv4Size (sizeof(EXnatXlateIPv4_t) + sizeof(elementHeader_t))
441+
442+
typedef struct EXnatXlateIPv6_s {
443+
#define EXnatXlateIPv6ID 21
444444
uint64_t xlateSrcAddr[2]; // NF_F_XLATE_SRC_ADDR_IPV6(281),
445445
uint64_t xlateDstAddr[2]; // NF_F_XLATE_DST_ADDR_IPV6(282),
446-
#define OFFxlateSrc6Addr offsetof(EXnselXlateIPv6_t, xlateSrcAddr)
447-
#define SIZExlateSrc6Addr MemberSize(EXnselXlateIPv6_t, xlateSrcAddr)
448-
#define OFFxlateDst6Addr offsetof(EXnselXlateIPv6_t, xlateDstAddr)
449-
#define SIZExlateDst6Addr MemberSize(EXnselXlateIPv6_t, xlateDstAddr)
450-
} EXnselXlateIPv6_t;
451-
#define EXnselXlateIPv6Size (sizeof(EXnselXlateIPv6_t) + sizeof(elementHeader_t))
452-
453-
typedef struct EXnselXlatePort_s {
454-
#define EXnselXlatePortID 22
446+
#define OFFxlateSrc6Addr offsetof(EXnatXlateIPv6_t, xlateSrcAddr)
447+
#define SIZExlateSrc6Addr MemberSize(EXnatXlateIPv6_t, xlateSrcAddr)
448+
#define OFFxlateDst6Addr offsetof(EXnatXlateIPv6_t, xlateDstAddr)
449+
#define SIZExlateDst6Addr MemberSize(EXnatXlateIPv6_t, xlateDstAddr)
450+
} EXnatXlateIPv6_t;
451+
#define EXnatXlateIPv6Size (sizeof(EXnatXlateIPv6_t) + sizeof(elementHeader_t))
452+
453+
typedef struct EXnatXlatePort_s {
454+
#define EXnatXlatePortID 22
455455
uint16_t xlateSrcPort; // NF_F_XLATE_SRC_PORT(227), NF_F_XLATE_SRC_PORT_84(40003)
456456
uint16_t xlateDstPort; // NF_F_XLATE_DST_PORT(228), NF_F_XLATE_DST_PORT_84(40004)
457-
#define OFFxlateSrcPort offsetof(EXnselXlatePort_t, xlateSrcPort)
458-
#define SIZExlateSrcPort MemberSize(EXnselXlatePort_t, xlateSrcPort)
459-
#define OFFxlateDstPort offsetof(EXnselXlatePort_t, xlateDstPort)
460-
#define SIZExlateDstPort MemberSize(EXnselXlatePort_t, xlateDstPort)
461-
} EXnselXlatePort_t;
462-
#define EXnselXlatePortSize (sizeof(EXnselXlatePort_t) + sizeof(elementHeader_t))
457+
#define OFFxlateSrcPort offsetof(EXnatXlatePort_t, xlateSrcPort)
458+
#define SIZExlateSrcPort MemberSize(EXnatXlatePort_t, xlateSrcPort)
459+
#define OFFxlateDstPort offsetof(EXnatXlatePort_t, xlateDstPort)
460+
#define SIZExlateDstPort MemberSize(EXnatXlatePort_t, xlateDstPort)
461+
} EXnatXlatePort_t;
462+
#define EXnatXlatePortSize (sizeof(EXnatXlatePort_t) + sizeof(elementHeader_t))
463463

464464
typedef struct EXnselAcl_s {
465465
#define EXnselAclID 23
@@ -511,22 +511,22 @@ typedef struct EXnelCommonCompat_s {
511511
} EXnelCommonCompat_t;
512512
#define EXnelCommonCompatSize (sizeof(EXnelCommonCompat_t) + sizeof(elementHeader_t))
513513

514-
typedef struct EXnelXlatePort_s {
515-
#define EXnelXlatePortID 26
514+
typedef struct EXnatPortBlock_s {
515+
#define EXnatPortBlockID 26
516516
uint16_t blockStart; // NF_F_XLATE_PORT_BLOCK_START(361)
517517
uint16_t blockEnd; // NF_F_XLATE_PORT_BLOCK_END(362)
518518
uint16_t blockStep; // NF_F_XLATE_PORT_BLOCK_STEP(363)
519519
uint16_t blockSize; // NF_F_XLATE_PORT_BLOCK_SIZE(364)
520-
#define OFFnelblockStart offsetof(EXnelXlatePort_t, blockStart)
521-
#define SIZEnelblockStart MemberSize(EXnelXlatePort_t, blockStart)
522-
#define OFFnelblockEnd offsetof(EXnelXlatePort_t, blockEnd)
523-
#define SIZEnelblockEnd MemberSize(EXnelXlatePort_t, blockEnd)
524-
#define OFFnelblockStep offsetof(EXnelXlatePort_t, blockStep)
525-
#define SIZEnelblockStep MemberSize(EXnelXlatePort_t, blockStep)
526-
#define OFFnelblockSize offsetof(EXnelXlatePort_t, blockSize)
527-
#define SIZEnelblockSize MemberSize(EXnelXlatePort_t, blockSize)
528-
} EXnelXlatePort_t;
529-
#define EXnelXlatePortSize (sizeof(EXnelXlatePort_t) + sizeof(elementHeader_t))
520+
#define OFFnelblockStart offsetof(EXnatPortBlock_t, blockStart)
521+
#define SIZEnelblockStart MemberSize(EXnatPortBlock_t, blockStart)
522+
#define OFFnelblockEnd offsetof(EXnatPortBlock_t, blockEnd)
523+
#define SIZEnelblockEnd MemberSize(EXnatPortBlock_t, blockEnd)
524+
#define OFFnelblockStep offsetof(EXnatPortBlock_t, blockStep)
525+
#define SIZEnelblockStep MemberSize(EXnatPortBlock_t, blockStep)
526+
#define OFFnelblockSize offsetof(EXnatPortBlock_t, blockSize)
527+
#define SIZEnelblockSize MemberSize(EXnatPortBlock_t, blockSize)
528+
} EXnatPortBlock_t;
529+
#define EXnatPortBlockSize (sizeof(EXnatPortBlock_t) + sizeof(elementHeader_t))
530530

531531
typedef struct EXnbarApp_s {
532532
#define EXnbarAppID 27
@@ -734,14 +734,14 @@ static const struct extensionTable_s {
734734
uint32_t size; // number of bytes incl. header, 0xFFFF for dyn length
735735
char *name; // name of extension
736736
} extensionTable[] = {
737-
{0, 0, "ExNull"}, EXTENSION(EXgenericFlow), EXTENSION(EXipv4Flow), EXTENSION(EXipv6Flow), EXTENSION(EXflowMisc),
738-
EXTENSION(EXcntFlow), EXTENSION(EXvLan), EXTENSION(EXasRouting), EXTENSION(EXbgpNextHopV4), EXTENSION(EXbgpNextHopV6),
739-
EXTENSION(EXipNextHopV4), EXTENSION(EXipNextHopV6), EXTENSION(EXipReceivedV4), EXTENSION(EXipReceivedV6), EXTENSION(EXmplsLabel),
740-
EXTENSION(EXmacAddr), EXTENSION(EXasAdjacent), EXTENSION(EXlatency), EXTENSION(EXsamplerInfo), EXTENSION(EXnselCommon),
741-
EXTENSION(EXnselXlateIPv4), EXTENSION(EXnselXlateIPv6), EXTENSION(EXnselXlatePort), EXTENSION(EXnselAcl), EXTENSION(EXnselUser),
742-
EXTENSION(EXnelCommon), EXTENSION(EXnelXlatePort), EXTENSION(EXnbarApp), EXTENSION(EXlabel), EXTENSION(EXinPayload),
743-
EXTENSION(EXoutPayload), EXTENSION(EXtunIPv4), EXTENSION(EXtunIPv6), EXTENSION(EXobservation), EXTENSION(EXinmonMeta),
744-
EXTENSION(EXinmonFrame), EXTENSION(EXvrf), EXTENSION(EXpfinfo), EXTENSION(EXlayer2)};
737+
{0, 0, "ExNull"}, EXTENSION(EXgenericFlow), EXTENSION(EXipv4Flow), EXTENSION(EXipv6Flow), EXTENSION(EXflowMisc),
738+
EXTENSION(EXcntFlow), EXTENSION(EXvLan), EXTENSION(EXasRouting), EXTENSION(EXbgpNextHopV4), EXTENSION(EXbgpNextHopV6),
739+
EXTENSION(EXipNextHopV4), EXTENSION(EXipNextHopV6), EXTENSION(EXipReceivedV4), EXTENSION(EXipReceivedV6), EXTENSION(EXmplsLabel),
740+
EXTENSION(EXmacAddr), EXTENSION(EXasAdjacent), EXTENSION(EXlatency), EXTENSION(EXsamplerInfo), EXTENSION(EXnselCommon),
741+
EXTENSION(EXnatXlateIPv4), EXTENSION(EXnatXlateIPv6), EXTENSION(EXnatXlatePort), EXTENSION(EXnselAcl), EXTENSION(EXnselUser),
742+
EXTENSION(EXnelCommon), EXTENSION(EXnatPortBlock), EXTENSION(EXnbarApp), EXTENSION(EXlabel), EXTENSION(EXinPayload),
743+
EXTENSION(EXoutPayload), EXTENSION(EXtunIPv4), EXTENSION(EXtunIPv6), EXTENSION(EXobservation), EXTENSION(EXinmonMeta),
744+
EXTENSION(EXinmonFrame), EXTENSION(EXvrf), EXTENSION(EXpfinfo), EXTENSION(EXlayer2)};
745745

746746
typedef struct record_map_s {
747747
recordHeaderV3_t *recordHeader;

0 commit comments

Comments
 (0)