Re: [EXIM] Problems building Exim 1.82 on DGUX

Top Page
Delete this message
Reply to this message
Author: Ken Bailey
Date:  
To: dg-users
CC: exim-users
Subject: Re: [EXIM] Problems building Exim 1.82 on DGUX
Hi,

With a bit of help from the author, Philip Hazel, I have successfully
built Exim 1.82 under dgux R4.11MU04 generic AViiON mc88100. See
http://www.exim.org for a better description than I could manage and
see http://maps.vix.com/tsi/ for part of the reason why I wanted to do
this.

Topically for dg-users, the main stumbling block was some DG platform-
dependant code. Part of the Exim code tests for IP source-routed
packets. This uses definitions usually found in netinet/ip_var.h,
notably ipoptions. DG defines this as ip_opts in netinet/in.h *but*
for Intel only. I couldn't see any way of easily getting at the IP
options for m88k and if anybody knows any better please say so.

By applying the following diffs to exim.h and smtp_in.c respectively,
and using the attached Makefile-dg and os.h-dgux, Exim builds without
a whimper.

exim.h
145c145
< #ifndef LINUX_IP_OPTIONS
---
> #if ! defined(LINUX_IP_OPTIONS) && ! defined(NO_IP_VAR_H)


smtp_in.c
709c709
<     #if !HAVE_IPV6
---

>     #if ! defined(HAVE_IPV6) || ! defined(NO_IP_OPTIONS)


We'd be interested to know if Intel DGUX can use the IP options.

Philip hopes to roll these modest mods into the next release and if
anybody can offer him a long-term DGUX account for testing purposes
then you can help this support continue in the future. (If I could
have, I would have :)

Regards,

Ken

--
# Ken Bailey, Computer Section,   # Internet: K.Bailey@??? #
# The Royal Botanic Gardens, Kew, #      Tel: +44 (0)181 332 5729    #
# Richmond, Surrey, TW9 3AE, UK   #      Fax: +44 (0)181 332 5278    #

# Exim: OS-specific make file for DGUX
#
# Written by Ken Bailey (K.Bailey@???) Feb 1998
# on dgux R4.11MU04 generic AViiON mc88100
# with no X

BASENAME_COMMAND=/bin/basename
CHOWN_COMMAND=/bin/chown
CHGRP_COMMAND=/bin/chgrp
MV_COMMAND=/bin/mv
RM_COMMAND=/bin/rm


# PERL
# Perl is not necessary for running Exim itself, but some Perl utilities
# are provided for processing the logs. Perl 5 is assumed.
# DG ship perl version 4.036 in /bin/perl so need to use locally installed perl

PERL_COMMAND=/usr/local/bin/perl


CC=gcc

# dg's version of gcc likes O2

CFLAGS=-O2

#

RANLIB=@true
LIBS=-lsocket -lnsl
LIBRESOLV=-lresolv
DBMLIB=-ldbm

#
#
HAVE_SETEUID=YES

# End





/* Exim: OS-specific C header file for DGUX */

/* Written by Ken Bailey (K.Bailey@???) Feb 1998 */
/* on dgux R4.11MU04 generic AViiON mc88100                */

#define HAVE_SYS_STATVFS_H

#define NO_SYSEXITS              /* DGUX doesn't ship sysexits.h */
#define EX_TEMPFAIL 75 /* temp failure; user is invited to retry */

#define NO_IP_VAR_H              /* DGUX has no netinet/ip_var.h */

/*
   The definition of ipotions (aka ip_opts) in netinet/in.h is
   only defined for Intel DG _IX86_ABI . 
   We have to skip the detection of some source-routing IP attacks.
   See smtp_in.c
*/

#define NO_IP_OPTIONS

/* End */