actuellement en stage je suis charger de créer un antispam du style Dspam ou spamassassin en C. ayant lu et relue la politique de délegation de postfix et recuperer également les codes sources de spamassassin et dspam je fais face à un problème.
Je n'arrive pas à savoir sous quel forme postfix envoi les mails à dspam. car j'aimerais bien savoir ce qui sera envoyé à mon programme pour effectuer les traitements necessaire.
Deuxième soucis pour effectuer le lien entre mon programme et postfix j'ai ecris un programme qui ecoute sur un port. Pour verifier que ca marche j'ai egalement écris un serveur jusque la pas de problème. maintenant j'aimerais savoir comment faire emettre postfix sur ce port et que dois'je faire pour que la connexion de mon client soit accepté par postifx.
Je joins le code de connexion
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 int ouverture_connection() { int fd; struct hostent *h; struct sockaddr_in serveur, local; /* création de la socket */ fd = socket(AF_INET, SOCK_STREAM, 0); /* rattachement a l'adresse locale sur n'importe quel port */ local.sin_family = AF_INET; local.sin_port = 0; local.sin_addr.s_addr = htonl(INADDR_ANY); /* attachement de la socket à l'adresse */ if (bind(fd, (struct sockaddr *)&local, sizeof local) == -1) { perror("Erreur lors de l'appel à la fonction bind"); exit(3); } if ((h = gethostbyname("ousmane")) == NULL) { perror("Erreur de recuperation de nom:"); exit(5); } serveur.sin_family = AF_INET; serveur.sin_port = htons(25001); memcpy(&serveur.sin_addr.s_addr, h->h_addr, h->h_length); /* établissement de la connexion */ if (connect(fd, (struct sockaddr *)&serveur, sizeof(serveur)) == -1) { perror("Erreur lors de la demande de connexion"); exit(4); } return fd; }
merci d'avance pour votre aide et desolé pour les fautes d'orthographe
Partager