From: Aria Stewart Date: 2009-07-08T08:16:11+09:00 Subject: [ruby-core:24194] net/imap.rb fix for IMAP4 Extensions for Quick Mailbox Resynchronization (RFC5162) response --Apple-Mail-4-265912457 Content-Type: multipart/alternative; boundary=Apple-Mail-3-265912373 --Apple-Mail-3-265912373 Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit This patch fixes the response "* OK [CLOSED]" to a SELECT command, which is used in the quick resync extension. diff -ur ruby-1.8.7-p173-o/lib/net/imap.rb ruby-1.8.7-p173/lib/net/ imap.rb --- ruby-1.8.7-p173-o/lib/net/imap.rb 2009-07-07 16:43:28.000000000 -0600 +++ ruby-1.8.7-p173/lib/net/imap.rb 2009-07-07 17:04:30.000000000 -0600 @@ -2764,11 +2764,16 @@ match(T_SPACE) result = ResponseCode.new(name, number) else - match(T_SPACE) - @lex_state = EXPR_CTEXT - token = match(T_TEXT) - @lex_state = EXPR_BEG - result = ResponseCode.new(name, token.value) + begin + match(T_SPACE) + rescue ResponseParseError + # Got unexpected atom with no value; ignore + else + @lex_state = EXPR_CTEXT + token = match(T_TEXT) + @lex_state = EXPR_BEG + result = ResponseCode.new(name, token.value) + end end match(T_RBRA) @lex_state = EXPR_RTEXT Aria Stewart aredridel@nbtsc.org --Apple-Mail-3-265912373 Content-Type: text/html; charset=US-ASCII Content-Transfer-Encoding: 7bit This patch fixes the response "* OK [CLOSED]" to a SELECT command, which is used in the quick resync extension. diff -ur ruby-1.8.7-p173-o/lib/net/imap.rb ruby-1.8.7-p173/lib/net/imap.rb --- ruby-1.8.7-p173-o/lib/net/imap.rb 2009-07-07 16:43:28.000000000 -0600 +++ ruby-1.8.7-p173/lib/net/imap.rb 2009-07-07 17:04:30.000000000 -0600 @@ -2764,11 +2764,16 @@ match(T_SPACE) result = ResponseCode.new(name, number) else - match(T_SPACE) - @lex_state = EXPR_CTEXT - token = match(T_TEXT) - @lex_state = EXPR_BEG - result = ResponseCode.new(name, token.value) + begin + match(T_SPACE) + rescue ResponseParseError + # Got unexpected atom with no value; ignore + else + @lex_state = EXPR_CTEXT + token = match(T_TEXT) + @lex_state = EXPR_BEG + result = ResponseCode.new(name, token.value) + end end match(T_RBRA) @lex_state = EXPR_RTEXT


Aria Stewart
aredridel@nbtsc.org



