113498266Sopenharmony_ci#ifndef HEADER_CURL_CONFIG_OS400_H 213498266Sopenharmony_ci#define HEADER_CURL_CONFIG_OS400_H 313498266Sopenharmony_ci/*************************************************************************** 413498266Sopenharmony_ci * _ _ ____ _ 513498266Sopenharmony_ci * Project ___| | | | _ \| | 613498266Sopenharmony_ci * / __| | | | |_) | | 713498266Sopenharmony_ci * | (__| |_| | _ <| |___ 813498266Sopenharmony_ci * \___|\___/|_| \_\_____| 913498266Sopenharmony_ci * 1013498266Sopenharmony_ci * Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. 1113498266Sopenharmony_ci * 1213498266Sopenharmony_ci * This software is licensed as described in the file COPYING, which 1313498266Sopenharmony_ci * you should have received as part of this distribution. The terms 1413498266Sopenharmony_ci * are also available at https://curl.se/docs/copyright.html. 1513498266Sopenharmony_ci * 1613498266Sopenharmony_ci * You may opt to use, copy, modify, merge, publish, distribute and/or sell 1713498266Sopenharmony_ci * copies of the Software, and permit persons to whom the Software is 1813498266Sopenharmony_ci * furnished to do so, under the terms of the COPYING file. 1913498266Sopenharmony_ci * 2013498266Sopenharmony_ci * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY 2113498266Sopenharmony_ci * KIND, either express or implied. 2213498266Sopenharmony_ci * 2313498266Sopenharmony_ci * SPDX-License-Identifier: curl 2413498266Sopenharmony_ci * 2513498266Sopenharmony_ci ***************************************************************************/ 2613498266Sopenharmony_ci 2713498266Sopenharmony_ci/* ================================================================ */ 2813498266Sopenharmony_ci/* Hand crafted config file for OS/400 */ 2913498266Sopenharmony_ci/* ================================================================ */ 3013498266Sopenharmony_ci 3113498266Sopenharmony_ci#pragma enum(int) 3213498266Sopenharmony_ci 3313498266Sopenharmony_ci#undef PACKAGE 3413498266Sopenharmony_ci 3513498266Sopenharmony_ci/* Version number of this archive. */ 3613498266Sopenharmony_ci#undef VERSION 3713498266Sopenharmony_ci 3813498266Sopenharmony_ci/* Define cpu-machine-OS */ 3913498266Sopenharmony_ci#ifndef OS 4013498266Sopenharmony_ci#define OS "OS/400" 4113498266Sopenharmony_ci#endif 4213498266Sopenharmony_ci 4313498266Sopenharmony_ci/* OS400 supports a 3-argument ASCII version of gethostbyaddr_r(), but its 4413498266Sopenharmony_ci * prototype is incompatible with the "standard" one (1st argument is not 4513498266Sopenharmony_ci * const). However, getaddrinfo() is supported (ASCII version defined as 4613498266Sopenharmony_ci * a local wrapper in setup-os400.h) in a threadsafe way: we can then 4713498266Sopenharmony_ci * configure getaddrinfo() as such and get rid of gethostbyname_r() without 4813498266Sopenharmony_ci * loss of threadsafeness. */ 4913498266Sopenharmony_ci#undef HAVE_GETHOSTBYNAME_R 5013498266Sopenharmony_ci#undef HAVE_GETHOSTBYNAME_R_3 5113498266Sopenharmony_ci#undef HAVE_GETHOSTBYNAME_R_5 5213498266Sopenharmony_ci#undef HAVE_GETHOSTBYNAME_R_6 5313498266Sopenharmony_ci#define HAVE_GETADDRINFO 5413498266Sopenharmony_ci#define HAVE_GETADDRINFO_THREADSAFE 5513498266Sopenharmony_ci 5613498266Sopenharmony_ci/* Define if you need the _REENTRANT define for some functions */ 5713498266Sopenharmony_ci#undef NEED_REENTRANT 5813498266Sopenharmony_ci 5913498266Sopenharmony_ci/* Define if you want to enable IPv6 support */ 6013498266Sopenharmony_ci#define ENABLE_IPV6 6113498266Sopenharmony_ci 6213498266Sopenharmony_ci/* Define if struct sockaddr_in6 has the sin6_scope_id member */ 6313498266Sopenharmony_ci#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1 6413498266Sopenharmony_ci 6513498266Sopenharmony_ci/* Define this to 'int' if ssize_t is not an available typedefed type */ 6613498266Sopenharmony_ci#undef ssize_t 6713498266Sopenharmony_ci 6813498266Sopenharmony_ci/* Define this as a suitable file to read random data from */ 6913498266Sopenharmony_ci#undef RANDOM_FILE 7013498266Sopenharmony_ci 7113498266Sopenharmony_ci/* Define to 1 if you have the alarm function. */ 7213498266Sopenharmony_ci#define HAVE_ALARM 1 7313498266Sopenharmony_ci 7413498266Sopenharmony_ci/* Define if you have the <arpa/inet.h> header file. */ 7513498266Sopenharmony_ci#define HAVE_ARPA_INET_H 7613498266Sopenharmony_ci 7713498266Sopenharmony_ci/* Define if you have the `closesocket' function. */ 7813498266Sopenharmony_ci#undef HAVE_CLOSESOCKET 7913498266Sopenharmony_ci 8013498266Sopenharmony_ci/* Define if you have the <fcntl.h> header file. */ 8113498266Sopenharmony_ci#define HAVE_FCNTL_H 8213498266Sopenharmony_ci 8313498266Sopenharmony_ci/* Define if you have the `geteuid' function. */ 8413498266Sopenharmony_ci#define HAVE_GETEUID 8513498266Sopenharmony_ci 8613498266Sopenharmony_ci/* Define if you have the `gethostname' function. */ 8713498266Sopenharmony_ci#define HAVE_GETHOSTNAME 8813498266Sopenharmony_ci 8913498266Sopenharmony_ci/* Define if you have the `getpass_r' function. */ 9013498266Sopenharmony_ci#undef HAVE_GETPASS_R 9113498266Sopenharmony_ci 9213498266Sopenharmony_ci/* Define to 1 if you have the getpeername function. */ 9313498266Sopenharmony_ci#define HAVE_GETPEERNAME 1 9413498266Sopenharmony_ci 9513498266Sopenharmony_ci/* Define if you have the `getpwuid' function. */ 9613498266Sopenharmony_ci#define HAVE_GETPWUID 9713498266Sopenharmony_ci 9813498266Sopenharmony_ci/* Define to 1 if you have the getsockname function. */ 9913498266Sopenharmony_ci#define HAVE_GETSOCKNAME 1 10013498266Sopenharmony_ci 10113498266Sopenharmony_ci/* Define if you have the `gettimeofday' function. */ 10213498266Sopenharmony_ci#define HAVE_GETTIMEOFDAY 10313498266Sopenharmony_ci 10413498266Sopenharmony_ci/* Define if you have the `timeval' struct. */ 10513498266Sopenharmony_ci#define HAVE_STRUCT_TIMEVAL 10613498266Sopenharmony_ci 10713498266Sopenharmony_ci/* Define if you have the <io.h> header file. */ 10813498266Sopenharmony_ci#undef HAVE_IO_H 10913498266Sopenharmony_ci 11013498266Sopenharmony_ci/* Define if you have the `socket' library (-lsocket). */ 11113498266Sopenharmony_ci#undef HAVE_LIBSOCKET 11213498266Sopenharmony_ci 11313498266Sopenharmony_ci/* Define if you have GSS API. */ 11413498266Sopenharmony_ci#define HAVE_GSSAPI 11513498266Sopenharmony_ci 11613498266Sopenharmony_ci/* Define if you have the GNU gssapi libraries */ 11713498266Sopenharmony_ci#undef HAVE_GSSGNU 11813498266Sopenharmony_ci 11913498266Sopenharmony_ci/* Define if you need the malloc.h header file even with stdlib.h */ 12013498266Sopenharmony_ci/* #define NEED_MALLOC_H 1 */ 12113498266Sopenharmony_ci 12213498266Sopenharmony_ci/* Define if you have the <netdb.h> header file. */ 12313498266Sopenharmony_ci#define HAVE_NETDB_H 12413498266Sopenharmony_ci 12513498266Sopenharmony_ci/* Define if you have the <netinet/in.h> header file. */ 12613498266Sopenharmony_ci#define HAVE_NETINET_IN_H 12713498266Sopenharmony_ci 12813498266Sopenharmony_ci/* Define if you have the <net/if.h> header file. */ 12913498266Sopenharmony_ci#define HAVE_NET_IF_H 13013498266Sopenharmony_ci 13113498266Sopenharmony_ci/* Define if you have the <pwd.h> header file. */ 13213498266Sopenharmony_ci#define HAVE_PWD_H 13313498266Sopenharmony_ci 13413498266Sopenharmony_ci/* Define if you have the `select' function. */ 13513498266Sopenharmony_ci#define HAVE_SELECT 13613498266Sopenharmony_ci 13713498266Sopenharmony_ci/* Define if you have the `sigaction' function. */ 13813498266Sopenharmony_ci#define HAVE_SIGACTION 13913498266Sopenharmony_ci 14013498266Sopenharmony_ci/* Define if you have the `signal' function. */ 14113498266Sopenharmony_ci#undef HAVE_SIGNAL 14213498266Sopenharmony_ci 14313498266Sopenharmony_ci/* Define if you have the `socket' function. */ 14413498266Sopenharmony_ci#define HAVE_SOCKET 14513498266Sopenharmony_ci 14613498266Sopenharmony_ci 14713498266Sopenharmony_ci/* The following define is needed on OS400 to enable strcmpi(), stricmp() and 14813498266Sopenharmony_ci strdup(). */ 14913498266Sopenharmony_ci#define __cplusplus__strings__ 15013498266Sopenharmony_ci 15113498266Sopenharmony_ci/* Define if you have the `strcasecmp' function. */ 15213498266Sopenharmony_ci#undef HAVE_STRCASECMP 15313498266Sopenharmony_ci 15413498266Sopenharmony_ci/* Define if you have the `strcmpi' function. */ 15513498266Sopenharmony_ci#define HAVE_STRCMPI 15613498266Sopenharmony_ci 15713498266Sopenharmony_ci/* Define if you have the `stricmp' function. */ 15813498266Sopenharmony_ci#define HAVE_STRICMP 15913498266Sopenharmony_ci 16013498266Sopenharmony_ci/* Define if you have the `strdup' function. */ 16113498266Sopenharmony_ci#define HAVE_STRDUP 16213498266Sopenharmony_ci 16313498266Sopenharmony_ci/* Define if you have the <strings.h> header file. */ 16413498266Sopenharmony_ci#define HAVE_STRINGS_H 16513498266Sopenharmony_ci 16613498266Sopenharmony_ci/* Define if you have the <stropts.h> header file. */ 16713498266Sopenharmony_ci#undef HAVE_STROPTS_H 16813498266Sopenharmony_ci 16913498266Sopenharmony_ci/* Define if you have the `strtok_r' function. */ 17013498266Sopenharmony_ci#define HAVE_STRTOK_R 17113498266Sopenharmony_ci 17213498266Sopenharmony_ci/* Define if you have the `strtoll' function. */ 17313498266Sopenharmony_ci#undef HAVE_STRTOLL /* Allows ASCII compile on V5R1. */ 17413498266Sopenharmony_ci 17513498266Sopenharmony_ci/* Define if you have the <sys/param.h> header file. */ 17613498266Sopenharmony_ci#define HAVE_SYS_PARAM_H 17713498266Sopenharmony_ci 17813498266Sopenharmony_ci/* Define if you have the <sys/select.h> header file. */ 17913498266Sopenharmony_ci#undef HAVE_SYS_SELECT_H 18013498266Sopenharmony_ci 18113498266Sopenharmony_ci/* Define if you have the <sys/socket.h> header file. */ 18213498266Sopenharmony_ci#define HAVE_SYS_SOCKET_H 18313498266Sopenharmony_ci 18413498266Sopenharmony_ci/* Define if you have the <sys/sockio.h> header file. */ 18513498266Sopenharmony_ci#undef HAVE_SYS_SOCKIO_H 18613498266Sopenharmony_ci 18713498266Sopenharmony_ci/* Define if you have the <sys/stat.h> header file. */ 18813498266Sopenharmony_ci#define HAVE_SYS_STAT_H 18913498266Sopenharmony_ci 19013498266Sopenharmony_ci/* Define if you have the <sys/time.h> header file. */ 19113498266Sopenharmony_ci#define HAVE_SYS_TIME_H 19213498266Sopenharmony_ci 19313498266Sopenharmony_ci/* Define if you have the <sys/types.h> header file. */ 19413498266Sopenharmony_ci#define HAVE_SYS_TYPES_H 19513498266Sopenharmony_ci 19613498266Sopenharmony_ci/* Define if you have the <sys/un.h> header file. */ 19713498266Sopenharmony_ci#define HAVE_SYS_UN_H 19813498266Sopenharmony_ci 19913498266Sopenharmony_ci/* Define if you have the <sys/ioctl.h> header file. */ 20013498266Sopenharmony_ci#define HAVE_SYS_IOCTL_H 20113498266Sopenharmony_ci 20213498266Sopenharmony_ci/* Define if you have the <termios.h> header file. */ 20313498266Sopenharmony_ci#undef HAVE_TERMIOS_H 20413498266Sopenharmony_ci 20513498266Sopenharmony_ci/* Define if you have the <termio.h> header file. */ 20613498266Sopenharmony_ci#undef HAVE_TERMIO_H 20713498266Sopenharmony_ci 20813498266Sopenharmony_ci/* Define if you have the <unistd.h> header file. */ 20913498266Sopenharmony_ci#define HAVE_UNISTD_H 21013498266Sopenharmony_ci 21113498266Sopenharmony_ci/* Name of package */ 21213498266Sopenharmony_ci#undef PACKAGE 21313498266Sopenharmony_ci 21413498266Sopenharmony_ci/* The size of `int', as computed by sizeof. */ 21513498266Sopenharmony_ci#define SIZEOF_INT 4 21613498266Sopenharmony_ci 21713498266Sopenharmony_ci/* Define if the compiler supports the 'long long' data type. */ 21813498266Sopenharmony_ci#define HAVE_LONGLONG 21913498266Sopenharmony_ci 22013498266Sopenharmony_ci/* The size of a `long long', as computed by sizeof. */ 22113498266Sopenharmony_ci#define SIZEOF_LONG_LONG 8 22213498266Sopenharmony_ci 22313498266Sopenharmony_ci/* The size of `long', as computed by sizeof. */ 22413498266Sopenharmony_ci#define SIZEOF_LONG 4 22513498266Sopenharmony_ci 22613498266Sopenharmony_ci/* The size of `size_t', as computed by sizeof. */ 22713498266Sopenharmony_ci#define SIZEOF_SIZE_T 4 22813498266Sopenharmony_ci 22913498266Sopenharmony_ci/* The size of `curl_off_t', as computed by sizeof. */ 23013498266Sopenharmony_ci#define SIZEOF_CURL_OFF_T 8 23113498266Sopenharmony_ci 23213498266Sopenharmony_ci/* Define this if you have struct sockaddr_storage */ 23313498266Sopenharmony_ci#define HAVE_STRUCT_SOCKADDR_STORAGE 23413498266Sopenharmony_ci 23513498266Sopenharmony_ci/* Define if you have the ANSI C header files. */ 23613498266Sopenharmony_ci#define STDC_HEADERS 23713498266Sopenharmony_ci 23813498266Sopenharmony_ci/* Define to enable HTTP3 support (experimental, requires NGTCP2, QUICHE or 23913498266Sopenharmony_ci MSH3) */ 24013498266Sopenharmony_ci#undef ENABLE_QUIC 24113498266Sopenharmony_ci 24213498266Sopenharmony_ci/* Version number of package */ 24313498266Sopenharmony_ci#undef VERSION 24413498266Sopenharmony_ci 24513498266Sopenharmony_ci/* Number of bits in a file offset, on hosts where this is settable. */ 24613498266Sopenharmony_ci#undef _FILE_OFFSET_BITS 24713498266Sopenharmony_ci 24813498266Sopenharmony_ci/* Define for large files, on AIX-style hosts. */ 24913498266Sopenharmony_ci#define _LARGE_FILES 25013498266Sopenharmony_ci 25113498266Sopenharmony_ci/* Define to empty if `const' does not conform to ANSI C. */ 25213498266Sopenharmony_ci#undef const 25313498266Sopenharmony_ci 25413498266Sopenharmony_ci/* type to use in place of in_addr_t if not defined */ 25513498266Sopenharmony_ci#define in_addr_t unsigned long 25613498266Sopenharmony_ci 25713498266Sopenharmony_ci/* Define to `unsigned' if <sys/types.h> does not define. */ 25813498266Sopenharmony_ci#undef size_t 25913498266Sopenharmony_ci 26013498266Sopenharmony_ci/* Define if you have a working ioctl FIONBIO function. */ 26113498266Sopenharmony_ci#define HAVE_IOCTL_FIONBIO 26213498266Sopenharmony_ci 26313498266Sopenharmony_ci/* Define if you have a working ioctl SIOCGIFADDR function. */ 26413498266Sopenharmony_ci#define HAVE_IOCTL_SIOCGIFADDR 26513498266Sopenharmony_ci 26613498266Sopenharmony_ci/* To disable LDAP */ 26713498266Sopenharmony_ci#undef CURL_DISABLE_LDAP 26813498266Sopenharmony_ci 26913498266Sopenharmony_ci/* Definition to make a library symbol externally visible. */ 27013498266Sopenharmony_ci#define CURL_EXTERN_SYMBOL 27113498266Sopenharmony_ci 27213498266Sopenharmony_ci/* Define if you have the ldap_url_parse procedure. */ 27313498266Sopenharmony_ci/* #define HAVE_LDAP_URL_PARSE */ /* Disabled because of an IBM bug. */ 27413498266Sopenharmony_ci 27513498266Sopenharmony_ci/* Define if you have the recv function. */ 27613498266Sopenharmony_ci#define HAVE_RECV 27713498266Sopenharmony_ci 27813498266Sopenharmony_ci/* Define to the type of arg 1 for recv. */ 27913498266Sopenharmony_ci#define RECV_TYPE_ARG1 int 28013498266Sopenharmony_ci 28113498266Sopenharmony_ci/* Define to the type of arg 2 for recv. */ 28213498266Sopenharmony_ci#define RECV_TYPE_ARG2 char * 28313498266Sopenharmony_ci 28413498266Sopenharmony_ci/* Define to the type of arg 3 for recv. */ 28513498266Sopenharmony_ci#define RECV_TYPE_ARG3 int 28613498266Sopenharmony_ci 28713498266Sopenharmony_ci/* Define to the type of arg 4 for recv. */ 28813498266Sopenharmony_ci#define RECV_TYPE_ARG4 int 28913498266Sopenharmony_ci 29013498266Sopenharmony_ci/* Define to the function return type for recv. */ 29113498266Sopenharmony_ci#define RECV_TYPE_RETV int 29213498266Sopenharmony_ci 29313498266Sopenharmony_ci/* Define if you have the send function. */ 29413498266Sopenharmony_ci#define HAVE_SEND 29513498266Sopenharmony_ci 29613498266Sopenharmony_ci/* Define to the type of arg 1 for send. */ 29713498266Sopenharmony_ci#define SEND_TYPE_ARG1 int 29813498266Sopenharmony_ci 29913498266Sopenharmony_ci/* Define to the type qualifier of arg 2 for send. */ 30013498266Sopenharmony_ci#define SEND_QUAL_ARG2 30113498266Sopenharmony_ci 30213498266Sopenharmony_ci/* Define to the type of arg 2 for send. */ 30313498266Sopenharmony_ci#define SEND_TYPE_ARG2 char * 30413498266Sopenharmony_ci 30513498266Sopenharmony_ci/* Define to the type of arg 3 for send. */ 30613498266Sopenharmony_ci#define SEND_TYPE_ARG3 int 30713498266Sopenharmony_ci 30813498266Sopenharmony_ci/* Define to the type of arg 4 for send. */ 30913498266Sopenharmony_ci#define SEND_TYPE_ARG4 int 31013498266Sopenharmony_ci 31113498266Sopenharmony_ci/* Define to the function return type for send. */ 31213498266Sopenharmony_ci#define SEND_TYPE_RETV int 31313498266Sopenharmony_ci 31413498266Sopenharmony_ci/* Define to use the OS/400 crypto library. */ 31513498266Sopenharmony_ci#define USE_OS400CRYPTO 31613498266Sopenharmony_ci 31713498266Sopenharmony_ci/* Define to use Unix sockets. */ 31813498266Sopenharmony_ci#define USE_UNIX_SOCKETS 31913498266Sopenharmony_ci 32013498266Sopenharmony_ci/* Use the system keyring as the default CA bundle. */ 32113498266Sopenharmony_ci#define CURL_CA_BUNDLE "/QIBM/UserData/ICSS/Cert/Server/DEFAULT.KDB" 32213498266Sopenharmony_ci 32313498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 32413498266Sopenharmony_ci/* ADDITIONAL DEFINITIONS */ 32513498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 32613498266Sopenharmony_ci 32713498266Sopenharmony_ci/* The following must be defined BEFORE system header files inclusion. */ 32813498266Sopenharmony_ci 32913498266Sopenharmony_ci#define __ptr128 /* No teraspace. */ 33013498266Sopenharmony_ci#define qadrt_use_fputc_inline /* Generate fputc() wrapper inline. */ 33113498266Sopenharmony_ci#define qadrt_use_fread_inline /* Generate fread() wrapper inline. */ 33213498266Sopenharmony_ci#define qadrt_use_fwrite_inline /* Generate fwrite() wrapper inline. */ 33313498266Sopenharmony_ci 33413498266Sopenharmony_ci#endif /* HEADER_CURL_CONFIG_OS400_H */ 335