This file is indexed.

/usr/include/thunderbird/nsIMsgNewsFolder.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
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM ../../../dist/idl/nsIMsgNewsFolder.idl
 */

#ifndef __gen_nsIMsgNewsFolder_h__
#define __gen_nsIMsgNewsFolder_h__


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

#ifndef __gen_nsIMsgFolder_h__
#include "nsIMsgFolder.h"
#endif

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

class nsINntpIncomingServer; /* forward declaration */


/* starting interface:    nsIMsgNewsFolder */
#define NS_IMSGNEWSFOLDER_IID_STR "9a12c3a5-9de5-4c57-ace3-d51802b525a9"

#define NS_IMSGNEWSFOLDER_IID \
  {0x9a12c3a5, 0x9de5, 0x4c57, \
    { 0xac, 0xe3, 0xd5, 0x18, 0x02, 0xb5, 0x25, 0xa9 }}

class NS_NO_VTABLE nsIMsgNewsFolder : public nsISupports {
 public:

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IMSGNEWSFOLDER_IID)

  /* readonly attribute AString unicodeName; */
  NS_IMETHOD GetUnicodeName(nsAString & aUnicodeName) = 0;

  /* [noscript] readonly attribute ACString rawName; */
  NS_IMETHOD GetRawName(nsACString & aRawName) = 0;

  /* readonly attribute nsINntpIncomingServer nntpServer; */
  NS_IMETHOD GetNntpServer(nsINntpIncomingServer * *aNntpServer) = 0;

  /* attribute boolean saveArticleOffline; */
  NS_IMETHOD GetSaveArticleOffline(bool *aSaveArticleOffline) = 0;
  NS_IMETHOD SetSaveArticleOffline(bool aSaveArticleOffline) = 0;

  /* bool getAuthenticationCredentials (in nsIMsgWindow aMsgWindow, in bool mayPrompt, in bool mustPrompt); */
  NS_IMETHOD GetAuthenticationCredentials(nsIMsgWindow *aMsgWindow, bool mayPrompt, bool mustPrompt, bool *_retval) = 0;

  /* attribute ACString groupUsername; */
  NS_IMETHOD GetGroupUsername(nsACString & aGroupUsername) = 0;
  NS_IMETHOD SetGroupUsername(const nsACString & aGroupUsername) = 0;

  /* attribute ACString groupPassword; */
  NS_IMETHOD GetGroupPassword(nsACString & aGroupPassword) = 0;
  NS_IMETHOD SetGroupPassword(const nsACString & aGroupPassword) = 0;

  /* void forgetAuthenticationCredentials (); */
  NS_IMETHOD ForgetAuthenticationCredentials(void) = 0;

  /* void moveFolder (in nsIMsgFolder aNewsgroupToMove, in nsIMsgFolder aRefNewsgroup, in int32_t aOrientation); */
  NS_IMETHOD MoveFolder(nsIMsgFolder *aNewsgroupToMove, nsIMsgFolder *aRefNewsgroup, int32_t aOrientation) = 0;

  /* nsIMsgFolder addNewsgroup (in AUTF8String newsgroupName, in ACString setStr); */
  NS_IMETHOD AddNewsgroup(const nsACString & newsgroupName, const nsACString & setStr, nsIMsgFolder * *_retval) = 0;

  /* void setReadSetFromStr (in ACString setStr); */
  NS_IMETHOD SetReadSetFromStr(const nsACString & setStr) = 0;

  /* readonly attribute ACString newsrcLine; */
  NS_IMETHOD GetNewsrcLine(nsACString & aNewsrcLine) = 0;

  /* readonly attribute ACString optionLines; */
  NS_IMETHOD GetOptionLines(nsACString & aOptionLines) = 0;

  /* readonly attribute ACString unsubscribedNewsgroupLines; */
  NS_IMETHOD GetUnsubscribedNewsgroupLines(nsACString & aUnsubscribedNewsgroupLines) = 0;

  /* void SetNewsrcHasChanged (in boolean newsrcHasChanged); */
  NS_IMETHOD SetNewsrcHasChanged(bool newsrcHasChanged) = 0;

  /* void updateSummaryFromNNTPInfo (in long oldest, in long youngest, in long total); */
  NS_IMETHOD UpdateSummaryFromNNTPInfo(int32_t oldest, int32_t youngest, int32_t total) = 0;

  /* void removeMessage (in nsMsgKey key); */
  NS_IMETHOD RemoveMessage(nsMsgKey key) = 0;

  /* [noscript] void removeMessages (in nsMsgKeyArrayRef aMsgKeys); */
  NS_IMETHOD RemoveMessages(nsTArray<nsMsgKey> & aMsgKeys) = 0;

  /* void cancelComplete (); */
  NS_IMETHOD CancelComplete(void) = 0;

  /* void cancelFailed (); */
  NS_IMETHOD CancelFailed(void) = 0;

  /* ACString getMessageIdForKey (in nsMsgKey key); */
  NS_IMETHOD GetMessageIdForKey(nsMsgKey key, nsACString & _retval) = 0;

  /* void getNextNMessages (in nsIMsgWindow aMsgWindow); */
  NS_IMETHOD GetNextNMessages(nsIMsgWindow *aMsgWindow) = 0;

  /* void notifyDownloadedLine (in string line, in nsMsgKey key); */
  NS_IMETHOD NotifyDownloadedLine(const char * line, nsMsgKey key) = 0;

  /* void notifyFinishedDownloadinghdrs (); */
  NS_IMETHOD NotifyFinishedDownloadinghdrs(void) = 0;

  /* nsIMsgDatabase getDatabaseWithoutCache (); */
  NS_IMETHOD GetDatabaseWithoutCache(nsIMsgDatabase * *_retval) = 0;

  /* void cancelMessage (in nsIMsgDBHdr aMsgHdr, in nsIMsgWindow aMsgWindow); */
  NS_IMETHOD CancelMessage(nsIMsgDBHdr *aMsgHdr, nsIMsgWindow *aMsgWindow) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIMsgNewsFolder, NS_IMSGNEWSFOLDER_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIMSGNEWSFOLDER \
  NS_IMETHOD GetUnicodeName(nsAString & aUnicodeName) override; \
  NS_IMETHOD GetRawName(nsACString & aRawName) override; \
  NS_IMETHOD GetNntpServer(nsINntpIncomingServer * *aNntpServer) override; \
  NS_IMETHOD GetSaveArticleOffline(bool *aSaveArticleOffline) override; \
  NS_IMETHOD SetSaveArticleOffline(bool aSaveArticleOffline) override; \
  NS_IMETHOD GetAuthenticationCredentials(nsIMsgWindow *aMsgWindow, bool mayPrompt, bool mustPrompt, bool *_retval) override; \
  NS_IMETHOD GetGroupUsername(nsACString & aGroupUsername) override; \
  NS_IMETHOD SetGroupUsername(const nsACString & aGroupUsername) override; \
  NS_IMETHOD GetGroupPassword(nsACString & aGroupPassword) override; \
  NS_IMETHOD SetGroupPassword(const nsACString & aGroupPassword) override; \
  NS_IMETHOD ForgetAuthenticationCredentials(void) override; \
  NS_IMETHOD MoveFolder(nsIMsgFolder *aNewsgroupToMove, nsIMsgFolder *aRefNewsgroup, int32_t aOrientation) override; \
  NS_IMETHOD AddNewsgroup(const nsACString & newsgroupName, const nsACString & setStr, nsIMsgFolder * *_retval) override; \
  NS_IMETHOD SetReadSetFromStr(const nsACString & setStr) override; \
  NS_IMETHOD GetNewsrcLine(nsACString & aNewsrcLine) override; \
  NS_IMETHOD GetOptionLines(nsACString & aOptionLines) override; \
  NS_IMETHOD GetUnsubscribedNewsgroupLines(nsACString & aUnsubscribedNewsgroupLines) override; \
  NS_IMETHOD SetNewsrcHasChanged(bool newsrcHasChanged) override; \
  NS_IMETHOD UpdateSummaryFromNNTPInfo(int32_t oldest, int32_t youngest, int32_t total) override; \
  NS_IMETHOD RemoveMessage(nsMsgKey key) override; \
  NS_IMETHOD RemoveMessages(nsTArray<nsMsgKey> & aMsgKeys) override; \
  NS_IMETHOD CancelComplete(void) override; \
  NS_IMETHOD CancelFailed(void) override; \
  NS_IMETHOD GetMessageIdForKey(nsMsgKey key, nsACString & _retval) override; \
  NS_IMETHOD GetNextNMessages(nsIMsgWindow *aMsgWindow) override; \
  NS_IMETHOD NotifyDownloadedLine(const char * line, nsMsgKey key) override; \
  NS_IMETHOD NotifyFinishedDownloadinghdrs(void) override; \
  NS_IMETHOD GetDatabaseWithoutCache(nsIMsgDatabase * *_retval) override; \
  NS_IMETHOD CancelMessage(nsIMsgDBHdr *aMsgHdr, nsIMsgWindow *aMsgWindow) 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_NSIMSGNEWSFOLDER \
  NS_METHOD GetUnicodeName(nsAString & aUnicodeName); \
  NS_METHOD GetRawName(nsACString & aRawName); \
  NS_METHOD GetNntpServer(nsINntpIncomingServer * *aNntpServer); \
  NS_METHOD GetSaveArticleOffline(bool *aSaveArticleOffline); \
  NS_METHOD SetSaveArticleOffline(bool aSaveArticleOffline); \
  NS_METHOD GetAuthenticationCredentials(nsIMsgWindow *aMsgWindow, bool mayPrompt, bool mustPrompt, bool *_retval); \
  NS_METHOD GetGroupUsername(nsACString & aGroupUsername); \
  NS_METHOD SetGroupUsername(const nsACString & aGroupUsername); \
  NS_METHOD GetGroupPassword(nsACString & aGroupPassword); \
  NS_METHOD SetGroupPassword(const nsACString & aGroupPassword); \
  NS_METHOD ForgetAuthenticationCredentials(void); \
  NS_METHOD MoveFolder(nsIMsgFolder *aNewsgroupToMove, nsIMsgFolder *aRefNewsgroup, int32_t aOrientation); \
  NS_METHOD AddNewsgroup(const nsACString & newsgroupName, const nsACString & setStr, nsIMsgFolder * *_retval); \
  NS_METHOD SetReadSetFromStr(const nsACString & setStr); \
  NS_METHOD GetNewsrcLine(nsACString & aNewsrcLine); \
  NS_METHOD GetOptionLines(nsACString & aOptionLines); \
  NS_METHOD GetUnsubscribedNewsgroupLines(nsACString & aUnsubscribedNewsgroupLines); \
  NS_METHOD SetNewsrcHasChanged(bool newsrcHasChanged); \
  NS_METHOD UpdateSummaryFromNNTPInfo(int32_t oldest, int32_t youngest, int32_t total); \
  NS_METHOD RemoveMessage(nsMsgKey key); \
  NS_METHOD RemoveMessages(nsTArray<nsMsgKey> & aMsgKeys); \
  NS_METHOD CancelComplete(void); \
  NS_METHOD CancelFailed(void); \
  NS_METHOD GetMessageIdForKey(nsMsgKey key, nsACString & _retval); \
  NS_METHOD GetNextNMessages(nsIMsgWindow *aMsgWindow); \
  NS_METHOD NotifyDownloadedLine(const char * line, nsMsgKey key); \
  NS_METHOD NotifyFinishedDownloadinghdrs(void); \
  NS_METHOD GetDatabaseWithoutCache(nsIMsgDatabase * *_retval); \
  NS_METHOD CancelMessage(nsIMsgDBHdr *aMsgHdr, nsIMsgWindow *aMsgWindow); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIMSGNEWSFOLDER(_to) \
  NS_IMETHOD GetUnicodeName(nsAString & aUnicodeName) override { return _to GetUnicodeName(aUnicodeName); } \
  NS_IMETHOD GetRawName(nsACString & aRawName) override { return _to GetRawName(aRawName); } \
  NS_IMETHOD GetNntpServer(nsINntpIncomingServer * *aNntpServer) override { return _to GetNntpServer(aNntpServer); } \
  NS_IMETHOD GetSaveArticleOffline(bool *aSaveArticleOffline) override { return _to GetSaveArticleOffline(aSaveArticleOffline); } \
  NS_IMETHOD SetSaveArticleOffline(bool aSaveArticleOffline) override { return _to SetSaveArticleOffline(aSaveArticleOffline); } \
  NS_IMETHOD GetAuthenticationCredentials(nsIMsgWindow *aMsgWindow, bool mayPrompt, bool mustPrompt, bool *_retval) override { return _to GetAuthenticationCredentials(aMsgWindow, mayPrompt, mustPrompt, _retval); } \
  NS_IMETHOD GetGroupUsername(nsACString & aGroupUsername) override { return _to GetGroupUsername(aGroupUsername); } \
  NS_IMETHOD SetGroupUsername(const nsACString & aGroupUsername) override { return _to SetGroupUsername(aGroupUsername); } \
  NS_IMETHOD GetGroupPassword(nsACString & aGroupPassword) override { return _to GetGroupPassword(aGroupPassword); } \
  NS_IMETHOD SetGroupPassword(const nsACString & aGroupPassword) override { return _to SetGroupPassword(aGroupPassword); } \
  NS_IMETHOD ForgetAuthenticationCredentials(void) override { return _to ForgetAuthenticationCredentials(); } \
  NS_IMETHOD MoveFolder(nsIMsgFolder *aNewsgroupToMove, nsIMsgFolder *aRefNewsgroup, int32_t aOrientation) override { return _to MoveFolder(aNewsgroupToMove, aRefNewsgroup, aOrientation); } \
  NS_IMETHOD AddNewsgroup(const nsACString & newsgroupName, const nsACString & setStr, nsIMsgFolder * *_retval) override { return _to AddNewsgroup(newsgroupName, setStr, _retval); } \
  NS_IMETHOD SetReadSetFromStr(const nsACString & setStr) override { return _to SetReadSetFromStr(setStr); } \
  NS_IMETHOD GetNewsrcLine(nsACString & aNewsrcLine) override { return _to GetNewsrcLine(aNewsrcLine); } \
  NS_IMETHOD GetOptionLines(nsACString & aOptionLines) override { return _to GetOptionLines(aOptionLines); } \
  NS_IMETHOD GetUnsubscribedNewsgroupLines(nsACString & aUnsubscribedNewsgroupLines) override { return _to GetUnsubscribedNewsgroupLines(aUnsubscribedNewsgroupLines); } \
  NS_IMETHOD SetNewsrcHasChanged(bool newsrcHasChanged) override { return _to SetNewsrcHasChanged(newsrcHasChanged); } \
  NS_IMETHOD UpdateSummaryFromNNTPInfo(int32_t oldest, int32_t youngest, int32_t total) override { return _to UpdateSummaryFromNNTPInfo(oldest, youngest, total); } \
  NS_IMETHOD RemoveMessage(nsMsgKey key) override { return _to RemoveMessage(key); } \
  NS_IMETHOD RemoveMessages(nsTArray<nsMsgKey> & aMsgKeys) override { return _to RemoveMessages(aMsgKeys); } \
  NS_IMETHOD CancelComplete(void) override { return _to CancelComplete(); } \
  NS_IMETHOD CancelFailed(void) override { return _to CancelFailed(); } \
  NS_IMETHOD GetMessageIdForKey(nsMsgKey key, nsACString & _retval) override { return _to GetMessageIdForKey(key, _retval); } \
  NS_IMETHOD GetNextNMessages(nsIMsgWindow *aMsgWindow) override { return _to GetNextNMessages(aMsgWindow); } \
  NS_IMETHOD NotifyDownloadedLine(const char * line, nsMsgKey key) override { return _to NotifyDownloadedLine(line, key); } \
  NS_IMETHOD NotifyFinishedDownloadinghdrs(void) override { return _to NotifyFinishedDownloadinghdrs(); } \
  NS_IMETHOD GetDatabaseWithoutCache(nsIMsgDatabase * *_retval) override { return _to GetDatabaseWithoutCache(_retval); } \
  NS_IMETHOD CancelMessage(nsIMsgDBHdr *aMsgHdr, nsIMsgWindow *aMsgWindow) override { return _to CancelMessage(aMsgHdr, aMsgWindow); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIMSGNEWSFOLDER(_to) \
  NS_IMETHOD GetUnicodeName(nsAString & aUnicodeName) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetUnicodeName(aUnicodeName); } \
  NS_IMETHOD GetRawName(nsACString & aRawName) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetRawName(aRawName); } \
  NS_IMETHOD GetNntpServer(nsINntpIncomingServer * *aNntpServer) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetNntpServer(aNntpServer); } \
  NS_IMETHOD GetSaveArticleOffline(bool *aSaveArticleOffline) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSaveArticleOffline(aSaveArticleOffline); } \
  NS_IMETHOD SetSaveArticleOffline(bool aSaveArticleOffline) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetSaveArticleOffline(aSaveArticleOffline); } \
  NS_IMETHOD GetAuthenticationCredentials(nsIMsgWindow *aMsgWindow, bool mayPrompt, bool mustPrompt, bool *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAuthenticationCredentials(aMsgWindow, mayPrompt, mustPrompt, _retval); } \
  NS_IMETHOD GetGroupUsername(nsACString & aGroupUsername) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetGroupUsername(aGroupUsername); } \
  NS_IMETHOD SetGroupUsername(const nsACString & aGroupUsername) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetGroupUsername(aGroupUsername); } \
  NS_IMETHOD GetGroupPassword(nsACString & aGroupPassword) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetGroupPassword(aGroupPassword); } \
  NS_IMETHOD SetGroupPassword(const nsACString & aGroupPassword) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetGroupPassword(aGroupPassword); } \
  NS_IMETHOD ForgetAuthenticationCredentials(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ForgetAuthenticationCredentials(); } \
  NS_IMETHOD MoveFolder(nsIMsgFolder *aNewsgroupToMove, nsIMsgFolder *aRefNewsgroup, int32_t aOrientation) override { return !_to ? NS_ERROR_NULL_POINTER : _to->MoveFolder(aNewsgroupToMove, aRefNewsgroup, aOrientation); } \
  NS_IMETHOD AddNewsgroup(const nsACString & newsgroupName, const nsACString & setStr, nsIMsgFolder * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->AddNewsgroup(newsgroupName, setStr, _retval); } \
  NS_IMETHOD SetReadSetFromStr(const nsACString & setStr) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetReadSetFromStr(setStr); } \
  NS_IMETHOD GetNewsrcLine(nsACString & aNewsrcLine) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetNewsrcLine(aNewsrcLine); } \
  NS_IMETHOD GetOptionLines(nsACString & aOptionLines) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetOptionLines(aOptionLines); } \
  NS_IMETHOD GetUnsubscribedNewsgroupLines(nsACString & aUnsubscribedNewsgroupLines) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetUnsubscribedNewsgroupLines(aUnsubscribedNewsgroupLines); } \
  NS_IMETHOD SetNewsrcHasChanged(bool newsrcHasChanged) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetNewsrcHasChanged(newsrcHasChanged); } \
  NS_IMETHOD UpdateSummaryFromNNTPInfo(int32_t oldest, int32_t youngest, int32_t total) override { return !_to ? NS_ERROR_NULL_POINTER : _to->UpdateSummaryFromNNTPInfo(oldest, youngest, total); } \
  NS_IMETHOD RemoveMessage(nsMsgKey key) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveMessage(key); } \
  NS_IMETHOD RemoveMessages(nsTArray<nsMsgKey> & aMsgKeys) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveMessages(aMsgKeys); } \
  NS_IMETHOD CancelComplete(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CancelComplete(); } \
  NS_IMETHOD CancelFailed(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CancelFailed(); } \
  NS_IMETHOD GetMessageIdForKey(nsMsgKey key, nsACString & _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMessageIdForKey(key, _retval); } \
  NS_IMETHOD GetNextNMessages(nsIMsgWindow *aMsgWindow) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetNextNMessages(aMsgWindow); } \
  NS_IMETHOD NotifyDownloadedLine(const char * line, nsMsgKey key) override { return !_to ? NS_ERROR_NULL_POINTER : _to->NotifyDownloadedLine(line, key); } \
  NS_IMETHOD NotifyFinishedDownloadinghdrs(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->NotifyFinishedDownloadinghdrs(); } \
  NS_IMETHOD GetDatabaseWithoutCache(nsIMsgDatabase * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDatabaseWithoutCache(_retval); } \
  NS_IMETHOD CancelMessage(nsIMsgDBHdr *aMsgHdr, nsIMsgWindow *aMsgWindow) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CancelMessage(aMsgHdr, aMsgWindow); } 

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

