unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#25420: Unknown encoding 8bit;; defaulting to 8bit
       [not found] <87vatpx9aq.fsf@jidanni.org>
@ 2017-01-11 16:44 ` 積丹尼 Dan Jacobson
  2017-01-12  0:07   ` Katsumi Yamaoka
  0 siblings, 1 reply; 3+ messages in thread
From: 積丹尼 Dan Jacobson @ 2017-01-11 16:44 UTC (permalink / raw)
  To: Katsumi Yamaoka; +Cc: 25420

OK I'm sending it to them.

Dear bug-gnu-emacs:

>>>>> "KY" == Katsumi Yamaoka <yamaoka@jpl.org> writes:
KY> On Wed, 11 Jan 2017 08:39:21 +0800, 積丹尼さん wrote:
>> [1. application/gzip; smsc.cpio.gz]...

KY> Thanks.  I could reproduce the problem; a workaround is below.
KY> Feel free to forward this reply to the Emacs bug list or other.

KY> (defadvice ietf-drums-strip (after remove-garbage activate)
KY>   "Remove garbage."
KY>   (let ((regexp (concat "[" ietf-drums-tspecials "]+")))
KY>     (while (string-match regexp ad-return-value)
KY>       (setq ad-return-value
KY> 	    (concat (substring ad-return-value 0 (match-beginning 0))
KY> 		    (substring ad-return-value (match-end 0)))))))

KY> A mail that contains this header

KY> 	Content-Transfer-Encoding: 8bit;

KY> causes Gnus to issue the following warning:

KY> 	Unknown encoding 8bit;; defaulting to 8bit

KY> This means that Gnus doesn't know the encoding method named:

KY> 8bit;

KY> Note that this is not "8bit", but "8bit;".  This is due to a bug
KY> of a certain mail software.  Gnus does no bad.  But it is easy
KY> and harmless to make Gnus fix it, so, I think we had better do
KY> something like the above workaround if it generally happens.
KY> I'm not quite sure whether using `ietf-drums-tspecials' is the
KY> right choice, though.





^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#25420: Unknown encoding 8bit;; defaulting to 8bit
  2017-01-11 16:44 ` bug#25420: Unknown encoding 8bit;; defaulting to 8bit 積丹尼 Dan Jacobson
@ 2017-01-12  0:07   ` Katsumi Yamaoka
  2017-01-12 23:51     ` Katsumi Yamaoka
  0 siblings, 1 reply; 3+ messages in thread
From: Katsumi Yamaoka @ 2017-01-12  0:07 UTC (permalink / raw)
  To: 25420; +Cc: 積丹尼 Dan Jacobson

[-- Attachment #1: Type: text/plain, Size: 1480 bytes --]

On Thu, 12 Jan 2017 00:44:28 +0800, 積丹尼 Dan Jacobson wrote:
> A mail that contains this header

> 	Content-Transfer-Encoding: 8bit;

> causes Gnus to issue the following warning:

> 	Unknown encoding 8bit;; defaulting to 8bit

> This means that Gnus doesn't know the encoding method named:

> 8bit;

> Note that this is not "8bit", but "8bit;".

I found it in a mail that Dan Jacobson sent to me as an example.

> This is due to a bug of a certain mail software.  Gnus does no bad.
> But it is easy and harmless to make Gnus fix it, so, I think we had
> better do something like the above workaround if it generally happens.

A partial[1] patch is below.  `ietf-drums-strip' is an aliasee
of `mail-header-strip' that the following modules use in Emacs:

lisp/gnus/gnus-art.el
lisp/gnus/gnus-sum.el
lisp/gnus/mm-decode.el
lisp/gnus/nndoc.el
lisp/mh-e/mh-mime.el

The purpose of it is all to clean up a string value of
the Content-Transfer-Encoding header of a mail.  So, we can make
`ietf-drums-strip' remove some garbage, such as ";", in addition
to comments and whitespace.  However, other programs outside of
Emacs might be using it for different purposes.  This is why I
added the new function `mail-header-strip-cte' that is assumed
to be exclusively used for cleaning up C-T-E string.

[1] When I install the patch, I will replace `mail-header-strip'
in the modules listed above with `mail-header-strip-cte' as well.

Regards,

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Type: text/x-patch, Size: 1279 bytes --]

--- lisp/mail/ietf-drums.el~	2017-01-04 22:16:46 +0000
+++ lisp/mail/ietf-drums.el	2017-01-11 23:18:33 +0000
@@ -171,8 +171,21 @@
 (defun ietf-drums-strip (string)
   "Remove comments and whitespace from STRING."
   (ietf-drums-remove-whitespace (ietf-drums-remove-comments string)))
 
+(defun ietf-drums-remove-garbage (string)
+  "Remove some gabage from STRING."
+  (while (string-match "[][()<>@,;:\\\"/?=]+" string)
+    (setq string (concat (substring string 0 (match-beginning 0))
+			 (substring string (match-end 0)))))
+  string)
+
+(defun ietf-drums-strip-cte (string)
+  "Remove comments, whitespace and gabage from STRING.
+STRING is assumed to be a string that is extracted from
+the Content-Transfer-Encoding header of a mail."
+  (ietf-drums-remove-garbage (inline (ietf-drums-strip string))))
+
 (defun ietf-drums-parse-address (string)
   "Parse STRING and return a MAILBOX / DISPLAY-NAME pair."
   (with-temp-buffer
     (let (display-name mailbox c display-string)
--- lisp/mail/mail-parse.el~	2017-01-04 22:16:46 +0000
+++ lisp/mail/mail-parse.el	2017-01-11 23:13:51 +0000
@@ -51,2 +51,3 @@
 (defalias 'mail-header-strip 'ietf-drums-strip)
+(defalias 'mail-header-strip-cte 'ietf-drums-strip-cte)
 (defalias 'mail-header-get-comment 'ietf-drums-get-comment)

^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#25420: Unknown encoding 8bit;; defaulting to 8bit
  2017-01-12  0:07   ` Katsumi Yamaoka
@ 2017-01-12 23:51     ` Katsumi Yamaoka
  0 siblings, 0 replies; 3+ messages in thread
From: Katsumi Yamaoka @ 2017-01-12 23:51 UTC (permalink / raw)
  To: 25420; +Cc: 積丹尼 Dan Jacobson

On Thu, 12 Jan 2017 09:07:43 +0900, Katsumi Yamaoka wrote:
> On Thu, 12 Jan 2017 00:44:28 +0800, 積丹尼 Dan Jacobson wrote:
>> A mail that contains this header
>> 	Content-Transfer-Encoding: 8bit;
>> causes Gnus to issue the following warning:
>> 	Unknown encoding 8bit;; defaulting to 8bit
>> This means that Gnus doesn't know the encoding method named:
>> 8bit;
>> Note that this is not "8bit", but "8bit;".
[...]
> A partial[1] patch is below.

Installed:
<http://lists.gnu.org/archive/html/emacs-diffs/2017-01/msg00089.html>





^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-01-12 23:51 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <87vatpx9aq.fsf@jidanni.org>
2017-01-11 16:44 ` bug#25420: Unknown encoding 8bit;; defaulting to 8bit 積丹尼 Dan Jacobson
2017-01-12  0:07   ` Katsumi Yamaoka
2017-01-12 23:51     ` Katsumi Yamaoka

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).