Skip to content

Commit 49d3a87

Browse files
Regenerate Finra with different message count rules
1 parent b30e095 commit 49d3a87

2 files changed

Lines changed: 25 additions & 30 deletions

File tree

Finra/Finra_FinraOrf_Tdds_Dfi_v2_1_Dissector.lua

Lines changed: 24 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -3551,27 +3551,13 @@ end
35513551
-- Message
35523552
finra_finraorf_tdds_dfi_v2_1.message = {}
35533553

3554-
-- Calculate size of: Message
3555-
finra_finraorf_tdds_dfi_v2_1.message.size = function(buffer, offset)
3556-
local index = 0
3557-
3558-
index = index + finra_finraorf_tdds_dfi_v2_1.mold_udp64.size
3559-
3560-
-- Calculate runtime size of Payload field
3561-
local payload_offset = offset + index
3562-
local payload_type = buffer(payload_offset - 1, 1):string()
3563-
index = index + finra_finraorf_tdds_dfi_v2_1.payload.size(buffer, payload_offset, payload_type)
3564-
3565-
return index
3566-
end
3567-
35683554
-- Display: Message
35693555
finra_finraorf_tdds_dfi_v2_1.message.display = function(packet, parent, length)
35703556
return ""
35713557
end
35723558

35733559
-- Dissect Fields: Message
3574-
finra_finraorf_tdds_dfi_v2_1.message.fields = function(buffer, offset, packet, parent, message_index)
3560+
finra_finraorf_tdds_dfi_v2_1.message.fields = function(buffer, offset, packet, parent, size_of_message, message_index)
35753561
local index = offset
35763562

35773563
-- Implicit Message Index
@@ -3593,20 +3579,23 @@ finra_finraorf_tdds_dfi_v2_1.message.fields = function(buffer, offset, packet, p
35933579
end
35943580

35953581
-- Dissect: Message
3596-
finra_finraorf_tdds_dfi_v2_1.message.dissect = function(buffer, offset, packet, parent, message_index)
3582+
finra_finraorf_tdds_dfi_v2_1.message.dissect = function(buffer, offset, packet, parent, size_of_message, message_index)
3583+
local index = offset + size_of_message
3584+
3585+
-- Optionally add group/struct element to protocol tree
35973586
if show.message then
3598-
-- Optionally add element to protocol tree
35993587
parent = parent:add(omi_finra_finraorf_tdds_dfi_v2_1.fields.message, buffer(offset, 0))
3600-
local index = finra_finraorf_tdds_dfi_v2_1.message.fields(buffer, offset, packet, parent, message_index)
3601-
local length = index - offset
3602-
parent:set_len(length)
3603-
local display = finra_finraorf_tdds_dfi_v2_1.message.display(packet, parent, length)
3588+
local current = finra_finraorf_tdds_dfi_v2_1.message.fields(buffer, offset, packet, parent, size_of_message, message_index)
3589+
parent:set_len(size_of_message)
3590+
local display = finra_finraorf_tdds_dfi_v2_1.message.display(buffer, packet, parent)
36043591
parent:append_text(display)
36053592

36063593
return index, parent
36073594
else
36083595
-- Skip element, add fields directly
3609-
return finra_finraorf_tdds_dfi_v2_1.message.fields(buffer, offset, packet, parent, message_index)
3596+
finra_finraorf_tdds_dfi_v2_1.message.fields(buffer, offset, packet, parent, size_of_message, message_index)
3597+
3598+
return index
36103599
end
36113600
end
36123601

@@ -3673,14 +3662,20 @@ finra_finraorf_tdds_dfi_v2_1.packet.dissect = function(buffer, packet, parent)
36733662
-- Packet Header: Struct of 3 fields
36743663
index, packet_header = finra_finraorf_tdds_dfi_v2_1.packet_header.dissect(buffer, index, packet, parent)
36753664

3676-
-- Dependency for Message
3677-
local end_of_payload = buffer:len()
3665+
-- Dependency element: Count
3666+
local count = buffer(index - 2, 2):uint()
3667+
3668+
-- Repeating: Message
3669+
for message_index = 1, count do
3670+
3671+
-- Dependency element: Length
3672+
local length = buffer(index, 2):uint()
3673+
3674+
-- Runtime Size Of: Message
3675+
local size_of_message = length + 2
36783676

3679-
-- Message: Struct of 2 fields
3680-
local message_index = 0
3681-
while index < end_of_payload do
3682-
message_index = message_index + 1
3683-
index, message = finra_finraorf_tdds_dfi_v2_1.message.dissect(buffer, index, packet, parent, message_index)
3677+
-- Message: Struct of 2 fields
3678+
index, message = finra_finraorf_tdds_dfi_v2_1.message.dissect(buffer, index, packet, parent, size_of_message, message_index)
36843679
end
36853680

36863681
return index

Finra/ReadMe.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
| Division | [Protocol][Omi.Finra.Protocol.Definitions] | [Encoding][Omi.Encoding.Definitions] | Version | Date | Size | [Status][Omi.Glossary.Status] | [Testing][Omi.Glossary.Testing] | Specification |
77
| --- | --- | --- | --- | ---: | ---: | --- | --- | --- |
8-
| [FinraOrf][FinraOrf.Exchange] | [Tdds][Finra.FinraOrf.Tdds] | [Dfi][Omi.Encoding.Dfi] | [2.1][Finra.FinraOrf.Tdds.Dfi.v2.1.Dissector] | 5/10/2022 | 3754 | [Active][Omi.Glossary.Status.Active] | [Verified][Omi.Glossary.Testing.Verified] | [url][Finra.FinraOrf.Tdds.Dfi.v2.1.Url] - [pdf][Finra.FinraOrf.Tdds.Dfi.v2.1.Pdf] |
8+
| [FinraOrf][FinraOrf.Exchange] | [Tdds][Finra.FinraOrf.Tdds] | [Dfi][Omi.Encoding.Dfi] | [2.1][Finra.FinraOrf.Tdds.Dfi.v2.1.Dissector] | 5/10/2022 | 3749 | [Active][Omi.Glossary.Status.Active] | [Verified][Omi.Glossary.Testing.Verified] | [url][Finra.FinraOrf.Tdds.Dfi.v2.1.Url] - [pdf][Finra.FinraOrf.Tdds.Dfi.v2.1.Pdf] |
99
| [FinraOrf][FinraOrf.Exchange] | [Tdds][Finra.FinraOrf.Tdds] | [Dfi][Omi.Encoding.Dfi] | [2.0][Finra.FinraOrf.Tdds.Dfi.v2.0.Dissector] | 9/24/2018 | 3707 | [Deprecated][Omi.Glossary.Status.Deprecated] | [Verified][Omi.Glossary.Testing.Verified] | [url][Finra.FinraOrf.Tdds.Dfi.v2.0.Url] - [pdf][Finra.FinraOrf.Tdds.Dfi.v2.0.Pdf] |
1010
| [FinraOtc][FinraOtc.Exchange] | [Bbds][Finra.FinraOtc.Bbds] | [Dfi][Omi.Encoding.Dfi] | [2018.1A][Finra.FinraOtc.Bbds.Dfi.v2018.1A.Dissector] | 5/14/2018 | 2628 | [Active][Omi.Glossary.Status.Active] | [Untested][Omi.Glossary.Testing.Untested] | [url][Finra.FinraOtc.Bbds.Dfi.v2018.1A.Url] - [pdf][Finra.FinraOtc.Bbds.Dfi.v2018.1A.Pdf] |
1111

0 commit comments

Comments
 (0)