This file is indexed.

/usr/include/thunderbird/xpctest_attributes.h is in thunderbird-dev 1:38.6.0+build1-0ubuntu1.

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
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM ../../../dist/idl/xpctest_attributes.idl
 */

#ifndef __gen_xpctest_attributes_h__
#define __gen_xpctest_attributes_h__


#ifndef __gen_nsISupports_h__
#include "nsISupports.h"
#endif

/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif

/* starting interface:    nsIXPCTestObjectReadOnly */
#define NS_IXPCTESTOBJECTREADONLY_IID_STR "42fbd9f6-b12d-47ef-b7a1-02d73c11fe53"

#define NS_IXPCTESTOBJECTREADONLY_IID \
  {0x42fbd9f6, 0xb12d, 0x47ef, \
    { 0xb7, 0xa1, 0x02, 0xd7, 0x3c, 0x11, 0xfe, 0x53 }}

class NS_NO_VTABLE nsIXPCTestObjectReadOnly : public nsISupports {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCTESTOBJECTREADONLY_IID)

  /* readonly attribute string strReadOnly; */
  NS_IMETHOD GetStrReadOnly(char * *aStrReadOnly) = 0;

  /* readonly attribute boolean boolReadOnly; */
  NS_IMETHOD GetBoolReadOnly(bool *aBoolReadOnly) = 0;

  /* readonly attribute short shortReadOnly; */
  NS_IMETHOD GetShortReadOnly(int16_t *aShortReadOnly) = 0;

  /* readonly attribute long longReadOnly; */
  NS_IMETHOD GetLongReadOnly(int32_t *aLongReadOnly) = 0;

  /* readonly attribute float floatReadOnly; */
  NS_IMETHOD GetFloatReadOnly(float *aFloatReadOnly) = 0;

  /* readonly attribute char charReadOnly; */
  NS_IMETHOD GetCharReadOnly(char *aCharReadOnly) = 0;

  /* readonly attribute PRTime timeReadOnly; */
  NS_IMETHOD GetTimeReadOnly(PRTime *aTimeReadOnly) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCTestObjectReadOnly, NS_IXPCTESTOBJECTREADONLY_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIXPCTESTOBJECTREADONLY \
  NS_IMETHOD GetStrReadOnly(char * *aStrReadOnly) override; \
  NS_IMETHOD GetBoolReadOnly(bool *aBoolReadOnly) override; \
  NS_IMETHOD GetShortReadOnly(int16_t *aShortReadOnly) override; \
  NS_IMETHOD GetLongReadOnly(int32_t *aLongReadOnly) override; \
  NS_IMETHOD GetFloatReadOnly(float *aFloatReadOnly) override; \
  NS_IMETHOD GetCharReadOnly(char *aCharReadOnly) override; \
  NS_IMETHOD GetTimeReadOnly(PRTime *aTimeReadOnly) override; 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIXPCTESTOBJECTREADONLY(_to) \
  NS_IMETHOD GetStrReadOnly(char * *aStrReadOnly) override { return _to GetStrReadOnly(aStrReadOnly); } \
  NS_IMETHOD GetBoolReadOnly(bool *aBoolReadOnly) override { return _to GetBoolReadOnly(aBoolReadOnly); } \
  NS_IMETHOD GetShortReadOnly(int16_t *aShortReadOnly) override { return _to GetShortReadOnly(aShortReadOnly); } \
  NS_IMETHOD GetLongReadOnly(int32_t *aLongReadOnly) override { return _to GetLongReadOnly(aLongReadOnly); } \
  NS_IMETHOD GetFloatReadOnly(float *aFloatReadOnly) override { return _to GetFloatReadOnly(aFloatReadOnly); } \
  NS_IMETHOD GetCharReadOnly(char *aCharReadOnly) override { return _to GetCharReadOnly(aCharReadOnly); } \
  NS_IMETHOD GetTimeReadOnly(PRTime *aTimeReadOnly) override { return _to GetTimeReadOnly(aTimeReadOnly); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIXPCTESTOBJECTREADONLY(_to) \
  NS_IMETHOD GetStrReadOnly(char * *aStrReadOnly) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetStrReadOnly(aStrReadOnly); } \
  NS_IMETHOD GetBoolReadOnly(bool *aBoolReadOnly) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetBoolReadOnly(aBoolReadOnly); } \
  NS_IMETHOD GetShortReadOnly(int16_t *aShortReadOnly) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetShortReadOnly(aShortReadOnly); } \
  NS_IMETHOD GetLongReadOnly(int32_t *aLongReadOnly) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetLongReadOnly(aLongReadOnly); } \
  NS_IMETHOD GetFloatReadOnly(float *aFloatReadOnly) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFloatReadOnly(aFloatReadOnly); } \
  NS_IMETHOD GetCharReadOnly(char *aCharReadOnly) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCharReadOnly(aCharReadOnly); } \
  NS_IMETHOD GetTimeReadOnly(PRTime *aTimeReadOnly) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTimeReadOnly(aTimeReadOnly); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsXPCTestObjectReadOnly : public nsIXPCTestObjectReadOnly
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIXPCTESTOBJECTREADONLY

  nsXPCTestObjectReadOnly();

