This file is indexed.

/usr/x86_64-w64-mingw32/include/mpeg2structs.h is in mingw-w64-x86-64-dev 2.0.3-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
/**
 * This file has no copyright assigned and is placed in the Public Domain.
 * This file is part of the w64 mingw-runtime package.
 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
 */

#include <mpeg2data.h>
#include <mpeg2bits.h>

#ifndef __INC_MPEG2STRUCTS__
#define __INC_MPEG2STRUCTS__

typedef enum _MPEG_CONTEXT_TYPE {
  MPEG_CONTEXT_BCS_DEMUX = 0,
  MPEG_CONTEXT_WINSOCK 
} MPEG_CONTEXT_TYPE;

typedef enum _MPEG_CURRENT_NEXT_BIT {
  MPEG_SECTION_IS_NEXT      = 0,
  MPEG_SECTION_IS_CURRENT   = 1 
} MPEG_CURRENT_NEXT_BIT;

typedef enum _MPEG_REQUEST_TYPE {
  MPEG_RQST_UNKNOWN               = 0,
  MPEG_RQST_GET_SECTION,
  MPEG_RQST_GET_SECTION_ASYNC,
  MPEG_RQST_GET_TABLE,
  MPEG_RQST_GET_TABLE_ASYNC,
  MPEG_RQST_GET_SECTIONS_STREAM,
  MPEG_RQST_GET_PES_STREAM,
  MPEG_RQST_GET_TS_STREAM,
  MPEG_RQST_START_MPE_STREAM 
} MPEG_REQUEST_TYPE;

typedef struct _DSMCC_ELEMENT {
  PID                   pid;
  BYTE                  bComponentTag;
  DWORD                 dwCarouselId;
  DWORD                 dwTransactionId;
  struct _DSMCC_ELEMENT *pNext;
} DSMCC_ELEMENT, *PDSMCC_ELEMENT;

typedef struct {
  WINBOOL  fSpecifyProtocol;
  BYTE  Protocol;
  WINBOOL  fSpecifyType;
  BYTE  Type;
  WINBOOL  fSpecifyMessageId;
  WORD  MessageId;
  WINBOOL  fSpecifyTransactionId;
  WINBOOL  fUseTrxIdMessageIdMask;
  DWORD TransactionId;
  WINBOOL  fSpecifyModuleVersion;
  BYTE  ModuleVersion;
  WINBOOL  fSpecifyBlockNumber;
  WORD  BlockNumber;
  WINBOOL  fGetModuleCall;
  WORD  NumberOfBlocksInModule;
} DSMCC_FILTER_OPTIONS;

typedef struct _MPEG_HEADER_BITS_MIDL {
  WORD Bits;
} MPEG_HEADER_BITS_MIDL;

typedef struct _MPEG_HEADER_VERSION_BITS_MIDL {
    BYTE Bits;
} MPEG_HEADER_VERSION_BITS_MIDL;

typedef struct _DSMCC_SECTION {
  TID   TableId;
  __C89_NAMELESS union {
    MPEG_HEADER_BITS_MIDL S;
    WORD                  W;
  } Header;
  WORD  TableIdExtension;
  __C89_NAMELESS union {
    MPEG_HEADER_VERSION_BITS_MIDL S;
    BYTE                          B;
  } Version;
  BYTE  SectionNumber;
  BYTE  LastSectionNumber;
  BYTE  ProtocolDiscriminator;
  BYTE  DsmccType;
  WORD  MessageId;
  DWORD TransactionId;
  BYTE  Reserved;
  BYTE  AdaptationLength;
  WORD  MessageLength;
  BYTE  RemainingData[1];
} DSMCC_SECTION, *PDSMCC_SECTION;

typedef struct _DVB_EIT_FILTER_OPTIONS {
  WINBOOL fSpecifySegment;
  BYTE bSegment;
} DVB_EIT_FILTER_OPTIONS, *PDVB_EIT_FILTER_OPTIONS;

typedef struct {
  TID   TableId;
  __C89_NAMELESS union {
    MPEG_HEADER_BITS_MIDL S;
    WORD                  W;
  } Header;
  WORD  TableIdExtension;
  __C89_NAMELESS union {
    MPEG_HEADER_VERSION_BITS_MIDL S;
    BYTE                          B;
  } Version;
  BYTE  SectionNumber;
  BYTE  LastSectionNumber;
  BYTE  RemainingData[1];
} LONG_SECTION, *PLONG_SECTION;

