[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

lynx-dev News (nntp) urls in lynx 2.8.1pre.10 and pre.11, SSL

From: David R. Conrad
Subject: lynx-dev News (nntp) urls in lynx 2.8.1pre.10 and pre.11, SSL
Date: Fri, 23 Oct 1998 14:55:15 -0400 (EDT)

Hash: SHA1

I recently switched to lynx2.8.1pre.10 from lynx2.8.1dev.14 and news and
nntp urls no longer work for me (and I just patched my way up to pre.11
and the problem persists).  NNTPSERVER is set in /etc/profile and has not
been changed recently and has worked in the past with both lynx and rtin.

When I select a news: link, or enter an nntp: url, I get no response at
all.  The status line (I use lynx in advanced mode) seems to briefly flash
to the url of the page I'm on and the back to whatever it was.  This all
happens in the blink of an eye.  I tried entering an nntp: url because I
thought lynx might not be reading the environment variable properly, but
no dice (same result).  I tried starting it in the following manner: lynx
but still got no results.

I also tried an nntp url with the newsserver of a local university where I
have "no permission to talk" and lynx still did nothing.  Here's the url:


and here is a telnet session:

~~$ telnet nntp
Connected to
Escape character is '^]'.
502 You have no permission to talk.  Goodbye.
Connection closed by foreign host.

I assume lynx should at least have shown me the 502 message.

Is news support broken in this prerelease?  Did I need to do something
special when configuring it to enable news support?

My system is linux-2.1.124 with libc5 and using egcs-1.1b (gcc version
egcs-2.91.57 19980901 (egcs-1.1 release)) as a compiler; I linked against
ncurses-4.2.980228, zlib-1.1.3, and ssleay-0.9.0b (which I had some
trouble with, see below).

Here is a copy of a message I sent to the ssl-users mailing list:

        -=-=-           -=-=-           -=-=-

- From address@hidden Fri Oct 23 14:19:10 1998
Date: Fri, 23 Oct 1998 14:17:33 -0400 (EDT)
From: "David R. Conrad" <address@hidden>
To: address@hidden
Subject: Conflict between ssleay-0.9.0b and zlib-1.1.3

I recently compiled lynx-2.8.1pre.10 with ssl support.  It can also,
optionally, use zlib to read some compressed files, so I tried to use
both ssleay-0.9.0b and zlib-1.1.3, but ran into the following problem:

In zlib.h at line 64:

typedef void   (*free_func)  OF((voidpf opaque, voidpf address));

which is later used to declare some functions.

Well, this plays havoc with a number of the ssleay header files which use
free_func as a struct member (no problem) and as the name of a formal
argument in a prototype (PROBLEM!).  This caused the compiler to barf on
lynx2-8-1/WWW/Library/Implementation/HTTP.c which tried to include both
the ssl and compression header files.

My hack-around to get it compiled was, since identifiers used in formal
parameters aren't significant in C, to go through all the headers in my
/usr/local/ssl/include/ and change free_func to ssl_free_func (only in
the prototypes, not the struct members).  I noticed #ifdef's for pre-ANSI
compilers without prototypes, and I suppose I could have #defined that to
leave out the prototypes from the ssl headers, but that seemed a little

I did get it compiled successfully, and it seems to be working (including
hitting https urls).

I'm using egcs-1.1b (gcc version egcs-2.91.57 19980901 (egcs-1.1 release))
on a linux-2.1.124 (libc5) system, but this presumably could have happened
with any app that tried to use ssleay and zlib, on any system with an ANSI
c compiler.

I saw an argument somewhere (comp.lang.c.moderated?) about the use of
identifiers in formal arguments in prototypes, and some people said they
were useful as a quick reference to the usage of the function, but one guy
insisted they were a bad idea because a) they weren't checked by the
compiler and could get out of step with the actual usage of the function
and b) in some unusual cases they could cause errors.

(For (a) consider if someone switched "size" and "nmemb" in a prototype
for fread(3).)

