msmtpのmnews向けパッチ

テーマ:
mnewsはSMTPに対応しているのだけど SMTP AUTH には対応していないので、メール送信にはmsmtpを呼び出して利用しているのだが、mnewsからmsmtpをそのまま呼び出すとなぜかパスワード入力ができないという問題がある。

で、そのmsmtp向け修正パッチを作成したので公開。

msmtpは内部でパスワード入力にgetpass()を利用しているのだが、実際には内部でgnu_getpass()というのを呼び出している(#defineで置換している)。で、gnu_getpass()だとうまくパスワード入力できない。なのでlibcのgetpass()を利用するようにする。

当然ですが無保証です。自分の責任のもとで利用してください。


--- src/msmtp.c.orig 2010-02-07 20:38:01.000000000 +0900
+++ src/msmtp.c 2011-11-24 23:11:35.000000000 +0900
@@ -394,6 +394,9 @@
if (getpass_uses_tty)
{
prompt = xasprintf(_("password for %s at %s: "), user, hostname);
+#ifdef getpass
+#undef getpass
+#endif
gpw = getpass(prompt);
free(prompt);
if (gpw)
AD

mnewsの色付けパッチ

テーマ:
メーラにはいまだにmnewsという往年のテキストメーラを使っていてさすがにこないだmuttに乗り換えようかといろいろいじってみたのだけど、やっぱりmnewsに戻ってきてしまった。

muttはカスタマイズ性が高くていいのだけど、mnewsでもプログラムに手を入れてビルドしなおせば好きに改造することはできるので、結局のところオープンソースならばカスタマイズ性はあまり重要でないかなあという結論になってしまった。(それよりもソースをいじりやすいことのほうが重要。いやmuttもソースコードいじりやすいんだけどね)

で、ついでにmnews用のちょっとしたパッチを作ったので公開。mnewsはカラー表示ができるのだけど、メール一覧のサブジェクト表示でスレッドの場合に返信メールに色がつかないのだがその修正パッチとあとメーリングリストの場合に[]でくくられた部分に色づけするためのかなり適当な修正パッチ。

とうぜん無保証です。利用は各自の責任の上でどうぞ。


--- article.c.orig 2001-02-05 01:54:48.000000000 +0900
+++ article.c 2011-11-16 20:22:43.000000000 +0900
@@ -2441,7 +2441,36 @@
}
#endif /* COLOR */
euc_strncpy(buff, article_list[j].subject, l);
+#if 0
euc_printf("%s", buff);
+#else
+ {
+ char c, *p0, *p1;
+ term_attrib(color_code[REFER_COLOR]);
+ for (p0 = buff; *p0 && strchr(" |", *p0); p0++)
+ ;
+ c = *p0;
+ *p0 = '\0';
+ euc_printf("%s", buff);
+ *p0 = c;
+ if ((*p0 == '[') && (p1 = strchr(p0, ']'))) {
+ p1++;
+ c = *p1;
+ *p1 = '\0';
+ term_attrib(color_code[FROM2_COLOR]);
+ euc_printf("%s", p0);
+ *p1 = c;
+ } else {
+ p1 = p0;
+ }
+ if (article_list[j].mark & THREAD_MARK) {
+ term_attrib(color_code[THREAD_COLOR]);
+ } else {
+ term_attrib(color_code[SUBJECT_COLOR]);
+ }
+ euc_printf("%s", p1);
+ }
+#endif
}
}
}
@@ -3828,6 +3857,7 @@
strcpy(&sort_list[index].subject[i], THREAD_SUBJECT3);
if (strncasecmp(article_list[current_article].subject, REPLY_SUBJECT,
sizeof(REPLY_SUBJECT) - 1)) {
+ sort_list[index].mark |= THREAD_MARK;
euc_strncpy(&sort_list[index].subject[i + sizeof(THREAD_SUBJECT3) - 1],
article_list[current_article].subject,
MAX_SUBJECT_LEN - (i + sizeof(THREAD_SUBJECT3) - 1) - 1);
AD

告知

テーマ:
最近いそがしくて全然ブログを更新してないが、ひさびさに告知。

まず今週末の11月11日(金)~12日(土)は大阪・南港のATCでKOFに出展します。
http://k-of.jp/

今回はセミナーを金曜と土曜で別々のを2本やります。金曜は「アセンブラ大集合!」というタイトルで、ノリと勘でいろいろなプロセッサのアセンブラを読んでみよう、ということをやります。土曜はいつもの組込みOS自作の話です。

あと土曜のステージで、SoftwareDesign誌「勉強会&イベント探訪記」の紹介をさせていただきます。
さらにジュンク堂KOF店でサイン会をやらせていただく予定です。

来週末19日(土)~20日(日)はOSC東京に出展します。場所は明星大学です。
http://www.ospn.jp/

今回はいつもと違って組込みOS自作番外編ということで、アセンブラのセミナーをやります。KOFでやるのと似た感じです。ライトニングトークにも登壇予定です。

来月の12月3日はOSC福岡に出展です。セミナー、LTを予定しています。

あと@IT MONOistの連載も続けています。
http://monoist.atmarkit.co.jp/mn/articles/1111/02/news003.html
最新記事ではpingによるネットワーク通信を実装し説明してます。もう少しで最終回かな。

アセンブラ本のほうの作業も進めています。なんとか早めに出せるようがんばりたいです。

AD