This file is indexed.

/usr/include/thunderbird-11.0.1/nsIImapProtocol.h is in thunderbird-dev 11.0.1+build1-0ubuntu2.

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
/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM /build/buildd/thunderbird-11.0.1+build1/build-tree/mozilla/mailnews/imap/public/nsIImapProtocol.idl
 */

#ifndef __gen_nsIImapProtocol_h__
#define __gen_nsIImapProtocol_h__


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

#ifndef __gen_nsIStreamListener_h__
#include "nsIStreamListener.h"
#endif

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

class nsIURI; /* forward declaration */

class nsIImapUrl; /* forward declaration */

class nsIEventTarget; /* forward declaration */

class nsIImapProtocol; /* forward declaration */

class nsIImapIncomingServer; /* forward declaration */

class nsIMsgFolder; /* forward declaration */

class nsIImapHostSessionList; /* forward declaration */

class nsIMsgWindow; /* forward declaration */


/* starting interface:    nsIImapProtocol */
#define NS_IIMAPPROTOCOL_IID_STR "1c3bbfa9-69f7-4716-8986-2dba10cefb09"

#define NS_IIMAPPROTOCOL_IID \
  {0x1c3bbfa9, 0x69f7, 0x4716, \
    { 0x89, 0x86, 0x2d, 0xba, 0x10, 0xce, 0xfb, 0x09 }}

