ESMTP 8BITMIME extention 사용에 관한 질문.
mail client가 메일을 보내기 위해서는 일반적으로 7bit us-ascii 데이타로 만들기 위해
base64, QP를 사용하여 인코딩을 해서 보냅니다.
그러나 제가 알기에 요즘 서버들은 8bit 데이터를 많이 지원을 하기 때문에
8BITMIME이라는ESMTP extention을 사용하여 원래 데이터를 보낼 수있다고 알고있습니다.
제가 찾아 보니가
Content-Transfer-Encoding
8bit - up to 998 octets per line of the code range [1..255]\{CR, NL}.
This can be used only if both the sending and receiving mail transfer agents support the 8BITMIME transport SMTP extension.
이와 같이 8bitmime은 한라인에 998(또는 1000)자의 길이 제한이 있다고 알고 있습니다.
제가 궁금한 것은,
실제 데이터를 보낼 때 998문자 단위로 개행을 한다고 하면, 한라인을 구분하기 위한 \r\n 와 원래 본문에 있었던\r\n 는 어떻게 구분이 되는 지요?
그리고 agif 같은 경우는 이미지 헤더 값과 데이터 사이에 null 값이 있던데, 이 null값은 어떻게 처리가 되야하는지?
제가 생각하기에 8bitmime을 사용하면 원래 데이터를 strcpy하여 보내기만 하면 될 줄 알았는데, (별도의 인코딩 없이)
여러가지로 생각할 게 많네요.
혹시 8bitmime이 적용된 smtp client 오픈소스를 가지고 계시거나... 어디 있는지 아시는 분은 알려주시면 감사하겠습니다.
그리고 제 질문에 대한 답변도 역시 부탁 드립니다.
감사합니다.


댓글 달기