Changelog
+Daniel (17 March 2004)
+- Günter Knauf brought patches, code and makefiles to build curl on Novell
+ NetWare.
+
Daniel (15 March 2004)
- Lots of libcurl man pages were updated to contain references to other man
pages the recognized way so that they appear as nice hyperlinks in the HTML
cd ./lib && make -f makefile.amiga
cd ./src && make -f makefile.amiga
-
+netware:
+ cd lib && make -f Makefile.netware
+ cd src && make -f Makefile.netware
unix: all
This release includes the following bugfixes:
+ o builds and runs on Novell NetWare
o Windows builds now report OS as "i386-pc-win32"
o received signals during SSL connect is handled better
o improved PUT/POST with NTLM/Digest authentication
Ken Hirsch, Stadler Stephan, Domenico Andreoli, Patrick Smith, Tor Arntsen,
Andrés García, Tim Baker, Len Krause, Gilad, Ken Rastatter, P R Schaffner,
Greg Hewgill, Ben Greear, Jeff Lawson, Grigory Entin, Doug Porter, David
- Byron, Andy Serpa, Joe Halpin, Christopher R. Palmer
+ Byron, Andy Serpa, Joe Halpin, Christopher R. Palmer, Günter Knauf
Thanks! (and sorry if I forgot to mention someone)
- i386 HURD
- i386 Linux 1.3, 2.0, 2.2, 2.3, 2.4
- i386 NetBSD
+ - i386 Novell NetWare
- i386 OS/2
- i386 OpenBSD
- i386 SCO unix
#include <winsock2.h>
#else
-#ifdef _AIX
/* HP-UX systems version 9, 10 and 11 lack sys/select.h and so does oldish
libc5-based Linux systems. Only include it on system that are known to
require it! */
+#if defined(_AIX) || defined(NETWARE)
#include <sys/select.h>
#endif
--- /dev/null
+#################################################################
+#
+## Makefile for building libcurl.nlm (NetWare version - gnu make)
+## Use: make -f Makefile.netware
+##
+## Comments to: Guenter Knauf <eflash@gmx.net>
+#
+#################################################################
+
+# Edit the path below to point to the base of your Novell NDK.
+BASE = c:/novell
+INSTDIR = s:/libcurl
+
+# Edit the path below to point to the base of your Zlib sources.
+ZLIB_PATH = ../../../cw/zlib-src-1.1.4
+
+# Edit the vars below to change NLM target settings.
+TARGET = libcurl
+VERSION = $(LIBCURL_VERSION)
+COPYR = Copyright (c) 1996 - 2004, Daniel Stenberg, <daniel@haxx.se>
+DESCR = cURL libcurl $(LIBCURL_VERSION_STR) - http://curl.haxx.se
+MTSAFE = YES
+STACK = 64000
+SCREEN = none
+#MODULES = libz.nlm
+EXPORTS = @libcurl.imp
+
+# Edit the var below to point to your lib architecture.
+ifndef LIBARCH
+LIBARCH = LIBC
+endif
+
+# must be equal to DEBUG or NDEBUG
+DB = NDEBUG
+# DB = DEBUG
+# Optimization: -O<n> or debugging: -g
+ifeq ($(DB),NDEBUG)
+ OPT = -O2
+ OBJDIR = release
+else
+ OPT = -g
+ OBJDIR = debug
+endif
+
+# Include the version info retrieved from jk_version.h
+-include $(OBJDIR)/version.inc
+
+# The following line defines your compiler.
+ifdef METROWERKS
+ CC = mwccnlm
+else
+ CC = gcc
+endif
+# RM = rm -f
+# CP = cp -fv
+# if you want to mark the target as MTSAFE you will need a tool for
+# generating the xdc data for the linker; here's a minimal tool:
+# http://www.gknw.de/development/prgtools/mkxdc.zip
+MPKXDC = mkxdc
+
+# Global flags for all compilers
+CFLAGS = $(OPT) -D$(DB) -DNETWARE -nostdinc
+#CFLAGS += -DHAVE_LIBZ
+
+ifeq ($(CC),mwccnlm)
+LD = mwldnlm
+LDFLAGS = -nostdlib $(PRELUDE) $(OBJDIR)/*.o -o $(OBJDIR)/$(TARGET).nlm -commandfile
+CFLAGS += -gccinc -inline off -opt nointrinsics
+CFLAGS += -relax_pointers
+#CFLAGS += -w on
+ifeq ($(LIBARCH),LIBC)
+ PRELUDE = $(SDK_LIBC)/imports/libcpre.o
+ CFLAGS += -align 4 -inst mmx -proc 686
+ CFLAGS += -D_POSIX_SOURCE
+# CFLAGS += -D__ANSIC__
+else
+ PRELUDE = "$(METROWERKS)/Novell Support/libraries/runtime/prelude.obj"
+# CFLAGS += -include "$(METROWERKS)/Novell Support/headers/nlm_prefix.h"
+ CFLAGS += -align 1 -proc 586
+endif
+else
+LD = nlmconv
+LDFLAGS = -T
+CFLAGS += -fno-builtin -fpack-struct -fpcc-struct-return
+CFLAGS += -Wall # -pedantic
+ifeq ($(LIBARCH),LIBC)
+ PRELUDE = $(SDK_LIBC)/imports/libcpre.gcc.o
+ CFLAGS += -D_POSIX_SOURCE
+# CFLAGS += -D__ANSIC__
+else
+ PRELUDE = $(SDK_CLIB)/imports/clibpre.gcc.o
+ CFLAGS += -include $(BASE)/nlmconv/genlm.h
+endif
+endif
+
+LDLIBS =
+
+NDK_ROOT = $(BASE)/ndk
+SDK_CLIB = $(NDK_ROOT)/nwsdk
+SDK_LIBC = $(NDK_ROOT)/libc
+SDK_LDAP = $(NDK_ROOT)/cldapsdk/netware
+CURL_INC = ../include
+
+INCLUDES = -I$(CURL_INC)
+INCLUDES += -I$(ZLIB_PATH)
+
+ifeq ($(LIBARCH),LIBC)
+ INCLUDES += -I$(SDK_LIBC)/include -I$(SDK_LIBC)/include/nks
+ INCLUDES += -I$(SDK_LIBC)/include/winsock
+ INCLUDES += -I$(SDK_LDAP)/libc/inc
+else
+ INCLUDES += -I$(SDK_CLIB)/include/nlm -I$(SDK_CLIB)/include
+ # INCLUDES += -I$(SDK_CLIB)/include/nlm/obsolete
+ INCLUDES += -I$(SDK_LDAP)/clib/inc
+ CFLAGS += -DNETDB_USE_INTERNET
+endif
+CFLAGS += $(INCLUDES)
+
+ifeq ($(MTSAFE),YES)
+ XDCDATA = $(OBJDIR)/$(TARGET).xdc
+endif
+
+ifeq ($(OSTYPE),linux)
+DL = '
+-include $(BASE)/nlmconv/ncpfs.inc
+endif
+
+OBJS = \
+ $(OBJDIR)/file.o \
+ $(OBJDIR)/timeval.o \
+ $(OBJDIR)/base64.o \
+ $(OBJDIR)/hostip.o \
+ $(OBJDIR)/progress.o \
+ $(OBJDIR)/formdata.o \
+ $(OBJDIR)/cookie.o \
+ $(OBJDIR)/http.o \
+ $(OBJDIR)/sendf.o \
+ $(OBJDIR)/ftp.o \
+ $(OBJDIR)/url.o \
+ $(OBJDIR)/dict.o \
+ $(OBJDIR)/if2ip.o \
+ $(OBJDIR)/speedcheck.o \
+ $(OBJDIR)/getdate.o \
+ $(OBJDIR)/transfer.o \
+ $(OBJDIR)/ldap.o \
+ $(OBJDIR)/ssluse.o \
+ $(OBJDIR)/version.o \
+ $(OBJDIR)/getenv.o \
+ $(OBJDIR)/escape.o \
+ $(OBJDIR)/mprintf.o \
+ $(OBJDIR)/telnet.o \
+ $(OBJDIR)/netrc.o \
+ $(OBJDIR)/getinfo.o \
+ $(OBJDIR)/strequal.o \
+ $(OBJDIR)/easy.o \
+ $(OBJDIR)/security.o \
+ $(OBJDIR)/krb4.o \
+ $(OBJDIR)/memdebug.o \
+ $(OBJDIR)/http_chunks.o \
+ $(OBJDIR)/strtok.o \
+ $(OBJDIR)/connect.o \
+ $(OBJDIR)/hash.o \
+ $(OBJDIR)/llist.o \
+ $(OBJDIR)/multi.o \
+ $(OBJDIR)/share.o \
+ $(OBJDIR)/content_encoding.o \
+ $(OBJDIR)/http_digest.o \
+ $(OBJDIR)/http_negotiate.o \
+ $(OBJDIR)/http_ntlm.o \
+ $(OBJDIR)/md5.o \
+ $(OBJDIR)/strtoofft.o \
+ $(OBJDIR)/nwlib.o
+
+
+all: $(OBJDIR) $(OBJDIR)/version.inc $(OBJDIR)/$(TARGET).nlm
+
+$(OBJDIR)/%.o: %.c
+ @echo Compiling $<
+ @$(CC) $(CFLAGS) -c $< -o $@
+
+$(OBJDIR)/version.inc: $(CURL_INC)/curl/curl.h $(OBJDIR)
+ @echo Creating $@
+ @awk -f ../packages/netware/get_ver.awk $< > $@
+
+dist: all
+ -$(RM) $(OBJDIR)/*.o $(OBJDIR)/$(TARGET).map $(OBJDIR)/$(TARGET).ncv
+ -$(RM) $(OBJDIR)/$(TARGET).def $(OBJDIR)/version.inc $(XDCDATA)
+# -$(CP) ../changes.txt $(OBJDIR)/
+
+install: all
+ @[ -d $(INSTDIR) ] || mkdir $(INSTDIR)
+ @$(CP) $(TARGET).nlm $(INSTDIR)
+
+clean:
+ -$(RM) -r $(OBJDIR)
+
+$(OBJDIR):
+ @mkdir $(OBJDIR)
+
+$(OBJDIR)/$(TARGET).nlm: $(OBJS) $(OBJDIR)/$(TARGET).def $(XDCDATA)
+ @echo Linking $@
+ @-$(RM) $@
+ @$(LD) $(LDFLAGS) $(OBJDIR)/$(TARGET).def
+
+$(OBJDIR)/%.xdc: Makefile.netware
+ @echo Creating $@
+ @$(MPKXDC) $(XDCOPT) $@
+
+$(OBJDIR)/%.def: Makefile.netware
+ @echo $(DL)# DEF file for linking with $(LD)$(DL) > $@
+ @echo $(DL)# Do not edit this file - it is created by make!$(DL) >> $@
+ @echo $(DL)# All your changes will be lost!!$(DL) >> $@
+ @echo $(DL)#$(DL) >> $@
+ @echo $(DL)copyright "$(COPYR)"$(DL) >> $@
+ @echo $(DL)description "$(DESCR)"$(DL) >> $@
+ @echo $(DL)version $(VERSION)$(DL) >> $@
+ifdef NLMTYPE
+ @echo $(DL)type $(NLMTYPE)$(DL) >> $@
+endif
+ifdef STACK
+ @echo $(DL)stack $(STACK)$(DL) >> $@
+endif
+ifdef SCREEN
+ @echo $(DL)screenname "$(SCREEN)"$(DL) >> $@
+else
+ @echo $(DL)screenname "DEFAULT"$(DL) >> $@
+endif
+ifeq ($(DB),DEBUG)
+ @echo $(DL)debug$(DL) >> $@
+endif
+ @echo $(DL)threadname "$(TARGET)"$(DL) >> $@
+ifdef XDCDATA
+ @echo $(DL)xdcdata $(XDCDATA)$(DL) >> $@
+endif
+ifeq ($(LIBARCH),CLIB)
+ @echo $(DL)start _Prelude$(DL) >> $@
+ @echo $(DL)exit _Stop$(DL) >> $@
+ @echo $(DL)import @$(SDK_CLIB)/imports/clib.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_CLIB)/imports/threads.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_CLIB)/imports/nlmlib.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_CLIB)/imports/socklib.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_LDAP)/clib/imports/ldapsdk.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_LDAP)/clib/imports/ldapssl.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_LDAP)/clib/imports/ldapx.imp$(DL) >> $@
+ @echo $(DL)module clib$(DL) >> $@
+else
+ifeq ($(LD),nlmconv)
+ @echo $(DL)flag_on 64$(DL) >> $@
+else
+ @echo $(DL)autounload$(DL) >> $@
+endif
+ @echo $(DL)pseudopreemption$(DL) >> $@
+ @echo $(DL)start _LibCPrelude$(DL) >> $@
+ @echo $(DL)exit _LibCPostlude$(DL) >> $@
+ @echo $(DL)check _LibCCheckUnload$(DL) >> $@
+ @echo $(DL)import @$(SDK_LIBC)/imports/libc.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_LIBC)/imports/netware.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_LDAP)/libc/imports/lldapsdk.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_LDAP)/libc/imports/lldapssl.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_LDAP)/libc/imports/lldapx.imp$(DL) >> $@
+ @echo $(DL)module libc$(DL) >> $@
+endif
+ifdef MODULES
+ @echo $(DL)module $(MODULES)$(DL) >> $@
+endif
+ifdef EXPORTS
+ @echo $(DL)export $(EXPORTS)$(DL) >> $@
+endif
+ifdef IMPORTS
+ @echo $(DL)import $(IMPORTS)$(DL) >> $@
+endif
+ifeq ($(LD),nlmconv)
+ @echo $(DL)input $(OBJS)$(DL) >> $@
+ @echo $(DL)input $(PRELUDE)$(DL) >> $@
+ @echo $(DL)output $(TARGET).nlm$(DL) >> $@
+endif
+
--- /dev/null
+/* lib/config.h.in. Generated from configure.ac by autoheader. */\r
+\r
+/* to disable DICT */\r
+#undef CURL_DISABLE_DICT\r
+\r
+/* to disable FILE */\r
+#undef CURL_DISABLE_FILE\r
+\r
+/* to disable FTP */\r
+#undef CURL_DISABLE_FTP\r
+\r
+/* to disable GOPHER */\r
+#undef CURL_DISABLE_GOPHER\r
+\r
+/* to disable HTTP */\r
+#undef CURL_DISABLE_HTTP\r
+\r
+/* to disable LDAP */\r
+#undef CURL_DISABLE_LDAP\r
+\r
+/* to disable TELNET */\r
+#undef CURL_DISABLE_TELNET\r
+\r
+/* Set to explicitly specify we don't want to use thread-safe functions */\r
+#undef DISABLED_THREADSAFE\r
+\r
+/* your Entropy Gathering Daemon socket pathname */\r
+#undef EGD_SOCKET\r
+\r
+/* Define if you want to enable IPv6 support */\r
+#undef ENABLE_IPV6\r
+\r
+/* Define to 1 if you have the <alloca.h> header file. */\r
+#undef HAVE_ALLOCA_H\r
+\r
+/* Define to 1 if you have the <arpa/inet.h> header file. */\r
+#define HAVE_ARPA_INET_H 1\r
+\r
+/* Define to 1 if you have the <assert.h> header file. */\r
+#define HAVE_ASSERT_H 1\r
+\r
+/* Define to 1 if you have the `closesocket' function. */\r
+#undef HAVE_CLOSESOCKET\r
+\r
+/* Define to 1 if you have the `CRYPTO_cleanup_all_ex_data' function. */\r
+#undef HAVE_CRYPTO_CLEANUP_ALL_EX_DATA\r
+\r
+/* Define to 1 if you have the <crypto.h> header file. */\r
+#undef HAVE_CRYPTO_H\r
+\r
+/* Define to 1 if you have the <des.h> header file. */\r
+#undef HAVE_DES_H\r
+\r
+/* disabled non-blocking sockets */\r
+#undef HAVE_DISABLED_NONBLOCKING\r
+\r
+/* Define to 1 if you have the <dlfcn.h> header file. */\r
+/* XXX: #undef HAVE_DLFCN_H */\r
+#define HAVE_DLFCN_H 1\r
+\r
+/* Define to 1 if you have the `dlopen' function. */\r
+#define HAVE_DLOPEN 1\r
+\r
+/* Define to 1 if you have the <err.h> header file. */\r
+#define HAVE_ERR_H 1\r
+\r
+/* Define to 1 if you have the <fcntl.h> header file. */\r
+#define HAVE_FCNTL_H 1\r
+\r
+/* use FIONBIO for non-blocking sockets */\r
+/* XXX: #undef HAVE_FIONBIO */\r
+#define HAVE_FIONBIO 1\r
+\r
+/* Define if getaddrinfo exists and works */\r
+#undef HAVE_GETADDRINFO\r
+\r
+/* Define to 1 if you have the `geteuid' function. */\r
+#undef HAVE_GETEUID\r
+\r
+/* Define to 1 if you have the `gethostbyaddr' function. */\r
+#define HAVE_GETHOSTBYADDR 1\r
+\r
+/* Define to 1 if you have the `gethostbyaddr_r' function. */\r
+#undef HAVE_GETHOSTBYADDR_R\r
+\r
+/* gethostbyaddr_r() takes 5 args */\r
+#undef HAVE_GETHOSTBYADDR_R_5\r
+\r
+/* gethostbyaddr_r() takes 7 args */\r
+#undef HAVE_GETHOSTBYADDR_R_7\r
+\r
+/* gethostbyaddr_r() takes 8 args */\r
+#undef HAVE_GETHOSTBYADDR_R_8\r
+\r
+/* Define to 1 if you have the `gethostbyname_r' function. */\r
+#undef HAVE_GETHOSTBYNAME_R\r
+\r
+/* gethostbyname_r() takes 3 args */\r
+#undef HAVE_GETHOSTBYNAME_R_3\r
+\r
+/* gethostbyname_r() takes 5 args */\r
+#undef HAVE_GETHOSTBYNAME_R_5\r
+\r
+/* gethostbyname_r() takes 6 args */\r
+#undef HAVE_GETHOSTBYNAME_R_6\r
+\r
+/* Define to 1 if you have the `getpass_r' function. */\r
+#undef HAVE_GETPASS_R\r
+\r
+/* Define to 1 if you have the `getpwuid' function. */\r
+#undef HAVE_GETPWUID\r
+\r
+/* Define to 1 if you have the `gettimeofday' function. */\r
+#define HAVE_GETTIMEOFDAY 1\r
+\r
+/* Define to 1 if you have the `gmtime_r' function. */\r
+#undef HAVE_GMTIME_R\r
+\r
+/* if you have the gssapi libraries */\r
+#undef HAVE_GSSAPI\r
+\r
+/* if you have the Heimdal gssapi libraries */\r
+#undef HAVE_GSSHEIMDAL\r
+\r
+/* if you have the MIT gssapi libraries */\r
+#undef HAVE_GSSMIT\r
+\r
+/* Define to 1 if you have the `inet_addr' function. */\r
+#define HAVE_INET_ADDR 1\r
+\r
+/* Define to 1 if you have the `inet_ntoa' function. */\r
+#define HAVE_INET_NTOA 1\r
+\r
+/* Define to 1 if you have the `inet_ntoa_r' function. */\r
+#undef HAVE_INET_NTOA_R\r
+\r
+/* inet_ntoa_r() is declared */\r
+#undef HAVE_INET_NTOA_R_DECL\r
+\r
+/* Define to 1 if you have the `inet_pton' function. */\r
+#define HAVE_INET_PTON 1\r
+\r
+/* Define to 1 if you have the <inttypes.h> header file. */\r
+#define HAVE_INTTYPES_H 1\r
+\r
+/* use ioctlsocket() for non-blocking sockets */\r
+#undef HAVE_IOCTLSOCKET\r
+\r
+/* use Ioctlsocket() for non-blocking sockets */\r
+#undef HAVE_IOCTLSOCKET_CASE\r
+\r
+/* Define to 1 if you have the <io.h> header file. */\r
+#undef HAVE_IO_H\r
+\r
+/* if you have the Kerberos4 libraries (including -ldes) */\r
+#undef HAVE_KRB4\r
+\r
+/* Define to 1 if you have the `krb_get_our_ip_for_realm' function. */\r
+#undef HAVE_KRB_GET_OUR_IP_FOR_REALM\r
+\r
+/* Define to 1 if you have the <krb.h> header file. */\r
+#undef HAVE_KRB_H\r
+\r
+/* Define to 1 if you have the `crypto' library (-lcrypto). */\r
+#undef HAVE_LIBCRYPTO\r
+\r
+/* Define to 1 if you have the `dl' library (-ldl). */\r
+#undef HAVE_LIBDL\r
+\r
+/* Define to 1 if you have the `nsl' library (-lnsl). */\r
+#undef HAVE_LIBNSL\r
+\r
+/* Define to 1 if you have the `resolv' library (-lresolv). */\r
+#undef HAVE_LIBRESOLV\r
+\r
+/* Define to 1 if you have the `resolve' library (-lresolve). */\r
+#undef HAVE_LIBRESOLVE\r
+\r
+/* Define to 1 if you have the `socket' library (-lsocket). */\r
+#undef HAVE_LIBSOCKET\r
+\r
+/* Define to 1 if you have the `ssl' library (-lssl). */\r
+#undef HAVE_LIBSSL\r
+\r
+/* If zlib is available */\r
+#undef HAVE_LIBZ\r
+//#define HAVE_LIBZ 1\r
+\r
+/* Define to 1 if you have the <limits.h> header file. */\r
+#define HAVE_LIMITS_H 1\r
+\r
+/* Define to 1 if you have the `localtime_r' function. */\r
+#undef HAVE_LOCALTIME_R\r
+\r
+/* if your compiler supports 'long long' */\r
+#define HAVE_LONGLONG 1\r
+\r
+/* Define to 1 if you have the <malloc.h> header file. */\r
+#define HAVE_MALLOC_H 1\r
+\r
+/* Define to 1 if you have the <memory.h> header file. */\r
+#undef HAVE_MEMORY_H\r
+\r
+/* Define to 1 if you have the <netdb.h> header file. */\r
+#define HAVE_NETDB_H 1\r
+\r
+/* Define to 1 if you have the <netinet/in.h> header file. */\r
+#define HAVE_NETINET_IN_H 1\r
+\r
+/* Define to 1 if you have the <net/if.h> header file. */\r
+#undef HAVE_NET_IF_H\r
+\r
+/* Define to 1 if you have the <openssl/crypto.h> header file. */\r
+#undef HAVE_OPENSSL_CRYPTO_H\r
+\r
+/* Define to 1 if you have the <openssl/engine.h> header file. */\r
+#undef HAVE_OPENSSL_ENGINE_H\r
+\r
+/* Define to 1 if you have the <openssl/err.h> header file. */\r
+#undef HAVE_OPENSSL_ERR_H\r
+\r
+/* Define to 1 if you have the <openssl/pem.h> header file. */\r
+#undef HAVE_OPENSSL_PEM_H\r
+\r
+/* Define to 1 if you have the <openssl/rsa.h> header file. */\r
+#undef HAVE_OPENSSL_RSA_H\r
+\r
+/* Define to 1 if you have the <openssl/ssl.h> header file. */\r
+#undef HAVE_OPENSSL_SSL_H\r
+\r
+/* Define to 1 if you have the <openssl/x509.h> header file. */\r
+#undef HAVE_OPENSSL_X509_H\r
+\r
+/* use O_NONBLOCK for non-blocking sockets */\r
+#undef HAVE_O_NONBLOCK\r
+\r
+/* Define to 1 if you have the <pem.h> header file. */\r
+#undef HAVE_PEM_H\r
+\r
+/* Define to 1 if you have the `perror' function. */\r
+#undef HAVE_PERROR\r
+\r
+/* Define to 1 if you have the `poll' function. */\r
+#undef HAVE_POLL\r
+\r
+/* Define to 1 if you have the <pwd.h> header file. */\r
+#undef HAVE_PWD_H\r
+\r
+/* Define to 1 if you have the `RAND_egd' function. */\r
+#undef HAVE_RAND_EGD\r
+\r
+/* Define to 1 if you have the `RAND_screen' function. */\r
+#undef HAVE_RAND_SCREEN\r
+\r
+/* Define to 1 if you have the `RAND_status' function. */\r
+#undef HAVE_RAND_STATUS\r
+\r
+/* Define to 1 if you have the <rsa.h> header file. */\r
+#undef HAVE_RSA_H\r
+\r
+/* Define to 1 if you have the `select' function. */\r
+#define HAVE_SELECT 1\r
+\r
+/* Define to 1 if you have the <setjmp.h> header file. */\r
+#define HAVE_SETJMP_H 1\r
+\r
+/* Define to 1 if you have the <sgtty.h> header file. */\r
+#undef HAVE_SGTTY_H\r
+\r
+/* Define to 1 if you have the `sigaction' function. */\r
+#undef HAVE_SIGACTION\r
+\r
+/* Define to 1 if you have the `siginterrupt' function. */\r
+#undef HAVE_SIGINTERRUPT\r
+\r
+/* Define to 1 if you have the `signal' function. */\r
+#define HAVE_SIGNAL 1\r
+\r
+/* If you have sigsetjmp */\r
+#undef HAVE_SIGSETJMP\r
+\r
+/* Define to 1 if you have the `socket' function. */\r
+#define HAVE_SOCKET 1\r
+\r
+/* use SO_NONBLOCK for non-blocking sockets */\r
+#undef HAVE_SO_NONBLOCK\r
+\r
+/* Define this if you have the SPNEGO library fbopenssl */\r
+#undef HAVE_SPNEGO\r
+\r
+/* Define to 1 if you have the <ssl.h> header file. */\r
+#undef HAVE_SSL_H\r
+\r
+/* Define to 1 if you have the <stdint.h> header file. */\r
+#define HAVE_STDINT_H 1\r
+\r
+/* Define to 1 if you have the <stdlib.h> header file. */\r
+#define HAVE_STDLIB_H 1\r
+\r
+/* Define to 1 if you have the `strcasecmp' function. */\r
+#define HAVE_STRCASECMP 1\r
+\r
+/* Define to 1 if you have the `strcmpi' function. */\r
+#undef HAVE_STRCMPI\r
+\r
+/* Define to 1 if you have the `strdup' function. */\r
+#define HAVE_STRDUP 1\r
+\r
+/* Define to 1 if you have the `strftime' function. */\r
+#define HAVE_STRFTIME 1\r
+\r
+/* Define to 1 if you have the `stricmp' function. */\r
+#undef HAVE_STRICMP\r
+\r
+/* Define to 1 if you have the <strings.h> header file. */\r
+#undef HAVE_STRINGS_H\r
+\r
+/* Define to 1 if you have the <string.h> header file. */\r
+#define HAVE_STRING_H 1\r
+\r
+/* Define to 1 if you have the `strlcat' function. */\r
+#define HAVE_STRLCAT 1\r
+\r
+/* Define to 1 if you have the `strlcpy' function. */\r
+#define HAVE_STRLCPY 1\r
+\r
+/* Define to 1 if you have the `strstr' function. */\r
+#define HAVE_STRSTR 1\r
+\r
+/* Define to 1 if you have the `strtok_r' function. */\r
+#undef HAVE_STRTOK_R\r
+\r
+/* Define to 1 if you have the `strtoll' function. */\r
+#undef HAVE_STRTOLL\r
+\r
+/* Define to 1 if you have the <sys/param.h> header file. */\r
+#define HAVE_SYS_PARAM_H 1\r
+\r
+/* Define to 1 if you have the <sys/poll.h> header file. */\r
+#undef HAVE_SYS_POLL_H\r
+\r
+/* Define to 1 if you have the <sys/select.h> header file. */\r
+#define HAVE_SYS_SELECT_H 1\r
+\r
+/* Define to 1 if you have the <sys/socket.h> header file. */\r
+#define HAVE_SYS_SOCKET_H 1\r
+\r
+/* Define to 1 if you have the <sys/sockio.h> header file. */\r
+#define HAVE_SYS_SOCKIO_H 1\r
+\r
+/* Define to 1 if you have the <sys/stat.h> header file. */\r
+#define HAVE_SYS_STAT_H 1\r
+\r
+/* Define to 1 if you have the <sys/time.h> header file. */\r
+#define HAVE_SYS_TIME_H 1\r
+\r
+/* Define to 1 if you have the <sys/types.h> header file. */\r
+#define HAVE_SYS_TYPES_H 1\r
+\r
+/* Define to 1 if you have the <sys/utime.h> header file. */\r
+#undef HAVE_SYS_UTIME_H\r
+\r
+/* Define to 1 if you have the `tcgetattr' function. */\r
+#undef HAVE_TCGETATTR\r
+\r
+/* Define to 1 if you have the `tcsetattr' function. */\r
+#undef HAVE_TCSETATTR\r
+\r
+/* Define to 1 if you have the <termios.h> header file. */\r
+#define HAVE_TERMIOS_H 1\r
+\r
+/* Define to 1 if you have the <termio.h> header file. */\r
+#undef HAVE_TERMIO_H\r
+\r
+/* Define to 1 if you have the <time.h> header file. */\r
+#define HAVE_TIME_H 1\r
+\r
+/* Define to 1 if you have the `uname' function. */\r
+#define HAVE_UNAME 1\r
+\r
+/* Define to 1 if you have the <unistd.h> header file. */\r
+#define HAVE_UNISTD_H 1\r
+\r
+/* Define to 1 if you have the `utime' function. */\r
+#undef HAVE_UTIME\r
+\r
+/* Define to 1 if you have the <utime.h> header file. */\r
+#undef HAVE_UTIME_H\r
+\r
+/* Define to 1 if you have the <winsock.h> header file. */\r
+#undef HAVE_WINSOCK_H\r
+\r
+/* Define this symbol if your OS supports changing the contents of argv */\r
+#undef HAVE_WRITABLE_ARGV\r
+\r
+/* Define to 1 if you have the <x509.h> header file. */\r
+#undef HAVE_X509_H\r
+\r
+/* if you have the zlib.h header file */\r
+#define HAVE_ZLIB_H 1\r
+\r
+/* need REENTRANT defined */\r
+#undef NEED_REENTRANT\r
+\r
+/* cpu-machine-OS */\r
+#define OS "i386-pc-NetWare"\r
+\r
+/* Name of package */\r
+#undef PACKAGE\r
+\r
+/* Define to the address where bug reports for this package should be sent. */\r
+#undef PACKAGE_BUGREPORT\r
+\r
+/* Define to the full name of this package. */\r
+#undef PACKAGE_NAME\r
+\r
+/* Define to the full name and version of this package. */\r
+#undef PACKAGE_STRING\r
+\r
+/* Define to the one symbol short name of this package. */\r
+#undef PACKAGE_TARNAME\r
+\r
+/* Define to the version of this package. */\r
+#undef PACKAGE_VERSION\r
+\r
+/* a suitable file to read random data from */\r
+#undef RANDOM_FILE\r
+\r
+/* Define as the return type of signal handlers (`int' or `void'). */\r
+#define RETSIGTYPE void\r
+\r
+/* Define to the type of arg 1 for `select'. */\r
+#undef SELECT_TYPE_ARG1\r
+\r
+/* Define to the type of args 2, 3 and 4 for `select'. */\r
+#undef SELECT_TYPE_ARG234\r
+\r
+/* Define to the type of arg 5 for `select'. */\r
+#undef SELECT_TYPE_ARG5\r
+\r
+/* The size of a `curl_off_t', as computed by sizeof. */\r
+#define SIZEOF_CURL_OFF_T 4\r
+\r
+/* Define to 1 if you have the ANSI C header files. */\r
+/* XXX: #undef STDC_HEADERS */\r
+#define STDC_HEADERS 1\r
+\r
+/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */\r
+#define TIME_WITH_SYS_TIME 1\r
+\r
+/* Define if you want to enable ares support */\r
+#undef USE_ARES\r
+\r
+/* Version number of package */\r
+#undef VERSION\r
+\r
+/* Define to 1 if on AIX 3.\r
+ System headers sometimes define this.\r
+ We just want to avoid a redefinition error message. */\r
+#ifndef _ALL_SOURCE\r
+# undef _ALL_SOURCE\r
+#endif\r
+\r
+/* Number of bits in a file offset, on hosts where this is settable. */\r
+#undef _FILE_OFFSET_BITS\r
+\r
+/* Define for large files, on AIX-style hosts. */\r
+#undef _LARGE_FILES\r
+\r
+/* Define to empty if `const' does not conform to ANSI C. */\r
+#undef const\r
+\r
+/* type to use in place of in_addr_t if not defined */\r
+#undef in_addr_t\r
+\r
+/* Define to `unsigned' if <sys/types.h> does not define. */\r
+#undef size_t\r
+\r
+/* type to use in place of socklen_t if not defined */\r
+#define socklen_t int\r
+\r
+/* the signed version of size_t */\r
+#undef ssize_t\r
+\r
+\r
#include <stdlib.h> /* required for free() prototype, without it, this crashes
on macos 68K */
#endif
+#if (defined(HAVE_FIONBIO) && defined(__NOVELL_LIBC__))
+#include <sys/filio.h>
+#endif
+#if (defined(NETWARE) && defined(__NOVELL_LIBC__))
+#undef in_addr_t
+#define in_addr_t unsigned long
+#endif
#ifdef VMS
#include <in.h>
#include <inet.h>
#include <errno.h>
#endif
+#if (defined(NETWARE) && defined(__NOVELL_LIBC__))
+#undef in_addr_t
+#define in_addr_t unsigned long
+#endif
+
#include <curl/curl.h>
#include "urldata.h"
#include "sendf.h"
#include <setjmp.h>
#endif
+#if (defined(NETWARE) && defined(__NOVELL_LIBC__))
+#undef in_addr_t
+#define in_addr_t unsigned long
+#endif
+
#include "urldata.h"
#include "sendf.h"
#include "hostip.h"
#endif
#if !defined(WIN32) && !defined(__BEOS__) && !defined(__CYGWIN32__) && \
- !defined(__riscos__) && !defined(__INTERIX)
+ !defined(__riscos__) && !defined(__INTERIX) && !defined(NETWARE)
#ifdef HAVE_SYS_SOCKET_H
#include <sys/socket.h>
/* -- end of if2ip() -- */
#else
-#define if2ip(x) NULL
+char *Curl_if2ip(char *interface, char *buf, int buf_size)
+{
+ return NULL;
+}
#endif
--- /dev/null
+#\r
+# Definition file for the NLM version of the LIBCURL library from curl\r
+#\r
+# (LIBCURL)\r
+ curl_easy_cleanup,\r
+ curl_easy_getinfo,\r
+ curl_easy_init,\r
+ curl_easy_perform,\r
+ curl_easy_setopt,\r
+ curl_escape,\r
+ curl_unescape,\r
+ curl_formparse,\r
+ curl_formfree,\r
+ curl_getdate,\r
+ curl_getenv,\r
+ curl_global_cleanup,\r
+ curl_global_init,\r
+ curl_slist_append,\r
+ curl_slist_free_all,\r
+ curl_version,\r
+ curl_maprintf,\r
+ curl_mfprintf,\r
+ curl_mprintf,\r
+ curl_msprintf,\r
+ curl_msnprintf,\r
+ curl_mvfprintf,\r
+ curl_strequal,\r
+ curl_strnequal,\r
+ curl_easy_duphandle,\r
+ curl_formadd,\r
+ curl_multi_init,\r
+ curl_multi_add_handle,\r
+ curl_multi_remove_handle,\r
+ curl_multi_fdset,\r
+ curl_multi_perform,\r
+ curl_multi_cleanup,\r
+ curl_multi_info_read,\r
+ curl_free,\r
+ curl_version_info,\r
+ curl_share_init,\r
+ curl_share_setopt,\r
+ curl_share_cleanup\r
+\r
+\r
--- /dev/null
+/***************************************************************************\r
+ * _ _ ____ _\r
+ * Project ___| | | | _ \| |\r
+ * / __| | | | |_) | |\r
+ * | (__| |_| | _ <| |___\r
+ * \___|\___/|_| \_\_____|\r
+ *\r
+ * Copyright (C) 1998 - 2004, Daniel Stenberg, <daniel@haxx.se>, et al.\r
+ *\r
+ * This software is licensed as described in the file COPYING, which\r
+ * you should have received as part of this distribution. The terms\r
+ * are also available at http://curl.haxx.se/docs/copyright.html.\r
+ *\r
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell\r
+ * copies of the Software, and permit persons to whom the Software is\r
+ * furnished to do so, under the terms of the COPYING file.\r
+ *\r
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY\r
+ * KIND, either express or implied.\r
+ *\r
+ * $Id$\r
+ ***************************************************************************/\r
+\r
+/* This file is only used in the NetWare build */\r
+\r
+#include <errno.h>\r
+#include <string.h>\r
+#include <stdlib.h>\r
+#include <library.h>\r
+#include <netware.h>\r
+#include <screen.h>\r
+#include <nks/thread.h>\r
+#include <nks/synch.h>\r
+\r
+\r
+typedef struct\r
+{\r
+ int _errno;\r
+ void *twentybytes;\r
+} libthreaddata_t;\r
+\r
+typedef struct\r
+{\r
+ int x;\r
+ int y;\r
+ int z;\r
+ void *tenbytes;\r
+ NXKey_t perthreadkey; // if -1, no key obtained...\r
+ NXMutex_t *lock;\r
+} libdata_t;\r
+\r
+int gLibId = -1;\r
+void *gLibHandle = (void *) NULL;\r
+rtag_t gAllocTag = (rtag_t) NULL;\r
+NXMutex_t *gLibLock = (NXMutex_t *) NULL;\r
+\r
+\r
+\r
+// internal library function prototypes...\r
+int DisposeLibraryData ( void * );\r
+void DisposeThreadData ( void * );\r
+int GetOrSetUpData ( int id, libdata_t **data, libthreaddata_t **threaddata );\r
+\r
+\r
+int _NonAppStart\r
+(\r
+ void *NLMHandle,\r
+ void *errorScreen,\r
+ const char *cmdLine,\r
+ const char *loadDirPath,\r
+ size_t uninitializedDataLength,\r
+ void *NLMFileHandle,\r
+ int (*readRoutineP)( int conn, void *fileHandle, size_t offset,\r
+ size_t nbytes, size_t *bytesRead, void *buffer ),\r
+ size_t customDataOffset,\r
+ size_t customDataSize,\r
+ int messageCount,\r
+ const char **messages\r
+)\r
+{\r
+ NX_LOCK_INFO_ALLOC(liblock, "Per-Application Data Lock", 0);\r
+\r
+#ifndef __GNUC__\r
+#pragma unused(cmdLine)\r
+#pragma unused(loadDirPath)\r
+#pragma unused(uninitializedDataLength)\r
+#pragma unused(NLMFileHandle)\r
+#pragma unused(readRoutineP)\r
+#pragma unused(customDataOffset)\r
+#pragma unused(customDataSize)\r
+#pragma unused(messageCount)\r
+#pragma unused(messages)\r
+#endif\r
+\r
+/*\r
+** Here we process our command line, post errors (to the error screen),\r
+** perform initializations and anything else we need to do before being able\r
+** to accept calls into us. If we succeed, we return non-zero and the NetWare\r
+** Loader will leave us up, otherwise we fail to load and get dumped.\r
+*/\r
+ gAllocTag = AllocateResourceTag(NLMHandle,\r
+ "<library-name> memory allocations", AllocSignature);\r
+\r
+ if (!gAllocTag)\r
+ {\r
+ OutputToScreen(errorScreen, "Unable to allocate resource tag for "\r
+ "library memory allocations.\n");\r
+ return -1;\r
+ }\r
+\r
+ gLibId = register_library(DisposeLibraryData);\r
+\r
+ if (gLibId < -1)\r
+ {\r
+ OutputToScreen(errorScreen, "Unable to register library with kernel.\n");\r
+ return -1;\r
+ }\r
+\r
+ gLibHandle = NLMHandle;\r
+\r
+ gLibLock = NXMutexAlloc(0, 0, &liblock);\r
+\r
+ if (!gLibLock)\r
+ {\r
+ OutputToScreen(errorScreen, "Unable to allocate library data lock.\n");\r
+ return -1;\r
+ }\r
+\r
+ return 0;\r
+}\r
+\r
+void _NonAppStop( void )\r
+{\r
+/*\r
+** Here we clean up any resources we allocated. Resource tags is a big part\r
+** of what we created, but NetWare doesn't ask us to free those.\r
+*/\r
+ (void) unregister_library(gLibId);\r
+ NXMutexFree(gLibLock);\r
+}\r
+\r
+int _NonAppCheckUnload( void )\r
+{\r
+/*\r
+** This function cannot be the first in the file for if the file is linked\r
+** first, then the check-unload function's offset will be nlmname.nlm+0\r
+** which is how to tell that there isn't one. When the check function is\r
+** first in the linked objects, it is ambiguous. For this reason, we will\r
+** put it inside this file after the stop function.\r
+**\r
+** Here we check to see if it's alright to ourselves to be unloaded. If not,\r
+** we return a non-zero value. Right now, there isn't any reason not to allow\r
+** it.\r
+*/\r
+ return 0;\r
+}\r
+\r
+int GetOrSetUpData\r
+(\r
+ int id,\r
+ libdata_t **appData,\r
+ libthreaddata_t **threadData\r
+)\r
+{\r
+ int err;\r
+ libdata_t *app_data;\r
+ libthreaddata_t *thread_data;\r
+ NXKey_t key;\r
+// NXMutex_t *lock;\r
+ NX_LOCK_INFO_ALLOC(liblock, "Application Data Lock", 0);\r
+\r
+ err = 0;\r
+ thread_data = (libthreaddata_t *) NULL;\r
+\r
+/*\r
+** Attempt to get our data for the application calling us. This is where we\r
+** store whatever application-specific information we need to carry in support\r
+** of calling applications.\r
+*/\r
+ app_data = (libdata_t *) get_app_data(id);\r
+\r
+ if (!app_data)\r
+ {\r
+/*\r
+** This application hasn't called us before; set up application AND per-thread\r
+** data. Of course, just in case a thread from this same application is calling\r
+** us simultaneously, we better lock our application data-creation mutex. We\r
+** also need to recheck for data after we acquire the lock because WE might be\r
+** that other thread that was too late to create the data and the first thread\r
+** in will have created it.\r
+*/\r
+ NXLock(gLibLock);\r
+\r
+ if (!(app_data = (libdata_t *) get_app_data(id)))\r
+ {\r
+ app_data = (libdata_t *) malloc(sizeof(libdata_t));\r
+\r
+ if (app_data)\r
+ {\r
+ memset(app_data, 0, sizeof(libdata_t));\r
+\r
+ app_data->tenbytes = malloc(10);\r
+ app_data->lock = NXMutexAlloc(0, 0, &liblock);\r
+\r
+ if (!app_data->tenbytes || !app_data->lock)\r
+ {\r
+ if (app_data->lock)\r
+ NXMutexFree(app_data->lock);\r
+\r
+ free(app_data);\r
+ app_data = (libdata_t *) NULL;\r
+ err = ENOMEM;\r
+ }\r
+\r
+ if (app_data)\r
+ {\r
+/*\r
+** Here we burn in the application data that we were trying to get by calling\r
+** get_app_data(). Next time we call the first function, we'll get this data\r
+** we're just now setting. We also go on here to establish the per-thread data\r
+** for the calling thread, something we'll have to do on each application\r
+** thread the first time it calls us.\r
+*/\r
+ err = set_app_data(gLibId, app_data);\r
+\r
+ if (err)\r
+ {\r
+ free(app_data);\r
+ app_data = (libdata_t *) NULL;\r
+ err = ENOMEM;\r
+ }\r
+ else\r
+ {\r
+ // create key for thread-specific data...\r
+ err = NXKeyCreate(DisposeThreadData, (void *) NULL, &key);\r
+\r
+ if (err) // (no more keys left?)\r
+ key = -1;\r
+\r
+ app_data->perthreadkey = key;\r
+ }\r
+ }\r
+ }\r
+ }\r
+\r
+ NXUnlock(gLibLock);\r
+ }\r
+\r
+ if (app_data)\r
+ {\r
+ key = app_data->perthreadkey;\r
+\r
+ if ( key != -1 // couldn't create a key? no thread data\r
+ && !(err = NXKeyGetValue(key, (void **) &thread_data))\r
+ && !thread_data)\r
+ {\r
+/*\r
+** Allocate the per-thread data for the calling thread. Regardless of whether\r
+** there was already application data or not, this may be the first call by a\r
+** a new thread. The fact that we allocation 20 bytes on a pointer is not very\r
+** important, this just helps to demonstrate that we can have arbitrarily\r
+** complex per-thread data.\r
+*/\r
+ thread_data = (libthreaddata_t *) malloc(sizeof(libthreaddata_t));\r
+\r
+ if (thread_data)\r
+ {\r
+ thread_data->_errno = 0;\r
+ thread_data->twentybytes = malloc(20);\r
+\r
+ if (!thread_data->twentybytes)\r
+ {\r
+ free(thread_data);\r
+ thread_data = (libthreaddata_t *) NULL;\r
+ err = ENOMEM;\r
+ }\r
+\r
+ if ((err = NXKeySetValue(key, thread_data)))\r
+ {\r
+ free(thread_data->twentybytes);\r
+ free(thread_data);\r
+ thread_data = (libthreaddata_t *) NULL;\r
+ }\r
+ }\r
+ }\r
+ }\r
+\r
+ if (appData)\r
+ *appData = app_data;\r
+\r
+ if (threadData)\r
+ *threadData = thread_data;\r
+\r
+ return err;\r
+}\r
+\r
+int DisposeLibraryData\r
+(\r
+ void *data\r
+)\r
+{\r
+ if (data)\r
+ {\r
+ void *tenbytes = ((libdata_t *) data)->tenbytes;\r
+\r
+ if (tenbytes)\r
+ free(tenbytes);\r
+\r
+ free(data);\r
+ }\r
+\r
+ return 0;\r
+}\r
+\r
+void DisposeThreadData\r
+(\r
+ void *data\r
+)\r
+{\r
+ if (data)\r
+ {\r
+ void *twentybytes = ((libthreaddata_t *) data)->twentybytes;\r
+\r
+ if (twentybytes)\r
+ free(twentybytes);\r
+\r
+ free(data);\r
+ }\r
+}\r
/* hand-modified VMS config.h! */
#include "config-vms.h"
#endif
+#ifdef NETWARE
+/* hand-modified NetWare config.h! */
+#include "config-netware.h"
+#endif
#ifdef macintosh
/* hand-modified MacOS config.h! */
#include "config-mac.h"
#endif
#endif
+#ifdef NETWARE
+#undef HAVE_ALARM
+#endif
+
#endif /* __CONFIG_H */
SUBDIRS = Win32 Linux Solaris EPM DOS vms
-EXTRA_DIST = README
+EXTRA_DIST = README NetWare/get_ver.awk
--- /dev/null
+# fetch libcurl version number from input file and write them to STDOUT\r
+BEGIN {\r
+ while ((getline < ARGV[1]) > 0) {\r
+ if (match ($0, /^#define LIBCURL_VERSION_MAJOR [^"]+/)) {\r
+ libcurl_ver_major = substr($3, 1, length($3));\r
+ }\r
+ else if (match ($0, /^#define LIBCURL_VERSION_MINOR [^"]+/)) {\r
+ libcurl_ver_minor = substr($3, 1, length($3));\r
+ }\r
+ else if (match ($0, /^#define LIBCURL_VERSION_PATCH [^"]+/)) {\r
+ libcurl_ver_patch = substr($3, 1, length($3));\r
+ }\r
+ }\r
+ libcurl_ver = libcurl_ver_major "," libcurl_ver_minor "," libcurl_ver_patch;\r
+ libcurl_ver_str = libcurl_ver_major "." libcurl_ver_minor "." libcurl_ver_patch;\r
+\r
+ print "LIBCURL_VERSION = " libcurl_ver "";\r
+ print "LIBCURL_VERSION_STR = " libcurl_ver_str "";\r
+\r
+}\r
--- /dev/null
+#################################################################
+#
+## Makefile for building curl.nlm (NetWare version - gnu make)
+## Use: make -f Makefile.netware
+##
+## Comments to: Guenter Knauf <eflash@gmx.net>
+#
+#################################################################
+
+# Edit the path below to point to the base of your Novell NDK.
+BASE = c:/novell
+INSTDIR = s:/libcurl
+
+# Edit the path below to point to the base of your Zlib sources.
+ZLIB_PATH = ../../../cw/zlib-src-1.1.4
+
+# Edit the vars below to change NLM target settings.
+TARGET = curl
+VERSION = $(LIBCURL_VERSION)
+COPYR = Copyright (c) 1996 - 2004, Daniel Stenberg, <daniel@haxx.se>
+DESCR = cURL $(LIBCURL_VERSION_STR) - http://curl.haxx.se
+MTSAFE = YES
+STACK = 64000
+SCREEN = $(TARGET) commandline utility
+MODULES = libcurl.nlm
+IMPORTS = @../lib/libcurl.imp
+
+# Edit the var below to point to your lib architecture.
+ifndef LIBARCH
+LIBARCH = LIBC
+endif
+
+# must be equal to DEBUG or NDEBUG
+DB = NDEBUG
+# DB = DEBUG
+# Optimization: -O<n> or debugging: -g
+ifeq ($(DB),NDEBUG)
+ OPT = -O2
+ OBJDIR = release
+else
+ OPT = -g
+ OBJDIR = debug
+endif
+
+# Include the version info retrieved from jk_version.h
+-include $(OBJDIR)/version.inc
+
+# The following line defines your compiler.
+ifdef METROWERKS
+ CC = mwccnlm
+else
+ CC = gcc
+endif
+# RM = rm -f
+# CP = cp -fv
+# if you want to mark the target as MTSAFE you will need a tool for
+# generating the xdc data for the linker; here's a minimal tool:
+# http://www.gknw.de/development/prgtools/mkxdc.zip
+MPKXDC = mkxdc
+
+# Global flags for all compilers
+CFLAGS = $(OPT) -D$(DB) -DNETWARE -nostdinc
+CFLAGS += -DUSE_MANUAL
+#CFLAGS += -DHAVE_LIBZ
+
+ifeq ($(CC),mwccnlm)
+LD = mwldnlm
+LDFLAGS = -nostdlib $(PRELUDE) $(OBJDIR)/*.o -o $(OBJDIR)/$(TARGET).nlm -commandfile
+CFLAGS += -gccinc -inline off -opt nointrinsics
+CFLAGS += -relax_pointers
+#CFLAGS += -w on
+ifeq ($(LIBARCH),LIBC)
+ PRELUDE = $(SDK_LIBC)/imports/libcpre.o
+ CFLAGS += -align 4 -inst mmx -proc 686
+ CFLAGS += -D_POSIX_SOURCE
+# CFLAGS += -D__ANSIC__
+else
+ PRELUDE = "$(METROWERKS)/Novell Support/libraries/runtime/prelude.obj"
+# CFLAGS += -include "$(METROWERKS)/Novell Support/headers/nlm_prefix.h"
+ CFLAGS += -align 1 -proc 586
+endif
+else
+LD = nlmconv
+LDFLAGS = -T
+CFLAGS += -fno-builtin -fpack-struct -fpcc-struct-return
+CFLAGS += -Wall #-Wno-main # -pedantic
+ifeq ($(LIBARCH),LIBC)
+ PRELUDE = $(SDK_LIBC)/imports/libcpre.gcc.o
+ CFLAGS += -D_POSIX_SOURCE
+# CFLAGS += -D__ANSIC__
+else
+ PRELUDE = $(SDK_CLIB)/imports/clibpre.gcc.o
+ CFLAGS += -include $(BASE)/nlmconv/genlm.h
+endif
+endif
+
+LDLIBS =
+
+NDK_ROOT = $(BASE)/ndk
+SDK_CLIB = $(NDK_ROOT)/nwsdk
+SDK_LIBC = $(NDK_ROOT)/libc
+SDK_LDAP = $(NDK_ROOT)/cldapsdk/netware
+CURL_INC = ../include
+CURL_LIB = ../lib
+
+INCLUDES = -I$(CURL_INC) -I$(CURL_LIB)
+INCLUDES += -I$(ZLIB_PATH)
+
+ifeq ($(LIBARCH),LIBC)
+ INCLUDES += -I$(SDK_LIBC)/include -I$(SDK_LIBC)/include/nks
+ INCLUDES += -I$(SDK_LIBC)/include/winsock
+ INCLUDES += -I$(SDK_LDAP)/libc/inc
+else
+ INCLUDES += -I$(SDK_CLIB)/include/nlm -I$(SDK_CLIB)/include
+ INCLUDES += -I$(SDK_LDAP)/clib/inc
+ CFLAGS += -DNETDB_USE_INTERNET
+endif
+CFLAGS += $(INCLUDES)
+
+ifeq ($(MTSAFE),YES)
+ XDCDATA = $(OBJDIR)/$(TARGET).xdc
+endif
+
+ifeq ($(OSTYPE),linux)
+DL = '
+-include $(BASE)/nlmconv/ncpfs.inc
+endif
+
+OBJS = \
+ $(OBJDIR)/main.o \
+ $(OBJDIR)/hugehelp.o \
+ $(OBJDIR)/urlglob.o \
+ $(OBJDIR)/writeout.o \
+ $(OBJDIR)/getpass.o \
+ $(OBJDIR)/homedir.o
+
+
+all: $(OBJDIR) $(OBJDIR)/version.inc $(OBJDIR)/$(TARGET).nlm
+
+$(OBJDIR)/%.o: %.c
+ @echo Compiling $<
+ @$(CC) $(CFLAGS) -c $< -o $@
+
+$(OBJDIR)/version.inc: $(CURL_INC)/curl/curl.h $(OBJDIR)
+ @echo Creating $@
+ @awk -f ../packages/netware/get_ver.awk $< > $@
+
+dist: all
+ -$(RM) $(OBJDIR)/*.o $(OBJDIR)/$(TARGET).map $(OBJDIR)/$(TARGET).ncv
+ -$(RM) $(OBJDIR)/$(TARGET).def $(OBJDIR)/version.inc $(XDCDATA)
+# -$(CP) ../changes.txt $(OBJDIR)/
+
+install: all
+ @[ -d $(INSTDIR) ] || mkdir $(INSTDIR)
+ @$(CP) $(TARGET).nlm $(INSTDIR)
+
+clean:
+ -$(RM) -r $(OBJDIR)
+
+$(OBJDIR):
+ @mkdir $(OBJDIR)
+
+$(OBJDIR)/$(TARGET).nlm: $(OBJS) $(OBJDIR)/$(TARGET).def $(XDCDATA)
+ @echo Linking $@
+ @-$(RM) $@
+ @$(LD) $(LDFLAGS) $(OBJDIR)/$(TARGET).def
+
+$(OBJDIR)/%.xdc: Makefile.netware
+ @echo Creating $@
+ @$(MPKXDC) $(XDCOPT) $@
+
+$(OBJDIR)/%.def: Makefile.netware
+ @echo $(DL)# DEF file for linking with $(LD)$(DL) > $@
+ @echo $(DL)# Do not edit this file - it is created by make!$(DL) >> $@
+ @echo $(DL)# All your changes will be lost!!$(DL) >> $@
+ @echo $(DL)#$(DL) >> $@
+ @echo $(DL)copyright "$(COPYR)"$(DL) >> $@
+ @echo $(DL)description "$(DESCR)"$(DL) >> $@
+ @echo $(DL)version $(VERSION)$(DL) >> $@
+ifdef NLMTYPE
+ @echo $(DL)type $(NLMTYPE)$(DL) >> $@
+endif
+ifdef STACK
+ @echo $(DL)stack $(STACK)$(DL) >> $@
+endif
+ifdef SCREEN
+ @echo $(DL)screenname "$(SCREEN)"$(DL) >> $@
+else
+ @echo $(DL)screenname "DEFAULT"$(DL) >> $@
+endif
+ifeq ($(DB),DEBUG)
+ @echo $(DL)debug$(DL) >> $@
+endif
+ @echo $(DL)threadname "$(TARGET)"$(DL) >> $@
+ifdef XDCDATA
+ @echo $(DL)xdcdata $(XDCDATA)$(DL) >> $@
+endif
+ifeq ($(LIBARCH),CLIB)
+ @echo $(DL)start _Prelude$(DL) >> $@
+ @echo $(DL)exit _Stop$(DL) >> $@
+ @echo $(DL)import @$(SDK_CLIB)/imports/clib.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_CLIB)/imports/threads.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_CLIB)/imports/nlmlib.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_CLIB)/imports/socklib.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_LDAP)/clib/imports/ldapsdk.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_LDAP)/clib/imports/ldapssl.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_LDAP)/clib/imports/ldapx.imp$(DL) >> $@
+ @echo $(DL)module clib$(DL) >> $@
+else
+ifeq ($(LD),nlmconv)
+ @echo $(DL)flag_on 64$(DL) >> $@
+else
+ @echo $(DL)autounload$(DL) >> $@
+endif
+ @echo $(DL)pseudopreemption$(DL) >> $@
+ @echo $(DL)start _LibCPrelude$(DL) >> $@
+ @echo $(DL)exit _LibCPostlude$(DL) >> $@
+ @echo $(DL)check _LibCCheckUnload$(DL) >> $@
+ @echo $(DL)import @$(SDK_LIBC)/imports/libc.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_LIBC)/imports/netware.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_LDAP)/libc/imports/lldapsdk.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_LDAP)/libc/imports/lldapssl.imp$(DL) >> $@
+ @echo $(DL)import @$(SDK_LDAP)/libc/imports/lldapx.imp$(DL) >> $@
+ @echo $(DL)module libc$(DL) >> $@
+endif
+ifdef MODULES
+ @echo $(DL)module $(MODULES)$(DL) >> $@
+endif
+ifdef EXPORTS
+ @echo $(DL)export $(EXPORTS)$(DL) >> $@
+endif
+ifdef IMPORTS
+ @echo $(DL)import $(IMPORTS)$(DL) >> $@
+endif
+ifeq ($(LD),nlmconv)
+ @echo $(DL)input $(OBJS)$(DL) >> $@
+ @echo $(DL)input $(PRELUDE)$(DL) >> $@
+ @echo $(DL)output $(TARGET).nlm$(DL) >> $@
+endif
+
--- /dev/null
+/* lib/config.h.in. Generated from configure.ac by autoheader. */\r
+\r
+/* to disable DICT */\r
+#undef CURL_DISABLE_DICT\r
+\r
+/* to disable FILE */\r
+#undef CURL_DISABLE_FILE\r
+\r
+/* to disable FTP */\r
+#undef CURL_DISABLE_FTP\r
+\r
+/* to disable GOPHER */\r
+#undef CURL_DISABLE_GOPHER\r
+\r
+/* to disable HTTP */\r
+#undef CURL_DISABLE_HTTP\r
+\r
+/* to disable LDAP */\r
+#undef CURL_DISABLE_LDAP\r
+\r
+/* to disable TELNET */\r
+#undef CURL_DISABLE_TELNET\r
+\r
+/* Set to explicitly specify we don't want to use thread-safe functions */\r
+#undef DISABLED_THREADSAFE\r
+\r
+/* your Entropy Gathering Daemon socket pathname */\r
+#undef EGD_SOCKET\r
+\r
+/* Define if you want to enable IPv6 support */\r
+#undef ENABLE_IPV6\r
+\r
+/* Define to 1 if you have the <alloca.h> header file. */\r
+#undef HAVE_ALLOCA_H\r
+\r
+/* Define to 1 if you have the <arpa/inet.h> header file. */\r
+#define HAVE_ARPA_INET_H 1\r
+\r
+/* Define to 1 if you have the <assert.h> header file. */\r
+#define HAVE_ASSERT_H 1\r
+\r
+/* Define to 1 if you have the `closesocket' function. */\r
+#undef HAVE_CLOSESOCKET\r
+\r
+/* Define to 1 if you have the `CRYPTO_cleanup_all_ex_data' function. */\r
+#undef HAVE_CRYPTO_CLEANUP_ALL_EX_DATA\r
+\r
+/* Define to 1 if you have the <crypto.h> header file. */\r
+#undef HAVE_CRYPTO_H\r
+\r
+/* Define to 1 if you have the <des.h> header file. */\r
+#undef HAVE_DES_H\r
+\r
+/* disabled non-blocking sockets */\r
+#undef HAVE_DISABLED_NONBLOCKING\r
+\r
+/* Define to 1 if you have the <dlfcn.h> header file. */\r
+/* XXX: #undef HAVE_DLFCN_H */\r
+#define HAVE_DLFCN_H 1\r
+\r
+/* Define to 1 if you have the `dlopen' function. */\r
+#define HAVE_DLOPEN 1\r
+\r
+/* Define to 1 if you have the <err.h> header file. */\r
+#define HAVE_ERR_H 1\r
+\r
+/* Define to 1 if you have the <fcntl.h> header file. */\r
+#define HAVE_FCNTL_H 1\r
+\r
+/* use FIONBIO for non-blocking sockets */\r
+/* XXX: #undef HAVE_FIONBIO */\r
+#define HAVE_FIONBIO 1\r
+\r
+/* Define if getaddrinfo exists and works */\r
+#undef HAVE_GETADDRINFO\r
+\r
+/* Define to 1 if you have the `geteuid' function. */\r
+#undef HAVE_GETEUID\r
+\r
+/* Define to 1 if you have the `gethostbyaddr' function. */\r
+#define HAVE_GETHOSTBYADDR 1\r
+\r
+/* Define to 1 if you have the `gethostbyaddr_r' function. */\r
+#undef HAVE_GETHOSTBYADDR_R\r
+\r
+/* gethostbyaddr_r() takes 5 args */\r
+#undef HAVE_GETHOSTBYADDR_R_5\r
+\r
+/* gethostbyaddr_r() takes 7 args */\r
+#undef HAVE_GETHOSTBYADDR_R_7\r
+\r
+/* gethostbyaddr_r() takes 8 args */\r
+#undef HAVE_GETHOSTBYADDR_R_8\r
+\r
+/* Define to 1 if you have the `gethostbyname_r' function. */\r
+#undef HAVE_GETHOSTBYNAME_R\r
+\r
+/* gethostbyname_r() takes 3 args */\r
+#undef HAVE_GETHOSTBYNAME_R_3\r
+\r
+/* gethostbyname_r() takes 5 args */\r
+#undef HAVE_GETHOSTBYNAME_R_5\r
+\r
+/* gethostbyname_r() takes 6 args */\r
+#undef HAVE_GETHOSTBYNAME_R_6\r
+\r
+/* Define to 1 if you have the `getpass_r' function. */\r
+#undef HAVE_GETPASS_R\r
+\r
+/* Define to 1 if you have the `getpwuid' function. */\r
+#undef HAVE_GETPWUID\r
+\r
+/* Define to 1 if you have the `gettimeofday' function. */\r
+#define HAVE_GETTIMEOFDAY 1\r
+\r
+/* Define to 1 if you have the `gmtime_r' function. */\r
+#undef HAVE_GMTIME_R\r
+\r
+/* if you have the gssapi libraries */\r
+#undef HAVE_GSSAPI\r
+\r
+/* if you have the Heimdal gssapi libraries */\r
+#undef HAVE_GSSHEIMDAL\r
+\r
+/* if you have the MIT gssapi libraries */\r
+#undef HAVE_GSSMIT\r
+\r
+/* Define to 1 if you have the `inet_addr' function. */\r
+#define HAVE_INET_ADDR 1\r
+\r
+/* Define to 1 if you have the `inet_ntoa' function. */\r
+#define HAVE_INET_NTOA 1\r
+\r
+/* Define to 1 if you have the `inet_ntoa_r' function. */\r
+#undef HAVE_INET_NTOA_R\r
+\r
+/* inet_ntoa_r() is declared */\r
+#undef HAVE_INET_NTOA_R_DECL\r
+\r
+/* Define to 1 if you have the `inet_pton' function. */\r
+#define HAVE_INET_PTON 1\r
+\r
+/* Define to 1 if you have the <inttypes.h> header file. */\r
+#define HAVE_INTTYPES_H 1\r
+\r
+/* use ioctlsocket() for non-blocking sockets */\r
+#undef HAVE_IOCTLSOCKET\r
+\r
+/* use Ioctlsocket() for non-blocking sockets */\r
+#undef HAVE_IOCTLSOCKET_CASE\r
+\r
+/* Define to 1 if you have the <io.h> header file. */\r
+#undef HAVE_IO_H\r
+\r
+/* if you have the Kerberos4 libraries (including -ldes) */\r
+#undef HAVE_KRB4\r
+\r
+/* Define to 1 if you have the `krb_get_our_ip_for_realm' function. */\r
+#undef HAVE_KRB_GET_OUR_IP_FOR_REALM\r
+\r
+/* Define to 1 if you have the <krb.h> header file. */\r
+#undef HAVE_KRB_H\r
+\r
+/* Define to 1 if you have the `crypto' library (-lcrypto). */\r
+#undef HAVE_LIBCRYPTO\r
+\r
+/* Define to 1 if you have the `dl' library (-ldl). */\r
+#undef HAVE_LIBDL\r
+\r
+/* Define to 1 if you have the `nsl' library (-lnsl). */\r
+#undef HAVE_LIBNSL\r
+\r
+/* Define to 1 if you have the `resolv' library (-lresolv). */\r
+#undef HAVE_LIBRESOLV\r
+\r
+/* Define to 1 if you have the `resolve' library (-lresolve). */\r
+#undef HAVE_LIBRESOLVE\r
+\r
+/* Define to 1 if you have the `socket' library (-lsocket). */\r
+#undef HAVE_LIBSOCKET\r
+\r
+/* Define to 1 if you have the `ssl' library (-lssl). */\r
+#undef HAVE_LIBSSL\r
+\r
+/* If zlib is available */\r
+#undef HAVE_LIBZ\r
+//#define HAVE_LIBZ 1\r
+\r
+/* Define to 1 if you have the <limits.h> header file. */\r
+#define HAVE_LIMITS_H 1\r
+\r
+/* Define to 1 if you have the `localtime_r' function. */\r
+#undef HAVE_LOCALTIME_R\r
+\r
+/* if your compiler supports 'long long' */\r
+#define HAVE_LONGLONG 1\r
+\r
+/* Define to 1 if you have the <malloc.h> header file. */\r
+#define HAVE_MALLOC_H 1\r
+\r
+/* Define to 1 if you have the <memory.h> header file. */\r
+#undef HAVE_MEMORY_H\r
+\r
+/* Define to 1 if you have the <netdb.h> header file. */\r
+#define HAVE_NETDB_H 1\r
+\r
+/* Define to 1 if you have the <netinet/in.h> header file. */\r
+#define HAVE_NETINET_IN_H 1\r
+\r
+/* Define to 1 if you have the <net/if.h> header file. */\r
+#undef HAVE_NET_IF_H\r
+\r
+/* Define to 1 if you have the <openssl/crypto.h> header file. */\r
+#undef HAVE_OPENSSL_CRYPTO_H\r
+\r
+/* Define to 1 if you have the <openssl/engine.h> header file. */\r
+#undef HAVE_OPENSSL_ENGINE_H\r
+\r
+/* Define to 1 if you have the <openssl/err.h> header file. */\r
+#undef HAVE_OPENSSL_ERR_H\r
+\r
+/* Define to 1 if you have the <openssl/pem.h> header file. */\r
+#undef HAVE_OPENSSL_PEM_H\r
+\r
+/* Define to 1 if you have the <openssl/rsa.h> header file. */\r
+#undef HAVE_OPENSSL_RSA_H\r
+\r
+/* Define to 1 if you have the <openssl/ssl.h> header file. */\r
+#undef HAVE_OPENSSL_SSL_H\r
+\r
+/* Define to 1 if you have the <openssl/x509.h> header file. */\r
+#undef HAVE_OPENSSL_X509_H\r
+\r
+/* use O_NONBLOCK for non-blocking sockets */\r
+#undef HAVE_O_NONBLOCK\r
+\r
+/* Define to 1 if you have the <pem.h> header file. */\r
+#undef HAVE_PEM_H\r
+\r
+/* Define to 1 if you have the `perror' function. */\r
+#undef HAVE_PERROR\r
+\r
+/* Define to 1 if you have the `poll' function. */\r
+#undef HAVE_POLL\r
+\r
+/* Define to 1 if you have the <pwd.h> header file. */\r
+#undef HAVE_PWD_H\r
+\r
+/* Define to 1 if you have the `RAND_egd' function. */\r
+#undef HAVE_RAND_EGD\r
+\r
+/* Define to 1 if you have the `RAND_screen' function. */\r
+#undef HAVE_RAND_SCREEN\r
+\r
+/* Define to 1 if you have the `RAND_status' function. */\r
+#undef HAVE_RAND_STATUS\r
+\r
+/* Define to 1 if you have the <rsa.h> header file. */\r
+#undef HAVE_RSA_H\r
+\r
+/* Define to 1 if you have the `select' function. */\r
+#define HAVE_SELECT 1\r
+\r
+/* Define to 1 if you have the <setjmp.h> header file. */\r
+#define HAVE_SETJMP_H 1\r
+\r
+/* Define to 1 if you have the <sgtty.h> header file. */\r
+#undef HAVE_SGTTY_H\r
+\r
+/* Define to 1 if you have the `sigaction' function. */\r
+#undef HAVE_SIGACTION\r
+\r
+/* Define to 1 if you have the `siginterrupt' function. */\r
+#undef HAVE_SIGINTERRUPT\r
+\r
+/* Define to 1 if you have the `signal' function. */\r
+#define HAVE_SIGNAL 1\r
+\r
+/* If you have sigsetjmp */\r
+#undef HAVE_SIGSETJMP\r
+\r
+/* Define to 1 if you have the `socket' function. */\r
+#define HAVE_SOCKET 1\r
+\r
+/* use SO_NONBLOCK for non-blocking sockets */\r
+#undef HAVE_SO_NONBLOCK\r
+\r
+/* Define this if you have the SPNEGO library fbopenssl */\r
+#undef HAVE_SPNEGO\r
+\r
+/* Define to 1 if you have the <ssl.h> header file. */\r
+#undef HAVE_SSL_H\r
+\r
+/* Define to 1 if you have the <stdint.h> header file. */\r
+#define HAVE_STDINT_H 1\r
+\r
+/* Define to 1 if you have the <stdlib.h> header file. */\r
+#define HAVE_STDLIB_H 1\r
+\r
+/* Define to 1 if you have the `strcasecmp' function. */\r
+#define HAVE_STRCASECMP 1\r
+\r
+/* Define to 1 if you have the `strcmpi' function. */\r
+#undef HAVE_STRCMPI\r
+\r
+/* Define to 1 if you have the `strdup' function. */\r
+#define HAVE_STRDUP 1\r
+\r
+/* Define to 1 if you have the `strftime' function. */\r
+#define HAVE_STRFTIME 1\r
+\r
+/* Define to 1 if you have the `stricmp' function. */\r
+#undef HAVE_STRICMP\r
+\r
+/* Define to 1 if you have the <strings.h> header file. */\r
+#undef HAVE_STRINGS_H\r
+\r
+/* Define to 1 if you have the <string.h> header file. */\r
+#define HAVE_STRING_H 1\r
+\r
+/* Define to 1 if you have the `strlcat' function. */\r
+#define HAVE_STRLCAT 1\r
+\r
+/* Define to 1 if you have the `strlcpy' function. */\r
+#define HAVE_STRLCPY 1\r
+\r
+/* Define to 1 if you have the `strstr' function. */\r
+#define HAVE_STRSTR 1\r
+\r
+/* Define to 1 if you have the `strtok_r' function. */\r
+#undef HAVE_STRTOK_R\r
+\r
+/* Define to 1 if you have the `strtoll' function. */\r
+#undef HAVE_STRTOLL\r
+\r
+/* Define to 1 if you have the <sys/param.h> header file. */\r
+#define HAVE_SYS_PARAM_H 1\r
+\r
+/* Define to 1 if you have the <sys/poll.h> header file. */\r
+#undef HAVE_SYS_POLL_H\r
+\r
+/* Define to 1 if you have the <sys/select.h> header file. */\r
+#define HAVE_SYS_SELECT_H 1\r
+\r
+/* Define to 1 if you have the <sys/socket.h> header file. */\r
+#define HAVE_SYS_SOCKET_H 1\r
+\r
+/* Define to 1 if you have the <sys/sockio.h> header file. */\r
+#define HAVE_SYS_SOCKIO_H 1\r
+\r
+/* Define to 1 if you have the <sys/stat.h> header file. */\r
+#define HAVE_SYS_STAT_H 1\r
+\r
+/* Define to 1 if you have the <sys/time.h> header file. */\r
+#define HAVE_SYS_TIME_H 1\r
+\r
+/* Define to 1 if you have the <sys/types.h> header file. */\r
+#define HAVE_SYS_TYPES_H 1\r
+\r
+/* Define to 1 if you have the <sys/utime.h> header file. */\r
+#undef HAVE_SYS_UTIME_H\r
+\r
+/* Define to 1 if you have the `tcgetattr' function. */\r
+#undef HAVE_TCGETATTR\r
+\r
+/* Define to 1 if you have the `tcsetattr' function. */\r
+#undef HAVE_TCSETATTR\r
+\r
+/* Define to 1 if you have the <termios.h> header file. */\r
+#define HAVE_TERMIOS_H 1\r
+\r
+/* Define to 1 if you have the <termio.h> header file. */\r
+#undef HAVE_TERMIO_H\r
+\r
+/* Define to 1 if you have the <time.h> header file. */\r
+#define HAVE_TIME_H 1\r
+\r
+/* Define to 1 if you have the `uname' function. */\r
+#define HAVE_UNAME 1\r
+\r
+/* Define to 1 if you have the <unistd.h> header file. */\r
+#define HAVE_UNISTD_H 1\r
+\r
+/* Define to 1 if you have the `utime' function. */\r
+#define HAVE_UTIME 1\r
+\r
+/* Define to 1 if you have the <utime.h> header file. */\r
+#define HAVE_UTIME_H 1\r
+\r
+/* Define to 1 if you have the <winsock.h> header file. */\r
+#undef HAVE_WINSOCK_H\r
+\r
+/* Define this symbol if your OS supports changing the contents of argv */\r
+#undef HAVE_WRITABLE_ARGV\r
+\r
+/* Define to 1 if you have the <x509.h> header file. */\r
+#undef HAVE_X509_H\r
+\r
+/* if you have the zlib.h header file */\r
+#define HAVE_ZLIB_H 1\r
+\r
+/* need REENTRANT defined */\r
+#undef NEED_REENTRANT\r
+\r
+/* cpu-machine-OS */\r
+#define OS "i386-pc-NetWare"\r
+\r
+/* Name of package */\r
+#undef PACKAGE\r
+\r
+/* Define to the address where bug reports for this package should be sent. */\r
+#undef PACKAGE_BUGREPORT\r
+\r
+/* Define to the full name of this package. */\r
+#undef PACKAGE_NAME\r
+\r
+/* Define to the full name and version of this package. */\r
+#undef PACKAGE_STRING\r
+\r
+/* Define to the one symbol short name of this package. */\r
+#undef PACKAGE_TARNAME\r
+\r
+/* Define to the version of this package. */\r
+#undef PACKAGE_VERSION\r
+\r
+/* a suitable file to read random data from */\r
+#undef RANDOM_FILE\r
+\r
+/* Define as the return type of signal handlers (`int' or `void'). */\r
+#define RETSIGTYPE void\r
+\r
+/* Define to the type of arg 1 for `select'. */\r
+#undef SELECT_TYPE_ARG1\r
+\r
+/* Define to the type of args 2, 3 and 4 for `select'. */\r
+#undef SELECT_TYPE_ARG234\r
+\r
+/* Define to the type of arg 5 for `select'. */\r
+#undef SELECT_TYPE_ARG5\r
+\r
+/* The size of a `curl_off_t', as computed by sizeof. */\r
+#define SIZEOF_CURL_OFF_T 4\r
+\r
+/* Define to 1 if you have the ANSI C header files. */\r
+/* XXX: #undef STDC_HEADERS */\r
+#define STDC_HEADERS 1\r
+\r
+/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */\r
+#define TIME_WITH_SYS_TIME 1\r
+\r
+/* Define if you want to enable ares support */\r
+#undef USE_ARES\r
+\r
+/* Version number of package */\r
+#undef VERSION\r
+\r
+/* Define to 1 if on AIX 3.\r
+ System headers sometimes define this.\r
+ We just want to avoid a redefinition error message. */\r
+#ifndef _ALL_SOURCE\r
+# undef _ALL_SOURCE\r
+#endif\r
+\r
+/* Number of bits in a file offset, on hosts where this is settable. */\r
+#undef _FILE_OFFSET_BITS\r
+\r
+/* Define for large files, on AIX-style hosts. */\r
+#undef _LARGE_FILES\r
+\r
+/* Define to empty if `const' does not conform to ANSI C. */\r
+#undef const\r
+\r
+/* type to use in place of in_addr_t if not defined */\r
+#undef in_addr_t\r
+\r
+/* Define to `unsigned' if <sys/types.h> does not define. */\r
+#undef size_t\r
+\r
+/* type to use in place of socklen_t if not defined */\r
+#define socklen_t int\r
+\r
+/* the signed version of size_t */\r
+#undef ssize_t\r
+\r
+\r
#include <winsock2.h>
#endif
+#ifdef __NOVELL_LIBC__
+#include <screen.h>
+#endif
+
#ifdef TIME_WITH_SYS_TIME
/* We can include both fine */
#include <sys/time.h>
" -#/--progress-bar Display transfer progress as a progress bar",
NULL
};
- for(i=0; helptext[i]; i++)
+ for(i=0; helptext[i]; i++) {
puts(helptext[i]);
+#ifdef __NOVELL_LIBC__
+ if (i && ((i % 23) == 0))
+ pressanykey();
+#endif
+ }
}
struct LongShort {
res = operate(&config, argc, argv);
free_config_fields(&config);
+#ifdef __NOVELL_LIBC__
+ pressanykey();
+#endif
#ifdef VMS
if (res > CURL_LAST) res = CURL_LAST; /* If CURL_LAST exceeded then */
return (vms_cond[res]|vms_show); /* curlmsg.h is out of sync. */
/* include the hand-modified win32 adjusted config.h! */
#include "config-win32.h"
#endif
+#ifdef NETWARE
+/* hand-modified NetWare config.h! */
+#include "config-netware.h"
+#endif
#ifdef macintosh
/* this is not the same as Mac OS X */
#include "config-mac.h"