--Apple-Mail-3-265912373-- --Apple-Mail-4-265912457 Content-Disposition: attachment; filename=smime.p7s Content-Type: application/pkcs7-signature; name=smime.p7s Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIFnTCCBZkw ggOBoAMCAQICAwZJcDANBgkqhkiG9w0BAQUFADB5MRAwDgYDVQQKEwdSb290IENBMR4wHAYDVQQL ExVodHRwOi8vd3d3LmNhY2VydC5vcmcxIjAgBgNVBAMTGUNBIENlcnQgU2lnbmluZyBBdXRob3Jp dHkxITAfBgkqhkiG9w0BCQEWEnN1cHBvcnRAY2FjZXJ0Lm9yZzAeFw0wOTAxMTMyMDU5MzhaFw0w OTA3MTIyMDU5MzhaMHcxGDAWBgNVBAMTD0NBY2VydCBXb1QgVXNlcjEiMCAGCSqGSIb3DQEJARYT YXJlZHJpZGVsQG5idHNjLm9yZzE3MDUGCSqGSIb3DQEJARYoZTFlZThkZWQxOWI1MDhkYWY5MTA5 ODQ0ZjY0ZmRhMjQ1NzkxMGRlOTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMbxlUZx R/QnXbVbFO50tC7da+/VOahKxi1Z5tWCZCAMOBV32hRllkE1xOq9Db5ZftTgLwkcNZ3dbckHAIzu aEr4KEe//iWuEQHpLNdvlwtQd7oDJ0kUsPQLy7KUzqsSpnGVUHMFJbddXQiLcAGg1AaNvA6Q4VGT YZfVey0SuyU/QQd5NI6x4d1VSB49RkG1S8B9cWNDVomVBQMfszLnN0fw8YlVfdI5uEUElQUo06BU 8O4yV51fq78DQXMd/vdlyVVXTnCC2cMFDisoGgMWAVRjFK7Kcj1UXNxxqrYWqpEyluQRLtV8pWn1 LnTCGnGQt8CvTaNnDE6UuZmImNE9eMcCAwEAAaOCASowggEmMAwGA1UdEwEB/wQCMAAwVgYJYIZI AYb4QgENBEkWR1RvIGdldCB5b3VyIG93biBjZXJ0aWZpY2F0ZSBmb3IgRlJFRSBoZWFkIG92ZXIg dG8gaHR0cDovL3d3dy5DQWNlcnQub3JnMEAGA1UdJQQ5MDcGCCsGAQUFBwMEBggrBgEFBQcDAgYK KwYBBAGCNwoDBAYKKwYBBAGCNwoDAwYJYIZIAYb4QgQBMDIGCCsGAQUFBwEBBCYwJDAiBggrBgEF BQcwAYYWaHR0cDovL29jc3AuY2FjZXJ0Lm9yZzBIBgNVHREEQTA/gRNhcmVkcmlkZWxAbmJ0c2Mu b3JngShlMWVlOGRlZDE5YjUwOGRhZjkxMDk4NDRmNjRmZGEyNDU3OTEwZGU5MA0GCSqGSIb3DQEB BQUAA4ICAQBCVAMqOFdBG7/7GC8xUZJ8/g03uUqzU9ihmNAdRRdo1Ifg4KjiuyKd/IVCpksLNKws IvX96KSzL6i3/sbAkiNIG4ZE50gz5PVEZCimOMOFN9Ib1hbRPw5CjXWNDIzKY2lz988WrAX2+UpB jaHhDRH1ZP1uqdBMlDJ6fZdg4SO1WRQXdVxICbLdX3ORMmMHq3WY88oJKl2GplRXJPytLdmbm/89 j2sSuaAseBIY4KWoRY9gLWzF/CY25+xipmRm/rRBq9KjwtFP2QsW7oK+4GGd1/WM3iyf68I1YXMm pIBHnF7Xdl2Vu3tLJsA1gLvris+xGyikla8x9O/XEuQF6z1G/Pk4BczoUJYJavV3SiK5iXDjoGhI fTxuI/k8j/osGpPxBG9IG7Blw9nG8vLdZJjYmSjPyMxov14Ryg8w3Y0HzOg+IbkV4jz6ZNGHsGwi /7UM/6VlV1/aqbf1w3VyZh2WtJMp+kdAT0GT5m9P8fgVunHO0XgEqH2HLlINbC5v1OvD6RQyU8KE QEPx3Kl9trw9gLI9HNxUwBdaiGZdee1D/ecm3w5Pvc8E5/HZNb5fJaKG18BMB62+5/AyYpuoEjHr F5FFFBMJagrfhk9XM8L563jzDr0I/XyqUtAxEm+njb3uZUjUOfjZK+AY7/nkax94Q57yUBzXg0Wv Cr2V8W4BiTGCAzMwggMvAgEBMIGAMHkxEDAOBgNVBAoTB1Jvb3QgQ0ExHjAcBgNVBAsTFWh0dHA6 Ly93d3cuY2FjZXJ0Lm9yZzEiMCAGA1UEAxMZQ0EgQ2VydCBTaWduaW5nIEF1dGhvcml0eTEhMB8G CSqGSIb3DQEJARYSc3VwcG9ydEBjYWNlcnQub3JnAgMGSXAwCQYFKw4DAhoFAKCCAYcwGAYJKoZI hvcNAQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMDkwNzA3MjMxNjA4WjAjBgkqhkiG 9w0BCQQxFgQU61ygOMfN9HZoKyBbihmMyvXjUOIwgZEGCSsGAQQBgjcQBDGBgzCBgDB5MRAwDgYD VQQKEwdSb290IENBMR4wHAYDVQQLExVodHRwOi8vd3d3LmNhY2VydC5vcmcxIjAgBgNVBAMTGUNB IENlcnQgU2lnbmluZyBBdXRob3JpdHkxITAfBgkqhkiG9w0BCQEWEnN1cHBvcnRAY2FjZXJ0Lm9y ZwIDBklwMIGTBgsqhkiG9w0BCRACCzGBg6CBgDB5MRAwDgYDVQQKEwdSb290IENBMR4wHAYDVQQL ExVodHRwOi8vd3d3LmNhY2VydC5vcmcxIjAgBgNVBAMTGUNBIENlcnQgU2lnbmluZyBBdXRob3Jp dHkxITAfBgkqhkiG9w0BCQEWEnN1cHBvcnRAY2FjZXJ0Lm9yZwIDBklwMA0GCSqGSIb3DQEBAQUA BIIBADLxrjPJt3d1jzbU2AjzhYqjjd46M+Ss+QIdMah3sMn8T8WlyjJMYUrafXo6XLGYv01gwaLl sDePYfqbD2Oz7zFNq+7SEoSyfwy3Z2o9AFVUAuOuHMyC5v4SnNdsAogQbeRy+/z1MGFmxwvioCnO GmBqs4OIks5L8hHiXgM9wGc3j+fepmWJu/PA8WL7nNy06B0nYailanPC6FLuQq4WwBAaXzv2QZRG Zyx1CaUaaWcdEF4jPFuJZjLMOPBDvQtPweINU97+t49Kwo6ZJoaLy8pCS9tViCDJcG93Hw8bUxD5 D0sacjXZ8KHk2ZKPXAcbW4cvUm5ZSpdv3N7baTD9lO0AAAAAAAA= --Apple-Mail-4-265912457--