• ベストアンサー

Linux Cからのメール送信

Linux上Cプログラムでメール送信を行いたいと思って います。 Cからシステムコールでsendmailを実行する方法は わかったのですが、純粋にSMTPサーバーにC言語から アクセスして送信する方法など可能なのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.1

可能ですよ。実際に sendmail のプログラムもそうやって作られている のだし。 socket で通信するプログラムが組めて、SMTP のプロトコルを理解していれば 誰でも作れます。SMTP のプロトコルは RFC(1123だったかな?)を読めば わかります。 SMTP サーバに対して、ポート23で connect して、HELO して、MAIL して RCPT して、DATA して、QUIT する、って感じ。 そんなに難しいプログラムには(エラー処理なんかをはしょれば)ならない ですが、少なくとも popen で sendmail を使うよりは、ずうっと面倒です。

hideot
質問者

お礼

なるほどー。 telnetでsmtpサーバに接続した時に入力するコマンド 手順をソケットプログラムで送信していけばいいと いうことですね。 やってみます。有難うございました。

すると、全ての回答が全文表示されます。

関連するQ&A