initial illumos port

This commit is contained in:
Peter Tribble
2014-03-21 16:37:00 -07:00
committed by Jon Trulson
parent 3c14b8b5ce
commit 468d576030
48 changed files with 117 additions and 71 deletions

View File

@@ -223,7 +223,7 @@ util_vfork()
#ifdef __cplusplus
extern "C" {
#endif
#if defined(__uxp__) || defined(__hpux) || (defined(sun) && OSMAJORVERSION >= 5 && OSMINORVERSION >= 4)
#if defined(__uxp__) || defined(__hpux) || (defined(sun) && OSMAJORVERSION >= 5 && OSMINORVERSION >= 4 && OSMINORVERSION <=10 )
extern int putenv(const char *string);
#elif !(defined(__osf__) || defined(__aix) || defined(__NetBSD__))
extern int putenv(char *string);

View File

@@ -46,7 +46,7 @@
#include "calctool.h"
#include "ds_common.h"
#ifdef sun
#ifdef legacysun
/* Copied from math.h */
struct exception {

View File

@@ -42,7 +42,7 @@ SYS_LIBRARIES = -lm -liconv
#endif
#if defined (SunArchitecture)
SYS_LIBRARIES = -lm -ldl -L/opt/SUNWspro/SC2.0.1 -lC
SYS_LIBRARIES = -lm -ldl -lC
#endif /* SunArchitecture */
#if defined (USLArchitecture)

View File

@@ -30,7 +30,7 @@ TCL_LIBRARY = $(prefix)/tcl$(VERSION)
#if defined(SunArchitecture)
EXTRA_DEFINES = -DTCL_LIBRARY=\"${TCL_LIBRARY}\" \
-DNO_UNION_WAIT -DHAVE_UNISTD_H \
-DNO_UNION_WAIT -DHAVE_UNISTD_H -DNEED_MATHERR \
-DTCL_GOT_TIMEZONE
#elif defined(IBMArchitecture)

View File

@@ -42,7 +42,7 @@
#ifdef __cplusplus
#include <stdlib.h>
#if !defined(__DECCXX) && !defined(USL) && !defined(linux) && !defined(CSRG_BASED)
#if !defined(__DECCXX) && !defined(USL) && !defined(linux) && !defined(CSRG_BASED) && !defined(sun)
#include <osfcn.h>
#else
#include <unistd.h>

View File

@@ -59,7 +59,14 @@ SOLARIS_OBJS =
#endif
#if defined(SunArchitecture) && !UsePamLibrary
/* Unsure when libauth went away */
# if (OSMajorVersion == 5) && (OSMinorVersion < 5)
PAM_LIB = -lauth
# else
PAM_SRCS = pam_svc.c
PAM_OBJS = pam_svc.o
PAM_LIB = -lpam
# endif
#endif
XDMDIR = $(CDE_LOGFILES_TOP)
@@ -99,13 +106,12 @@ SYS_LIBRARIES = -lsec
* on Solaris 2.4 and run on Solaris 2.5. In Solaris 2.4 some of
* libcmd.a functions are also in libauth.so. But on Solaris 2.5
* these Sun private functions have been removed from libauth.so. */
SYS_LIBRARIES = -lm -ldl -lgen -lresolv -lC -lbsm -lcmd -lauth $(PAM_LIB)
SYS_LIBRARIES = -lm -ldl -lgen -lresolv -lC -lbsm -lcmd $(PAM_LIB)
EXTRA_DEFINES = -DPAM
# if UsePamLibrary
EXTRA_DEFINES = -DPAM
# else
EXTRA_DEFINES = -DSUNAUTH
# endif
#endif

View File

@@ -150,7 +150,7 @@ PamAuthenticate ( char* prog_name,
return(PAM_AUTH_ERR);
}
#ifdef sun
#ifdef legacysun
/* Solaris BSM Audit trail */
audit_login_save_host(display_name);
@@ -167,7 +167,7 @@ PamAuthenticate ( char* prog_name,
status = pam_authenticate( pamh, 0 );
pam_auth_trys++;
#ifdef sun
#ifdef legacysun
pwd = getpwnam(user);
audit_login_save_pw(pwd);
@@ -262,7 +262,7 @@ PamAccounting( char* prog_name,
Debug("PamAccounting: USER_PROCESS open_session error=%d\n",
status);
}
#ifdef sun
#ifdef legacysun
if (status == PAM_SUCCESS) audit_login_success();
#endif
session_type = SOLARIS_LOGIN;
@@ -450,7 +450,7 @@ login_conv(int num_msg, struct pam_message **msg,
if (saved_user_passwd != NULL) {
r->resp = (char *) malloc(strlen(saved_user_passwd)+1);
if (r->resp == NULL) {
__pam_free_resp(num_msg, *response);
/* __pam_free_resp(num_msg, *response); */
*response = NULL;
return (PAM_CONV_ERR);
}

View File

@@ -1430,7 +1430,7 @@ Authenticate( struct display *d, char *name, char *passwd, char **msg )
case PAM_SUCCESS:
return(VF_OK);
case PAM_AUTHTOKEN_REQD:
case PAM_NEW_AUTHTOK_REQD:
return(VF_PASSWD_AGED);
default:

View File

@@ -88,7 +88,7 @@ extern XtPointer _XmStringUngenerate (
}
extern int forceUpdate( Widget );
extern void forceUpdate( Widget );
SelectFileCmd::SelectFileCmd (const char * name,
const char * label,

View File

@@ -201,16 +201,16 @@ dispname(const char *hdr)
if (hdr == 0)
return 0;
if (((cp = strchr(hdr, '<')) != 0) && (cp > hdr)) {
if (((cp = const_cast <char *> (strchr(hdr, '<'))) != 0) && (cp > hdr)) {
*cp = 0;
if ((*hdr == '"') && ((cp = strrchr(++hdr, '"')) != 0))
if ((*hdr == '"') && ((cp = const_cast <char *> (strrchr(++hdr, '"'))) != 0))
*cp = 0;
return (char *)hdr;
} else if ((cp = strchr(hdr, '(')) != 0) {
} else if ((cp = const_cast <char *> (strchr(hdr, '('))) != 0) {
hdr = ++cp;
if ((cp = strchr(hdr, '+')) != 0)
if ((cp = const_cast <char *> (strchr(hdr, '+'))) != 0)
*cp = 0;
if ((cp = strrchr(hdr, ')')) != 0)
if ((cp = const_cast <char *> (strrchr(hdr, ')'))) != 0)
*cp = 0;
return (char *)hdr;
}

View File

@@ -728,7 +728,7 @@ FindDialog::compareMessage(DtMailMessageHandle handle)
return(found);
}
#if !defined(CSRG_BASED) && !defined(linux)
#if !defined(CSRG_BASED) && !defined(linux) && !defined(sun)
//
// See if string 'toFind' is anyware in string 'str'.
// A case-insensitive version of strstr().

View File

@@ -957,6 +957,12 @@ Usage(char *progname)
nl_catd DT_catd = (nl_catd) -1; // catgets file descriptor
#if defined(reallyoldsun) || defined(USL)
#define SA_HANDLER_TYPE void (*)(void)
#else
#define SA_HANDLER_TYPE void (*)(int)
#endif
void RoamApp::initialize(int *argcp, char **argv)
{
char **av = argv;
@@ -991,11 +997,7 @@ void RoamApp::initialize(int *argcp, char **argv)
action = &action_buf;
memset((void*) action, 0, sizeof(struct sigaction));
#ifdef USL
action->sa_handler = (void (*)())panicQuitSignalHandler;
#else
action->sa_handler = panicQuitSignalHandler;
#endif
action->sa_handler = (SA_HANDLER_TYPE) panicQuitSignalHandler;
action->sa_flags = 0;
sigaction(SIGHUP, action, NULL);
sigaction(SIGINT, action, NULL);

View File

@@ -143,7 +143,7 @@ extern XtPointer _XmStringUngenerate (
#include <sys/file.h>
extern int forceUpdate( Widget );
extern void forceUpdate( Widget );
RoamCmd::RoamCmd
(char *name, char *label, int active, RoamMenuWindow *window)

View File

@@ -48,7 +48,7 @@
#include <Xm/Xm.h>
#include <Xm/MessageB.h>
#include <assert.h>
extern int forceUpdate( Widget );
extern void forceUpdate( Widget );
RoamInterruptibleCmd::RoamInterruptibleCmd ( char *name,

View File

@@ -190,16 +190,16 @@ dispname(const char *hdr)
if (hdr == 0)
return 0;
if (((cp = strchr(hdr, '<')) != 0) && (cp > hdr)) {
if (((cp = const_cast <char *> (strchr(hdr, '<'))) != 0) && (cp > hdr)) {
*cp = 0;
if ((*hdr == '"') && ((cp = strrchr(++hdr, '"')) != 0))
if ((*hdr == '"') && ((cp = const_cast <char *> (strrchr(++hdr, '"'))) != 0))
*cp = 0;
return (char *)hdr;
} else if ((cp = strchr(hdr, '(')) != 0) {
} else if ((cp = const_cast <char *> (strchr(hdr, '('))) != 0) {
hdr = ++cp;
if ((cp = strchr(hdr, '+')) != 0)
if ((cp = const_cast <char *> (strchr(hdr, '+'))) != 0)
*cp = 0;
if ((cp = strrchr(hdr, ')')) != 0)
if ((cp = const_cast <char *> (strrchr(hdr, ')'))) != 0)
*cp = 0;
return (char *)hdr;
}

View File

@@ -103,7 +103,7 @@ class BufferMemory : public Buffer {
virtual int getSize(void); // get total size of the buffer
private:
#if !defined(linux) && !defined(CSRG_BASED)
#if !defined(linux) && !defined(CSRG_BASED) && !defined(sun)
class Chunk;
#endif

View File

@@ -160,7 +160,7 @@ DtMailServer::set_password(char *password)
//
// len - Length of message.
//
#if defined(sun) || defined(USL)
#if defined(reallyoldsun) || defined(USL)
#define SA_HANDLER_TYPE void (*)(void)
#else
#define SA_HANDLER_TYPE void (*)(int)
@@ -231,7 +231,7 @@ DtMailServer::ptrans_retrieve_readandappend(
// Determine if we are done with this message.
if (proto_is_delimited())
{
char *s = strrchr((const char *) _msgbuf, (int) '.');
char *s = const_cast<char *> (strrchr((const char *) _msgbuf, (int) '.'));
if (s &&
(s == _msgbuf || *(s-1) == '\n') &&

View File

@@ -783,7 +783,7 @@ DtMail::Session::getRelativePath(DtMailEnv & error, const char * path)
free(old_exp);
// Check to see if the path starts with the folder path.
char * matched_path = strstr(path, exp_name);
char * matched_path = const_cast<char *>(strstr(path, exp_name));
if (matched_path == path) {
// Yes it does, make it a relative path to the folder dir.
int folder_path_length = strlen(exp_name);

View File

@@ -938,9 +938,9 @@ MIMEBodyPart::csFromContentType(DtMailValueSeq &value)
}
}
// Get charset value
val_ptr = strstr(val, "charset=");
val_ptr = const_cast <char *> (strstr(val, "charset="));
if ( val_ptr == NULL ) {
val_ptr = strstr(val, "CHARSET=");
val_ptr = const_cast <char *> (strstr(val, "CHARSET="));
}
if ( val_ptr == NULL ) {
return NULL;

View File

@@ -122,7 +122,7 @@ getNamedValueString(const char *string, const char *name)
results = strdup(&string[offset + nameLen + 1]);
if (*results == '"') {
results++;
stringEnd = strchr(results, '"');
stringEnd = const_cast <char *> (strchr(results, '"'));
if (stringEnd != NULL) {
*stringEnd = '\0';
}
@@ -420,7 +420,7 @@ RFCMailBox::_assemblePartial(DtMailEnv & error,
//
embHeader1StLen = (int) length;
embHeader1St = (const char *)contents;
endHeader = strstr((const char *)contents, "\n\n");
endHeader = const_cast <char *> (strstr((const char *)contents, "\n\n"));
if (endHeader != NULL) {
RFCEnvelope embEnv(error,

View File

@@ -4542,6 +4542,12 @@ RFCMailBox::startAutoSave(DtMailEnv & error,
_session->removeEventRoutine(error, PollEntry, this);
}
#if defined(reallyoldsun) || defined(USL)
#define SA_HANDLER_TYPE void (*)(void)
#else
#define SA_HANDLER_TYPE void (*)(int)
#endif
void
RFCMailBox::dumpMaps(const char *str)
{
@@ -4573,11 +4579,7 @@ RFCMailBox::dumpMaps(const char *str)
*/
(void) sigemptyset(&sig_act.sa_mask);
sig_act.sa_flags = 0;
#if defined(USL)
sig_act.sa_handler = (void(*)())SigBusHandler;
#else
sig_act.sa_handler = SigBusHandler;
#endif /* USL */
sig_act.sa_handler = (SA_HANDLER_TYPE) SigBusHandler;
sigaction(SIGBUS, &sig_act, &old_sig_act);
sigbus_env_valid = 1;
if (setjmp(sigbus_env) == 0) {

View File

@@ -26,7 +26,7 @@ SYS_LIBRARIES = -lmsaa -liconv
#endif
#if defined (SunArchitecture)
SYS_LIBRARIES = -lintl -L/opt/SUNWspro/SC2.0.1 -lm -lgen -ldl -lC
SYS_LIBRARIES = -lintl -lm -lgen -ldl -lC
#endif
PROGRAMS = dtpdm

View File

@@ -40,6 +40,16 @@
#define boolean boolean_t
#define true B_TRUE
#define false B_FALSE
#elif defined(sun)
#include <sys/types.h>
#define boolean boolean_t
#if defined(__XOPEN_OR_POSIX)
#define true _B_TRUE
#define false _B_FALSE
#else
#define true B_TRUE
#define false B_FALSE
#endif
#elif defined(linux)
#define false 0
#define true 1

View File

@@ -41,6 +41,16 @@
#define boolean boolean_t
#define true B_TRUE
#define false B_FALSE
#elif defined(sun)
#include <sys/types.h>
#define boolean boolean_t
#if defined(__XOPEN_OR_POSIX)
#define true _B_TRUE
#define false _B_FALSE
#else
#define true B_TRUE
#define false B_FALSE
#endif
#elif defined(linux)
#define false 0
#define true 1

View File

@@ -111,7 +111,7 @@ struct passwd {
#include <shadow.h>
#define getpwnam getspnam
#endif
#if !(defined(_AIX) || defined(hpux))
#if !(defined(_AIX) || defined(hpux) || defined(sun))
# define srandom srand
# define random rand
# define MAXRAND (32767.0)

View File

@@ -41,7 +41,7 @@
#include "dtscreen.h"
#if !defined(_AIX) && !defined(hpV4) && !defined(linux) && !defined(CSRG_BASED)
#if !defined(_AIX) && !defined(hpV4) && !defined(linux) && !defined(sun) && !defined(CSRG_BASED)
int
usleep(unsigned long usec)
{

View File

@@ -88,7 +88,7 @@ typedef struct {
int size[MAXCOLORS];
} wormstruct;
#if !defined(CSRG_BASED)
#if !defined(CSRG_BASED) && !defined(sun)
int
round(x)
float x;

View File

@@ -72,7 +72,7 @@ main(int argc, char **argv)
}
/* init data... */
#if defined(USL) || defined(__uxp__) || defined(linux) || defined(CSRG_BASED)
#if defined(USL) || defined(__uxp__) || defined(linux) || defined(sun) || defined(CSRG_BASED)
(void) memset((void *) &myaddr_in, (int) '\0', sizeof(myaddr_in));
#else
(void) memset(myaddr_in, '\0', sizeof(myaddr_in));