[C++] C++ i SMTP - Blad po wyslaniu "RCPT TO:"...

0

Witam,
jestem w trakcie pisania prostego programu pocztowego, ktorego zadaniem bedzie (na razie) wysylanie wiadomosci tekstowych. Komunikacja z serwerem przebiega prawidlowo (potwierdzone przez stosowne odpowiedzi serwera) do momentu wydania komendy "RCPT TO: [email protected]".
Wtedy serwer odpowiada:
554: <xxx.xxx.xxx.xxx>: Client host rejected: Access denied

Gdzies czytalem, ze powodem moze byc protokol SSL stosowany przez zaimplementowany u wiekszosci serwerow SMTP, ale co do tego nie jestem przekonany.

Teraz moje pytanie - w jaki sposob to obejsc, albo moze ktos zna jakies serwery, na ktorych nie ma z tym problemow...?

Bede wdzieczny za podpowiedz,
Pozdrawiam.

0

po wyslaniu helo/ehlo autoryzowales sie? mozliwe ze ten serwer SMTP wymaga autoryzacji (zalogowania sie na konto). odkad na internecie urosl spam, 99% serwerow pocztowych wymaga posiadania na nich konta i zalogowania sie aby moc wyslac wiadomosc

druga rzecz: rcpt-to mogl zostac odrzucony jest ten serwer SMTP jest ustawiony na tylko-obsluge-swoich-kont i "nie potrafi" przekazywac maili do innego serwera

0

jezeli dasz auth login a potem podasz swojego maila jako nadawce (czyli tego, ktory dostales rejestrujac sie na tym serwerze), to powinno zadzialac.

No i wiesz chyba, ze przy auth login uzytkownika i haslo wysylasz zakodowane w base64 a nie normalnie

0

Nie nie autoryzowalem sie - nie wynikalo to z posiadanej przeze mnie dokumentacji, ale prawdopodobnie o to wlasnie chodzi.
Maila chce przeslac z konta na serwerze na konto na tym samym serwerze.

Othello, mozesz podac skladnie tego auth login?

0

Hmm, czyzby google zamkneli?

AUTH LOGIN\r\n
uzytkownik\r\n
haslo\r\n
0

Dzieki Othello zdecydowanie pomogles w rozwiazaniu tego problemu.

Pozdrawiam.

0

witam,

ja natomiast mam problem z konczeniem polaczenia/konczeniem pisania tresci listu:

send(SMTPSock,"DATA\r\n",strlen("DATA\r\n"),0);
recv(SMTPSock, buf,sizeof(buf), 0);
printf("%s",buf);

W odpowiedzi dostaje:
354 End data with: <CR><LF>.<CR><LF>

jednak to:

send(SMTPSock,"\r\n.\r\n",strlen("\r\n.\r\n"),0);
recv(SMTPSock, buf,sizeof(buf), 0);
printf("%s",buf);

Nie przynosci rezultatu, podobnie, jak wysle "<CR><LF>.<CR><LF>".

Ma ktos jakis pomysl, jak zakonczyc tresc DATA?

0

http://en.wikipedia.org/wiki/Smtp - patrz nagłówek: SMTP transport example

1 użytkowników online, w tym zalogowanych: 0, gości: 1