diff -purN /zip/tmp/links-current/AUTHORS links-current/AUTHORS --- /zip/tmp/links-current/AUTHORS Thu Jan 13 09:57:28 2000 +++ links-current/AUTHORS Fri Apr 21 03:12:33 2000 @@ -44,3 +44,7 @@ Petr Cech KOI8-R frames Russian localization + +Marcelo de Paula Bezerra + SSL support + diff -purN /zip/tmp/links-current/Makefile links-current/Makefile --- /zip/tmp/links-current/Makefile Wed Dec 31 21:00:00 1969 +++ links-current/Makefile Thu Apr 20 19:40:35 2000 @@ -0,0 +1,478 @@ +# Generated automatically from Makefile.in by configure. +# Makefile.in generated automatically by automake 1.4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + + +SHELL = /bin/sh + +srcdir = . +top_srcdir = . +prefix = /usr/local +exec_prefix = ${prefix} + +bindir = ${exec_prefix}/bin +sbindir = ${exec_prefix}/sbin +libexecdir = ${exec_prefix}/libexec +sysconfdir = ${prefix}/etc +sharedstatedir = ${prefix}/com +localstatedir = ${prefix}/var +libdir = ${exec_prefix}/lib +infodir = ${prefix}/info +mandir = ${prefix}/man +includedir = ${prefix}/include +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/links +pkglibdir = $(libdir)/links +pkgincludedir = $(includedir)/links + +top_builddir = . + +ACLOCAL = aclocal +AUTOCONF = autoconf +AUTOMAKE = automake +AUTOHEADER = autoheader + +INSTALL = /usr/bin/install -c +INSTALL_PROGRAM = ${INSTALL} $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = ${INSTALL} -m 644 +INSTALL_SCRIPT = ${INSTALL_PROGRAM} +transform = s,x,x, + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +AWK = gawk +CC = gcc +MAKEINFO = /home/mosca/links-current/missing makeinfo +PACKAGE = links +VERSION = current + +codepage_sources = Unicode/gen-cp Unicode/*.cp Unicode/index.txt +entities_sources = Unicode/gen-ent Unicode/entities.lnx +uni7b_sources = Unicode/gen-7b Unicode/7bitrepl.lnx +lang_sources = intl/gen-intl intl/*.lng intl/index.txt + +man_MANS = links.1 + +EXTRA_DIST = $(man_MANS) Unicode/* intl/* config2.h Makefile.gen BUGS TODO SITES + +bin_PROGRAMS = links +links_SOURCES = https.c af_unix.c bfu.c cache.c charsets.c connect.c cookies.c default.c dns.c error.c file.c ftp.c html.c html_r.c html_tbl.c http.c kbd.c language.c main.c menu.c os_dep.c sched.c select.c session.c terminal.c types.c url.c view.c win32.c links.h os_dep.h os_depx.h setup.h codepage.h language.h codepage.inc entity.inc uni_7b.inc language.inc rebuild + +datadir = $(prefix)/@DATADIRNAME@ +LIBS = -lgpm -lcrypto -lssl +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = config.h +CONFIG_CLEAN_FILES = +PROGRAMS = $(bin_PROGRAMS) + + +DEFS = -DHAVE_CONFIG_H -I. -I$(srcdir) -I. -I/zip/openssl/include -DHAVE_SSL +CPPFLAGS = +LDFLAGS = +links_OBJECTS = https.o af_unix.o bfu.o cache.o charsets.o connect.o cookies.o \ +default.o dns.o error.o file.o ftp.o html.o html_r.o html_tbl.o http.o \ +kbd.o language.o main.o menu.o os_dep.o sched.o select.o session.o \ +terminal.o types.o url.o view.o win32.o +links_LDADD = $(LDADD) +links_DEPENDENCIES = +links_LDFLAGS = +CFLAGS = -g -O2 +COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ +man1dir = $(mandir)/man1 +MANS = $(man_MANS) + +NROFF = nroff +DIST_COMMON = README ./stamp-h.in AUTHORS COPYING ChangeLog INSTALL \ +Makefile.am Makefile.in NEWS TODO acconfig.h aclocal.m4 config.h.in \ +configure configure.in install-sh missing mkinstalldirs + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +SOURCES = $(links_SOURCES) +OBJECTS = $(links_OBJECTS) + +all: all-redirect +.SUFFIXES: +.SUFFIXES: .S .c .o .s +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status + +$(ACLOCAL_M4): configure.in + cd $(srcdir) && $(ACLOCAL) + +config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + $(SHELL) ./config.status --recheck +$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) + cd $(srcdir) && $(AUTOCONF) + +config.h: stamp-h + @if test ! -f $@; then \ + rm -f stamp-h; \ + $(MAKE) stamp-h; \ + else :; fi +stamp-h: $(srcdir)/config.h.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES= CONFIG_HEADERS=config.h \ + $(SHELL) ./config.status + @echo timestamp > stamp-h 2> /dev/null +$(srcdir)/config.h.in: $(srcdir)/stamp-h.in + @if test ! -f $@; then \ + rm -f $(srcdir)/stamp-h.in; \ + $(MAKE) $(srcdir)/stamp-h.in; \ + else :; fi +$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h + cd $(top_srcdir) && $(AUTOHEADER) + @echo timestamp > $(srcdir)/stamp-h.in 2> /dev/null + +mostlyclean-hdr: + +clean-hdr: + +distclean-hdr: + -rm -f config.h + +maintainer-clean-hdr: + +mostlyclean-binPROGRAMS: + +clean-binPROGRAMS: + -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) + +distclean-binPROGRAMS: + +maintainer-clean-binPROGRAMS: + +install-binPROGRAMS: $(bin_PROGRAMS) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(bindir) + @list='$(bin_PROGRAMS)'; for p in $$list; do \ + if test -f $$p; then \ + echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \ + $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \ + else :; fi; \ + done + +uninstall-binPROGRAMS: + @$(NORMAL_UNINSTALL) + list='$(bin_PROGRAMS)'; for p in $$list; do \ + rm -f $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \ + done + +.c.o: + $(COMPILE) -c $< + +.s.o: + $(COMPILE) -c $< + +.S.o: + $(COMPILE) -c $< + +mostlyclean-compile: + -rm -f *.o core *.core + +clean-compile: + +distclean-compile: + -rm -f *.tab.c + +maintainer-clean-compile: + +links: $(links_OBJECTS) $(links_DEPENDENCIES) + @rm -f links + $(LINK) $(links_LDFLAGS) $(links_OBJECTS) $(links_LDADD) $(LIBS) + +install-man1: + $(mkinstalldirs) $(DESTDIR)$(man1dir) + @list='$(man1_MANS)'; \ + l2='$(man_MANS)'; for i in $$l2; do \ + case "$$i" in \ + *.1*) list="$$list $$i" ;; \ + esac; \ + done; \ + for i in $$list; do \ + if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ + else file=$$i; fi; \ + ext=`echo $$i | sed -e 's/^.*\\.//'`; \ + inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ + inst=`echo $$inst | sed '$(transform)'`.$$ext; \ + echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst"; \ + $(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst; \ + done + +uninstall-man1: + @list='$(man1_MANS)'; \ + l2='$(man_MANS)'; for i in $$l2; do \ + case "$$i" in \ + *.1*) list="$$list $$i" ;; \ + esac; \ + done; \ + for i in $$list; do \ + ext=`echo $$i | sed -e 's/^.*\\.//'`; \ + inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ + inst=`echo $$inst | sed '$(transform)'`.$$ext; \ + echo " rm -f $(DESTDIR)$(man1dir)/$$inst"; \ + rm -f $(DESTDIR)$(man1dir)/$$inst; \ + done +install-man: $(MANS) + @$(NORMAL_INSTALL) + $(MAKE) $(AM_MAKEFLAGS) install-man1 +uninstall-man: + @$(NORMAL_UNINSTALL) + $(MAKE) $(AM_MAKEFLAGS) uninstall-man1 + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)config.h.in$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags config.h.in $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(PACKAGE)-$(VERSION) +top_distdir = $(distdir) + +# This target untars the dist file and tries a VPATH configuration. Then +# it guarantees that the distribution is self-contained by making another +# tarfile. +distcheck: dist + -rm -rf $(distdir) + GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz + mkdir $(distdir)/=build + mkdir $(distdir)/=inst + dc_install_base=`cd $(distdir)/=inst && pwd`; \ + cd $(distdir)/=build \ + && ../configure --srcdir=.. --prefix=$$dc_install_base \ + && $(MAKE) $(AM_MAKEFLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) dvi \ + && $(MAKE) $(AM_MAKEFLAGS) check \ + && $(MAKE) $(AM_MAKEFLAGS) install \ + && $(MAKE) $(AM_MAKEFLAGS) installcheck \ + && $(MAKE) $(AM_MAKEFLAGS) dist + -rm -rf $(distdir) + @banner="$(distdir).tar.gz is ready for distribution"; \ + dashes=`echo "$$banner" | sed s/./=/g`; \ + echo "$$dashes"; \ + echo "$$banner"; \ + echo "$$dashes" +dist: distdir + -chmod -R a+r $(distdir) + GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) + -rm -rf $(distdir) +dist-all: distdir + -chmod -R a+r $(distdir) + GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) + -rm -rf $(distdir) +distdir: $(DISTFILES) + -rm -rf $(distdir) + mkdir $(distdir) + -chmod 777 $(distdir) + $(mkinstalldirs) $(distdir)/Unicode $(distdir)/intl + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +af_unix.o: af_unix.c links.h config.h os_dep.h os_depx.h setup.h \ + language.h codepage.h +bfu.o: bfu.c links.h config.h os_dep.h os_depx.h setup.h language.h \ + codepage.h +cache.o: cache.c links.h config.h os_dep.h os_depx.h setup.h language.h \ + codepage.h +charsets.o: charsets.c links.h config.h os_dep.h os_depx.h setup.h \ + language.h codepage.h codepage.inc uni_7b.inc entity.inc +connect.o: connect.c links.h config.h os_dep.h os_depx.h setup.h \ + language.h codepage.h +cookies.o: cookies.c links.h config.h os_dep.h os_depx.h setup.h \ + language.h codepage.h +default.o: default.c links.h config.h os_dep.h os_depx.h setup.h \ + language.h codepage.h +dns.o: dns.c links.h config.h os_dep.h os_depx.h setup.h language.h \ + codepage.h +error.o: error.c links.h config.h os_dep.h os_depx.h setup.h language.h \ + codepage.h +file.o: file.c links.h config.h os_dep.h os_depx.h setup.h language.h \ + codepage.h +ftp.o: ftp.c links.h config.h os_dep.h os_depx.h setup.h language.h \ + codepage.h +html-r.o: html-r.c links.h os_dep.h os_depx.h setup.h +html-tbl.o: html-tbl.c links.h config.h os_dep.h os_depx.h setup.h +html.o: html.c links.h config.h os_dep.h os_depx.h setup.h language.h \ + codepage.h +html_r.o: html_r.c links.h config.h os_dep.h os_depx.h setup.h \ + language.h codepage.h +html_tbl.o: html_tbl.c links.h config.h os_dep.h os_depx.h setup.h \ + language.h codepage.h +http.o: http.c links.h config.h os_dep.h os_depx.h setup.h language.h \ + codepage.h +kbd.o: kbd.c links.h config.h os_dep.h os_depx.h setup.h language.h \ + codepage.h +language.o: language.c links.h config.h os_dep.h os_depx.h setup.h \ + language.h codepage.h language.inc +main.o: main.c links.h config.h os_dep.h os_depx.h setup.h language.h \ + codepage.h +menu.o: menu.c links.h config.h os_dep.h os_depx.h setup.h language.h \ + codepage.h +os_dep.o: os_dep.c links.h config.h os_dep.h os_depx.h setup.h \ + language.h codepage.h +sched.o: sched.c links.h config.h os_dep.h os_depx.h setup.h language.h \ + codepage.h +select.o: select.c links.h config.h os_dep.h os_depx.h setup.h \ + language.h codepage.h +session.o: session.c links.h config.h os_dep.h os_depx.h setup.h \ + language.h codepage.h +terminal.o: terminal.c links.h config.h os_dep.h os_depx.h setup.h \ + language.h codepage.h +types.o: types.c links.h config.h os_dep.h os_depx.h setup.h language.h \ + codepage.h +url.o: url.c links.h config.h os_dep.h os_depx.h setup.h language.h \ + codepage.h +view.o: view.c links.h config.h os_dep.h os_depx.h setup.h language.h \ + codepage.h +win32.o: win32.c + +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +all-recursive-am: config.h + $(MAKE) $(AM_MAKEFLAGS) all-recursive + +install-exec-am: install-binPROGRAMS +install-exec: install-exec-am + +install-data-am: install-man +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-binPROGRAMS uninstall-man +uninstall: uninstall-am +all-am: Makefile $(PROGRAMS) $(MANS) config.h +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + $(mkinstalldirs) $(DESTDIR)$(bindir) $(DESTDIR)$(mandir)/man1 + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-hdr mostlyclean-binPROGRAMS \ + mostlyclean-compile mostlyclean-tags \ + mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-hdr clean-binPROGRAMS clean-compile clean-tags \ + clean-generic mostlyclean-am + +clean: clean-am + +distclean-am: distclean-hdr distclean-binPROGRAMS distclean-compile \ + distclean-tags distclean-generic clean-am + +distclean: distclean-am + -rm -f config.status + +maintainer-clean-am: maintainer-clean-hdr maintainer-clean-binPROGRAMS \ + maintainer-clean-compile maintainer-clean-tags \ + maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + -rm -f config.status + +.PHONY: mostlyclean-hdr distclean-hdr clean-hdr maintainer-clean-hdr \ +mostlyclean-binPROGRAMS distclean-binPROGRAMS clean-binPROGRAMS \ +maintainer-clean-binPROGRAMS uninstall-binPROGRAMS install-binPROGRAMS \ +mostlyclean-compile distclean-compile clean-compile \ +maintainer-clean-compile install-man1 uninstall-man1 install-man \ +uninstall-man tags mostlyclean-tags distclean-tags clean-tags \ +maintainer-clean-tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck all-recursive-am install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs \ +mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +codepage.inc : $(codepage_sources) + cd Unicode;./gen-cp;cd .. + +entity.inc : $(entities_sources) + cd Unicode;./gen-ent;cd .. + +uni_7b.inc : $(uni7b_sources) + cd Unicode;./gen-7b;cd .. + +language.inc : $(lang_sources) + cd intl;./gen-intl;cd .. + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff -purN /zip/tmp/links-current/config.cache links-current/config.cache --- /zip/tmp/links-current/config.cache Wed Dec 31 21:00:00 1969 +++ links-current/config.cache Thu Apr 20 19:03:55 2000 @@ -0,0 +1,63 @@ +# This file is a shell script that caches the results of configure +# tests run on this system so they can be shared between configure +# scripts and configure runs. It is not useful on other systems. +# If it contains results you don't want to keep, you may remove or edit it. +# +# By default, configure uses ./config.cache as the cache file, +# creating it if it does not exist already. You can give configure +# the --cache-file=FILE option to use a different cache file; that is +# what configure does when it calls configure scripts in +# subdirectories, so they share the cache. +# Giving --cache-file=/dev/null disables caching, for debugging configure. +# config.status only pays attention to the cache file if you give it the +# --recheck option to rerun configure. +# +ac_cv_c_const=${ac_cv_c_const=yes} +ac_cv_c_inline=${ac_cv_c_inline=inline} +ac_cv_func_alarm=${ac_cv_func_alarm=yes} +ac_cv_func_cfmakeraw=${ac_cv_func_cfmakeraw=yes} +ac_cv_func_chmod=${ac_cv_func_chmod=yes} +ac_cv_func_gethostbyname=${ac_cv_func_gethostbyname=yes} +ac_cv_func_gettimeofday=${ac_cv_func_gettimeofday=yes} +ac_cv_func_herror=${ac_cv_func_herror=yes} +ac_cv_func_memcmp_clean=${ac_cv_func_memcmp_clean=yes} +ac_cv_func_mkdir=${ac_cv_func_mkdir=yes} +ac_cv_func_select=${ac_cv_func_select=yes} +ac_cv_func_socket=${ac_cv_func_socket=yes} +ac_cv_func_strcspn=${ac_cv_func_strcspn=yes} +ac_cv_func_strerror=${ac_cv_func_strerror=yes} +ac_cv_func_strftime=${ac_cv_func_strftime=yes} +ac_cv_func_strstr=${ac_cv_func_strstr=yes} +ac_cv_func_strtol=${ac_cv_func_strtol=yes} +ac_cv_func_strtoul=${ac_cv_func_strtoul=yes} +ac_cv_func_vprintf=${ac_cv_func_vprintf=yes} +ac_cv_header_dirent_dirent_h=${ac_cv_header_dirent_dirent_h=yes} +ac_cv_header_fcntl_h=${ac_cv_header_fcntl_h=yes} +ac_cv_header_limits_h=${ac_cv_header_limits_h=yes} +ac_cv_header_netinet_in_system_h=${ac_cv_header_netinet_in_system_h=no} +ac_cv_header_netinet_in_systm_h=${ac_cv_header_netinet_in_systm_h=yes} +ac_cv_header_netinet_ip_h=${ac_cv_header_netinet_ip_h=yes} +ac_cv_header_stdc=${ac_cv_header_stdc=yes} +ac_cv_header_sys_ioctl_h=${ac_cv_header_sys_ioctl_h=yes} +ac_cv_header_sys_select_h=${ac_cv_header_sys_select_h=no} +ac_cv_header_sys_time_h=${ac_cv_header_sys_time_h=yes} +ac_cv_header_sys_un_h=${ac_cv_header_sys_un_h=yes} +ac_cv_header_sys_wait_h=${ac_cv_header_sys_wait_h=yes} +ac_cv_header_time=${ac_cv_header_time=yes} +ac_cv_header_time_h=${ac_cv_header_time_h=yes} +ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} +ac_cv_lib_dir_opendir=${ac_cv_lib_dir_opendir=no} +ac_cv_lib_gpm_Gpm_Open=${ac_cv_lib_gpm_Gpm_Open=yes} +ac_cv_path_install=${ac_cv_path_install='/usr/bin/install -c'} +ac_cv_prog_AWK=${ac_cv_prog_AWK=gawk} +ac_cv_prog_CC=${ac_cv_prog_CC=gcc} +ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -E'} +ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} +ac_cv_prog_cc_g=${ac_cv_prog_cc_g=yes} +ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} +ac_cv_prog_gcc=${ac_cv_prog_gcc=yes} +ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional=no} +ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} +ac_cv_struct_tm=${ac_cv_struct_tm=time.h} +ac_cv_type_signal=${ac_cv_type_signal=void} +ac_cv_type_size_t=${ac_cv_type_size_t=yes} diff -purN /zip/tmp/links-current/config.h links-current/config.h --- /zip/tmp/links-current/config.h Wed Dec 31 21:00:00 1969 +++ links-current/config.h Thu Apr 20 19:04:35 2000 @@ -0,0 +1,168 @@ +/* config.h. Generated automatically by configure. */ +/* config.h.in. Generated automatically from configure.in by autoheader. */ + +/* Define to empty if the keyword does not work. */ +/* #undef const */ + +/* Define if you don't have vprintf but do have _doprnt. */ +/* #undef HAVE_DOPRNT */ + +/* Define if you have the strftime function. */ +#define HAVE_STRFTIME 1 + +/* Define if you have that is POSIX.1 compatible. */ +#define HAVE_SYS_WAIT_H 1 + +/* Define if you have the vprintf function. */ +#define HAVE_VPRINTF 1 + +/* Define as __inline if that's what the C compiler calls it. */ +/* #undef inline */ + +/* Define as the return type of signal handlers (int or void). */ +#define RETSIGTYPE void + +/* Define to `unsigned' if doesn't define. */ +/* #undef size_t */ + +/* Define if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define if you can safely include both and . */ +#define TIME_WITH_SYS_TIME 1 + +/* Define if your declares struct tm. */ +/* #undef TM_IN_SYS_TIME */ + +/* Define if you have the alarm function. */ +#define HAVE_ALARM 1 + +/* Define if you have the chmod function. */ +#define HAVE_CHMOD 1 + +/* Define if you have the gettimeofday function. */ +#define HAVE_GETTIMEOFDAY 1 + +/* Define if you have the mkdir function. */ +#define HAVE_MKDIR 1 + +/* Define if you have the select function. */ +#define HAVE_SELECT 1 + +/* Define if you have the strcspn function. */ +#define HAVE_STRCSPN 1 + +/* Define if you have the strerror function. */ +#define HAVE_STRERROR 1 + +/* Define if you have the strstr function. */ +#define HAVE_STRSTR 1 + +/* Define if you have the strtol function. */ +#define HAVE_STRTOL 1 + +/* Define if you have the strtoul function. */ +#define HAVE_STRTOUL 1 + +/* Define if you have the header file. */ +#define HAVE_DIRENT_H 1 + +/* Define if you have the header file. */ +#define HAVE_FCNTL_H 1 + +/* Define if you have the header file. */ +#define HAVE_LIMITS_H 1 + +/* Define if you have the header file. */ +/* #undef HAVE_NDIR_H */ + +/* Define if you have the header file. */ +/* #undef HAVE_NETINET_IN_SYSTEM_H */ + +/* Define if you have the header file. */ +#define HAVE_NETINET_IN_SYSTM_H 1 + +/* Define if you have the header file. */ +#define HAVE_NETINET_IP_H 1 + +/* Define if you have the header file. */ +/* #undef HAVE_SYS_DIR_H */ + +/* Define if you have the header file. */ +#define HAVE_SYS_IOCTL_H 1 + +/* Define if you have the header file. */ +/* #undef HAVE_SYS_NDIR_H */ + +/* Define if you have the header file. */ +/* #undef HAVE_SYS_SELECT_H */ + +/* Define if you have the header file. */ +#define HAVE_SYS_TIME_H 1 + +/* Define if you have the header file. */ +#define HAVE_SYS_UN_H 1 + +/* Define if you have the header file. */ +#define HAVE_TIME_H 1 + +/* Define if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define if you have the gpm library (-lgpm). */ +#define HAVE_LIBGPM 1 + +/* Define if you have the nsl library (-lnsl). */ +/* #undef HAVE_LIBNSL */ + +/* Define if you have the socket library (-lsocket). */ +/* #undef HAVE_LIBSOCKET */ + +/* Name of package */ +#define PACKAGE "links" + +/* Version number of package */ +#define VERSION "current" + + +/* Define to 1 if NLS is requested. */ +/* #undef ENABLE_NLS */ + +/* Define as 1 if you have catgets and don't want to use GNU gettext. */ +/* #undef HAVE_CATGETS */ + +/* Define as 1 if you have gettext and don't want to use GNU gettext. */ +/* #undef HAVE_GETTEXT */ + +/* Define if your locale.h file contains LC_MESSAGES. */ +/* #undef HAVE_LC_MESSAGES */ + +/* Define to 1 if you have the stpcpy function. */ +/* #undef HAVE_STPCPY */ + +/* */ +#define HAVE_TYPEOF 1 + +/* */ +#define HAVE_LONG_LONG 1 + +/* */ +#define HAVE_CHMOD 1 + +/* */ +#define HAVE_ALARM 1 + +/* */ +#define HAVE_CFMAKERAW 1 + +/* */ +#define HAVE_HERROR 1 + +/* */ +/* #undef HAVE_BEGINTHREAD */ + +/* */ +/* #undef HAVE_MOUOPEN */ + +/* */ +/* #undef HAVE_READ_KBD */ diff -purN /zip/tmp/links-current/config.log links-current/config.log --- /zip/tmp/links-current/config.log Wed Dec 31 21:00:00 1969 +++ links-current/config.log Thu Apr 20 19:03:53 2000 @@ -0,0 +1,156 @@ +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +configure:557: checking for a BSD compatible install +configure:610: checking whether build environment is sane +configure:667: checking whether make sets ${MAKE} +configure:713: checking for working aclocal +configure:726: checking for working autoconf +configure:739: checking for working automake +configure:752: checking for working autoheader +configure:765: checking for working makeinfo +configure:785: checking for gcc +configure:898: checking whether the C compiler (gcc ) works +configure:914: gcc -o conftest conftest.c 1>&5 +configure:940: checking whether the C compiler (gcc ) is a cross-compiler +configure:945: checking whether we are using GNU C +configure:954: gcc -E conftest.c +configure:973: checking whether gcc accepts -g +configure:1009: checking for mawk +configure:1009: checking for gawk +configure:1040: checking for EMX +configure:1051: gcc -c -g -O2 conftest.c 1>&5 +configure: In function `main': +configure:1046: `kill' undeclared (first use this function) +configure:1046: (Each undeclared identifier is reported only once +configure:1046: for each function it appears in.) +configure:1046: parse error before `me' +configure: failed program was: +#line 1042 "configure" +#include "confdefs.h" + +int main() { +#ifndef __EMX__ +kill me! +#endif +; return 0; } +configure:1065: checking for typeof +configure:1075: gcc -c -g -O2 conftest.c 1>&5 +configure:1092: checking for long long +configure:1101: gcc -c -g -O2 conftest.c 1>&5 +configure:1122: checking for dirent.h that defines DIR +configure:1135: gcc -c -g -O2 conftest.c 1>&5 +configure:1160: checking for opendir in -ldir +configure:1179: gcc -o conftest -g -O2 conftest.c -ldir 1>&5 +/usr/i486-linux/bin/ld: cannot open -ldir: No such file or directory +configure: failed program was: +#line 1168 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char opendir(); + +int main() { +opendir() +; return 0; } +configure:1243: checking how to run the C preprocessor +configure:1264: gcc -E conftest.c >/dev/null 2>conftest.out +configure:1323: checking for ANSI C header files +configure:1336: gcc -E conftest.c >/dev/null 2>conftest.out +configure:1403: gcc -o conftest -g -O2 conftest.c 1>&5 +configure:1427: checking for sys/wait.h that is POSIX.1 compatible +configure:1448: gcc -c -g -O2 conftest.c 1>&5 +configure:1472: checking for fcntl.h +configure:1482: gcc -E conftest.c >/dev/null 2>conftest.out +configure:1472: checking for limits.h +configure:1482: gcc -E conftest.c >/dev/null 2>conftest.out +configure:1472: checking for sys/ioctl.h +configure:1482: gcc -E conftest.c >/dev/null 2>conftest.out +configure:1472: checking for sys/time.h +configure:1482: gcc -E conftest.c >/dev/null 2>conftest.out +configure:1472: checking for time.h +configure:1482: gcc -E conftest.c >/dev/null 2>conftest.out +configure:1472: checking for unistd.h +configure:1482: gcc -E conftest.c >/dev/null 2>conftest.out +configure:1512: checking for netinet/in_systm.h +configure:1522: gcc -E conftest.c >/dev/null 2>conftest.out +configure:1552: checking for netinet/in_system.h +configure:1562: gcc -E conftest.c >/dev/null 2>conftest.out +configure:1558: netinet/in_system.h: No such file or directory +configure: failed program was: +#line 1557 "configure" +#include "confdefs.h" +#include +configure:1592: checking for netinet/ip.h +configure:1602: gcc -E conftest.c >/dev/null 2>conftest.out +configure:1632: checking for sys/select.h +configure:1642: gcc -E conftest.c >/dev/null 2>conftest.out +configure:1638: sys/select.h: No such file or directory +configure: failed program was: +#line 1637 "configure" +#include "confdefs.h" +#include +configure:1672: checking for sys/un.h +configure:1682: gcc -E conftest.c >/dev/null 2>conftest.out +configure:1710: checking for working const +configure:1764: gcc -c -g -O2 conftest.c 1>&5 +configure:1785: checking for inline +configure:1799: gcc -c -g -O2 conftest.c 1>&5 +configure:1825: checking for size_t +configure:1858: checking whether time.h and sys/time.h may both be included +configure:1872: gcc -c -g -O2 conftest.c 1>&5 +configure:1893: checking whether struct tm is in sys/time.h or time.h +configure:1906: gcc -c -g -O2 conftest.c 1>&5 +configure:1929: checking whether gcc needs -traditional +configure:1936: sgtty.h: No such file or directory +configure:1975: checking for 8-bit clean memcmp +configure:1993: gcc -o conftest -g -O2 conftest.c 1>&5 +configure:2011: checking return type of signal handlers +configure:2033: gcc -c -g -O2 conftest.c 1>&5 +configure:2052: checking for strftime +configure:2080: gcc -o conftest -g -O2 conftest.c 1>&5 +configure:2148: checking for vprintf +configure:2176: gcc -o conftest -g -O2 conftest.c 1>&5 +configure:2255: checking for gettimeofday +configure:2283: gcc -o conftest -g -O2 conftest.c 1>&5 +configure:2255: checking for mkdir +configure:2283: gcc -o conftest -g -O2 conftest.c 1>&5 +configure:2255: checking for select +configure:2283: gcc -o conftest -g -O2 conftest.c 1>&5 +configure:2255: checking for strcspn +configure:2283: gcc -o conftest -g -O2 conftest.c 1>&5 +configure:2255: checking for strerror +configure:2283: gcc -o conftest -g -O2 conftest.c 1>&5 +configure:2255: checking for strstr +configure:2283: gcc -o conftest -g -O2 conftest.c 1>&5 +configure:2255: checking for strtol +configure:2283: gcc -o conftest -g -O2 conftest.c 1>&5 +configure:2255: checking for strtoul +configure:2283: gcc -o conftest -g -O2 conftest.c 1>&5 +configure:2255: checking for alarm +configure:2283: gcc -o conftest -g -O2 conftest.c 1>&5 +configure:2255: checking for chmod +configure:2283: gcc -o conftest -g -O2 conftest.c 1>&5 +configure:2309: checking for Gpm_Open in -lgpm +configure:2328: gcc -o conftest -g -O2 conftest.c -lgpm 1>&5 +configure:2356: checking for socket +configure:2384: gcc -o conftest -g -O2 conftest.c -lgpm 1>&5 +configure:2458: checking for gethostbyname +configure:2486: gcc -o conftest -g -O2 conftest.c -lgpm 1>&5 +configure:2602: checking for herror +configure:2630: gcc -o conftest -g -O2 conftest.c -lgpm 1>&5 +configure:2653: checking for cfmakeraw +configure:2681: gcc -o conftest -g -O2 conftest.c -lgpm 1>&5 +configure:2705: checking for OS/2 threads +configure:2716: gcc -o conftest -g -O2 -Zmt conftest.c -lgpm 1>&5 +gcc: unrecognized option `-Zmt' +/tmp/cca057411.o: In function `main': +/home/mosca/links-current/configure:2712: undefined reference to `_beginthread' +configure: failed program was: +#line 2709 "configure" +#include "confdefs.h" +#include +int main() { +_beginthread(NULL, NULL, 0, NULL) +; return 0; } diff -purN /zip/tmp/links-current/config.status links-current/config.status --- /zip/tmp/links-current/config.status Wed Dec 31 21:00:00 1969 +++ links-current/config.status Thu Apr 20 19:04:05 2000 @@ -0,0 +1,381 @@ +#! /bin/sh +# Generated automatically by configure. +# Run this file to recreate the current configuration. +# This directory was configured as follows, +# on host lesma: +# +# ./configure +# +# Compiler output produced by configure, useful for debugging +# configure, is in ./config.log if it exists. + +ac_cs_usage="Usage: ./config.status [--recheck] [--version] [--help]" +for ac_option +do + case "$ac_option" in + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + echo "running ${CONFIG_SHELL-/bin/sh} ./configure --no-create --no-recursion" + exec ${CONFIG_SHELL-/bin/sh} ./configure --no-create --no-recursion ;; + -version | --version | --versio | --versi | --vers | --ver | --ve | --v) + echo "./config.status generated by autoconf version 2.13" + exit 0 ;; + -help | --help | --hel | --he | --h) + echo "$ac_cs_usage"; exit 0 ;; + *) echo "$ac_cs_usage"; exit 1 ;; + esac +done + +ac_given_srcdir=. +ac_given_INSTALL="/usr/bin/install -c" + +trap 'rm -fr Makefile config.h conftest*; exit 1' 1 2 15 + +# Protect against being on the right side of a sed subst in config.status. +sed 's/%@/@@/; s/@%/@@/; s/%g$/@g/; /@g$/s/[\\&%]/\\&/g; + s/@@/%@/; s/@@/@%/; s/@g$/%g/' > conftest.subs <<\CEOF +/^[ ]*VPATH[ ]*=[^:]*$/d + +s%@SHELL@%/bin/sh%g +s%@CFLAGS@%-g -O2%g +s%@CPPFLAGS@%%g +s%@CXXFLAGS@%%g +s%@FFLAGS@%%g +s%@DEFS@%-DHAVE_CONFIG_H%g +s%@LDFLAGS@%%g +s%@LIBS@%-lgpm %g +s%@exec_prefix@%${prefix}%g +s%@prefix@%/usr/local%g +s%@program_transform_name@%s,x,x,%g +s%@bindir@%${exec_prefix}/bin%g +s%@sbindir@%${exec_prefix}/sbin%g +s%@libexecdir@%${exec_prefix}/libexec%g +s%@datadir@%${prefix}/share%g +s%@sysconfdir@%${prefix}/etc%g +s%@sharedstatedir@%${prefix}/com%g +s%@localstatedir@%${prefix}/var%g +s%@libdir@%${exec_prefix}/lib%g +s%@includedir@%${prefix}/include%g +s%@oldincludedir@%/usr/include%g +s%@infodir@%${prefix}/info%g +s%@mandir@%${prefix}/man%g +s%@INSTALL_PROGRAM@%${INSTALL}%g +s%@INSTALL_SCRIPT@%${INSTALL_PROGRAM}%g +s%@INSTALL_DATA@%${INSTALL} -m 644%g +s%@PACKAGE@%links%g +s%@VERSION@%current%g +s%@ACLOCAL@%aclocal%g +s%@AUTOCONF@%autoconf%g +s%@AUTOMAKE@%automake%g +s%@AUTOHEADER@%autoheader%g +s%@MAKEINFO@%/home/mosca/links-current/missing makeinfo%g +s%@SET_MAKE@%%g +s%@CC@%gcc%g +s%@AWK@%gawk%g +s%@CPP@%gcc -E%g +s%@LIBOBJS@%%g + +CEOF + +# Split the substitutions into bite-sized pieces for seds with +# small command number limits, like on Digital OSF/1 and HP-UX. +ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script. +ac_file=1 # Number of current file. +ac_beg=1 # First line for current file. +ac_end=$ac_max_sed_cmds # Line after last line for current file. +ac_more_lines=: +ac_sed_cmds="" +while $ac_more_lines; do + if test $ac_beg -gt 1; then + sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file + else + sed "${ac_end}q" conftest.subs > conftest.s$ac_file + fi + if test ! -s conftest.s$ac_file; then + ac_more_lines=false + rm -f conftest.s$ac_file + else + if test -z "$ac_sed_cmds"; then + ac_sed_cmds="sed -f conftest.s$ac_file" + else + ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file" + fi + ac_file=`expr $ac_file + 1` + ac_beg=$ac_end + ac_end=`expr $ac_end + $ac_max_sed_cmds` + fi +done +if test -z "$ac_sed_cmds"; then + ac_sed_cmds=cat +fi + +CONFIG_FILES=${CONFIG_FILES-"Makefile"} +for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then + # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". + case "$ac_file" in + *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` + ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; + *) ac_file_in="${ac_file}.in" ;; + esac + + # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories. + + # Remove last slash and all that follows it. Not all systems have dirname. + ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` + if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then + # The file is in a subdirectory. + test ! -d "$ac_dir" && mkdir "$ac_dir" + ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`" + # A "../" for each directory in $ac_dir_suffix. + ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'` + else + ac_dir_suffix= ac_dots= + fi + + case "$ac_given_srcdir" in + .) srcdir=. + if test -z "$ac_dots"; then top_srcdir=. + else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;; + /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;; + *) # Relative path. + srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix" + top_srcdir="$ac_dots$ac_given_srcdir" ;; + esac + + case "$ac_given_INSTALL" in + [/$]*) INSTALL="$ac_given_INSTALL" ;; + *) INSTALL="$ac_dots$ac_given_INSTALL" ;; + esac + + echo creating "$ac_file" + rm -f "$ac_file" + configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure." + case "$ac_file" in + *Makefile*) ac_comsub="1i\\ +# $configure_input" ;; + *) ac_comsub= ;; + esac + + ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` + sed -e "$ac_comsub +s%@configure_input@%$configure_input%g +s%@srcdir@%$srcdir%g +s%@top_srcdir@%$top_srcdir%g +s%@INSTALL@%$INSTALL%g +" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file +fi; done +rm -f conftest.s* + +# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where +# NAME is the cpp macro being defined and VALUE is the value it is being given. +# +# ac_d sets the value in "#define NAME VALUE" lines. +ac_dA='s%^\([ ]*\)#\([ ]*define[ ][ ]*\)' +ac_dB='\([ ][ ]*\)[^ ]*%\1#\2' +ac_dC='\3' +ac_dD='%g' +# ac_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE". +ac_uA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' +ac_uB='\([ ]\)%\1#\2define\3' +ac_uC=' ' +ac_uD='\4%g' +# ac_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE". +ac_eA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' +ac_eB='$%\1#\2define\3' +ac_eC=' ' +ac_eD='%g' + +if test "${CONFIG_HEADERS+set}" != set; then + CONFIG_HEADERS="config.h" +fi +for ac_file in .. $CONFIG_HEADERS; do if test "x$ac_file" != x..; then + # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". + case "$ac_file" in + *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` + ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; + *) ac_file_in="${ac_file}.in" ;; + esac + + echo creating $ac_file + + rm -f conftest.frag conftest.in conftest.out + ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` + cat $ac_file_inputs > conftest.in + + cat > conftest.frag < conftest.out + rm -f conftest.in + mv conftest.out conftest.in + + cat > conftest.frag < conftest.out + rm -f conftest.in + mv conftest.out conftest.in + + cat > conftest.frag < conftest.out + rm -f conftest.in + mv conftest.out conftest.in + + cat > conftest.frag < conftest.out + rm -f conftest.in + mv conftest.out conftest.in + + cat > conftest.frag < conftest.out + rm -f conftest.in + mv conftest.out conftest.in + + cat > conftest.frag < conftest.out + rm -f conftest.in + mv conftest.out conftest.in + + cat > conftest.frag < conftest.out + rm -f conftest.in + mv conftest.out conftest.in + + cat > conftest.frag < conftest.out + rm -f conftest.in + mv conftest.out conftest.in + + cat > conftest.frag < conftest.out + rm -f conftest.in + mv conftest.out conftest.in + + rm -f conftest.frag conftest.h + echo "/* $ac_file. Generated automatically by configure. */" > conftest.h + cat conftest.in >> conftest.h + rm -f conftest.in + if cmp -s $ac_file conftest.h 2>/dev/null; then + echo "$ac_file is unchanged" + rm -f conftest.h + else + # Remove last slash and all that follows it. Not all systems have dirname. + ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` + if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then + # The file is in a subdirectory. + test ! -d "$ac_dir" && mkdir "$ac_dir" + fi + rm -f $ac_file + mv conftest.h $ac_file + fi +fi; done + + + +test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h + +exit 0 diff -purN /zip/tmp/links-current/connect.c links-current/connect.c --- /zip/tmp/links-current/connect.c Tue Mar 28 10:47:38 2000 +++ links-current/connect.c Fri Apr 21 02:48:24 2000 @@ -121,7 +121,10 @@ void dns_found(struct connection *c, int return; } *b->sock = s; - fcntl(s, F_SETFL, O_NONBLOCK); +#ifdef HAVE_SSL + if(!c->https.ssl) +#endif + fcntl(s, F_SETFL, O_NONBLOCK); memset(&b->sa, 0, sizeof(struct sockaddr_in)); b->sa.sin_family = PF_INET; b->sa.sin_addr.s_addr = b->addr; @@ -134,6 +137,19 @@ void dns_found(struct connection *c, int } set_handlers(s, NULL, (void(*)(void *))connected, (void(*)(void *))exception, c); } else { +#ifdef HAVE_SSL + if(c->https.ssl) { + FILE *fp; + SSL_set_fd(c->https.ssl,s); + if(SSL_connect(c->https.ssl)<0) { + fp=fopen("/tmp/links.dbg","w+"); + fprintf(fp,"SSL_connect failed...\n"); + fclose(fp); + abort_connection(c); + return; + } + } +#endif c->buffer = NULL; b->func(c); mem_free(b); @@ -176,11 +192,22 @@ void write_select(struct connection *c) /*printf("ws: %d\n",wb->len-wb->pos); for (wr = wb->pos; wr < wb->len; wr++) printf("%c", wb->data[wr]); printf("-\n");*/ - if ((wr = write(wb->sock, wb->data + wb->pos, wb->len - wb->pos)) <= 0) { - setcstate(c, wr ? -errno : S_CANT_WRITE); - retry_connection(c); - return; - } + +#ifdef HAVE_SSL + if(c->https.ssl) { + if ((wr = SSL_write(c->https.ssl, wb->data + wb->pos, wb->len - wb->pos)) <= 0) { + setcstate(c, wr ? -errno : S_CANT_WRITE); + retry_connection(c); + return; + } + } else +#endif + if ((wr = write(wb->sock, wb->data + wb->pos, wb->len - wb->pos)) <= 0) { + setcstate(c, wr ? -errno : S_CANT_WRITE); + retry_connection(c); + return; + } + /*printf("wr: %d\n", wr);*/ if ((wb->pos += wr) == wb->len) { void (*f)(struct connection *) = wb->done; @@ -229,17 +256,33 @@ void read_select(struct connection *c) return; } c->buffer = rb; - if ((rd = read(rb->sock, rb->data + rb->len, READ_SIZE)) <= 0) { - if (rb->close && !rd) { - rb->close = 2; - rb->done(c, rb); + +#ifdef HAVE_SSL + if(c->https.ssl) { + if ((rd = SSL_read(c->https.ssl, rb->data + rb->len, READ_SIZE)) <= 0) { + if (rb->close && !rd) { + rb->close = 2; + rb->done(c, rb); + return; + } + setcstate(c, rd ? -errno : S_CANT_READ); + /*mem_free(rb);*/ + retry_connection(c); + return; + } + } else +#endif + if ((rd = read(rb->sock, rb->data + rb->len, READ_SIZE)) <= 0) { + if (rb->close && !rd) { + rb->close = 2; + rb->done(c, rb); + return; + } + setcstate(c, rd ? -errno : S_CANT_READ); + /*mem_free(rb);*/ + retry_connection(c); return; } - setcstate(c, rd ? -errno : S_CANT_READ); - /*mem_free(rb);*/ - retry_connection(c); - return; - } log_data(rb->data + rb->len, rd); rb->len += rd; rb->done(c, rb); diff -purN /zip/tmp/links-current/http.c links-current/http.c --- /zip/tmp/links-current/http.c Wed Mar 29 14:12:47 2000 +++ links-current/http.c Thu Apr 20 21:00:51 2000 @@ -100,7 +100,12 @@ void http_end_request(struct connection c->cache->incomplete = 0; } } - if (c->info && !((struct http_connection_info *)c->info)->close && (!bug_post_no_keepalive || !strchr(c->url, POST_CHAR))) { + + if (c->info && !((struct http_connection_info *)c->info)->close +#ifdef HAVE_SSL + && (!c->https.ssl) /* We won't keep alive ssl connections */ +#endif + && (!bug_post_no_keepalive || !strchr(c->url, POST_CHAR))) { add_keepalive_socket(c, HTTP_KEEPALIVE_TIMEOUT); } else abort_connection(c); } diff -purN /zip/tmp/links-current/https.c links-current/https.c --- /zip/tmp/links-current/https.c Wed Dec 31 21:00:00 1969 +++ links-current/https.c Fri Apr 21 02:41:31 2000 @@ -0,0 +1,32 @@ +#ifdef HAVE_SSL +#include "links.h" +#include + +SSL_METHOD *meth; + +void ssl_init(void) +{ + OpenSSL_add_all_algorithms(); + SSL_load_error_strings(); + meth=SSLv23_client_method(); +} + +void ssl_finish(void) +{ + meth=NULL; +} + +void https_func(struct connection *c) +{ + /* setup c->https->* */ + if(!meth) + return; /* We should signal an error here, + * since we had a problem in ssl_init(); + * I wonder if it is possible at all... + */ + c->https.context=SSL_CTX_new(meth); + c->https.ssl=SSL_new(c->https.context); + http_func(c); +} + +#endif diff -purN /zip/tmp/links-current/links.h links-current/links.h --- /zip/tmp/links-current/links.h Sun Apr 9 18:17:20 2000 +++ links-current/links.h Thu Apr 20 20:08:33 2000 @@ -1,3 +1,7 @@ +#ifdef HAVE_SSL +#include +#endif + #ifdef HAVE_CONFIG_H #include "config.h" #endif @@ -549,6 +553,16 @@ struct remaining_info { int timer; }; + +#ifdef HAVE_SSL +extern SSL_METHOD *meth; /* https.c */ + +struct ssl_data { + SSL_CTX *context; + SSL *ssl; +}; +#endif + struct connection { struct connection *next; struct connection *prev; @@ -574,6 +588,9 @@ struct connection { struct remaining_info prg; int timer; int detached; +#ifdef HAVE_SSL + struct ssl_data https; +#endif }; static inline int getpri(struct connection *c) @@ -713,6 +730,15 @@ unsigned char *parse_http_header(unsigne unsigned char *parse_header_param(unsigned char *, unsigned char *); void http_func(struct connection *); void proxy_func(struct connection *); + + +/* https.c */ + +#ifdef HAVE_SSL +void https_func(struct connection *c); +void ssl_init(void); +void ssl_finish(void); +#endif /* cookies.c */ diff -purN /zip/tmp/links-current/main.c links-current/main.c --- /zip/tmp/links-current/main.c Sun Apr 9 18:16:52 2000 +++ links-current/main.c Thu Apr 20 18:14:51 2000 @@ -232,6 +232,11 @@ void init() void *info; int len; unsigned char *u; + +#ifdef HAVE_SSL + ssl_init(); +#endif + init_trans(); set_sigcld(); init_home(); @@ -276,6 +281,9 @@ void init() void terminate_all_subsystems() { +#ifdef HAVE_SSL + ssl_finish(); +#endif af_unix_close(); destroy_all_sessions(); check_bottom_halves(); diff -purN /zip/tmp/links-current/sched.c links-current/sched.c --- /zip/tmp/links-current/sched.c Fri Apr 7 17:28:46 2000 +++ links-current/sched.c Fri Apr 21 01:46:20 2000 @@ -205,6 +205,16 @@ void del_connection(struct connection *c { del_from_list(c); send_connection_info(c); +#ifdef HAVE_SSL + if(c->https.ssl) { + SSL_free(c->https.ssl); + c->https.ssl=NULL; + } + if(c->https.context) { + SSL_CTX_free(c->https.context); + c->https.context=NULL; + } +#endif mem_free(c->url); mem_free(c); } diff -purN /zip/tmp/links-current/stamp-h links-current/stamp-h --- /zip/tmp/links-current/stamp-h Wed Dec 31 21:00:00 1969 +++ links-current/stamp-h Thu Apr 20 19:04:36 2000 @@ -0,0 +1 @@ +timestamp diff -purN /zip/tmp/links-current/url.c links-current/url.c --- /zip/tmp/links-current/url.c Sat Mar 25 13:53:10 2000 +++ links-current/url.c Fri Apr 21 02:31:02 2000 @@ -9,6 +9,9 @@ struct { int file_prot; } protocols[]= { {"file", 0, file_func, NULL, 1, 1}, +#ifdef HAVE_SSL + {"https", 443, https_func, NULL, 0, 1}, +#endif {"http", 80, http_func, NULL, 0, 1}, {"proxy", 3128, proxy_func, NULL, 0, 1}, {"ftp", 21, ftp_func, NULL, 0, 1},