class NS_NO_VTABLE NS_SCRIPTABLE nsIImapProtocol : public nsISupports {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IIMAPPROTOCOL_IID)

  /* void LoadImapUrl (in nsIURI aUrl, in nsISupports aConsumer); */
  NS_SCRIPTABLE NS_IMETHOD LoadImapUrl(nsIURI *aUrl, nsISupports *aConsumer) = 0;

  /* void IsBusy (out boolean aIsConnectionBusy, out boolean isInboxConnection); */
  NS_SCRIPTABLE NS_IMETHOD IsBusy(bool *aIsConnectionBusy NS_OUTPARAM, bool *isInboxConnection NS_OUTPARAM) = 0;

  /* void CanHandleUrl (in nsIImapUrl aImapUrl, out boolean aCanRunUrl, out boolean hasToWait); */
  NS_SCRIPTABLE NS_IMETHOD CanHandleUrl(nsIImapUrl *aImapUrl, bool *aCanRunUrl NS_OUTPARAM, bool *hasToWait NS_OUTPARAM) = 0;

  /* void Initialize (in nsIImapHostSessionList aHostSessionList, in nsIImapIncomingServer aServer, in nsIEventTarget aSinkEventTarget); */
  NS_SCRIPTABLE NS_IMETHOD Initialize(nsIImapHostSessionList *aHostSessionList, nsIImapIncomingServer *aServer, nsIEventTarget *aSinkEventTarget) = 0;

  /* void NotifyBodysToDownload (out unsigned long keys, in unsigned long count); */
  NS_SCRIPTABLE NS_IMETHOD NotifyBodysToDownload(PRUint32 *keys NS_OUTPARAM, PRUint32 count) = 0;

  /* void GetFlagsForUID (in unsigned long uid, out boolean foundIt, out unsigned short flags, out string customFlags); */
  NS_SCRIPTABLE NS_IMETHOD GetFlagsForUID(PRUint32 uid, bool *foundIt NS_OUTPARAM, PRUint16 *flags NS_OUTPARAM, char * *customFlags NS_OUTPARAM) = 0;

  /* void GetSupportedUserFlags (out unsigned short flags); */
  NS_SCRIPTABLE NS_IMETHOD GetSupportedUserFlags(PRUint16 *flags NS_OUTPARAM) = 0;

  /* void GetRunningImapURL (out nsIImapUrl aImapUrl); */
  NS_SCRIPTABLE NS_IMETHOD GetRunningImapURL(nsIImapUrl * *aImapUrl NS_OUTPARAM) = 0;

  /* void GetRunningUrl (out nsIURI aUrl); */
  NS_SCRIPTABLE NS_IMETHOD GetRunningUrl(nsIURI * *aUrl NS_OUTPARAM) = 0;

  /* void tellThreadToDie (in boolean aIsSafeToClose); */
  NS_SCRIPTABLE NS_IMETHOD TellThreadToDie(bool aIsSafeToClose) = 0;

  /* void GetLastActiveTimeStamp (out PRTime aTimeStamp); */
  NS_SCRIPTABLE NS_IMETHOD GetLastActiveTimeStamp(PRTime *aTimeStamp NS_OUTPARAM) = 0;

  /* void pseudoInterruptMsgLoad (in nsIMsgFolder imapFolder, in nsIMsgWindow aMsgWindow, out boolean interrupted); */
  NS_SCRIPTABLE NS_IMETHOD PseudoInterruptMsgLoad(nsIMsgFolder *imapFolder, nsIMsgWindow *aMsgWindow, bool *interrupted NS_OUTPARAM) = 0;

  /* void GetSelectedMailboxName (out string folderName); */
  NS_SCRIPTABLE NS_IMETHOD GetSelectedMailboxName(char * *folderName NS_OUTPARAM) = 0;

  /* void ResetToAuthenticatedState (); */
  NS_SCRIPTABLE NS_IMETHOD ResetToAuthenticatedState(void) = 0;

  /* void OverrideConnectionInfo (in wstring pHost, in unsigned short pPort, in string pCookieData); */
  NS_SCRIPTABLE NS_IMETHOD OverrideConnectionInfo(const PRUnichar * pHost, PRUint16 pPort, const char * pCookieData) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIImapProtocol, NS_IIMAPPROTOCOL_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIIMAPPROTOCOL \
  NS_SCRIPTABLE NS_IMETHOD LoadImapUrl(nsIURI *aUrl, nsISupports *aConsumer); \
  NS_SCRIPTABLE NS_IMETHOD IsBusy(bool *aIsConnectionBusy NS_OUTPARAM, bool *isInboxConnection NS_OUTPARAM); \
  NS_SCRIPTABLE NS_IMETHOD CanHandleUrl(nsIImapUrl *aImapUrl, bool *aCanRunUrl NS_OUTPARAM, bool *hasToWait NS_OUTPARAM); \
  NS_SCRIPTABLE NS_IMETHOD Initialize(nsIImapHostSessionList *aHostSessionList, nsIImapIncomingServer *aServer, nsIEventTarget *aSinkEventTarget); \
  NS_SCRIPTABLE NS_IMETHOD NotifyBodysToDownload(PRUint32 *keys NS_OUTPARAM, PRUint32 count); \
  NS_SCRIPTABLE NS_IMETHOD GetFlagsForUID(PRUint32 uid, bool *foundIt NS_OUTPARAM, PRUint16 *flags NS_OUTPARAM, char * *customFlags NS_OUTPARAM); \
  NS_SCRIPTABLE NS_IMETHOD GetSupportedUserFlags(PRUint16 *flags NS_OUTPARAM); \
  NS_SCRIPTABLE NS_IMETHOD GetRunningImapURL(nsIImapUrl * *aImapUrl NS_OUTPARAM); \
  NS_SCRIPTABLE NS_IMETHOD GetRunningUrl(nsIURI * *aUrl NS_OUTPARAM); \
  NS_SCRIPTABLE NS_IMETHOD TellThreadToDie(bool aIsSafeToClose); \
  NS_SCRIPTABLE NS_IMETHOD GetLastActiveTimeStamp(PRTime *aTimeStamp NS_OUTPARAM); \
  NS_SCRIPTABLE NS_IMETHOD PseudoInterruptMsgLoad(nsIMsgFolder *imapFolder, nsIMsgWindow *aMsgWindow, bool *interrupted NS_OUTPARAM); \
  NS_SCRIPTABLE NS_IMETHOD GetSelectedMailboxName(char * *folderName NS_OUTPARAM); \
  NS_SCRIPTABLE NS_IMETHOD ResetToAuthenticatedState(void); \
  NS_SCRIPTABLE NS_IMETHOD OverrideConnectionInfo(const PRUnichar * pHost, PRUint16 pPort, const char * pCookieData); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIIMAPPROTOCOL(_to) \
  NS_SCRIPTABLE NS_IMETHOD LoadImapUrl(nsIURI *aUrl, nsISupports *aConsumer) { return _to LoadImapUrl(aUrl, aConsumer); } \
  NS_SCRIPTABLE NS_IMETHOD IsBusy(bool *aIsConnectionBusy NS_OUTPARAM, bool *isInboxConnection NS_OUTPARAM) { return _to IsBusy(aIsConnectionBusy, isInboxConnection); } \
  NS_SCRIPTABLE NS_IMETHOD CanHandleUrl(nsIImapUrl *aImapUrl, bool *aCanRunUrl NS_OUTPARAM, bool *hasToWait NS_OUTPARAM) { return _to CanHandleUrl(aImapUrl, aCanRunUrl, hasToWait); } \
  NS_SCRIPTABLE NS_IMETHOD Initialize(nsIImapHostSessionList *aHostSessionList, nsIImapIncomingServer *aServer, nsIEventTarget *aSinkEventTarget) { return _to Initialize(aHostSessionList, aServer, aSinkEventTarget); } \
  NS_SCRIPTABLE NS_IMETHOD NotifyBodysToDownload(PRUint32 *keys NS_OUTPARAM, PRUint32 count) { return _to NotifyBodysToDownload(keys, count); } \
  NS_SCRIPTABLE NS_IMETHOD GetFlagsForUID(PRUint32 uid, bool *foundIt NS_OUTPARAM, PRUint16 *flags NS_OUTPARAM, char * *customFlags NS_OUTPARAM) { return _to GetFlagsForUID(uid, foundIt, flags, customFlags); } \
  NS_SCRIPTABLE NS_IMETHOD GetSupportedUserFlags(PRUint16 *flags NS_OUTPARAM) { return _to GetSupportedUserFlags(flags); } \
  NS_SCRIPTABLE NS_IMETHOD GetRunningImapURL(nsIImapUrl * *aImapUrl NS_OUTPARAM) { return _to GetRunningImapURL(aImapUrl); } \
  NS_SCRIPTABLE NS_IMETHOD GetRunningUrl(nsIURI * *aUrl NS_OUTPARAM) { return _to GetRunningUrl(aUrl); } \
  NS_SCRIPTABLE NS_IMETHOD TellThreadToDie(bool aIsSafeToClose) { return _to TellThreadToDie(aIsSafeToClose); } \
  NS_SCRIPTABLE NS_IMETHOD GetLastActiveTimeStamp(PRTime *aTimeStamp NS_OUTPARAM) { return _to GetLastActiveTimeStamp(aTimeStamp); } \
  NS_SCRIPTABLE NS_IMETHOD PseudoInterruptMsgLoad(nsIMsgFolder *imapFolder, nsIMsgWindow *aMsgWindow, bool *interrupted NS_OUTPARAM) { return _to PseudoInterruptMsgLoad(imapFolder, aMsgWindow, interrupted); } \
  NS_SCRIPTABLE NS_IMETHOD GetSelectedMailboxName(char * *folderName NS_OUTPARAM) { return _to GetSelectedMailboxName(folderName); } \
  NS_SCRIPTABLE NS_IMETHOD ResetToAuthenticatedState(void) { return _to ResetToAuthenticatedState(); } \
  NS_SCRIPTABLE NS_IMETHOD OverrideConnectionInfo(const PRUnichar * pHost, PRUint16 pPort, const char * pCookieData) { return _to OverrideConnectionInfo(pHost, pPort, pCookieData); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIIMAPPROTOCOL(_to) \
  NS_SCRIPTABLE NS_IMETHOD LoadImapUrl(nsIURI *aUrl, nsISupports *aConsumer) { return !_to ? NS_ERROR_NULL_POINTER : _to->LoadImapUrl(aUrl, aConsumer); } \
  NS_SCRIPTABLE NS_IMETHOD IsBusy(bool *aIsConnectionBusy NS_OUTPARAM, bool *isInboxConnection NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->IsBusy(aIsConnectionBusy, isInboxConnection); } \
  NS_SCRIPTABLE NS_IMETHOD CanHandleUrl(nsIImapUrl *aImapUrl, bool *aCanRunUrl NS_OUTPARAM, bool *hasToWait NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->CanHandleUrl(aImapUrl, aCanRunUrl, hasToWait); } \
  NS_SCRIPTABLE NS_IMETHOD Initialize(nsIImapHostSessionList *aHostSessionList, nsIImapIncomingServer *aServer, nsIEventTarget *aSinkEventTarget) { return !_to ? NS_ERROR_NULL_POINTER : _to->Initialize(aHostSessionList, aServer, aSinkEventTarget); } \
  NS_SCRIPTABLE NS_IMETHOD NotifyBodysToDownload(PRUint32 *keys NS_OUTPARAM, PRUint32 count) { return !_to ? NS_ERROR_NULL_POINTER : _to->NotifyBodysToDownload(keys, count); } \
  NS_SCRIPTABLE NS_IMETHOD GetFlagsForUID(PRUint32 uid, bool *foundIt NS_OUTPARAM, PRUint16 *flags NS_OUTPARAM, char * *customFlags NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFlagsForUID(uid, foundIt, flags, customFlags); } \
  NS_SCRIPTABLE NS_IMETHOD GetSupportedUserFlags(PRUint16 *flags NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSupportedUserFlags(flags); } \
  NS_SCRIPTABLE NS_IMETHOD GetRunningImapURL(nsIImapUrl * *aImapUrl NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetRunningImapURL(aImapUrl); } \
  NS_SCRIPTABLE NS_IMETHOD GetRunningUrl(nsIURI * *aUrl NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetRunningUrl(aUrl); } \
  NS_SCRIPTABLE NS_IMETHOD TellThreadToDie(bool aIsSafeToClose) { return !_to ? NS_ERROR_NULL_POINTER : _to->TellThreadToDie(aIsSafeToClose); } \
  NS_SCRIPTABLE NS_IMETHOD GetLastActiveTimeStamp(PRTime *aTimeStamp NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetLastActiveTimeStamp(aTimeStamp); } \
  NS_SCRIPTABLE NS_IMETHOD PseudoInterruptMsgLoad(nsIMsgFolder *imapFolder, nsIMsgWindow *aMsgWindow, bool *interrupted NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->PseudoInterruptMsgLoad(imapFolder, aMsgWindow, interrupted); } \
  NS_SCRIPTABLE NS_IMETHOD GetSelectedMailboxName(char * *folderName NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSelectedMailboxName(folderName); } \
  NS_SCRIPTABLE NS_IMETHOD ResetToAuthenticatedState(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->ResetToAuthenticatedState(); } \
  NS_SCRIPTABLE NS_IMETHOD OverrideConnectionInfo(const PRUnichar * pHost, PRUint16 pPort, const char * pCookieData) { return !_to ? NS_ERROR_NULL_POINTER : _to->OverrideConnectionInfo(pHost, pPort, pCookieData); } 

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

/* Header file */
class nsImapProtocol : public nsIImapProtocol
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIIMAPPROTOCOL

  nsImapProtocol();

private:
  ~nsImapProtocol();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsImapProtocol, nsIImapProtocol)

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

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

