• ベストアンサー

smtp-auth でメール送信

補足します。  認証終了後、 MAIL FROM を送ります。 sprintf (out_data, "MAIL FROM:<%s>\r\n", buf); if ( 0!=put_smtp_auth_line( SMTPSock, out_data, strlen (out_data) ) ) return(-1); buf には、自分のメールアドレスが入っています。 この結果は、 500 5.5.1 Command unrecognized: "" が帰ってきます。

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

  • ベストアンサー
  • maesen
  • ベストアンサー率81% (646/790)
回答No.1

補足が新規の質問になっているようですがこちらに回答します。 >500 5.5.1 Command unrecognized: "" 記載されたプログラム上では明確な問題は見つけられませんでしたが、 このエラーは文法エラーなので送られているコマンド列が正しくないのだと思います。 SMTPクライアントの開発をしているようですので、送信したはずとか受信データがおかしいなどを避けるためにも、 本当に送受信しているパケットをWireSharkなどでキャプチャしつつデバッグしたほうが良いように思います。

uyama33
質問者

お礼

ありがとうございます。 rfc4954 では、 MAIL FROM:<e=mc2@example.com> AUTH=e+3Dmc2@example.com との記述があります。 AUTH の扱いが間違っているようなので。 rfc4954 をゆっくり見直してみます。 送信、受信のデータはデバッガの中でみています。(VS 2005)を使っています。 ありがとうございました。

uyama33
質問者

補足

500 を無視して、先に進んでみたらメールを送信できました。 これで、落ち着いて検討できます。 ありがとうございました。

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

関連するQ&A