å±±æ¬æ§ãçæ§
现ç°ã§ãã
ãããã«ãªã£ãŠãããŸãã
PR #188 Fix stopping during greeting on some POPs servers
ã«ã€ããŠããæ¥ããããªããç§ã®è±èªåããããããšãããããã
æ¥æ¬èªã§è£è¶³èª¬æãããŠããã ããã°ãšæããŸãã
PR ã§æåã«ãåºããããããã¯
ä»ã®ç°å¢ãååèæ
®ã§ããŠãããç³ãèš³ãããŸããã§ããã
ããã¯å®å
šã«ç Žæ£ããŠæšæ¥ãŸã£ããå¥ã®ä¿®æ£ã force push ããŠããŸãã
æšæ¥ä¿®æ£ããçŸåšã® PR ã§ã¯
ã»å¹³æ POP ïŒããŒã 110ïŒ
ã»GnuTLS 㧠POP over TLS/SSL ïŒããŒã 995ïŒ
ã»GnuTLS 㧠STARTTLS ïŒããŒã 110ïŒ
ã»stunnel 㧠POP over TLS/SSL ïŒããŒã 995ïŒ
ã»stunnel 㧠STARTTLS ïŒããŒã 110ïŒ
ãããã§ãåäœããããšã確èªããŠãããŸãã
ãããããŒãžããŠããã ãããšããããããšæã£ãŠãããŸãã
以äžãçºçäºè±¡ãšè§£æããå
容ãªã©ãæžãããŠããã ããŸãã
ã»çºçäºè±¡
Mew 㧠GnuTLS ã䜿çšã㊠POP over TLS/SSL ã§
secure.plala.or.jp:995
ãžæ¥ç¶ãããšãã¹ã¯ãŒããèãããåã«æ¢ãŸã£ãŠããŸããŸãã
ïŒã·ãããŠãŒã¶ã䜿çšããæšæºç㪠POP over TLS/SSL ãµãŒãã§ãã
ïŒã€ãŸãã»ãšãã©ã®ã·ãããŠãŒã¶ã圱é¿ãåããŠãããšèããŠããŸãã
åçŸçšã®èšå®ãšãã®éã® Mew-debug ã¯
https://github.com/kazu-yamamoto/Mew/pull/188#issuecomment-1975051666
ã«ãããŸãã
Mew-debug ãèŠããšããŠãŒã¶å
`USER
te...@example.com`
ãéåºããã«ãã®æåã§æ¢ãŸã£ãŠããŸããã
ãªããPOP over TLS/SSL ã§ã¯ãªããŠ
GnuTLS ã® STARTTLS ã䜿ã£ãŠ
secure.plala.or.jp:110
ãžæ¥ç¶ããŠãåæ§ã®äºè±¡ãšãªããŸãã
ã»æåã®åæ
POP ã® greeting ã¯æ¬æ¥ 1 è¡ã§éãããŠãããã®ãªãã§ããããã
Mew-debug ãèŠããš `<GREETING>` ã«è€æ°è¡ã® CAPA ã¬ã¹ãã³ã¹ãå
¥ã£ãŠããŠã
ããããã®æçµè¡ã `.` ã«ãªã£ãŠããŸããã§ããã
secure.plala.or.jp:995 以å€ã®æ£åžžåäœãã POP over TLS/SSL ãµãŒãããã£ãã®ã§ã
åæ§ã®èšå®ã§è©Šãããšããããã¯ã `<GREETING>` ã«
è€æ°è¡ã® CAPA ã¬ã¹ãã³ã¹ãå
¥ã£ãŠããŸãããã
æçµè¡ã `.` ã«ãªã£ãŠããããŠãŒã¶åã®éåºãžé²ãã§ããŸããã
ã€ãŸããããŸããããªã
secure.plala.or.jp:995 㯠CAPA ã¬ã¹ãã³ã¹ã
2 ã€ã®ãã±ããã«åå²ããŠè¿ããŠããŠããŠã
1 ã€ç®ã¯
```
+OK Capability list follows
TOP
USER
RESP_CODES
PIPELINING
EXPIRE NEVER
UIDL
```
2 ã€ç®ã¯
```
.
```
ãšãªã£ãŠããŸããæéå·®ã¯ã»ãšãã©ãªããŠäººéã®ç®ã§ã¯
åå²ãããŠããããšãããããªããããã§ãã
äžæ¹ãããŸããã POP over TLS/SSL ãµãŒã㯠CAPA ã¬ã¹ãã³ã¹ã
1 ãã±ããã§åå²ããã«è¿ããŠããŠãæçµè¡ã `.` ã«ãªã£ãŠããŸããã
ã»æåã®ä¿®æ£æ¡
æåã«äœã£ã PR ã¯åçŽã« greeting 㯠1 è¡ã§ã¯ãªããŠè€æ°è¡ã ãšãããã®ã§ããã
GnuTLS ã䜿ã£ãŠãããšäžèšã®ããã«è€æ°è¡ã«ãªãã®ã§è¯ãã®ã§ããã
ãææããã ããŠãã以å€ã§ã¯ 1 è¡ãããªãã®ã§ããºããšæ°ãä»ããŸããã
ã»ãªã GnuTLS ã ãš greeting ãç¡ãã®ã
å
ã
https://github.com/kazu-yamamoto/Mew/blob/d41dc93785d231f1e391ba61893aacd1331d5726/elisp/mew-pop.el#L777
ã®çŽåã®ã³ã¡ã³ãã«æžããŠãããŸããããGnuTLS ã䜿ããš greeting ãåä¿¡ã§ããªãã
å
ã«ã¯ã©ã€ã¢ã³ãããäœãéåºããå¿
èŠãããããšããããšã ãšç解ããŠããŸãã
ïŒæ£ç¢ºã«ã¯ãopen-network-stream é¢æ°ã®ãªã¿ãŒã³å€ãã
ïŒ greeting ãåŸãããšã¯å¯èœã ãã
ïŒåä¿¡ããŒã¿ã«ã¯å
¥ã£ãŠããªããšããããšã ãšæããŸãã
ãã㯠POP over TLS/SSL ã§ãã£ãŠã STARTTLS ã§ãã£ãŠãåæ§ãšããèªèã§ãã
ïŒ GnuTLS ã«ãã STARTTLS 㯠open-network-stream é¢æ°ã®åŒæ°ã§ã
ïŒäœãåä¿¡ãããäœãéä¿¡ããŠããšããæé ãæå®ãã
ïŒ open-network-stream é¢æ°ã®å
éšã§ãã¹ãŠåŠçããã
ïŒ Mew ãžè¿ã£ãŠããæã«ã¯æ¢ã« TLS ã¢ããã°ã¬ãŒããããç¶æ
ãšããèªèã§ãã
ïŒãŸããMew 㯠open-network-stream é¢æ°ãž STARTTLS ã«å€±æããã
ïŒåæãããèšå®ãããŠãããããªã®ã§ã
ïŒ TLS ã¢ããã°ã¬ãŒãã§ããªãã£ãããšã©ãŒã«ãªããšæããŸãã
ãã®ãããšã«ãããããŒã§ CAPA ãéä¿¡ãã
ãã®ã¬ã¹ãã³ã¹ã greeting ãšã¿ãªããŠåäœãç¶ç¶ã§ããããã«ããŠããã
ãšç解ããŸããã
ïŒæ¬æ¥ã¯ open-network-stream é¢æ°ã®ãªã¿ãŒã³å€ãã greeting ãåŸãŠ
ïŒ greeting ã®åŠçããã¹ããªã®ãããããŸãããã
ïŒåä¿¡ããŒã¿ãšããŠåŸãããããã§ã¯ãªãã®ã§ã
ïŒã€ã€ã³ã·ããªãããã«æããŸãã
倧æµã® POP over TLS/SSL ãµãŒãã¯
ãã® CAPA ã¬ã¹ãã³ã¹ã greeting ãšã¿ãªã workaround ã§å€§äžå€«ã ã£ãã®ã§ããããã
æ¬æ¥ 1 è¡ã§ããã¹ããšããè€æ°è¡ã«ãªã£ãŠããŸã£ãŠããã®ããããããªãã§ããã
secure.plala.or.jp:995 ã¯ãããã«ãã±ããåå²ãããŠãããã
åŒã£æãã£ãŠããŸã£ãã
ãšããããšã ãšæããŸãã
ã»çŸåšã® PR
æåã®ä¿®æ£ã¯å®å
šã«ç Žæ£ããŸããã
åäœãšããŠã¯ greeting ãåŸ
ã€ãšããããéå§ã
ãšãªã£ãŠãããšããããGnuTLS ã䜿ã£ãŠããå Žå㯠greeting åŸ
ã¡ãã¹ãããããŠã
CAPA ã¬ã¹ãã³ã¹ãåŸ
ã€ãšããããéå§ããããã«ããŸããã
å
ã
ãGnuTLS ã®å Žåã¯å
ã« CAPA ãéä¿¡ããããã«ãªã£ãŠããã®ã§ã
greeting ãåŸ
ããã«ãã®ãŸãŸ CAPA ã¬ã¹ãã³ã¹ãåŸ
ãŠã°æ®éã« greeting ã§ã¯ãªããŠ
CAPA ã¬ã¹ãã³ã¹ã®è€æ°è¡ã®åŠçãè¡ãããŠãã®ãŸãŸåŠçãç¶ç¶ã§ããã
ãšãã圢ã«ãªã£ãŠããŸãã
æåã®ä¿®æ£ã¯ GnuTLS 以å€ãèæ
®ããŠããŸããã§ãããã
ä»åã®ä¿®æ£ã¯ GnuTLS 以å€ã«ã¯åœ±é¿ããªãã®ã§ãç¹ã«åé¡ã¯èµ·ããªããã®ãšæããŸãã
GnuTLS ã§
secure.plala.or.jp:995 以å€ã«æ¥ç¶ããå Žåã§ãã£ãŠãã
greeting ã¯åä¿¡ã§ãã CAPA ããå§ãŸãããšã«ã¯å€ãããªãã§ããã
CAPA ã¬ã¹ãã³ã¹ãè€æ°è¡ãªã®ãåãã§ãããåé¡ãªããã®ãšæã£ãŠããŸãã
é·ã
ãšãã¿ãŸããã
ããããããããããããŸãã
---
çŽ°ç° çé <
true...@trueroad.jp>