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
|
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
typedef unsigned long nsMsgKey;
typedef unsigned long nsMsgViewIndex;
typedef long nsMsgSearchScopeValue;
typedef long nsMsgPriorityValue;
typedef long nsMsgSocketTypeValue;
typedef long nsMsgAuthMethodValue;
typedef unsigned long nsMsgJunkStatus;
typedef unsigned long nsMsgJunkScore;
[scriptable, uuid(94C0D8D8-2045-11d3-8A8F-0060B0FC04D2)]
interface nsMsgPriority {
const nsMsgPriorityValue notSet = 0;
const nsMsgPriorityValue none = 1;
const nsMsgPriorityValue lowest = 2;
const nsMsgPriorityValue low = 3;
const nsMsgPriorityValue normal = 4;
const nsMsgPriorityValue high = 5;
const nsMsgPriorityValue highest = 6;
//the default priority (if none) is set in the message
const nsMsgPriorityValue Default = 4;
};
/**
* Defines whether to use SSL or STARTTLS or not.
* Used by @see nsIMsgIncomingServer.socketType
* and @see nsISmtpServer.socketType
*/
[scriptable, uuid(bc78bc74-1b34-48e8-ac2b-968e8dff1aeb)]
interface nsMsgSocketType {
/// No SSL or STARTTLS
const nsMsgSocketTypeValue plain = 0;
/// Use TLS via STARTTLS, but only if server offers it.
/// @deprecated This is vulnerable to MITM attacks
const nsMsgSocketTypeValue trySTARTTLS = 1;
/// Insist on TLS via STARTTLS.
/// Uses normal port.
const nsMsgSocketTypeValue alwaysSTARTTLS = 2;
/// Connect via SSL.
/// Needs special SSL port.
const nsMsgSocketTypeValue SSL = 3;
};
/**
* Defines which authentication schemes we should try.
* Used by @see nsIMsgIncomingServer.authMethod
* and @see nsISmtpServer.authMethod
*/
[scriptable, uuid(4a10e647-d179-4a53-b7ef-df575ff5f405)]
interface nsMsgAuthMethod {
// 0 is intentionally undefined and invalid
/// No login needed. E.g. IP-address-based.
const nsMsgAuthMethodValue none = 1;
/// Do not use AUTH commands (e.g. AUTH=PLAIN),
/// but the original login commands that the protocol specified
/// (POP: "USER"/"PASS", IMAP: "login", not valid for SMTP)
const nsMsgAuthMethodValue old = 2;
/// password in the clear. AUTH=PLAIN/LOGIN or old-style login.
const nsMsgAuthMethodValue passwordCleartext = 3;
/// hashed password. CRAM-MD5, DIGEST-MD5
const nsMsgAuthMethodValue passwordEncrypted = 4;
/// Kerberos / GSSAPI (Unix single-signon)
const nsMsgAuthMethodValue GSSAPI = 5;
/// NTLM is a Windows single-singon scheme.
/// Includes MSN / Passport.net, which is the same with a different name.
const nsMsgAuthMethodValue NTLM = 6;
/// Auth External is cert-based authentication
const nsMsgAuthMethodValue External = 7;
/// Encrypted password or Kerberos / GSSAPI or NTLM.
/// @deprecated - for migration only.
const nsMsgAuthMethodValue secure = 8;
/// Let us pick any of the auth types supported by the server.
/// Discouraged, because vulnerable to MITM attacks, even if server offers secure auth.
const nsMsgAuthMethodValue anything = 9;
/// Use OAuth2 to authenticate.
const nsMsgAuthMethodValue OAuth2 = 10;
};
typedef unsigned long nsMsgLabelValue;
typedef long nsMsgViewSortOrderValue;
typedef long nsMsgViewSortTypeValue;
typedef long nsMsgViewTypeValue;
typedef long nsMsgViewFlagsTypeValue;
|