ฉันมีปัญหาในการทำความเข้าใจ rfc4978.
ตามที่ฉันเข้าใจ ทุกอย่างถูกบีบอัด หลังจากเซิร์ฟเวอร์ returnOK
รวมถึงชื่อคำสั่ง อย่างไรก็ตาม ดูเหมือนว่าฉันเข้าใจผิดหลายประการ (เนื่องจาก[Gmail]/sfgs
ไม่ได้เปลี่ยนชื่อและเห็นได้ชัดว่าไม่ได้ส่งไฟล์)
$ cat deflatecommands /dev/stdin | socat - OPENSSL:imap.googlemail.com:993,compress=none
* CAPABILITY IMAP4rev1 UNSELECT IDLE NAMESPACE QUOTA ID XLIST CHILDREN X-GM-EXT-1 UIDPLUS COMPRESS=DEFLATE ENABLE MOVE CONDSTORE ESEARCH UTF8=ACCEPT APPENDLIMIT=35882577 LIST-EXTENDED LIST-STATUS
a001 OK [email protected] authenticated (Success)
a002 OK Success
2016/04/28 21:47:03 socat[16204.25769803872] E SSL_write(): Broken pipe
โดยที่คำสั่ง deflate ประกอบด้วย:
a001 LOGIN myus.tyer mypassord
a002 COMPRESS DEFLATE
xÚK400VrõsôuUPŠvÏMÌ̉Õ/NK/VBp+@‰— Ô)
ซึ่งไม่มีการบีบอัดให้ :
a001 LOGIN myus.tyer mypassord
a002 COMPRESS DEFLATE
a003 RENAME "[Gmail]/sfgs" "[Gmail]/xxxxxxxxxxx"
แน่นอนว่าการสิ้นสุดของ coursedeflatecommands
usescrfl
line ทั้งในส่วนที่ไม่มีการบีบอัดและการบีบอัด deflatecommands
ถูกสร้างด้วย :
$ openssl zlib a003 > a003.zlib
$ cat a001 a002 a003.zlib > defaltecommands
a002 OK Success
หากพิมพ์บนหน้าจอ - person user2284570   schedule 28.04.2016a003.zlib
และขอย้ำอีกครั้งว่า ไม่มีการส่งไบต์ที่บีบอัดใดๆ ก่อนที่ GImap จะส่งคืนOK Success
- person user2284570   schedule 30.04.2016openssl zlib
- person user2284570   schedule 30.04.2016