From: emo@... Date: 2017-08-27T19:17:59+09:00 Subject: [ruby-list:50566] Re: IMAP IDLE This is a cryptographically signed message in MIME format. --------------ms070509090801070505000504 Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: quoted-printable =E3=81=A8=E3=81=BF=E3=81=9F=E6=A7=98=E3=80=81=E5=89=8D=E7=94=B0=E6=A7=98 =E3=81=82=E3=82=8A=E3=81=8C=E3=81=A8=E3=81=86=E3=81=94=E3=81=96=E3=81=84=E3= =81=BE=E3=81=99=E3=80=82 =E3=83=89=E3=82=B3=E3=83=A2=E3=81=AE IMAP =E3=81=AE=E4=BB=95=E6=A7=98=E6=9B= =B8=E3=82=92=E8=A6=8B=E3=81=A4=E3=81=91=E3=81=BE=E3=81=97=E3=81=9F=E3=80=82= https://www.nttdocomo.co.jp/binary/pdf/service/developer/smart_phone/appl= ication/imap/mail_imap_spec_151201.pdf =E3=81=93=E3=82=8C=E3=82=92=E8=A6=8B=E3=82=8B=E3=81=A8 IDLE =E3=81=8C=E6=88= =90=E5=8A=9F=E3=81=97=E3=81=9F=E3=81=A8=E3=81=8D=E3=81=AB=E3=81=A9=E3=81=AE= =E3=82=88=E3=81=86=E3=81=AA =E5=BF=9C=E7=AD=94=E3=81=8C=E8=BF=94=E3=81=A3=E3=81=A6=E3=81=8F=E3=82=8B=E3= =81=8B=E6=9B=B8=E3=81=84=E3=81=A6=E3=81=84=E3=81=AA=E3=81=84=E3=82=88=E3=81= =86=E3=81=A7=E3=81=99=E3=80=82 =E3=81=9F=E3=81=A0=E3=81=97=E3=80=81=E3=80=8C3.3.26.5 =E3=82=B3=E3=83=9E=E3= =83=B3=E3=83=89=E3=81=AE=E5=AE=9F=E8=A1=8C=E4=BE=8B=E3=80=8D=E3=81=A7=E3=81= =AF=E3=80=81 "+ ."=E3=81=8C=E8=BF=94=E3=81=A3=E3=81=A6=E3=81=8F=E3=82=8B=E3=82=88=E3=81= =86=E3=81=AA=E4=BE=8B=E3=81=8C=E6=9B=B8=E3=81=8B=E3=82=8C=E3=81=A6=E3=81=84= =E3=81=BE=E3=81=99=E3=80=82 On 2017/08/27 15:36, Shugo Maeda wrote: > =E5=89=8D=E7=94=B0=E3=81=A7=E3=81=99=E3=80=82 >=20 > 2017=E5=B9=B48=E6=9C=8827=E6=97=A5 9:03 =E3=81=A8=E3=81=BF=E3=81=9F=E3=81= =BE=E3=81=95=E3=81=B2=E3=82=8D : >> IDLE =E3=82=B3=E3=83=9E=E3=83=B3=E3=83=89=E3=81=AE=E5=BF=9C=E7=AD=94=E3= =81=8C=E3=80=8C+=E3=80=8D=E3=81=A0=E3=81=91=E3=81=AA=E3=81=AE=E3=81=8C=E3= =81=8A=E3=81=8B=E3=81=97=E3=81=84=E3=81=A7=E3=81=99=E3=81=AD=E3=80=82 >> =E3=80=8C+ =E4=BD=95=E3=81=8B=E3=81=AE=E6=96=87=E5=AD=97=E5=88=97=E3=80= =8D=E3=81=A7=E3=81=82=E3=82=8B=E5=BF=85=E8=A6=81=E3=81=8C=E3=81=82=E3=82=8A= =E3=81=BE=E3=81=99=E3=80=82 >> >> https://tools.ietf.org/html/rfc3501#section-7.5 >> >> # =E3=81=9D=E3=82=8C=E3=81=A7 connection closed =E3=81=A8=E3=81=84=E3=81= =86=E3=82=A8=E3=83=A9=E3=83=BC=E3=81=AB=E3=81=AA=E3=82=8B=E3=81=AE=E3=82=82= =E3=81=A9=E3=81=86=E3=81=8B=E3=81=A8=E6=80=9D=E3=81=84=E3=81=BE=E3=81=99=E3= =81=8C=E2=80=A6=E3=80=82 >> >> =E5=8E=9F=E5=9B=A0=E3=81=AF=E3=82=B5=E3=83=BC=E3=83=90=E3=83=BC=E3=81=8C= IMAP=E3=83=97=E3=83=AD=E3=83=88=E3=82=B3=E3=83=AB=E3=81=AB=E5=BE=93=E3=81= =A3=E3=81=A6=E3=81=AA=E3=81=84=E3=81=9F=E3=82=81=E3=81=AA=E3=81=AE=E3=81=A7= =E3=80=81=E3=82=AF=E3=83=A9=E3=82=A4=E3=82=A2=E3=83=B3=E3=83=88=E5=81=B4=E3= =81=A7 >> =E5=AF=BE=E5=BF=9C=E3=81=99=E3=82=8B=E3=81=AB=E3=81=AF net/imap =E3=83= =A9=E3=82=A4=E3=83=96=E3=83=A9=E3=83=AA=E3=81=AB=E6=89=8B=E3=82=92=E5=85=A5= =E3=82=8C=E3=82=8B=E3=81=97=E3=81=8B=E3=81=AA=E3=81=84=E3=81=A8=E6=80=9D=E3= =81=84=E3=81=BE=E3=81=99=E3=80=82 >=20 > trunk=E3=81=A7=E3=81=AF=E4=BF=AE=E6=AD=A3=E3=81=97=E3=81=BE=E3=81=97=E3= =81=9F=E3=81=8C=E3=80=81=E4=BB=A5=E4=B8=8B=E3=81=AE=E3=82=88=E3=81=86=E3=81= =AA=E3=83=A2=E3=83=B3=E3=82=AD=E3=83=BC=E3=83=91=E3=83=83=E3=83=81=E3=81=A7= =E5=AF=BE=E5=87=A6=E3=81=A7=E3=81=8D=E3=82=8B=E3=81=AE=E3=81=A7=E3=81=AF=E3= =81=AA=E3=81=84=E3=81=8B=E3=81=A8=E6=80=9D=E3=81=84=E3=81=BE=E3=81=99=E3=80= =82 >=20 > class Net::IMAP::ResponseParser > def continue_req > match(T_PLUS) > token =3D lookahead > if token.symbol =3D=3D T_SPACE > shift_token > return ContinuationRequest.new(resp_text, @str) > else > return ContinuationRequest.new(ResponseText.new(nil, ""), @str) > end > end > end >=20 > =E3=81=A4=E3=81=84=E3=81=A7=E3=81=AB=E3=83=91=E3=83=BC=E3=82=B9=E3=82=A8= =E3=83=A9=E3=83=BC=E7=AD=89=E3=81=AE=E6=99=82=E3=81=AB=E3=82=AA=E3=83=AA=E3= =82=B8=E3=83=8A=E3=83=AB=E3=81=AE=E4=BE=8B=E5=A4=96=E3=82=92=E6=8A=95=E3=81= =92=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB=E4=BF=AE=E6=AD=A3=E3=81=97=E3=81=BE= =E3=81=97=E3=81=9F=E3=80=82 >=20 =E3=81=A8=E3=82=8A=E3=81=82=E3=81=88=E3=81=9A=E3=80=81=E4=B8=8A=E8=A8=98=E3= =82=92=E4=BF=AE=E6=AD=A3=E3=81=97=E3=81=A6 =E4=BB=A5=E4=B8=8B=E3=81=AE=E3=82=88=E3=81=86=E3=81=AB=E3=81=99=E3=82=8B=E3= =81=93=E3=81=A8=E3=81=A7=E3=80=81 =E3=83=89=E3=82=B3=E3=83=A2=E3=81=AB=E3=81=AF=E5=AF=BE=E5=BF=9C=E3=81=A7=E3= =81=8D=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB=E3=81=AA=E3=82=8A=E3=81=BE=E3=81= =97=E3=81=9F=E3=80=82 class Net::IMAP::ResponseParser def continue_req match(T_PLUS) token =3D lookahead if token.symbol =3D=3D T_SPACE shift_token return ContinuationRequest.new(resp_text, @str) else # return ContinuationRequest.new(ResponseText.new(nil, ""), @str) return T_PLUS end end end =E6=B1=9F=E6=9C=AC --------------ms070509090801070505000504 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCC CyswggU9MIIEJaADAgECAhBaNO6Dbr/4aIpiCPZMsf9DMA0GCSqGSIb3DQEBCwUAMIGXMQsw CQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxm b3JkMRowGAYDVQQKExFDT01PRE8gQ0EgTGltaXRlZDE9MDsGA1UEAxM0Q09NT0RPIFJTQSBD bGllbnQgQXV0aGVudGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQTAeFw0xNzA4MDMwMDAw MDBaFw0xODA4MDMyMzU5NTlaMCoxKDAmBgkqhkiG9w0BCQEWGWVtb3RvLm1hc2FoaWtvQG5p ZnMuYWMuanAwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC1EyMwNbS+rlqX6xYl nVNMt325FtYSwFHTMzy0lKPHoM6u/9cYeDpPa8V9FGeV2QOr8DNMj3rIiSo15S0mZsp7VKO3 ubN6iij/9aWMyW6sfbdFXJKSCdS90rRrbCe/dLRFdHiIDVCDuFC4dpWezET0fCLyMAkLx15I dUy5v/tTybf7WW2wDTPNv+qDXJv0mpxhp9fpTVSQeirrVo20oGTMccEXF8HP+k0W8DCzFU0V 9raP9EpA9iut94ngxomDnkl5z2D9S3aQ5E2+EaV31vWnBTupCJazhENW/oQqt/gsxO7p4hW1 UudH/XwSnQvE5u5ys8VerTiWRNI6+nebf5P3AgMBAAGjggHvMIIB6zAfBgNVHSMEGDAWgBSC r2yM+MX+lmF86B89K3FIXsSLwDAdBgNVHQ4EFgQUjrPCSoLdsjFi9HNNkEwTx1XNe1IwDgYD VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwIAYDVR0lBBkwFwYIKwYBBQUHAwQGCysGAQQB sjEBAwUCMBEGCWCGSAGG+EIBAQQEAwIFIDBGBgNVHSAEPzA9MDsGDCsGAQQBsjEBAgEBATAr MCkGCCsGAQUFBwIBFh1odHRwczovL3NlY3VyZS5jb21vZG8ubmV0L0NQUzBaBgNVHR8EUzBR ME+gTaBLhklodHRwOi8vY3JsLmNvbW9kb2NhLmNvbS9DT01PRE9SU0FDbGllbnRBdXRoZW50 aWNhdGlvbmFuZFNlY3VyZUVtYWlsQ0EuY3JsMIGLBggrBgEFBQcBAQR/MH0wVQYIKwYBBQUH MAKGSWh0dHA6Ly9jcnQuY29tb2RvY2EuY29tL0NPTU9ET1JTQUNsaWVudEF1dGhlbnRpY2F0 aW9uYW5kU2VjdXJlRW1haWxDQS5jcnQwJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmNvbW9k b2NhLmNvbTAkBgNVHREEHTAbgRllbW90by5tYXNhaGlrb0BuaWZzLmFjLmpwMA0GCSqGSIb3 DQEBCwUAA4IBAQAiiMQEgFvNYZx3mJ0yZQIcr6WJkKtOsoKcLHXp1hP5pp5evPYDQ5naNBGR HD1KZY3mCuTcRTctgi7mIbLbDsU+mAzQ4Y/jtRg8zXa3G7+bExpPwQ6FjFZLU/+b0GPyivpv MyfhWIGWlPwmmDizrg81Y+8lP5bvis5C+6USd/XiiACry6Wdlnmm5hKDmKXIeA02WMnqMsDo jYm0LbuecLes7SwgFrUxXozSS3oGutePws/aIu1g2BlsA/ydIxR/65WT8bb+IAU/Nc6I1fHb zhhdTVkzCKTegoPwNDAjW+RiIn9I+ZP4yjTRLCCMHVVfboQYyqd5Bm3Y6wFo5UP35NqhMIIF 5jCCA86gAwIBAgIQapvhODv/K2ufAdXZuKdSVjANBgkqhkiG9w0BAQwFADCBhTELMAkGA1UE BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEa MBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBSU0EgQ2VydGlm aWNhdGlvbiBBdXRob3JpdHkwHhcNMTMwMTEwMDAwMDAwWhcNMjgwMTA5MjM1OTU5WjCBlzEL MAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2Fs Zm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxPTA7BgNVBAMTNENPTU9ETyBSU0Eg Q2xpZW50IEF1dGhlbnRpY2F0aW9uIGFuZCBTZWN1cmUgRW1haWwgQ0EwggEiMA0GCSqGSIb3 DQEBAQUAA4IBDwAwggEKAoIBAQC+s55XrCh2dUAWxzgDmNPGGHYhUPMleQtMtaDRfTpYPpyn MS6n9jR22YRq2tA9NEjk6vW7rN/5sYFLIP1of3l0NKZ6fLWfF2VgJ5cijKYy/qlAckY1wgOk UMgzKlWlVJGyK+UlNEQ1/5ErCsHq9x9aU/x1KwTdF/LCrT03Rl/FwFrf1XTCwa2QZYL55AqL PikFlgqOtzk06kb2qvGlnHJvijjI03BOrNpo+kZGpcHsgyO1/u1OZTaOo8wvEU17VVeP1cHW se9tGKTDyUGg2hJZjrqck39UIm/nKbpDSZ0JsMoIw/JtOOg0JC56VzQgBo7ictReTQE5LFLG 3yQK+xS1AgMBAAGjggE8MIIBODAfBgNVHSMEGDAWgBS7r34CPfqm8TyEjq3uOJjs2TIy1DAd BgNVHQ4EFgQUgq9sjPjF/pZhfOgfPStxSF7Ei8AwDgYDVR0PAQH/BAQDAgGGMBIGA1UdEwEB /wQIMAYBAf8CAQAwEQYDVR0gBAowCDAGBgRVHSAAMEwGA1UdHwRFMEMwQaA/oD2GO2h0dHA6 Ly9jcmwuY29tb2RvY2EuY29tL0NPTU9ET1JTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3Js MHEGCCsGAQUFBwEBBGUwYzA7BggrBgEFBQcwAoYvaHR0cDovL2NydC5jb21vZG9jYS5jb20v Q09NT0RPUlNBQWRkVHJ1c3RDQS5jcnQwJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmNvbW9k b2NhLmNvbTANBgkqhkiG9w0BAQwFAAOCAgEAeFyygSg0TzzuX1bOn5dW7I+iaxf28/ZJCAbU 2C81zd9A/tNx4+jsQgwRGiHjZrAYayZrrm78hOx7aEpkfNPQIHGG6Fvq3EzWf/Lvx7/hk6zS PwIal9v5IkDcZoFD7f3iT7PdkHJY9B51csvU50rxpEg1OyOT8fk2zvvPBuM4qQNqbGWlnhMp IMwpWZT89RY0wpJO+2V6eXEGGHsROs3njeP9DqqqAJaBa4wBeKOdGCWn1/Jp2oY6dyNmNppI 4ZNMUH4Tam85S1j6E95u4+1Nuru84OrMIzqvISE2HN/56ebTOWlcrurffade2022O/tUU1gb 4jfWCcyvB8czm12FgX/y/lRjmDbEA08QJNB2729Y+io1IYO3ztveBdvUCIYZojTq/OCR6Mvn zS6X72HP0PRLRTiOSEmIDsS5N5w/8IW1Hva5hEFy6fDAfd9yI+O+IMMAj1KcL/Zo9jzJ16HO 5m60ttl1Enk8MQkz/W3JlHaeI5iKFn4UJu1/cP2YHXYPiWf2JyBzsLBrGk1II+3yL8aorYew 6CQvdVifC3HtwlSam9V1niiCfOBe2C12TdKGu05LWIA3ZkFcWJGaNXOZ6Ggyh/TqvXG5v7zm EVDNXFnHn9tFpMpOUvxhcsjycBtH0dZ0WrNw6gH+HF8TIhCnH3+zzWuDN0Rk6h9KVkfKehIx ggQ1MIIEMQIBATCBrDCBlzELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hl c3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxPTA7 BgNVBAMTNENPTU9ETyBSU0EgQ2xpZW50IEF1dGhlbnRpY2F0aW9uIGFuZCBTZWN1cmUgRW1h aWwgQ0ECEFo07oNuv/hoimII9kyx/0MwDQYJYIZIAWUDBAIBBQCgggJZMBgGCSqGSIb3DQEJ AzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTE3MDgyNzEwMTc1OVowLwYJKoZIhvcN AQkEMSIEINbLYI7e9KPt49txnTGH938PYysu7KA92RSD/PysBSe3MGwGCSqGSIb3DQEJDzFf MF0wCwYJYIZIAWUDBAEqMAsGCWCGSAFlAwQBAjAKBggqhkiG9w0DBzAOBggqhkiG9w0DAgIC AIAwDQYIKoZIhvcNAwICAUAwBwYFKw4DAgcwDQYIKoZIhvcNAwICASgwgb0GCSsGAQQBgjcQ BDGBrzCBrDCBlzELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQ MA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxPTA7BgNVBAMT NENPTU9ETyBSU0EgQ2xpZW50IEF1dGhlbnRpY2F0aW9uIGFuZCBTZWN1cmUgRW1haWwgQ0EC EFo07oNuv/hoimII9kyx/0Mwgb8GCyqGSIb3DQEJEAILMYGvoIGsMIGXMQswCQYDVQQGEwJH QjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRowGAYD VQQKExFDT01PRE8gQ0EgTGltaXRlZDE9MDsGA1UEAxM0Q09NT0RPIFJTQSBDbGllbnQgQXV0 aGVudGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIQWjTug26/+GiKYgj2TLH/QzANBgkq hkiG9w0BAQEFAASCAQBF3j1Iyh1vNoUxE3YqqejXFpDc8cVBZkStCTr5k4bXkzeSDndKaBrz grHcLLEZTE0Swaf5VBs5mOzck8Y7KigFCwxbsV4w6Lu1anFImsN9Dzy71AryatP+HMAvmouv Z8ttNHeewp56R+3F3grMqvYSN07H9u4cnKNDc4QTYUx+xt9mzWwt1dX641t3opjz8ODL8Zo6 3Za3+67G+GeLm/ddEcQ6pY5vxhemZdw9J9tQ9UDxbwrMg5Sm70+NMEurCdsVOKKmlENKPGrb I7rljhT/RSymfWAs+HlYhL8JhB0eOdusQ41mIMa5QbCu9xd6xdRuuyc1fE6tohW4XzWPFc1t AAAAAAAA --------------ms070509090801070505000504--