1use crate::provider::Protocol::*;
4use crate::provider::Socket::*;
5use crate::provider::UsernamePattern::*;
6use crate::provider::{
7 Config, ConfigDefault, Oauth2Authorizer, Provider, ProviderOptions, Server, Status,
8};
9use std::collections::HashMap;
10
11use std::sync::LazyLock;
12
13static P_163: Provider = Provider {
15 id: "163",
16 status: Status::Preparation,
17 before_login_hint: "Enable \"POP3/SMTP/IMAP\" on the website, add a third-party auth code and use that as the login password",
18 after_login_hint: "",
19 overview_page: "https://providers.delta.chat/163",
20 server: &[
21 Server {
22 protocol: Imap,
23 socket: Ssl,
24 hostname: "imap.163.com",
25 port: 993,
26 username_pattern: Email,
27 },
28 Server {
29 protocol: Smtp,
30 socket: Ssl,
31 hostname: "smtp.163.com",
32 port: 465,
33 username_pattern: Email,
34 },
35 ],
36 opt: ProviderOptions::new(),
37 config_defaults: None,
38 oauth2_authorizer: None,
39};
40
41static P_AKTIVIX_ORG: Provider = Provider {
43 id: "aktivix.org",
44 status: Status::Ok,
45 before_login_hint: "",
46 after_login_hint: "",
47 overview_page: "https://providers.delta.chat/aktivix-org",
48 server: &[
49 Server {
50 protocol: Imap,
51 socket: Starttls,
52 hostname: "newyear.aktivix.org",
53 port: 143,
54 username_pattern: Email,
55 },
56 Server {
57 protocol: Smtp,
58 socket: Starttls,
59 hostname: "newyear.aktivix.org",
60 port: 587,
61 username_pattern: Email,
62 },
63 ],
64 opt: ProviderOptions::new(),
65 config_defaults: None,
66 oauth2_authorizer: None,
67};
68
69static P_ALIYUN: Provider = Provider {
71 id: "aliyun",
72 status: Status::Ok,
73 before_login_hint: "",
74 after_login_hint: "",
75 overview_page: "https://providers.delta.chat/aliyun",
76 server: &[
77 Server {
78 protocol: Imap,
79 socket: Ssl,
80 hostname: "imap.aliyun.com",
81 port: 993,
82 username_pattern: Email,
83 },
84 Server {
85 protocol: Smtp,
86 socket: Ssl,
87 hostname: "smtp.aliyun.com",
88 port: 465,
89 username_pattern: Email,
90 },
91 ],
92 opt: ProviderOptions::new(),
93 config_defaults: None,
94 oauth2_authorizer: None,
95};
96
97static P_AOL: Provider = Provider {
99 id: "aol",
100 status: Status::Preparation,
101 before_login_hint: "To log in to AOL, you need to set up an app password in the AOL web interface.",
102 after_login_hint: "",
103 overview_page: "https://providers.delta.chat/aol",
104 server: &[
105 Server {
106 protocol: Imap,
107 socket: Ssl,
108 hostname: "imap.aol.com",
109 port: 993,
110 username_pattern: Email,
111 },
112 Server {
113 protocol: Smtp,
114 socket: Ssl,
115 hostname: "smtp.aol.com",
116 port: 465,
117 username_pattern: Email,
118 },
119 ],
120 opt: ProviderOptions::new(),
121 config_defaults: None,
122 oauth2_authorizer: None,
123};
124
125static P_ARCOR_DE: Provider = Provider {
127 id: "arcor.de",
128 status: Status::Ok,
129 before_login_hint: "",
130 after_login_hint: "",
131 overview_page: "https://providers.delta.chat/arcor-de",
132 server: &[
133 Server {
134 protocol: Imap,
135 socket: Ssl,
136 hostname: "imap.arcor.de",
137 port: 993,
138 username_pattern: Email,
139 },
140 Server {
141 protocol: Smtp,
142 socket: Ssl,
143 hostname: "mail.arcor.de",
144 port: 465,
145 username_pattern: Email,
146 },
147 ],
148 opt: ProviderOptions::new(),
149 config_defaults: None,
150 oauth2_authorizer: None,
151};
152
153static P_AUTISTICI_ORG: Provider = Provider {
155 id: "autistici.org",
156 status: Status::Ok,
157 before_login_hint: "",
158 after_login_hint: "",
159 overview_page: "https://providers.delta.chat/autistici-org",
160 server: &[
161 Server {
162 protocol: Imap,
163 socket: Ssl,
164 hostname: "mail.autistici.org",
165 port: 993,
166 username_pattern: Email,
167 },
168 Server {
169 protocol: Smtp,
170 socket: Ssl,
171 hostname: "smtp.autistici.org",
172 port: 465,
173 username_pattern: Email,
174 },
175 ],
176 opt: ProviderOptions::new(),
177 config_defaults: None,
178 oauth2_authorizer: None,
179};
180
181static P_BLINDZELN_ORG: Provider = Provider {
183 id: "blindzeln.org",
184 status: Status::Ok,
185 before_login_hint: "",
186 after_login_hint: "",
187 overview_page: "https://providers.delta.chat/blindzeln-org",
188 server: &[
189 Server {
190 protocol: Imap,
191 socket: Ssl,
192 hostname: "webbox222.server-home.org",
193 port: 993,
194 username_pattern: Email,
195 },
196 Server {
197 protocol: Smtp,
198 socket: Ssl,
199 hostname: "webbox222.server-home.org",
200 port: 465,
201 username_pattern: Email,
202 },
203 ],
204 opt: ProviderOptions::new(),
205 config_defaults: None,
206 oauth2_authorizer: None,
207};
208
209static P_BLUEWIN_CH: Provider = Provider {
211 id: "bluewin.ch",
212 status: Status::Ok,
213 before_login_hint: "",
214 after_login_hint: "",
215 overview_page: "https://providers.delta.chat/bluewin-ch",
216 server: &[
217 Server {
218 protocol: Imap,
219 socket: Ssl,
220 hostname: "imaps.bluewin.ch",
221 port: 993,
222 username_pattern: Email,
223 },
224 Server {
225 protocol: Smtp,
226 socket: Ssl,
227 hostname: "smtpauths.bluewin.ch",
228 port: 465,
229 username_pattern: Email,
230 },
231 ],
232 opt: ProviderOptions::new(),
233 config_defaults: None,
234 oauth2_authorizer: None,
235};
236
237static P_CHELLO_AT: Provider = Provider {
239 id: "chello.at",
240 status: Status::Ok,
241 before_login_hint: "",
242 after_login_hint: "",
243 overview_page: "https://providers.delta.chat/chello-at",
244 server: &[
245 Server {
246 protocol: Imap,
247 socket: Ssl,
248 hostname: "mail.mymagenta.at",
249 port: 993,
250 username_pattern: Email,
251 },
252 Server {
253 protocol: Smtp,
254 socket: Ssl,
255 hostname: "mail.mymagenta.at",
256 port: 465,
257 username_pattern: Email,
258 },
259 ],
260 opt: ProviderOptions::new(),
261 config_defaults: None,
262 oauth2_authorizer: None,
263};
264
265static P_COMCAST: Provider = Provider {
267 id: "comcast",
268 status: Status::Ok,
269 before_login_hint: "",
270 after_login_hint: "",
271 overview_page: "https://providers.delta.chat/comcast",
272 server: &[],
273 opt: ProviderOptions::new(),
274 config_defaults: None,
275 oauth2_authorizer: None,
276};
277
278static P_DISMAIL_DE: Provider = Provider {
280 id: "dismail.de",
281 status: Status::Ok,
282 before_login_hint: "",
283 after_login_hint: "",
284 overview_page: "https://providers.delta.chat/dismail-de",
285 server: &[],
286 opt: ProviderOptions::new(),
287 config_defaults: None,
288 oauth2_authorizer: None,
289};
290
291static P_DISROOT: Provider = Provider {
293 id: "disroot",
294 status: Status::Ok,
295 before_login_hint: "",
296 after_login_hint: "",
297 overview_page: "https://providers.delta.chat/disroot",
298 server: &[
299 Server {
300 protocol: Imap,
301 socket: Ssl,
302 hostname: "disroot.org",
303 port: 993,
304 username_pattern: Emaillocalpart,
305 },
306 Server {
307 protocol: Smtp,
308 socket: Starttls,
309 hostname: "disroot.org",
310 port: 587,
311 username_pattern: Emaillocalpart,
312 },
313 ],
314 opt: ProviderOptions::new(),
315 config_defaults: None,
316 oauth2_authorizer: None,
317};
318
319static P_E_EMAIL: Provider = Provider {
321 id: "e.email",
322 status: Status::Ok,
323 before_login_hint: "",
324 after_login_hint: "",
325 overview_page: "https://providers.delta.chat/e-email",
326 server: &[
327 Server {
328 protocol: Imap,
329 socket: Ssl,
330 hostname: "mail.ecloud.global",
331 port: 993,
332 username_pattern: Email,
333 },
334 Server {
335 protocol: Smtp,
336 socket: Starttls,
337 hostname: "mail.ecloud.global",
338 port: 587,
339 username_pattern: Email,
340 },
341 ],
342 opt: ProviderOptions::new(),
343 config_defaults: None,
344 oauth2_authorizer: None,
345};
346
347static P_ESPIV_NET: Provider = Provider {
349 id: "espiv.net",
350 status: Status::Ok,
351 before_login_hint: "",
352 after_login_hint: "",
353 overview_page: "https://providers.delta.chat/espiv-net",
354 server: &[],
355 opt: ProviderOptions::new(),
356 config_defaults: None,
357 oauth2_authorizer: None,
358};
359
360static P_EXAMPLE_COM: Provider = Provider {
362 id: "example.com",
363 status: Status::Broken,
364 before_login_hint: "Hush this provider doesn't exist!",
365 after_login_hint: "This provider doesn't really exist, so you can't use it :/ If you need an email provider, take a look at providers.delta.chat!",
366 overview_page: "https://providers.delta.chat/example-com",
367 server: &[
368 Server {
369 protocol: Imap,
370 socket: Ssl,
371 hostname: "imap.example.com",
372 port: 1337,
373 username_pattern: Emaillocalpart,
374 },
375 Server {
376 protocol: Smtp,
377 socket: Starttls,
378 hostname: "smtp.example.com",
379 port: 1337,
380 username_pattern: Email,
381 },
382 ],
383 opt: ProviderOptions::new(),
384 config_defaults: None,
385 oauth2_authorizer: None,
386};
387
388static P_FASTMAIL: Provider = Provider {
390 id: "fastmail",
391 status: Status::Preparation,
392 before_login_hint: "You must create an app-specific password before you can log in.",
393 after_login_hint: "",
394 overview_page: "https://providers.delta.chat/fastmail",
395 server: &[
396 Server {
397 protocol: Imap,
398 socket: Ssl,
399 hostname: "imap.fastmail.com",
400 port: 993,
401 username_pattern: Email,
402 },
403 Server {
404 protocol: Smtp,
405 socket: Ssl,
406 hostname: "smtp.fastmail.com",
407 port: 465,
408 username_pattern: Email,
409 },
410 ],
411 opt: ProviderOptions::new(),
412 config_defaults: None,
413 oauth2_authorizer: None,
414};
415
416static P_FIREMAIL_DE: Provider = Provider {
418 id: "firemail.de",
419 status: Status::Preparation,
420 before_login_hint: "Firemail erlaubt nur bei bezahlten Accounts den vollen Zugriff auf das E-Mail-Protokoll. Wenn Sie nicht für Firemail bezahlen, verwenden Sie bitte einen anderen E-Mail-Anbieter.",
421 after_login_hint: "Leider schränkt Firemail die maximale Gruppengröße ein. Je nach Bezahlmodell sind nur 5 bis 30 Gruppenmitglieder erlaubt.",
422 overview_page: "https://providers.delta.chat/firemail-de",
423 server: &[],
424 opt: ProviderOptions::new(),
425 config_defaults: None,
426 oauth2_authorizer: None,
427};
428
429static P_FREENET_DE: Provider = Provider {
431 id: "freenet.de",
432 status: Status::Preparation,
433 before_login_hint: "Um deine freenet.de E-Mail-Adresse zu benutzen, musst du erst auf der freenet.de-Webseite \"POP3/IMAP/SMTP\" aktivieren.",
434 after_login_hint: "",
435 overview_page: "https://providers.delta.chat/freenet-de",
436 server: &[
437 Server {
438 protocol: Imap,
439 socket: Ssl,
440 hostname: "mx.freenet.de",
441 port: 993,
442 username_pattern: Email,
443 },
444 Server {
445 protocol: Imap,
446 socket: Starttls,
447 hostname: "mx.freenet.de",
448 port: 143,
449 username_pattern: Email,
450 },
451 Server {
452 protocol: Smtp,
453 socket: Ssl,
454 hostname: "mx.freenet.de",
455 port: 465,
456 username_pattern: Email,
457 },
458 Server {
459 protocol: Smtp,
460 socket: Starttls,
461 hostname: "mx.freenet.de",
462 port: 587,
463 username_pattern: Email,
464 },
465 ],
466 opt: ProviderOptions::new(),
467 config_defaults: None,
468 oauth2_authorizer: None,
469};
470
471static P_GMAIL: Provider = Provider {
473 id: "gmail",
474 status: Status::Preparation,
475 before_login_hint: "For Gmail accounts, you need to have \"2-Step Verification\" enabled and create an app-password. Gmail limits how many messages you can send per day.",
476 after_login_hint: "",
477 overview_page: "https://providers.delta.chat/gmail",
478 server: &[
479 Server {
480 protocol: Imap,
481 socket: Ssl,
482 hostname: "imap.gmail.com",
483 port: 993,
484 username_pattern: Email,
485 },
486 Server {
487 protocol: Smtp,
488 socket: Ssl,
489 hostname: "smtp.gmail.com",
490 port: 465,
491 username_pattern: Email,
492 },
493 ],
494 opt: ProviderOptions::new(),
495 config_defaults: None,
496 oauth2_authorizer: None,
497};
498
499static P_GMX_NET: Provider = Provider {
501 id: "gmx.net",
502 status: Status::Preparation,
503 before_login_hint: "You must allow IMAP access to your account before you can login.",
504 after_login_hint: "",
505 overview_page: "https://providers.delta.chat/gmx-net",
506 server: &[
507 Server {
508 protocol: Imap,
509 socket: Ssl,
510 hostname: "imap.gmx.net",
511 port: 993,
512 username_pattern: Email,
513 },
514 Server {
515 protocol: Smtp,
516 socket: Ssl,
517 hostname: "mail.gmx.net",
518 port: 465,
519 username_pattern: Email,
520 },
521 Server {
522 protocol: Smtp,
523 socket: Starttls,
524 hostname: "mail.gmx.net",
525 port: 587,
526 username_pattern: Email,
527 },
528 ],
529 opt: ProviderOptions::new(),
530 config_defaults: None,
531 oauth2_authorizer: None,
532};
533
534static P_HERMES_RADIO: Provider = Provider {
536 id: "hermes.radio",
537 status: Status::Ok,
538 before_login_hint: "",
539 after_login_hint: "",
540 overview_page: "https://providers.delta.chat/hermes-radio",
541 server: &[],
542 opt: ProviderOptions {
543 strict_tls: false,
544 ..ProviderOptions::new()
545 },
546 config_defaults: Some(&[ConfigDefault {
547 key: Config::MdnsEnabled,
548 value: "0",
549 }]),
550 oauth2_authorizer: None,
551};
552
553static P_HEY_COM: Provider = Provider {
555 id: "hey.com",
556 status: Status::Broken,
557 before_login_hint: "hey.com does not offer the standard IMAP e-mail protocol, so you cannot log in to hey.com.",
558 after_login_hint: "",
559 overview_page: "https://providers.delta.chat/hey-com",
560 server: &[],
561 opt: ProviderOptions::new(),
562 config_defaults: None,
563 oauth2_authorizer: None,
564};
565
566static P_I_UA: Provider = Provider {
568 id: "i.ua",
569 status: Status::Broken,
570 before_login_hint: "Протокол IMAP не предоставляется и не планируется.",
571 after_login_hint: "",
572 overview_page: "https://providers.delta.chat/i-ua",
573 server: &[],
574 opt: ProviderOptions::new(),
575 config_defaults: None,
576 oauth2_authorizer: None,
577};
578
579static P_I3_NET: Provider = Provider {
581 id: "i3.net",
582 status: Status::Ok,
583 before_login_hint: "",
584 after_login_hint: "",
585 overview_page: "https://providers.delta.chat/i3-net",
586 server: &[],
587 opt: ProviderOptions::new(),
588 config_defaults: None,
589 oauth2_authorizer: None,
590};
591
592static P_ICLOUD: Provider = Provider {
594 id: "icloud",
595 status: Status::Preparation,
596 before_login_hint: "You must create an app-specific password before login.",
597 after_login_hint: "",
598 overview_page: "https://providers.delta.chat/icloud",
599 server: &[
600 Server {
601 protocol: Imap,
602 socket: Ssl,
603 hostname: "imap.mail.me.com",
604 port: 993,
605 username_pattern: Emaillocalpart,
606 },
607 Server {
608 protocol: Smtp,
609 socket: Starttls,
610 hostname: "smtp.mail.me.com",
611 port: 587,
612 username_pattern: Email,
613 },
614 ],
615 opt: ProviderOptions::new(),
616 config_defaults: None,
617 oauth2_authorizer: None,
618};
619
620static P_INFOMANIAK_COM: Provider = Provider {
622 id: "infomaniak.com",
623 status: Status::Ok,
624 before_login_hint: "",
625 after_login_hint: "",
626 overview_page: "https://providers.delta.chat/infomaniak-com",
627 server: &[
628 Server {
629 protocol: Imap,
630 socket: Ssl,
631 hostname: "mail.infomaniak.com",
632 port: 993,
633 username_pattern: Email,
634 },
635 Server {
636 protocol: Smtp,
637 socket: Ssl,
638 hostname: "mail.infomaniak.com",
639 port: 465,
640 username_pattern: Email,
641 },
642 ],
643 opt: ProviderOptions {
644 max_smtp_rcpt_to: Some(10),
645 ..ProviderOptions::new()
646 },
647 config_defaults: None,
648 oauth2_authorizer: None,
649};
650
651static P_KOLST_COM: Provider = Provider {
653 id: "kolst.com",
654 status: Status::Ok,
655 before_login_hint: "",
656 after_login_hint: "",
657 overview_page: "https://providers.delta.chat/kolst-com",
658 server: &[],
659 opt: ProviderOptions::new(),
660 config_defaults: None,
661 oauth2_authorizer: None,
662};
663
664static P_KONTENT_COM: Provider = Provider {
666 id: "kontent.com",
667 status: Status::Ok,
668 before_login_hint: "",
669 after_login_hint: "",
670 overview_page: "https://providers.delta.chat/kontent-com",
671 server: &[],
672 opt: ProviderOptions::new(),
673 config_defaults: None,
674 oauth2_authorizer: None,
675};
676
677static P_MAIL_COM: Provider = Provider {
679 id: "mail.com",
680 status: Status::Preparation,
681 before_login_hint: "To log in, you first need to activate POP3/IMAP in your mail.com settings. Note that this is a mail.com Premium feature only.",
682 after_login_hint: "",
683 overview_page: "https://providers.delta.chat/mail-com",
684 server: &[],
685 opt: ProviderOptions::new(),
686 config_defaults: None,
687 oauth2_authorizer: None,
688};
689
690static P_MAIL_DE: Provider = Provider {
692 id: "mail.de",
693 status: Status::Ok,
694 before_login_hint: "",
695 after_login_hint: "",
696 overview_page: "https://providers.delta.chat/mail-de",
697 server: &[
698 Server {
699 protocol: Imap,
700 socket: Ssl,
701 hostname: "imap.mail.de",
702 port: 993,
703 username_pattern: Email,
704 },
705 Server {
706 protocol: Smtp,
707 socket: Ssl,
708 hostname: "smtp.mail.de",
709 port: 465,
710 username_pattern: Email,
711 },
712 ],
713 opt: ProviderOptions::new(),
714 config_defaults: None,
715 oauth2_authorizer: None,
716};
717
718static P_MAIL_RU: Provider = Provider {
720 id: "mail.ru",
721 status: Status::Preparation,
722 before_login_hint: "Вам необходимо сгенерировать \"пароль для внешнего приложения\" в веб-интерфейсе mail.ru, чтобы mail.ru работал с chatmail.",
723 after_login_hint: "",
724 overview_page: "https://providers.delta.chat/mail-ru",
725 server: &[
726 Server {
727 protocol: Imap,
728 socket: Ssl,
729 hostname: "imap.mail.ru",
730 port: 993,
731 username_pattern: Email,
732 },
733 Server {
734 protocol: Smtp,
735 socket: Ssl,
736 hostname: "smtp.mail.ru",
737 port: 465,
738 username_pattern: Email,
739 },
740 ],
741 opt: ProviderOptions::new(),
742 config_defaults: None,
743 oauth2_authorizer: None,
744};
745
746static P_MAIL2TOR: Provider = Provider {
748 id: "mail2tor",
749 status: Status::Preparation,
750 before_login_hint: "Tor is needed to connect to the email servers.",
751 after_login_hint: "",
752 overview_page: "https://providers.delta.chat/mail2tor",
753 server: &[
754 Server {
755 protocol: Imap,
756 socket: Plain,
757 hostname: "g77kjrad6bafzzyldqvffq6kxlsgphcygptxhnn4xlnktfgaqshilmyd.onion",
758 port: 143,
759 username_pattern: Email,
760 },
761 Server {
762 protocol: Smtp,
763 socket: Plain,
764 hostname: "xc7tgk2c5onxni2wsy76jslfsitxjbbptejnqhw6gy2ft7khpevhc7ad.onion",
765 port: 25,
766 username_pattern: Email,
767 },
768 ],
769 opt: ProviderOptions::new(),
770 config_defaults: None,
771 oauth2_authorizer: None,
772};
773
774static P_MAILBOX_ORG: Provider = Provider {
776 id: "mailbox.org",
777 status: Status::Ok,
778 before_login_hint: "",
779 after_login_hint: "",
780 overview_page: "https://providers.delta.chat/mailbox-org",
781 server: &[
782 Server {
783 protocol: Imap,
784 socket: Ssl,
785 hostname: "imap.mailbox.org",
786 port: 993,
787 username_pattern: Email,
788 },
789 Server {
790 protocol: Smtp,
791 socket: Ssl,
792 hostname: "smtp.mailbox.org",
793 port: 465,
794 username_pattern: Email,
795 },
796 ],
797 opt: ProviderOptions::new(),
798 config_defaults: None,
799 oauth2_authorizer: None,
800};
801
802static P_MAILO_COM: Provider = Provider {
804 id: "mailo.com",
805 status: Status::Ok,
806 before_login_hint: "",
807 after_login_hint: "",
808 overview_page: "https://providers.delta.chat/mailo-com",
809 server: &[
810 Server {
811 protocol: Imap,
812 socket: Ssl,
813 hostname: "imap.mailo.com",
814 port: 993,
815 username_pattern: Email,
816 },
817 Server {
818 protocol: Smtp,
819 socket: Ssl,
820 hostname: "smtp.mailo.com",
821 port: 465,
822 username_pattern: Email,
823 },
824 ],
825 opt: ProviderOptions::new(),
826 config_defaults: None,
827 oauth2_authorizer: None,
828};
829
830static P_MIGADU: Provider = Provider {
832 id: "migadu",
833 status: Status::Ok,
834 before_login_hint: "",
835 after_login_hint: "",
836 overview_page: "https://providers.delta.chat/migadu",
837 server: &[
838 Server {
839 protocol: Imap,
840 socket: Ssl,
841 hostname: "imap.migadu.com",
842 port: 993,
843 username_pattern: Email,
844 },
845 Server {
846 protocol: Smtp,
847 socket: Ssl,
848 hostname: "smtp.migadu.com",
849 port: 465,
850 username_pattern: Email,
851 },
852 Server {
853 protocol: Smtp,
854 socket: Starttls,
855 hostname: "smtp.migadu.com",
856 port: 587,
857 username_pattern: Email,
858 },
859 ],
860 opt: ProviderOptions::new(),
861 config_defaults: None,
862 oauth2_authorizer: None,
863};
864
865static P_NAUTA_CU: Provider = Provider {
867 id: "nauta.cu",
868 status: Status::Ok,
869 before_login_hint: "",
870 after_login_hint: "",
871 overview_page: "https://providers.delta.chat/nauta-cu",
872 server: &[
873 Server {
874 protocol: Imap,
875 socket: Starttls,
876 hostname: "imap.nauta.cu",
877 port: 143,
878 username_pattern: Email,
879 },
880 Server {
881 protocol: Smtp,
882 socket: Starttls,
883 hostname: "smtp.nauta.cu",
884 port: 25,
885 username_pattern: Email,
886 },
887 ],
888 opt: ProviderOptions {
889 max_smtp_rcpt_to: Some(20),
890 strict_tls: false,
891 ..ProviderOptions::new()
892 },
893 config_defaults: Some(&[
894 ConfigDefault {
895 key: Config::DeleteServerAfter,
896 value: "1",
897 },
898 ConfigDefault {
899 key: Config::MediaQuality,
900 value: "1",
901 },
902 ]),
903 oauth2_authorizer: None,
904};
905
906static P_NAVER: Provider = Provider {
908 id: "naver",
909 status: Status::Preparation,
910 before_login_hint: "Manually enabling IMAP/SMTP is required.",
911 after_login_hint: "",
912 overview_page: "https://providers.delta.chat/naver",
913 server: &[
914 Server {
915 protocol: Imap,
916 socket: Ssl,
917 hostname: "imap.naver.com",
918 port: 993,
919 username_pattern: Emaillocalpart,
920 },
921 Server {
922 protocol: Smtp,
923 socket: Starttls,
924 hostname: "smtp.naver.com",
925 port: 587,
926 username_pattern: Email,
927 },
928 ],
929 opt: ProviderOptions::new(),
930 config_defaults: None,
931 oauth2_authorizer: None,
932};
933
934static P_NINE_TESTRUN_ORG: Provider = Provider {
936 id: "nine.testrun.org",
937 status: Status::Ok,
938 before_login_hint: "",
939 after_login_hint: "",
940 overview_page: "https://providers.delta.chat/nine-testrun-org",
941 server: &[
942 Server {
943 protocol: Imap,
944 socket: Ssl,
945 hostname: "nine.testrun.org",
946 port: 443,
947 username_pattern: Email,
948 },
949 Server {
950 protocol: Smtp,
951 socket: Ssl,
952 hostname: "nine.testrun.org",
953 port: 443,
954 username_pattern: Email,
955 },
956 Server {
957 protocol: Imap,
958 socket: Ssl,
959 hostname: "nine.testrun.org",
960 port: 993,
961 username_pattern: Email,
962 },
963 Server {
964 protocol: Smtp,
965 socket: Ssl,
966 hostname: "nine.testrun.org",
967 port: 465,
968 username_pattern: Email,
969 },
970 Server {
971 protocol: Imap,
972 socket: Starttls,
973 hostname: "nine.testrun.org",
974 port: 143,
975 username_pattern: Email,
976 },
977 Server {
978 protocol: Smtp,
979 socket: Starttls,
980 hostname: "nine.testrun.org",
981 port: 587,
982 username_pattern: Email,
983 },
984 ],
985 opt: ProviderOptions::new(),
986 config_defaults: None,
987 oauth2_authorizer: None,
988};
989
990static P_NUBO_COOP: Provider = Provider {
992 id: "nubo.coop",
993 status: Status::Ok,
994 before_login_hint: "",
995 after_login_hint: "",
996 overview_page: "https://providers.delta.chat/nubo-coop",
997 server: &[
998 Server {
999 protocol: Imap,
1000 socket: Ssl,
1001 hostname: "mail.nubo.coop",
1002 port: 993,
1003 username_pattern: Email,
1004 },
1005 Server {
1006 protocol: Smtp,
1007 socket: Ssl,
1008 hostname: "mail.nubo.coop",
1009 port: 465,
1010 username_pattern: Email,
1011 },
1012 ],
1013 opt: ProviderOptions::new(),
1014 config_defaults: None,
1015 oauth2_authorizer: None,
1016};
1017
1018static P_OUTLOOK_COM: Provider = Provider {
1020 id: "outlook.com",
1021 status: Status::Broken,
1022 before_login_hint: "Unfortunately, Outlook does not allow using passwords anymore, per-app-passwords are currently not working.",
1023 after_login_hint: "",
1024 overview_page: "https://providers.delta.chat/outlook-com",
1025 server: &[
1026 Server {
1027 protocol: Imap,
1028 socket: Ssl,
1029 hostname: "outlook.office365.com",
1030 port: 993,
1031 username_pattern: Email,
1032 },
1033 Server {
1034 protocol: Smtp,
1035 socket: Starttls,
1036 hostname: "smtp.office365.com",
1037 port: 587,
1038 username_pattern: Email,
1039 },
1040 ],
1041 opt: ProviderOptions::new(),
1042 config_defaults: None,
1043 oauth2_authorizer: None,
1044};
1045
1046static P_OUVATON_COOP: Provider = Provider {
1048 id: "ouvaton.coop",
1049 status: Status::Ok,
1050 before_login_hint: "",
1051 after_login_hint: "",
1052 overview_page: "https://providers.delta.chat/ouvaton-coop",
1053 server: &[
1054 Server {
1055 protocol: Imap,
1056 socket: Ssl,
1057 hostname: "imap.ouvaton.coop",
1058 port: 993,
1059 username_pattern: Email,
1060 },
1061 Server {
1062 protocol: Smtp,
1063 socket: Ssl,
1064 hostname: "smtp.ouvaton.coop",
1065 port: 465,
1066 username_pattern: Email,
1067 },
1068 ],
1069 opt: ProviderOptions::new(),
1070 config_defaults: None,
1071 oauth2_authorizer: None,
1072};
1073
1074static P_POSTEO: Provider = Provider {
1076 id: "posteo",
1077 status: Status::Preparation,
1078 before_login_hint: "You must create an app-specific password before you can log in.",
1079 after_login_hint: "",
1080 overview_page: "https://providers.delta.chat/posteo",
1081 server: &[
1082 Server {
1083 protocol: Imap,
1084 socket: Ssl,
1085 hostname: "posteo.de",
1086 port: 993,
1087 username_pattern: Email,
1088 },
1089 Server {
1090 protocol: Imap,
1091 socket: Starttls,
1092 hostname: "posteo.de",
1093 port: 143,
1094 username_pattern: Email,
1095 },
1096 Server {
1097 protocol: Smtp,
1098 socket: Ssl,
1099 hostname: "posteo.de",
1100 port: 465,
1101 username_pattern: Email,
1102 },
1103 Server {
1104 protocol: Smtp,
1105 socket: Starttls,
1106 hostname: "posteo.de",
1107 port: 587,
1108 username_pattern: Email,
1109 },
1110 ],
1111 opt: ProviderOptions::new(),
1112 config_defaults: None,
1113 oauth2_authorizer: None,
1114};
1115
1116static P_PROTONMAIL: Provider = Provider {
1118 id: "protonmail",
1119 status: Status::Broken,
1120 before_login_hint: "Protonmail does not offer the standard IMAP e-mail protocol, so you cannot log in with to Protonmail.",
1121 after_login_hint: "To use Protonmail, the IMAP bridge must be running in the background. If you have connectivity issues, double check whether it works as expected.",
1122 overview_page: "https://providers.delta.chat/protonmail",
1123 server: &[],
1124 opt: ProviderOptions::new(),
1125 config_defaults: None,
1126 oauth2_authorizer: None,
1127};
1128
1129static P_PURELYMAIL_COM: Provider = Provider {
1131 id: "purelymail.com",
1132 status: Status::Ok,
1133 before_login_hint: "",
1134 after_login_hint: "",
1135 overview_page: "https://providers.delta.chat/purelymail-com",
1136 server: &[
1137 Server {
1138 protocol: Imap,
1139 socket: Ssl,
1140 hostname: "imap.purelymail.com",
1141 port: 993,
1142 username_pattern: Email,
1143 },
1144 Server {
1145 protocol: Smtp,
1146 socket: Ssl,
1147 hostname: "smtp.purelymail.com",
1148 port: 465,
1149 username_pattern: Email,
1150 },
1151 ],
1152 opt: ProviderOptions::new(),
1153 config_defaults: None,
1154 oauth2_authorizer: None,
1155};
1156
1157static P_QQ: Provider = Provider {
1159 id: "qq",
1160 status: Status::Preparation,
1161 before_login_hint: "Manually enabling IMAP/SMTP and creating an app-specific password are required.",
1162 after_login_hint: "",
1163 overview_page: "https://providers.delta.chat/qq",
1164 server: &[
1165 Server {
1166 protocol: Imap,
1167 socket: Ssl,
1168 hostname: "imap.qq.com",
1169 port: 993,
1170 username_pattern: Emaillocalpart,
1171 },
1172 Server {
1173 protocol: Smtp,
1174 socket: Ssl,
1175 hostname: "smtp.qq.com",
1176 port: 465,
1177 username_pattern: Email,
1178 },
1179 ],
1180 opt: ProviderOptions::new(),
1181 config_defaults: None,
1182 oauth2_authorizer: None,
1183};
1184
1185static P_RAMBLER_RU: Provider = Provider {
1187 id: "rambler.ru",
1188 status: Status::Preparation,
1189 before_login_hint: "Чтобы войти в Рамблер/почта, необходимо предварительно включить доступ с помощью почтовых клиентов на сайте mail.rambler.ru",
1190 after_login_hint: "",
1191 overview_page: "https://providers.delta.chat/rambler-ru",
1192 server: &[
1193 Server {
1194 protocol: Imap,
1195 socket: Ssl,
1196 hostname: "imap.rambler.ru",
1197 port: 993,
1198 username_pattern: Email,
1199 },
1200 Server {
1201 protocol: Smtp,
1202 socket: Ssl,
1203 hostname: "smtp.rambler.ru",
1204 port: 465,
1205 username_pattern: Email,
1206 },
1207 Server {
1208 protocol: Imap,
1209 socket: Starttls,
1210 hostname: "imap.rambler.ru",
1211 port: 143,
1212 username_pattern: Email,
1213 },
1214 ],
1215 opt: ProviderOptions::new(),
1216 config_defaults: None,
1217 oauth2_authorizer: None,
1218};
1219
1220static P_RISEUP_NET: Provider = Provider {
1222 id: "riseup.net",
1223 status: Status::Ok,
1224 before_login_hint: "",
1225 after_login_hint: "",
1226 overview_page: "https://providers.delta.chat/riseup-net",
1227 server: &[
1228 Server {
1229 protocol: Imap,
1230 socket: Ssl,
1231 hostname: "mail.riseup.net",
1232 port: 993,
1233 username_pattern: Email,
1234 },
1235 Server {
1236 protocol: Smtp,
1237 socket: Ssl,
1238 hostname: "mail.riseup.net",
1239 port: 465,
1240 username_pattern: Email,
1241 },
1242 ],
1243 opt: ProviderOptions::new(),
1244 config_defaults: None,
1245 oauth2_authorizer: None,
1246};
1247
1248static P_ROGERS_COM: Provider = Provider {
1250 id: "rogers.com",
1251 status: Status::Ok,
1252 before_login_hint: "",
1253 after_login_hint: "",
1254 overview_page: "https://providers.delta.chat/rogers-com",
1255 server: &[],
1256 opt: ProviderOptions::new(),
1257 config_defaults: None,
1258 oauth2_authorizer: None,
1259};
1260
1261static P_SONIC: Provider = Provider {
1263 id: "sonic",
1264 status: Status::Ok,
1265 before_login_hint: "",
1266 after_login_hint: "",
1267 overview_page: "https://providers.delta.chat/sonic",
1268 server: &[],
1269 opt: ProviderOptions::new(),
1270 config_defaults: None,
1271 oauth2_authorizer: None,
1272};
1273
1274static P_STINPRIZA_NET: Provider = Provider {
1276 id: "stinpriza.net",
1277 status: Status::Ok,
1278 before_login_hint: "",
1279 after_login_hint: "",
1280 overview_page: "https://providers.delta.chat/stinpriza-net",
1281 server: &[
1282 Server {
1283 protocol: Imap,
1284 socket: Starttls,
1285 hostname: "stinpriza.net",
1286 port: 143,
1287 username_pattern: Email,
1288 },
1289 Server {
1290 protocol: Smtp,
1291 socket: Starttls,
1292 hostname: "stinpriza.net",
1293 port: 587,
1294 username_pattern: Email,
1295 },
1296 ],
1297 opt: ProviderOptions {
1298 strict_tls: true,
1299 ..ProviderOptions::new()
1300 },
1301 config_defaults: None,
1302 oauth2_authorizer: None,
1303};
1304
1305static P_SYSTEMAUSFALL_ORG: Provider = Provider {
1307 id: "systemausfall.org",
1308 status: Status::Ok,
1309 before_login_hint: "",
1310 after_login_hint: "",
1311 overview_page: "https://providers.delta.chat/systemausfall-org",
1312 server: &[
1313 Server {
1314 protocol: Imap,
1315 socket: Ssl,
1316 hostname: "mail.systemausfall.org",
1317 port: 993,
1318 username_pattern: Email,
1319 },
1320 Server {
1321 protocol: Smtp,
1322 socket: Ssl,
1323 hostname: "mail.systemausfall.org",
1324 port: 465,
1325 username_pattern: Email,
1326 },
1327 ],
1328 opt: ProviderOptions::new(),
1329 config_defaults: None,
1330 oauth2_authorizer: None,
1331};
1332
1333static P_SYSTEMLI_ORG: Provider = Provider {
1335 id: "systemli.org",
1336 status: Status::Ok,
1337 before_login_hint: "",
1338 after_login_hint: "",
1339 overview_page: "https://providers.delta.chat/systemli-org",
1340 server: &[
1341 Server {
1342 protocol: Imap,
1343 socket: Ssl,
1344 hostname: "mail.systemli.org",
1345 port: 993,
1346 username_pattern: Email,
1347 },
1348 Server {
1349 protocol: Smtp,
1350 socket: Ssl,
1351 hostname: "mail.systemli.org",
1352 port: 465,
1353 username_pattern: Email,
1354 },
1355 ],
1356 opt: ProviderOptions::new(),
1357 config_defaults: None,
1358 oauth2_authorizer: None,
1359};
1360
1361static P_T_ONLINE: Provider = Provider {
1363 id: "t-online",
1364 status: Status::Preparation,
1365 before_login_hint: "To use a T-Online email address, you need to create an app password in the web interface.",
1366 after_login_hint: "",
1367 overview_page: "https://providers.delta.chat/t-online",
1368 server: &[
1369 Server {
1370 protocol: Imap,
1371 socket: Ssl,
1372 hostname: "secureimap.t-online.de",
1373 port: 993,
1374 username_pattern: Email,
1375 },
1376 Server {
1377 protocol: Smtp,
1378 socket: Ssl,
1379 hostname: "securesmtp.t-online.de",
1380 port: 465,
1381 username_pattern: Email,
1382 },
1383 ],
1384 opt: ProviderOptions::new(),
1385 config_defaults: None,
1386 oauth2_authorizer: None,
1387};
1388
1389static P_TISCALI_IT: Provider = Provider {
1391 id: "tiscali.it",
1392 status: Status::Ok,
1393 before_login_hint: "",
1394 after_login_hint: "",
1395 overview_page: "https://providers.delta.chat/tiscali-it",
1396 server: &[
1397 Server {
1398 protocol: Imap,
1399 socket: Ssl,
1400 hostname: "imap.tiscali.it",
1401 port: 993,
1402 username_pattern: Email,
1403 },
1404 Server {
1405 protocol: Smtp,
1406 socket: Ssl,
1407 hostname: "smtp.tiscali.it",
1408 port: 465,
1409 username_pattern: Email,
1410 },
1411 ],
1412 opt: ProviderOptions::new(),
1413 config_defaults: None,
1414 oauth2_authorizer: None,
1415};
1416
1417static P_TUTANOTA: Provider = Provider {
1419 id: "tutanota",
1420 status: Status::Broken,
1421 before_login_hint: "Tutanota does not offer the standard IMAP e-mail protocol, so you cannot log in to Tutanota.",
1422 after_login_hint: "",
1423 overview_page: "https://providers.delta.chat/tutanota",
1424 server: &[],
1425 opt: ProviderOptions::new(),
1426 config_defaults: None,
1427 oauth2_authorizer: None,
1428};
1429
1430static P_UKR_NET: Provider = Provider {
1432 id: "ukr.net",
1433 status: Status::Preparation,
1434 before_login_hint: "You must allow IMAP access to your account before you can login.",
1435 after_login_hint: "",
1436 overview_page: "https://providers.delta.chat/ukr-net",
1437 server: &[
1438 Server {
1439 protocol: Imap,
1440 socket: Ssl,
1441 hostname: "imap.ukr.net",
1442 port: 993,
1443 username_pattern: Email,
1444 },
1445 Server {
1446 protocol: Smtp,
1447 socket: Ssl,
1448 hostname: "smtp.ukr.net",
1449 port: 465,
1450 username_pattern: Email,
1451 },
1452 ],
1453 opt: ProviderOptions::new(),
1454 config_defaults: None,
1455 oauth2_authorizer: None,
1456};
1457
1458static P_UNDERNET_UY: Provider = Provider {
1460 id: "undernet.uy",
1461 status: Status::Ok,
1462 before_login_hint: "",
1463 after_login_hint: "",
1464 overview_page: "https://providers.delta.chat/undernet-uy",
1465 server: &[
1466 Server {
1467 protocol: Imap,
1468 socket: Starttls,
1469 hostname: "undernet.uy",
1470 port: 143,
1471 username_pattern: Email,
1472 },
1473 Server {
1474 protocol: Smtp,
1475 socket: Starttls,
1476 hostname: "undernet.uy",
1477 port: 587,
1478 username_pattern: Email,
1479 },
1480 ],
1481 opt: ProviderOptions::new(),
1482 config_defaults: None,
1483 oauth2_authorizer: None,
1484};
1485
1486static P_VFEMAIL: Provider = Provider {
1488 id: "vfemail",
1489 status: Status::Ok,
1490 before_login_hint: "",
1491 after_login_hint: "",
1492 overview_page: "https://providers.delta.chat/vfemail",
1493 server: &[],
1494 opt: ProviderOptions::new(),
1495 config_defaults: None,
1496 oauth2_authorizer: None,
1497};
1498
1499static P_VIVALDI: Provider = Provider {
1501 id: "vivaldi",
1502 status: Status::Ok,
1503 before_login_hint: "",
1504 after_login_hint: "",
1505 overview_page: "https://providers.delta.chat/vivaldi",
1506 server: &[
1507 Server {
1508 protocol: Imap,
1509 socket: Starttls,
1510 hostname: "imap.vivaldi.net",
1511 port: 143,
1512 username_pattern: Email,
1513 },
1514 Server {
1515 protocol: Smtp,
1516 socket: Starttls,
1517 hostname: "smtp.vivaldi.net",
1518 port: 587,
1519 username_pattern: Email,
1520 },
1521 ],
1522 opt: ProviderOptions::new(),
1523 config_defaults: None,
1524 oauth2_authorizer: None,
1525};
1526
1527static P_VK_COM: Provider = Provider {
1529 id: "vk.com",
1530 status: Status::Preparation,
1531 before_login_hint: "Вам необходимо сгенерировать \"пароль для внешнего приложения\" в веб-интерфейсе mail.ru https://account.mail.ru/user/2-step-auth/passwords/ чтобы vk.com работал с chatmail.",
1532 after_login_hint: "",
1533 overview_page: "https://providers.delta.chat/vk-com",
1534 server: &[
1535 Server {
1536 protocol: Imap,
1537 socket: Ssl,
1538 hostname: "imap.mail.ru",
1539 port: 993,
1540 username_pattern: Email,
1541 },
1542 Server {
1543 protocol: Smtp,
1544 socket: Ssl,
1545 hostname: "smtp.mail.ru",
1546 port: 465,
1547 username_pattern: Email,
1548 },
1549 ],
1550 opt: ProviderOptions::new(),
1551 config_defaults: None,
1552 oauth2_authorizer: None,
1553};
1554
1555static P_VODAFONE_DE: Provider = Provider {
1557 id: "vodafone.de",
1558 status: Status::Ok,
1559 before_login_hint: "",
1560 after_login_hint: "",
1561 overview_page: "https://providers.delta.chat/vodafone-de",
1562 server: &[
1563 Server {
1564 protocol: Imap,
1565 socket: Ssl,
1566 hostname: "imap.vodafonemail.de",
1567 port: 993,
1568 username_pattern: Email,
1569 },
1570 Server {
1571 protocol: Smtp,
1572 socket: Starttls,
1573 hostname: "smtp.vodafonemail.de",
1574 port: 587,
1575 username_pattern: Email,
1576 },
1577 ],
1578 opt: ProviderOptions::new(),
1579 config_defaults: None,
1580 oauth2_authorizer: None,
1581};
1582
1583static P_WEB_DE: Provider = Provider {
1585 id: "web.de",
1586 status: Status::Preparation,
1587 before_login_hint: "You must allow IMAP access to your account before you can login.",
1588 after_login_hint: "Note: if you have your web.de spam settings too strict, you won't receive contact requests from new people. If you want to receive contact requests, you should disable the \"3-Wege-Spamschutz\" in the web.de settings. Read how: https://hilfe.web.de/email/spam-und-viren/spamschutz-einstellungen.html",
1589 overview_page: "https://providers.delta.chat/web-de",
1590 server: &[
1591 Server {
1592 protocol: Imap,
1593 socket: Ssl,
1594 hostname: "imap.web.de",
1595 port: 993,
1596 username_pattern: Emaillocalpart,
1597 },
1598 Server {
1599 protocol: Imap,
1600 socket: Starttls,
1601 hostname: "imap.web.de",
1602 port: 143,
1603 username_pattern: Emaillocalpart,
1604 },
1605 Server {
1606 protocol: Smtp,
1607 socket: Starttls,
1608 hostname: "smtp.web.de",
1609 port: 587,
1610 username_pattern: Emaillocalpart,
1611 },
1612 ],
1613 opt: ProviderOptions::new(),
1614 config_defaults: None,
1615 oauth2_authorizer: None,
1616};
1617
1618static P_WKPB_DE: Provider = Provider {
1620 id: "wkpb.de",
1621 status: Status::Preparation,
1622 before_login_hint: "Dies sind die gleichen Anmeldedaten wie bei Moodle und Abitur-Online.",
1623 after_login_hint: "",
1624 overview_page: "https://providers.delta.chat/wkpb-de",
1625 server: &[
1626 Server {
1627 protocol: Imap,
1628 socket: Ssl,
1629 hostname: "pimap.schulon.org",
1630 port: 993,
1631 username_pattern: Email,
1632 },
1633 Server {
1634 protocol: Smtp,
1635 socket: Ssl,
1636 hostname: "psmtp.schulon.org",
1637 port: 465,
1638 username_pattern: Email,
1639 },
1640 ],
1641 opt: ProviderOptions::new(),
1642 config_defaults: None,
1643 oauth2_authorizer: None,
1644};
1645
1646static P_YAHOO: Provider = Provider {
1648 id: "yahoo",
1649 status: Status::Preparation,
1650 before_login_hint: "To use your Yahoo email address you have to create an app password in the Yahoo account security screen.",
1651 after_login_hint: "",
1652 overview_page: "https://providers.delta.chat/yahoo",
1653 server: &[
1654 Server {
1655 protocol: Imap,
1656 socket: Ssl,
1657 hostname: "imap.mail.yahoo.com",
1658 port: 993,
1659 username_pattern: Email,
1660 },
1661 Server {
1662 protocol: Smtp,
1663 socket: Ssl,
1664 hostname: "smtp.mail.yahoo.com",
1665 port: 465,
1666 username_pattern: Email,
1667 },
1668 ],
1669 opt: ProviderOptions::new(),
1670 config_defaults: None,
1671 oauth2_authorizer: None,
1672};
1673
1674static P_YANDEX_RU: Provider = Provider {
1676 id: "yandex.ru",
1677 status: Status::Preparation,
1678 before_login_hint: "For Yandex accounts, you have to set IMAP protocol option turned on.",
1679 after_login_hint: "",
1680 overview_page: "https://providers.delta.chat/yandex-ru",
1681 server: &[
1682 Server {
1683 protocol: Imap,
1684 socket: Ssl,
1685 hostname: "imap.yandex.com",
1686 port: 993,
1687 username_pattern: Email,
1688 },
1689 Server {
1690 protocol: Smtp,
1691 socket: Ssl,
1692 hostname: "smtp.yandex.com",
1693 port: 465,
1694 username_pattern: Email,
1695 },
1696 ],
1697 opt: ProviderOptions::new(),
1698 config_defaults: None,
1699 oauth2_authorizer: Some(Oauth2Authorizer::Yandex),
1700};
1701
1702static P_YGGMAIL: Provider = Provider {
1704 id: "yggmail",
1705 status: Status::Preparation,
1706 before_login_hint: "An Yggmail companion app needs to be installed on your device to access the Yggmail network.",
1707 after_login_hint: "Make sure, the Yggmail companion app runs whenever you want to use this account. Note, that you usually cannot write from @yggmail addresses to normal e-mail-addresses (as @gmx.net). However, you can create another account in the normal e-mail-network for this purpose.",
1708 overview_page: "https://providers.delta.chat/yggmail",
1709 server: &[
1710 Server {
1711 protocol: Imap,
1712 socket: Plain,
1713 hostname: "localhost",
1714 port: 1143,
1715 username_pattern: Email,
1716 },
1717 Server {
1718 protocol: Smtp,
1719 socket: Plain,
1720 hostname: "localhost",
1721 port: 1025,
1722 username_pattern: Email,
1723 },
1724 ],
1725 opt: ProviderOptions::new(),
1726 config_defaults: None,
1727 oauth2_authorizer: None,
1728};
1729
1730static P_ZIGGO_NL: Provider = Provider {
1732 id: "ziggo.nl",
1733 status: Status::Ok,
1734 before_login_hint: "",
1735 after_login_hint: "",
1736 overview_page: "https://providers.delta.chat/ziggo-nl",
1737 server: &[
1738 Server {
1739 protocol: Imap,
1740 socket: Ssl,
1741 hostname: "imap.ziggo.nl",
1742 port: 993,
1743 username_pattern: Email,
1744 },
1745 Server {
1746 protocol: Smtp,
1747 socket: Starttls,
1748 hostname: "smtp.ziggo.nl",
1749 port: 587,
1750 username_pattern: Email,
1751 },
1752 ],
1753 opt: ProviderOptions::new(),
1754 config_defaults: None,
1755 oauth2_authorizer: None,
1756};
1757
1758static P_ZOHO: Provider = Provider {
1760 id: "zoho",
1761 status: Status::Preparation,
1762 before_login_hint: "To use Zoho Mail, you have to turn on IMAP in the Zoho Mail backend.",
1763 after_login_hint: "",
1764 overview_page: "https://providers.delta.chat/zoho",
1765 server: &[
1766 Server {
1767 protocol: Imap,
1768 socket: Ssl,
1769 hostname: "imap.zoho.eu",
1770 port: 993,
1771 username_pattern: Email,
1772 },
1773 Server {
1774 protocol: Smtp,
1775 socket: Ssl,
1776 hostname: "smtp.zoho.eu",
1777 port: 465,
1778 username_pattern: Email,
1779 },
1780 ],
1781 opt: ProviderOptions::new(),
1782 config_defaults: None,
1783 oauth2_authorizer: None,
1784};
1785
1786pub(crate) static PROVIDER_DATA: [(&str, &Provider); 521] = [
1787 ("163.com", &P_163),
1788 ("aktivix.org", &P_AKTIVIX_ORG),
1789 ("aliyun.com", &P_ALIYUN),
1790 ("aol.com", &P_AOL),
1791 ("arcor.de", &P_ARCOR_DE),
1792 ("autistici.org", &P_AUTISTICI_ORG),
1793 ("delta.blinzeln.de", &P_BLINDZELN_ORG),
1794 ("delta.blindzeln.org", &P_BLINDZELN_ORG),
1795 ("bluewin.ch", &P_BLUEWIN_CH),
1796 ("chello.at", &P_CHELLO_AT),
1797 ("xfinity.com", &P_COMCAST),
1798 ("comcast.net", &P_COMCAST),
1799 ("dismail.de", &P_DISMAIL_DE),
1800 ("disroot.org", &P_DISROOT),
1801 ("e.email", &P_E_EMAIL),
1802 ("espiv.net", &P_ESPIV_NET),
1803 ("example.com", &P_EXAMPLE_COM),
1804 ("example.org", &P_EXAMPLE_COM),
1805 ("example.net", &P_EXAMPLE_COM),
1806 ("123mail.org", &P_FASTMAIL),
1807 ("150mail.com", &P_FASTMAIL),
1808 ("150ml.com", &P_FASTMAIL),
1809 ("16mail.com", &P_FASTMAIL),
1810 ("2-mail.com", &P_FASTMAIL),
1811 ("4email.net", &P_FASTMAIL),
1812 ("50mail.com", &P_FASTMAIL),
1813 ("airpost.net", &P_FASTMAIL),
1814 ("allmail.net", &P_FASTMAIL),
1815 ("bestmail.us", &P_FASTMAIL),
1816 ("cluemail.com", &P_FASTMAIL),
1817 ("elitemail.org", &P_FASTMAIL),
1818 ("emailcorner.net", &P_FASTMAIL),
1819 ("emailengine.net", &P_FASTMAIL),
1820 ("emailengine.org", &P_FASTMAIL),
1821 ("emailgroups.net", &P_FASTMAIL),
1822 ("emailplus.org", &P_FASTMAIL),
1823 ("emailuser.net", &P_FASTMAIL),
1824 ("eml.cc", &P_FASTMAIL),
1825 ("f-m.fm", &P_FASTMAIL),
1826 ("fast-email.com", &P_FASTMAIL),
1827 ("fast-mail.org", &P_FASTMAIL),
1828 ("fastem.com", &P_FASTMAIL),
1829 ("fastemail.us", &P_FASTMAIL),
1830 ("fastemailer.com", &P_FASTMAIL),
1831 ("fastest.cc", &P_FASTMAIL),
1832 ("fastimap.com", &P_FASTMAIL),
1833 ("fastmail.cn", &P_FASTMAIL),
1834 ("fastmail.co.uk", &P_FASTMAIL),
1835 ("fastmail.com", &P_FASTMAIL),
1836 ("fastmail.com.au", &P_FASTMAIL),
1837 ("fastmail.de", &P_FASTMAIL),
1838 ("fastmail.es", &P_FASTMAIL),
1839 ("fastmail.fm", &P_FASTMAIL),
1840 ("fastmail.fr", &P_FASTMAIL),
1841 ("fastmail.im", &P_FASTMAIL),
1842 ("fastmail.in", &P_FASTMAIL),
1843 ("fastmail.jp", &P_FASTMAIL),
1844 ("fastmail.mx", &P_FASTMAIL),
1845 ("fastmail.net", &P_FASTMAIL),
1846 ("fastmail.nl", &P_FASTMAIL),
1847 ("fastmail.org", &P_FASTMAIL),
1848 ("fastmail.se", &P_FASTMAIL),
1849 ("fastmail.to", &P_FASTMAIL),
1850 ("fastmail.tw", &P_FASTMAIL),
1851 ("fastmail.uk", &P_FASTMAIL),
1852 ("fastmail.us", &P_FASTMAIL),
1853 ("fastmailbox.net", &P_FASTMAIL),
1854 ("fastmessaging.com", &P_FASTMAIL),
1855 ("fea.st", &P_FASTMAIL),
1856 ("fmail.co.uk", &P_FASTMAIL),
1857 ("fmailbox.com", &P_FASTMAIL),
1858 ("fmgirl.com", &P_FASTMAIL),
1859 ("fmguy.com", &P_FASTMAIL),
1860 ("ftml.net", &P_FASTMAIL),
1861 ("h-mail.us", &P_FASTMAIL),
1862 ("hailmail.net", &P_FASTMAIL),
1863 ("imap-mail.com", &P_FASTMAIL),
1864 ("imap.cc", &P_FASTMAIL),
1865 ("imapmail.org", &P_FASTMAIL),
1866 ("inoutbox.com", &P_FASTMAIL),
1867 ("internet-e-mail.com", &P_FASTMAIL),
1868 ("internet-mail.org", &P_FASTMAIL),
1869 ("internetemails.net", &P_FASTMAIL),
1870 ("internetmailing.net", &P_FASTMAIL),
1871 ("jetemail.net", &P_FASTMAIL),
1872 ("justemail.net", &P_FASTMAIL),
1873 ("letterboxes.org", &P_FASTMAIL),
1874 ("mail-central.com", &P_FASTMAIL),
1875 ("mail-page.com", &P_FASTMAIL),
1876 ("mailandftp.com", &P_FASTMAIL),
1877 ("mailas.com", &P_FASTMAIL),
1878 ("mailbolt.com", &P_FASTMAIL),
1879 ("mailc.net", &P_FASTMAIL),
1880 ("mailcan.com", &P_FASTMAIL),
1881 ("mailforce.net", &P_FASTMAIL),
1882 ("mailftp.com", &P_FASTMAIL),
1883 ("mailhaven.com", &P_FASTMAIL),
1884 ("mailingaddress.org", &P_FASTMAIL),
1885 ("mailite.com", &P_FASTMAIL),
1886 ("mailmight.com", &P_FASTMAIL),
1887 ("mailnew.com", &P_FASTMAIL),
1888 ("mailsent.net", &P_FASTMAIL),
1889 ("mailservice.ms", &P_FASTMAIL),
1890 ("mailup.net", &P_FASTMAIL),
1891 ("mailworks.org", &P_FASTMAIL),
1892 ("ml1.net", &P_FASTMAIL),
1893 ("mm.st", &P_FASTMAIL),
1894 ("myfastmail.com", &P_FASTMAIL),
1895 ("mymacmail.com", &P_FASTMAIL),
1896 ("nospammail.net", &P_FASTMAIL),
1897 ("ownmail.net", &P_FASTMAIL),
1898 ("petml.com", &P_FASTMAIL),
1899 ("postinbox.com", &P_FASTMAIL),
1900 ("postpro.net", &P_FASTMAIL),
1901 ("proinbox.com", &P_FASTMAIL),
1902 ("promessage.com", &P_FASTMAIL),
1903 ("realemail.net", &P_FASTMAIL),
1904 ("reallyfast.biz", &P_FASTMAIL),
1905 ("reallyfast.info", &P_FASTMAIL),
1906 ("rushpost.com", &P_FASTMAIL),
1907 ("sent.as", &P_FASTMAIL),
1908 ("sent.at", &P_FASTMAIL),
1909 ("sent.com", &P_FASTMAIL),
1910 ("speedpost.net", &P_FASTMAIL),
1911 ("speedymail.org", &P_FASTMAIL),
1912 ("ssl-mail.com", &P_FASTMAIL),
1913 ("swift-mail.com", &P_FASTMAIL),
1914 ("the-fastest.net", &P_FASTMAIL),
1915 ("the-quickest.com", &P_FASTMAIL),
1916 ("theinternetemail.com", &P_FASTMAIL),
1917 ("veryfast.biz", &P_FASTMAIL),
1918 ("veryspeedy.net", &P_FASTMAIL),
1919 ("warpmail.net", &P_FASTMAIL),
1920 ("xsmail.com", &P_FASTMAIL),
1921 ("yepmail.net", &P_FASTMAIL),
1922 ("your-mail.com", &P_FASTMAIL),
1923 ("firemail.at", &P_FIREMAIL_DE),
1924 ("firemail.de", &P_FIREMAIL_DE),
1925 ("freenet.de", &P_FREENET_DE),
1926 ("gmail.com", &P_GMAIL),
1927 ("googlemail.com", &P_GMAIL),
1928 ("google.com", &P_GMAIL),
1929 ("gmx.net", &P_GMX_NET),
1930 ("gmx.de", &P_GMX_NET),
1931 ("gmx.at", &P_GMX_NET),
1932 ("gmx.ch", &P_GMX_NET),
1933 ("gmx.org", &P_GMX_NET),
1934 ("gmx.eu", &P_GMX_NET),
1935 ("gmx.info", &P_GMX_NET),
1936 ("gmx.biz", &P_GMX_NET),
1937 ("gmx.com", &P_GMX_NET),
1938 ("*.hermes.radio", &P_HERMES_RADIO),
1939 ("*.aco-connexion.org", &P_HERMES_RADIO),
1940 ("hey.com", &P_HEY_COM),
1941 ("i.ua", &P_I_UA),
1942 ("i3.net", &P_I3_NET),
1943 ("icloud.com", &P_ICLOUD),
1944 ("me.com", &P_ICLOUD),
1945 ("mac.com", &P_ICLOUD),
1946 ("ik.me", &P_INFOMANIAK_COM),
1947 ("kolst.com", &P_KOLST_COM),
1948 ("kontent.com", &P_KONTENT_COM),
1949 ("email.com", &P_MAIL_COM),
1950 ("groupmail.com", &P_MAIL_COM),
1951 ("post.com", &P_MAIL_COM),
1952 ("homemail.com", &P_MAIL_COM),
1953 ("housemail.com", &P_MAIL_COM),
1954 ("writeme.com", &P_MAIL_COM),
1955 ("mail.com", &P_MAIL_COM),
1956 ("mail-me.com", &P_MAIL_COM),
1957 ("workmail.com", &P_MAIL_COM),
1958 ("accountant.com", &P_MAIL_COM),
1959 ("activist.com", &P_MAIL_COM),
1960 ("adexec.com", &P_MAIL_COM),
1961 ("allergist.com", &P_MAIL_COM),
1962 ("alumni.com", &P_MAIL_COM),
1963 ("alumnidirector.com", &P_MAIL_COM),
1964 ("archaeologist.com", &P_MAIL_COM),
1965 ("auctioneer.net", &P_MAIL_COM),
1966 ("bartender.net", &P_MAIL_COM),
1967 ("brew-master.com", &P_MAIL_COM),
1968 ("chef.net", &P_MAIL_COM),
1969 ("chemist.com", &P_MAIL_COM),
1970 ("collector.org", &P_MAIL_COM),
1971 ("columnist.com", &P_MAIL_COM),
1972 ("comic.com", &P_MAIL_COM),
1973 ("consultant.com", &P_MAIL_COM),
1974 ("contractor.net", &P_MAIL_COM),
1975 ("counsellor.com", &P_MAIL_COM),
1976 ("deliveryman.com", &P_MAIL_COM),
1977 ("diplomats.com", &P_MAIL_COM),
1978 ("dr.com", &P_MAIL_COM),
1979 ("engineer.com", &P_MAIL_COM),
1980 ("financier.com", &P_MAIL_COM),
1981 ("fireman.net", &P_MAIL_COM),
1982 ("gardener.com", &P_MAIL_COM),
1983 ("geologist.com", &P_MAIL_COM),
1984 ("graphic-designer.com", &P_MAIL_COM),
1985 ("graduate.org", &P_MAIL_COM),
1986 ("hairdresser.net", &P_MAIL_COM),
1987 ("instructor.net", &P_MAIL_COM),
1988 ("insurer.com", &P_MAIL_COM),
1989 ("journalist.com", &P_MAIL_COM),
1990 ("legislator.com", &P_MAIL_COM),
1991 ("lobbyist.com", &P_MAIL_COM),
1992 ("minister.com", &P_MAIL_COM),
1993 ("musician.org", &P_MAIL_COM),
1994 ("optician.com", &P_MAIL_COM),
1995 ("orthodontist.net", &P_MAIL_COM),
1996 ("pediatrician.com", &P_MAIL_COM),
1997 ("photographer.net", &P_MAIL_COM),
1998 ("physicist.net", &P_MAIL_COM),
1999 ("politician.com", &P_MAIL_COM),
2000 ("presidency.com", &P_MAIL_COM),
2001 ("priest.com", &P_MAIL_COM),
2002 ("programmer.net", &P_MAIL_COM),
2003 ("publicist.com", &P_MAIL_COM),
2004 ("radiologist.net", &P_MAIL_COM),
2005 ("realtyagent.com", &P_MAIL_COM),
2006 ("registerednurses.com", &P_MAIL_COM),
2007 ("repairman.com", &P_MAIL_COM),
2008 ("representative.com", &P_MAIL_COM),
2009 ("salesperson.net", &P_MAIL_COM),
2010 ("secretary.net", &P_MAIL_COM),
2011 ("socialworker.net", &P_MAIL_COM),
2012 ("sociologist.com", &P_MAIL_COM),
2013 ("songwriter.net", &P_MAIL_COM),
2014 ("teachers.org", &P_MAIL_COM),
2015 ("techie.com", &P_MAIL_COM),
2016 ("technologist.com", &P_MAIL_COM),
2017 ("therapist.net", &P_MAIL_COM),
2018 ("umpire.com", &P_MAIL_COM),
2019 ("worker.com", &P_MAIL_COM),
2020 ("artlover.com", &P_MAIL_COM),
2021 ("bikerider.com", &P_MAIL_COM),
2022 ("birdlover.com", &P_MAIL_COM),
2023 ("blader.com", &P_MAIL_COM),
2024 ("kittymail.com", &P_MAIL_COM),
2025 ("lovecat.com", &P_MAIL_COM),
2026 ("marchmail.com", &P_MAIL_COM),
2027 ("boardermail.com", &P_MAIL_COM),
2028 ("catlover.com", &P_MAIL_COM),
2029 ("clubmember.org", &P_MAIL_COM),
2030 ("nonpartisan.com", &P_MAIL_COM),
2031 ("petlover.com", &P_MAIL_COM),
2032 ("doglover.com", &P_MAIL_COM),
2033 ("greenmail.net", &P_MAIL_COM),
2034 ("hackermail.com", &P_MAIL_COM),
2035 ("theplate.com", &P_MAIL_COM),
2036 ("bsdmail.com", &P_MAIL_COM),
2037 ("computer4u.com", &P_MAIL_COM),
2038 ("coolsite.net", &P_MAIL_COM),
2039 ("cyberdude.com", &P_MAIL_COM),
2040 ("cybergal.com", &P_MAIL_COM),
2041 ("cyberservices.com", &P_MAIL_COM),
2042 ("cyber-wizard.com", &P_MAIL_COM),
2043 ("linuxmail.org", &P_MAIL_COM),
2044 ("null.net", &P_MAIL_COM),
2045 ("solution4u.com", &P_MAIL_COM),
2046 ("tech-center.com", &P_MAIL_COM),
2047 ("webname.com", &P_MAIL_COM),
2048 ("acdcfan.com", &P_MAIL_COM),
2049 ("angelic.com", &P_MAIL_COM),
2050 ("discofan.com", &P_MAIL_COM),
2051 ("elvisfan.com", &P_MAIL_COM),
2052 ("hiphopfan.com", &P_MAIL_COM),
2053 ("kissfans.com", &P_MAIL_COM),
2054 ("madonnafan.com", &P_MAIL_COM),
2055 ("metalfan.com", &P_MAIL_COM),
2056 ("ninfan.com", &P_MAIL_COM),
2057 ("ravemail.com", &P_MAIL_COM),
2058 ("reggaefan.com", &P_MAIL_COM),
2059 ("snakebite.com", &P_MAIL_COM),
2060 ("bellair.net", &P_MAIL_COM),
2061 ("californiamail.com", &P_MAIL_COM),
2062 ("dallasmail.com", &P_MAIL_COM),
2063 ("nycmail.com", &P_MAIL_COM),
2064 ("pacific-ocean.com", &P_MAIL_COM),
2065 ("pacificwest.com", &P_MAIL_COM),
2066 ("sanfranmail.com", &P_MAIL_COM),
2067 ("usa.com", &P_MAIL_COM),
2068 ("africamail.com", &P_MAIL_COM),
2069 ("asia-mail.com", &P_MAIL_COM),
2070 ("australiamail.com", &P_MAIL_COM),
2071 ("berlin.com", &P_MAIL_COM),
2072 ("brazilmail.com", &P_MAIL_COM),
2073 ("chinamail.com", &P_MAIL_COM),
2074 ("dublin.com", &P_MAIL_COM),
2075 ("dutchmail.com", &P_MAIL_COM),
2076 ("englandmail.com", &P_MAIL_COM),
2077 ("europe.com", &P_MAIL_COM),
2078 ("arcticmail.com", &P_MAIL_COM),
2079 ("europemail.com", &P_MAIL_COM),
2080 ("germanymail.com", &P_MAIL_COM),
2081 ("irelandmail.com", &P_MAIL_COM),
2082 ("israelmail.com", &P_MAIL_COM),
2083 ("italymail.com", &P_MAIL_COM),
2084 ("koreamail.com", &P_MAIL_COM),
2085 ("mexicomail.com", &P_MAIL_COM),
2086 ("moscowmail.com", &P_MAIL_COM),
2087 ("munich.com", &P_MAIL_COM),
2088 ("asia.com", &P_MAIL_COM),
2089 ("polandmail.com", &P_MAIL_COM),
2090 ("safrica.com", &P_MAIL_COM),
2091 ("samerica.com", &P_MAIL_COM),
2092 ("scotlandmail.com", &P_MAIL_COM),
2093 ("spainmail.com", &P_MAIL_COM),
2094 ("swedenmail.com", &P_MAIL_COM),
2095 ("swissmail.com", &P_MAIL_COM),
2096 ("torontomail.com", &P_MAIL_COM),
2097 ("aircraftmail.com", &P_MAIL_COM),
2098 ("cash4u.com", &P_MAIL_COM),
2099 ("disposable.com", &P_MAIL_COM),
2100 ("execs.com", &P_MAIL_COM),
2101 ("fastservice.com", &P_MAIL_COM),
2102 ("instruction.com", &P_MAIL_COM),
2103 ("job4u.com", &P_MAIL_COM),
2104 ("net-shopping.com", &P_MAIL_COM),
2105 ("planetmail.com", &P_MAIL_COM),
2106 ("planetmail.net", &P_MAIL_COM),
2107 ("qualityservice.com", &P_MAIL_COM),
2108 ("rescueteam.com", &P_MAIL_COM),
2109 ("surgical.net", &P_MAIL_COM),
2110 ("atheist.com", &P_MAIL_COM),
2111 ("disciples.com", &P_MAIL_COM),
2112 ("muslim.com", &P_MAIL_COM),
2113 ("protestant.com", &P_MAIL_COM),
2114 ("reborn.com", &P_MAIL_COM),
2115 ("reincarnate.com", &P_MAIL_COM),
2116 ("religious.com", &P_MAIL_COM),
2117 ("saintly.com", &P_MAIL_COM),
2118 ("brew-meister.com", &P_MAIL_COM),
2119 ("cutey.com", &P_MAIL_COM),
2120 ("dbzmail.com", &P_MAIL_COM),
2121 ("doramail.com", &P_MAIL_COM),
2122 ("galaxyhit.com", &P_MAIL_COM),
2123 ("hilarious.com", &P_MAIL_COM),
2124 ("humanoid.net", &P_MAIL_COM),
2125 ("hot-shot.com", &P_MAIL_COM),
2126 ("inorbit.com", &P_MAIL_COM),
2127 ("iname.com", &P_MAIL_COM),
2128 ("innocent.com", &P_MAIL_COM),
2129 ("keromail.com", &P_MAIL_COM),
2130 ("myself.com", &P_MAIL_COM),
2131 ("rocketship.com", &P_MAIL_COM),
2132 ("toothfairy.com", &P_MAIL_COM),
2133 ("toke.com", &P_MAIL_COM),
2134 ("tvstar.com", &P_MAIL_COM),
2135 ("uymail.com", &P_MAIL_COM),
2136 ("2trom.com", &P_MAIL_COM),
2137 ("mail.de", &P_MAIL_DE),
2138 ("mail.ru", &P_MAIL_RU),
2139 ("inbox.ru", &P_MAIL_RU),
2140 ("internet.ru", &P_MAIL_RU),
2141 ("bk.ru", &P_MAIL_RU),
2142 ("list.ru", &P_MAIL_RU),
2143 ("mail2tor.com", &P_MAIL2TOR),
2144 ("mailbox.org", &P_MAILBOX_ORG),
2145 ("secure.mailbox.org", &P_MAILBOX_ORG),
2146 ("mailo.com", &P_MAILO_COM),
2147 ("migadu.com", &P_MIGADU),
2148 ("nauta.cu", &P_NAUTA_CU),
2149 ("naver.com", &P_NAVER),
2150 ("nine.testrun.org", &P_NINE_TESTRUN_ORG),
2151 ("nubo.coop", &P_NUBO_COOP),
2152 ("hotmail.com", &P_OUTLOOK_COM),
2153 ("outlook.com", &P_OUTLOOK_COM),
2154 ("office365.com", &P_OUTLOOK_COM),
2155 ("outlook.com.tr", &P_OUTLOOK_COM),
2156 ("live.com", &P_OUTLOOK_COM),
2157 ("outlook.de", &P_OUTLOOK_COM),
2158 ("ouvaton.org", &P_OUVATON_COOP),
2159 ("posteo.de", &P_POSTEO),
2160 ("posteo.af", &P_POSTEO),
2161 ("posteo.at", &P_POSTEO),
2162 ("posteo.be", &P_POSTEO),
2163 ("posteo.ca", &P_POSTEO),
2164 ("posteo.ch", &P_POSTEO),
2165 ("posteo.cl", &P_POSTEO),
2166 ("posteo.co", &P_POSTEO),
2167 ("posteo.co.uk", &P_POSTEO),
2168 ("posteo.com", &P_POSTEO),
2169 ("posteo.com.br", &P_POSTEO),
2170 ("posteo.cr", &P_POSTEO),
2171 ("posteo.cz", &P_POSTEO),
2172 ("posteo.dk", &P_POSTEO),
2173 ("posteo.ee", &P_POSTEO),
2174 ("posteo.es", &P_POSTEO),
2175 ("posteo.eu", &P_POSTEO),
2176 ("posteo.fi", &P_POSTEO),
2177 ("posteo.gl", &P_POSTEO),
2178 ("posteo.gr", &P_POSTEO),
2179 ("posteo.hn", &P_POSTEO),
2180 ("posteo.hr", &P_POSTEO),
2181 ("posteo.hu", &P_POSTEO),
2182 ("posteo.ie", &P_POSTEO),
2183 ("posteo.in", &P_POSTEO),
2184 ("posteo.is", &P_POSTEO),
2185 ("posteo.it", &P_POSTEO),
2186 ("posteo.jp", &P_POSTEO),
2187 ("posteo.la", &P_POSTEO),
2188 ("posteo.li", &P_POSTEO),
2189 ("posteo.lt", &P_POSTEO),
2190 ("posteo.lu", &P_POSTEO),
2191 ("posteo.me", &P_POSTEO),
2192 ("posteo.mx", &P_POSTEO),
2193 ("posteo.my", &P_POSTEO),
2194 ("posteo.net", &P_POSTEO),
2195 ("posteo.nl", &P_POSTEO),
2196 ("posteo.no", &P_POSTEO),
2197 ("posteo.nz", &P_POSTEO),
2198 ("posteo.org", &P_POSTEO),
2199 ("posteo.pe", &P_POSTEO),
2200 ("posteo.pl", &P_POSTEO),
2201 ("posteo.pm", &P_POSTEO),
2202 ("posteo.pt", &P_POSTEO),
2203 ("posteo.ro", &P_POSTEO),
2204 ("posteo.ru", &P_POSTEO),
2205 ("posteo.se", &P_POSTEO),
2206 ("posteo.sg", &P_POSTEO),
2207 ("posteo.si", &P_POSTEO),
2208 ("posteo.tn", &P_POSTEO),
2209 ("posteo.uk", &P_POSTEO),
2210 ("posteo.us", &P_POSTEO),
2211 ("protonmail.com", &P_PROTONMAIL),
2212 ("protonmail.ch", &P_PROTONMAIL),
2213 ("pm.me", &P_PROTONMAIL),
2214 ("purelymail.com", &P_PURELYMAIL_COM),
2215 ("cheapermail.com", &P_PURELYMAIL_COM),
2216 ("placeq.com", &P_PURELYMAIL_COM),
2217 ("rethinkmail.com", &P_PURELYMAIL_COM),
2218 ("worldofmail.com", &P_PURELYMAIL_COM),
2219 ("qq.com", &P_QQ),
2220 ("foxmail.com", &P_QQ),
2221 ("rambler.ru", &P_RAMBLER_RU),
2222 ("autorambler.ru", &P_RAMBLER_RU),
2223 ("myrambler.ru", &P_RAMBLER_RU),
2224 ("rambler.ua", &P_RAMBLER_RU),
2225 ("lenta.ru", &P_RAMBLER_RU),
2226 ("ro.ru", &P_RAMBLER_RU),
2227 ("r0.ru", &P_RAMBLER_RU),
2228 ("riseup.net", &P_RISEUP_NET),
2229 ("rogers.com", &P_ROGERS_COM),
2230 ("sonic.net", &P_SONIC),
2231 ("stinpriza.net", &P_STINPRIZA_NET),
2232 ("stinpriza.eu", &P_STINPRIZA_NET),
2233 ("el-hoyo.net", &P_STINPRIZA_NET),
2234 ("systemausfall.org", &P_SYSTEMAUSFALL_ORG),
2235 ("solidaris.me", &P_SYSTEMAUSFALL_ORG),
2236 ("systemli.org", &P_SYSTEMLI_ORG),
2237 ("t-online.de", &P_T_ONLINE),
2238 ("magenta.de", &P_T_ONLINE),
2239 ("tiscali.it", &P_TISCALI_IT),
2240 ("tutanota.com", &P_TUTANOTA),
2241 ("tutanota.de", &P_TUTANOTA),
2242 ("tutamail.com", &P_TUTANOTA),
2243 ("tuta.io", &P_TUTANOTA),
2244 ("keemail.me", &P_TUTANOTA),
2245 ("ukr.net", &P_UKR_NET),
2246 ("undernet.uy", &P_UNDERNET_UY),
2247 ("vfemail.net", &P_VFEMAIL),
2248 ("vivaldi.net", &P_VIVALDI),
2249 ("vk.com", &P_VK_COM),
2250 ("vodafone.de", &P_VODAFONE_DE),
2251 ("vodafonemail.de", &P_VODAFONE_DE),
2252 ("web.de", &P_WEB_DE),
2253 ("email.de", &P_WEB_DE),
2254 ("flirt.ms", &P_WEB_DE),
2255 ("hallo.ms", &P_WEB_DE),
2256 ("kuss.ms", &P_WEB_DE),
2257 ("love.ms", &P_WEB_DE),
2258 ("magic.ms", &P_WEB_DE),
2259 ("singles.ms", &P_WEB_DE),
2260 ("cool.ms", &P_WEB_DE),
2261 ("kanzler.ms", &P_WEB_DE),
2262 ("okay.ms", &P_WEB_DE),
2263 ("party.ms", &P_WEB_DE),
2264 ("pop.ms", &P_WEB_DE),
2265 ("stars.ms", &P_WEB_DE),
2266 ("techno.ms", &P_WEB_DE),
2267 ("clever.ms", &P_WEB_DE),
2268 ("deutschland.ms", &P_WEB_DE),
2269 ("genial.ms", &P_WEB_DE),
2270 ("ich.ms", &P_WEB_DE),
2271 ("online.ms", &P_WEB_DE),
2272 ("smart.ms", &P_WEB_DE),
2273 ("wichtig.ms", &P_WEB_DE),
2274 ("action.ms", &P_WEB_DE),
2275 ("fussball.ms", &P_WEB_DE),
2276 ("joker.ms", &P_WEB_DE),
2277 ("planet.ms", &P_WEB_DE),
2278 ("power.ms", &P_WEB_DE),
2279 ("wkpb.de", &P_WKPB_DE),
2280 ("yahoo.com", &P_YAHOO),
2281 ("yahoo.de", &P_YAHOO),
2282 ("yahoo.it", &P_YAHOO),
2283 ("yahoo.fr", &P_YAHOO),
2284 ("yahoo.es", &P_YAHOO),
2285 ("yahoo.se", &P_YAHOO),
2286 ("yahoo.co.uk", &P_YAHOO),
2287 ("yahoo.co.nz", &P_YAHOO),
2288 ("yahoo.com.au", &P_YAHOO),
2289 ("yahoo.com.ar", &P_YAHOO),
2290 ("yahoo.com.br", &P_YAHOO),
2291 ("yahoo.com.mx", &P_YAHOO),
2292 ("myyahoo.com", &P_YAHOO),
2293 ("ymail.com", &P_YAHOO),
2294 ("rocketmail.com", &P_YAHOO),
2295 ("yahoodns.net", &P_YAHOO),
2296 ("yandex.com", &P_YANDEX_RU),
2297 ("yandex.by", &P_YANDEX_RU),
2298 ("yandex.kz", &P_YANDEX_RU),
2299 ("yandex.ru", &P_YANDEX_RU),
2300 ("yandex.ua", &P_YANDEX_RU),
2301 ("ya.ru", &P_YANDEX_RU),
2302 ("narod.ru", &P_YANDEX_RU),
2303 ("yggmail", &P_YGGMAIL),
2304 ("ziggo.nl", &P_ZIGGO_NL),
2305 ("zohomail.eu", &P_ZOHO),
2306 ("zohomail.com", &P_ZOHO),
2307 ("zoho.com", &P_ZOHO),
2308];
2309
2310pub(crate) static PROVIDER_IDS: LazyLock<HashMap<&'static str, &'static Provider>> =
2311 LazyLock::new(|| {
2312 HashMap::from([
2313 ("163", &P_163),
2314 ("aktivix.org", &P_AKTIVIX_ORG),
2315 ("aliyun", &P_ALIYUN),
2316 ("aol", &P_AOL),
2317 ("arcor.de", &P_ARCOR_DE),
2318 ("autistici.org", &P_AUTISTICI_ORG),
2319 ("blindzeln.org", &P_BLINDZELN_ORG),
2320 ("bluewin.ch", &P_BLUEWIN_CH),
2321 ("chello.at", &P_CHELLO_AT),
2322 ("comcast", &P_COMCAST),
2323 ("dismail.de", &P_DISMAIL_DE),
2324 ("disroot", &P_DISROOT),
2325 ("e.email", &P_E_EMAIL),
2326 ("espiv.net", &P_ESPIV_NET),
2327 ("example.com", &P_EXAMPLE_COM),
2328 ("fastmail", &P_FASTMAIL),
2329 ("firemail.de", &P_FIREMAIL_DE),
2330 ("freenet.de", &P_FREENET_DE),
2331 ("gmail", &P_GMAIL),
2332 ("gmx.net", &P_GMX_NET),
2333 ("hermes.radio", &P_HERMES_RADIO),
2334 ("hey.com", &P_HEY_COM),
2335 ("i.ua", &P_I_UA),
2336 ("i3.net", &P_I3_NET),
2337 ("icloud", &P_ICLOUD),
2338 ("infomaniak.com", &P_INFOMANIAK_COM),
2339 ("kolst.com", &P_KOLST_COM),
2340 ("kontent.com", &P_KONTENT_COM),
2341 ("mail.com", &P_MAIL_COM),
2342 ("mail.de", &P_MAIL_DE),
2343 ("mail.ru", &P_MAIL_RU),
2344 ("mail2tor", &P_MAIL2TOR),
2345 ("mailbox.org", &P_MAILBOX_ORG),
2346 ("mailo.com", &P_MAILO_COM),
2347 ("migadu", &P_MIGADU),
2348 ("nauta.cu", &P_NAUTA_CU),
2349 ("naver", &P_NAVER),
2350 ("nine.testrun.org", &P_NINE_TESTRUN_ORG),
2351 ("nubo.coop", &P_NUBO_COOP),
2352 ("outlook.com", &P_OUTLOOK_COM),
2353 ("ouvaton.coop", &P_OUVATON_COOP),
2354 ("posteo", &P_POSTEO),
2355 ("protonmail", &P_PROTONMAIL),
2356 ("purelymail.com", &P_PURELYMAIL_COM),
2357 ("qq", &P_QQ),
2358 ("rambler.ru", &P_RAMBLER_RU),
2359 ("riseup.net", &P_RISEUP_NET),
2360 ("rogers.com", &P_ROGERS_COM),
2361 ("sonic", &P_SONIC),
2362 ("stinpriza.net", &P_STINPRIZA_NET),
2363 ("systemausfall.org", &P_SYSTEMAUSFALL_ORG),
2364 ("systemli.org", &P_SYSTEMLI_ORG),
2365 ("t-online", &P_T_ONLINE),
2366 ("tiscali.it", &P_TISCALI_IT),
2367 ("tutanota", &P_TUTANOTA),
2368 ("ukr.net", &P_UKR_NET),
2369 ("undernet.uy", &P_UNDERNET_UY),
2370 ("vfemail", &P_VFEMAIL),
2371 ("vivaldi", &P_VIVALDI),
2372 ("vk.com", &P_VK_COM),
2373 ("vodafone.de", &P_VODAFONE_DE),
2374 ("web.de", &P_WEB_DE),
2375 ("wkpb.de", &P_WKPB_DE),
2376 ("yahoo", &P_YAHOO),
2377 ("yandex.ru", &P_YANDEX_RU),
2378 ("yggmail", &P_YGGMAIL),
2379 ("ziggo.nl", &P_ZIGGO_NL),
2380 ("zoho", &P_ZOHO),
2381 ])
2382 });
2383
2384pub static _PROVIDER_UPDATED: LazyLock<chrono::NaiveDate> =
2385 LazyLock::new(|| chrono::NaiveDate::from_ymd_opt(2026, 4, 21).unwrap());