private:
  ~nsXPCTestObjectReadOnly();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS(nsXPCTestObjectReadOnly, nsIXPCTestObjectReadOnly)

nsXPCTestObjectReadOnly::nsXPCTestObjectReadOnly()
{
  /* member initializers and constructor code */
}

nsXPCTestObjectReadOnly::~nsXPCTestObjectReadOnly()
{
  /* destructor code */
}

/* readonly attribute string strReadOnly; */
NS_IMETHODIMP nsXPCTestObjectReadOnly::GetStrReadOnly(char * *aStrReadOnly)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute boolean boolReadOnly; */
NS_IMETHODIMP nsXPCTestObjectReadOnly::GetBoolReadOnly(bool *aBoolReadOnly)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute short shortReadOnly; */
NS_IMETHODIMP nsXPCTestObjectReadOnly::GetShortReadOnly(int16_t *aShortReadOnly)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute long longReadOnly; */
NS_IMETHODIMP nsXPCTestObjectReadOnly::GetLongReadOnly(int32_t *aLongReadOnly)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute float floatReadOnly; */
NS_IMETHODIMP nsXPCTestObjectReadOnly::GetFloatReadOnly(float *aFloatReadOnly)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute char charReadOnly; */
NS_IMETHODIMP nsXPCTestObjectReadOnly::GetCharReadOnly(char *aCharReadOnly)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute PRTime timeReadOnly; */
NS_IMETHODIMP nsXPCTestObjectReadOnly::GetTimeReadOnly(PRTime *aTimeReadOnly)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsIXPCTestObjectReadWrite */
#define NS_IXPCTESTOBJECTREADWRITE_IID_STR "f07529b0-a479-4954-aba5-ab3142c6b1cb"

#define NS_IXPCTESTOBJECTREADWRITE_IID \
  {0xf07529b0, 0xa479, 0x4954, \
    { 0xab, 0xa5, 0xab, 0x31, 0x42, 0xc6, 0xb1, 0xcb }}

