준호씨의 블로그

c - smtp client library 본문

개발이야기/이메일시스템

c - smtp client library

준호씨 2018. 4. 24. 23:50
반응형

GNU Mailutils

curl

사용법이 간단한편이다. curl 은 보통 http 요청 할 때 많이 사용하는데, curl 을 종종 사용하는 사람들 조차도 smtp 가 된다는 사실에 놀라곤 한다.

문제점

수신자가 여러명일 때 한명이라도 실패 하면 모두 실패한다. 보통 수신자가 여러명일 때 rcpt to 2개 중 1개가 실패 해도 발송이 되어야 되는데 curl 에서는 실패한다.

이것은 known issue 이다. 2012년 부터 알려진 이슈이지만 아직 수정 되지 않았다. 짬나면 기여해 봐야 겠다.

libquickmail

curl 을 랩핑 해 둔 라이브러리라고 보면 된다. 그래서 curl 이 가진 문제점을 같이 갖는다.

curl 말고 자체 구현한 smtp 도 있긴하다. 자체구현한 smtp 를 이용하려면 quickmaillight 로 빌드 하면 된다.

make quickmaillight
make test_quickmaillight

그런데 이 역시 기본적으로 메일 발송하는 함수는 rcpt to 하나만 실패 해도 모두 실패 한다. smtp 커맨드 함수로 메일 발송 로직을 직접 구현할 수 있긴 하다.

libetpan

osx 에서 빌드 하려니 번거로워서 보류했다.

기타

libvldmaila

e-mail address validation library

이건 그냥 e-mail address validator

deanproxy / eMail

https://github.com/deanproxy/eMail

command line tool

반응형
Comments