[321] in Hesiod
Patches to hesiod...
daemon@ATHENA.MIT.EDU (Russell McOrmond)
Sun Sep 1 14:25:05 1996
From: Russell McOrmond <russell@flora.ottawa.on.ca>
To: maildomain@flora.ottawa.on.ca
Date: Sun, 1 Sep 1996 14:21:45 -0400 (EDT)
Reply-To: maildomain@flora.ottawa.on.ca
There seems to be two problems with the existing hesiod.tar.Z file from
ATHENA.
a) The updated BIND (Which is 'hesiod compatable' ;-) has new include
files which conflict with the include files of this version of the HESIOD
libraries. I am actually surprised that a new HESIOD has not been
released to fix this. My 'patch' amounts to commenting out some places
where conflicts happen. There is likely a much better way to do this,
but this is a quick-n-dirty hack.
b) LINUX (1.2.13) is an O.S. which does not have the extra 'quota' and
other fields in it's getpwnam() . Linux needs to be listed in the
sources for the hes_getpwnam() function.
While I have made other patches for the shadow password stuff, these
patches are what is required to get things going for the domain project.
Sendmail 8.7.5: I just compiled things on James machine.
a) Copy hesiod.h to the includes directory (Or include the hesiod
directory in the include path).
b) add -DHESIOD to ENVDEF= in the Makefile for your particular O.S.
c) Add -lhesiod to the LIBS= line.
---cut---
# rcsdiff -c -r1.1 Makefile hesiod.c hespwnam.c resscan.h
===================================================================
RCS file: RCS/Makefile,v
retrieving revision 1.1
diff -c -r1.1 Makefile
*** Makefile 1996/09/01 17:26:48 1.1
--- Makefile 1996/09/01 17:27:12
***************
*** 1,4 ****
! CFLAGS = -I.
#CFLAGS = -DSOLARIS -I.
#use the prevoius line (instead of the one before it) if compiling under Solaris
#CFLAGS = -D_AIX -DAIXV=32 -I.
--- 1,4 ----
! CFLAGS = -I. -DLINUX
#CFLAGS = -DSOLARIS -I.
#use the prevoius line (instead of the one before it) if compiling under Solaris
#CFLAGS = -D_AIX -DAIXV=32 -I.
===================================================================
RCS file: RCS/hesiod.c,v
retrieving revision 1.1
diff -c -r1.1 hesiod.c
*** hesiod.c 1996/09/01 17:25:25 1.1
--- hesiod.c 1996/09/01 17:28:49
***************
*** 75,81 ****
#include <sys/types.h>
#include <netinet/in.h>
#include <arpa/nameser.h>
! #include <resolv.h>
#include "resscan.h"
#include "hesiod.h"
--- 75,81 ----
#include <sys/types.h>
#include <netinet/in.h>
#include <arpa/nameser.h>
! /* #include <resolv.h> */
#include "resscan.h"
#include "hesiod.h"
===================================================================
RCS file: RCS/hespwnam.c,v
retrieving revision 1.1
diff -c -r1.1 hespwnam.c
*** hespwnam.c 1996/09/01 17:25:25 1.1
--- hespwnam.c 1996/09/01 17:28:15
***************
*** 42,48 ****
pw_entry.pw_uid = atoi(p);
p = _NextPWField(p);
pw_entry.pw_gid = atoi(p);
! #if (!defined(_AIX) || (AIXV < 31)) && !defined(sun)
pw_entry.pw_quota = 0;
#if defined(_AIX) && (AIXV < 31)
pw_entry.pw_age =
--- 42,48 ----
pw_entry.pw_uid = atoi(p);
p = _NextPWField(p);
pw_entry.pw_gid = atoi(p);
! #if (!defined(_AIX) || (AIXV < 31)) && !defined(sun) && !defined(LINUX)
pw_entry.pw_quota = 0;
#if defined(_AIX) && (AIXV < 31)
pw_entry.pw_age =
===================================================================
RCS file: RCS/resscan.h,v
retrieving revision 1.1
diff -c -r1.1 resscan.h
*** resscan.h 1996/09/01 17:25:17 1.1
--- resscan.h 1996/09/01 17:35:26
***************
*** 50,55 ****
#define RES_INITCHECK() if(!(_res.options&RES_INIT))res_init();
! extern struct state _res;
! extern char *p_cdname(), *p_rr(), *p_type(), *p_class();
extern struct nsmsg *res_scan(), *resolve(), *_resolve();
--- 50,55 ----
#define RES_INITCHECK() if(!(_res.options&RES_INIT))res_init();
! /* extern struct state _res; */
! /* extern char *p_cdname(), *p_rr(), *p_type(), *p_class(); */
extern struct nsmsg *res_scan(), *resolve(), *_resolve();
--
Russell McOrmond, Consultant : Flora St, Ottawa, Ontario, Canada, Earth, ...
FLORA Community WEB: <URL:http://www.flora.ottawa.on.ca/>
Defence fund for the Montreal Rally <URL:http://www.plcom.on.ca/defence/>