/* Header file */
class nsMsgNewsFolder : public nsIMsgNewsFolder
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIMSGNEWSFOLDER

  nsMsgNewsFolder();

private:
  ~nsMsgNewsFolder();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS(nsMsgNewsFolder, nsIMsgNewsFolder)

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

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

/* readonly attribute AString unicodeName; */
NS_IMETHODIMP nsMsgNewsFolder::GetUnicodeName(nsAString & aUnicodeName)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* [noscript] readonly attribute ACString rawName; */
NS_IMETHODIMP nsMsgNewsFolder::GetRawName(nsACString & aRawName)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsINntpIncomingServer nntpServer; */
NS_IMETHODIMP nsMsgNewsFolder::GetNntpServer(nsINntpIncomingServer * *aNntpServer)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean saveArticleOffline; */
NS_IMETHODIMP nsMsgNewsFolder::GetSaveArticleOffline(bool *aSaveArticleOffline)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgNewsFolder::SetSaveArticleOffline(bool aSaveArticleOffline)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* bool getAuthenticationCredentials (in nsIMsgWindow aMsgWindow, in bool mayPrompt, in bool mustPrompt); */
NS_IMETHODIMP nsMsgNewsFolder::GetAuthenticationCredentials(nsIMsgWindow *aMsgWindow, bool mayPrompt, bool mustPrompt, bool *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute ACString groupUsername; */
NS_IMETHODIMP nsMsgNewsFolder::GetGroupUsername(nsACString & aGroupUsername)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgNewsFolder::SetGroupUsername(const nsACString & aGroupUsername)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute ACString groupPassword; */
NS_IMETHODIMP nsMsgNewsFolder::GetGroupPassword(nsACString & aGroupPassword)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgNewsFolder::SetGroupPassword(const nsACString & aGroupPassword)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void forgetAuthenticationCredentials (); */
NS_IMETHODIMP nsMsgNewsFolder::ForgetAuthenticationCredentials()
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void moveFolder (in nsIMsgFolder aNewsgroupToMove, in nsIMsgFolder aRefNewsgroup, in int32_t aOrientation); */
NS_IMETHODIMP nsMsgNewsFolder::MoveFolder(nsIMsgFolder *aNewsgroupToMove, nsIMsgFolder *aRefNewsgroup, int32_t aOrientation)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* nsIMsgFolder addNewsgroup (in AUTF8String newsgroupName, in ACString setStr); */
NS_IMETHODIMP nsMsgNewsFolder::AddNewsgroup(const nsACString & newsgroupName, const nsACString & setStr, nsIMsgFolder * *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void setReadSetFromStr (in ACString setStr); */
NS_IMETHODIMP nsMsgNewsFolder::SetReadSetFromStr(const nsACString & setStr)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute ACString newsrcLine; */
NS_IMETHODIMP nsMsgNewsFolder::GetNewsrcLine(nsACString & aNewsrcLine)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute ACString optionLines; */
NS_IMETHODIMP nsMsgNewsFolder::GetOptionLines(nsACString & aOptionLines)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute ACString unsubscribedNewsgroupLines; */
NS_IMETHODIMP nsMsgNewsFolder::GetUnsubscribedNewsgroupLines(nsACString & aUnsubscribedNewsgroupLines)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void SetNewsrcHasChanged (in boolean newsrcHasChanged); */
NS_IMETHODIMP nsMsgNewsFolder::SetNewsrcHasChanged(bool newsrcHasChanged)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void updateSummaryFromNNTPInfo (in long oldest, in long youngest, in long total); */
NS_IMETHODIMP nsMsgNewsFolder::UpdateSummaryFromNNTPInfo(int32_t oldest, int32_t youngest, int32_t total)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void removeMessage (in nsMsgKey key); */
NS_IMETHODIMP nsMsgNewsFolder::RemoveMessage(nsMsgKey key)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* [noscript] void removeMessages (in nsMsgKeyArrayRef aMsgKeys); */
NS_IMETHODIMP nsMsgNewsFolder::RemoveMessages(nsTArray<nsMsgKey> & aMsgKeys)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void cancelComplete (); */
NS_IMETHODIMP nsMsgNewsFolder::CancelComplete()
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void cancelFailed (); */
NS_IMETHODIMP nsMsgNewsFolder::CancelFailed()
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* ACString getMessageIdForKey (in nsMsgKey key); */
NS_IMETHODIMP nsMsgNewsFolder::GetMessageIdForKey(nsMsgKey key, nsACString & _retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void getNextNMessages (in nsIMsgWindow aMsgWindow); */
NS_IMETHODIMP nsMsgNewsFolder::GetNextNMessages(nsIMsgWindow *aMsgWindow)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void notifyDownloadedLine (in string line, in nsMsgKey key); */
NS_IMETHODIMP nsMsgNewsFolder::NotifyDownloadedLine(const char * line, nsMsgKey key)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void notifyFinishedDownloadinghdrs (); */
NS_IMETHODIMP nsMsgNewsFolder::NotifyFinishedDownloadinghdrs()
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* nsIMsgDatabase getDatabaseWithoutCache (); */
NS_IMETHODIMP nsMsgNewsFolder::GetDatabaseWithoutCache(nsIMsgDatabase * *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void cancelMessage (in nsIMsgDBHdr aMsgHdr, in nsIMsgWindow aMsgWindow); */
NS_IMETHODIMP nsMsgNewsFolder::CancelMessage(nsIMsgDBHdr *aMsgHdr, nsIMsgWindow *aMsgWindow)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


#endif /* __gen_nsIMsgNewsFolder_h__ */