And I thought, "Errors?  C'mon!  Nah."  But this has made me think twice.

P.S. SSLeay is absolutely wonderful.  Keep up the good work.

onrad <address@hidden>

        -=-=-           -=-=-           -=-=-

I mention this simply because I feel you ought to know about it; obviously
the problem lies outside of lynx, and it would be difficult at best for
you to work around it.

(Actually, I guess you could do "#define free_func zlib_free_func" prior
to including zlib.h and then "#undef free_func" after including it; I
haven't tested this and am not recommending it, it is just one possibility
which just occurred to me.)

Finally, here are the compile-time and run-time settings taken from the
'=' information page of Lynx 2.8.1pre.11 (17 Oct 1998):

        -=-=-           -=-=-           -=-=-

             Configuration Definitions (Lynx Version 2.8.1pre.11)
See also your lynx.cfg for run-time options

The following data were derived during the automatic configuration/build
process of this copy of Lynx.  When reporting a bug, please include a copy
of this page.

SYSTEM_MAIL                         /usr/sbin/sendmail
alt_char_set                        acs_map
baddef_remove                       no
bool_defs                           yes
c_const                             yes
color_curses                        yes
dcl_errno                           yes
dcl_sys_errlist                     yes
dcl_sys_nerr                        yes
fancy_curses                        yes
fionbio                             ioctl
func_cbreak                         yes
func_cuserid                        yes
func_decl_getgrgid                  yes
func_decl_getgrnam                  yes
func_decl_strstr                    yes
func_define_key                     yes
func_getcwd                         yes
func_getgroups                      yes
func_gethostbyname                  yes
func_gethostname                    yes
func_gzopen                         no
func_initscr                        no
func_keypad                         yes
func_lstat                          yes
func_mktime                         yes
func_putenv                         yes
func_readdir                        yes
func_socket                         yes
func_strcasecmp                     yes
func_strerror                       yes
func_strstr                         yes
func_use_default_colors             yes
func_vfork_works                    yes
func_waitpid                        yes
func_wborder                        yes
have_errno                          yes
have_lib_ncurses                    yes
have_lib_z                          yes
have_sys_errlist                    yes
have_sys_nerr                       yes
have_ttytype                        yes
have_utmp                           yes
header_dirent_dirent_h              yes
header_fcntl_h                      yes
header_limits_h                     yes
header_stdc                         yes
header_stdlib_h                     yes
header_string_h                     yes
header_sys_fcntl_h                  yes
header_sys_filio_h                  no
header_sys_ioctl_h                  yes
header_sys_param_h                  yes
header_sys_time_h                   yes
header_sys_wait_h                   yes
header_termio_h                     yes
header_termios_h                    yes
header_time                         yes
header_unistd_h                     yes
header_vfork_h                      no
lib_dir_opendir                     no
lib_gpm_Gpm_Open                    yes
lib_gpm_initscr                     yes
lib_inet                            no
locale                              yes
ncurses_broken                      no
ncurses_header                      curses.h
ncurses_version                     4.2.980228
ngroups                             yes
path_CHMOD                          /bin/chmod
path_COMPRESS                       /bin/compress
path_COPY                           /bin/cp
path_GZIP                           /bin/gzip
path_MKDIR                          /bin/mkdir
path_MV                             /bin/mv
path_RM                             /bin/rm
path_TOUCH                          /bin/touch
path_UNCOMPRESS                     /bin/gunzip
path_UNZIP                          /usr/bin/unzip
path_UUDECODE                       /usr/bin/uudecode
path_ZCAT                           /bin/zcat
path_ZIP                            /usr/bin/zip
path_install                        /bin/install -c
prog_CC                             gcc
prog_CPP                            gcc -E
prog_RANLIB                         ranlib
prog_cc_cross                       no
prog_cc_g                           yes
prog_cc_works                       yes
prog_gcc                            yes
prog_make_make_set                  yes
screen                              ncurses
sizechange                          yes
system_mail_flags                   -t -oi
termio_and_curses                   yes
termio_and_termios                  yes
type_getgroups                      gid_t
type_mode_t                         yes
type_pid_t                          yes
type_uid_t                          yes
type_unionwait                      no
use_libsocks                        no
use_libsocks5                       no