class NS_NO_VTABLE nsIXPCTestObjectReadWrite : public nsISupports {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCTESTOBJECTREADWRITE_IID)

  /* attribute string stringProperty; */
  NS_IMETHOD GetStringProperty(char * *aStringProperty) = 0;
  NS_IMETHOD SetStringProperty(const char * aStringProperty) = 0;

  /* attribute boolean booleanProperty; */
  NS_IMETHOD GetBooleanProperty(bool *aBooleanProperty) = 0;
  NS_IMETHOD SetBooleanProperty(bool aBooleanProperty) = 0;

  /* attribute short shortProperty; */
  NS_IMETHOD GetShortProperty(int16_t *aShortProperty) = 0;
  NS_IMETHOD SetShortProperty(int16_t aShortProperty) = 0;

  /* attribute long longProperty; */
  NS_IMETHOD GetLongProperty(int32_t *aLongProperty) = 0;
  NS_IMETHOD SetLongProperty(int32_t aLongProperty) = 0;

  /* attribute float floatProperty; */
  NS_IMETHOD GetFloatProperty(float *aFloatProperty) = 0;
  NS_IMETHOD SetFloatProperty(float aFloatProperty) = 0;

  /* attribute char charProperty; */
  NS_IMETHOD GetCharProperty(char *aCharProperty) = 0;
  NS_IMETHOD SetCharProperty(char aCharProperty) = 0;

  /* attribute PRTime timeProperty; */
  NS_IMETHOD GetTimeProperty(PRTime *aTimeProperty) = 0;
  NS_IMETHOD SetTimeProperty(PRTime aTimeProperty) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCTestObjectReadWrite, NS_IXPCTESTOBJECTREADWRITE_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIXPCTESTOBJECTREADWRITE \
  NS_IMETHOD GetStringProperty(char * *aStringProperty) override; \
  NS_IMETHOD SetStringProperty(const char * aStringProperty) override; \
  NS_IMETHOD GetBooleanProperty(bool *aBooleanProperty) override; \
  NS_IMETHOD SetBooleanProperty(bool aBooleanProperty) override; \
  NS_IMETHOD GetShortProperty(int16_t *aShortProperty) override; \
  NS_IMETHOD SetShortProperty(int16_t aShortProperty) override; \
  NS_IMETHOD GetLongProperty(int32_t *aLongProperty) override; \
  NS_IMETHOD SetLongProperty(int32_t aLongProperty) override; \
  NS_IMETHOD GetFloatProperty(float *aFloatProperty) override; \
  NS_IMETHOD SetFloatProperty(float aFloatProperty) override; \
  NS_IMETHOD GetCharProperty(char *aCharProperty) override; \
  NS_IMETHOD SetCharProperty(char aCharProperty) override; \
  NS_IMETHOD GetTimeProperty(PRTime *aTimeProperty) override; \
  NS_IMETHOD SetTimeProperty(PRTime aTimeProperty) override; 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIXPCTESTOBJECTREADWRITE(_to) \
  NS_IMETHOD GetStringProperty(char * *aStringProperty) override { return _to GetStringProperty(aStringProperty); } \
  NS_IMETHOD SetStringProperty(const char * aStringProperty) override { return _to SetStringProperty(aStringProperty); } \
  NS_IMETHOD GetBooleanProperty(bool *aBooleanProperty) override { return _to GetBooleanProperty(aBooleanProperty); } \
  NS_IMETHOD SetBooleanProperty(bool aBooleanProperty) override { return _to SetBooleanProperty(aBooleanProperty); } \
  NS_IMETHOD GetShortProperty(int16_t *aShortProperty) override { return _to GetShortProperty(aShortProperty); } \
  NS_IMETHOD SetShortProperty(int16_t aShortProperty) override { return _to SetShortProperty(aShortProperty); } \
  NS_IMETHOD GetLongProperty(int32_t *aLongProperty) override { return _to GetLongProperty(aLongProperty); } \
  NS_IMETHOD SetLongProperty(int32_t aLongProperty) override { return _to SetLongProperty(aLongProperty); } \
  NS_IMETHOD GetFloatProperty(float *aFloatProperty) override { return _to GetFloatProperty(aFloatProperty); } \
  NS_IMETHOD SetFloatProperty(float aFloatProperty) override { return _to SetFloatProperty(aFloatProperty); } \
  NS_IMETHOD GetCharProperty(char *aCharProperty) override { return _to GetCharProperty(aCharProperty); } \
  NS_IMETHOD SetCharProperty(char aCharProperty) override { return _to SetCharProperty(aCharProperty); } \
  NS_IMETHOD GetTimeProperty(PRTime *aTimeProperty) override { return _to GetTimeProperty(aTimeProperty); } \
  NS_IMETHOD SetTimeProperty(PRTime aTimeProperty) override { return _to SetTimeProperty(aTimeProperty); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIXPCTESTOBJECTREADWRITE(_to) \
  NS_IMETHOD GetStringProperty(char * *aStringProperty) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetStringProperty(aStringProperty); } \
  NS_IMETHOD SetStringProperty(const char * aStringProperty) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetStringProperty(aStringProperty); } \
  NS_IMETHOD GetBooleanProperty(bool *aBooleanProperty) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetBooleanProperty(aBooleanProperty); } \
  NS_IMETHOD SetBooleanProperty(bool aBooleanProperty) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetBooleanProperty(aBooleanProperty); } \
  NS_IMETHOD GetShortProperty(int16_t *aShortProperty) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetShortProperty(aShortProperty); } \
  NS_IMETHOD SetShortProperty(int16_t aShortProperty) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetShortProperty(aShortProperty); } \
  NS_IMETHOD GetLongProperty(int32_t *aLongProperty) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetLongProperty(aLongProperty); } \
  NS_IMETHOD SetLongProperty(int32_t aLongProperty) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetLongProperty(aLongProperty); } \
  NS_IMETHOD GetFloatProperty(float *aFloatProperty) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFloatProperty(aFloatProperty); } \
  NS_IMETHOD SetFloatProperty(float aFloatProperty) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetFloatProperty(aFloatProperty); } \
  NS_IMETHOD GetCharProperty(char *aCharProperty) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCharProperty(aCharProperty); } \
  NS_IMETHOD SetCharProperty(char aCharProperty) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetCharProperty(aCharProperty); } \
  NS_IMETHOD GetTimeProperty(PRTime *aTimeProperty) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTimeProperty(aTimeProperty); } \
  NS_IMETHOD SetTimeProperty(PRTime aTimeProperty) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetTimeProperty(aTimeProperty); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsXPCTestObjectReadWrite : public nsIXPCTestObjectReadWrite
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIXPCTESTOBJECTREADWRITE

  nsXPCTestObjectReadWrite();

