From 8e255534a1513584d2411b10b47ea1249d8aaedc Mon Sep 17 00:00:00 2001
From: Patrick Monnerat <Patrick.Monnerat@datasphere.ch>
Date: Thu, 11 Dec 2008 19:20:03 +0000
Subject: [PATCH] _ Use getaddrinfo/getnameinfo ascii wrappers on OS400. _
 Adjust OS400 make script for non-CVS distributions. _ Upgrade ILE/RPG
 binding. _ Define CURL_HIDDEN_SYMBOLS on OS400, since only CURL_EXTERN-marked
 symbols are exported.

---
 lib/config-os400.h             | 18 ++++++++++++------
 packages/OS400/curl.inc.in     |  6 ++++--
 packages/OS400/make-include.sh |  8 +++++---
 3 files changed, 21 insertions(+), 11 deletions(-)

diff --git a/lib/config-os400.h b/lib/config-os400.h
index 0814773b52..3a118796ac 100644
--- a/lib/config-os400.h
+++ b/lib/config-os400.h
@@ -82,8 +82,8 @@
 #define HAVE_FCNTL_H
 
 /* Define if getaddrinfo exists and works */
-/* OS400 has no ASCII version of this procedure. */
-#undef HAVE_GETADDRINFO
+/* OS400 has no ASCII version of this procedure: wrapped in setup-os400.h. */
+#define HAVE_GETADDRINFO
 
 /* Define if you have the `geteuid' function. */
 #define HAVE_GETEUID
@@ -284,7 +284,7 @@
 #undef HAVE_STRLCPY
 
 /* Define if you have the <stropts.h> header file. */
-#define HAVE_STROPTS_H
+#undef HAVE_STROPTS_H
 
 /* Define if you have the `strstr' function. */
 #define HAVE_STRSTR
@@ -404,15 +404,21 @@
 /* Define if you have a working ioctl SIOCGIFADDR function. */
 #define HAVE_IOCTL_SIOCGIFADDR
 
-/* to disable LDAP */
+/* To disable LDAP */
 #undef CURL_DISABLE_LDAP
 
+/* To avoid external use of library hidden symbols */
+#define CURL_HIDDEN_SYMBOLS
+
+/* External symbols need no special keyword. */
+#define CURL_EXTERN_SYMBOL
+
 /* Define if you have the ldap_url_parse procedure. */
 /* #define HAVE_LDAP_URL_PARSE */    /* Disabled because of an IBM bug. */
 
 /* Define if you have the getnameinfo function. */
-/* OS400 has no ASCII version of this procedure. */
-#undef HAVE_GETNAMEINFO
+/* OS400 has no ASCII version of this procedure: wrapped in setup-os400.h. */
+#define HAVE_GETNAMEINFO
 
 /* Define to the type qualifier of arg 1 for getnameinfo. */
 #define GETNAMEINFO_QUAL_ARG1 const
diff --git a/packages/OS400/curl.inc.in b/packages/OS400/curl.inc.in
index 0a7e5e9be2..84804ac9d2 100644
--- a/packages/OS400/curl.inc.in
+++ b/packages/OS400/curl.inc.in
@@ -127,9 +127,11 @@
      d CURLAUTH_GSSNEGOTIATE...
      d                 c                   X'00000004'
      d CURLAUTH_NTLM   c                   X'00000008'
-     d CURLAUTH_ANY    c                   X'7FFFFFFF'
+     d CURLAUTH_DIGEST_IE...
+     d                 c                   X'00000010'
+     d CURLAUTH_ANY    c                   X'7FFFFFEF'
      d CURLAUTH_ANYSAFE...
-     d                 c                   X'7FFFFFFE'                          ~CURLAUTH_BASIC
+     d                 c                   X'7FFFFFEE'                          ~CURLAUTH_BASIC
       *
      d CURLSSH_AUTH_ANY...
      d                 c                   X'7FFFFFFF'
diff --git a/packages/OS400/make-include.sh b/packages/OS400/make-include.sh
index ecbc7e1dbf..81a16f43c6 100644
--- a/packages/OS400/make-include.sh
+++ b/packages/OS400/make-include.sh
@@ -9,10 +9,12 @@ SCRIPTDIR=`dirname "${0}"`
 cd "${TOPDIR}/include"
 
 
-#	Produce the curlbuild.h include file.
+#	Produce the curlbuild.h include file if not yet in distribution (CVS).
 
-if action_needed curl/curlbuild.h curl/curlbuild.h.dist
-then	cp -p curl/curlbuild.h.dist curl/curlbuild.h
+if action_needed curl/curlbuild.h
+then	if action_needed curl/curlbuild.h curl/curlbuild.h.dist
+	then	cp -p curl/curlbuild.h.dist curl/curlbuild.h
+	fi
 fi
 
 
-- 
GitLab