Member of The Internet Defense League Últimos cambios
Últimos Cambios
Blog personal: El hilo del laberinto Geocaching

Qpopper 2.52: Another bug in the bulletins code

Última Actualización: 10 de Agosto de 1.998 - Lunes

Message-ID: <35CEE436.7F4DDF73@argo.es>
Date: Mon, 10 Aug 1998 12:14:46 +0000
From: Jesús Cea Avión" <jcea@argo.es>
Organization: Argo Redes y Servicios Telematicos, S.A.
To: qpopper@qualcomm.com, hacking@argo.es, teleco-vigo@argo.es, anita@argo.es,
        gdi@uvigo.es, Lista IRCops ESNET <ircops@esnet.org>,
        Lista de Proveedores Internet <proveedores@listserv.rediris.es>,
        Lista proveedores QMD <proveedores_qmd@syntax-error.org>,
        rsanz@argo.es
Subject: Qpopper 2.52: Another bug in the bulletins code

Qpopper 2.52 has the following problem in the bulletins code:

  1. You create a new user or the user hasn't a "mailbox" yet (user just created or mailbox deleted).

  2. Qpopper compiled as "server mode" (no message copy while downloading mail).

  3. There are bulletins that the user hasn't received yet.

So:

  1. The user tries to download email. It's mailbox doesn't exist yet.

  2. Qpopper dies when it tries to copy bulletins.

The user mailbox will be locked for some minutes (~5 minutes) and subsequent accesses will be freezed until that time... Then qpopper dies again.

Solution:

  1. When creating a new account, administrator *MUST* create also the mailbox. Use "touch", "chown" and "chmod".

  2. Install the following dirty but functional patch:
    --- pop_dropcopy.c.old2 Fri Aug  7 23:22:30 1998
    +++ pop_dropcopy.c      Fri Aug  7 23:49:17 1998
    @@ -978,7 +978,28 @@
     
                dfd = mfd;
            }
    -    } 
    +    } else if(p->server_mode) {
    +
    +      /*
    +      ** qpopper moria si:
    +      ** a) El mailbox no existe
    +      ** b) Estamos en modo servidor (no copia el mailbox)
    +      ** c) Existen boletines todavia no entregados
    +      ** Ello era debido a que no se inicializaban
    +      ** correctamente las estructuras para los boletines
    +      **
    +      ** El programa llega aqui si no se pudo abrir el mailbox
    +      ** por alguna razon. Otra posibilidad es abrir el fichero
    +      ** mailbox con "create". Es decir, que lo cree si no existe.
    +      ** El problema es que si se intenta crear y falla, qpopper
    +      ** muere y bloquea ese buzon durante un tiempo.
    +      */
    +
    +      p->hold = p->drop;
    +      if(init_dropinfo(p)!=POP_SUCCESS)
    +        goto bailout;
    +      dfd=mfd; 
    +    }
     
         /* Recalculate offset */
         (void)fseek(p->drop, 0L, SEEK_END);
    
-- 
Jesus Cea Avion                         _/_/      _/_/_/        _/_/_/
jcea@argo.es http://www.argo.es/~jcea/ _/_/    _/_/  _/_/    _/_/  _/_/
                                      _/_/    _/_/          _/_/_/_/_/
PGP Key Available at KeyServ   _/_/  _/_/    _/_/          _/_/  _/_/
"Things are not so easy"      _/_/  _/_/    _/_/  _/_/    _/_/  _/_/
"My name is Dump, Core Dump"   _/_/_/        _/_/_/      _/_/  _/_/
"El amor es poner tu felicidad en la felicidad de otro" - Leibnitz



Python Zope ©1998 jcea@jcea.es

Más información sobre los OpenBadges

Donación BitCoin: 19niBN42ac2pqDQFx6GJZxry2JQSFvwAfS