[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

sendmail package on IPv6 enabled kernel



こんばんは。

sendmailをパッケージ、つまりWIDEパッチ版8.9.3を使用しているのですが、
キューに溜まったままのメールがあるのに気づきました。

OSはcurrent 2000/6/13版で、カーネルはIPv6を有効にしているものの、実際
にIPv6の接続はありません。デバッグ・オプション等で追うと、
sm_gethostbyname()をINET6だけで行っている節がありました。

結局、デバッガで追ったところ、下のdiffのmakeconnection()は
h_errno == TRY_AGAIN にマッチして、EX_TEMPFAILで戻っていました。

そこで、ちょっと足したところ無事に出ていきました。これは、既にknownな
バグなんでしょうか?

--
神戸 隆博(かんべ たかひろ) at home


--- daemon.c.~1~	Wed Jun 14 22:56:08 2000
+++ daemon.c	Wed Jun 14 23:31:02 2000
@@ -1291,6 +1291,13 @@
 			if (errno == ETIMEDOUT || h_errno == TRY_AGAIN ||
 			    (errno == ECONNREFUSED && UseNameServer))
 			{
+#if NETINET6
+				if (family == AF_INET6)
+				{
+					family = AF_INET;
+					goto v4retry;
+				}
+#endif
 				mci_setstat(mci, EX_TEMPFAIL, "4.4.3", NULL);
 				return EX_TEMPFAIL;
 			}