/* void LoadImapUrl (in nsIURI aUrl, in nsISupports aConsumer); */
NS_IMETHODIMP nsImapProtocol::LoadImapUrl(nsIURI *aUrl, nsISupports *aConsumer)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void IsBusy (out boolean aIsConnectionBusy, out boolean isInboxConnection); */
NS_IMETHODIMP nsImapProtocol::IsBusy(bool *aIsConnectionBusy NS_OUTPARAM, bool *isInboxConnection NS_OUTPARAM)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void CanHandleUrl (in nsIImapUrl aImapUrl, out boolean aCanRunUrl, out boolean hasToWait); */
NS_IMETHODIMP nsImapProtocol::CanHandleUrl(nsIImapUrl *aImapUrl, bool *aCanRunUrl NS_OUTPARAM, bool *hasToWait NS_OUTPARAM)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void Initialize (in nsIImapHostSessionList aHostSessionList, in nsIImapIncomingServer aServer, in nsIEventTarget aSinkEventTarget); */
NS_IMETHODIMP nsImapProtocol::Initialize(nsIImapHostSessionList *aHostSessionList, nsIImapIncomingServer *aServer, nsIEventTarget *aSinkEventTarget)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void NotifyBodysToDownload (out unsigned long keys, in unsigned long count); */
NS_IMETHODIMP nsImapProtocol::NotifyBodysToDownload(PRUint32 *keys NS_OUTPARAM, PRUint32 count)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void GetFlagsForUID (in unsigned long uid, out boolean foundIt, out unsigned short flags, out string customFlags); */
NS_IMETHODIMP nsImapProtocol::GetFlagsForUID(PRUint32 uid, bool *foundIt NS_OUTPARAM, PRUint16 *flags NS_OUTPARAM, char * *customFlags NS_OUTPARAM)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void GetSupportedUserFlags (out unsigned short flags); */
NS_IMETHODIMP nsImapProtocol::GetSupportedUserFlags(PRUint16 *flags NS_OUTPARAM)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void GetRunningImapURL (out nsIImapUrl aImapUrl); */
NS_IMETHODIMP nsImapProtocol::GetRunningImapURL(nsIImapUrl * *aImapUrl NS_OUTPARAM)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void GetRunningUrl (out nsIURI aUrl); */
NS_IMETHODIMP nsImapProtocol::GetRunningUrl(nsIURI * *aUrl NS_OUTPARAM)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void tellThreadToDie (in boolean aIsSafeToClose); */
NS_IMETHODIMP nsImapProtocol::TellThreadToDie(bool aIsSafeToClose)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void GetLastActiveTimeStamp (out PRTime aTimeStamp); */
NS_IMETHODIMP nsImapProtocol::GetLastActiveTimeStamp(PRTime *aTimeStamp NS_OUTPARAM)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void pseudoInterruptMsgLoad (in nsIMsgFolder imapFolder, in nsIMsgWindow aMsgWindow, out boolean interrupted); */
NS_IMETHODIMP nsImapProtocol::PseudoInterruptMsgLoad(nsIMsgFolder *imapFolder, nsIMsgWindow *aMsgWindow, bool *interrupted NS_OUTPARAM)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void GetSelectedMailboxName (out string folderName); */
NS_IMETHODIMP nsImapProtocol::GetSelectedMailboxName(char * *folderName NS_OUTPARAM)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void ResetToAuthenticatedState (); */
NS_IMETHODIMP nsImapProtocol::ResetToAuthenticatedState()
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void OverrideConnectionInfo (in wstring pHost, in unsigned short pPort, in string pCookieData); */
NS_IMETHODIMP nsImapProtocol::OverrideConnectionInfo(const PRUnichar * pHost, PRUint16 pPort, const char * pCookieData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


#endif /* __gen_nsIImapProtocol_h__ */