private:
  ~nsXPCTestObjectReadWrite();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS(nsXPCTestObjectReadWrite, nsIXPCTestObjectReadWrite)

nsXPCTestObjectReadWrite::nsXPCTestObjectReadWrite()
{
  /* member initializers and constructor code */
}

nsXPCTestObjectReadWrite::~nsXPCTestObjectReadWrite()
{
  /* destructor code */
}

/* attribute string stringProperty; */
NS_IMETHODIMP nsXPCTestObjectReadWrite::GetStringProperty(char * *aStringProperty)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsXPCTestObjectReadWrite::SetStringProperty(const char * aStringProperty)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean booleanProperty; */
NS_IMETHODIMP nsXPCTestObjectReadWrite::GetBooleanProperty(bool *aBooleanProperty)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsXPCTestObjectReadWrite::SetBooleanProperty(bool aBooleanProperty)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute short shortProperty; */
NS_IMETHODIMP nsXPCTestObjectReadWrite::GetShortProperty(int16_t *aShortProperty)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsXPCTestObjectReadWrite::SetShortProperty(int16_t aShortProperty)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute long longProperty; */
NS_IMETHODIMP nsXPCTestObjectReadWrite::GetLongProperty(int32_t *aLongProperty)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsXPCTestObjectReadWrite::SetLongProperty(int32_t aLongProperty)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute float floatProperty; */
NS_IMETHODIMP nsXPCTestObjectReadWrite::GetFloatProperty(float *aFloatProperty)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsXPCTestObjectReadWrite::SetFloatProperty(float aFloatProperty)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute char charProperty; */
NS_IMETHODIMP nsXPCTestObjectReadWrite::GetCharProperty(char *aCharProperty)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsXPCTestObjectReadWrite::SetCharProperty(char aCharProperty)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute PRTime timeProperty; */
NS_IMETHODIMP nsXPCTestObjectReadWrite::GetTimeProperty(PRTime *aTimeProperty)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsXPCTestObjectReadWrite::SetTimeProperty(PRTime aTimeProperty)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


#endif /* __gen_xpctest_attributes_h__ */