Package: nmh Version: 1.1-release-3 Severity: minor Tags: patch Trying to inc mail from a KPOP server I got the following message:
[EMAIL PROTECTED]:~$ inc -kpop -host po12.mit.edu inc: unable to bind socket: Permission denied [EMAIL PROTECTED]:~$ After some investigation I discovered that unlike nmh version 1.1-RC1-3, this version of nmh was packaged without KPOP support, and upon inspecting the code it appears that it was effectively trying to use RPOP. I added a test in pop_init so that it will fail when it tries to open a kpop connection without KPOP support compiled in. -- System Information: Debian Release: 3.1 Architecture: i386 (i686) Kernel: Linux 2.6.8-2-686 Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968) Versions of packages nmh depends on: ii base-files 3.1.2 Debian base system miscellaneous f ii libc6 2.3.2.ds1-22 GNU C Library: Shared libraries an ii libdb3 3.2.9-22 Berkeley v3 Database Libraries [ru ii liblockfile1 1.06 NFS-safe locking library, includes ii libncurses5 5.4-4 Shared libraries for terminal hand ii libsasl2 2.1.19-1.5 Authentication abstraction library ii netbase 4.21 Basic TCP/IP networking system -- no debconf information
--- uip/popsbr.c 2005-07-26 14:22:46.337684902 -0400 +++ uip/popsbr-rwbarton.c 2005-07-26 13:52:02.579838473 -0400 @@ -459,20 +459,21 @@ #endif #ifndef NNTP -# ifdef KPOP if ( kpop ) { +# ifdef KPOP snprintf (buffer, sizeof(buffer), "%s/%s", KPOP_PRINCIPAL, "kpop"); if ((fd1 = client (host, "tcp", buffer, 0, response, sizeof(response))) == NOTOK) { return NOTOK; } +# else /* KPOP */ + snprintf (response, sizeof(response), "this version of nmh compiled without KPOP support"); + return NOTOK; +# endif } else { -# endif /* KPOP */ - if ((fd1 = client (host, "tcp", POPSERVICE, rpop, response, sizeof(response))) == NOTOK) { + if ((fd1 = client (host, "tcp", POPSERVICE, rpop, response, sizeof(response))) == NOTOK) { return NOTOK; - } -# ifdef KPOP - } -# endif /* KPOP */ + } + } #else /* NNTP */ if ((fd1 = client (host, "tcp", "nntp", rpop, response, sizeof(response))) == NOTOK) return NOTOK;