typedef struct _MPE_ELEMENT {
  PID                 pid;
  BYTE                bComponentTag;
  struct _MPE_ELEMENT *pNext;
} MPE_ELEMENT, *PMPE_ELEMENT;

typedef struct _MPEG2_FILTER {
  BYTE                 bVersionNumber;
  WORD                 wFilterSize;
  WINBOOL              fUseRawFilteringBits;
  BYTE                 Filter[16];
  BYTE                 Mask[16];
  WINBOOL              fSpecifyTableIdExtension;
  WORD                 TableIdExtension;
  WINBOOL              fSpecifyVersion;
  BYTE                 Version;
  WINBOOL              fSpecifySectionNumber;
  BYTE                 SectionNumber;
  WINBOOL              fSpecifyCurrentNext;
  WINBOOL              fNext;
  WINBOOL              fSpecifyDsmccOptions;
  DSMCC_FILTER_OPTIONS Dsmcc;
  WINBOOL              fSpecifyAtscOptions;
  ATSC_FILTER_OPTIONS  Atsc;
} MPEG2_FILTER, *PMPEG2_FILTER;

typedef struct {
  BYTE                   bVersionNumber;
  WORD                   wFilterSize;
  WINBOOL                fUseRawFilteringBits;
  BYTE                   Filter[16];
  BYTE                   Mask[16];
  WINBOOL                fSpecifyTableIdExtension;
  WORD                   TableIdExtension;
  WINBOOL                fSpecifyVersion;
  BYTE                   Version;
  WINBOOL                fSpecifySectionNumber;
  BYTE                   SectionNumber;
  WINBOOL                fSpecifyCurrentNext;
  WINBOOL                fNext;
  WINBOOL                fSpecifyDsmccOptions;
  DSMCC_FILTER_OPTIONS   Dsmcc;
  WINBOOL                fSpecifyAtscOptions;
  ATSC_FILTER_OPTIONS    Atsc;
  WINBOOL                 fSpecifyDvbEitOptions;
  DVB_EIT_FILTER_OPTIONS Dvb_Eit;
} MPEG2_FILTER2, *PMPEG2_FILTER2;

typedef struct _MPEG_BCS_DEMUX {
  DWORD AVMGraphId;
} MPEG_BCS_DEMUX;

typedef struct _MPEG_WINSOCK {
  DWORD AVMGraphId;
} MPEG_WINSOCK;

typedef struct _MPEG_CONTEXT {
  MPEG_CONTEXT_TYPE Type;
  __C89_NAMELESS union {
    MPEG_BCS_DEMUX Demux;
    MPEG_WINSOCK   Winsock;
  } U;
} MPEG_CONTEXT, *PMPEG_CONTEXT;

typedef struct _MPEG_DATE {
  BYTE Date;
  BYTE Month;
  WORD Year;
} MPEG_DATE;

typedef struct _MPEG_TIME {
  BYTE Hours;
  BYTE Minutes;
  BYTE Seconds;
} MPEG_TIME;

typedef struct _MPEG_DATE_AND_TIME {
  MPEG_DATE D;
  MPEG_TIME T;
} MPEG_DATE_AND_TIME;

typedef MPEG_TIME MPEG_DURATION;

typedef struct {
  TID   TableId;
  __C89_NAMELESS union {
    MPEG_HEADER_BITS_MIDL S;
    WORD                  W;
  } Header;
  BYTE  SectionData[1];
} SECTION, *PSECTION;

typedef struct _MPEG_RQST_PACKET {
  DWORD    dwLength;
  PSECTION pSection;
} MPEG_RQST_PACKET, *PMPEG_RQST_PACKET;

typedef struct _MPEG_PACKET_LIST {
  WORD              wPacketCount;
  PMPEG_RQST_PACKET PacketList[1];
} MPEG_PACKET_LIST, *PMPEG_PACKET_LIST;

typedef struct _MPEG_STREAM_BUFFER {
  HRESULT hr;
  DWORD   dwDataBufferSize;
  DWORD   dwSizeOfDataRead;
  BYTE    *pDataBuffer;
} MPEG_STREAM_BUFFER, *PMPEG_STREAM_BUFFER;

#endif /*__INC_MPEG2STRUCTS__*/