This file is indexed.

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

#ifndef __gen_nsILDAPOperation_h__
#define __gen_nsILDAPOperation_h__


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

#ifndef __gen_nsILDAPConnection_h__
#include "nsILDAPConnection.h"
#endif

#ifndef __gen_nsIAuthModule_h__
#include "nsIAuthModule.h"
#endif

/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif
class nsILDAPMessage; /* forward declaration */

class nsILDAPMessageListener; /* forward declaration */

class nsILDAPModification; /* forward declaration */

class nsIMutableArray; /* forward declaration */

class nsIArray; /* forward declaration */

#define NS_LDAPOPERATION_CONTRACTID "@mozilla.org/network/ldap-operation;1" 
typedef uint32_t  PRIntervalTime;


/* starting interface:    nsILDAPOperation */
#define NS_ILDAPOPERATION_IID_STR "4dfb1b19-fc8f-4525-92e7-f97b78a9747a"

#define NS_ILDAPOPERATION_IID \
  {0x4dfb1b19, 0xfc8f, 0x4525, \
    { 0x92, 0xe7, 0xf9, 0x7b, 0x78, 0xa9, 0x74, 0x7a }}

class NS_NO_VTABLE nsILDAPOperation : public nsISupports {
 public:

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ILDAPOPERATION_IID)

  /* readonly attribute nsILDAPConnection connection; */
  NS_IMETHOD GetConnection(nsILDAPConnection * *aConnection) = 0;

  /* readonly attribute nsILDAPMessageListener messageListener; */
  NS_IMETHOD GetMessageListener(nsILDAPMessageListener * *aMessageListener) = 0;

  /* readonly attribute long messageID; */
  NS_IMETHOD GetMessageID(int32_t *aMessageID) = 0;

  /* attribute nsISupports closure; */
  NS_IMETHOD GetClosure(nsISupports * *aClosure) = 0;
  NS_IMETHOD SetClosure(nsISupports *aClosure) = 0;

  enum {
    NO_LIMIT = 0
  };

  /* attribute nsIMutableArray serverControls; */
  NS_IMETHOD GetServerControls(nsIMutableArray * *aServerControls) = 0;
  NS_IMETHOD SetServerControls(nsIMutableArray *aServerControls) = 0;

  /* attribute nsIMutableArray clientControls; */
  NS_IMETHOD GetClientControls(nsIMutableArray * *aClientControls) = 0;
  NS_IMETHOD SetClientControls(nsIMutableArray *aClientControls) = 0;

  /* void init (in nsILDAPConnection aConnection, in nsILDAPMessageListener aMessageListener, in nsISupports aClosure); */
  NS_IMETHOD Init(nsILDAPConnection *aConnection, nsILDAPMessageListener *aMessageListener, nsISupports *aClosure) = 0;

  /* void simpleBind (in AUTF8String passwd); */
  NS_IMETHOD SimpleBind(const nsACString & passwd) = 0;

  /* void saslBind (in ACString service, in ACString mechanism, in nsIAuthModule authModule); */
  NS_IMETHOD SaslBind(const nsACString & service, const nsACString & mechanism, nsIAuthModule *authModule) = 0;

  /* void saslStep (in string token, in unsigned long tokenLen); */
  NS_IMETHOD SaslStep(const char * token, uint32_t tokenLen) = 0;

  /* void addExt (in AUTF8String aBaseDn, in nsIArray aMods); */
  NS_IMETHOD AddExt(const nsACString & aBaseDn, nsIArray *aMods) = 0;

  /* void deleteExt (in AUTF8String aBaseDn); */
  NS_IMETHOD DeleteExt(const nsACString & aBaseDn) = 0;

  /* void modifyExt (in AUTF8String aBaseDn, in nsIArray aMods); */
  NS_IMETHOD ModifyExt(const nsACString & aBaseDn, nsIArray *aMods) = 0;

  /* void rename (in AUTF8String aBaseDn, in AUTF8String aNewRDn, in AUTF8String aNewParent, in boolean aDeleteOldRDn); */
  NS_IMETHOD Rename(const nsACString & aBaseDn, const nsACString & aNewRDn, const nsACString & aNewParent, bool aDeleteOldRDn) = 0;

  /* void searchExt (in AUTF8String aBaseDn, in int32_t aScope, in AUTF8String aFilter, in ACString aAttributes, in PRIntervalTime aTimeOut, in int32_t aSizeLimit); */
  NS_IMETHOD SearchExt(const nsACString & aBaseDn, int32_t aScope, const nsACString & aFilter, const nsACString & aAttributes, PRIntervalTime aTimeOut, int32_t aSizeLimit) = 0;

  /* void abandonExt (); */
  NS_IMETHOD AbandonExt(void) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsILDAPOperation, NS_ILDAPOPERATION_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSILDAPOPERATION \
  NS_IMETHOD GetConnection(nsILDAPConnection * *aConnection) override; \
  NS_IMETHOD GetMessageListener(nsILDAPMessageListener * *aMessageListener) override; \
  NS_IMETHOD GetMessageID(int32_t *aMessageID) override; \
  NS_IMETHOD GetClosure(nsISupports * *aClosure) override; \
  NS_IMETHOD SetClosure(nsISupports *aClosure) override; \
  NS_IMETHOD GetServerControls(nsIMutableArray * *aServerControls) override; \
  NS_IMETHOD SetServerControls(nsIMutableArray *aServerControls) override; \
  NS_IMETHOD GetClientControls(nsIMutableArray * *aClientControls) override; \
  NS_IMETHOD SetClientControls(nsIMutableArray *aClientControls) override; \
  NS_IMETHOD Init(nsILDAPConnection *aConnection, nsILDAPMessageListener *aMessageListener, nsISupports *aClosure) override; \
  NS_IMETHOD SimpleBind(const nsACString & passwd) override; \
  NS_IMETHOD SaslBind(const nsACString & service, const nsACString & mechanism, nsIAuthModule *authModule) override; \
  NS_IMETHOD SaslStep(const char * token, uint32_t tokenLen) override; \
  NS_IMETHOD AddExt(const nsACString & aBaseDn, nsIArray *aMods) override; \
  NS_IMETHOD DeleteExt(const nsACString & aBaseDn) override; \
  NS_IMETHOD ModifyExt(const nsACString & aBaseDn, nsIArray *aMods) override; \
  NS_IMETHOD Rename(const nsACString & aBaseDn, const nsACString & aNewRDn, const nsACString & aNewParent, bool aDeleteOldRDn) override; \
  NS_IMETHOD SearchExt(const nsACString & aBaseDn, int32_t aScope, const nsACString & aFilter, const nsACString & aAttributes, PRIntervalTime aTimeOut, int32_t aSizeLimit) override; \
  NS_IMETHOD AbandonExt(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_NSILDAPOPERATION \
  NS_METHOD GetConnection(nsILDAPConnection * *aConnection); \
  NS_METHOD GetMessageListener(nsILDAPMessageListener * *aMessageListener); \
  NS_METHOD GetMessageID(int32_t *aMessageID); \
  NS_METHOD GetClosure(nsISupports * *aClosure); \
  NS_METHOD SetClosure(nsISupports *aClosure); \
  NS_METHOD GetServerControls(nsIMutableArray * *aServerControls); \
  NS_METHOD SetServerControls(nsIMutableArray *aServerControls); \
  NS_METHOD GetClientControls(nsIMutableArray * *aClientControls); \
  NS_METHOD SetClientControls(nsIMutableArray *aClientControls); \
  NS_METHOD Init(nsILDAPConnection *aConnection, nsILDAPMessageListener *aMessageListener, nsISupports *aClosure); \
  NS_METHOD SimpleBind(const nsACString & passwd); \
  NS_METHOD SaslBind(const nsACString & service, const nsACString & mechanism, nsIAuthModule *authModule); \
  NS_METHOD SaslStep(const char * token, uint32_t tokenLen); \
  NS_METHOD AddExt(const nsACString & aBaseDn, nsIArray *aMods); \
  NS_METHOD DeleteExt(const nsACString & aBaseDn); \
  NS_METHOD ModifyExt(const nsACString & aBaseDn, nsIArray *aMods); \
  NS_METHOD Rename(const nsACString & aBaseDn, const nsACString & aNewRDn, const nsACString & aNewParent, bool aDeleteOldRDn); \
  NS_METHOD SearchExt(const nsACString & aBaseDn, int32_t aScope, const nsACString & aFilter, const nsACString & aAttributes, PRIntervalTime aTimeOut, int32_t aSizeLimit); \
  NS_METHOD AbandonExt(void); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSILDAPOPERATION(_to) \
  NS_IMETHOD GetConnection(nsILDAPConnection * *aConnection) override { return _to GetConnection(aConnection); } \
  NS_IMETHOD GetMessageListener(nsILDAPMessageListener * *aMessageListener) override { return _to GetMessageListener(aMessageListener); } \
  NS_IMETHOD GetMessageID(int32_t *aMessageID) override { return _to GetMessageID(aMessageID); } \
  NS_IMETHOD GetClosure(nsISupports * *aClosure) override { return _to GetClosure(aClosure); } \
  NS_IMETHOD SetClosure(nsISupports *aClosure) override { return _to SetClosure(aClosure); } \
  NS_IMETHOD GetServerControls(nsIMutableArray * *aServerControls) override { return _to GetServerControls(aServerControls); } \
  NS_IMETHOD SetServerControls(nsIMutableArray *aServerControls) override { return _to SetServerControls(aServerControls); } \
  NS_IMETHOD GetClientControls(nsIMutableArray * *aClientControls) override { return _to GetClientControls(aClientControls); } \
  NS_IMETHOD SetClientControls(nsIMutableArray *aClientControls) override { return _to SetClientControls(aClientControls); } \
  NS_IMETHOD Init(nsILDAPConnection *aConnection, nsILDAPMessageListener *aMessageListener, nsISupports *aClosure) override { return _to Init(aConnection, aMessageListener, aClosure); } \
  NS_IMETHOD SimpleBind(const nsACString & passwd) override { return _to SimpleBind(passwd); } \
  NS_IMETHOD SaslBind(const nsACString & service, const nsACString & mechanism, nsIAuthModule *authModule) override { return _to SaslBind(service, mechanism, authModule); } \
  NS_IMETHOD SaslStep(const char * token, uint32_t tokenLen) override { return _to SaslStep(token, tokenLen); } \
  NS_IMETHOD AddExt(const nsACString & aBaseDn, nsIArray *aMods) override { return _to AddExt(aBaseDn, aMods); } \
  NS_IMETHOD DeleteExt(const nsACString & aBaseDn) override { return _to DeleteExt(aBaseDn); } \
  NS_IMETHOD ModifyExt(const nsACString & aBaseDn, nsIArray *aMods) override { return _to ModifyExt(aBaseDn, aMods); } \
  NS_IMETHOD Rename(const nsACString & aBaseDn, const nsACString & aNewRDn, const nsACString & aNewParent, bool aDeleteOldRDn) override { return _to Rename(aBaseDn, aNewRDn, aNewParent, aDeleteOldRDn); } \
  NS_IMETHOD SearchExt(const nsACString & aBaseDn, int32_t aScope, const nsACString & aFilter, const nsACString & aAttributes, PRIntervalTime aTimeOut, int32_t aSizeLimit) override { return _to SearchExt(aBaseDn, aScope, aFilter, aAttributes, aTimeOut, aSizeLimit); } \
  NS_IMETHOD AbandonExt(void) override { return _to AbandonExt(); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSILDAPOPERATION(_to) \
  NS_IMETHOD GetConnection(nsILDAPConnection * *aConnection) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetConnection(aConnection); } \
  NS_IMETHOD GetMessageListener(nsILDAPMessageListener * *aMessageListener) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMessageListener(aMessageListener); } \
  NS_IMETHOD GetMessageID(int32_t *aMessageID) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMessageID(aMessageID); } \
  NS_IMETHOD GetClosure(nsISupports * *aClosure) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClosure(aClosure); } \
  NS_IMETHOD SetClosure(nsISupports *aClosure) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetClosure(aClosure); } \
  NS_IMETHOD GetServerControls(nsIMutableArray * *aServerControls) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetServerControls(aServerControls); } \
  NS_IMETHOD SetServerControls(nsIMutableArray *aServerControls) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetServerControls(aServerControls); } \
  NS_IMETHOD GetClientControls(nsIMutableArray * *aClientControls) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClientControls(aClientControls); } \
  NS_IMETHOD SetClientControls(nsIMutableArray *aClientControls) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetClientControls(aClientControls); } \
  NS_IMETHOD Init(nsILDAPConnection *aConnection, nsILDAPMessageListener *aMessageListener, nsISupports *aClosure) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Init(aConnection, aMessageListener, aClosure); } \
  NS_IMETHOD SimpleBind(const nsACString & passwd) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SimpleBind(passwd); } \
  NS_IMETHOD SaslBind(const nsACString & service, const nsACString & mechanism, nsIAuthModule *authModule) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SaslBind(service, mechanism, authModule); } \
  NS_IMETHOD SaslStep(const char * token, uint32_t tokenLen) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SaslStep(token, tokenLen); } \
  NS_IMETHOD AddExt(const nsACString & aBaseDn, nsIArray *aMods) override { return !_to ? NS_ERROR_NULL_POINTER : _to->AddExt(aBaseDn, aMods); } \
  NS_IMETHOD DeleteExt(const nsACString & aBaseDn) override { return !_to ? NS_ERROR_NULL_POINTER : _to->DeleteExt(aBaseDn); } \
  NS_IMETHOD ModifyExt(const nsACString & aBaseDn, nsIArray *aMods) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ModifyExt(aBaseDn, aMods); } \
  NS_IMETHOD Rename(const nsACString & aBaseDn, const nsACString & aNewRDn, const nsACString & aNewParent, bool aDeleteOldRDn) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Rename(aBaseDn, aNewRDn, aNewParent, aDeleteOldRDn); } \
  NS_IMETHOD SearchExt(const nsACString & aBaseDn, int32_t aScope, const nsACString & aFilter, const nsACString & aAttributes, PRIntervalTime aTimeOut, int32_t aSizeLimit) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SearchExt(aBaseDn, aScope, aFilter, aAttributes, aTimeOut, aSizeLimit); } \
  NS_IMETHOD AbandonExt(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->AbandonExt(); } 

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

