# \[Bug #1191\] Net::IMAP.encode\_utf7 bug?

**URL:** <https://www.ruby-forum.com/t/bug-1191-net-imap-encode-utf7-bug/160985>\
**Category:** Development\
**Created:** [February 21, 2009, 8:19pm UTC](https://www.ruby-forum.com/t/bug-1191-net-imap-encode-utf7-bug/160985 "2009-02-21T20:19:09Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Kengo\_Matsuyama](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/fbc32d/32.png) [@Kengo\_Matsuyama](https://www.ruby-forum.com/u/Kengo_Matsuyama)\
**Post date:** [February 21, 2009, 8:19pm UTC](https://www.ruby-forum.com/t/bug-1191-net-imap-encode-utf7-bug/160985/1 "2009-02-21T20:19:09Z")

</div>

Bug #1191: Net::IMAP.encode\_utf7 bug?  
[http://redmine.ruby-lang.org/issues/show/1191](http://redmine.ruby-lang.org/issues/show/1191)

e$B5/I\<\<Te(B: Kengo Matsuyama  
e$B%9%F!\<%?%9e(B: Open, e$BM%@hEYe(B: Normal  
ruby -v: ruby 1.9.2dev (2009-02-22 trunk 22492) [i686-linux]

Net::IMAP.encode\_utf7 e$B$K$h$ke(B modified UTF-7  
e$B$X$NJQ49$,@5$7$/$J$$$H;W$$$^$9!#e(B

> Net::IMAP.encode\_utf7(‘e$B$"e(B&’)  
> =\> “&MEIAJg-”

e$B$HJQ49$5$l$^$9$,!"e(BRFC 3501 section 5.1.3 e$B$K=\>$&$J$ie(B  
“&MEI-&-” e$B$Ke(B  
e$BJQ49$5$l$k$N$,@5$7$$$N$G$O$J$$$G$7$g$&$+!#e(B

modified UTF-7 e$B$NB\>$N\<BAu$,$"$^$j8+IU$+$i$J$+$C$?$N$G$9$,!"e(B  
e$B$?$H$($Pe(B PHP e$B$G$Oe(B mb\_convert\_encoding("e$B$“e(B&”,  
“utf7-imap”, “utf8”) e$B$Oe(B  
“&MEI-&-” e$B$K$J$j$^$7$?!#e(B(Perl e$B$Ne(B Net::IMAPe$B!"e(BPython  
e$B$Ne(B imaplib e$B$G$OL$\<BAue(B?)

e$B0J2\<$N%Q%C%A$G=$@5$G$-$^$9!#e(B

# Index: lib/net/imap.rb

— lib/net/imap.rb (revision 22492)  
+++ lib/net/imap.rb (working copy)  
@@ -863,7 +863,7 @@

```
 # Encode a string from UTF-8 format to modified UTF-7.
 def self.encode_utf7(s)

```

- 

```
 return s.gsub(/(&)|([^\x20-\x25\x27-\x7e]+)/u) {

```

- 

```
 return s.gsub(/(&)|([^\x20-\x7e]+)/u) {
   if $1
     "&-"
   else

```

---

<div class="post-metadata">

**Author:** ![Kengo\_Matsuyama](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/fbc32d/32.png) [@Kengo\_Matsuyama](https://www.ruby-forum.com/u/Kengo_Matsuyama)\
**Post date:** [April 8, 2010, 3:06pm UTC](https://www.ruby-forum.com/t/bug-1191-net-imap-encode-utf7-bug/160985/2 "2010-04-08T15:06:25Z")

</div>

e$B%A%1%C%He(B #1191 e$B$,99?7$5$l$^$7$?!#e(B (by Yusuke E.)

e$BC4Ev\<Te(B Shugo M.e$B$K%;%C%He(B

e$BA0ED$5$s!"e(B

e$B$3$N%A%1%C%H!"$I$&$G$9$+!)e(B

## – Yusuke E. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

[http://redmine.ruby-lang.org/issues/show/1191](http://redmine.ruby-lang.org/issues/show/1191)

---

<div class="post-metadata">

**Author:** ![Kengo\_Matsuyama](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/fbc32d/32.png) [@Kengo\_Matsuyama](https://www.ruby-forum.com/u/Kengo_Matsuyama)\
**Post date:** [April 14, 2010, 5:56am UTC](https://www.ruby-forum.com/t/bug-1191-net-imap-encode-utf7-bug/160985/3 "2010-04-14T05:56:42Z")

</div>

e$B%A%1%C%He(B #1191 e$B$,99?7$5$l$^$7$?!#e(B (by Shugo M.)

## e$B$4;XE&$NDL$j$J$N$G=$@5$7$F$\*$-$^$9!#e(B

[http://redmine.ruby-lang.org/issues/show/1191](http://redmine.ruby-lang.org/issues/show/1191)

---

<div class="post-metadata">

**Author:** ![Kengo\_Matsuyama](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/fbc32d/32.png) [@Kengo\_Matsuyama](https://www.ruby-forum.com/u/Kengo_Matsuyama)\
**Post date:** [April 16, 2010, 2:59pm UTC](https://www.ruby-forum.com/t/bug-1191-net-imap-encode-utf7-bug/160985/4 "2010-04-16T14:59:53Z")

</div>

e$B%A%1%C%He(B #1191 e$B$,99?7$5$l$^$7$?!#e(B (by Yusuke E.)

e$B%9%F!\<%?%9e(B Opene$B$+$ie(BClosede$B$KJQ99e(B

e$B1sF#$G$9!#e(B

r27336 e$B$G=$@5$5$l$?$h$&$G$9!#e(B  
e$B$"$j$,$H$&$4$6$$$^$7$?!#e(B

## – Yusuke E. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

[http://redmine.ruby-lang.org/issues/show/1191](http://redmine.ruby-lang.org/issues/show/1191)
