Add EMMG to carry fingerprinting and service blocking info
This commit is contained in:
@@ -52,7 +52,7 @@ const char kTestEmmgChannelSetup[] = {
|
||||
'\x01' // parameter_value
|
||||
};
|
||||
|
||||
const char kTestEmmgStreamSetup[] = {
|
||||
const char kTestEmmgStreamSetupForPrivateData[] = {
|
||||
'\x02', // protocol_version
|
||||
'\x01', '\x11', // message_type - Stream_setup
|
||||
'\x00', '\x1f', // message_length
|
||||
@@ -73,6 +73,27 @@ const char kTestEmmgStreamSetup[] = {
|
||||
'\x01' // parameter_value - private data
|
||||
};
|
||||
|
||||
const char kTestEmmgStreamSetupForEmm[] = {
|
||||
'\x02', // protocol_version
|
||||
'\x01', '\x11', // message_type - Stream_setup
|
||||
'\x00', '\x1f', // message_length
|
||||
'\x00', '\x01', // parameter_type - client_id
|
||||
'\x00', '\x04', // parameter_length
|
||||
'\x4a', '\xd4', '\x00', '\x00', // parameter_value
|
||||
'\x00', '\x03', // parameter_type - data_channel_id
|
||||
'\x00', '\x02', // parameter_length
|
||||
'\x00', '\x01', // parameter_value
|
||||
'\x00', '\x04', // parameter_type - data_stream_id
|
||||
'\x00', '\x02', // parameter_length
|
||||
'\x00', '\x01', // parameter_value
|
||||
'\x00', '\x08', // parameter_type - data_id
|
||||
'\x00', '\x02', // parameter_length
|
||||
'\x00', '\x01', // parameter_value
|
||||
'\x00', '\x07', // parameter_type - data_type
|
||||
'\x00', '\x01', // parameter_length
|
||||
'\x00' // parameter_value - emm
|
||||
};
|
||||
|
||||
const char kTestEmmgStreamBwRequest[] = {
|
||||
'\x02', // protocol_version
|
||||
'\x01', '\x17', // message_type - Stream_BW_request
|
||||
@@ -109,7 +130,7 @@ const char kTestEmmgStreamBwAllocation[] = {
|
||||
'\x00', '\x32' // parameter_value (50 kbps)
|
||||
};
|
||||
|
||||
const char kTestEmmgDataProvision[] = {
|
||||
const char kTestEmmgPrivateDataProvision[] = {
|
||||
'\x02', // protocol_version
|
||||
'\x02', '\x11', // message_type - Data_provision
|
||||
'\x00', '\xda', // message_length
|
||||
@@ -149,10 +170,10 @@ const char kTestEmmgDataProvision[] = {
|
||||
'\x00', '\x00', '\x00', '\x00', '\x00', '\x00', '\x00', '\x00', '\x00',
|
||||
'\x00', '\x00', '\x00', '\x00', '\x00', '\x00', '\x00', '\x00'};
|
||||
|
||||
const char kTestEmptyEmmgDataProvision[] = {
|
||||
const char kTestEmmgEmmDataProvision[] = {
|
||||
'\x02', // protocol_version
|
||||
'\x02', '\x11', // message_type - Data_provision
|
||||
'\x00', '\x00', // message_length
|
||||
'\x01', '\x96', // message_length
|
||||
'\x00', '\x01', // parameter_type - client_id
|
||||
'\x00', '\x04', // parameter_length
|
||||
'\x4a', '\xd4', '\x00', '\x00', // parameter_value
|
||||
@@ -165,9 +186,57 @@ const char kTestEmptyEmmgDataProvision[] = {
|
||||
'\x00', '\x08', // parameter_type - data_id
|
||||
'\x00', '\x02', // parameter_length
|
||||
'\x00', '\x01', // parameter_value
|
||||
'\x00', '\x00', // parameter_type - datagram
|
||||
'\x00', '\x00', // parameter_length
|
||||
};
|
||||
'\x00', '\x05', // parameter_type - datagram
|
||||
'\x01', '\x78', // parameter_length
|
||||
// Start of the first TS packet (188 bytes).
|
||||
'\x47', '\x40', '\x00', '\x10', // TS packet header (4 bytes).
|
||||
'\x00', // Pointer field (1 byte).
|
||||
'\x82', '\x70', '\xbe', // Secyion header (3 bytes).
|
||||
// Start of Widevine EMM.
|
||||
'\x01', '\x08', '\x00', '\x00', '\x00', '\x00', '\x5f', '\x3d', '\xc1',
|
||||
'\xfb', '\x00', '\x6b', '\x0a', '\x14', '\x0a', '\x03', '\x43', '\x48',
|
||||
'\x31', '\x0a', '\x03', '\x43', '\x48', '\x32', '\x12', '\x08', '\x63',
|
||||
'\x6f', '\x6e', '\x74', '\x72', '\x6f', '\x6c', '\x73', '\x0a', '\x16',
|
||||
'\x0a', '\x03', '\x43', '\x48', '\x33', '\x12', '\x0f', '\x61', '\x6e',
|
||||
'\x6f', '\x74', '\x68', '\x65', '\x72', '\x20', '\x63', '\x6f', '\x6e',
|
||||
'\x74', '\x72', '\x6f', '\x6c', '\x12', '\x18', '\x0a', '\x03', '\x43',
|
||||
'\x48', '\x31', '\x0a', '\x03', '\x43', '\x48', '\x32', '\x12', '\x06',
|
||||
'\x47', '\x72', '\x6f', '\x75', '\x70', '\x31', '\x20', '\xd2', '\x85',
|
||||
'\xd8', '\xcc', '\x04', '\x12', '\x21', '\x0a', '\x03', '\x43', '\x48',
|
||||
'\x33', '\x12', '\x06', '\x47', '\x72', '\x6f', '\x75', '\x70', '\x32',
|
||||
'\x12', '\x06', '\x47', '\x72', '\x6f', '\x75', '\x70', '\x33', '\x18',
|
||||
'\xd2', '\x85', '\xd8', '\xcc', '\x04', '\x20', '\xd3', '\x85', '\xd8',
|
||||
'\xcc', '\x04', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78',
|
||||
'\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78',
|
||||
'\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78',
|
||||
'\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78',
|
||||
'\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78',
|
||||
'\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78',
|
||||
'\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78',
|
||||
// Start of the second TS packet (188 bytes).
|
||||
'\x47', '\x00', '\x00', '\x11', // TS packet header (4 bytes).
|
||||
// Continued Widevine EMM.
|
||||
'\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78', '\x78',
|
||||
'\x78', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff',
|
||||
'\xff', '\xff', '\xff', '\xff'};
|
||||
|
||||
const char kTestEmmgStreamCloseRequest[] = {
|
||||
'\x02', // protocol_version
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user