For anyone who might be encountering problems building Qpopper or other
software on a Solaris system and seeing a
checking size of unsigned long int... configure: error: cannot compute
sizeof (unsigned long int), 77
error message at the
configure
stage or seeing ld: fatal: Symbol referencing
errors
at the make
stage, try running
configure
with CFLAGS=-gstabs+
, i.e. try
./configure CFLAGS=-gstabs+
. Since Solaris uses shadow
passwords, you should also use the --enable-specialauth
option
as well, i.e. use the following configure command:
./configure --enable-specialauth CFLAGS=-gstabs+
configure
step
allowed me to resolve issues I was having installing Qpopper 4.0.16 on a
Solaris 5.7 system.
I've included everything I did while working on the problem below for my own future reference and in case it might help someone else encountering the same or similar problem who is searching for webpages with information on the problem.
I was notified of a security vulnerability related to Qpopper on a Sun SPARC system running Solaris 5.7, which was detected during Foundstone security scanning of the network on which the system resided. I checked the version of qpopper currently on the system by connecting to the POP3 port, which is port 110, on the server. I saw a banner indicating the version was 4.0.5
I wasn't sure where the executable files for qpopper were on the hard drive
for qpopper or what other files associated with the software were on the system.
I found popper
and popauth
in
/usr/local/sbin
.
# ls -l /usr/local/sbin/pop* -rwsr-xr-x 1 pop root 35968 Mar 26 2003 /usr/local/sbin/popauth -rwxr-xr-x 1 root other 143336 Mar 26 2003 /usr/local/sbin/popper # /usr/local/sbin/popper -v Qpopper version 4.0.5 (non-standalone) # /usr/local/sbin/popauth -version /usr/local/sbin/popauth v4.0.5
I also found a popauth
file in /usr/local/lib
.
# ls -l /usr/local/lib/pop* -rwsr-xr-x 1 pop other 195716 Apr 5 2001 /usr/local/lib/popauth
I found the man files in /usr/local/man/man8
.
# ls -l /usr/local/man/man8/pop* -rw-r--r-- 1 root other 2211 Mar 26 2003 /usr/local/man/man8/popaut h.8 -rw-r--r-- 1 root other 21370 Mar 26 2003 /usr/local/man/man8/popper .8
I found popauthd
in /usr/local/libexec/popauthd
.
# ls -l /usr/local/libexec/popauthd -rwxr--r-- 1 root other 2411 Mar 19 2003 /usr/local/libexec/popauth d
The popauthd daemon is being run from /etc/init.d/popauthd
.
# ls -l /etc/init.d/pop* -rwxr--r-- 2 root other 122 Aug 14 2002 /etc/init.d/popauthd
The file contains the following lines:
pauthd.sh
[ -x /usr/local/libexec/popauthd ] && {
/usr/local/libexec/popauthd &
echo -n ' popauthd'
}
I had also placed the following lines in /etc/inetd.conf
back
in 2001 when I set up the system.
# Post Office Protocol - added 4/05/01 by JMC
# The "-s" option enables statistics logging. After each session ends,
# a statistics record is written to the log, which contains the username,
# deleted msgs, deleted octets, msgs left on server, octets left on server,
# the name of the client machine, and the IP address of the client machine.
# The "-p 2" option specifies the clear text handling option when APOP
# is available. The "2" indicates that clear text passwords are always
# permitted (even if an APOP entry exists).
pop3 stream tcp nowait root /usr/local/sbin/popper qpopper -s -p 2
There are also files in /etc
associated with APOP authorization.
# ls -l /etc/pop* -rw------- 1 pop other 0 Apr 5 2001 /etc/pop.auth -rw------- 1 pop pop 0 Apr 5 2001 /etc/pop.auth.dir -rw------- 1 pop pop 1024 Jul 6 2007 /etc/pop.auth.pag -rw------- 1 pop other 15 Apr 5 2001 /etc/pop.noauth
I decompressed the downloaded file and extracted its contents.
# gunzip qpopper4.0.16.tar.gz # tar -xvf qpopper4.0.16.tar x qpopper4.0.16, 0 bytes, 0 tape blocks x qpopper4.0.16/conf.h, 560 bytes, 2 tape blocks x qpopper4.0.16/config.h.in, 16132 bytes, 32 tape blocks x qpopper4.0.16/configure, 335346 bytes, 655 tape blocks x qpopper4.0.16/configure.in, 49931 bytes, 98 tape blocks x qpopper4.0.16/GUIDE.pdf, 379729 bytes, 742 tape blocks x qpopper4.0.16/install-sh, 5603 bytes, 11 tape blocks x qpopper4.0.16/License.txt, 8011 bytes, 16 tape blocks x qpopper4.0.16/Makefile.in, 2611 bytes, 6 tape blocks x qpopper4.0.16/misc.h, 360 bytes, 1 tape blocks x qpopper4.0.16/README, 2135 bytes, 5 tape blocks x qpopper4.0.16/update-copyright, 815 bytes, 2 tape blocks x qpopper4.0.16/common, 0 bytes, 0 tape blocks x qpopper4.0.16/common/check_group.c, 1638 bytes, 4 tape blocks x qpopper4.0.16/common/flock.c, 2393 bytes, 5 tape blocks x qpopper4.0.16/common/flock.h, 863 bytes, 2 tape blocks x qpopper4.0.16/common/logit.c, 5877 bytes, 12 tape blocks x qpopper4.0.16/common/logit.h, 1727 bytes, 4 tape blocks x qpopper4.0.16/common/maillock.c, 24976 bytes, 49 tape blocks x qpopper4.0.16/common/maillock.h, 2186 bytes, 5 tape blocks x qpopper4.0.16/common/Makefile.in, 2961 bytes, 6 tape blocks x qpopper4.0.16/common/sieve_lock.c, 1538 bytes, 4 tape blocks x qpopper4.0.16/common/sieve_lock.h, 262 bytes, 1 tape blocks x qpopper4.0.16/common/snprintf.c, 13494 bytes, 27 tape blocks x qpopper4.0.16/common/snprintf.h, 1032 bytes, 3 tape blocks x qpopper4.0.16/common/string_util.c, 6259 bytes, 13 tape blocks x qpopper4.0.16/common/string_util.h, 1288 bytes, 3 tape blocks x qpopper4.0.16/common/utils.c, 3119 bytes, 7 tape blocks x qpopper4.0.16/common/utils.h, 1584 bytes, 4 tape blocks x qpopper4.0.16/doc, 0 bytes, 0 tape blocks x qpopper4.0.16/doc/Changes, 22849 bytes, 45 tape blocks x qpopper4.0.16/doc/LMOS-FAQ.html, 6119 bytes, 12 tape blocks x qpopper4.0.16/doc/mac, 1786 bytes, 4 tape blocks x qpopper4.0.16/doc/README.Berkeley, 13626 bytes, 27 tape blocks x qpopper4.0.16/doc/Release.Notes, 42848 bytes, 84 tape blocks x qpopper4.0.16/doc/rfc1939.txt, 47018 bytes, 92 tape blocks x qpopper4.0.16/doc/rfc2449.txt, 35516 bytes, 70 tape blocks x qpopper4.0.16/doc/guide, 0 bytes, 0 tape blocks x qpopper4.0.16/doc/guide/Qpopper.book, 57344 bytes, 112 tape blocks x qpopper4.0.16/doc/guide/%Qpopper.book, 94 bytes, 1 tape blocks x qpopper4.0.16/doc/guide/Qpopper.fm, 294224 bytes, 575 tape blocks x qpopper4.0.16/doc/guide/Qpopper.IX.fm, 98304 bytes, 192 tape blocks x qpopper4.0.16/doc/guide/%Qpopper.IX.fm, 94 bytes, 1 tape blocks x qpopper4.0.16/doc/guide/Qpopper.TOC.fm, 74752 bytes, 146 tape blocks x qpopper4.0.16/doc/guide/%Qpopper.TOC.fm, 94 bytes, 1 tape blocks x qpopper4.0.16/doc/guide/Qpopper_cover.fm, 177258 bytes, 347 tape blocks x qpopper4.0.16/man, 0 bytes, 0 tape blocks x qpopper4.0.16/man/popauth.8, 2211 bytes, 5 tape blocks x qpopper4.0.16/man/poppassd.8, 2547 bytes, 5 tape blocks x qpopper4.0.16/man/popper.8, 21801 bytes, 43 tape blocks x qpopper4.0.16/mmangle, 0 bytes, 0 tape blocks x qpopper4.0.16/mmangle/charmangle.c, 15171 bytes, 30 tape blocks x qpopper4.0.16/mmangle/charmangle.h, 769 bytes, 2 tape blocks x qpopper4.0.16/mmangle/enriched.c, 9741 bytes, 20 tape blocks x qpopper4.0.16/mmangle/enriched.h, 1396 bytes, 3 tape blocks x qpopper4.0.16/mmangle/etags.c, 6517 bytes, 13 tape blocks x qpopper4.0.16/mmangle/etags.gperf, 2213 bytes, 5 tape blocks x qpopper4.0.16/mmangle/lineend.c, 658 bytes, 2 tape blocks x qpopper4.0.16/mmangle/lineend.h, 1223 bytes, 3 tape blocks x qpopper4.0.16/mmangle/Makefile.in, 2611 bytes, 6 tape blocks x qpopper4.0.16/mmangle/mangle.c, 32859 bytes, 65 tape blocks x qpopper4.0.16/mmangle/mangle.h, 1758 bytes, 4 tape blocks x qpopper4.0.16/mmangle/mime.c, 39711 bytes, 78 tape blocks x qpopper4.0.16/mmangle/mime.h, 14420 bytes, 29 tape blocks x qpopper4.0.16/mmangle/mkfile, 1009 bytes, 2 tape blocks x qpopper4.0.16/mmangle/README, 5640 bytes, 12 tape blocks x qpopper4.0.16/mmangle/striphtml.c, 30765 bytes, 61 tape blocks x qpopper4.0.16/mmangle/striphtml.h, 4646 bytes, 10 tape blocks x qpopper4.0.16/mmangle/testhtml.c, 1757 bytes, 4 tape blocks x qpopper4.0.16/mmangle/testj.c, 2206 bytes, 5 tape blocks x qpopper4.0.16/mmangle/testjig.c, 2417 bytes, 5 tape blocks x qpopper4.0.16/mmangle/test, 0 bytes, 0 tape blocks x qpopper4.0.16/mmangle/test/1847, 1060 bytes, 3 tape blocks x qpopper4.0.16/mmangle/test/1847++, 4749 bytes, 10 tape blocks x qpopper4.0.16/mmangle/test/1847++.out, 249 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/1847.out, 214 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/2047, 578 bytes, 2 tape blocks x qpopper4.0.16/mmangle/test/2047-real, 4461 bytes, 9 tape blocks x qpopper4.0.16/mmangle/test/2047-real.out, 210 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/2047.out, 221 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/822, 1483 bytes, 3 tape blocks x qpopper4.0.16/mmangle/test/822.out, 501 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/822long, 2175 bytes, 5 tape blocks x qpopper4.0.16/mmangle/test/apple-single, 4009 bytes, 8 tape blocks x qpopper4.0.16/mmangle/test/apple-single.out, 201 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/bad-mime, 2428 bytes, 5 tape blocks x qpopper4.0.16/mmangle/test/bad-mime.out, 283 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/binary, 3254 bytes, 7 tape blocks x qpopper4.0.16/mmangle/test/binary.out, 2828 bytes, 6 tape blocks x qpopper4.0.16/mmangle/test/binhex, 3900 bytes, 8 tape blocks x qpopper4.0.16/mmangle/test/binhex.out, 221 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/charset, 2800 bytes, 6 tape blocks x qpopper4.0.16/mmangle/test/charset.out, 2316 bytes, 5 tape blocks x qpopper4.0.16/mmangle/test/e.out.html, 1135 bytes, 3 tape blocks x qpopper4.0.16/mmangle/test/enriched, 1499 bytes, 3 tape blocks x qpopper4.0.16/mmangle/test/enriched-excerpt, 3777 bytes, 8 tape blocks x qpopper4.0.16/mmangle/test/enriched-excerpt.out, 2813 bytes, 6 tape blocks x qpopper4.0.16/mmangle/test/enriched.out, 684 bytes, 2 tape blocks x qpopper4.0.16/mmangle/test/etags, 7480 bytes, 15 tape blocks x qpopper4.0.16/mmangle/test/eudora1, 13549 bytes, 27 tape blocks x qpopper4.0.16/mmangle/test/eudora1.out, 366 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/fwd-html, 165490 bytes, 324 tape blocks x qpopper4.0.16/mmangle/test/fwd-html.out, 535 bytes, 2 tape blocks x qpopper4.0.16/mmangle/test/html, 536 bytes, 2 tape blocks x qpopper4.0.16/mmangle/test/html.out, 260 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/html2, 1210 bytes, 3 tape blocks x qpopper4.0.16/mmangle/test/html2.out, 682 bytes, 2 tape blocks x qpopper4.0.16/mmangle/test/html3, 2248 bytes, 5 tape blocks x qpopper4.0.16/mmangle/test/html3.out, 890 bytes, 2 tape blocks x qpopper4.0.16/mmangle/test/html4, 2869 bytes, 6 tape blocks x qpopper4.0.16/mmangle/test/html4.out, 1924 bytes, 4 tape blocks x qpopper4.0.16/mmangle/test/html5, 1479 bytes, 3 tape blocks x qpopper4.0.16/mmangle/test/html5.out, 370 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/html6, 7437 bytes, 15 tape blocks x qpopper4.0.16/mmangle/test/html6.out, 3424 bytes, 7 tape blocks x qpopper4.0.16/mmangle/test/html7, 4625 bytes, 10 tape blocks x qpopper4.0.16/mmangle/test/html7.out, 1486 bytes, 3 tape blocks x qpopper4.0.16/mmangle/test/Makefile, 477 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/mult-alt, 2437 bytes, 5 tape blocks x qpopper4.0.16/mmangle/test/mult-alt-html, 2851 bytes, 6 tape blocks x qpopper4.0.16/mmangle/test/mult-alt.out, 615 bytes, 2 tape blocks x qpopper4.0.16/mmangle/test/mult-alt2, 1866 bytes, 4 tape blocks x qpopper4.0.16/mmangle/test/mult-alt2.out, 644 bytes, 2 tape blocks x qpopper4.0.16/mmangle/test/mult-deep, 1005 bytes, 2 tape blocks x qpopper4.0.16/mmangle/test/mult-deep.out, 362 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/mult-report, 20295 bytes, 40 tape blocks x qpopper4.0.16/mmangle/test/mult-report.out, 972 bytes, 2 tape blocks x qpopper4.0.16/mmangle/test/ns-html, 86642 bytes, 170 tape blocks x qpopper4.0.16/mmangle/test/ns-html.out, 389 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/ns-html2, 800 bytes, 2 tape blocks x qpopper4.0.16/mmangle/test/ns-html2.out, 168 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/ns-html3, 86188 bytes, 169 tape blocks x qpopper4.0.16/mmangle/test/ns-html3.out, 378 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/plain, 201 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/plain.out, 147 bytes, 1 tape blocks x qpopper4.0.16/mmangle/test/qp, 2781 bytes, 6 tape blocks x qpopper4.0.16/mmangle/test/qp-enriched, 2862 bytes, 6 tape blocks x qpopper4.0.16/mmangle/test/qp-enriched.out, 2330 bytes, 5 tape blocks x qpopper4.0.16/mmangle/test/qp.out, 2274 bytes, 5 tape blocks x qpopper4.0.16/mmangle/test/t, 44564 bytes, 88 tape blocks x qpopper4.0.16/mmangle/test/text-lines, 557 bytes, 2 tape blocks x qpopper4.0.16/mmangle/test/text-lines.out, 233 bytes, 1 tape blocks x qpopper4.0.16/password, 0 bytes, 0 tape blocks x qpopper4.0.16/password/auth_user.c, 14605 bytes, 29 tape blocks x qpopper4.0.16/password/Makefile.in, 2641 bytes, 6 tape blocks x qpopper4.0.16/password/poppassd.c, 45986 bytes, 90 tape blocks x qpopper4.0.16/password/README, 3073 bytes, 7 tape blocks x qpopper4.0.16/popper, 0 bytes, 0 tape blocks x qpopper4.0.16/popper/banner.h, 548 bytes, 2 tape blocks x qpopper4.0.16/popper/base64.c, 4056 bytes, 8 tape blocks x qpopper4.0.16/popper/drac.c, 1449 bytes, 3 tape blocks x qpopper4.0.16/popper/genpath.c, 10256 bytes, 21 tape blocks x qpopper4.0.16/popper/genpath.h, 1717 bytes, 4 tape blocks x qpopper4.0.16/popper/get_sub_opt.c, 2201 bytes, 5 tape blocks x qpopper4.0.16/popper/get_sub_opt.h, 30 bytes, 1 tape blocks x qpopper4.0.16/popper/hmac-md5.h, 1843 bytes, 4 tape blocks x qpopper4.0.16/popper/hmac.c, 3676 bytes, 8 tape blocks x qpopper4.0.16/popper/main.c, 31029 bytes, 61 tape blocks x qpopper4.0.16/popper/Makefile.in, 8207 bytes, 17 tape blocks x qpopper4.0.16/popper/md5.c, 10485 bytes, 21 tape blocks x qpopper4.0.16/popper/md5.h, 2348 bytes, 5 tape blocks x qpopper4.0.16/popper/mktemp.c, 4282 bytes, 9 tape blocks x qpopper4.0.16/popper/msg_ptr.c, 1214 bytes, 3 tape blocks x qpopper4.0.16/popper/pop_apop.c, 12398 bytes, 25 tape blocks x qpopper4.0.16/popper/pop_auth.c, 24373 bytes, 48 tape blocks x qpopper4.0.16/popper/pop_bull.c, 25846 bytes, 51 tape blocks x qpopper4.0.16/popper/pop_cache.c, 14078 bytes, 28 tape blocks x qpopper4.0.16/popper/pop_config.c, 58310 bytes, 114 tape blocks x qpopper4.0.16/popper/pop_dele.c, 3511 bytes, 7 tape blocks x qpopper4.0.16/popper/pop_dropcopy.c, 71064 bytes, 139 tape blocks x qpopper4.0.16/popper/pop_extend.c, 8317 bytes, 17 tape blocks x qpopper4.0.16/popper/pop_get_command.c, 5138 bytes, 11 tape blocks x qpopper4.0.16/popper/pop_get_subcommand.c, 2170 bytes, 5 tape blocks x qpopper4.0.16/popper/pop_init.c, 40813 bytes, 80 tape blocks x qpopper4.0.16/popper/pop_last.c, 881 bytes, 2 tape blocks x qpopper4.0.16/popper/pop_list.c, 6820 bytes, 14 tape blocks x qpopper4.0.16/popper/pop_log.c, 7295 bytes, 15 tape blocks x qpopper4.0.16/popper/pop_lower.c, 683 bytes, 2 tape blocks x qpopper4.0.16/popper/pop_msg.c, 3843 bytes, 8 tape blocks x qpopper4.0.16/popper/pop_parse.c, 4059 bytes, 8 tape blocks x qpopper4.0.16/popper/pop_pass.c, 41336 bytes, 81 tape blocks x qpopper4.0.16/popper/pop_pope.c, 624 bytes, 2 tape blocks x qpopper4.0.16/popper/pop_quit.c, 708 bytes, 2 tape blocks x qpopper4.0.16/popper/pop_rpop.c, 4842 bytes, 10 tape blocks x qpopper4.0.16/popper/pop_rset.c, 1209 bytes, 3 tape blocks x qpopper4.0.16/popper/pop_send.c, 23196 bytes, 46 tape blocks x qpopper4.0.16/popper/pop_stat.c, 1023 bytes, 2 tape blocks x qpopper4.0.16/popper/pop_tls.c, 4805 bytes, 10 tape blocks x qpopper4.0.16/popper/pop_tls.h, 2714 bytes, 6 tape blocks x qpopper4.0.16/popper/pop_tls_openssl.c, 26972 bytes, 53 tape blocks x qpopper4.0.16/popper/pop_tls_sslplus.c, 10320 bytes, 21 tape blocks x qpopper4.0.16/popper/pop_uidl.c, 7908 bytes, 16 tape blocks x qpopper4.0.16/popper/pop_updt.c, 36563 bytes, 72 tape blocks x qpopper4.0.16/popper/pop_user.c, 15032 bytes, 30 tape blocks x qpopper4.0.16/popper/pop_util.c, 3069 bytes, 6 tape blocks x qpopper4.0.16/popper/pop_xmit.c, 7775 bytes, 16 tape blocks x qpopper4.0.16/popper/pop_xtnd.c, 1173 bytes, 3 tape blocks x qpopper4.0.16/popper/popauth.c, 45205 bytes, 89 tape blocks x qpopper4.0.16/popper/popper.c, 25630 bytes, 51 tape blocks x qpopper4.0.16/popper/popper.h, 38364 bytes, 75 tape blocks x qpopper4.0.16/popper/scram.c, 6821 bytes, 14 tape blocks x qpopper4.0.16/popper/scram.h, 4647 bytes, 10 tape blocks x qpopper4.0.16/popper/sslplus_utils.c, 30034 bytes, 59 tape blocks x qpopper4.0.16/popper/sslplus_utils.h, 2481 bytes, 5 tape blocks x qpopper4.0.16/popper/version.h, 828 bytes, 2 tape blocks x qpopper4.0.16/popper/xtnd_xlst.c, 2757 bytes, 6 tape blocks x qpopper4.0.16/samples, 0 bytes, 0 tape blocks x qpopper4.0.16/samples/qpopper.config, 21827 bytes, 43 tape blocks x qpopper4.0.16/samples/qpopper.pam, 136 bytes, 1 tape blocks x qpopper4.0.16/samples/qpopper.xinetd, 1318 bytes, 3 tape blocks x qpopper4.0.16/test, 0 bytes, 0 tape blocks x qpopper4.0.16/test/new, 3963 bytes, 8 tape blocks x qpopper4.0.16/test/run.pl, 0 bytes, 0 tape blocks x qpopper4.0.16/test/tdiff, 0 bytes, 0 tape blocks x qpopper4.0.16/test/tgen, 0 bytes, 0 tape blocks x qpopper4.0.16/test/tscript, 0 bytes, 0 tape blocks x qpopper4.0.16/test/out, 0 bytes, 0 tape blocks x qpopper4.0.16/test/out/1.i, 3364 bytes, 7 tape blocks x qpopper4.0.16/test/out/1.r.h, 1639 bytes, 4 tape blocks x qpopper4.0.16/test/out/1.r.p, 1250 bytes, 3 tape blocks x qpopper4.0.16/test/out/10.i, 4979 bytes, 10 tape blocks x qpopper4.0.16/test/out/10.r.h, 430 bytes, 1 tape blocks x qpopper4.0.16/test/out/10.r.p, 359 bytes, 1 tape blocks x qpopper4.0.16/test/out/11.i, 4677 bytes, 10 tape blocks x qpopper4.0.16/test/out/11.r.h, 363 bytes, 1 tape blocks x qpopper4.0.16/test/out/11.r.p, 316 bytes, 1 tape blocks x qpopper4.0.16/test/out/12.i, 827 bytes, 2 tape blocks x qpopper4.0.16/test/out/12.r.h, 414 bytes, 1 tape blocks x qpopper4.0.16/test/out/12.r.p, 391 bytes, 1 tape blocks x qpopper4.0.16/test/out/13.i, 1776 bytes, 4 tape blocks x qpopper4.0.16/test/out/13.r.h, 852 bytes, 2 tape blocks x qpopper4.0.16/test/out/13.r.p, 685 bytes, 2 tape blocks x qpopper4.0.16/test/out/14.i, 2468 bytes, 5 tape blocks x qpopper4.0.16/test/out/14.r.h, 852 bytes, 2 tape blocks x qpopper4.0.16/test/out/14.r.p, 685 bytes, 2 tape blocks x qpopper4.0.16/test/out/15.i, 4214 bytes, 9 tape blocks x qpopper4.0.16/test/out/15.r.h, 355 bytes, 1 tape blocks x qpopper4.0.16/test/out/15.r.p, 308 bytes, 1 tape blocks x qpopper4.0.16/test/out/16.i, 2776 bytes, 6 tape blocks x qpopper4.0.16/test/out/16.r.h, 519 bytes, 2 tape blocks x qpopper4.0.16/test/out/16.r.p, 448 bytes, 1 tape blocks x qpopper4.0.16/test/out/17.i, 3453 bytes, 7 tape blocks x qpopper4.0.16/test/out/17.r.h, 3004 bytes, 6 tape blocks x qpopper4.0.16/test/out/17.r.p, 2933 bytes, 6 tape blocks x qpopper4.0.16/test/out/18.i, 4106 bytes, 9 tape blocks x qpopper4.0.16/test/out/18.r.h, 375 bytes, 1 tape blocks x qpopper4.0.16/test/out/18.r.p, 328 bytes, 1 tape blocks x qpopper4.0.16/test/out/19.i, 3062 bytes, 6 tape blocks x qpopper4.0.16/test/out/19.r.h, 2637 bytes, 6 tape blocks x qpopper4.0.16/test/out/19.r.p, 2500 bytes, 5 tape blocks x qpopper4.0.16/test/out/2.i, 6087 bytes, 12 tape blocks x qpopper4.0.16/test/out/2.r.h, 899 bytes, 2 tape blocks x qpopper4.0.16/test/out/2.r.p, 460 bytes, 1 tape blocks x qpopper4.0.16/test/out/20.i, 1778 bytes, 4 tape blocks x qpopper4.0.16/test/out/20.r.h, 1524 bytes, 3 tape blocks x qpopper4.0.16/test/out/20.r.p, 1036 bytes, 3 tape blocks x qpopper4.0.16/test/out/21.i, 14041 bytes, 28 tape blocks x qpopper4.0.16/test/out/21.r.h, 700 bytes, 2 tape blocks x qpopper4.0.16/test/out/21.r.p, 483 bytes, 1 tape blocks x qpopper4.0.16/test/out/22.i, 167984 bytes, 329 tape blocks x qpopper4.0.16/test/out/22.r.h, 1526 bytes, 3 tape blocks x qpopper4.0.16/test/out/22.r.p, 784 bytes, 2 tape blocks x qpopper4.0.16/test/out/23.i, 801 bytes, 2 tape blocks x qpopper4.0.16/test/out/23.r.h, 541 bytes, 2 tape blocks x qpopper4.0.16/test/out/23.r.p, 427 bytes, 1 tape blocks x qpopper4.0.16/test/out/24.i, 1485 bytes, 3 tape blocks x qpopper4.0.16/test/out/24.r.h, 1315 bytes, 3 tape blocks x qpopper4.0.16/test/out/24.r.p, 803 bytes, 2 tape blocks x qpopper4.0.16/test/out/25.i, 2454 bytes, 5 tape blocks x qpopper4.0.16/test/out/25.r.h, 1505 bytes, 3 tape blocks x qpopper4.0.16/test/out/25.r.p, 1031 bytes, 3 tape blocks x qpopper4.0.16/test/out/26.i, 3087 bytes, 7 tape blocks x qpopper4.0.16/test/out/26.r.h, 2218 bytes, 5 tape blocks x qpopper4.0.16/test/out/26.r.p, 2095 bytes, 5 tape blocks x qpopper4.0.16/test/out/27.i, 1681 bytes, 4 tape blocks x qpopper4.0.16/test/out/27.r.h, 842 bytes, 2 tape blocks x qpopper4.0.16/test/out/27.r.p, 491 bytes, 1 tape blocks x qpopper4.0.16/test/out/28.i, 7767 bytes, 16 tape blocks x qpopper4.0.16/test/out/28.r.h, 5584 bytes, 11 tape blocks x qpopper4.0.16/test/out/28.r.p, 3768 bytes, 8 tape blocks x qpopper4.0.16/test/out/29.i, 4886 bytes, 10 tape blocks x qpopper4.0.16/test/out/29.r.h, 3654 bytes, 8 tape blocks x qpopper4.0.16/test/out/29.r.p, 1623 bytes, 4 tape blocks x qpopper4.0.16/test/out/3.i, 5909 bytes, 12 tape blocks x qpopper4.0.16/test/out/3.r.h, 930 bytes, 2 tape blocks x qpopper4.0.16/test/out/3.r.p, 421 bytes, 1 tape blocks x qpopper4.0.16/test/out/30.i, 2784 bytes, 6 tape blocks x qpopper4.0.16/test/out/30.r.h, 932 bytes, 2 tape blocks x qpopper4.0.16/test/out/30.r.p, 785 bytes, 2 tape blocks x qpopper4.0.16/test/out/31.i, 3113 bytes, 7 tape blocks x qpopper4.0.16/test/out/31.r.h, 1452 bytes, 3 tape blocks x qpopper4.0.16/test/out/31.r.p, 785 bytes, 2 tape blocks x qpopper4.0.16/test/out/32.i, 2176 bytes, 5 tape blocks x qpopper4.0.16/test/out/32.r.h, 962 bytes, 2 tape blocks x qpopper4.0.16/test/out/32.r.p, 815 bytes, 2 tape blocks x qpopper4.0.16/test/out/33.i, 1301 bytes, 3 tape blocks x qpopper4.0.16/test/out/33.r.h, 719 bytes, 2 tape blocks x qpopper4.0.16/test/out/33.r.p, 528 bytes, 2 tape blocks x qpopper4.0.16/test/out/34.i, 20973 bytes, 41 tape blocks x qpopper4.0.16/test/out/34.r.h, 1397 bytes, 3 tape blocks x qpopper4.0.16/test/out/34.r.p, 1172 bytes, 3 tape blocks x qpopper4.0.16/test/out/35.i, 88009 bytes, 172 tape blocks x qpopper4.0.16/test/out/35.r.h, 1101 bytes, 3 tape blocks x qpopper4.0.16/test/out/35.r.p, 532 bytes, 2 tape blocks x qpopper4.0.16/test/out/36.i, 948 bytes, 2 tape blocks x qpopper4.0.16/test/out/36.r.h, 328 bytes, 1 tape blocks x qpopper4.0.16/test/out/36.r.p, 294 bytes, 1 tape blocks x qpopper4.0.16/test/out/37.i, 87529 bytes, 171 tape blocks x qpopper4.0.16/test/out/37.r.h, 1114 bytes, 3 tape blocks x qpopper4.0.16/test/out/37.r.p, 521 bytes, 2 tape blocks x qpopper4.0.16/test/out/38.i, 398 bytes, 1 tape blocks x qpopper4.0.16/test/out/38.r.h, 278 bytes, 1 tape blocks x qpopper4.0.16/test/out/38.r.p, 255 bytes, 1 tape blocks x qpopper4.0.16/test/out/39.i, 3042 bytes, 6 tape blocks x qpopper4.0.16/test/out/39.r.h, 2568 bytes, 6 tape blocks x qpopper4.0.16/test/out/39.r.p, 2455 bytes, 5 tape blocks x qpopper4.0.16/test/out/4.i, 2978 bytes, 6 tape blocks x qpopper4.0.16/test/out/4.r.h, 871 bytes, 2 tape blocks x qpopper4.0.16/test/out/4.r.p, 383 bytes, 1 tape blocks x qpopper4.0.16/test/out/40.i, 3150 bytes, 7 tape blocks x qpopper4.0.16/test/out/40.r.h, 2629 bytes, 6 tape blocks x qpopper4.0.16/test/out/40.r.p, 2513 bytes, 5 tape blocks x qpopper4.0.16/test/out/41.i, 749 bytes, 2 tape blocks x qpopper4.0.16/test/out/41.r.h, 406 bytes, 1 tape blocks x qpopper4.0.16/test/out/41.r.p, 335 bytes, 1 tape blocks x qpopper4.0.16/test/out/42.i, 1214 bytes, 3 tape blocks x qpopper4.0.16/test/out/42.r.h, 1147 bytes, 3 tape blocks x qpopper4.0.16/test/out/42.r.p, 786 bytes, 2 tape blocks x qpopper4.0.16/test/out/43.i, 4217 bytes, 9 tape blocks x qpopper4.0.16/test/out/43.r.h, 1807 bytes, 4 tape blocks x qpopper4.0.16/test/out/43.r.p, 1441 bytes, 3 tape blocks x qpopper4.0.16/test/out/44.i, 3781 bytes, 8 tape blocks x qpopper4.0.16/test/out/44.r.h, 2946 bytes, 6 tape blocks x qpopper4.0.16/test/out/44.r.p, 2201 bytes, 5 tape blocks x qpopper4.0.16/test/out/5.i, 2963 bytes, 6 tape blocks x qpopper4.0.16/test/out/5.r.h, 418 bytes, 1 tape blocks x qpopper4.0.16/test/out/5.r.p, 383 bytes, 1 tape blocks x qpopper4.0.16/test/out/6.i, 2896 bytes, 6 tape blocks x qpopper4.0.16/test/out/6.r.h, 871 bytes, 2 tape blocks x qpopper4.0.16/test/out/6.r.p, 383 bytes, 1 tape blocks x qpopper4.0.16/test/out/7.i, 6121 bytes, 12 tape blocks x qpopper4.0.16/test/out/7.r.h, 1157 bytes, 3 tape blocks x qpopper4.0.16/test/out/7.r.p, 433 bytes, 1 tape blocks x qpopper4.0.16/test/out/8.i, 77278 bytes, 151 tape blocks x qpopper4.0.16/test/out/8.r.h, 3933 bytes, 8 tape blocks x qpopper4.0.16/test/out/8.r.p, 2242 bytes, 5 tape blocks x qpopper4.0.16/test/out/9.i, 1226 bytes, 3 tape blocks x qpopper4.0.16/test/out/9.r.h, 368 bytes, 1 tape blocks x qpopper4.0.16/test/out/9.r.p, 321 bytes, 1 tape blocks x qpopper4.0.16/test/out/qpop.42, 555107 bytes, 1085 tape blocks x qpopper4.0.16/test/out/qpop.8, 106206 bytes, 208 tape blocks x qpopper4.0.16/test/out/run.pl, 1705 bytes, 4 tape blocks x qpopper4.0.16/test/out/test, 0 bytes, 0 tape blocks x qpopper4.0.16/test/out/test/1847, 1060 bytes, 3 tape blocks x qpopper4.0.16/test/out/test/1847++, 4749 bytes, 10 tape blocks x qpopper4.0.16/test/out/test/1847++.out, 249 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/1847.out, 214 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/2047, 578 bytes, 2 tape blocks x qpopper4.0.16/test/out/test/2047-real, 4461 bytes, 9 tape blocks x qpopper4.0.16/test/out/test/2047-real.out, 210 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/2047.out, 221 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/822, 1483 bytes, 3 tape blocks x qpopper4.0.16/test/out/test/822.out, 501 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/822long, 2175 bytes, 5 tape blocks x qpopper4.0.16/test/out/test/apple-single, 4009 bytes, 8 tape blocks x qpopper4.0.16/test/out/test/apple-single.out, 201 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/b64, 1025 bytes, 3 tape blocks x qpopper4.0.16/test/out/test/b64.out, 663 bytes, 2 tape blocks x qpopper4.0.16/test/out/test/bad-mime, 2428 bytes, 5 tape blocks x qpopper4.0.16/test/out/test/bad-mime.out, 283 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/binary, 3254 bytes, 7 tape blocks x qpopper4.0.16/test/out/test/binary.out, 2828 bytes, 6 tape blocks x qpopper4.0.16/test/out/test/binhex, 3900 bytes, 8 tape blocks x qpopper4.0.16/test/out/test/binhex.out, 221 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/charset, 2800 bytes, 6 tape blocks x qpopper4.0.16/test/out/test/charset.out, 2316 bytes, 5 tape blocks x qpopper4.0.16/test/out/test/e.out.html, 1135 bytes, 3 tape blocks x qpopper4.0.16/test/out/test/enriched, 1499 bytes, 3 tape blocks x qpopper4.0.16/test/out/test/enriched-excerpt, 3777 bytes, 8 tape blocks x qpopper4.0.16/test/out/test/enriched-excerpt.out, 2813 bytes, 6 tape blocks x qpopper4.0.16/test/out/test/enriched.o, 12944 bytes, 26 tape blocks x qpopper4.0.16/test/out/test/enriched.out, 684 bytes, 2 tape blocks x qpopper4.0.16/test/out/test/etags, 7480 bytes, 15 tape blocks x qpopper4.0.16/test/out/test/etags.o, 13096 bytes, 26 tape blocks x qpopper4.0.16/test/out/test/eudora1, 13549 bytes, 27 tape blocks x qpopper4.0.16/test/out/test/eudora1.out, 366 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/fwd-html, 165490 bytes, 324 tape blocks x qpopper4.0.16/test/out/test/fwd-html.out, 535 bytes, 2 tape blocks x qpopper4.0.16/test/out/test/html, 536 bytes, 2 tape blocks x qpopper4.0.16/test/out/test/html.out, 260 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/html2, 1210 bytes, 3 tape blocks x qpopper4.0.16/test/out/test/html2.out, 682 bytes, 2 tape blocks x qpopper4.0.16/test/out/test/html3, 2248 bytes, 5 tape blocks x qpopper4.0.16/test/out/test/html3.out, 890 bytes, 2 tape blocks x qpopper4.0.16/test/out/test/html4, 2869 bytes, 6 tape blocks x qpopper4.0.16/test/out/test/html4.out, 1924 bytes, 4 tape blocks x qpopper4.0.16/test/out/test/html5, 1479 bytes, 3 tape blocks x qpopper4.0.16/test/out/test/html5.out, 370 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/html6, 7437 bytes, 15 tape blocks x qpopper4.0.16/test/out/test/html6.out, 3424 bytes, 7 tape blocks x qpopper4.0.16/test/out/test/html7, 4625 bytes, 10 tape blocks x qpopper4.0.16/test/out/test/html7.out, 1486 bytes, 3 tape blocks x qpopper4.0.16/test/out/test/lineend.o, 2092 bytes, 5 tape blocks x qpopper4.0.16/test/out/test/Makefile, 477 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/mangle.o, 20448 bytes, 40 tape blocks x qpopper4.0.16/test/out/test/mime.o, 24944 bytes, 49 tape blocks x qpopper4.0.16/test/out/test/mult-alt, 2437 bytes, 5 tape blocks x qpopper4.0.16/test/out/test/mult-alt-html, 2851 bytes, 6 tape blocks x qpopper4.0.16/test/out/test/mult-alt.out, 615 bytes, 2 tape blocks x qpopper4.0.16/test/out/test/mult-alt2, 1866 bytes, 4 tape blocks x qpopper4.0.16/test/out/test/mult-alt2.out, 644 bytes, 2 tape blocks x qpopper4.0.16/test/out/test/mult-deep, 1005 bytes, 2 tape blocks x qpopper4.0.16/test/out/test/mult-deep.out, 362 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/mult-report, 20295 bytes, 40 tape blocks x qpopper4.0.16/test/out/test/mult-report.out, 972 bytes, 2 tape blocks x qpopper4.0.16/test/out/test/ns-html, 86642 bytes, 170 tape blocks x qpopper4.0.16/test/out/test/ns-html.out, 389 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/ns-html2, 800 bytes, 2 tape blocks x qpopper4.0.16/test/out/test/ns-html2.out, 168 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/ns-html3, 86188 bytes, 169 tape blocks x qpopper4.0.16/test/out/test/ns-html3.out, 378 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/plain, 201 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/plain.out, 147 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/qp, 2781 bytes, 6 tape blocks x qpopper4.0.16/test/out/test/qp-enriched, 2862 bytes, 6 tape blocks x qpopper4.0.16/test/out/test/qp-enriched.out, 2330 bytes, 5 tape blocks x qpopper4.0.16/test/out/test/qp.out, 2274 bytes, 5 tape blocks x qpopper4.0.16/test/out/test/striphtml.o, 23300 bytes, 46 tape blocks x qpopper4.0.16/test/out/test/t, 44564 bytes, 88 tape blocks x qpopper4.0.16/test/out/test/testhtml, 112316 bytes, 220 tape blocks x qpopper4.0.16/test/out/test/testhtml.o, 7164 bytes, 14 tape blocks x qpopper4.0.16/test/out/test/testj, 118756 bytes, 232 tape blocks x qpopper4.0.16/test/out/test/testj.o, 8032 bytes, 16 tape blocks x qpopper4.0.16/test/out/test/testjig, 113640 bytes, 222 tape blocks x qpopper4.0.16/test/out/test/testjig.o, 8596 bytes, 17 tape blocks x qpopper4.0.16/test/out/test/text-lines, 557 bytes, 2 tape blocks x qpopper4.0.16/test/out/test/text-lines.out, 233 bytes, 1 tape blocks x qpopper4.0.16/test/out/test/utils.o, 6712 bytes, 14 tape blocks x qpopper4.0.16/test/out/tscript, 231 bytes, 1 tape blocks
At first, before I encountered problems installing the software, I was
going to create a Solaris package to use for the installation, so I created a
temporary installation directory, in this case
/usr/local/pkg
.
# mkdir /usr/local/pkg
I specified the temporary installation directory when I ran
configure
.
# ./configure --prefix=/usr/local/pkg checking whether make sets $(MAKE)... yes checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for library containing strerror... no checking for bison... bison -y checking for flex... flex checking lex output file root... lex.yy <text snipped> checking for setproctitle... no checking for mkstemp... no checking for setresuid... no checking for library containing gethostbyname... no checking size of unsigned long int... 0 checking for /dev/urandom ... no configure: creating ./config.status config.status: creating Makefile config.status: WARNING: 'Makefile.in' seems to ignore the --datarootdir setting config.status: creating common/Makefile config.status: creating popper/Makefile config.status: creating mmangle/Makefile config.status: creating password/Makefile config.status: creating config.h
When I ran make install
, I received an error message regarding
a missing directory. I then created that directory.
# make install mkdir: Failed to make directory "/usr/local/pkg/share/man"; No such file or dire ctory chown: /usr/local/pkg/share/man: No such file or directory make: *** [install] Error 1 # mkdir /usr/local/pkg/share # mkdir /usr/local/pkg/share/man
I then reran make install
.
# make install Installed man/popper.8 as /usr/local/pkg/share/man/man8/popper.8 Installed man/popauth.8 as /usr/local/pkg/share/man/man8/popauth.8 cd ./popper && make install make[1]: Entering directory `/tmp/qpopper4.0.16/popper' gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_dele.c -o pop_dele.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_dropcopy.c -o pop_dropcopy.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_get_command.c -o pop_get_command.o pop_get_command.c:41: warning: initialization from incompatible pointer type gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_get_subcommand.c -o pop_get_subcommand.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_init.c -o pop_init.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_last.c -o pop_last.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_list.c -o pop_list.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_log.c -o pop_log.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_lower.c -o pop_lower.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_msg.c -o pop_msg.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_parse.c -o pop_parse.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_pass.c -o pop_pass.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_quit.c -o pop_quit.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_rset.c -o pop_rset.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_send.c -o pop_send.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_stat.c -o pop_stat.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_updt.c -o pop_updt.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_user.c -o pop_user.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_xtnd.c -o pop_xtnd.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_xmit.c -o pop_xmit.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX popper.c -o popper.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_bull.c -o pop_bull.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX xtnd_xlst.c -o xtnd_xlst.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_uidl.c -o pop_uidl.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX mktemp.c -o mktemp.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_rpop.c -o pop_rpop.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_apop.c -o pop_apop.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX md5.c -o md5.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_auth.c -o pop_auth.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_pope.c -o pop_pope.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_extend.c -o pop_extend.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX scram.c -o scram.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX hmac.c -o hmac.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX base64.c -o base64.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_util.c -o pop_util.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX get_sub_opt.c -o get_sub_opt.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX msg_ptr.c -o msg_ptr.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX drac.c -o drac.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_config.c -o pop_config.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_tls.c -o pop_tls.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_tls_openssl.c -o pop_tls_openssl.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_tls_sslplus.c -o pop_tls_sslplus.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX sslplus_utils.c -o sslplus_utils.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX main.c -o main.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_cache.c -o pop_cache.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX genpath.c -o genpath.o cd ../mmangle && make all make[2]: Entering directory `/tmp/qpopper4.0.16/mmangle' gcc -c -I.. -I. -I.. -I../popper \ -I../common -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PA SS -DNO_GETLINE -DCONTENT_LENGTH=1 -DUNIX mime.c -o mime.o gcc -c -I.. -I. -I.. -I../popper \ -I../common -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PA SS -DNO_GETLINE -DCONTENT_LENGTH=1 -DUNIX mangle.c -o mangle.o gcc -c -I.. -I. -I.. -I../popper \ -I../common -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PA SS -DNO_GETLINE -DCONTENT_LENGTH=1 -DUNIX enriched.c -o enriched.o gcc -c -I.. -I. -I.. -I../popper \ -I../common -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PA SS -DNO_GETLINE -DCONTENT_LENGTH=1 -DUNIX striphtml.c -o striphtml.o gcc -c -I.. -I. -I.. -I../popper \ -I../common -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PA SS -DNO_GETLINE -DCONTENT_LENGTH=1 -DUNIX lineend.c -o lineend.o gcc -c -I.. -I. -I.. -I../popper \ -I../common -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PA SS -DNO_GETLINE -DCONTENT_LENGTH=1 -DUNIX etags.c -o etags.o gcc -c -I.. -I. -I.. -I../popper \ -I../common -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PA SS -DNO_GETLINE -DCONTENT_LENGTH=1 -DUNIX charmangle.c -o charmangle.o ar -r libmangle.a mime.o mangle.o enriched.o striphtml.o lineend.o etags.o char mangle.o ar: creating libmangle.a make[2]: Leaving directory `/tmp/qpopper4.0.16/mmangle' cd ../common && make all make[2]: Entering directory `/tmp/qpopper4.0.16/common' gcc -c -I.. -I. -I.. -I../popper \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_GETL INE -DCONTENT_LENGTH=1 -DUNIX flock.c -o flock.o gcc -c -I.. -I. -I.. -I../popper \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_GETL INE -DCONTENT_LENGTH=1 -DUNIX maillock.c -o maillock.o gcc -c -I.. -I. -I.. -I../popper \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_GETL INE -DCONTENT_LENGTH=1 -DUNIX logit.c -o logit.o gcc -c -I.. -I. -I.. -I../popper \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_GETL INE -DCONTENT_LENGTH=1 -DUNIX snprintf.c -o snprintf.o gcc -c -I.. -I. -I.. -I../popper \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_GETL INE -DCONTENT_LENGTH=1 -DUNIX string_util.c -o string_util.o gcc -c -I.. -I. -I.. -I../popper \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_GETL INE -DCONTENT_LENGTH=1 -DUNIX check_group.c -o check_group.o gcc -c -I.. -I. -I.. -I../popper \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_GETL INE -DCONTENT_LENGTH=1 -DUNIX utils.c -o utils.o ar -r libcommon.a flock.o maillock.o logit.o snprintf.o string_util.o check_gro up.o utils.o ar: creating libcommon.a make[2]: Leaving directory `/tmp/qpopper4.0.16/common' gcc pop_dele.o pop_dropcopy.o pop_get_command.o pop_get_subcommand.o pop_init. o pop_last.o pop_list.o pop_log.o pop_lower.o pop_msg.o pop_parse.o pop_pass.o p op_quit.o pop_rset.o pop_send.o pop_stat.o pop_updt.o pop_user.o pop_xtnd.o pop_ xmit.o popper.o pop_bull.o xtnd_xlst.o pop_uidl.o mktemp.o pop_rpop.o pop_apop.o md5.o pop_auth.o pop_pope.o pop_extend.o scram.o hmac.o base64.o pop_util.o get _sub_opt.o msg_ptr.o drac.o pop_config.o pop_tls.o pop_tls_openssl.o pop_tls_ssl plus.o sslplus_utils.o main.o pop_cache.o genpath.o -o popper ../mmangle/libman gle.a \ -I../common ../common/libcommon.a \ Undefined first referenced symbol in file h_errno pop_init.o gethostbyname pop_init.o gethostbyaddr pop_init.o ruserok pop_rpop.o inet_ntoa pop_init.o getpeername pop_init.o ld: fatal: Symbol referencing errors. No output written to popper collect2: ld returned 1 exit status make[1]: *** [popper] Error 1 make[1]: Leaving directory `/tmp/qpopper4.0.16/popper' make: *** [install] Error 2
Again, an error occurred. I tried running ./configure
without specifying the installation directory. I then ran make
,
but got the same results as before.
ld: fatal: Symbol referencing errors. No output written to popper collect2: ld returned 1 exit status make[1]: *** [popper] Error 1 make[1]: Leaving directory `/tmp/qpopper4.0.16/popper' make: *** [popper_server] Error 2
I downloaded an older version, 4.0.13, to see if I would have the same problem installing it.
# wget -q ftp://ftp.qualcomm.com/eudora/servers/unix/popper/qpopper4.0.13.tar.gz # gunzip qpopper4.0.13.tar.gz # tar -xvf qpopper4.0.13.tar # cd qpopper4.0.13
I then ran configure
for that version.
# ./configure checking whether make sets $(MAKE)... yes checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed <text snipped> checking for library containing gethostbyname... no checking for unsigned long int... yes checking size of unsigned long int... configure: error: cannot compute sizeof (u nsigned long int), 77 See `config.log' for more details.
Since I got an error message when attempting to run configure for that version, I downloaded an even older version.
# wget -q ftp://ftp.qualcomm.com/eudora/servers/unix/popper/old/qpopper4.0.7.tar .gz # gunzip qpopper4.0.7.tar.gz # tar -xvf qpopper4.0.7.tar # cd qpopper4.0.7
I then ran configure
for that version. But, I received
an error message for that version as well, though it was a different
error message.
# ./configure checking whether make sets $(MAKE)... yes checking for gcc... gcc checking for C compiler default output... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking for library containing strerror... no checking for bison... bison -y checking for flex... flex <text snipped> checking for dbm.h... no checking for t_accept in -lnsl... no checking for socket in -lsocket... no checking for res_init in -lresolv... no checking for maillock in -lmail... no checking for krb_recvauth in -lkrb... no checking for clock_gettime in -lposix4... no checking for crypt in -lcrypt... no checking for set_auth_parameters in -lsecurity... no checking for dlopen in -ldl... no checking for pam_authenticate in -lpam... no Can't use PAM: can't find libpam
In the configure.in
file, I found the following:
if test "$use_pam" != "no"; then
AC_CHECK_LIB(dl, dlopen, LIBS="$LIBS -ldl")
AC_CHECK_LIB(pam, pam_authenticate, LIBS="$LIBS -lpam",
AC_MSG_RESULT([Can't use PAM: can't find libpam]);exit 1)
fi
I found someone else complaining at qpopper won't compile without PAM that "qpopper won't compile on systems without PAM anymore."
I tried recompiling with the --without-pam
option, but
that only got me to the same checking size of unsigned long int...
configure: error: cannot compute sizeof (unsigned long int), 77
error
message I had with version 4.0.13.
# ./configure --without-pam checking whether make sets $(MAKE)... yes checking for gcc... gcc checking for C compiler default output... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed <text snipped> checking for library containing gethostbyname... no checking for unsigned long int... yes checking size of unsigned long int... configure: error: cannot compute sizeof (u nsigned long int), 77 See `config.log' for more details.
I also tried version 4.0.14.
# wget -q ftp://ftp.qualcomm.com/eudora/servers/unix/popper/qpopper4.0.14.tar.gz # gunzip qpopper4.0.14.tar.gz # tar -xvf qpopper4.0.14.tar # cd qpopper4.0.14
I ran ./configure
. Again, I received the checking size of
unsigned long int... configure: error: cannot compute sizeof (unsigned long
int), 77
error.
I tried compiling the 4.0.16 version again. I ran make realclean
first.
# cd qpopper4.0.16 # make realclean
./configure
# ./configure # ./configure checking whether make sets $(MAKE)... yes checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for library containing strerror... no checking for bison... bison -y checking for flex... flex checking lex output file root... lex.yy checking lex library... none needed checking whether yytext is a pointer... no checking for ar... ar checking for ranlib... ranlib checking for a BSD-compatible install... ./install-sh -c checking for gperf... no checking for cperf... no ./configure[3550]: WARNING:: not found checking for gcc version 2.7.2.3... no checking if gcc supports __attribute__ (format) ... yes checking if ar chokes on -r... no checking for getspnam... no checking for getprpwnam... no checking for getspnam in -lshadow... no Will NOT compile in debugging code System name: SunOS; System version: 5.7 Set OS_DEFS = -DSOLARIS2 -DGNU_PASS -DNO_GETLINE -DCONTENT_LENGTH=1 -DUNIX Logging to facility: LOG_LOCAL0 Set AR_FLAG = -r ; RANLIB_CMD = checking for sendmail program... found at /usr/lib/sendmail checking for mail spool directory... "found at /var/mail" checking for dirent.h that defines DIR... yes checking for library containing opendir... no checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /usr/xpg4/bin/grep checking for egrep... /usr/xpg4/bin/grep -E checking for ANSI C header files... no checking for sys/wait.h that is POSIX.1 compatible... yes checking whether sys_siglist is declared... no checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... no checking for unistd.h... yes checking prot.h usability... no checking prot.h presence... no checking for prot.h... no checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking for strings.h... (cached) yes checking sys/param.h usability... yes checking sys/param.h presence... yes checking for sys/param.h... yes checking sys/file.h usability... yes checking sys/file.h presence... yes checking for sys/file.h... yes checking sys/security.h usability... no checking sys/security.h presence... no checking for sys/security.h... no checking sys/syslog.h usability... yes checking sys/syslog.h presence... yes checking for sys/syslog.h... yes checking for sys/types.h... (cached) yes checking sys/fcntl.h usability... yes checking sys/fcntl.h presence... yes checking for sys/fcntl.h... yes checking sys/select.h usability... yes checking sys/select.h presence... yes checking for sys/select.h... yes checking for sys/stat.h... (cached) yes checking sys/unistd.h usability... yes checking sys/unistd.h presence... yes checking for sys/unistd.h... yes checking sys/netinet/in.h usability... no checking sys/netinet/in.h presence... no checking for sys/netinet/in.h... no checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking syslog.h usability... yes checking syslog.h presence... yes checking for syslog.h... yes checking net/errno.h usability... no checking net/errno.h presence... no checking for net/errno.h... no checking for unistd.h... (cached) yes checking netinet/in.h usability... yes checking netinet/in.h presence... yes checking for netinet/in.h... yes checking maillock.h usability... yes checking maillock.h presence... yes checking for maillock.h... yes checking select.h usability... no checking select.h presence... no checking for select.h... no checking shadow.h usability... yes checking shadow.h presence... yes checking for shadow.h... yes checking security/pam_appl.h usability... yes checking security/pam_appl.h presence... yes checking for security/pam_appl.h... yes checking pam/pam_appl.h usability... no checking pam/pam_appl.h presence... no checking for pam/pam_appl.h... no checking time.h usability... yes checking time.h presence... yes checking for time.h... yes checking crypt.h usability... yes checking crypt.h presence... yes checking for crypt.h... yes checking ndbm.h usability... yes checking ndbm.h presence... yes checking for ndbm.h... yes checking gdbm.h usability... no checking gdbm.h presence... no checking for gdbm.h... no checking dbm.h usability... no checking dbm.h presence... no checking for dbm.h... no checking for t_accept in -lnsl... no checking for socket in -lsocket... no checking for res_init in -lresolv... no checking for maillock in -lmail... no checking for krb_recvauth in -lkrb... no checking for clock_gettime in -lposix4... no checking for crypt in -lcrypt... no checking for set_auth_parameters in -lsecurity... no "(use_pam is _default_)" checking for an ANSI C-conforming const... yes checking for uid_t in sys/types.h... yes checking for mode_t... yes checking for off_t... yes checking for size_t... yes checking whether sys_siglist is declared... (cached) no checking whether time.h and sys/time.h may both be included... yes checking whether struct tm is in sys/time.h or time.h... time.h checking for working memcmp... no checking return type of signal handlers... void checking utime.h usability... yes checking utime.h presence... yes checking for utime.h... yes checking whether utime accepts a null argument... no checking for vprintf... no checking for wait3 that fills in rusage... no checking for gethostname... no checking for gethostbyname... no checking for gettimeofday... no checking for getusershell... no checking for mkdir... no checking for socket... no checking for strdup... no checking for strerror... no checking for strstr... no checking for strlcat... no checking for strlcpy... no checking for bcopy... no checking for index... no checking for flock... no checking for set_auth_parameters... no checking for pw_encrypt... no checking for hstrerror... no checking for snprintf... no checking for vsnprintf... no checking for srandom... no checking for srand... no checking for usleep... no checking for crypt... no checking for crypt16... no checking for bigcrypt... no checking for setproctitle... no checking for mkstemp... no checking for setresuid... no checking for library containing gethostbyname... no checking size of unsigned long int... 0 checking for /dev/urandom ... no configure: creating ./config.status config.status: creating Makefile config.status: WARNING: 'Makefile.in' seems to ignore the --datarootdir setting config.status: creating common/Makefile config.status: creating popper/Makefile config.status: creating mmangle/Makefile config.status: creating password/Makefile config.status: creating config.h
But when I run make
, I received an error message.
# make cd ./popper && make all make[1]: Entering directory `/tmp/qpopper4.0.16/popper' gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_dele.c -o pop_dele.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_dropcopy.c -o pop_dropcopy.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_get_command.c -o pop_get_command.o pop_get_command.c:41: warning: initialization from incompatible pointer type gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_get_subcommand.c -o pop_get_subcommand.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_ GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_init.c -o pop_init.o <text snipped> gcc -c -I.. -I. -I.. -I../popper \ -g -O2 -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DNO_GETL INE -DCONTENT_LENGTH=1 -DUNIX utils.c -o utils.o ar -r libcommon.a flock.o maillock.o logit.o snprintf.o string_util.o check_group.o utils.o ar: creating libcommon.a make[2]: Leaving directory `/tmp/qpopper4.0.16/common' gcc pop_dele.o pop_dropcopy.o pop_get_command.o pop_get_subcommand.o pop_init. o pop_last.o pop_list.o pop_log.o pop_lower.o pop_msg.o pop_parse.o pop_pass.o p op_quit.o pop_rset.o pop_send.o pop_stat.o pop_updt.o pop_user.o pop_xtnd.o pop_ xmit.o popper.o pop_bull.o xtnd_xlst.o pop_uidl.o mktemp.o pop_rpop.o pop_apop.o md5.o pop_auth.o pop_pope.o pop_extend.o scram.o hmac.o base64.o pop_util.o get _sub_opt.o msg_ptr.o drac.o pop_config.o pop_tls.o pop_tls_openssl.o pop_tls_ssl plus.o sslplus_utils.o main.o pop_cache.o genpath.o -o popper ../mmangle/libman gle.a \ -I../common ../common/libcommon.a \ Undefined first referenced symbol in file h_errno pop_init.o gethostbyname pop_init.o gethostbyaddr pop_init.o ruserok pop_rpop.o inet_ntoa pop_init.o getpeername pop_init.o ld: fatal: Symbol referencing errors. No output written to popper collect2: ld returned 1 exit status make[1]: *** [popper] Error 1 make[1]: Leaving directory `/tmp/qpopper4.0.16/popper' make: *** [popper_server] Error 2
I thought the problem might be related to some library file needed by
popper not being present or just being out-of-date, so I checked on the
dependencies of the current version of popper on the system with
ldd
# ldd /usr/local/sbin/popper libnsl.so.1 => /usr/lib/libnsl.so.1 libsocket.so.1 => /usr/lib/libsocket.so.1 libresolv.so.2 => /usr/lib/libresolv.so.2 libkrb.so.1 => /usr/lib/libkrb.so.1 librt.so.1 => /usr/lib/librt.so.1 libcrypt_i.so.1 => /usr/lib/libcrypt_i.so.1 libc.so.1 => /usr/lib/libc.so.1 libdl.so.1 => /usr/lib/libdl.so.1 libmp.so.2 => /usr/lib/libmp.so.2 libaio.so.1 => /usr/lib/libaio.so.1 libgen.so.1 => /usr/lib/libgen.so.1 /usr/platform/SUNW,Ultra-5_10/lib/libc_psr.so.1
I checked on where the linker might expect the libraries to be found with
truss
.
# truss -f -t stat,open /usr/local/sbin/popper 24240: open("/var/ld/ld.config", O_RDONLY) Err#2 ENOENT 24240: stat("/usr/lib/libnsl.so.1", 0xFFBEF4D4) = 0 24240: open("/usr/lib/libnsl.so.1", O_RDONLY) = 3 24240: open("/dev/zero", O_RDONLY) = 4 24240: stat("/usr/lib/libsocket.so.1", 0xFFBEF4D4) = 0 24240: open("/usr/lib/libsocket.so.1", O_RDONLY) = 3 24240: stat("/usr/lib/libresolv.so.2", 0xFFBEF4D4) = 0 24240: open("/usr/lib/libresolv.so.2", O_RDONLY) = 3 24240: stat("/usr/lib/libkrb.so.1", 0xFFBEF4D4) = 0 24240: open("/usr/lib/libkrb.so.1", O_RDONLY) = 3 24240: stat("/usr/lib/librt.so.1", 0xFFBEF4D4) = 0 24240: open("/usr/lib/librt.so.1", O_RDONLY) = 3 24240: stat("/usr/lib/libcrypt_i.so.1", 0xFFBEF4D4) = 0 24240: open("/usr/lib/libcrypt_i.so.1", O_RDONLY) = 3 24240: stat("/usr/lib/libc.so.1", 0xFFBEF4D4) = 0 24240: open("/usr/lib/libc.so.1", O_RDONLY) = 3 24240: stat("/usr/lib/libdl.so.1", 0xFFBEF4D4) = 0 24240: open("/usr/lib/libdl.so.1", O_RDONLY) = 3 24240: stat("/usr/lib/libmp.so.2", 0xFFBEF4D4) = 0 24240: open("/usr/lib/libmp.so.2", O_RDONLY) = 3 24240: stat("/usr/lib/libaio.so.1", 0xFFBEF4D4) = 0 24240: open("/usr/lib/libaio.so.1", O_RDONLY) = 3 24240: stat("/usr/lib/libgen.so.1", 0xFFBEF4D4) = 0 24240: open("/usr/lib/libgen.so.1", O_RDONLY) = 3 24240: stat("/usr/platform/SUNW,Ultra-5_10/lib/libc_psr.so.1", 0xFFBEF2AC) = 0 24240: open("/usr/platform/SUNW,Ultra-5_10/lib/libc_psr.so.1", O_RDONLY) = 3 24240: open("/etc/netconfig", O_RDONLY) = 3 24240: open64("/etc/.name_service_door", O_RDONLY) = 3 24240: open("/dev/conslog", O_WRONLY) = 4 24240: open("/usr/share/lib/zoneinfo/US/Eastern", O_RDONLY) = 5 24240: open("/etc/.syslog_door", O_RDONLY) = 5
I checked on the current value for LD_LIBRARY_PATH
, also.
# echo $LD_LIBRARY_PATH /usr/lib:/usr/local/lib:/usr/local/ssl/lib
I also checked on the package to which /usr/lib/libnsl.so.1
belonged.
# /usr/sbin/pkgchk -l -p /usr/lib/libnsl.so.1 Pathname: /usr/lib/libnsl.so.1 Type: regular file Expected mode: 0755 Expected owner: bin Expected group: bin Expected file size (bytes): 813824 Expected sum(1) of contents: 60320 Expected last modification: Sep 01 06:38:37 1998 Referenced by the following packages: SUNWcsl Current status: installed
I didn't understand why I saw the following lines output when I ran
configure
.
checking for gethostname... no
checking for gethostbyname... no
checking for gettimeofday... no
checking for getusershell... no
<text snipped>
checking for library containing gethostbyname... no
Nor did I understand why I saw the following lines when I afterwards
ran make
.
Undefined first referenced symbol in file h_errno pop_init.o gethostbyname pop_init.o gethostbyaddr pop_init.o ruserok pop_rpop.o inet_ntoa pop_init.o getpeername pop_init.o ld: fatal: Symbol referencing errors. No output written to popper collect2: ld returned 1 exit status
The gethostbyname
and gethostbyaddr
functions
seemed to be in /usr/lib/libnsl.so.1
.
# nm /usr/lib/libnsl.so.1 | grep gethostbyname [419] | 215884| 376|FUNC |LOCL |0 |12 |_door_gethostbyname_r [3176] | 121852| 152|FUNC |GLOB |0 |12 |_switch_gethostbyname_r [3689] | 214424| 12|FUNC |GLOB |0 |12 |_uncached_gethostbyname_r [3324] | 214804| 96|FUNC |GLOB |0 |12 |gethostbyname [3369] | 214484| 160|FUNC |GLOB |0 |12 |gethostbyname_r [1012] | 0| 0|FILE |LOCL |0 |ABS |gethostbyname_r.c # nm /usr/lib/libnsl.so.1 | grep gethostbyaddr [253] | 216260| 296|FUNC |LOCL |0 |12 |_door_gethostbyaddr_r [3424] | 220200| 164|FUNC |GLOB |0 |12 |_switch_gethostbyaddr_r [3308] | 214436| 48|FUNC |GLOB |0 |12 |_uncached_gethostbyaddr_r [3583] | 214900| 120|FUNC |GLOB |0 |12 |gethostbyaddr [3868] | 214644| 160|FUNC |GLOB |0 |12 |gethostbyaddr_r
I checked the config.log file produce when I ran
configure
. The first sign of a problem I found in it was
on the following lines:
configure:2905: checking for library containing strerror
configure:2946: gcc -o conftest -g -O2 conftest.c >&5
ld: fatal: relocation error: R_SPARC_32: file /var/tmp//ccatA7Kv.o: symbol <unknown>: offset 0xff0a131f is non-aligned
collect2: ld returned 1 exit status
configure:2953: $? = 1
configure: failed program was:
| /* confdefs.h. */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| /* end confdefs.h. */
Later in the log, I saw the following:
configure:10382: checking for gethostname
configure:10438: gcc -o conftest -g -O2 -fpcc-struct-return conftest.c >&5
ld: fatal: relocation error: R_SPARC_32: file /var/tmp//ccS99rIb.o: symbol
ld: fatal: relocation error: R_SPARC_32: file /var/tmp//ccS99rIb.o: symbol
collect2: ld returned 1 exit status
At
Getting around smartmontools linker errors, I found someone
reporting on ld: fatal: relocation error: R_SPARC_32
errors
when trying to build smartmontools on a Solaris system. Someone reported
there that using CFLAGS=-gstabs+
resolved the problem.
At
Debugging Options - Using the GNU Compiler Collection (GCC), I
found the following information for the -g
option:
On most systems that use stabs format, -g enables use of extra debugging information that only GDB can use; this extra information makes debugging work better in GDB but will probably make other debuggers crash or refuse to read the program. If you want to control for certain whether to generate the extra information, use -gstabs+, -gstabs, -gxcoff+, -gxcoff, or -gvms (see below).
The information for the -gstabs+
option is as follows:
-gstabs+Produce debugging information in stabs format (if that is supported), using GNU extensions understood only by the GNU debugger (GDB). The use of these extensions is likely to make other debuggers crash or refuse to read the program.
So I ran make realclean
then configure
with
CFLAGS=-gstabs+
.
# ./configure CFLAGS=-gstabs+ checking whether make sets $(MAKE)... yes checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for library containing strerror... none required checking for bison... bison -y checking for flex... flex checking lex output file root... lex.yy checking lex library... -lfl checking whether yytext is a pointer... yes checking for ar... ar checking for ranlib... ranlib checking for a BSD-compatible install... ./install-sh -c checking for gperf... no checking for cperf... no ./configure[3550]: WARNING:: not found checking for gcc version 2.7.2.3... no checking if gcc supports __attribute__ (format) ... yes checking if ar chokes on -r... no checking for getspnam... yes checking for getprpwnam... no Found getspnam(); using shadow passwords by default Will NOT compile in debugging code System name: SunOS; System version: 5.7 Set OS_DEFS = -DSOLARIS2 -DGNU_PASS -DNO_GETLINE -DCONTENT_LENGTH=1 -DUNIX Logging to facility: LOG_LOCAL0 Set AR_FLAG = -r ; RANLIB_CMD = checking for sendmail program... found at /usr/lib/sendmail checking for mail spool directory... "found at /var/mail" checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /usr/xpg4/bin/grep checking for egrep... /usr/xpg4/bin/grep -E checking for ANSI C header files... yes checking for sys/wait.h that is POSIX.1 compatible... yes checking whether sys_siglist is declared... no checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... no checking for unistd.h... yes checking prot.h usability... no checking prot.h presence... no checking for prot.h... no checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking for strings.h... (cached) yes checking sys/param.h usability... yes checking sys/param.h presence... yes checking for sys/param.h... yes checking sys/file.h usability... yes checking sys/file.h presence... yes checking for sys/file.h... yes checking sys/security.h usability... no checking sys/security.h presence... no checking for sys/security.h... no checking sys/syslog.h usability... yes checking sys/syslog.h presence... yes checking for sys/syslog.h... yes checking for sys/types.h... (cached) yes checking sys/fcntl.h usability... yes checking sys/fcntl.h presence... yes checking for sys/fcntl.h... yes checking sys/select.h usability... yes checking sys/select.h presence... yes checking for sys/select.h... yes checking for sys/stat.h... (cached) yes checking sys/unistd.h usability... yes checking sys/unistd.h presence... yes checking for sys/unistd.h... yes checking sys/netinet/in.h usability... no checking sys/netinet/in.h presence... no checking for sys/netinet/in.h... no checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking syslog.h usability... yes checking syslog.h presence... yes checking for syslog.h... yes checking net/errno.h usability... no checking net/errno.h presence... no checking for net/errno.h... no checking for unistd.h... (cached) yes checking netinet/in.h usability... yes checking netinet/in.h presence... yes checking for netinet/in.h... yes checking maillock.h usability... yes checking maillock.h presence... yes checking for maillock.h... yes checking select.h usability... no checking select.h presence... no checking for select.h... no checking shadow.h usability... yes checking shadow.h presence... yes checking for shadow.h... yes checking security/pam_appl.h usability... yes checking security/pam_appl.h presence... yes checking for security/pam_appl.h... yes checking pam/pam_appl.h usability... no checking pam/pam_appl.h presence... no checking for pam/pam_appl.h... no checking time.h usability... yes checking time.h presence... yes checking for time.h... yes checking crypt.h usability... yes checking crypt.h presence... yes checking for crypt.h... yes checking ndbm.h usability... yes checking ndbm.h presence... yes checking for ndbm.h... yes checking gdbm.h usability... no checking gdbm.h presence... no checking for gdbm.h... no checking dbm.h usability... no checking dbm.h presence... no checking for dbm.h... no checking for t_accept in -lnsl... yes checking for socket in -lsocket... yes checking for res_init in -lresolv... yes checking for maillock in -lmail... yes checking for krb_recvauth in -lkrb... yes checking for clock_gettime in -lposix4... yes checking for crypt in -lcrypt... yes checking for set_auth_parameters in -lsecurity... no "(use_pam is _default_)" checking for an ANSI C-conforming const... yes checking for uid_t in sys/types.h... yes checking for mode_t... yes checking for off_t... yes checking for size_t... yes checking whether sys_siglist is declared... (cached) no checking whether time.h and sys/time.h may both be included... yes checking whether struct tm is in sys/time.h or time.h... time.h checking for working memcmp... yes checking return type of signal handlers... void checking utime.h usability... yes checking utime.h presence... yes checking for utime.h... yes checking whether utime accepts a null argument... yes checking for vprintf... yes checking for _doprnt... yes checking for wait3 that fills in rusage... no checking for gethostname... yes checking for gethostbyname... no checking for gettimeofday... yes checking for getusershell... yes checking for mkdir... yes checking for socket... no checking for strdup... yes checking for strerror... yes checking for strstr... yes checking for strlcat... no checking for strlcpy... no checking for bcopy... yes checking for index... yes checking for flock... no checking for set_auth_parameters... no checking for pw_encrypt... no checking for hstrerror... no checking for snprintf... yes checking for vsnprintf... yes checking for srandom... yes checking for srand... yes checking for usleep... yes checking for crypt... yes checking for crypt16... no checking for bigcrypt... no checking for setproctitle... no checking for mkstemp... yes checking for setresuid... no checking for library containing gethostbyname... -lnsl checking size of unsigned long int... 4 checking for /dev/urandom ... no configure: creating ./config.status config.status: creating Makefile config.status: WARNING: 'Makefile.in' seems to ignore the --datarootdir setting config.status: creating common/Makefile config.status: creating popper/Makefile config.status: creating mmangle/Makefile config.status: creating password/Makefile config.status: creating config.h
This time I saw the following output by the configure process:
checking for gethostname... yes
checking for gethostbyname... no
checking for gettimeofday... yes
checking for getusershell... yes
<text snipped>
checking for library containing gethostbyname... -lnsl
During previous executions of configure
for qpopper 4.0.16,
I had seen the following for those same lines:
checking for gethostname... no
checking for gethostbyname... no
checking for gettimeofday... no
checking for getusershell... no
<text snipped>
checking for library containing gethostbyname... no
I then ran make
again, without errors this time.
# make cd ./popper && make all make[1]: Entering directory `/tmp/qpopper4.0.16/popper' gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -gstabs+ -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DN O_GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_dele.c -o pop_dele.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -gstabs+ -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DN O_GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_dropcopy.c -o pop_dropcopy.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -gstabs+ -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DN O_GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_get_command.c -o pop_get_command.o pop_get_command.c:41: warning: initialization from incompatible pointer type gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -gstabs+ -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DN O_GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_get_subcommand.c -o pop_get_subcommand.o gcc -c -I.. -I.. -I. \ -I../mmangle -I../common \ -gstabs+ -fpcc-struct-return -DHAVE_CONFIG_H -DSOLARIS2 -DGNU_PASS -DN O_GETLINE -DCONTENT_LENGTH=1 -DUNIX pop_init.c -o pop_init.o <text snipped> make[2]: Leaving directory `/tmp/qpopper4.0.16/common' gcc pop_dele.o pop_dropcopy.o pop_get_command.o pop_get_subcommand.o pop_init. o pop_last.o pop_list.o pop_log.o pop_lower.o pop_msg.o pop_parse.o pop_pass.o p op_quit.o pop_rset.o pop_send.o pop_stat.o pop_updt.o pop_user.o pop_xtnd.o pop_ xmit.o popper.o pop_bull.o xtnd_xlst.o pop_uidl.o mktemp.o pop_rpop.o pop_apop.o md5.o pop_auth.o pop_pope.o pop_extend.o scram.o hmac.o base64.o pop_util.o get _sub_opt.o msg_ptr.o drac.o pop_config.o pop_tls.o pop_tls_openssl.o pop_tls_ssl plus.o sslplus_utils.o main.o pop_cache.o genpath.o -o popper ../mmangle/libman gle.a \ -I../common ../common/libcommon.a \ -lnsl -lsocket -lresolv -lmail -lkrb -lnsl -lposix4 -lcrypt make[1]: Leaving directory `/tmp/qpopper4.0.16/popper'
I was then able to run make install
successfully.
# make install Installed man/popper.8 as /usr/local/share/man/man8/popper.8 Installed man/popauth.8 as /usr/local/share/man/man8/popauth.8 cd ./popper && make install make[1]: Entering directory `/tmp/qpopper4.0.16/popper' cd ../mmangle && make all make[2]: Entering directory `/tmp/qpopper4.0.16/mmangle' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/tmp/qpopper4.0.16/mmangle' cd ../common && make all make[2]: Entering directory `/tmp/qpopper4.0.16/common' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/tmp/qpopper4.0.16/common' gcc pop_dele.o pop_dropcopy.o pop_get_command.o pop_get_subcommand.o pop_init. o pop_last.o pop_list.o pop_log.o pop_lower.o pop_msg.o pop_parse.o pop_pass.o p op_quit.o pop_rset.o pop_send.o pop_stat.o pop_updt.o pop_user.o pop_xtnd.o pop_ xmit.o popper.o pop_bull.o xtnd_xlst.o pop_uidl.o mktemp.o pop_rpop.o pop_apop.o md5.o pop_auth.o pop_pope.o pop_extend.o scram.o hmac.o base64.o pop_util.o get _sub_opt.o msg_ptr.o drac.o pop_config.o pop_tls.o pop_tls_openssl.o pop_tls_ssl plus.o sslplus_utils.o main.o pop_cache.o genpath.o -o popper ../mmangle/libman gle.a \ -I../common ../common/libcommon.a \ -lnsl -lsocket -lresolv -lmail -lkrb -lnsl -lposix4 -lcrypt Installed popper as /usr/local/sbin/popper make[1]: Leaving directory `/tmp/qpopper4.0.16/popper'
I then connected to the POP3 port, i.e. port 110, to check the Qpopper banner.
# telnet 127.0.0.1 110 Trying 127.0.0.1... Connected to 127.0.0.1. Escape character is '^]'. +OK Qpopper (version 4.0.16) at taiyou1.example.com starting. quit +OK Pop server at taiyou1.example.com signing off. Connection closed by foreign host.
I also checked the version with popper -v
.
# /usr/local/sbin/popper -v Qpopper version 4.0.16 (non-standalone)
So, at last, the upgrade was successful. But, when I then tried checking email for my account with Outlook, I kept getting prompted for my password, though I knew I was entering the correct password. I tried connecting to the POP3 port by telnet and checking that way as well to see what error messages I might see that way. But there was no error message displayed other than one indicating the password was incorrect, which was not the case.
# telnet 127.0.0.1 110 Trying 127.0.0.1... Connected to 127.0.0.1. Escape character is '^]'. +OK Qpopper (version 4.0.16) at taiyou1.example.com starting. user jsmith +OK Password required for jsmith. pass 22aa22aa -ERR [AUTH] Password supplied for "jsmith" is incorrect. +OK Pop server at taiyou1.example.com signing off. Connection closed by foreign host.
Since qpopper was being started through /etc/inetd.conf
,
I killed the inetd.conf
process, just to see if there
would be any change in results, and tried again. I got the same
-ERR [AUTH] Password supplied for "jsmith" is incorrect
message. I wasn't really expecting that stop to make a difference,
since I hadn't changed /etc/inetd.conf
.
I checked /var/log/poplog
to see if there might be any
clue regarding the problem there. There was nothing of use to me there,
either.
Mar 27 14:43:08 taiyou1 qpopper[12877]: jsmith at localhost (127.0.0.1): -ERR [AUTH] Password supplied for "jsmith" is incorrect.
Mar 27 14:43:08 taiyou1 qpopper[12877]: [AUTH] Failed attempted login to jsmith from host (localhost) 127.0.0.1
After checking postings I found online regarding login problems, I decided
to rebuild the software and use the following option with
configure
, since Solaris is using shadow passwords.
--enable-specialauth Enable secure crypt or shadow passwords
I then issued the commands below:
# make realclean # ./configure --enable-specialauth CFLAGS=-gstabs+ # make # make install
That resolved the problem.
# telnet 127.0.0.1 110 Trying 127.0.0.1... Connected to 127.0.0.1. Escape character is '^]'. +OK Qpopper (version 4.0.16) at taiyou1.example.com starting. user jsmith +OK Password required for jsmith. pass 22aa22aa +OK jsmith has 1 visible message (0 hidden) in 40008 octets. quit +OK Pop server at taiyou1.example.com signing off. Connection closed by foreign host.