From b3ac184962ad777904b21689beb8ad3098aae578 Mon Sep 17 00:00:00 2001 From: Kurt Zeilenga Date: Thu, 20 Aug 1998 02:18:28 +0000 Subject: [PATCH] Fixed ldapconfig.h.edit/Make-template to generate ldapconfig.h correctly. ldif2ldbm.c defaults moved to ldapconfig.h, sed no longer needed. Changed type of lconn_lastused to time_t. Added include were needed. --- build/platforms/freebsd-gcc/Make-platform | 2 +- clients/finger/main.c | 8 +- clients/gopher/go500gw.c | 12 +- clients/tools/ldapdelete.c | 2 + clients/tools/ldapmodrdn.c | 2 + clients/tools/ldapsearch.c | 2 + clients/ud/find.c | 3 + clients/ud/group.c | 3 + clients/ud/help.c | 3 + clients/ud/mod.c | 6 +- clients/ud/util.c | 5 + include/Make-template | 3 +- include/ldap.h | 2 +- include/ldapconfig.h.edit | 11 +- include/ldapconfig.h.um | 273 ---------------------- libraries/libldap/sort.c | 1 + libraries/liblthread/stack.c | 1 + servers/slapd/tools/Make-template | 9 +- servers/slapd/tools/ldif.c | 6 +- servers/slapd/tools/ldif2ldbm.c | 5 +- servers/slurpd/args.c | 1 + 21 files changed, 59 insertions(+), 301 deletions(-) delete mode 100644 include/ldapconfig.h.um diff --git a/build/platforms/freebsd-gcc/Make-platform b/build/platforms/freebsd-gcc/Make-platform index d8ee543a6a..f5750b49ce 100644 --- a/build/platforms/freebsd-gcc/Make-platform +++ b/build/platforms/freebsd-gcc/Make-platform @@ -14,7 +14,7 @@ EDITOR=/usr/bin/vi FINGER=/usr/bin/finger SENDMAIL=/usr/sbin/sendmail -RUNDIR=/var/run +LDAP_RUNDIR=/var/run MANCOMPRESS=gzip MANCOMPRESSSUFFIX=.gz diff --git a/clients/finger/main.c b/clients/finger/main.c index 77e076fdc7..613916c7dd 100644 --- a/clients/finger/main.c +++ b/clients/finger/main.c @@ -10,9 +10,6 @@ * is provided ``as is'' without express or implied warranty. */ -#include "lber.h" -#include "ldap.h" -#include "disptmpl.h" #include #include #include @@ -29,6 +26,11 @@ #include #endif /* aix */ #include + +#include "lber.h" +#include "ldap.h" +#include "disptmpl.h" + #include "portable.h" #include "ldapconfig.h" diff --git a/clients/gopher/go500gw.c b/clients/gopher/go500gw.c index 16674d0e80..df93aa7f0c 100644 --- a/clients/gopher/go500gw.c +++ b/clients/gopher/go500gw.c @@ -10,9 +10,6 @@ * is provided ``as is'' without express or implied warranty. */ -#include "lber.h" -#include "ldap.h" -#include "disptmpl.h" #include #include #include @@ -30,13 +27,18 @@ #ifdef aix #include #endif /* aix */ -#include "portable.h" -#include "ldapconfig.h" #ifdef USE_SYSCONF #include #endif /* USE_SYSCONF */ +#include "lber.h" +#include "ldap.h" +#include "disptmpl.h" + +#include "portable.h" +#include "ldapconfig.h" + int debug; int dosyslog; int inetd; diff --git a/clients/tools/ldapdelete.c b/clients/tools/ldapdelete.c index 3054cfb54f..d827575476 100644 --- a/clients/tools/ldapdelete.c +++ b/clients/tools/ldapdelete.c @@ -4,6 +4,8 @@ #include #include #include +#include + #include #include diff --git a/clients/tools/ldapmodrdn.c b/clients/tools/ldapmodrdn.c index 69d99e7f5a..3db722aa07 100644 --- a/clients/tools/ldapmodrdn.c +++ b/clients/tools/ldapmodrdn.c @@ -4,6 +4,8 @@ #include #include #include +#include + #include #include diff --git a/clients/tools/ldapsearch.c b/clients/tools/ldapsearch.c index d96aff1317..5d39297337 100644 --- a/clients/tools/ldapsearch.c +++ b/clients/tools/ldapsearch.c @@ -1,6 +1,8 @@ #include #include #include +#include + #include #include #include diff --git a/clients/ud/find.c b/clients/ud/find.c index 3551c1af6d..e4a9893edb 100644 --- a/clients/ud/find.c +++ b/clients/ud/find.c @@ -13,11 +13,14 @@ #include #include #include +#include #ifndef __STDC__ #include #endif + #include #include + #include "ud.h" extern char *search_base; /* search base */ diff --git a/clients/ud/group.c b/clients/ud/group.c index 64006170eb..f7bf253027 100644 --- a/clients/ud/group.c +++ b/clients/ud/group.c @@ -13,8 +13,11 @@ #include #include +#include + #include #include + #include #include "ud.h" diff --git a/clients/ud/help.c b/clients/ud/help.c index 5a1ff231e0..4bf4c926a9 100644 --- a/clients/ud/help.c +++ b/clients/ud/help.c @@ -13,8 +13,11 @@ #include #include #include +#include + #include #include + #include "ud.h" #ifdef DEBUG diff --git a/clients/ud/mod.c b/clients/ud/mod.c index ef7099e948..9a3318a898 100644 --- a/clients/ud/mod.c +++ b/clients/ud/mod.c @@ -13,12 +13,14 @@ #include #include #include -#include -#include +#include #ifndef __STDC__ #include #endif #include + +#include +#include #include "ud.h" extern struct entry Entry; diff --git a/clients/ud/util.c b/clients/ud/util.c index 389b8a0d62..b73137836a 100644 --- a/clients/ud/util.c +++ b/clients/ud/util.c @@ -21,10 +21,14 @@ #include #endif #include +#include #include + #include #include + #include + #if !defined(DOS) && !defined( VMS) #include #endif @@ -34,6 +38,7 @@ #else /* USE_TERMIOS */ #include #endif /* USE_TERMIOS */ + #include "ud.h" #if defined(VMS) diff --git a/include/Make-template b/include/Make-template index 0b7ba0c17c..7c59838fb5 100644 --- a/include/Make-template +++ b/include/Make-template @@ -31,7 +31,8 @@ ldapconfig.h: ldapconfig.h.edit Makefile echo " * INSTALL file for more information." >> $@; \ echo " */ " >> $@; \ echo "" >> $@; \ - $(SED) -e 's;%ETCDIR%;$(RUNTIMEETCDIR);' \ + $(SED) -e 's;%ETCDIR%;$(LDAP_ETCDIR);' \ + -e 's;%BINDIR%;$(LDAP_BINDIR);' \ -e 's;%SBINDIR%;$(LDAP_SBINDIR);' \ -e 's;%LIBEXECDIR%;$(LDAP_LIBEXECDIR);' \ -e 's;%RUNDIR%;$(LDAP_RUNDIR);' \ diff --git a/include/ldap.h b/include/ldap.h index ee956742e7..8c91b2160f 100644 --- a/include/ldap.h +++ b/include/ldap.h @@ -318,7 +318,7 @@ typedef struct ldap_server { typedef struct ldap_conn { Sockbuf *lconn_sb; int lconn_refcnt; - unsigned int lconn_lastused; /* time */ + time_t lconn_lastused; /* time */ int lconn_status; #define LDAP_CONNST_NEEDSOCKET 1 #define LDAP_CONNST_CONNECTING 2 diff --git a/include/ldapconfig.h.edit b/include/ldapconfig.h.edit index 586f487fd9..265410e2a1 100644 --- a/include/ldapconfig.h.edit +++ b/include/ldapconfig.h.edit @@ -10,8 +10,8 @@ * is provided ``as is'' without express or implied warranty. */ -#ifndef _CONFIG_H -#define _CONFIG_H +#ifndef _LDAP_CONFIG_H +#define _LDAP_CONFIG_H /* * config.h for LDAP -- edit this file to customize LDAP client behavior. @@ -27,6 +27,11 @@ /* default place to start searching */ #define DEFAULT_BASE "o=Your Organization Name, c=US" +#define DEFAULT_BINDIR "%BINDIR%" +#define DEFAULT_SBINDIR "%SBINDIR%" +#define DEFAULT_ETCDIR "%ETCDIR%" +#define DEFAULT_LIBEXECDIR "%LIBEXECDIR%" + /********************************************************************* * * * You probably do not need to edit anything below this point * @@ -265,4 +270,4 @@ Please try again later.\r\n" /* minimum max ids that a single index entry can map to in ldbm */ #define SLAPD_LDBM_MIN_MAXIDS 4000 -#endif /* _CONFIG_H */ +#endif /* _LDAP_CONFIG_H */ diff --git a/include/ldapconfig.h.um b/include/ldapconfig.h.um deleted file mode 100644 index ecaf918af0..0000000000 --- a/include/ldapconfig.h.um +++ /dev/null @@ -1,273 +0,0 @@ -/* - * Copyright (c) 1994 Regents of the University of Michigan. - * All rights reserved. - * - * Redistribution and use in source and binary forms are permitted - * provided that this notice is preserved and that due credit is given - * to the University of Michigan at Ann Arbor. The name of the University - * may not be used to endorse or promote products derived from this - * software without specific prior written permission. This software - * is provided ``as is'' without express or implied warranty. - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -/* - * config.h for LDAP -- edit this file to customize LDAP client behavior. - * NO platform-specific definitions should be placed in this file. - * Note that this is NOT used by the LDAP or LBER libraries. - */ - -/* - * SHARED DEFINITIONS - things you should change - */ - /* default ldap host */ -#define LDAPHOST "ldap.itd.umich.edu" - /* default place to start searching */ -#define DEFAULT_BASE "o=University of Michigan, c=US" - -/********************************************************************* - * * - * You probably do not need to edit anything below this point * - * * - *********************************************************************/ - -/* - * SHARED DEFINITIONS - other things you can change - */ - /* default attribute to use when sorting entries, NULL => sort by DN */ -#define SORT_ATTR NULL - /* default count of DN components to show in entry displays */ -#define DEFAULT_RDNCOUNT 2 - /* default config file locations */ -#define FILTERFILE "%ETCDIR%/ldapfilter.conf" -#define TEMPLATEFILE "%ETCDIR%/ldaptemplates.conf" -#define SEARCHFILE "%ETCDIR%/ldapsearchprefs.conf" -#define FRIENDLYFILE "%ETCDIR%/ldapfriendly" - -/* - * FINGER DEFINITIONS - */ - /* who to bind as */ -#define FINGER_BINDDN "cn=finger, ou=Miscellaneous Servers, o=University of Michigan, c=US" - /* where to search */ -#define FINGER_BASE DEFAULT_BASE - /* banner to print */ -#define FINGER_BANNER "X.500 Finger Service...\r\n" - /* who to report errors to */ -#define FINGER_ERRORS "x500@umich.edu" - /* what to say if no matches are found */ -#define FINGER_NOMATCH \ -"Search failed to find anything. Currently, this service contains\r\n\ -information only on University of Michigan faculty, staff, and students.\r\n\ -Other likely places to finger are:\r\n\ - um.cc.umich.edu\r\n\ - azure.engin.umich.edu\r\n" - /* what to say if the service may be unavailable */ -#define FINGER_UNAVAILABLE \ -"The X.500 service may be temporarily unavailable.\r\n\ -Please try again later.\r\n" - /* printed if a match has no email address - for disptmp default */ -#define FINGER_NOEMAIL1 "None registered in this service. Try fingering at:" -#define FINGER_NOEMAIL2 "um.cc.umich.edu or azure.engin.umich.edu" -#define FINGER_NOEMAIL { FINGER_NOEMAIL1, FINGER_NOEMAIL2, NULL } - /* maximum number of matches returned */ -#define FINGER_SIZELIMIT 50 - /* max number of hits displayed in full before a list is presented */ -#define FINGER_LISTLIMIT 1 - /* what to exec for "finger @host" */ -#define FINGER_CMD "/usr/ucb/finger" - /* how to treat aliases when searching */ -#define FINGER_DEREF LDAP_DEREF_FINDING - /* attribute to use when sorting results */ -#define FINGER_SORT_ATTR SORT_ATTR - /* enable ufn support */ -#define FINGER_UFN - /* timeout for searches */ -#define FINGER_TIMEOUT 60 - /* number of DN components to show in entry displays */ -#define FINGER_RDNCOUNT DEFAULT_RDNCOUNT - -/* - * GO500 GOPHER GATEWAY DEFINITIONS - */ - /* who to bind as */ -#define GO500_BINDDN "cn=go500, ou=Miscellaneous Servers, o=University of Michigan, c=US" - /* where to search */ -#define GO500_BASE DEFAULT_BASE - /* port on which to listen */ -#define GO500_PORT 5555 - /* how to handle aliases */ -#define GO500_DEREF LDAP_DEREF_FINDING - /* attribute to use when sorting results */ -#define GO500_SORT_ATTR SORT_ATTR - /* timeout for searches */ -#define GO500_TIMEOUT 60 - /* enable ufn support */ -#define GO500_UFN - /* - * only set and uncomment this if your hostname() does not return - * a fully qualified hostname - */ -/* #define GO500_HOSTNAME "fully.qualified.hostname.here" */ - /* number of DN components to show in entry displays */ -#define GO500_RDNCOUNT DEFAULT_RDNCOUNT - -/* - * GO500GW GOPHER GATEWAY DEFINITIONS - */ - /* who to bind as */ -#define GO500GW_BINDDN "cn=go500gw, ou=Miscellaneous Servers, o=University of Michigan, c=US" - /* where the helpfile lives */ -#define GO500GW_HELPFILE "%ETCDIR%/go500gw.help" - /* port on which to listen */ -#define GO500GW_PORT 7777 - /* timeout on all searches */ -#define GO500GW_TIMEOUT 180 - /* enable ufn support */ -#define GO500GW_UFN - /* attribute to use when sorting results */ -#define GO500GW_SORT_ATTR SORT_ATTR - /* - * only set and uncomment this if your hostname() does not return - * a fully qualified hostname - */ -/* #define GO500GW_HOSTNAME "fully.qualified.hostname.here" */ - /* number of DN components to show in entry displays */ -#define GO500GW_RDNCOUNT DEFAULT_RDNCOUNT - -/* - * RCPT500 MAIL RESPONDER GATEWAY DEFINITIONS - */ - /* who to bind as */ -#define RCPT500_BINDDN "cn=Rcpt500, ou=Miscellaneous Servers, o=University of Michigan, c=US" - /* where the helpfile lives */ -#define RCPT500_HELPFILE "%ETCDIR%/rcpt500.help" - /* maximum number of matches returned */ -#define RCPT500_SIZELIMIT 50 - /* address replies will appear to come from */ -#define RCPT500_FROM "\"X.500 Query Program\" " - /* command that will accept an RFC822 message text on standard - input, and send it. sendmail -t does this nicely. */ -#define RCPT500_PIPEMAILCMD "/usr/lib/sendmail -t" - /* where to search */ -#define RCPT500_BASE DEFAULT_BASE - /* attribute to use when sorting results */ -#define RCPT500_SORT_ATTR SORT_ATTR - /* max number of hits displayed in full before a list is presented */ -#define RCPT500_LISTLIMIT 3 - /* enable ufn support */ -#define RCPT500_UFN - /* number of DN components to show in entry displays */ -#define RCPT500_RDNCOUNT DEFAULT_RDNCOUNT - -/* - * LDAPSEARCH TOOL - */ - /* who to bind as */ -#define LDAPSEARCH_BINDDN "cn=LDAP Search Tool, ou=Miscellaneous Servers, o=University of Michigan, c=US" - /* search base */ -#define LDAPSEARCH_BASE DEFAULT_BASE - -/* - * LDAPMODIFY TOOL - */ - /* who to bind as */ -#define LDAPMODIFY_BINDDN "cn=Manager, o=University of Michigan, c=US" - /* search base */ -#define LDAPMODIFY_BASE DEFAULT_BASE - -/* - * LDAPDELETE TOOL - */ - /* who to bind as */ -#define LDAPDELETE_BINDDN "cn=Manager, o=University of Michigan, c=US" - /* search base */ -#define LDAPDELETE_BASE DEFAULT_BASE - -/* - * LDAPMODRDN TOOL - */ - /* who to bind as */ -#define LDAPMODRDN_BINDDN "cn=Manager, o=University of Michigan, c=US" - /* search base */ -#define LDAPMODRDN_BASE DEFAULT_BASE - -/* - * MAIL500 MAILER DEFINITIONS - */ - /* who to bind as */ -#define MAIL500_BINDDN "cn=mail500, ou=Miscellaneous Servers, o=University of Michigan, c=US" - /* max number of ambiguous matches reported */ -#define MAIL500_MAXAMBIGUOUS 10 - /* max subscribers allowed (size limit when searching for them ) */ -#define MAIL500_MAXGROUPMEMBERS LDAP_NO_LIMIT - /* timeout for all searches */ -#define MAIL500_TIMEOUT 180 - /* sendmail location - mail500 needs to exec this */ -#define MAIL500_SENDMAIL "/usr/lib/sendmail" - -/* - * UD DEFINITIONS - */ - /* ud configuration file */ -#define UD_CONFIG_FILE "%ETCDIR%/ud.conf" - /* default editor */ -#define UD_DEFAULT_EDITOR "/usr/ucb/vi" - /* default bbasename of user config file */ -#define UD_USER_CONFIG_FILE ".udrc" - /* default user to bind as */ -#define UD_BINDDN "cn=ud, ou=Miscellaneous Servers, o=University of Michigan, c=US" - /* default password to bind with */ -#define UD_PASSWD NULL - /* default search base */ -#define UD_BASE DEFAULT_BASE - /* default base where groups are created */ -#define UD_WHERE_GROUPS_ARE_CREATED "ou=User Groups, ou=Groups, o=University of Michigan, c=US" - /* default base below which all groups live */ -#define UD_WHERE_ALL_GROUPS_LIVE "ou=Groups, o=University of Michigan, c=US" - -/* - * FAX500 DEFINITIONS - */ - /* what to bind as */ -#define FAX_BINDDN "cn=mail500, ou=Miscellaneous Servers, o=University of Michigan, c=US" - /* how long to wait for searches */ -#define FAX_TIMEOUT 180 - /* maximum number of ambiguous matches reported */ -#define FAX_MAXAMBIGUOUS 10 - /* maximum number of members allowed */ -#define FAX_MAXMEMBERS LDAP_NO_LIMIT - /* program to send mail */ -#define FAX_SENDMAIL "/usr/lib/sendmail" - -/* - * RP500 DEFINITIONS - */ - /* what to bind as */ -#define RP_BINDDN "cn=rp500, ou=Miscellaneous Servers, o=University of Michigan, c=US" - /* prefix to add to non-fully-qualified numbers */ -#define RP_PHONEPREFIX "1313" - -/* - * SLAPD DEFINITIONS - */ - /* location of the default slapd config file */ -#define SLAPD_DEFAULT_CONFIGFILE "%ETCDIR%/slapd.conf" - /* default sizelimit on number of entries from a search */ -#define SLAPD_DEFAULT_SIZELIMIT 500 - /* default timelimit to spend on a search */ -#define SLAPD_DEFAULT_TIMELIMIT 3600 - /* location of the slapd pid file */ -#define SLAPD_PIDFILE "%ETCDIR%/slapd.pid" - /* location of the slapd args file */ -#define SLAPD_ARGSFILE "%ETCDIR%/slapd.args" - /* dn of the special "monitor" entry */ -#define SLAPD_MONITOR_DN "cn=monitor" - /* dn of the special "config" entry */ -#define SLAPD_CONFIG_DN "cn=config" - /* minimum max ids that a single index entry can map to in ldbm */ -#define SLAPD_LDBM_MIN_MAXIDS 4000 - -#endif /* _CONFIG_H */ diff --git a/libraries/libldap/sort.c b/libraries/libldap/sort.c index ee5d549c89..44bde3c76f 100644 --- a/libraries/libldap/sort.c +++ b/libraries/libldap/sort.c @@ -16,6 +16,7 @@ #include #include #include +#include #ifdef MACOS #include "macos.h" #else /* MACOS */ diff --git a/libraries/liblthread/stack.c b/libraries/liblthread/stack.c index e57b44b25f..8736e25b95 100644 --- a/libraries/liblthread/stack.c +++ b/libraries/liblthread/stack.c @@ -1,6 +1,7 @@ /* stack.c - stack handling routines */ #include +#include #include "lber.h" #include "ldap.h" diff --git a/servers/slapd/tools/Make-template b/servers/slapd/tools/Make-template index a040610086..c7c83bc7d5 100644 --- a/servers/slapd/tools/Make-template +++ b/servers/slapd/tools/Make-template @@ -73,15 +73,10 @@ ldif2index: ldif2index.o ../libbackends.a $(OBJS2) $(CC) $(ALDFLAGS) -o $@ ldif2index.o $(OBJS2) \ ../libbackends.a $(LDFLAGS) $(LIBS2) -ldif2ldbm: ldif2ldbm.sed.o ../libbackends.a $(OBJS2) - $(CC) $(ALDFLAGS) -o $@ ldif2ldbm.sed.o $(OBJS2) \ +ldif2ldbm: ldif2ldbm.o ../libbackends.a $(OBJS2) + $(CC) $(ALDFLAGS) -o $@ ldif2ldbm.o $(OBJS2) \ ../libbackends.a $(LDFLAGS) $(LIBS2) -ldif2ldbm.sed.c: ldif2ldbm.c - $(SED) -e 's;%ETCDIR%;$(LDAP_ETCDIR);' \ - -e 's;%SBINDIR%;$(LDAP_SBINDIR);' \ - ldif2ldbm.c > ldif2ldbm.sed.c - ldif2id2entry: ldif2id2entry.o ../libbackends.a $(OBJS2) $(CC) $(ALDFLAGS) -o $@ ldif2id2entry.o $(OBJS2) \ ../libbackends.a $(LDFLAGS) $(LIBS2) diff --git a/servers/slapd/tools/ldif.c b/servers/slapd/tools/ldif.c index dc9f25d584..4e7eb8cb4d 100644 --- a/servers/slapd/tools/ldif.c +++ b/servers/slapd/tools/ldif.c @@ -24,7 +24,7 @@ main( argc, argv ) { char buf[BUFSIZ]; char *type, *out; - int binary = 0; + int len, binary = 0; if (argc < 2 || argc > 3 ) { usage( argv[0] ); @@ -79,7 +79,9 @@ main( argc, argv ) } /* not binary: one value per line... */ - while ( gets( buf ) != NULL ) { + while ( fgets( buf, sizeof(buf), stdin ) != NULL ) { + if( buf[len=strlen(buf)] == '\n') buf[len] = '\0'; + if (( out = ldif_type_and_value( type, buf, strlen( buf ) )) == NULL ) { perror( "ldif_type_and_value" ); diff --git a/servers/slapd/tools/ldif2ldbm.c b/servers/slapd/tools/ldif2ldbm.c index 3daafb8559..7ddee31f88 100644 --- a/servers/slapd/tools/ldif2ldbm.c +++ b/servers/slapd/tools/ldif2ldbm.c @@ -5,9 +5,8 @@ #include #include "../slap.h" #include "../back-ldbm/back-ldbm.h" +#include "ldapconfig.h" -#define DEFAULT_CONFIGFILE "%ETCDIR%/slapd.conf" -#define DEFAULT_SBINDIR "%SBINDIR%" #define INDEXCMD "ldif2index" #define ID2ENTRYCMD "ldif2id2entry" #define ID2CHILDRENCMD "ldif2id2children" @@ -75,7 +74,7 @@ main( int argc, char **argv ) extern char *optarg; sbindir = DEFAULT_SBINDIR; - tailorfile = DEFAULT_CONFIGFILE; + tailorfile = SLAPD_DEFAULT_CONFIGFILE; dbnum = -1; while ( (i = getopt( argc, argv, "d:e:s:f:i:j:n:" )) != EOF ) { switch ( i ) { diff --git a/servers/slurpd/args.c b/servers/slurpd/args.c index b3cc935df8..fcc7b40bd7 100644 --- a/servers/slurpd/args.c +++ b/servers/slurpd/args.c @@ -16,6 +16,7 @@ #include #include +#include #include #include -- 2.39.5