/* Header file */
class nsLDAPOperation : public nsILDAPOperation
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSILDAPOPERATION

  nsLDAPOperation();

private:
  ~nsLDAPOperation();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS(nsLDAPOperation, nsILDAPOperation)

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

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

/* readonly attribute nsILDAPConnection connection; */
NS_IMETHODIMP nsLDAPOperation::GetConnection(nsILDAPConnection * *aConnection)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsILDAPMessageListener messageListener; */
NS_IMETHODIMP nsLDAPOperation::GetMessageListener(nsILDAPMessageListener * *aMessageListener)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute long messageID; */
NS_IMETHODIMP nsLDAPOperation::GetMessageID(int32_t *aMessageID)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsISupports closure; */
NS_IMETHODIMP nsLDAPOperation::GetClosure(nsISupports * *aClosure)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsLDAPOperation::SetClosure(nsISupports *aClosure)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsIMutableArray serverControls; */
NS_IMETHODIMP nsLDAPOperation::GetServerControls(nsIMutableArray * *aServerControls)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsLDAPOperation::SetServerControls(nsIMutableArray *aServerControls)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsIMutableArray clientControls; */
NS_IMETHODIMP nsLDAPOperation::GetClientControls(nsIMutableArray * *aClientControls)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsLDAPOperation::SetClientControls(nsIMutableArray *aClientControls)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void init (in nsILDAPConnection aConnection, in nsILDAPMessageListener aMessageListener, in nsISupports aClosure); */
NS_IMETHODIMP nsLDAPOperation::Init(nsILDAPConnection *aConnection, nsILDAPMessageListener *aMessageListener, nsISupports *aClosure)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void simpleBind (in AUTF8String passwd); */
NS_IMETHODIMP nsLDAPOperation::SimpleBind(const nsACString & passwd)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void saslBind (in ACString service, in ACString mechanism, in nsIAuthModule authModule); */
NS_IMETHODIMP nsLDAPOperation::SaslBind(const nsACString & service, const nsACString & mechanism, nsIAuthModule *authModule)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void saslStep (in string token, in unsigned long tokenLen); */
NS_IMETHODIMP nsLDAPOperation::SaslStep(const char * token, uint32_t tokenLen)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void addExt (in AUTF8String aBaseDn, in nsIArray aMods); */
NS_IMETHODIMP nsLDAPOperation::AddExt(const nsACString & aBaseDn, nsIArray *aMods)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void deleteExt (in AUTF8String aBaseDn); */
NS_IMETHODIMP nsLDAPOperation::DeleteExt(const nsACString & aBaseDn)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void modifyExt (in AUTF8String aBaseDn, in nsIArray aMods); */
NS_IMETHODIMP nsLDAPOperation::ModifyExt(const nsACString & aBaseDn, nsIArray *aMods)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void rename (in AUTF8String aBaseDn, in AUTF8String aNewRDn, in AUTF8String aNewParent, in boolean aDeleteOldRDn); */
NS_IMETHODIMP nsLDAPOperation::Rename(const nsACString & aBaseDn, const nsACString & aNewRDn, const nsACString & aNewParent, bool aDeleteOldRDn)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void searchExt (in AUTF8String aBaseDn, in int32_t aScope, in AUTF8String aFilter, in ACString aAttributes, in PRIntervalTime aTimeOut, in int32_t aSizeLimit); */
NS_IMETHODIMP nsLDAPOperation::SearchExt(const nsACString & aBaseDn, int32_t aScope, const nsACString & aFilter, const nsACString & aAttributes, PRIntervalTime aTimeOut, int32_t aSizeLimit)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void abandonExt (); */
NS_IMETHODIMP nsLDAPOperation::AbandonExt()
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


#endif /* __gen_nsILDAPOperation_h__ */