Projet

Général

Profil

Development #26321

Forcer le timeout des socket de mail à 0

Ajouté par Emmanuel Cazenave il y a plus de 5 ans. Mis à jour il y a plus de 5 ans.

Statut:
Rejeté
Priorité:
Normal
Assigné à:
-
Catégorie:
-
Version cible:
-
Début:
11 septembre 2018
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

Pour éviter ce binz : #22290


Fichiers

Historique

#2

Mis à jour par Emmanuel Cazenave il y a plus de 5 ans

https://docs.djangoproject.com/en/1.8/ref/settings/#email-timeout

Qui doit finir en timeout de l'instance de la socket créée pour l'envoi de mail si ma lecture de django et smtplib est correcte (la rendant donc imperméable aux terroristes qui font socket.setdefaulttimeout dans la thread d'à coté espère-t-ton).

#3

Mis à jour par Emmanuel Cazenave il y a plus de 5 ans

Je m'emballe pas sûr que la valeur O fasse le job.

#4

Mis à jour par Emmanuel Cazenave il y a plus de 5 ans

Et donc la valeur qui assurerait le comportement par défaut de la lib standard c'est None, mais si None django ne la passe pas à smptlib :

        connection_class = smtplib.SMTP_SSL if self.use_ssl else smtplib.SMTP
        # If local_hostname is not specified, socket.getfqdn() gets used.
        # For performance, we use the cached FQDN for local_hostname.
        connection_params = {'local_hostname': DNS_NAME.get_fqdn()}
        if self.timeout is not None:
            connection_params['timeout'] = self.timeout
        if self.use_ssl:
            connection_params.update({
                'keyfile': self.ssl_keyfile,
                'certfile': self.ssl_certfile,
            })
        try:
            self.connection = connection_class(self.host, self.port, **connection_params)

Donc je tente 5 secondes.

#5

Mis à jour par Thomas Noël il y a plus de 5 ans

Sur une communication avec un serveur SMTP, 5 secondes de timeout ça me semble un peu chaud (un peu court, il peut y avoir de l'anti-spam et de la résolution DNS en jeu). On est sûr que c'est la valeur par défaut ?

Peut-être que je préférerais voir cela dans le settings.py diffusé par hobo.

#6

Mis à jour par Emmanuel Cazenave il y a plus de 5 ans

  • Statut changé de Solution proposée à Rejeté

La valeur par défaut c'est None, qu'on ne peut pas être utilisée ici pour les raisons sus mentionnées.

5 secondes c'est moi et mon doigt mouillé au vent, donc 10 secondes me vont très bien et oui c'est plus logique dans hobo puisque c'est de là que vient la dépendance sur kombu qui fout le bazard.

Formats disponibles : Atom PDF