aboutsummaryrefslogtreecommitdiffstats
path: root/epan/exported_pdu.c
diff options
context:
space:
mode:
authorMartin Kaiser <wireshark@kaiser.cx>2013-07-29 20:38:20 +0000
committerMartin Kaiser <wireshark@kaiser.cx>2013-07-29 20:38:20 +0000
commit174fa28a3152efd151023c574cedb0f131bb3860 (patch)
tree60532197bcba6d79f744b4b0480cca551d731af9 /epan/exported_pdu.c
parent56bf58dce39b5d34c2ecad5a883a1201599c15b2 (diff)
support exporting decrypted DVB-CI/CI+ SAC messages
using the new export PDU mechanism svn path=/trunk/; revision=51019
Diffstat (limited to 'epan/exported_pdu.c')
-rw-r--r--epan/exported_pdu.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/epan/exported_pdu.c b/epan/exported_pdu.c
index 4a549c1844..01314c93ea 100644
--- a/epan/exported_pdu.c
+++ b/epan/exported_pdu.c
@@ -30,6 +30,7 @@
#include <epan/packet.h>
#include <epan/exported_pdu.h>
#include <epan/dissectors/packet-mtp3.h>
+#include <epan/dissectors/packet-dvbci.h>
/**
* Allocates and fills the exp_pdu_data_t struct according to the wanted_exp_tags
@@ -114,6 +115,10 @@ load_export_pdu_tags(packet_info *pinfo, const char* proto_name, int wtap_encap
tag_buf_size= tag_buf_size + EXP_PDU_TAG_ORIG_FNO_LEN + 4;
}
+ if((tags_bit_field & EXP_PDU_TAG_DVBCI_EVT_BIT) == EXP_PDU_TAG_DVBCI_EVT_BIT){
+ tag_buf_size= tag_buf_size + EXP_PDU_TAG_DVBCI_EVT_LEN + 4;
+ }
+
/* Add end of options length */
tag_buf_size+=4;
@@ -332,6 +337,17 @@ load_export_pdu_tags(packet_info *pinfo, const char* proto_name, int wtap_encap
/*i = i +EXP_PDU_TAG_ORIG_FNO_LEN;*/
}
- return exp_pdu_data;
+ if((tags_bit_field & EXP_PDU_TAG_DVBCI_EVT_BIT) == EXP_PDU_TAG_DVBCI_EVT_BIT){
+ exp_pdu_data->tlv_buffer[i] = 0;
+ i++;
+ exp_pdu_data->tlv_buffer[i] = EXP_PDU_TAG_DVBCI_EVT;
+ i++;
+ exp_pdu_data->tlv_buffer[i] = 0;
+ i++;
+ exp_pdu_data->tlv_buffer[i] = EXP_PDU_TAG_DVBCI_EVT_LEN;
+ i++;
+ exp_pdu_data->tlv_buffer[i] = dvbci_get_evt_from_addrs(pinfo);
+ }
+ return exp_pdu_data;
}