From e3a9804d3aa5e4ea77311e7f7082ff27219b6d39 Mon Sep 17 00:00:00 2001
From: Patrick Monnerat <pm@datasphere.ch>
Date: Thu, 14 Jul 2011 17:07:35 +0200
Subject: [PATCH] Fix OS400 scripts to make it compilable again. Upgrade
 ILE/RPG binding to 7.21.7. Update OS400 documentation accordingly.

---
 packages/OS400/README.OS400  | 25 +++++++++++++++++++++----
 packages/OS400/curl.inc.in   | 13 ++++++++++++-
 packages/OS400/initscript.sh |  2 +-
 packages/OS400/make-lib.sh   |  4 +---
 packages/OS400/make-tests.sh |  2 ++
 5 files changed, 37 insertions(+), 9 deletions(-)

diff --git a/packages/OS400/README.OS400 b/packages/OS400/README.OS400
index 0cd5633aac..0dba7654a4 100644
--- a/packages/OS400/README.OS400
+++ b/packages/OS400/README.OS400
@@ -147,6 +147,10 @@ use:
         CURLINFO_EFFECTIVE_URL
         CURLINFO_CONTENT_TYPE
         CURLINFO_FTP_ENTRY_PATH
+        CURLINFO_REDIRECT_URL
+        CURLINFO_PRIMARY_IP
+        CURLINFO_RTSP_SESSION_ID
+        CURLINFO_LOCAL_IP
   Other options are processed like in curl_easy_getinfo().
 
   Standard compilation environment does support neither autotools nor make;
@@ -159,14 +163,27 @@ OS/400.
 
 
 Protocols currently implemented on OS/400:
-_ HTTP
-_ HTTPS
+_ DICT
+_ FILE
 _ FTP
 _ FTPS
-_ FTP with secure transmission.
+_ FTP with secure transmission
+_ GOPHER
+_ HTTP
+_ HTTPS
+_ IMAP
+_ IMAPS
+_ IMAP with secure transmission
 _ LDAP
-_ DICT
+_ POP3
+_ POP3S
+_ POP3 with secure transmission
+_ RTSP
+_ SMTP
+_ SMTPS
+_ SMTP with secure transmission
 _ TELNET
+_ TFTP
 
 
 
diff --git a/packages/OS400/curl.inc.in b/packages/OS400/curl.inc.in
index 65c1e72be6..ce70ba4719 100644
--- a/packages/OS400/curl.inc.in
+++ b/packages/OS400/curl.inc.in
@@ -913,7 +913,7 @@
      d  CURLOPT_SHARE  c                   10100
      d  CURLOPT_PROXYTYPE...
      d                 c                   00101
-     d  CURLOPT_ENCODING...
+     d  CURLOPT_ACCEPT_ENCODING...
      d                 c                   10102
      d  CURLOPT_PRIVATE...
      d                 c                   10103
@@ -1105,6 +1105,12 @@
      d                 c                   10205
      d  CURLOPT_TLSAUTH_TYPE...
      d                 c                   10206
+     d  CURLOPT_TRANSFER_ENCODING...
+     d                 c                   00207
+     d  CURLOPT_CLOSESOCKETFUNCTION...
+     d                 c                   20208
+     d  CURLOPT_CLOSESOCKETDATA...
+     d                 c                   10209
       *
       /if not defined(CURL_NO_OLDIES)
      d  CURLOPT_SSLKEYPASSWD...
@@ -1117,6 +1123,8 @@
      d                 c                   00050
      d  CURLOPT_KRB4LEVEL...
      d                 c                   10063
+     d  CURLOPT_ENCODING...
+     d                 c                   10102
      d  CURLOPT_SERVER_RESPONSE_TIMEOUT...
      d                 c                   00112
      d  CURLOPT_FTP_SSL...
@@ -1621,6 +1629,9 @@
      d                 s               *   based(######ptr######) procptr
       *
      d curl_fnmatch_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_closesocket_callback...
      d                 s               *   based(######ptr######) procptr
       *
       **************************************************************************
diff --git a/packages/OS400/initscript.sh b/packages/OS400/initscript.sh
index 9bf93a8e64..97e978158b 100644
--- a/packages/OS400/initscript.sh
+++ b/packages/OS400/initscript.sh
@@ -155,7 +155,7 @@ db2_name()
 
 {
         basename "${1}"                                                 |
-        tr '[a-z-]' '[A-Z_]'                                            |
+        tr 'a-z-' 'A-Z_'                                                |
         sed -e 's/\..*//'                                               \
             -e 's/^\(..........\).*/\1/'
 }
diff --git a/packages/OS400/make-lib.sh b/packages/OS400/make-lib.sh
index 9b3e335ab1..46c479c3ff 100644
--- a/packages/OS400/make-lib.sh
+++ b/packages/OS400/make-lib.sh
@@ -46,9 +46,7 @@ make_module     OS400SYS        "${SCRIPTDIR}/os400sys.c"
 make_module     CCSIDCURL       "${SCRIPTDIR}/ccsidcurl.c"
 
 for SRC in ${CSOURCES}
-do      MODULE=`basename "${SRC}" .c |
-                tr '[a-z]' '[A-Z]'   |
-                sed -e 's/^\(..........\).*/\1/'`
+do      MODULE=`db2_name "${SRC}"`
         make_module "${MODULE}" "${SRC}"
 done
 
diff --git a/packages/OS400/make-tests.sh b/packages/OS400/make-tests.sh
index cee3ed95d2..e40b410464 100644
--- a/packages/OS400/make-tests.sh
+++ b/packages/OS400/make-tests.sh
@@ -22,6 +22,8 @@ cd libtest
 #       _ Retain only lines that begins with "identifier =".
 #       _ Turn these lines into shell variable assignments.
 
+top_srcdir="${TOPDIR}"
+export top_srcdir
 eval "`sed -e ': begin'                                                 \
         -e '/\\\\$/{'                                                   \
         -e 'N'                                                          \
-- 
GitLab