The following data were used as automatically-configured compile-time
definitions when this copy of Lynx was built.

ALT_CHAR_SET                        acs_map
CHMOD_PATH                          /bin/chmod
COLOR_CURSES                        1
COMPRESS_PATH                       /bin/compress
COPY_PATH                           /bin/cp
DIRED_SUPPORT                       1
DISP_PARTIAL                        1
FANCY_CURSES                        1
GETGROUPS_T                         gid_t
GZIP_PATH                           /bin/gzip
HAVE_CBREAK                         1
HAVE_CUSERID                        1
HAVE_DEFINE_KEY                     1
HAVE_DIRENT_H                       1
HAVE_FCNTL_H                        1
HAVE_GETBKGD                        1
HAVE_GETCWD                         1
HAVE_GETGROUPS                      1
HAVE_KEYPAD                         1
HAVE_LIMITS_H                       1
HAVE_LSTAT                          1
HAVE_PUTENV                         1
HAVE_READDIR                        1
HAVE_SIZECHANGE                     1
HAVE_STDLIB_H                       1
HAVE_STRERROR                       1
HAVE_STRING_H                       1
HAVE_SYS_FCNTL_H                    1
HAVE_SYS_IOCTL_H                    1
HAVE_SYS_WAIT_H                     1
HAVE_TERMIOS_H                      1
HAVE_TERMIO_H                       1
HAVE_TTYTYPE                        1
HAVE_UNISTD_H                       1
HAVE_UTMP                           1
HAVE_WAITPID                        1
HAVE_WBORDER                        1
INSTALL_PATH                        /bin/install -c
LOCALE                              1
LONG_LIST                           1
LYNX_CFG_FILE                       /usr/local/lib/lynx/lynx.cfg
LYNX_CFG_H                          1
MKDIR_PATH                          /bin/mkdir
MV_PATH                             /bin/mv
NCURSES                             1
NSL_FORK                            1
OK_GZIP                             1
OK_OVERRIDE                         1
OK_PERMIT                           1
OK_TAR                              1
OK_UUDECODE                         1
OK_ZIP                              1
RM_PATH                             /bin/rm
STDC_HEADERS                        1
SYSTEM_MAIL                         /usr/sbin/sendmail
SYSTEM_MAIL_FLAGS                   -t -oi
TAR_PATH                            /bin/tar
TERMIO_AND_CURSES                   1
TOUCH_PATH                          /bin/touch
UNCOMPRESS_PATH                     /bin/gunzip
UNIX                                1
UNZIP_PATH                          /usr/bin/unzip
USE_EXTERNALS                       1
USE_ZLIB                            1
UUDECODE_PATH                       /usr/bin/uudecode
ZIP_PATH                            /usr/bin/zip
lstat                               stat

        -=-=-           -=-=-           -=-=-

        -=-=-           -=-=-           -=-=-

                Lynx.cfg Information (Lynx Version 2.8.1pre.11)
This is read from your lynx.cfg file,
please "read" distribution's lynx.cfg for more comments.

    #Your primary configuration /usr/local/lib/lynx/lynx.cfg
PRINTER:Panasonic KX-P4430:lpr %s:TRUE

        -=-=-           -=-=-           -=-=-

Sorry this message is so long; I didn't have time to write a shorter one.

One final note: the lynx2.8.1dev.14 that I was using was built without ssl
support; that one definitely worked with my ISP's news server, as I had
used it to read news.  I'm not suggesting that ssl is what broke news,
simply trying to give you as complete a picture as possible.

I am not on the mailing list, so please Cc: replies to me at:

David R. Conrad <address@hidden>

Version: PGPfreeware 5.0i for non-commercial use
Charset: noconv


reply via email to

[Prev in Thread] Current Thread [Next in Thread]