This file is indexed.

/usr/include/thunderbird/nsIAbMDBDirectory.h is in thunderbird-dev 1:52.8.0-1~deb8u1.

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
/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM ../../../dist/idl/nsIAbMDBDirectory.idl
 */

#ifndef __gen_nsIAbMDBDirectory_h__
#define __gen_nsIAbMDBDirectory_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
class nsIFile; /* forward declaration */

class nsIAbDirectory; /* forward declaration */

class nsIAbCard; /* forward declaration */

class nsIAddrDatabase; /* forward declaration */

#define kMDBDirectoryRoot          "moz-abmdbdirectory://"
#define kMDBDirectoryRootLen       21

/* starting interface:    nsIAbMDBDirectory */
#define NS_IABMDBDIRECTORY_IID_STR "744072be-1ba0-46bc-af24-46e22567a2ea"

#define NS_IABMDBDIRECTORY_IID \
  {0x744072be, 0x1ba0, 0x46bc, \
    { 0xaf, 0x24, 0x46, 0xe2, 0x25, 0x67, 0xa2, 0xea }}

class NS_NO_VTABLE nsIAbMDBDirectory : public nsISupports {
 public:

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IABMDBDIRECTORY_IID)

  /* nsIAbDirectory addDirectory (in string uriName); */
  NS_IMETHOD AddDirectory(const char * uriName, nsIAbDirectory * *_retval) = 0;

  /* readonly attribute nsIFile databaseFile; */
  NS_IMETHOD GetDatabaseFile(nsIFile * *aDatabaseFile) = 0;

  /* readonly attribute nsIAddrDatabase database; */
  NS_IMETHOD GetDatabase(nsIAddrDatabase * *aDatabase) = 0;

  /* [noscript] void removeElementsFromAddressList (); */
  NS_IMETHOD RemoveElementsFromAddressList(void) = 0;

  /* void addMailListToDirectory (in nsIAbDirectory mailList); */
  NS_IMETHOD AddMailListToDirectory(nsIAbDirectory *mailList) = 0;

  /* void copyDBMailList (in nsIAbMDBDirectory srcListDB); */
  NS_IMETHOD CopyDBMailList(nsIAbMDBDirectory *srcListDB) = 0;

  /* void addAddressToList (in nsIAbCard card); */
  NS_IMETHOD AddAddressToList(nsIAbCard *card) = 0;

  /* void removeEmailAddressAt (in unsigned long aIndex); */
  NS_IMETHOD RemoveEmailAddressAt(uint32_t aIndex) = 0;

  /* attribute unsigned long dbRowID; */
  NS_IMETHOD GetDbRowID(uint32_t *aDbRowID) = 0;
  NS_IMETHOD SetDbRowID(uint32_t aDbRowID) = 0;

  /* [noscript] void notifyDirItemAdded (in nsISupports item); */
  NS_IMETHOD NotifyDirItemAdded(nsISupports *item) = 0;

  /* [noscript] void clearDatabase (); */
  NS_IMETHOD ClearDatabase(void) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIAbMDBDirectory, NS_IABMDBDIRECTORY_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIABMDBDIRECTORY \
  NS_IMETHOD AddDirectory(const char * uriName, nsIAbDirectory * *_retval) override; \
  NS_IMETHOD GetDatabaseFile(nsIFile * *aDatabaseFile) override; \
  NS_IMETHOD GetDatabase(nsIAddrDatabase * *aDatabase) override; \
  NS_IMETHOD RemoveElementsFromAddressList(void) override; \
  NS_IMETHOD AddMailListToDirectory(nsIAbDirectory *mailList) override; \
  NS_IMETHOD CopyDBMailList(nsIAbMDBDirectory *srcListDB) override; \
  NS_IMETHOD AddAddressToList(nsIAbCard *card) override; \
  NS_IMETHOD RemoveEmailAddressAt(uint32_t aIndex) override; \
  NS_IMETHOD GetDbRowID(uint32_t *aDbRowID) override; \
  NS_IMETHOD SetDbRowID(uint32_t aDbRowID) override; \
  NS_IMETHOD NotifyDirItemAdded(nsISupports *item) override; \
  NS_IMETHOD ClearDatabase(void) override; 

/* Use this macro when declaring the members of this interface when the
   class doesn't implement the interface. This is useful for forwarding. */
