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(&[ConfigDefault {
894 key: Config::MediaQuality,
895 value: "1",
896 }]),
897 oauth2_authorizer: None,
898};
899
900static P_NAVER: Provider = Provider {
902 id: "naver",
903 status: Status::Preparation,
904 before_login_hint: "Manually enabling IMAP/SMTP is required.",
905 after_login_hint: "",
906 overview_page: "https://providers.delta.chat/naver",
907 server: &[
908 Server {
909 protocol: Imap,
910 socket: Ssl,
911 hostname: "imap.naver.com",
912 port: 993,
913 username_pattern: Emaillocalpart,
914 },
915 Server {
916 protocol: Smtp,
917 socket: Starttls,
918 hostname: "smtp.naver.com",
919 port: 587,
920 username_pattern: Email,
921 },
922 ],
923 opt: ProviderOptions::new(),
924 config_defaults: None,
925 oauth2_authorizer: None,
926};
927
928static P_NINE_TESTRUN_ORG: Provider = Provider {
930 id: "nine.testrun.org",
931 status: Status::Ok,
932 before_login_hint: "",
933 after_login_hint: "",
934 overview_page: "https://providers.delta.chat/nine-testrun-org",
935 server: &[
936 Server {
937 protocol: Imap,
938 socket: Ssl,
939 hostname: "nine.testrun.org",
940 port: 443,
941 username_pattern: Email,
942 },
943 Server {
944 protocol: Smtp,
945 socket: Ssl,
946 hostname: "nine.testrun.org",
947 port: 443,
948 username_pattern: Email,
949 },
950 Server {
951 protocol: Imap,
952 socket: Ssl,
953 hostname: "nine.testrun.org",
954 port: 993,
955 username_pattern: Email,
956 },
957 Server {
958 protocol: Smtp,
959 socket: Ssl,
960 hostname: "nine.testrun.org",
961 port: 465,
962 username_pattern: Email,
963 },
964 Server {
965 protocol: Imap,
966 socket: Starttls,
967 hostname: "nine.testrun.org",
968 port: 143,
969 username_pattern: Email,
970 },
971 Server {
972 protocol: Smtp,
973 socket: Starttls,
974 hostname: "nine.testrun.org",
975 port: 587,
976 username_pattern: Email,
977 },
978 ],
979 opt: ProviderOptions::new(),
980 config_defaults: None,
981 oauth2_authorizer: None,
982};
983
984static P_NUBO_COOP: Provider = Provider {
986 id: "nubo.coop",
987 status: Status::Ok,
988 before_login_hint: "",
989 after_login_hint: "",
990 overview_page: "https://providers.delta.chat/nubo-coop",
991 server: &[
992 Server {
993 protocol: Imap,
994 socket: Ssl,
995 hostname: "mail.nubo.coop",
996 port: 993,
997 username_pattern: Email,
998 },
999 Server {
1000 protocol: Smtp,
1001 socket: Ssl,
1002 hostname: "mail.nubo.coop",
1003 port: 465,
1004 username_pattern: Email,
1005 },
1006 ],
1007 opt: ProviderOptions::new(),
1008 config_defaults: None,
1009 oauth2_authorizer: None,
1010};
1011
1012static P_OUTLOOK_COM: Provider = Provider {
1014 id: "outlook.com",
1015 status: Status::Broken,
1016 before_login_hint: "Unfortunately, Outlook does not allow using passwords anymore, per-app-passwords are currently not working.",
1017 after_login_hint: "",
1018 overview_page: "https://providers.delta.chat/outlook-com",
1019 server: &[
1020 Server {
1021 protocol: Imap,
1022 socket: Ssl,
1023 hostname: "outlook.office365.com",
1024 port: 993,
1025 username_pattern: Email,
1026 },
1027 Server {
1028 protocol: Smtp,
1029 socket: Starttls,
1030 hostname: "smtp.office365.com",
1031 port: 587,
1032 username_pattern: Email,
1033 },
1034 ],
1035 opt: ProviderOptions::new(),
1036 config_defaults: None,
1037 oauth2_authorizer: None,
1038};
1039
1040static P_OUVATON_COOP: Provider = Provider {
1042 id: "ouvaton.coop",
1043 status: Status::Ok,
1044 before_login_hint: "",
1045 after_login_hint: "",
1046 overview_page: "https://providers.delta.chat/ouvaton-coop",
1047 server: &[
1048 Server {
1049 protocol: Imap,
1050 socket: Ssl,
1051 hostname: "imap.ouvaton.coop",
1052 port: 993,
1053 username_pattern: Email,
1054 },
1055 Server {
1056 protocol: Smtp,
1057 socket: Ssl,
1058 hostname: "smtp.ouvaton.coop",
1059 port: 465,
1060 username_pattern: Email,
1061 },
1062 ],
1063 opt: ProviderOptions::new(),
1064 config_defaults: None,
1065 oauth2_authorizer: None,
1066};
1067
1068static P_POSTEO: Provider = Provider {
1070 id: "posteo",
1071 status: Status::Preparation,
1072 before_login_hint: "You must create an app-specific password before you can log in.",
1073 after_login_hint: "",
1074 overview_page: "https://providers.delta.chat/posteo",
1075 server: &[
1076 Server {
1077 protocol: Imap,
1078 socket: Ssl,
1079 hostname: "posteo.de",
1080 port: 993,
1081 username_pattern: Email,
1082 },
1083 Server {
1084 protocol: Imap,
1085 socket: Starttls,
1086 hostname: "posteo.de",
1087 port: 143,
1088 username_pattern: Email,
1089 },
1090 Server {
1091 protocol: Smtp,
1092 socket: Ssl,
1093 hostname: "posteo.de",
1094 port: 465,
1095 username_pattern: Email,
1096 },
1097 Server {
1098 protocol: Smtp,
1099 socket: Starttls,
1100 hostname: "posteo.de",
1101 port: 587,
1102 username_pattern: Email,
1103 },
1104 ],
1105 opt: ProviderOptions::new(),
1106 config_defaults: None,
1107 oauth2_authorizer: None,
1108};
1109
1110static P_PROTONMAIL: Provider = Provider {
1112 id: "protonmail",
1113 status: Status::Broken,
1114 before_login_hint: "Protonmail does not offer the standard IMAP e-mail protocol, so you cannot log in with to Protonmail.",
1115 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.",
1116 overview_page: "https://providers.delta.chat/protonmail",
1117 server: &[],
1118 opt: ProviderOptions::new(),
1119 config_defaults: None,
1120 oauth2_authorizer: None,
1121};
1122
1123static P_PURELYMAIL_COM: Provider = Provider {
1125 id: "purelymail.com",
1126 status: Status::Ok,
1127 before_login_hint: "",
1128 after_login_hint: "",
1129 overview_page: "https://providers.delta.chat/purelymail-com",
1130 server: &[
1131 Server {
1132 protocol: Imap,
1133 socket: Ssl,
1134 hostname: "imap.purelymail.com",
1135 port: 993,
1136 username_pattern: Email,
1137 },
1138 Server {
1139 protocol: Smtp,
1140 socket: Ssl,
1141 hostname: "smtp.purelymail.com",
1142 port: 465,
1143 username_pattern: Email,
1144 },
1145 ],
1146 opt: ProviderOptions::new(),
1147 config_defaults: None,
1148 oauth2_authorizer: None,
1149};
1150
1151static P_QQ: Provider = Provider {
1153 id: "qq",
1154 status: Status::Preparation,
1155 before_login_hint: "Manually enabling IMAP/SMTP and creating an app-specific password are required.",
1156 after_login_hint: "",
1157 overview_page: "https://providers.delta.chat/qq",
1158 server: &[
1159 Server {
1160 protocol: Imap,
1161 socket: Ssl,
1162 hostname: "imap.qq.com",
1163 port: 993,
1164 username_pattern: Emaillocalpart,
1165 },
1166 Server {
1167 protocol: Smtp,
1168 socket: Ssl,
1169 hostname: "smtp.qq.com",
1170 port: 465,
1171 username_pattern: Email,
1172 },
1173 ],
1174 opt: ProviderOptions::new(),
1175 config_defaults: None,
1176 oauth2_authorizer: None,
1177};
1178
1179static P_RAMBLER_RU: Provider = Provider {
1181 id: "rambler.ru",
1182 status: Status::Preparation,
1183 before_login_hint: "Чтобы войти в Рамблер/почта, необходимо предварительно включить доступ с помощью почтовых клиентов на сайте mail.rambler.ru",
1184 after_login_hint: "",
1185 overview_page: "https://providers.delta.chat/rambler-ru",
1186 server: &[
1187 Server {
1188 protocol: Imap,
1189 socket: Ssl,
1190 hostname: "imap.rambler.ru",
1191 port: 993,
1192 username_pattern: Email,
1193 },
1194 Server {
1195 protocol: Smtp,
1196 socket: Ssl,
1197 hostname: "smtp.rambler.ru",
1198 port: 465,
1199 username_pattern: Email,
1200 },
1201 Server {
1202 protocol: Imap,
1203 socket: Starttls,
1204 hostname: "imap.rambler.ru",
1205 port: 143,
1206 username_pattern: Email,
1207 },
1208 ],
1209 opt: ProviderOptions::new(),
1210 config_defaults: None,
1211 oauth2_authorizer: None,
1212};
1213
1214static P_RISEUP_NET: Provider = Provider {
1216 id: "riseup.net",
1217 status: Status::Ok,
1218 before_login_hint: "",
1219 after_login_hint: "",
1220 overview_page: "https://providers.delta.chat/riseup-net",
1221 server: &[
1222 Server {
1223 protocol: Imap,
1224 socket: Ssl,
1225 hostname: "mail.riseup.net",
1226 port: 993,
1227 username_pattern: Email,
1228 },
1229 Server {
1230 protocol: Smtp,
1231 socket: Ssl,
1232 hostname: "mail.riseup.net",
1233 port: 465,
1234 username_pattern: Email,
1235 },
1236 ],
1237 opt: ProviderOptions::new(),
1238 config_defaults: None,
1239 oauth2_authorizer: None,
1240};
1241
1242static P_ROGERS_COM: Provider = Provider {
1244 id: "rogers.com",
1245 status: Status::Ok,
1246 before_login_hint: "",
1247 after_login_hint: "",
1248 overview_page: "https://providers.delta.chat/rogers-com",
1249 server: &[],
1250 opt: ProviderOptions::new(),
1251 config_defaults: None,
1252 oauth2_authorizer: None,
1253};
1254
1255static P_SONIC: Provider = Provider {
1257 id: "sonic",
1258 status: Status::Ok,
1259 before_login_hint: "",
1260 after_login_hint: "",
1261 overview_page: "https://providers.delta.chat/sonic",
1262 server: &[],
1263 opt: ProviderOptions::new(),
1264 config_defaults: None,
1265 oauth2_authorizer: None,
1266};
1267
1268static P_STINPRIZA_NET: Provider = Provider {
1270 id: "stinpriza.net",
1271 status: Status::Ok,
1272 before_login_hint: "",
1273 after_login_hint: "",
1274 overview_page: "https://providers.delta.chat/stinpriza-net",
1275 server: &[
1276 Server {
1277 protocol: Imap,
1278 socket: Starttls,
1279 hostname: "stinpriza.net",
1280 port: 143,
1281 username_pattern: Email,
1282 },
1283 Server {
1284 protocol: Smtp,
1285 socket: Starttls,
1286 hostname: "stinpriza.net",
1287 port: 587,
1288 username_pattern: Email,
1289 },
1290 ],
1291 opt: ProviderOptions {
1292 strict_tls: true,
1293 ..ProviderOptions::new()
1294 },
1295 config_defaults: None,
1296 oauth2_authorizer: None,
1297};
1298
1299static P_SYSTEMAUSFALL_ORG: Provider = Provider {
1301 id: "systemausfall.org",
1302 status: Status::Ok,
1303 before_login_hint: "",
1304 after_login_hint: "",
1305 overview_page: "https://providers.delta.chat/systemausfall-org",
1306 server: &[
1307 Server {
1308 protocol: Imap,
1309 socket: Ssl,
1310 hostname: "mail.systemausfall.org",
1311 port: 993,
1312 username_pattern: Email,
1313 },
1314 Server {
1315 protocol: Smtp,
1316 socket: Ssl,
1317 hostname: "mail.systemausfall.org",
1318 port: 465,
1319 username_pattern: Email,
1320 },
1321 ],
1322 opt: ProviderOptions::new(),
1323 config_defaults: None,
1324 oauth2_authorizer: None,
1325};
1326
1327static P_SYSTEMLI_ORG: Provider = Provider {
1329 id: "systemli.org",
1330 status: Status::Ok,
1331 before_login_hint: "",
1332 after_login_hint: "",
1333 overview_page: "https://providers.delta.chat/systemli-org",
1334 server: &[
1335 Server {
1336 protocol: Imap,
1337 socket: Ssl,
1338 hostname: "mail.systemli.org",
1339 port: 993,
1340 username_pattern: Email,
1341 },
1342 Server {
1343 protocol: Smtp,
1344 socket: Ssl,
1345 hostname: "mail.systemli.org",
1346 port: 465,
1347 username_pattern: Email,
1348 },
1349 ],
1350 opt: ProviderOptions::new(),
1351 config_defaults: None,
1352 oauth2_authorizer: None,
1353};
1354
1355static P_T_ONLINE: Provider = Provider {
1357 id: "t-online",
1358 status: Status::Preparation,
1359 before_login_hint: "To use a T-Online email address, you need to create an app password in the web interface.",
1360 after_login_hint: "",
1361 overview_page: "https://providers.delta.chat/t-online",
1362 server: &[
1363 Server {
1364 protocol: Imap,
1365 socket: Ssl,
1366 hostname: "secureimap.t-online.de",
1367 port: 993,
1368 username_pattern: Email,
1369 },
1370 Server {
1371 protocol: Smtp,
1372 socket: Ssl,
1373 hostname: "securesmtp.t-online.de",
1374 port: 465,
1375 username_pattern: Email,
1376 },
1377 ],
1378 opt: ProviderOptions::new(),
1379 config_defaults: None,
1380 oauth2_authorizer: None,
1381};
1382
1383static P_TISCALI_IT: Provider = Provider {
1385 id: "tiscali.it",
1386 status: Status::Ok,
1387 before_login_hint: "",
1388 after_login_hint: "",
1389 overview_page: "https://providers.delta.chat/tiscali-it",
1390 server: &[
1391 Server {
1392 protocol: Imap,
1393 socket: Ssl,
1394 hostname: "imap.tiscali.it",
1395 port: 993,
1396 username_pattern: Email,
1397 },
1398 Server {
1399 protocol: Smtp,
1400 socket: Ssl,
1401 hostname: "smtp.tiscali.it",
1402 port: 465,
1403 username_pattern: Email,
1404 },
1405 ],
1406 opt: ProviderOptions::new(),
1407 config_defaults: None,
1408 oauth2_authorizer: None,
1409};
1410
1411static P_TUTANOTA: Provider = Provider {
1413 id: "tutanota",
1414 status: Status::Broken,
1415 before_login_hint: "Tutanota does not offer the standard IMAP e-mail protocol, so you cannot log in to Tutanota.",
1416 after_login_hint: "",
1417 overview_page: "https://providers.delta.chat/tutanota",
1418 server: &[],
1419 opt: ProviderOptions::new(),
1420 config_defaults: None,
1421 oauth2_authorizer: None,
1422};
1423
1424static P_UKR_NET: Provider = Provider {
1426 id: "ukr.net",
1427 status: Status::Preparation,
1428 before_login_hint: "You must allow IMAP access to your account before you can login.",
1429 after_login_hint: "",
1430 overview_page: "https://providers.delta.chat/ukr-net",
1431 server: &[
1432 Server {
1433 protocol: Imap,
1434 socket: Ssl,
1435 hostname: "imap.ukr.net",
1436 port: 993,
1437 username_pattern: Email,
1438 },
1439 Server {
1440 protocol: Smtp,
1441 socket: Ssl,
1442 hostname: "smtp.ukr.net",
1443 port: 465,
1444 username_pattern: Email,
1445 },
1446 ],
1447 opt: ProviderOptions::new(),
1448 config_defaults: None,
1449 oauth2_authorizer: None,
1450};
1451
1452static P_UNDERNET_UY: Provider = Provider {
1454 id: "undernet.uy",
1455 status: Status::Ok,
1456 before_login_hint: "",
1457 after_login_hint: "",
1458 overview_page: "https://providers.delta.chat/undernet-uy",
1459 server: &[
1460 Server {
1461 protocol: Imap,
1462 socket: Starttls,
1463 hostname: "undernet.uy",
1464 port: 143,
1465 username_pattern: Email,
1466 },
1467 Server {
1468 protocol: Smtp,
1469 socket: Starttls,
1470 hostname: "undernet.uy",
1471 port: 587,
1472 username_pattern: Email,
1473 },
1474 ],
1475 opt: ProviderOptions::new(),
1476 config_defaults: None,
1477 oauth2_authorizer: None,
1478};
1479
1480static P_VFEMAIL: Provider = Provider {
1482 id: "vfemail",
1483 status: Status::Ok,
1484 before_login_hint: "",
1485 after_login_hint: "",
1486 overview_page: "https://providers.delta.chat/vfemail",
1487 server: &[],
1488 opt: ProviderOptions::new(),
1489 config_defaults: None,
1490 oauth2_authorizer: None,
1491};
1492
1493static P_VIVALDI: Provider = Provider {
1495 id: "vivaldi",
1496 status: Status::Ok,
1497 before_login_hint: "",
1498 after_login_hint: "",
1499 overview_page: "https://providers.delta.chat/vivaldi",
1500 server: &[
1501 Server {
1502 protocol: Imap,
1503 socket: Starttls,
1504 hostname: "imap.vivaldi.net",
1505 port: 143,
1506 username_pattern: Email,
1507 },
1508 Server {
1509 protocol: Smtp,
1510 socket: Starttls,
1511 hostname: "smtp.vivaldi.net",
1512 port: 587,
1513 username_pattern: Email,
1514 },
1515 ],
1516 opt: ProviderOptions::new(),
1517 config_defaults: None,
1518 oauth2_authorizer: None,
1519};
1520
1521static P_VK_COM: Provider = Provider {
1523 id: "vk.com",
1524 status: Status::Preparation,
1525 before_login_hint: "Вам необходимо сгенерировать \"пароль для внешнего приложения\" в веб-интерфейсе mail.ru https://account.mail.ru/user/2-step-auth/passwords/ чтобы vk.com работал с chatmail.",
1526 after_login_hint: "",
1527 overview_page: "https://providers.delta.chat/vk-com",
1528 server: &[
1529 Server {
1530 protocol: Imap,
1531 socket: Ssl,
1532 hostname: "imap.mail.ru",
1533 port: 993,
1534 username_pattern: Email,
1535 },
1536 Server {
1537 protocol: Smtp,
1538 socket: Ssl,
1539 hostname: "smtp.mail.ru",
1540 port: 465,
1541 username_pattern: Email,
1542 },
1543 ],
1544 opt: ProviderOptions::new(),
1545 config_defaults: None,
1546 oauth2_authorizer: None,
1547};
1548
1549static P_VODAFONE_DE: Provider = Provider {
1551 id: "vodafone.de",
1552 status: Status::Ok,
1553 before_login_hint: "",
1554 after_login_hint: "",
1555 overview_page: "https://providers.delta.chat/vodafone-de",
1556 server: &[
1557 Server {
1558 protocol: Imap,
1559 socket: Ssl,
1560 hostname: "imap.vodafonemail.de",
1561 port: 993,
1562 username_pattern: Email,
1563 },
1564 Server {
1565 protocol: Smtp,
1566 socket: Starttls,
1567 hostname: "smtp.vodafonemail.de",
1568 port: 587,
1569 username_pattern: Email,
1570 },
1571 ],
1572 opt: ProviderOptions::new(),
1573 config_defaults: None,
1574 oauth2_authorizer: None,
1575};
1576
1577static P_WEB_DE: Provider = Provider {
1579 id: "web.de",
1580 status: Status::Preparation,
1581 before_login_hint: "You must allow IMAP access to your account before you can login.",
1582 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",
1583 overview_page: "https://providers.delta.chat/web-de",
1584 server: &[
1585 Server {
1586 protocol: Imap,
1587 socket: Ssl,
1588 hostname: "imap.web.de",
1589 port: 993,
1590 username_pattern: Emaillocalpart,
1591 },
1592 Server {
1593 protocol: Imap,
1594 socket: Starttls,
1595 hostname: "imap.web.de",
1596 port: 143,
1597 username_pattern: Emaillocalpart,
1598 },
1599 Server {
1600 protocol: Smtp,
1601 socket: Starttls,
1602 hostname: "smtp.web.de",
1603 port: 587,
1604 username_pattern: Emaillocalpart,
1605 },
1606 ],
1607 opt: ProviderOptions::new(),
1608 config_defaults: None,
1609 oauth2_authorizer: None,
1610};
1611
1612static P_WKPB_DE: Provider = Provider {
1614 id: "wkpb.de",
1615 status: Status::Preparation,
1616 before_login_hint: "Dies sind die gleichen Anmeldedaten wie bei Moodle und Abitur-Online.",
1617 after_login_hint: "",
1618 overview_page: "https://providers.delta.chat/wkpb-de",
1619 server: &[
1620 Server {
1621 protocol: Imap,
1622 socket: Ssl,
1623 hostname: "pimap.schulon.org",
1624 port: 993,
1625 username_pattern: Email,
1626 },
1627 Server {
1628 protocol: Smtp,
1629 socket: Ssl,
1630 hostname: "psmtp.schulon.org",
1631 port: 465,
1632 username_pattern: Email,
1633 },
1634 ],
1635 opt: ProviderOptions::new(),
1636 config_defaults: None,
1637 oauth2_authorizer: None,
1638};
1639
1640static P_YAHOO: Provider = Provider {
1642 id: "yahoo",
1643 status: Status::Preparation,
1644 before_login_hint: "To use your Yahoo email address you have to create an app password in the Yahoo account security screen.",
1645 after_login_hint: "",
1646 overview_page: "https://providers.delta.chat/yahoo",
1647 server: &[
1648 Server {
1649 protocol: Imap,
1650 socket: Ssl,
1651 hostname: "imap.mail.yahoo.com",
1652 port: 993,
1653 username_pattern: Email,
1654 },
1655 Server {
1656 protocol: Smtp,
1657 socket: Ssl,
1658 hostname: "smtp.mail.yahoo.com",
1659 port: 465,
1660 username_pattern: Email,
1661 },
1662 ],
1663 opt: ProviderOptions::new(),
1664 config_defaults: None,
1665 oauth2_authorizer: None,
1666};
1667
1668static P_YANDEX_RU: Provider = Provider {
1670 id: "yandex.ru",
1671 status: Status::Preparation,
1672 before_login_hint: "For Yandex accounts, you have to set IMAP protocol option turned on.",
1673 after_login_hint: "",
1674 overview_page: "https://providers.delta.chat/yandex-ru",
1675 server: &[
1676 Server {
1677 protocol: Imap,
1678 socket: Ssl,
1679 hostname: "imap.yandex.com",
1680 port: 993,
1681 username_pattern: Email,
1682 },
1683 Server {
1684 protocol: Smtp,
1685 socket: Ssl,
1686 hostname: "smtp.yandex.com",
1687 port: 465,
1688 username_pattern: Email,
1689 },
1690 ],
1691 opt: ProviderOptions::new(),
1692 config_defaults: None,
1693 oauth2_authorizer: Some(Oauth2Authorizer::Yandex),
1694};
1695
1696static P_YGGMAIL: Provider = Provider {
1698 id: "yggmail",
1699 status: Status::Preparation,
1700 before_login_hint: "An Yggmail companion app needs to be installed on your device to access the Yggmail network.",
1701 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.",
1702 overview_page: "https://providers.delta.chat/yggmail",
1703 server: &[
1704 Server {
1705 protocol: Imap,
1706 socket: Plain,
1707 hostname: "localhost",
1708 port: 1143,
1709 username_pattern: Email,
1710 },
1711 Server {
1712 protocol: Smtp,
1713 socket: Plain,
1714 hostname: "localhost",
1715 port: 1025,
1716 username_pattern: Email,
1717 },
1718 ],
1719 opt: ProviderOptions::new(),
1720 config_defaults: None,
1721 oauth2_authorizer: None,
1722};
1723
1724static P_ZIGGO_NL: Provider = Provider {
1726 id: "ziggo.nl",
1727 status: Status::Ok,
1728 before_login_hint: "",
1729 after_login_hint: "",
1730 overview_page: "https://providers.delta.chat/ziggo-nl",
1731 server: &[
1732 Server {
1733 protocol: Imap,
1734 socket: Ssl,
1735 hostname: "imap.ziggo.nl",
1736 port: 993,
1737 username_pattern: Email,
1738 },
1739 Server {
1740 protocol: Smtp,
1741 socket: Starttls,
1742 hostname: "smtp.ziggo.nl",
1743 port: 587,
1744 username_pattern: Email,
1745 },
1746 ],
1747 opt: ProviderOptions::new(),
1748 config_defaults: None,
1749 oauth2_authorizer: None,
1750};
1751
1752static P_ZOHO: Provider = Provider {
1754 id: "zoho",
1755 status: Status::Preparation,
1756 before_login_hint: "To use Zoho Mail, you have to turn on IMAP in the Zoho Mail backend.",
1757 after_login_hint: "",
1758 overview_page: "https://providers.delta.chat/zoho",
1759 server: &[
1760 Server {
1761 protocol: Imap,
1762 socket: Ssl,
1763 hostname: "imap.zoho.eu",
1764 port: 993,
1765 username_pattern: Email,
1766 },
1767 Server {
1768 protocol: Smtp,
1769 socket: Ssl,
1770 hostname: "smtp.zoho.eu",
1771 port: 465,
1772 username_pattern: Email,
1773 },
1774 ],
1775 opt: ProviderOptions::new(),
1776 config_defaults: None,
1777 oauth2_authorizer: None,
1778};
1779
1780pub(crate) static PROVIDER_DATA: [(&str, &Provider); 521] = [
1781 ("163.com", &P_163),
1782 ("aktivix.org", &P_AKTIVIX_ORG),
1783 ("aliyun.com", &P_ALIYUN),
1784 ("aol.com", &P_AOL),
1785 ("arcor.de", &P_ARCOR_DE),
1786 ("autistici.org", &P_AUTISTICI_ORG),
1787 ("delta.blinzeln.de", &P_BLINDZELN_ORG),
1788 ("delta.blindzeln.org", &P_BLINDZELN_ORG),
1789 ("bluewin.ch", &P_BLUEWIN_CH),
1790 ("chello.at", &P_CHELLO_AT),
1791 ("xfinity.com", &P_COMCAST),
1792 ("comcast.net", &P_COMCAST),
1793 ("dismail.de", &P_DISMAIL_DE),
1794 ("disroot.org", &P_DISROOT),
1795 ("e.email", &P_E_EMAIL),
1796 ("espiv.net", &P_ESPIV_NET),
1797 ("example.com", &P_EXAMPLE_COM),
1798 ("example.org", &P_EXAMPLE_COM),
1799 ("example.net", &P_EXAMPLE_COM),
1800 ("123mail.org", &P_FASTMAIL),
1801 ("150mail.com", &P_FASTMAIL),
1802 ("150ml.com", &P_FASTMAIL),
1803 ("16mail.com", &P_FASTMAIL),
1804 ("2-mail.com", &P_FASTMAIL),
1805 ("4email.net", &P_FASTMAIL),
1806 ("50mail.com", &P_FASTMAIL),
1807 ("airpost.net", &P_FASTMAIL),
1808 ("allmail.net", &P_FASTMAIL),
1809 ("bestmail.us", &P_FASTMAIL),
1810 ("cluemail.com", &P_FASTMAIL),
1811 ("elitemail.org", &P_FASTMAIL),
1812 ("emailcorner.net", &P_FASTMAIL),
1813 ("emailengine.net", &P_FASTMAIL),
1814 ("emailengine.org", &P_FASTMAIL),
1815 ("emailgroups.net", &P_FASTMAIL),
1816 ("emailplus.org", &P_FASTMAIL),
1817 ("emailuser.net", &P_FASTMAIL),
1818 ("eml.cc", &P_FASTMAIL),
1819 ("f-m.fm", &P_FASTMAIL),
1820 ("fast-email.com", &P_FASTMAIL),
1821 ("fast-mail.org", &P_FASTMAIL),
1822 ("fastem.com", &P_FASTMAIL),
1823 ("fastemail.us", &P_FASTMAIL),
1824 ("fastemailer.com", &P_FASTMAIL),
1825 ("fastest.cc", &P_FASTMAIL),
1826 ("fastimap.com", &P_FASTMAIL),
1827 ("fastmail.cn", &P_FASTMAIL),
1828 ("fastmail.co.uk", &P_FASTMAIL),
1829 ("fastmail.com", &P_FASTMAIL),
1830 ("fastmail.com.au", &P_FASTMAIL),
1831 ("fastmail.de", &P_FASTMAIL),
1832 ("fastmail.es", &P_FASTMAIL),
1833 ("fastmail.fm", &P_FASTMAIL),
1834 ("fastmail.fr", &P_FASTMAIL),
1835 ("fastmail.im", &P_FASTMAIL),
1836 ("fastmail.in", &P_FASTMAIL),
1837 ("fastmail.jp", &P_FASTMAIL),
1838 ("fastmail.mx", &P_FASTMAIL),
1839 ("fastmail.net", &P_FASTMAIL),
1840 ("fastmail.nl", &P_FASTMAIL),
1841 ("fastmail.org", &P_FASTMAIL),
1842 ("fastmail.se", &P_FASTMAIL),
1843 ("fastmail.to", &P_FASTMAIL),
1844 ("fastmail.tw", &P_FASTMAIL),
1845 ("fastmail.uk", &P_FASTMAIL),
1846 ("fastmail.us", &P_FASTMAIL),
1847 ("fastmailbox.net", &P_FASTMAIL),
1848 ("fastmessaging.com", &P_FASTMAIL),
1849 ("fea.st", &P_FASTMAIL),
1850 ("fmail.co.uk", &P_FASTMAIL),
1851 ("fmailbox.com", &P_FASTMAIL),
1852 ("fmgirl.com", &P_FASTMAIL),
1853 ("fmguy.com", &P_FASTMAIL),
1854 ("ftml.net", &P_FASTMAIL),
1855 ("h-mail.us", &P_FASTMAIL),
1856 ("hailmail.net", &P_FASTMAIL),
1857 ("imap-mail.com", &P_FASTMAIL),
1858 ("imap.cc", &P_FASTMAIL),
1859 ("imapmail.org", &P_FASTMAIL),
1860 ("inoutbox.com", &P_FASTMAIL),
1861 ("internet-e-mail.com", &P_FASTMAIL),
1862 ("internet-mail.org", &P_FASTMAIL),
1863 ("internetemails.net", &P_FASTMAIL),
1864 ("internetmailing.net", &P_FASTMAIL),
1865 ("jetemail.net", &P_FASTMAIL),
1866 ("justemail.net", &P_FASTMAIL),
1867 ("letterboxes.org", &P_FASTMAIL),
1868 ("mail-central.com", &P_FASTMAIL),
1869 ("mail-page.com", &P_FASTMAIL),
1870 ("mailandftp.com", &P_FASTMAIL),
1871 ("mailas.com", &P_FASTMAIL),
1872 ("mailbolt.com", &P_FASTMAIL),
1873 ("mailc.net", &P_FASTMAIL),
1874 ("mailcan.com", &P_FASTMAIL),
1875 ("mailforce.net", &P_FASTMAIL),
1876 ("mailftp.com", &P_FASTMAIL),
1877 ("mailhaven.com", &P_FASTMAIL),
1878 ("mailingaddress.org", &P_FASTMAIL),
1879 ("mailite.com", &P_FASTMAIL),
1880 ("mailmight.com", &P_FASTMAIL),
1881 ("mailnew.com", &P_FASTMAIL),
1882 ("mailsent.net", &P_FASTMAIL),
1883 ("mailservice.ms", &P_FASTMAIL),
1884 ("mailup.net", &P_FASTMAIL),
1885 ("mailworks.org", &P_FASTMAIL),
1886 ("ml1.net", &P_FASTMAIL),
1887 ("mm.st", &P_FASTMAIL),
1888 ("myfastmail.com", &P_FASTMAIL),
1889 ("mymacmail.com", &P_FASTMAIL),
1890 ("nospammail.net", &P_FASTMAIL),
1891 ("ownmail.net", &P_FASTMAIL),
1892 ("petml.com", &P_FASTMAIL),
1893 ("postinbox.com", &P_FASTMAIL),
1894 ("postpro.net", &P_FASTMAIL),
1895 ("proinbox.com", &P_FASTMAIL),
1896 ("promessage.com", &P_FASTMAIL),
1897 ("realemail.net", &P_FASTMAIL),
1898 ("reallyfast.biz", &P_FASTMAIL),
1899 ("reallyfast.info", &P_FASTMAIL),
1900 ("rushpost.com", &P_FASTMAIL),
1901 ("sent.as", &P_FASTMAIL),
1902 ("sent.at", &P_FASTMAIL),
1903 ("sent.com", &P_FASTMAIL),
1904 ("speedpost.net", &P_FASTMAIL),
1905 ("speedymail.org", &P_FASTMAIL),
1906 ("ssl-mail.com", &P_FASTMAIL),
1907 ("swift-mail.com", &P_FASTMAIL),
1908 ("the-fastest.net", &P_FASTMAIL),
1909 ("the-quickest.com", &P_FASTMAIL),
1910 ("theinternetemail.com", &P_FASTMAIL),
1911 ("veryfast.biz", &P_FASTMAIL),
1912 ("veryspeedy.net", &P_FASTMAIL),
1913 ("warpmail.net", &P_FASTMAIL),
1914 ("xsmail.com", &P_FASTMAIL),
1915 ("yepmail.net", &P_FASTMAIL),
1916 ("your-mail.com", &P_FASTMAIL),
1917 ("firemail.at", &P_FIREMAIL_DE),
1918 ("firemail.de", &P_FIREMAIL_DE),
1919 ("freenet.de", &P_FREENET_DE),
1920 ("gmail.com", &P_GMAIL),
1921 ("googlemail.com", &P_GMAIL),
1922 ("google.com", &P_GMAIL),
1923 ("gmx.net", &P_GMX_NET),
1924 ("gmx.de", &P_GMX_NET),
1925 ("gmx.at", &P_GMX_NET),
1926 ("gmx.ch", &P_GMX_NET),
1927 ("gmx.org", &P_GMX_NET),
1928 ("gmx.eu", &P_GMX_NET),
1929 ("gmx.info", &P_GMX_NET),
1930 ("gmx.biz", &P_GMX_NET),
1931 ("gmx.com", &P_GMX_NET),
1932 ("*.hermes.radio", &P_HERMES_RADIO),
1933 ("*.aco-connexion.org", &P_HERMES_RADIO),
1934 ("hey.com", &P_HEY_COM),
1935 ("i.ua", &P_I_UA),
1936 ("i3.net", &P_I3_NET),
1937 ("icloud.com", &P_ICLOUD),
1938 ("me.com", &P_ICLOUD),
1939 ("mac.com", &P_ICLOUD),
1940 ("ik.me", &P_INFOMANIAK_COM),
1941 ("kolst.com", &P_KOLST_COM),
1942 ("kontent.com", &P_KONTENT_COM),
1943 ("email.com", &P_MAIL_COM),
1944 ("groupmail.com", &P_MAIL_COM),
1945 ("post.com", &P_MAIL_COM),
1946 ("homemail.com", &P_MAIL_COM),
1947 ("housemail.com", &P_MAIL_COM),
1948 ("writeme.com", &P_MAIL_COM),
1949 ("mail.com", &P_MAIL_COM),
1950 ("mail-me.com", &P_MAIL_COM),
1951 ("workmail.com", &P_MAIL_COM),
1952 ("accountant.com", &P_MAIL_COM),
1953 ("activist.com", &P_MAIL_COM),
1954 ("adexec.com", &P_MAIL_COM),
1955 ("allergist.com", &P_MAIL_COM),
1956 ("alumni.com", &P_MAIL_COM),
1957 ("alumnidirector.com", &P_MAIL_COM),
1958 ("archaeologist.com", &P_MAIL_COM),
1959 ("auctioneer.net", &P_MAIL_COM),
1960 ("bartender.net", &P_MAIL_COM),
1961 ("brew-master.com", &P_MAIL_COM),
1962 ("chef.net", &P_MAIL_COM),
1963 ("chemist.com", &P_MAIL_COM),
1964 ("collector.org", &P_MAIL_COM),
1965 ("columnist.com", &P_MAIL_COM),
1966 ("comic.com", &P_MAIL_COM),
1967 ("consultant.com", &P_MAIL_COM),
1968 ("contractor.net", &P_MAIL_COM),
1969 ("counsellor.com", &P_MAIL_COM),
1970 ("deliveryman.com", &P_MAIL_COM),
1971 ("diplomats.com", &P_MAIL_COM),
1972 ("dr.com", &P_MAIL_COM),
1973 ("engineer.com", &P_MAIL_COM),
1974 ("financier.com", &P_MAIL_COM),
1975 ("fireman.net", &P_MAIL_COM),
1976 ("gardener.com", &P_MAIL_COM),
1977 ("geologist.com", &P_MAIL_COM),
1978 ("graphic-designer.com", &P_MAIL_COM),
1979 ("graduate.org", &P_MAIL_COM),
1980 ("hairdresser.net", &P_MAIL_COM),
1981 ("instructor.net", &P_MAIL_COM),
1982 ("insurer.com", &P_MAIL_COM),
1983 ("journalist.com", &P_MAIL_COM),
1984 ("legislator.com", &P_MAIL_COM),
1985 ("lobbyist.com", &P_MAIL_COM),
1986 ("minister.com", &P_MAIL_COM),
1987 ("musician.org", &P_MAIL_COM),
1988 ("optician.com", &P_MAIL_COM),
1989 ("orthodontist.net", &P_MAIL_COM),
1990 ("pediatrician.com", &P_MAIL_COM),
1991 ("photographer.net", &P_MAIL_COM),
1992 ("physicist.net", &P_MAIL_COM),
1993 ("politician.com", &P_MAIL_COM),
1994 ("presidency.com", &P_MAIL_COM),
1995 ("priest.com", &P_MAIL_COM),
1996 ("programmer.net", &P_MAIL_COM),
1997 ("publicist.com", &P_MAIL_COM),
1998 ("radiologist.net", &P_MAIL_COM),
1999 ("realtyagent.com", &P_MAIL_COM),
2000 ("registerednurses.com", &P_MAIL_COM),
2001 ("repairman.com", &P_MAIL_COM),
2002 ("representative.com", &P_MAIL_COM),
2003 ("salesperson.net", &P_MAIL_COM),
2004 ("secretary.net", &P_MAIL_COM),
2005 ("socialworker.net", &P_MAIL_COM),
2006 ("sociologist.com", &P_MAIL_COM),
2007 ("songwriter.net", &P_MAIL_COM),
2008 ("teachers.org", &P_MAIL_COM),
2009 ("techie.com", &P_MAIL_COM),
2010 ("technologist.com", &P_MAIL_COM),
2011 ("therapist.net", &P_MAIL_COM),
2012 ("umpire.com", &P_MAIL_COM),
2013 ("worker.com", &P_MAIL_COM),
2014 ("artlover.com", &P_MAIL_COM),
2015 ("bikerider.com", &P_MAIL_COM),
2016 ("birdlover.com", &P_MAIL_COM),
2017 ("blader.com", &P_MAIL_COM),
2018 ("kittymail.com", &P_MAIL_COM),
2019 ("lovecat.com", &P_MAIL_COM),
2020 ("marchmail.com", &P_MAIL_COM),
2021 ("boardermail.com", &P_MAIL_COM),
2022 ("catlover.com", &P_MAIL_COM),
2023 ("clubmember.org", &P_MAIL_COM),
2024 ("nonpartisan.com", &P_MAIL_COM),
2025 ("petlover.com", &P_MAIL_COM),
2026 ("doglover.com", &P_MAIL_COM),
2027 ("greenmail.net", &P_MAIL_COM),
2028 ("hackermail.com", &P_MAIL_COM),
2029 ("theplate.com", &P_MAIL_COM),
2030 ("bsdmail.com", &P_MAIL_COM),
2031 ("computer4u.com", &P_MAIL_COM),
2032 ("coolsite.net", &P_MAIL_COM),
2033 ("cyberdude.com", &P_MAIL_COM),
2034 ("cybergal.com", &P_MAIL_COM),
2035 ("cyberservices.com", &P_MAIL_COM),
2036 ("cyber-wizard.com", &P_MAIL_COM),
2037 ("linuxmail.org", &P_MAIL_COM),
2038 ("null.net", &P_MAIL_COM),
2039 ("solution4u.com", &P_MAIL_COM),
2040 ("tech-center.com", &P_MAIL_COM),
2041 ("webname.com", &P_MAIL_COM),
2042 ("acdcfan.com", &P_MAIL_COM),
2043 ("angelic.com", &P_MAIL_COM),
2044 ("discofan.com", &P_MAIL_COM),
2045 ("elvisfan.com", &P_MAIL_COM),
2046 ("hiphopfan.com", &P_MAIL_COM),
2047 ("kissfans.com", &P_MAIL_COM),
2048 ("madonnafan.com", &P_MAIL_COM),
2049 ("metalfan.com", &P_MAIL_COM),
2050 ("ninfan.com", &P_MAIL_COM),
2051 ("ravemail.com", &P_MAIL_COM),
2052 ("reggaefan.com", &P_MAIL_COM),
2053 ("snakebite.com", &P_MAIL_COM),
2054 ("bellair.net", &P_MAIL_COM),
2055 ("californiamail.com", &P_MAIL_COM),
2056 ("dallasmail.com", &P_MAIL_COM),
2057 ("nycmail.com", &P_MAIL_COM),
2058 ("pacific-ocean.com", &P_MAIL_COM),
2059 ("pacificwest.com", &P_MAIL_COM),
2060 ("sanfranmail.com", &P_MAIL_COM),
2061 ("usa.com", &P_MAIL_COM),
2062 ("africamail.com", &P_MAIL_COM),
2063 ("asia-mail.com", &P_MAIL_COM),
2064 ("australiamail.com", &P_MAIL_COM),
2065 ("berlin.com", &P_MAIL_COM),
2066 ("brazilmail.com", &P_MAIL_COM),
2067 ("chinamail.com", &P_MAIL_COM),
2068 ("dublin.com", &P_MAIL_COM),
2069 ("dutchmail.com", &P_MAIL_COM),
2070 ("englandmail.com", &P_MAIL_COM),
2071 ("europe.com", &P_MAIL_COM),
2072 ("arcticmail.com", &P_MAIL_COM),
2073 ("europemail.com", &P_MAIL_COM),
2074 ("germanymail.com", &P_MAIL_COM),
2075 ("irelandmail.com", &P_MAIL_COM),
2076 ("israelmail.com", &P_MAIL_COM),
2077 ("italymail.com", &P_MAIL_COM),
2078 ("koreamail.com", &P_MAIL_COM),
2079 ("mexicomail.com", &P_MAIL_COM),
2080 ("moscowmail.com", &P_MAIL_COM),
2081 ("munich.com", &P_MAIL_COM),
2082 ("asia.com", &P_MAIL_COM),
2083 ("polandmail.com", &P_MAIL_COM),
2084 ("safrica.com", &P_MAIL_COM),
2085 ("samerica.com", &P_MAIL_COM),
2086 ("scotlandmail.com", &P_MAIL_COM),
2087 ("spainmail.com", &P_MAIL_COM),
2088 ("swedenmail.com", &P_MAIL_COM),
2089 ("swissmail.com", &P_MAIL_COM),
2090 ("torontomail.com", &P_MAIL_COM),
2091 ("aircraftmail.com", &P_MAIL_COM),
2092 ("cash4u.com", &P_MAIL_COM),
2093 ("disposable.com", &P_MAIL_COM),
2094 ("execs.com", &P_MAIL_COM),
2095 ("fastservice.com", &P_MAIL_COM),
2096 ("instruction.com", &P_MAIL_COM),
2097 ("job4u.com", &P_MAIL_COM),
2098 ("net-shopping.com", &P_MAIL_COM),
2099 ("planetmail.com", &P_MAIL_COM),
2100 ("planetmail.net", &P_MAIL_COM),
2101 ("qualityservice.com", &P_MAIL_COM),
2102 ("rescueteam.com", &P_MAIL_COM),
2103 ("surgical.net", &P_MAIL_COM),
2104 ("atheist.com", &P_MAIL_COM),
2105 ("disciples.com", &P_MAIL_COM),
2106 ("muslim.com", &P_MAIL_COM),
2107 ("protestant.com", &P_MAIL_COM),
2108 ("reborn.com", &P_MAIL_COM),
2109 ("reincarnate.com", &P_MAIL_COM),
2110 ("religious.com", &P_MAIL_COM),
2111 ("saintly.com", &P_MAIL_COM),
2112 ("brew-meister.com", &P_MAIL_COM),
2113 ("cutey.com", &P_MAIL_COM),
2114 ("dbzmail.com", &P_MAIL_COM),
2115 ("doramail.com", &P_MAIL_COM),
2116 ("galaxyhit.com", &P_MAIL_COM),
2117 ("hilarious.com", &P_MAIL_COM),
2118 ("humanoid.net", &P_MAIL_COM),
2119 ("hot-shot.com", &P_MAIL_COM),
2120 ("inorbit.com", &P_MAIL_COM),
2121 ("iname.com", &P_MAIL_COM),
2122 ("innocent.com", &P_MAIL_COM),
2123 ("keromail.com", &P_MAIL_COM),
2124 ("myself.com", &P_MAIL_COM),
2125 ("rocketship.com", &P_MAIL_COM),
2126 ("toothfairy.com", &P_MAIL_COM),
2127 ("toke.com", &P_MAIL_COM),
2128 ("tvstar.com", &P_MAIL_COM),
2129 ("uymail.com", &P_MAIL_COM),
2130 ("2trom.com", &P_MAIL_COM),
2131 ("mail.de", &P_MAIL_DE),
2132 ("mail.ru", &P_MAIL_RU),
2133 ("inbox.ru", &P_MAIL_RU),
2134 ("internet.ru", &P_MAIL_RU),
2135 ("bk.ru", &P_MAIL_RU),
2136 ("list.ru", &P_MAIL_RU),
2137 ("mail2tor.com", &P_MAIL2TOR),
2138 ("mailbox.org", &P_MAILBOX_ORG),
2139 ("secure.mailbox.org", &P_MAILBOX_ORG),
2140 ("mailo.com", &P_MAILO_COM),
2141 ("migadu.com", &P_MIGADU),
2142 ("nauta.cu", &P_NAUTA_CU),
2143 ("naver.com", &P_NAVER),
2144 ("nine.testrun.org", &P_NINE_TESTRUN_ORG),
2145 ("nubo.coop", &P_NUBO_COOP),
2146 ("hotmail.com", &P_OUTLOOK_COM),
2147 ("outlook.com", &P_OUTLOOK_COM),
2148 ("office365.com", &P_OUTLOOK_COM),
2149 ("outlook.com.tr", &P_OUTLOOK_COM),
2150 ("live.com", &P_OUTLOOK_COM),
2151 ("outlook.de", &P_OUTLOOK_COM),
2152 ("ouvaton.org", &P_OUVATON_COOP),
2153 ("posteo.de", &P_POSTEO),
2154 ("posteo.af", &P_POSTEO),
2155 ("posteo.at", &P_POSTEO),
2156 ("posteo.be", &P_POSTEO),
2157 ("posteo.ca", &P_POSTEO),
2158 ("posteo.ch", &P_POSTEO),
2159 ("posteo.cl", &P_POSTEO),
2160 ("posteo.co", &P_POSTEO),
2161 ("posteo.co.uk", &P_POSTEO),
2162 ("posteo.com", &P_POSTEO),
2163 ("posteo.com.br", &P_POSTEO),
2164 ("posteo.cr", &P_POSTEO),
2165 ("posteo.cz", &P_POSTEO),
2166 ("posteo.dk", &P_POSTEO),
2167 ("posteo.ee", &P_POSTEO),
2168 ("posteo.es", &P_POSTEO),
2169 ("posteo.eu", &P_POSTEO),
2170 ("posteo.fi", &P_POSTEO),
2171 ("posteo.gl", &P_POSTEO),
2172 ("posteo.gr", &P_POSTEO),
2173 ("posteo.hn", &P_POSTEO),
2174 ("posteo.hr", &P_POSTEO),
2175 ("posteo.hu", &P_POSTEO),
2176 ("posteo.ie", &P_POSTEO),
2177 ("posteo.in", &P_POSTEO),
2178 ("posteo.is", &P_POSTEO),
2179 ("posteo.it", &P_POSTEO),
2180 ("posteo.jp", &P_POSTEO),
2181 ("posteo.la", &P_POSTEO),
2182 ("posteo.li", &P_POSTEO),
2183 ("posteo.lt", &P_POSTEO),
2184 ("posteo.lu", &P_POSTEO),
2185 ("posteo.me", &P_POSTEO),
2186 ("posteo.mx", &P_POSTEO),
2187 ("posteo.my", &P_POSTEO),
2188 ("posteo.net", &P_POSTEO),
2189 ("posteo.nl", &P_POSTEO),
2190 ("posteo.no", &P_POSTEO),
2191 ("posteo.nz", &P_POSTEO),
2192 ("posteo.org", &P_POSTEO),
2193 ("posteo.pe", &P_POSTEO),
2194 ("posteo.pl", &P_POSTEO),
2195 ("posteo.pm", &P_POSTEO),
2196 ("posteo.pt", &P_POSTEO),
2197 ("posteo.ro", &P_POSTEO),
2198 ("posteo.ru", &P_POSTEO),
2199 ("posteo.se", &P_POSTEO),
2200 ("posteo.sg", &P_POSTEO),
2201 ("posteo.si", &P_POSTEO),
2202 ("posteo.tn", &P_POSTEO),
2203 ("posteo.uk", &P_POSTEO),
2204 ("posteo.us", &P_POSTEO),
2205 ("protonmail.com", &P_PROTONMAIL),
2206 ("protonmail.ch", &P_PROTONMAIL),
2207 ("pm.me", &P_PROTONMAIL),
2208 ("purelymail.com", &P_PURELYMAIL_COM),
2209 ("cheapermail.com", &P_PURELYMAIL_COM),
2210 ("placeq.com", &P_PURELYMAIL_COM),
2211 ("rethinkmail.com", &P_PURELYMAIL_COM),
2212 ("worldofmail.com", &P_PURELYMAIL_COM),
2213 ("qq.com", &P_QQ),
2214 ("foxmail.com", &P_QQ),
2215 ("rambler.ru", &P_RAMBLER_RU),
2216 ("autorambler.ru", &P_RAMBLER_RU),
2217 ("myrambler.ru", &P_RAMBLER_RU),
2218 ("rambler.ua", &P_RAMBLER_RU),
2219 ("lenta.ru", &P_RAMBLER_RU),
2220 ("ro.ru", &P_RAMBLER_RU),
2221 ("r0.ru", &P_RAMBLER_RU),
2222 ("riseup.net", &P_RISEUP_NET),
2223 ("rogers.com", &P_ROGERS_COM),
2224 ("sonic.net", &P_SONIC),
2225 ("stinpriza.net", &P_STINPRIZA_NET),
2226 ("stinpriza.eu", &P_STINPRIZA_NET),
2227 ("el-hoyo.net", &P_STINPRIZA_NET),
2228 ("systemausfall.org", &P_SYSTEMAUSFALL_ORG),
2229 ("solidaris.me", &P_SYSTEMAUSFALL_ORG),
2230 ("systemli.org", &P_SYSTEMLI_ORG),
2231 ("t-online.de", &P_T_ONLINE),
2232 ("magenta.de", &P_T_ONLINE),
2233 ("tiscali.it", &P_TISCALI_IT),
2234 ("tutanota.com", &P_TUTANOTA),
2235 ("tutanota.de", &P_TUTANOTA),
2236 ("tutamail.com", &P_TUTANOTA),
2237 ("tuta.io", &P_TUTANOTA),
2238 ("keemail.me", &P_TUTANOTA),
2239 ("ukr.net", &P_UKR_NET),
2240 ("undernet.uy", &P_UNDERNET_UY),
2241 ("vfemail.net", &P_VFEMAIL),
2242 ("vivaldi.net", &P_VIVALDI),
2243 ("vk.com", &P_VK_COM),
2244 ("vodafone.de", &P_VODAFONE_DE),
2245 ("vodafonemail.de", &P_VODAFONE_DE),
2246 ("web.de", &P_WEB_DE),
2247 ("email.de", &P_WEB_DE),
2248 ("flirt.ms", &P_WEB_DE),
2249 ("hallo.ms", &P_WEB_DE),
2250 ("kuss.ms", &P_WEB_DE),
2251 ("love.ms", &P_WEB_DE),
2252 ("magic.ms", &P_WEB_DE),
2253 ("singles.ms", &P_WEB_DE),
2254 ("cool.ms", &P_WEB_DE),
2255 ("kanzler.ms", &P_WEB_DE),
2256 ("okay.ms", &P_WEB_DE),
2257 ("party.ms", &P_WEB_DE),
2258 ("pop.ms", &P_WEB_DE),
2259 ("stars.ms", &P_WEB_DE),
2260 ("techno.ms", &P_WEB_DE),
2261 ("clever.ms", &P_WEB_DE),
2262 ("deutschland.ms", &P_WEB_DE),
2263 ("genial.ms", &P_WEB_DE),
2264 ("ich.ms", &P_WEB_DE),
2265 ("online.ms", &P_WEB_DE),
2266 ("smart.ms", &P_WEB_DE),
2267 ("wichtig.ms", &P_WEB_DE),
2268 ("action.ms", &P_WEB_DE),
2269 ("fussball.ms", &P_WEB_DE),
2270 ("joker.ms", &P_WEB_DE),
2271 ("planet.ms", &P_WEB_DE),
2272 ("power.ms", &P_WEB_DE),
2273 ("wkpb.de", &P_WKPB_DE),
2274 ("yahoo.com", &P_YAHOO),
2275 ("yahoo.de", &P_YAHOO),
2276 ("yahoo.it", &P_YAHOO),
2277 ("yahoo.fr", &P_YAHOO),
2278 ("yahoo.es", &P_YAHOO),
2279 ("yahoo.se", &P_YAHOO),
2280 ("yahoo.co.uk", &P_YAHOO),
2281 ("yahoo.co.nz", &P_YAHOO),
2282 ("yahoo.com.au", &P_YAHOO),
2283 ("yahoo.com.ar", &P_YAHOO),
2284 ("yahoo.com.br", &P_YAHOO),
2285 ("yahoo.com.mx", &P_YAHOO),
2286 ("myyahoo.com", &P_YAHOO),
2287 ("ymail.com", &P_YAHOO),
2288 ("rocketmail.com", &P_YAHOO),
2289 ("yahoodns.net", &P_YAHOO),
2290 ("yandex.com", &P_YANDEX_RU),
2291 ("yandex.by", &P_YANDEX_RU),
2292 ("yandex.kz", &P_YANDEX_RU),
2293 ("yandex.ru", &P_YANDEX_RU),
2294 ("yandex.ua", &P_YANDEX_RU),
2295 ("ya.ru", &P_YANDEX_RU),
2296 ("narod.ru", &P_YANDEX_RU),
2297 ("yggmail", &P_YGGMAIL),
2298 ("ziggo.nl", &P_ZIGGO_NL),
2299 ("zohomail.eu", &P_ZOHO),
2300 ("zohomail.com", &P_ZOHO),
2301 ("zoho.com", &P_ZOHO),
2302];
2303
2304pub(crate) static PROVIDER_IDS: LazyLock<HashMap<&'static str, &'static Provider>> =
2305 LazyLock::new(|| {
2306 HashMap::from([
2307 ("163", &P_163),
2308 ("aktivix.org", &P_AKTIVIX_ORG),
2309 ("aliyun", &P_ALIYUN),
2310 ("aol", &P_AOL),
2311 ("arcor.de", &P_ARCOR_DE),
2312 ("autistici.org", &P_AUTISTICI_ORG),
2313 ("blindzeln.org", &P_BLINDZELN_ORG),
2314 ("bluewin.ch", &P_BLUEWIN_CH),
2315 ("chello.at", &P_CHELLO_AT),
2316 ("comcast", &P_COMCAST),
2317 ("dismail.de", &P_DISMAIL_DE),
2318 ("disroot", &P_DISROOT),
2319 ("e.email", &P_E_EMAIL),
2320 ("espiv.net", &P_ESPIV_NET),
2321 ("example.com", &P_EXAMPLE_COM),
2322 ("fastmail", &P_FASTMAIL),
2323 ("firemail.de", &P_FIREMAIL_DE),
2324 ("freenet.de", &P_FREENET_DE),
2325 ("gmail", &P_GMAIL),
2326 ("gmx.net", &P_GMX_NET),
2327 ("hermes.radio", &P_HERMES_RADIO),
2328 ("hey.com", &P_HEY_COM),
2329 ("i.ua", &P_I_UA),
2330 ("i3.net", &P_I3_NET),
2331 ("icloud", &P_ICLOUD),
2332 ("infomaniak.com", &P_INFOMANIAK_COM),
2333 ("kolst.com", &P_KOLST_COM),
2334 ("kontent.com", &P_KONTENT_COM),
2335 ("mail.com", &P_MAIL_COM),
2336 ("mail.de", &P_MAIL_DE),
2337 ("mail.ru", &P_MAIL_RU),
2338 ("mail2tor", &P_MAIL2TOR),
2339 ("mailbox.org", &P_MAILBOX_ORG),
2340 ("mailo.com", &P_MAILO_COM),
2341 ("migadu", &P_MIGADU),
2342 ("nauta.cu", &P_NAUTA_CU),
2343 ("naver", &P_NAVER),
2344 ("nine.testrun.org", &P_NINE_TESTRUN_ORG),
2345 ("nubo.coop", &P_NUBO_COOP),
2346 ("outlook.com", &P_OUTLOOK_COM),
2347 ("ouvaton.coop", &P_OUVATON_COOP),
2348 ("posteo", &P_POSTEO),
2349 ("protonmail", &P_PROTONMAIL),
2350 ("purelymail.com", &P_PURELYMAIL_COM),
2351 ("qq", &P_QQ),
2352 ("rambler.ru", &P_RAMBLER_RU),
2353 ("riseup.net", &P_RISEUP_NET),
2354 ("rogers.com", &P_ROGERS_COM),
2355 ("sonic", &P_SONIC),
2356 ("stinpriza.net", &P_STINPRIZA_NET),
2357 ("systemausfall.org", &P_SYSTEMAUSFALL_ORG),
2358 ("systemli.org", &P_SYSTEMLI_ORG),
2359 ("t-online", &P_T_ONLINE),
2360 ("tiscali.it", &P_TISCALI_IT),
2361 ("tutanota", &P_TUTANOTA),
2362 ("ukr.net", &P_UKR_NET),
2363 ("undernet.uy", &P_UNDERNET_UY),
2364 ("vfemail", &P_VFEMAIL),
2365 ("vivaldi", &P_VIVALDI),
2366 ("vk.com", &P_VK_COM),
2367 ("vodafone.de", &P_VODAFONE_DE),
2368 ("web.de", &P_WEB_DE),
2369 ("wkpb.de", &P_WKPB_DE),
2370 ("yahoo", &P_YAHOO),
2371 ("yandex.ru", &P_YANDEX_RU),
2372 ("yggmail", &P_YGGMAIL),
2373 ("ziggo.nl", &P_ZIGGO_NL),
2374 ("zoho", &P_ZOHO),
2375 ])
2376 });
2377
2378pub static _PROVIDER_UPDATED: LazyLock<chrono::NaiveDate> =
2379 LazyLock::new(|| chrono::NaiveDate::from_ymd_opt(2026, 5, 6).unwrap());