xinetd bug or new DoS attack?

David Cook <[email protected]> Sun, 4 Jan 2004 20:50:38 -0500
Newsgroups gmane.network.xinetd
Message-ID <[email protected]>
Aloha Steve:

The day you issued the CVS fix I installed the change.  Today we were 
attacked again and the change did not work.  Perplexed... I discovered why:

In your changes to 'connection.c' you placed:

     if (errno == ENFILE)
         cps_service_stop(sp, "no available descriptors");
     else

However, the error being reported is:

     Jan  4 19:37:05 puna xinetd[13130]: [ID 254256 daemon.error] service pop3, accept: Too many open files (errno = 24)

Glancing at the errno.h we discover:

     #define ENFILE  23      /* File table overflow                  */
     #define EMFILE  24      /* Too many open files                  */

Thus, the block should have been EMFILE (M not N):

     if (errno == EMFILE)
         cps_service_stop(sp, "no available descriptors");
     else

Typo :) Do you agree?  I've made the changes on my end (only to connection.c)
and recompiled. We'll see if this does it.

Mahalo Nui

-- 
David Cook -- Cookware Inc. -- [email protected]
TQworld and tranquility:  www.TQworld.com
Cookware Corporate:       www.cookwareinc.com
Hawaii/Asia Office: (808) 966-5049 (david cook)
Mainland US Office: (317) 769-5049 (deborah sellers)

Have you had tranquility today? Play now at http://www.tqworld.com