#define NS_DECL_NON_VIRTUAL_NSIABMDBDIRECTORY \
  NS_METHOD AddDirectory(const char * uriName, nsIAbDirectory * *_retval); \
  NS_METHOD GetDatabaseFile(nsIFile * *aDatabaseFile); \
  NS_METHOD GetDatabase(nsIAddrDatabase * *aDatabase); \
  NS_METHOD RemoveElementsFromAddressList(void); \
  NS_METHOD AddMailListToDirectory(nsIAbDirectory *mailList); \
  NS_METHOD CopyDBMailList(nsIAbMDBDirectory *srcListDB); \
  NS_METHOD AddAddressToList(nsIAbCard *card); \
  NS_METHOD RemoveEmailAddressAt(uint32_t aIndex); \
  NS_METHOD GetDbRowID(uint32_t *aDbRowID); \
  NS_METHOD SetDbRowID(uint32_t aDbRowID); \
  NS_METHOD NotifyDirItemAdded(nsISupports *item); \
  NS_METHOD ClearDatabase(void); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIABMDBDIRECTORY(_to) \
  NS_IMETHOD AddDirectory(const char * uriName, nsIAbDirectory * *_retval) override { return _to AddDirectory(uriName, _retval); } \
  NS_IMETHOD GetDatabaseFile(nsIFile * *aDatabaseFile) override { return _to GetDatabaseFile(aDatabaseFile); } \
  NS_IMETHOD GetDatabase(nsIAddrDatabase * *aDatabase) override { return _to GetDatabase(aDatabase); } \
  NS_IMETHOD RemoveElementsFromAddressList(void) override { return _to RemoveElementsFromAddressList(); } \
  NS_IMETHOD AddMailListToDirectory(nsIAbDirectory *mailList) override { return _to AddMailListToDirectory(mailList); } \
  NS_IMETHOD CopyDBMailList(nsIAbMDBDirectory *srcListDB) override { return _to CopyDBMailList(srcListDB); } \
  NS_IMETHOD AddAddressToList(nsIAbCard *card) override { return _to AddAddressToList(card); } \
  NS_IMETHOD RemoveEmailAddressAt(uint32_t aIndex) override { return _to RemoveEmailAddressAt(aIndex); } \
  NS_IMETHOD GetDbRowID(uint32_t *aDbRowID) override { return _to GetDbRowID(aDbRowID); } \
  NS_IMETHOD SetDbRowID(uint32_t aDbRowID) override { return _to SetDbRowID(aDbRowID); } \
  NS_IMETHOD NotifyDirItemAdded(nsISupports *item) override { return _to NotifyDirItemAdded(item); } \
  NS_IMETHOD ClearDatabase(void) override { return _to ClearDatabase(); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIABMDBDIRECTORY(_to) \
  NS_IMETHOD AddDirectory(const char * uriName, nsIAbDirectory * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->AddDirectory(uriName, _retval); } \
  NS_IMETHOD GetDatabaseFile(nsIFile * *aDatabaseFile) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDatabaseFile(aDatabaseFile); } \
  NS_IMETHOD GetDatabase(nsIAddrDatabase * *aDatabase) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDatabase(aDatabase); } \
  NS_IMETHOD RemoveElementsFromAddressList(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveElementsFromAddressList(); } \
  NS_IMETHOD AddMailListToDirectory(nsIAbDirectory *mailList) override { return !_to ? NS_ERROR_NULL_POINTER : _to->AddMailListToDirectory(mailList); } \
  NS_IMETHOD CopyDBMailList(nsIAbMDBDirectory *srcListDB) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CopyDBMailList(srcListDB); } \
  NS_IMETHOD AddAddressToList(nsIAbCard *card) override { return !_to ? NS_ERROR_NULL_POINTER : _to->AddAddressToList(card); } \
  NS_IMETHOD RemoveEmailAddressAt(uint32_t aIndex) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveEmailAddressAt(aIndex); } \
  NS_IMETHOD GetDbRowID(uint32_t *aDbRowID) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDbRowID(aDbRowID); } \
  NS_IMETHOD SetDbRowID(uint32_t aDbRowID) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDbRowID(aDbRowID); } \
  NS_IMETHOD NotifyDirItemAdded(nsISupports *item) override { return !_to ? NS_ERROR_NULL_POINTER : _to->NotifyDirItemAdded(item); } \
  NS_IMETHOD ClearDatabase(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearDatabase(); } 

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

/* Header file */
class nsAbMDBDirectory : public nsIAbMDBDirectory
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIABMDBDIRECTORY

  nsAbMDBDirectory();

private:
  ~nsAbMDBDirectory();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS(nsAbMDBDirectory, nsIAbMDBDirectory)

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

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

/* nsIAbDirectory addDirectory (in string uriName); */
NS_IMETHODIMP nsAbMDBDirectory::AddDirectory(const char * uriName, nsIAbDirectory * *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIFile databaseFile; */
NS_IMETHODIMP nsAbMDBDirectory::GetDatabaseFile(nsIFile * *aDatabaseFile)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIAddrDatabase database; */
NS_IMETHODIMP nsAbMDBDirectory::GetDatabase(nsIAddrDatabase * *aDatabase)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* [noscript] void removeElementsFromAddressList (); */
NS_IMETHODIMP nsAbMDBDirectory::RemoveElementsFromAddressList()
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void addMailListToDirectory (in nsIAbDirectory mailList); */
NS_IMETHODIMP nsAbMDBDirectory::AddMailListToDirectory(nsIAbDirectory *mailList)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void copyDBMailList (in nsIAbMDBDirectory srcListDB); */
NS_IMETHODIMP nsAbMDBDirectory::CopyDBMailList(nsIAbMDBDirectory *srcListDB)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void addAddressToList (in nsIAbCard card); */
NS_IMETHODIMP nsAbMDBDirectory::AddAddressToList(nsIAbCard *card)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void removeEmailAddressAt (in unsigned long aIndex); */
NS_IMETHODIMP nsAbMDBDirectory::RemoveEmailAddressAt(uint32_t aIndex)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute unsigned long dbRowID; */
NS_IMETHODIMP nsAbMDBDirectory::GetDbRowID(uint32_t *aDbRowID)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsAbMDBDirectory::SetDbRowID(uint32_t aDbRowID)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* [noscript] void notifyDirItemAdded (in nsISupports item); */
NS_IMETHODIMP nsAbMDBDirectory::NotifyDirItemAdded(nsISupports *item)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* [noscript] void clearDatabase (); */
NS_IMETHODIMP nsAbMDBDirectory::ClearDatabase()
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


#endif /* __gen_nsIAbMDBDirectory_h__ */