summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorathenian200 <athenian200@outlook.com>2020-07-29 18:52:42 -0500
committerathenian200 <athenian200@outlook.com>2020-07-29 18:52:42 -0500
commitefab8cdf38a61890551cee49dd8517ea56f5e137 (patch)
tree2675592f99099b5d599c3ad1251e995a5da7c6fe
parent9ac440aa71abf4357acea2efee1a26904468ea62 (diff)
downloadUXP-efab8cdf38a61890551cee49dd8517ea56f5e137.tar
UXP-efab8cdf38a61890551cee49dd8517ea56f5e137.tar.gz
UXP-efab8cdf38a61890551cee49dd8517ea56f5e137.tar.lz
UXP-efab8cdf38a61890551cee49dd8517ea56f5e137.tar.xz
UXP-efab8cdf38a61890551cee49dd8517ea56f5e137.zip
Issue #1615 - SunOS LDAP cleanup.
I meant to do this a long time ago, but basically it accounts for the new XP_SOLARIS build flag that never made it into the MailNews code. Additionally, it enables a compatibility flag for Solaris 11.4 that allows us to use the three-argument implementation of ctime_r still used by Solaris 11.3 and illumos (which also appears equivalent to the NSLDAPI_CTIME implementation used by libldap internally). Also, the ctime_r function has been added to the time.h header library for a while now, not sure why Mozilla thought we didn't have a ctime_r implementation.
-rw-r--r--ldap/c-sdk/common.mozbuild2
-rw-r--r--ldap/c-sdk/include/portable.h4
-rw-r--r--ldap/c-sdk/libldap/tmplout.c7
3 files changed, 5 insertions, 8 deletions
diff --git a/ldap/c-sdk/common.mozbuild b/ldap/c-sdk/common.mozbuild
index 4377982c5..e335f230a 100644
--- a/ldap/c-sdk/common.mozbuild
+++ b/ldap/c-sdk/common.mozbuild
@@ -17,6 +17,8 @@ elif CONFIG['OS_TARGET'] in ('OpenBSD', 'FreeBSD', 'NetBSD'):
DEFINES[CONFIG['OS_TARGET'].upper()] = True
elif CONFIG['OS_ARCH'] == 'WINNT':
DEFINES['_WINDOWS'] = True
+elif CONFIG['OS_ARCH'] == 'SunOS':
+ DEFINES['__USE_DRAFT6_PROTOTYPES__'] = True
DEFINES['_PR_PTHREADS'] = True
DEFINES['NET_SSL'] = True
diff --git a/ldap/c-sdk/include/portable.h b/ldap/c-sdk/include/portable.h
index 52698867f..d61d8535f 100644
--- a/ldap/c-sdk/include/portable.h
+++ b/ldap/c-sdk/include/portable.h
@@ -59,7 +59,7 @@
*/
#ifndef SYSV
-#if defined( hpux ) || defined( SOLARIS ) || defined ( sgi ) || defined( SVR4 )
+#if defined( hpux ) || defined(XP_SOLARIS) || defined ( sgi ) || defined( SVR4 )
#define SYSV
#endif
#endif
@@ -191,7 +191,7 @@
*/
#if !defined(NSLDAPI_CONNECT_MUST_NOT_BE_INTERRUPTED) && \
( defined(AIX) || defined(IRIX) || defined(HPUX) || defined(SUNOS4) \
- || defined(SOLARIS) || defined(OSF1) ||defined(freebsd))
+ || defined(XP_SOLARIS) || defined(OSF1) ||defined(freebsd))
#define NSLDAPI_CONNECT_MUST_NOT_BE_INTERRUPTED
#endif
diff --git a/ldap/c-sdk/libldap/tmplout.c b/ldap/c-sdk/libldap/tmplout.c
index 0dded6b4c..fae0b94d5 100644
--- a/ldap/c-sdk/libldap/tmplout.c
+++ b/ldap/c-sdk/libldap/tmplout.c
@@ -43,16 +43,11 @@
#include "ldap-int.h"
#include "disptmpl.h"
-#if defined(_WINDOWS) || defined(aix) || defined(SCOOS) || defined(OSF1) || defined(SOLARIS)
+#if defined(_WINDOWS) || defined(aix) || defined(SCOOS) || defined(OSF1) || defined(XP_SOLARIS)
#include <time.h> /* for struct tm and ctime */
#endif
-/* This is totally lame, since it should be coming from time.h, but isn't. */
-#if defined(SOLARIS)
-char *ctime_r(const time_t *, char *, int);
-#endif
-
static int do_entry2text( LDAP *ld, char *buf, char *base, LDAPMessage *entry,
struct ldap_disptmpl *tmpl, char **defattrs, char ***defvals,
writeptype writeproc, void *writeparm, char *eol, int rdncount,