Exerciții E-mail
Suport laborator
Vă oferim aici un cod sursă schelet pentru realizarea unui client de email SMTP scris in C.
Pentru testarea lui, veți folosi un server SMTP acre rulează local. Acesta poate fi creat folosind un utilitar existent în Python, numit smtpd. Rularea acestui utiliar pe portul 25 se face astfel:
sudo python -m smtpd -n -c DebuggingServer 127.0.0.1:25
Începând cu Python 3.12 modulul smtpd a fost eliminat, motiv pentru care (dacă rulați cu comanda de mai sus), veți primi eroarea No module named smtpd.
Din acest motiv, pentru Python >=3.12 vom instala aiostmtpd și vom rula ca mai jos:
pip install aiosmtpd
python3 -m aiosmtpd -l 127.0.0.1:25
Atenție! Pentru a putea rula serverul smtpd pe un port mai mic de 1024, trebuie să aveți drepturi de root, deci vom rula cu sudo.
Cerințe
Pornind de la codul disponibil aici, implementați următoatrele cerințe:
- Implementați un client SMTP peste TCP prin care să trimiteți către serverul smtpd un e-mail care conține niște text și un fișier dat ca parametru sub forma unui atașament de tip text/plain.
- (Extra) Folosind instrucțiunile de aici, trimiteți un e-mail către asistent prin intermediul serverului SMTP de la Google.