1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-19 19:59:43 +00:00

Add afbackup, AF's backup system.

Submitted by:	Vadim Belman <voland@catpipe.net>
This commit is contained in:
Anton Berezin 2001-10-02 16:24:54 +00:00
parent d441baab0e
commit b3b6fd596b
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=48347
26 changed files with 2139 additions and 0 deletions

View File

@ -9,6 +9,7 @@
SUBDIR += achievo
SUBDIR += aclgen
SUBDIR += acron
SUBDIR += afbackup
SUBDIR += alevt
SUBDIR += amanda
SUBDIR += amanda24-client

183
misc/afbackup/Makefile Normal file
View File

@ -0,0 +1,183 @@
# New ports collection makefile for: afbackup
# Date created: 15 August 2001
# Whom: Vadim Belman <voland@catpipe.net>
#
# $FreeBSD$
#
PORTNAME= afbackup
PORTVERSION= 3.3.4p1
CATEGORIES?= misc
MASTER_SITES= ftp://ftp.vic.com/af/ \
${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= afbackup
DISTNAME= ${PORTNAME}-3.3.4pl1
# XXX Remember to remove the comment if the actual variable is needed by someone.
#SLAVEDIRS=misc/afbackup-client misc/afbackup-server
MAINTAINER= voland@catpipe.net
WRKSRC= ${WRKDIR}/afbackup-3.3.4
PLIST= ${WRKSRC}/pkg-plist
BUILD_DEPENDS= msgfmt:${PORTSDIR}/devel/gettext
.if ! defined(NO_DES)
USE_OPENSSL= yes
CONFIG_WITH_DES= --with-des
.endif
.if ! defined(NO_GUI)
BUILD_DEPENDS+= wish8.3:${PORTSDIR}/x11-toolkits/tk83
RUN_DEPENDS+= wish8.3:${PORTSDIR}/x11-toolkits/tk83
.else
MAKE_ARGS+= NO_GUI=yes
.endif
USE_AUTOCONF= yes
.if defined(NO_AUTOKEY) && defined(BATCH)
INGORE = "cannot be build in batch mode whithout automated DES key generation"
.endif
# afmserver sometimes dumps core if compiled with optimization. A bug in gcc?
CFLAGS+= -O0
CONFIGURE_ARGS= --with-included-gettext \
--libexecdir=${PREFIX}/libexec/afbackup \
${CONFIG_WITH_DES} \
--with-zlib \
--with-prefixext=NO \
--with-utilslibdir=${PREFIX}/lib/afbackup \
--with-utilsincdir=${PREFIX}/include/afbackup \
--with-utilsbindir=${PREFIX}/bin \
--with-serverdir=${PREFIX} \
--with-serverbindir=${PREFIX}/sbin \
--with-serverconfdir=${PREFIX}/etc/afbackup \
--with-serverlibdir=${PREFIX}/etc/afbackup \
--with-servervardir=/var/spool/afbackup \
--with-serverlogdir=/var/spool/afbackup \
--with-serverconf=server.conf \
--with-clientdir=${PREFIX} \
--with-clientbindir=${PREFIX}/sbin \
--with-clientconfdir=${PREFIX}/etc/afbackup \
--with-clientlibdir=${PREFIX}/etc/afbackup \
--with-clientvardir=/var/spool/afbackup \
--with-clientlogdir=/var/spool/afbackup \
--with-clientconf=client.conf \
--with-commondir=${PREFIX} \
--with-commondatadir=${PREFIX}/share/afbackup \
--with-rexecdir=${PREFIX}/libexec/afbackup
CLIENTMANPAGES=
SERVERMANPAGES=
INSTALL_TARGET=
PLIST_SRC=
.if !defined(WITHOUT_CLIENT)
INSTALL_TARGET+= install.client
CLIENTMANPAGES= afclient.8 afrestore.8 afverify.8 \
full_backup.8 incr_backup.8 copy_tape.8 \
update_indexes.8 xafrestore.8 afclient.conf.8
PLIST_SRC+= pkg-plist.client
.if !defined(NO_GUI)
PLIST_SRC+= pkg-plist.guiclient
.endif
.if !defined(NO_DES)
PLIST_SRC+= pkg-plist.desclient
.endif
.endif
.if !defined(WITHOUT_SERVER)
INSTALL_TARGET+= install.server
SERVERMANPAGES= afserver.8 afmserver.8 cartis.8 \
cartready.8 label_tape.8 cart_ctl.8 \
afserver.conf.8
PLIST_SRC+= pkg-plist.server
.if !defined(NO_GUI)
PLIST_SRC+= pkg-plist.guiserver
.endif
.endif
.if !defined(WITHOUT_REXECLINKS)
INSTALL_TARGET+= install.rexeclinks
PLIST_SRC+= pkg-plist.rexeclinks
.endif
PLIST_SRC+= pkg-plist.l10n
MAN8= ${CLIENTMANPAGES} ${SERVERMANPAGES}
MANCOMPRESSED= no
AFBACKUP_DOCS= CONFIG \
COPYING \
Changes \
HOWTO.FAQ.DO-DONT \
INSTALL \
INSTALL.utilslib \
INTRO \
LICENSE \
PROGRAMS \
README \
UPGRADE \
changer.conf.chio \
changer.conf.sch-mover \
changer.conf.test \
changer.conf.mtx \
changer.conf.stctl
.if !defined(WITHOUT_SERVER) && !defined(WITHOUT_CLIENT) \
&& !defined(WITHOUT_REXECLINKS) && !defined(NO_GUI) \
&& !defined(NO_DES) && !defined(NO_AUTOKEY)
pre-fetch:
@${ECHO} ""
@${ECHO} "You may use the following build options:"
@${ECHO} ""
@${ECHO} " -DWITHOUT_SERVER don't install the server part."
@${ECHO} " -DWITHOUT_CLIENT don't install the client part."
@${ECHO} " -DWITHOUT_REXECLINKS don't install links needed for remote execution."
@${ECHO} " -DNO_GUI build and install without TCL/TK tools."
@${ECHO} " -DNO_DES build and install without DES encryption."
@${ECHO} " -DNO_AUTOKEY don't autogenerate DES encryption key."
@${ECHO} ""
.endif
pre-configure:
@${CP} ${FILESDIR}/configure.in ${FILESDIR}/Makefile.in ${WRKSRC}
.if !defined(NO_AUTOKEY) && !defined(NO_DES)
pre-build:
@perl -le 'print( ( "a".."z", "A".."Z", "0".."9")[ map { rand( 62)} 0..( rand( 10)+10)])' >${WRKSRC}/cryptkey
.endif
pre-install:
@${ECHO} "==> Creating custom pkg-plist..."
@${RM} -rf ${PLIST}
.if !defined(NOPORTDOCS)
@for docfile in $(AFBACKUP_DOCS:S/^/share\/doc\/${PORTNAME}\//); do ${ECHO} $$docfile >>${PLIST}; done
.endif
@for plistfile in ${PLIST_SRC}; do ${CAT} ${FILESDIR}/$$plistfile >>${PLIST}; done
@${CAT} ${PLIST} | perl -nle 'print unless $$lines{$$_}++' >${PLIST}.tmp
@${CAT} ${PLIST}.tmp ${FILESDIR}/pkg-plist.fixedorder >${PLIST}
.if !defined(NOPORTDOCS)
@${ECHO} @cwd ${PREFIX} >>${PLIST}
@${ECHO} @dirrm share/doc/${PORTNAME} >>${PLIST}
.endif
@${PKGINSTALL} ${PKGNAME} PRE-INSTALL
post-install:
.if !defined(NO_AUTOKEY)
${INSTALL} ${COPY} -o afbackup -g operator -m 0400 ${WRKSRC}/cryptkey ${PREFIX}/etc/afbackup
.endif
.if !defined(NOPORTDOCS)
${MKDIR} ${DOCSDIR}
for docfile in ${AFBACKUP_DOCS}; do ${INSTALL_DATA} ${WRKSRC}/$$docfile ${DOCSDIR}; done
.endif
@${ECHO} ""
.if !defined(NO_AUTOKEY) && !defined(NO_DES)
@${ECHO} "-------------------------------------------------------------------"
@${ECHO} " A DES key has been generated for your system."
@${ECHO} " It can be found in ${PREFIX}/etc/afbackup/cryptkey."
@${ECHO} " You can change it and perhaps corresponding settings"
@${ECHO} " in ${PREFIX}/etc/afbackup/(server|client).conf if"
@${ECHO} " you want."
@${ECHO} "-------------------------------------------------------------------"
.endif
@${PKGINSTALL} ${PKGNAME} POST-INSTALL
.include <bsd.port.mk>

1
misc/afbackup/distinfo Normal file
View File

@ -0,0 +1 @@
MD5 (afbackup-3.3.4pl1.tar.gz) = c01897d6864e7dd29292327fd2c98a3f

View File

@ -0,0 +1,362 @@
SHELL = /bin/sh
CC = @CC@
MAKECMD = make
OSNAME = @osname@
PACKAGE = @PACKAGE@
VERSION = @VERSION@
SUBDIRS = intl po
X_INCLUDE = .
X_LIBS = .
OPTIMIZE =
DEBUG =
INCLUDES = -I$(X_INCLUDE) @DESINCLUDEPATH@ @ZLIB_INCLUDEPATH@
DEFINES = -D$(OSNAME) -DOSNAME=$(OSNAME) @DESDEFINES@ @ZLIB_DEFINES@
CFLAGS = @CFLAGS@ $(INCLUDES) $(DEFINES) $(DEBUG) $(OPTIMIZE) \
$(EXTRA_CFLAGS) @EXTRACFLAGS@ \
-DLOCALEDIR=\"$(LOCALEDIR)\"
UTILSLIB = x_utils
X_HEADERS = crptauth.h \
fileutil.h \
mvals.h \
netutils.h \
packer.h \
sysutils.h \
utils.h \
x_data.h \
x_defs.h \
x_errno.h \
x_regex.h \
x_timer.h \
x_types.h \
zutils.h
X_LIBTOOLS = prosname.sh \
prosspec.sh
BULIB = afbackup
LIBRARIES = -l$(BULIB) -l$(UTILSLIB) @LIBS@ @DESLIBPATH@ \
@DESLIB@ @ZLIB_LIBPATH@ @ZLIB_LIB@ -lm @INTLLIBS@
LDFLAGS = -L$(X_LIBS) $(LIBRARIES) $(EXTRA_LD_FLAGS)
X_LIBSRCS = crptauth.c \
pack.c \
unpack.c \
utils.c \
goptions.c \
fileutil.c \
x_regex.c \
mutils.c \
sysutils.c \
netutils.c \
timeutil.c \
typeutil.c \
safewrap.c \
zutils.c
X_LIBOBJS = $(X_LIBSRCS:.c=.o)
BULIBSRCS = buutil.c \
prot.c
BULIBOBJS = $(BULIBSRCS:.c=.o)
CRYPTKEY = cryptkey.h
CL_HELPERS = __piper __packpats @DESCRPT@ @ZIP@
SV_HELPERS = __numset
PROGRAMS = afserver afmserver afclient cartready label_tape \
full_backup $(CL_HELPERS) $(SV_HELPERS)
RESTRCLNTPROGS = afclient afbackup afrestore afverify copy_tape \
full_backup incr_backup afbackout update_indexes \
__descrpt __z
CLIENTPROGRAMS = $(RESTRCLNTPROGS) autocptapes afclientconfig \
xafclientconfig xafrestore
RESTRSVRPROGS = afmserver afserver label_tape cartready changerready \
cartis
SERVERPROGRAMS = $(RESTRSVRPROGS) afserverconfig cartagehandler \
xafserverconfig xafserverstatus __inc_link __mt __numset
X_LIBRARY = lib$(UTILSLIB).a
BACKUPLIB = lib$(BULIB).a
BASELIBS = intllibs
TESTMAINSRCS = testmain.c
TESTMAINOBJS = $(TESTMAINSRCS:.c=.o)
SERVERSRCS = server.c
SERVEROBJS = $(SERVERSRCS:.c=.o)
MSERVERSRCS = mserver.c
MSERVEROBJS = $(MSERVERSRCS:.c=.o)
CARTRDYSRCS = cartready.c
CARTRDYOBJS = $(CARTRDYSRCS:.c=.o)
LABELTAPESRCS = label_tape.c
LABELTAPEOBJS = $(LABELTAPESRCS:.c=.o)
CLIENTSRCS = client.c
CLIENTOBJS = $(CLIENTSRCS:.c=.o)
FULLBUSRCS = full_backup.c
FULLBUOBJS = $(FULLBUSRCS:.c=.o)
TESTCLIENTSRCS = testclient.c
TESTCLIENTOBJS = $(TESTCLIENTSRCS:.c=.o)
SERVERCONFFILE = server.conf
CLIENTCONFFILE = client.conf
CHANGERCONFFILE = changer.conf
prefix = @prefix@
exec_prefix = @exec_prefix@
CLIENTLIBDIR = @clientlibdir@
CLIENTBINDIR = @clientbindir@
CLIENTVARDIR = @clientvardir@
CLIENTMANDIR = @clientmandir@
SERVERLIBDIR = @serverlibdir@
SERVERBINDIR = @serverbindir@
SERVERVARDIR = @servervardir@
SERVERMANDIR = @servermandir@
COMMONDIR = @commondir@
COMMONDATADIR = @commondatadir@
COMMONSHLIBDIR = @commonshlibdir@
BINDIR = @bindir@
SBINDIR = @sbindir@
LIBEXECDIR = @libexecdir@
DATADIR = @datadir@
SYSCONFDIR = @sysconfdir@
MANDIR = @mandir@
VARDIR = @localstatedir@
REXECDIR = @REXECDIR@
# Where to install locale stuff
LOCALEDIR = $(DATADIR)/locale
CLIENTMANFILES = afclient.X \
afrestore.X \
afverify.X \
full_backup.X \
incr_backup.X \
copy_tape.X \
update_indexes.X \
xafrestore.X \
afclient.conf.X
SERVERMANFILES = afserver.X \
afmserver.X \
cartis.X \
cartready.X \
label_tape.X \
cart_ctl.X \
afserver.conf.X
SRCMANSUFFIX = 8
DESTMANSUFFIX = 8
CLIENTMANSRCS = $(CLIENTMANFILES:.X=.8)
SERVERMANSRCS = $(SERVERMANFILES:.X=.8)
# ^ this must be $(SRCMANSUFFIX)
INSTALL = install -C
.c.o: config.h
$(CC) -c $(CFLAGS) $<
all:: $(PROGRAMS) potfiles
server: afserver potfiles
@:
afserver: $(CRYPTKEY) $(BACKUPLIB) $(X_LIBRARY) $(BASELIBS) $(SERVEROBJS) $(MSERVEROBJS) $(CARTRDYOBJS) $(LABELTAPEOBJS) xserverconfig xserverstatus $(SV_HELPERS)
$(CC) -o afserver $(SERVEROBJS) $(LDFLAGS)
$(CC) -o afmserver $(MSERVEROBJS) $(LDFLAGS)
$(CC) -o cartready $(CARTRDYOBJS) $(LDFLAGS)
$(CC) -o label_tape $(LABELTAPEOBJS) $(LDFLAGS)
$(SERVEROBJS): $(CRYPTKEY)
cartready: $(BACKUPLIB) $(X_LIBRARY) $(BASELIBS) $(CARTRDYOBJS)
$(CC) -o cartready $(CARTRDYOBJS) $(LDFLAGS)
label_tape: $(BACKUPLIB) $(X_LIBRARY) $(BASELIBS) $(LABELTAPEOBJS)
$(CC) -o label_tape $(LABELTAPEOBJS) $(LDFLAGS)
client: afclient potfiles
@:
afclient: $(CRYPTKEY) $(BACKUPLIB) $(X_LIBRARY) $(BASELIBS) $(CLIENTOBJS) $(FULLBUOBJS) xclientconfig xrestore $(CL_HELPERS)
$(CC) -o afclient $(CLIENTOBJS) $(LDFLAGS)
$(CC) -o full_backup $(FULLBUOBJS) $(LDFLAGS)
$(CLIENTOBJS): $(CRYPTKEY)
$(CRYPTKEY): ask_for_key
@if [ -f cryptkey ]; then sh ./ask_for_key <cryptkey; else sh ./ask_for_key; fi
potfiles: intllibs
(cd po; $(MAKE) DATADIR=\"$(DATADIR)\" all)
intllibs:
(cd intl; $(MAKE) all)
__piper: __piper.o $(BACKUPLIB) $(X_LIBRARY)
$(CC) -o __piper __piper.o $(LDFLAGS)
__packpats: __packpats.o $(BACKUPLIB) $(X_LIBRARY)
$(CC) -o __packpats __packpats.o $(LDFLAGS)
__numset: __numset.o $(BACKUPLIB) $(X_LIBRARY)
$(CC) -o __numset __numset.o $(LDFLAGS)
__descrpt: $(CRYPTKEY) __descrpt.o $(BACKUPLIB) $(X_LIBRARY)
$(CC) -o __descrpt __descrpt.o $(LDFLAGS)
__z: __z.o $(BACKUPLIB) $(X_LIBRARY)
$(CC) -o __z __z.o $(LDFLAGS)
$(BACKUPLIB): $(BULIBOBJS)
ar rcv $(BACKUPLIB) $(BULIBOBJS)
if [ _@ranlib@ != _ ] ; then @ranlib@ $(BACKUPLIB) ; fi
$(X_LIBRARY): $(X_LIBOBJS)
ar rcv $(X_LIBRARY) $(X_LIBOBJS)
if [ _@ranlib@ != _ ] ; then @ranlib@ $(X_LIBRARY) ; fi
$(UTILSLIB):: $(X_LIBRARY)
install.$(UTILSLIB): $(UTILSLIB)
install -d @utilsincdir@ @utilsincdir@/$(OSNAME) @utilslibdir@ \
@utilslibdir@/$(OSNAME) @utilsbindir@
for i in $(X_HEADERS) ; do /bin/rm -f @utilsincdir@/$$i ; \
$(INSTALL) $$i @utilsincdir@/$$i ; done
for i in $(X_LIBRARY) ; do /bin/rm -f @utilslibdir@/$(OSNAME)/$$i ; \
$(INSTALL) $$i @utilslibdir@/$(OSNAME)/$$i ; done
$(INSTALL) -m 0644 lconf.h @utilsincdir@/$(OSNAME)/lconf.h
$(INSTALL) -m 0644 lconf.gen.h @utilsincdir@/lconf.h
for i in $(X_LIBTOOLS) ; do \
$(INSTALL) -m 0644 $$i @utilsbindir@/$$i ; done
install:: install.client install.server install.client.man install.server.man
install.client: client full_backup install.client.man install.l10n
install -d $(CLIENTBINDIR) $(CLIENTLIBDIR) $(COMMONSHLIBDIR) $(LIBEXECDIR)
install -d -o afbackup -g operator $(CLIENTVARDIR)
$(INSTALL) -g operator -m 0750 afclient $(SBINDIR)
ln -sf $(SBINDIR)/afclient $(SBINDIR)/afbackup
$(INSTALL) full_backup $(SBINDIR)/full_backup
ln -sf $(SBINDIR)/full_backup $(SBINDIR)/incr_backup
ln -sf $(SBINDIR)/full_backup $(SBINDIR)/afverify
ln -sf $(SBINDIR)/full_backup $(SBINDIR)/copy_tape
ln -sf $(SBINDIR)/full_backup $(SBINDIR)/afbackout
ln -sf $(SBINDIR)/full_backup $(SBINDIR)/update_indexes
ln -sf $(SBINDIR)/full_backup $(SBINDIR)/afrestore
$(INSTALL) -m 0755 clientconfig $(SBINDIR)/afclientconfig
ln -sf $(SBINDIR)/afclientconfig $(SBINDIR)/clientconfig
if [ -z "$(NO_GUI)" ]; then \
$(INSTALL) -m 0755 xclientconfig $(SBINDIR)/xafclientconfig; \
ln -sf $(SBINDIR)/xafclientconfig $(SBINDIR)/xclientconfig; \
$(INSTALL) -m 0755 xrestore $(SBINDIR)/xafrestore; \
ln -sf $(SBINDIR)/xafrestore $(SBINDIR)/xrestore; \
fi
$(INSTALL) -m 0755 autocptapes $(SBINDIR)/autocptapes
$(INSTALL) -m 0755 __packpats $(LIBEXECDIR)/__packpats
$(INSTALL) -m 0755 __piper $(LIBEXECDIR)/__piper
if [ ! -z "@DESCRPT@" ] ; then \
$(INSTALL) -m 0755 "@DESCRPT@" $(LIBEXECDIR)/@DESCRPT@ ; \
fi
if [ ! -z "@ZIP@" ] ; then \
$(INSTALL) -m 0755 "@ZIP@" $(LIBEXECDIR)/@ZIP@ ; \
fi
$(INSTALL) -m 0644 aftcllib.tcl $(COMMONSHLIBDIR)/aftcllib.tcl
if [ ! -f $(SYSCONFDIR)/@clientconf@.sample ] ; then $(INSTALL) -m 0644 $(CLIENTCONFFILE) $(CLIENTLIBDIR)/@clientconf@.sample ; fi
install.server: server cartready label_tape install.server.man install.l10n
install -d $(SERVERBINDIR) $(SERVERLIBDIR) $(COMMONSHLIBDIR) $(REXECDIR) $(LIBEXECDIR)
install -d -o afbackup -g operator $(SERVERVARDIR)
$(INSTALL) -o afbackup -g operator -m 0700 afserver afmserver $(LIBEXECDIR)
$(INSTALL) -m 04755 -o afbackup cartready $(SBINDIR)
$(INSTALL) -g operator -m 0750 label_tape $(SBINDIR)
$(INSTALL) -m 0755 __mt __inc_link $(LIBEXECDIR)
ln -sf $(SBINDIR)/label_tape $(SBINDIR)/cart_ctl
ln -sf $(SBINDIR)/label_tape $(SBINDIR)/cartis
ln -sf $(SBINDIR)/cartready $(SBINDIR)/changerready
$(INSTALL) -m 0755 serverconfig $(SBINDIR)/afserverconfig
ln -sf afserverconfig $(SBINDIR)/serverconfig
if [ -z "$(NO_GUI)" ]; then \
$(INSTALL) -m 0755 xserverconfig $(SBINDIR)/xafserverconfig; \
ln -sf xafserverconfig $(SBINDIR)/xserverconfig; \
$(INSTALL) -m 0755 xserverstatus $(SBINDIR)/xafserverstatus; \
ln -sf xafserverstatus $(SBINDIR)/xserverstatus; \
fi
$(INSTALL) -m 0644 aftcllib.tcl $(COMMONSHLIBDIR)/aftcllib.tcl
$(INSTALL) -m 0755 __numset $(LIBEXECDIR)/__numset
if [ ! -f $(LIBEXECDIR)/cartagehandler ] ; then $(INSTALL) cartagehandler $(LIBEXECDIR)/cartagehandler ; fi
if [ ! -f $(SERVERLIBDIR)/@serverconf@.sample ] ; then $(INSTALL) -m 0644 $(SERVERCONFFILE) $(SERVERLIBDIR)/@serverconf@.sample ; fi
if [ ! -f $(SERVERLIBDIR)/$(CHANGERCONFFILE).sample ] ; then $(INSTALL) -m 0644 $(CHANGERCONFFILE) $(SERVERLIBDIR)/$(CHANGERCONFFILE).sample ; fi
touch $(SERVERVARDIR)/readonly_tapes
install.rclient: install.server install.client install.rexeclinks
install.userrestore:
$(INSTALL) -m 04755 -o root:wheel $(LIBEXECDIR)/full_backup $(SBINDIR)/afrestore
ln -sf $(SBINDIR)/afrestore $(SBINDIR)/afbackout
ln -sf $(SBINDIR)/afrestore $(SBINDIR)/update_indexes
install.rexeclinks:
( for i in full_backup incr_backup afverify afrestore copy_tape update_indexes ; do ln -sf $(CLIENTBINDIR)/"$$i" $(REXECDIR)/"$$i" ; done )
install.client.man: $(CLIENTMANSRCS)
install -d $(MANDIR)/man$(DESTMANSUFFIX)
( for mansrc in $(CLIENTMANSRCS) ; do destfile=`echo $$mansrc|sed 's/[.]'$(SRCMANSUFFIX)'$$/.'$(DESTMANSUFFIX)/g` ; $(INSTALL) -m 0644 $$mansrc $(MANDIR)/man$(DESTMANSUFFIX)/$$destfile ; done )
install.server.man: $(SERVERMANSRCS)
install -d $(MANDIR)/man$(DESTMANSUFFIX)
( for mansrc in $(SERVERMANSRCS) ; do destfile=`echo $$mansrc|sed 's/[.]'$(SRCMANSUFFIX)'$$/.'$(DESTMANSUFFIX)/g` ; $(INSTALL) -m 0644 $$mansrc $(MANDIR)/man$(DESTMANSUFFIX)/$$destfile ; done )
install.l10n: potfiles
(cd po; $(MAKE) datadir=\"$(DATADIR)\" install)
xclientconfig: xcc
if [ -z "${NO_GUI}" ]; then ( ./build_shwish $? > $@; chmod +x $@) fi
xserverconfig: xsc
if [ -z "${NO_GUI}" ]; then ( ./build_shwish $? > $@; chmod +x $@) fi
xserverstatus: xss
if [ -z "${NO_GUI}" ]; then ( ./build_shwish $? > $@; chmod +x $@) fi
xrestore: xrs
if [ -z "${NO_GUI}" ]; then ( ./build_shwish $? > $@; chmod +x $@) fi
clean::
- for subdir in $(SUBDIRS) ; do (cd $$subdir && $(MAKE) clean ) ; done
- rm -f *% *.o *.a *~ core* *_
veryclean: clean
- rm -f $(PROGRAMS)
distclean: clean
- for subdir in $(SUBDIRS) ; do (cd $$subdir && $(MAKE) distclean ) ; done
- rm -f $(PROGRAMS) $(CRYPTKEY) xclientconfig xserverconfig xrestore xserverstatus
- rm -f config.cache config.log config.status config.setup Install.cache
- rm -f `/bin/ls *.in|sed 's/[.]in$$//g'|grep -v configure` confdefs.h

View File

@ -0,0 +1,858 @@
dnl Process this file with autoconf to produce a configure script.
AC_INIT(backup.h)
PACKAGE=afbackup
VERSION=`[grep VERSION_STRING version.h|sed 's/^[^"]*"//g'|sed 's/"[^"]*$//g']`
datadir='${prefix}/share/afbackup'
sysconfdir='${prefix}/etc/afbackup'
localstatedir='/var/spool/afbackup'
dnl VERSION=`[grep VERSION_STRING version.h|awk '{l=$0;while(substr(l,1,1)!="\"" && l != "")l=substr(l,2);l=substr(l,2);while(substr(l,length(l)-1,1)!="\"" && l != "") l=substr(l,1,length(l)-1);l=substr(l,1,length(l)-1);print l}']`
AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
AC_SUBST(PACKAGE)
AC_SUBST(VERSION)
ALL_LINGUAS="it de"
osname=`./prosname.sh`
ARCH="`./prosspec.sh` $*"
ARCH="`echo $ARCH`" # for some stupid shells
if test -r config.setup ; then
CONFARCH=`cat config.setup`
if test "$CONFARCH" = "$ARCH" ; then
echo "Already configured for this setup. Remove config.setup to re-configure."
exit 0
fi
fi
rm -f config.setup
AC_CONFIG_HEADER(config.h)
dnl Checks for programs.
AC_CHECK_PROG(ranlib, ranlib, ranlib)
dnl Checks for libraries.
AM_GNU_GETTEXT
dnl Checks for header files.
if test `uname` = "FreeBSD" ; then
if test `uname -r` "<" '2' -a -r /usr/include/values.h ; then
ac_cv_header_values_h=yes
else
ac_cv_header_values_h=no
fi
fi
AC_HEADER_DIRENT
AC_HEADER_STDC
dnl AC_HEADER_SYS_WAIT
AC_CHECK_HEADERS(arpa/inet.h fcntl.h intl/locale.h limits.h malloc.h netinet/ip.h netinet/tcp.h netinet/in_systm.h pthread.h regex.h string.h strings.h sys/acl.h sys/ioctl.h sys/mode.h sys/mount.h sys/param.h sys/resource.h sys/select.h sys/statfs.h sys/statvfs.h sys/time.h sys/timers.h sys/vfs.h sys/wait.h termios.h termio.h time.h unistd.h values.h)
dnl Checks for typedefs, structures, and compiler characteristics.
AC_STRUCT_ST_RDEV
AC_HEADER_TIME
AC_STRUCT_TM
dnl Checks for library functions.
AC_FUNC_ALLOCA
AC_PROG_GCC_TRADITIONAL
AC_FUNC_MEMCMP
AC_TYPE_SIGNAL
AC_FUNC_UTIME_NULL
AC_FUNC_VPRINTF
dnl Used by po/Makefile.in
AC_PROG_INSTALL
# This seems to have been forgotten for some strange reason
if test _"${gt_cv_func_gettext_libintl}" = _yes -o _"$ac_cv_lib_intl_bindtextdomain" = _yes ; then
INTLLIBS="$INTLLIBS -lintl"
fi
AC_MSG_CHECKING(for sys_errlist declaration)
AC_CACHE_VAL(ac_cv_decl_sys_errlist_def,
[AC_TRY_COMPILE([
#include <stdio.h>
#include <errno.h>
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif],[printf("%s",sys_errlist[0]);],
ac_cv_decl_sys_errlist_def=yes, ac_cv_decl_sys_errlist_def=no)
])
AC_MSG_RESULT($ac_cv_decl_sys_errlist_def)
if test $ac_cv_decl_sys_errlist_def = yes; then
AC_DEFINE(HAVE_SYS_ERRLIST_DEF)
fi
OPTIMIZE=-O2
if test $ac_cv_prog_gcc = no -a `echo $osname|grep 'HPUX'|wc -l` -gt 0 ; then
EXTRACFLAGS="+Olibcalls -Ae -Dhpux -Dunix -Dnotdef"
OPTIMIZE=-O
fi
AC_CHECK_TYPE(signal_t, int)
# cannot use pthread_create here, cause IRIX will fail compiling.
# Solaris has pthread functions in libc, but they don't work, so
# we have to check for libpthread or libthread FIRST.
# BTW the m4 autoconf syntax constraints are terrible.
AC_CHECK_LIB(pthread, pthread_join, libpthread=yes, libpthread=no)
if test $libpthread = yes ; then
AC_DEFINE(HAVE_PTHREAD_JOIN)
LIBS="$LIBS -lpthread"
else
AC_CHECK_LIB(thread, pthread_join, libthread=yes, libthread=no)
if test $libthread = yes ; then
LIBS="$LIBS -lthread"
AC_DEFINE(HAVE_PTHREAD_JOIN)
else
AC_CHECK_FUNC(pthread_join, libc=yes, libc=no)
if test $libc = yes ; then
AC_DEFINE(HAVE_PTHREAD_JOIN)
fi
fi
fi
checkBoth=0
AC_CHECK_FUNC(connect, checkSocket=0, checkSocket=1)
if test "$checkSocket" = 1; then
AC_CHECK_LIB(socket, main, LIBS="$LIBS -lsocket", checkBoth=1)
fi
if test "$checkBoth" = 1; then
oldLibs=$LIBS
LIBS="$LIBS -lsocket -lnsl"
AC_CHECK_FUNC(accept, checkNsl=0, [LIBS=$oldLibs])
fi
AC_CHECK_FUNC(gethostbyname, , AC_CHECK_LIB(nsl, main, [LIBS="$LIBS -lnsl"]))
AC_CHECK_FUNCS(bsearch drand48 getcwd gettimeofday inet_ntoa isatty isnan lchown lfind lsearch memmove mkdir mkfifo mktime qsort rand re_comp regcomp re_compile_pattern rint select setitimer sighold sigrelse socket strcasecmp strncasecmp strcasestr strdup strerror strrstr strstr timer_create uname acl setacl chacl sys_errlist stat64 statvfs vsnprintf vsyslog)
AC_CHECK_LIB(acl, acl_get_file, acl_get_file=yes, acl_get_file=no)
if test $acl_get_file = yes ; then
LIBS="$LIBS -lacl"
else
AC_CHECK_LIB(pacl, acl_get_file, acl_get_file=yes, acl_get_file=no)
if test $acl_get_file = yes ; then
LIBS="$LIBS -lpacl"
else
AC_CHECK_FUNC(acl_get_file, acl_get_file=yes, acl_get_file=no)
fi
fi
if test "$ac_cv_func_re_comp" != yes ; then
AC_CHECK_LIB(compat, re_comp, [LIBS="$LIBS -lcompat"])
unset ac_cv_func_re_comp
AC_CHECK_FUNCS(re_comp)
fi
if test "$ac_cv_func_stat64" = yes ; then
AC_DEFINE(_64_BIT_FILESIZE_)
fi
test "x$prefix" = xNONE && prefix=$ac_default_prefix
test "x$exec_prefix" = xNONE && exec_prefix=${prefix}
AC_ARG_WITH(utilslibdir,
[ --with-utilslibdir=DIR server configuration files in DIR [prefix/lib]],
[
if test "$withval"; then
utilslibdir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-utilslibdir
option.])
fi
]
)
: ${utilslibdir:='$prefix/lib'}
utilslibdir=`(
eval echo "$utilslibdir"
)`
AC_SUBST(utilslibdir)
AC_ARG_WITH(utilsincdir,
[ --with-utilsincdir=DIR server configuration files in DIR [prefix/include]],
[
if test "$withval"; then
utilsincdir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-utilsincdir
option.])
fi
]
)
: ${utilsincdir:='$prefix/include'}
utilsincdir=`(
eval echo "$utilsincdir"
)`
AC_SUBST(utilsincdir)
AC_ARG_WITH(utilsbindir,
[ --with-utilsbindir=DIR server configuration files in DIR [prefix/bin]],
[
if test "$withval"; then
utilsbindir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-utilsbindir
option.])
fi
]
)
: ${utilsbindir:='$prefix/bin'}
utilsbindir=`(
eval echo "$utilsbindir"
)`
AC_SUBST(utilsbindir)
prefixext=yes
AC_ARG_WITH(prefixext,
[ --with-prefixext=YESNO extend prefix with /backup [yes]],
[
if test "$withval"; then
prefixext="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-prefixext
option.])
fi
]
)
subdir="/backup"
if test $prefixext != "yes" ; then
subdir=""
fi
dnl *** server side ***
AC_ARG_WITH(serverdir,
[ --with-serverdir=DIR server installation in DIR [prefix/subdir/server]],
[
if test "$withval"; then
serverdir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-serverdir
option.])
fi
]
)
: ${serverdir:='$prefix$subdir/server'}
serverdir=`(
eval echo "$serverdir"
)`
AC_SUBST(serverdir)
dnl *** serverbindir
AC_ARG_WITH(serverbindir,
[ --with-serverbindir=DIR server binaries in DIR [serverdir/bin]],
[
if test "$withval"; then
serverbindir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-serverbindir
option.])
fi
]
)
: ${serverbindir:='$serverdir/bin'}
serverbindir=`(
eval echo "$serverbindir"
)`
AC_SUBST(serverbindir)
dnl *** serverlibdir
AC_ARG_WITH(serverlibdir,
[ --with-serverlibdir=DIR server configuration files in DIR [serverdir/lib]],
[
if test "$withval"; then
serverlibdir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-serverlibdir
option.])
fi
]
)
: ${serverlibdir:='$serverdir/lib'}
serverlibdir=`(
eval echo "$serverlibdir"
)`
AC_SUBST(serverlibdir)
dnl *** serverconfdir
AC_ARG_WITH(serverconfdir,
[ --with-serverconfdir=DIR server configuration files in DIR [serverdir/lib]],
[
if test "$withval"; then
serverconfdir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-serverconfdir
option.])
fi
]
)
: ${serverconfdir:='$serverdir/lib'}
serverconfdir=`(
eval echo "$serverconfdir"
)`
AC_SUBST(serverconfdir)
dnl *** servervardir
AC_ARG_WITH(servervardir,
[ --with-servervardir=DIR variable server files in DIR [serverdir/var]],
[
if test "$withval"; then
servervardir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-servervardir
option.])
fi
]
)
: ${servervardir:='$serverdir/var'}
servervardir=`(
eval echo "$servervardir"
)`
AC_SUBST(servervardir)
dnl *** servermandir
AC_ARG_WITH(servermandir,
[ --with-servermandir=DIR variable server files in DIR [serverdir/man]],
[
if test "$withval"; then
servermandir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-servermandir
option.])
fi
]
)
: ${servermandir:='$serverdir/man'}
servermandir=`(
eval echo "$servermandir"
)`
AC_SUBST(servermandir)
dnl *** serverlogdir
AC_ARG_WITH(serverlogdir,
[ --with-serverlogdir=DIR server log files in DIR [serverdir/var]],
[
if test "$withval"; then
serverlogdir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-serverlogdir
option.])
fi
]
)
: ${serverlogdir:='$serverdir/var'}
serverlogdir=`(
eval echo "$serverlogdir"
)`
AC_SUBST(serverlogdir)
dnl *** client side ***
AC_ARG_WITH(clientdir,
[ --with-clientdir=DIR client installation in DIR [prefix/subdir/client]],
[
if test "$withval"; then
clientdir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-clientdir
option.])
fi
]
)
: ${clientdir:='$prefix$subdir/client'}
clientdir=`(
eval echo "$clientdir"
)`
AC_SUBST(clientdir)
dnl *** clientbindir
AC_ARG_WITH(clientbindir,
[ --with-clientbindir=DIR client binaries in DIR [clientdir/bin]],
[
if test "$withval"; then
clientbindir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-clientbindir
option.])
fi
]
)
: ${clientbindir:='$clientdir/bin'}
clientbindir=`(
eval echo "$clientbindir"
)`
AC_SUBST(clientbindir)
dnl *** clientlibdir
AC_ARG_WITH(clientlibdir,
[ --with-clientlibdir=DIR client configuration files in DIR [clientdir/lib]],
[
if test "$withval"; then
clientlibdir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-clientlibdir
option.])
fi
]
)
: ${clientlibdir:='$clientdir/lib'}
clientlibdir=`(
eval echo "$clientlibdir"
)`
AC_SUBST(clientlibdir)
dnl *** clientconfdir
AC_ARG_WITH(clientconfdir,
[ --with-clientconfdir=DIR client configuration files in DIR [clientdir/lib]],
[
if test "$withval"; then
clientconfdir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-clientconfdir
option.])
fi
]
)
: ${clientconfdir:='$clientdir/lib'}
clientconfdir=`(
eval echo "$clientconfdir"
)`
AC_SUBST(clientconfdir)
dnl *** clientvardir
AC_ARG_WITH(clientvardir,
[ --with-clientvardir=DIR variable client files in DIR [clientdir/var]],
[
if test "$withval"; then
clientvardir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-clientvardir
option.])
fi
]
)
: ${clientvardir:='$clientdir/var'}
clientvardir=`(
eval echo "$clientvardir"
)`
AC_SUBST(clientvardir)
dnl *** clientmandir
AC_ARG_WITH(clientmandir,
[ --with-clientmandir=DIR variable client files in DIR [clientdir/man]],
[
if test "$withval"; then
clientmandir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-clientmandir
option.])
fi
]
)
: ${clientmandir:='$clientdir/man'}
clientmandir=`(
eval echo "$clientmandir"
)`
AC_SUBST(clientmandir)
dnl *** clientlogdir
AC_ARG_WITH(clientlogdir,
[ --with-clientlogdir=DIR client log files in DIR [clientdir/var]],
[
if test "$withval"; then
clientlogdir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-clientlogdir
option.])
fi
]
)
: ${clientlogdir:='$clientdir/var'}
clientlogdir=`(
eval echo "$clientlogdir"
)`
AC_SUBST(clientlogdir)
dnl *** rexecdir
AC_ARG_WITH(rexecdir,
[ --with-rexecdir=DIR binaries for remote execution in DIR [prefix/rexec]],
[
if test "$withval"; then
REXECDIR="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-rexecdir
option.])
fi
]
)
: ${REXECDIR:='$prefix$subdir/rexec'}
REXECDIR=`(
eval echo "$REXECDIR"
)`
AC_SUBST(REXECDIR)
dnl *** clientconf
AC_ARG_WITH(clientconf,
[ --with-clientconf=NAME NAME for client configuration [backup.conf]],
[
if test "$withval"; then
clientconf="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-clientconf
option.])
fi
]
)
: ${clientconf:=backup.conf}
clientconf=`(
eval echo "$clientconf"
)`
AC_SUBST(clientconf)
dnl *** serverconf
AC_ARG_WITH(serverconf,
[ --with-serverconf=NAME NAME for server configuration [backup.conf]],
[
if test "$withval"; then
serverconf="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-serverconf
option.])
fi
]
)
: ${serverconf:=backup.conf}
serverconf=`(
eval echo "$serverconf"
)`
AC_SUBST(serverconf)
dnl *** commondir
AC_ARG_WITH(commondir,
[ --with-commondir=DIR software for client and server will reside in DIR [prefix/common]],
[
if test "$withval"; then
commondir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-commondir
option.])
fi
]
)
: ${commondir:='$prefix$subdir/common'}
commondir=`(
eval echo "$commondir"
)`
AC_SUBST(commondir)
dnl *** commondatadir
AC_ARG_WITH(commondatadir,
[ --with-commondatadir=DIR architecture independent data for client and server will reside in DIR [commondir/share]],
[
if test "$withval"; then
commondatadir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-commondatadir
option.])
fi
]
)
: ${commondatadir:='$commondir/share'}
commondatadir=`(
eval echo "$commondatadir"
)`
AC_SUBST(commondatadir)
dnl *** commonshlibdir
AC_ARG_WITH(commonshlibdir,
[ --with-commonshlibdir=DIR architecture independent program text for client and server will reside in DIR [commondatadir/lib]],
[
if test "$withval"; then
commonshlibdir="$withval"
else
AC_MSG_WARN([*** You must supply an argument to the --with-commonshlibdir
option.])
fi
]
)
: ${commonshlibdir:='$commondatadir/lib'}
commonshlibdir=`(
eval echo "$commonshlibdir"
)`
AC_SUBST(commonshlibdir)
dnl DES stuff
usedes=no
AC_ARG_WITH(des,
[ --with-des for client/server authentication [no]],
[
usedes=yes
des_include=../libdes
des_libdir=`echo $des_include|sed 's#include$#lib#g'`
des_header=des.h
des_ldflag=-ldes
]
)
AC_ARG_WITH(des-include,
[ --with-des-include=DIR des header file in DIR [../libdes]],
[
if test "$withval"; then
usedes=yes
des_include="$withval"
des_libdir="$des_include"
des_header=des.h
des_ldflag=-ldes
else
AC_MSG_WARN([*** You must supply an argument to the --with-des-include
option.])
fi
]
)
AC_ARG_WITH(des-header,
[ --with-des-header=NAME NAME is des header file [des.h]],
[
if test "$withval"; then
usedes=yes
des_header="$withval"
des_ldflag=-ldes
if test _"$des_include" = _ ; then
des_include=../libdes
des_libdir="$des_include"
fi
else
AC_MSG_WARN([*** You must supply an argument to the --with-des-header
option.])
fi
]
)
AC_ARG_WITH(des-libdir,
[ --with-des-libdir=DIR des library is in DIR [../libdes]],
[
if test "$withval"; then
usedes=yes
des_libdir="$withval"
des_ldflag=-ldes
if test _"$des_include" = _ ; then
des_include="$des_libdir"
fi
if test _"$des_header" = _ ; then
des_header="des.h"
fi
else
AC_MSG_WARN([*** You must supply an argument to the --with-des-libdir
option.])
fi
]
)
AC_ARG_WITH(des-ldflag,
[ --with-des-ldflag=LIB des library is specified by LIB [-ldes]],
[
if test "$withval"; then
usedes=yes
des_ldflag="$withval"
if test _"$des_include" = _ ; then
des_include=../libdes
fi
if test _"$des_header" = _ ; then
des_header="des.h"
fi
if test _"$des_libdir" = _ ; then
des_libdir="$des_include"
fi
else
AC_MSG_WARN([*** You must supply an argument to the --with-des-ldflag
option.])
fi
]
)
if test $usedes = "no" ; then
DESINCLUDEPATH=""
DESDEFINES=""
DESLIB=""
DESLIBPATH=""
DESHEADER=""
DESCRPT=""
else
if test `echo $des_ldflag|grep '^lib'|wc -l` -gt 0 ; then
des_ldflag=`echo $des_ldflag|sed 's/^lib/-l/g;s/[.].*//g'`
fi
DESINCLUDEPATH="-I$des_include"
DESDEFINES="-DHAVE_DES_ENCRYPTION"
DESHEADER="$des_header"
DESLIBPATH="-L$des_libdir"
DESLIB="$des_ldflag"
DESCRPT="__descrpt"
fi
AC_SUBST(DESDEFINES)
AC_SUBST(DESINCLUDEPATH)
AC_SUBST(DESLIBPATH)
AC_SUBST(DESLIB)
AC_SUBST(DESHEADER)
AC_SUBST(DESCRPT)
dnl zlib stuff
usezlib=no
AC_ARG_WITH(zlib,
[ --with-zlib for builtin compression [no]],
[
usezlib=yes
zlib_include=/usr/local/include
zlib_libdir=`echo $zlib_include|sed 's#include$#lib#g'`
]
)
AC_ARG_WITH(zlib-include,
[ --with-zlib-include=DIR zlib header file in DIR [/usr/local/include]],
[
if test "$withval"; then
usezlib=yes
zlib_include="$withval"
zlib_libdir="$zlib_include"
else
AC_MSG_WARN([*** You must supply an argument to the --with-zlib-include
option.])
fi
]
)
AC_ARG_WITH(zlib-libdir,
[ --with-zlib-libdir=DIR zlib library is in DIR [/usr/local/lib]],
[
if test "$withval"; then
usezlib=yes
zlib_libdir="$withval"
if test _"$zlib_include" = _ ; then
zlib_include="$zlib_libdir"
fi
else
AC_MSG_WARN([*** You must supply an argument to the --with-zlib-libdir
option.])
fi
]
)
AC_SUBST(commondir)
AC_SUBST(commondatadir)
AC_SUBST(commonshlibdir)
if test $usezlib = "no" ; then
ZLIB_INCLUDEPATH=""
ZLIB_DEFINES=""
ZLIB_LIB=""
ZLIB_LIBPATH=""
ZIP=""
else
ZLIB_INCLUDEPATH="-I$zlib_include"
ZLIB_DEFINES="-DUSE_ZLIB"
ZLIB_LIBPATH="-L$zlib_libdir"
ZLIB_LIB="-lz"
ZIP="__z"
fi
AC_SUBST(ZLIB_DEFINES)
AC_SUBST(ZLIB_INCLUDEPATH)
AC_SUBST(ZLIB_LIBPATH)
AC_SUBST(ZLIB_LIB)
AC_SUBST(ZIP)
locspec=`echo $prefix|sed 's#/#^#g'`
AC_SUBST(locspec)
AC_SUBST(EXTRACFLAGS)
AC_SUBST(OPTIMIZE)
AC_SUBST(osname)
AC_SUBST(CC)
HEADERS="regex.h limits.h values.h"
for header in $HEADERS ; do
safeval=`echo "$header" | sed 'y%./+-%__p_%'`
uppersafeval=`echo $safeval|tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
VNAM=DONT_INC_$uppersafeval
eval $VNAM=DONT_
eval isset='$'ac_cv_header_$safeval
if test $isset = yes ; then
eval $VNAM=""
fi
done
DONT_DECL_RE_UTILS="DONT_"
DONT_DECL_POSIX_REGEX="DONT_"
if test $ac_cv_func_re_compile_pattern != yes ; then
DONT_DECL_RE_UTILS=""
fi
if test $ac_cv_func_regcomp != yes ; then
DONT_DECL_POSIX_REGEX=""
fi
AC_SUBST(DONT_INC_REGEX_H)
AC_SUBST(DONT_INC_VALUES_H)
AC_SUBST(DONT_INC_LIMITS_H)
AC_SUBST(DONT_DECL_RE_UTILS)
AC_SUBST(DONT_DECL_POSIX_REGEX)
FUNCTIONS="strrstr strcasestr memmove qsort bsearch lsearch lfind rint isnan isatty re_comp"
for function in $FUNCTIONS ; do
safeval=`echo "$function" | sed 'y%./+-%__p_%'`
uppersafeval=`echo $safeval|tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
VNAM=DONT_DEF_$uppersafeval
eval $VNAM=DONT_
eval isset='$'ac_cv_func_$safeval
if test $isset != yes ; then
eval $VNAM=""
fi
done
AC_SUBST(DONT_DEF_STRRSTR)
AC_SUBST(DONT_DEF_STRCASESTR)
AC_SUBST(DONT_DEF_MEMMOVE)
AC_SUBST(DONT_DEF_QSORT)
AC_SUBST(DONT_DEF_BSEARCH)
AC_SUBST(DONT_DEF_LSEARCH)
AC_SUBST(DONT_DEF_LFIND)
AC_SUBST(DONT_DEF_RINT)
AC_SUBST(DONT_DEF_ISATTY)
AC_SUBST(DONT_DEF_ISNAN)
AC_SUBST(DONT_DEF_RE_COMP)
DONT_INC_TIME_H=DONT_
DONT_INC_SYS_TIME_H=DONT_
if test $ac_cv_header_time_h ; then
DONT_INC_TIME_H=""
fi
if test $ac_cv_header_time = yes ; then
DONT_INC_TIME_H=""
DONT_INC_SYS_TIME_H=""
else
if test $ac_cv_header_sys_time_h = yes ; then
DONT_INC_SYS_TIME_H=""
fi
fi
DONT_INC_SYS_TIMERS_H=DONT_
if test $ac_cv_header_sys_timers_h = yes ; then
DONT_INC_SYS_TIMERS_H=""
fi
AC_SUBST(DONT_INC_TIME_H)
AC_SUBST(DONT_INC_SYS_TIME_H)
AC_SUBST(DONT_INC_SYS_TIMERS_H)
DONT_USE_SOLARIS2_ACLS="DONT_"
if test $ac_cv_header_sys_acl_h = yes -a $ac_cv_func_acl = yes ; then
DONT_USE_SOLARIS2_ACLS=""
fi
AC_SUBST(DONT_USE_SOLARIS2_ACLS)
DONT_USE_HPUX10_ACLS="DONT_"
if test $ac_cv_header_sys_acl_h = yes -a $ac_cv_func_setacl = yes ; then
DONT_USE_HPUX10_ACLS=""
fi
AC_SUBST(DONT_USE_HPUX10_ACLS)
DONT_USE_POSIX_ACLS="DONT_"
if test $ac_cv_header_sys_acl_h = yes -a $acl_get_file = yes ; then
DONT_USE_POSIX_ACLS=""
AC_CHECK_FUNC(acl_free_text, AC_DEFINE(HAVE_ACL_FREE_TEXT))
AC_CHECK_FUNC(acl_to_short_text, AC_DEFINE(HAVE_ACL_TO_SHORT_TEXT))
fi
AC_SUBST(DONT_USE_POSIX_ACLS)
AC_OUTPUT(lconf.h budefs.h des_aux.h Makefile server.conf client.conf shwish.head xcc xsc xrs xss clientconfig serverconfig autocptapes afclient.8 cartis.8 cartready.8 afserver.8 afmserver.8 label_tape.8 cart_ctl.8 full_backup.8 incr_backup.8 afrestore.8 afverify.8 update_indexes.8 copy_tape.8 xafrestore.8 afclient.conf.8 afserver.conf.8 CONFIG intl/Makefile po/Makefile.in)
echo "$ARCH" > config.setup

View File

@ -0,0 +1,17 @@
--- __descrpt.c.orig Wed Dec 13 14:45:16 2000
+++ __descrpt.c Thu Aug 23 12:17:33 2001
@@ -129,12 +129,12 @@
}
if(weak)
- des_cbc_encrypt((des_cblock *) buf, (des_cblock *) outbuf,
+ des_cbc_encrypt(buf, outbuf,
len * sizeof(UChar),
accesskeys[0], ivec, encrypt);
else
#ifndef LIBDESBUG_COMPATIBILITY
- des_ede2_cbc_encrypt((des_cblock *) buf, (des_cblock *) outbuf,
+ des_ede2_cbc_encrypt(buf, outbuf,
len * sizeof(UChar),
accesskeys[0], accesskeys[1], ivec, encrypt);
#else

View File

@ -0,0 +1,24 @@
--- crptauth.c.orig Sun Feb 4 14:15:55 2001
+++ crptauth.c Thu Aug 23 12:17:33 2001
@@ -344,7 +344,7 @@
}
#ifndef LIBDESBUG_COMPATIBILITY
- des_ede2_cbc_encrypt((des_cblock *) buf, (des_cblock *) lbuf,
+ des_ede2_cbc_encrypt(buf, lbuf,
16 * sizeof(UChar),
keys[0], keys[1], ivec, 1);
#else
@@ -403,10 +403,10 @@
}
#ifndef LIBDESBUG_COMPATIBILITY
- des_ede2_cbc_encrypt((des_cblock *) buf, (des_cblock *) cbuf,
+ des_ede2_cbc_encrypt(buf, cbuf,
l * sizeof(UChar),
keys[0], keys[1],
- ivec, en ? 1 : 0);
+ (des_cblock*) ivec, en ? 1 : 0);
#else
des_3cbc_encrypt((des_cblock *) buf, (des_cblock *) cbuf,
l * sizeof(UChar),

View File

@ -0,0 +1,68 @@
--- full_backup.c.orig Thu Aug 23 13:33:04 2001
+++ full_backup.c Thu Sep 13 18:45:24 2001
@@ -165,6 +165,7 @@
UChar *default_paramfiles[] = { DEFAULT_CLIENT_CONFIGFILES , NULL };
UChar *bindir = NULL;
+UChar *libexecdir = NULL;
UChar *vardir = NULL;
UChar *libdir = NULL;
UChar *confdir = NULL;
@@ -172,6 +173,7 @@
ReplSpec dir_pat_repl[] = {
{ "%B", NULL, &bindir },
+ { "%E", NULL, &libexecdir },
{ "%L", NULL, &libdir },
{ "%V", NULL, &vardir },
{ "%C", NULL, &confdir },
@@ -1384,12 +1386,13 @@
/* construct file- and dirnames */
bindir = strapp(backuphome, FN_DIRSEPSTR "bin");
+ libexecdir = strapp(backuphome, FN_DIRSEPSTR "libexecdir");
vardir = strapp(backuphome, FN_DIRSEPSTR "var");
libdir = strapp(backuphome, FN_DIRSEPSTR "lib");
logdir = strdup(vardir);
confdir = strdup(libdir);
- if(!bindir || !vardir || !libdir || !logdir || !confdir)
+ if(!bindir || !vardir || !libdir || !logdir || !confdir || !libexecdir)
nomemerrexit();
if(!paramfile)
@@ -1400,6 +1403,7 @@
if(!backuphome){
/* construct file- and dirnames */
bindir = DEFBINDIR;
+ libexecdir = DEFLIBEXECDIR;
vardir = DEFVARDIR;
libdir = DEFLIBDIR;
logdir = DEFLOGDIR;
@@ -1420,13 +1424,14 @@
}
}
ZFREE(cptr);
+ libexecdir = strapp(backuphome, FN_DIRSEPSTR "libexec/afbackup");
vardir = strapp(backuphome, FN_DIRSEPSTR "var");
libdir = strapp(backuphome, FN_DIRSEPSTR "lib");
logdir = strapp(backuphome, FN_DIRSEPSTR "var");
confdir = strapp(backuphome, FN_DIRSEPSTR "lib");
}
- if(!bindir || !vardir || !libdir || !logdir || !confdir)
+ if(!bindir || !vardir || !libdir || !logdir || !confdir || !libexecdir)
nomemerrexit();
if(!paramfile)
@@ -1498,8 +1503,8 @@
if(!dont_compress_str)
dont_compress_str = "";
num_dont_compress = str2wordsq(&dont_compress, dont_compress_str);
- piperprogram = strapp(bindir, FN_DIRSEPSTR "__piper");
- zprogram = strapp(bindir, FN_DIRSEPSTR "__z");
+ piperprogram = strapp(libexecdir, FN_DIRSEPSTR "__piper");
+ zprogram = strapp(libexecdir, FN_DIRSEPSTR "__z");
server_ids_file = strapp(vardir, FN_DIRSEPSTR "server_ids");
index_stale_file = strapp(vardir, FN_DIRSEPSTR "index_stale");
if(!paramfile || !partfile || !oldmarkfile || !orgoldmarkfile

View File

@ -0,0 +1,38 @@
--- label_tape.c.orig Wed Jul 4 08:04:02 2001
+++ label_tape.c Thu Sep 13 18:49:29 2001
@@ -33,11 +33,13 @@
UChar *programfile = NULL;
UChar *programdir = NULL;
UChar *bindir = NULL;
+UChar *libexecdir = NULL;
UChar *libdir = NULL;
UChar *vardir = NULL;
ReplSpec replacements[] = {
{ "%B", NULL, &bindir },
+ { "%E", NULL, &libexecdir },
{ "%L", NULL, &libdir },
{ "%V", NULL, &vardir },
};
@@ -1035,11 +1037,13 @@
if( (cptr = FN_LASTDIRDELIM(programdir)) )
*(cptr) = '\0';
bindir = strapp(programdir, FN_DIRSEPSTR "bin");
+ libexecdir = strapp(programdir, FN_DIRSEPSTR "libexec/afbackup");
libdir = strapp(programdir, FN_DIRSEPSTR "lib");
#else /* defined(ORIG_DEFAULTS) */
bindir = strdup(DEFSERVBINDIR);
+ libexecdir = strdup(DEFSERVLIBEXECDIR);
libdir = strdup(DEFSERVLIBDIR);
#endif /* if else defined(ORIG_DEFAULTS) */
@@ -1049,6 +1053,7 @@
backuphome = strdup(backuphome);
/* construct file- and dirnames */
bindir = strapp(backuphome, FN_DIRSEPSTR "bin");
+ libexecdir = strapp(backuphome, FN_DIRSEPSTR "libexec/afbackup");
libdir = strapp(backuphome, FN_DIRSEPSTR "lib");
}

View File

@ -0,0 +1,34 @@
--- mserver.c.orig Mon Jun 25 18:59:42 2001
+++ mserver.c Thu Sep 13 18:51:21 2001
@@ -122,11 +122,13 @@
UChar *vardir = NULL;
UChar *bindir = NULL;
+UChar *libexecdir = NULL;
UChar *libdir = NULL;
UChar *confdir = NULL;
ReplSpec replacements[] = {
{ "%B", NULL, &bindir },
+ { "%E", NULL, &libexecdir },
{ "%L", NULL, &libdir },
{ "%V", NULL, &vardir },
{ "%C", NULL, &confdir },
@@ -2005,6 +2007,8 @@
confdir = strdup(DEFSERVCONFDIR);
if(!bindir)
bindir = strdup(DEFSERVBINDIR);
+ if(!libexecdir)
+ libexecdir = strdup(DEFSERVLIBEXECDIR);
#else
if(!vardir)
vardir = strapp(backuphome, FN_DIRSEPSTR "var");
@@ -2014,6 +2018,8 @@
libdir = strdup(confdir);
if(!bindir)
bindir = strapp(backuphome, FN_DIRSEPSTR "bin");
+ if(!libexecdir)
+ libexecdir = strapp(backuphome, FN_DIRSEPSTR "libexec/afbackup");
#endif
if(cryptfile)

View File

@ -0,0 +1,11 @@
--- mvals.h.orig Sat Oct 21 13:27:49 2000
+++ mvals.h Thu Aug 23 12:17:33 2001
@@ -8,7 +8,7 @@
#if !defined(__WATCOMC__) && !defined(__QNX__) && !defined(__MSDOS__) && !defined(__WIN32__) && !defined(_MSC_VER)
# ifdef INC_LIMITS_H
# include <limits.h>
-# ifdef __OpenBSD__
+# if defined( __OpenBSD__) || defined( __FreeBSD__)
# define MAXINT INT_MAX
# endif
# endif

View File

@ -0,0 +1,34 @@
--- server.c.orig Thu Aug 23 12:54:50 2001
+++ server.c Thu Sep 13 18:52:58 2001
@@ -103,11 +103,13 @@
UChar *storefile = NULL;
UChar *vardir = NULL;
UChar *bindir = NULL;
+UChar *libexecdir = NULL;
UChar *libdir = NULL;
UChar *confdir = NULL;
ReplSpec replacements[] = {
{ "%B", NULL, &bindir },
+ { "%E", NULL, &libexecdir },
{ "%L", NULL, &libdir },
{ "%V", NULL, &vardir },
{ "%C", NULL, &confdir },
@@ -835,6 +837,8 @@
confdir = strdup(DEFSERVCONFDIR);
if(!bindir)
bindir = strdup(DEFSERVBINDIR);
+ if(!libexecdir)
+ libexecdir = strdup(DEFSERVLIBEXECDIR);
#else
if(!vardir)
vardir = strapp(backuphome, FN_DIRSEPSTR "var");
@@ -844,6 +848,8 @@
libdir = strdup(confdir);
if(!bindir)
bindir = strapp(backuphome, FN_DIRSEPSTR "bin");
+ if(!libexecdir)
+ libexecdir = strapp(backuphome, FN_DIRSEPSTR "libexec/afbackup");
#endif
if(!g_lock.lockfile){

View File

@ -0,0 +1,267 @@
--- CONFIG.in.orig Fri Aug 24 14:54:34 2001
+++ CONFIG.in Thu Aug 23 12:27:55 2001
@@ -380,8 +380,8 @@
will be appended to it. Otherwise the file is removed before
writing.
%L will be replaced with the full path of the lib-directory
- of the server, %B with the bin-directory and %V with the
- var-directory.
+ of the server, %B with the bin-directory, %E with the libexec-
+ directory and %V with the var-directory.
Lock-file
@@ -702,9 +702,10 @@
The name of a file error messages or other notable events
are written to. A dash - stands for no logging. The pattern
%V will be replaced with the full path to the var-directory,
- %B with the bin directory, %L with the lib directory, %C with
- the configuration directory (usually == %L) and %I with the
- logging directory (usually == %V)
+ %B with the bin directory, %L with the lib directory, %E with
+ the libexec directory, %C with the configuration directory,
+ (usually == %L) and %I with the logging directory (usually ==
+ %V)
ClientIdentifier
--- afclient.conf.8.in.orig Fri Aug 24 14:54:34 2001
+++ afclient.conf.8.in Thu Aug 23 12:29:21 2001
@@ -244,9 +244,10 @@
The name of a file error messages or other notable events
are written to. A dash - stands for no logging. The pattern
%V will be replaced with the full path to the var-directory,
-%B with the bin directory, %L with the lib directory, %C with
-the configuration directory (usually == %L) and %I with the
-logging directory (usually == %V)
+%B with the bin directory, %L with the lib directory, %E with
+the libexec-directory, %C with the configuration directory
+(usually == %L) and %I with the logging directory (usually ==
+%V)
.TP
.B ClientIdentifier
The identifier for the client. Default: The official hostname.
--- cartagehandler.orig Sat Mar 24 17:54:49 2001
+++ cartagehandler Thu Aug 23 12:17:33 2001
@@ -106,6 +106,8 @@
set p=$p:h
set bindir="$p"
set sbindir="$p"
+ set p=$p:h
+ set libexecdir="$p/libexec/afbackup"
setenv BACKUP_HOME "$bindir"
if ($BACKUP_HOME:t == "bin" || $BACKUP_HOME:t == "sbin") then
@@ -119,8 +121,14 @@
if (! $?sbindir) then
set sbindir="$BACKUP_HOME/sbin"
endif
+if (! $?libexecdir) then
+ set libexecdir="$BACKUP_HOME/libexec/afbackup"
+endif
-set NUMSET="$bindir"/__numset
+set NUMSET="$libexecdir"/__numset
+if ( ! -x $NUMSET ) then
+ set NUMSET="$bindir"/__numset
+endif
if ( ! -x $NUMSET ) then
set NUMSET="$sbindir"/__numset
if ( ! -x $NUMSET ) then
--- clientconfig.in.orig Mon Jun 25 18:53:28 2001
+++ clientconfig.in Thu Sep 13 20:06:21 2001
@@ -414,7 +414,7 @@
helps__11=`TN_ "This flag specifies, whether the filename logging files should be processed by the configured program."`
helps__12=`TN_ "These patterns or filenames specify files, that no processing is attempted on. Normally this is done for all files. This might be unefficient, e.g. compressing files, that are already compressed, so their compression can be suppressed with this parameter. The value of this parameter must be a list separated by whitespace. Double quotes may enclose list elements."`
helps__13=`TN_ "This number determines how many log files of previous full backups are saved. These files may serve for the restore of older files than those present in the current backup. Of course there must be sufficient space to hold all the backups. It doesn't help to save all the saved filenames but not to have them available on tape."`
-helps__14=`TN_ "The name of a file error messages or other notable events are written to. A dash - stands for no logging. The pattern %V will be replaced with the full path to the var-directory, %B with the bin directory, %L with the lib directory, %C with the configuration directory (usually == %L) and %I with the logging directory (usually == %V)"`
+helps__14=`TN_ "The name of a file error messages or other notable events are written to. A dash - stands for no logging. The pattern %V will be replaced with the full path to the var-directory, %B with the bin directory, %L with the lib directory, %E with the libexec directory, %C with the configuration directory (usually == %L) and %I with the logging directory (usually == %V)"`
helps__15=`TN_ "The directory, where varying files should be put in. These files must not be deleted. The information they contain is necessary for restore."`
helps__16=`TN_ "The identifier for the client. Default: The official hostname. This entry is required, it several afbackup clients reside on one host. In this case the multi stream server must be able to distinguish the clients to distribute the pieces of backup data on tape correctly. Otherwise the data would be mixed up and be unusable by the reading client."`
helps__17=`TN_ "To prevent client programs from being started several times a lock file is created and this is it's name. For pattern replacements see LoggingFile (14)."`
--- configure.in.orig Thu May 24 13:50:13 2001
+++ configure.in Thu Aug 23 12:17:33 2001
@@ -38,7 +38,7 @@
dnl Checks for header files.
if test `uname` = "FreeBSD" ; then
- if test -r /usr/include/values.h ; then
+ if test `uname -r` -le '2' -a -r /usr/include/values.h ; then
ac_cv_header_values_h=yes
else
ac_cv_header_values_h=no
--- server.conf.changer.orig Fri Aug 24 14:54:34 2001
+++ server.conf.changer Fri Aug 24 14:28:47 2001
@@ -63,10 +63,10 @@
# %m by the number, if the count starts with 0.
#
# Command to set the file # on tape
-SetFile-Command: sh -c "mt -f %d rewind && %B/__mt -f %d fsf %m"
+SetFile-Command: sh -c "mt -f %d rewind && %E/__mt -f %d fsf %m"
#
# Command to skip to the next %n-th file on tape
-SkipFiles-Command: %B/__mt -f %d fsf %n
+SkipFiles-Command: %E/__mt -f %d fsf %n
#
# If there is a command to set the cartridge directly, use it here
Setcart-Command: %B/cart_ctl -F -m -C %n -D
@@ -81,7 +81,7 @@
#InitMedia-Command:
#
# Command, that is called, when a tape is full
-#TapeFull-Command: %B/cartagehandler %c %n %C
+#TapeFull-Command: %E/cartagehandler %c %n %C
#
# The command to erase the tape. This is necessary on some systems.
#Erasetape-Command: exit 0
--- server.conf.dir.orig Fri Aug 24 14:54:34 2001
+++ server.conf.dir Thu Aug 23 12:38:11 2001
@@ -126,7 +126,7 @@
# CONFIGURATION FOR REMOTE_EXECUTION
#
# Directory, where remotely started programs must reside
-Program-Directory: %B/../rexec
+Program-Directory: %E
#
#
# SERVER-STARTUP AND SHUTDOWN ACTIONS
--- server.conf.dirsl.orig Fri Aug 24 14:54:34 2001
+++ server.conf.dirsl Fri Aug 24 14:28:45 2001
@@ -69,7 +69,7 @@
SetFile-Command: /bin/rm -f %d;touch %d.%m; ln -s %d.%m %d; exit 0
#
# Command to skip to the next %n-th file on tape
-SkipFiles-Command: %B/__inc_link -s %d %n
+SkipFiles-Command: %E/__inc_link -s %d %n
#
# If there is a command to set the cartridge directly, supply it here
Set-Cart-Command: /bin/rm -f /var/backup/vol; mkdir -p /var/backup/vol.%n ; ln -s vol.%n /var/backup/vol ; touch %d.0 ; /bin/rm -f %d ; ln -s data.0 %d ; exit 0
@@ -126,7 +126,7 @@
# CONFIGURATION FOR REMOTE_EXECUTION
#
# Directory, where remotely started programs must reside
-Program-Directory: %B/../rexec
+Program-Directory: %E
#
#
# SERVER-STARTUP AND SHUTDOWN ACTIONS
--- server.conf.in.orig Fri Aug 24 14:54:34 2001
+++ server.conf.in Fri Aug 24 14:28:43 2001
@@ -63,10 +63,10 @@
# %m by the number, if the count starts with 0.
#
# Command to set the file # on tape
-SetFile-Command: sh -c "mt -f %d rewind && %B/__mt -f %d fsf %m"
+SetFile-Command: sh -c "mt -f %d rewind && %E/__mt -f %d fsf %m"
#
# Command to skip to the next %n-th file on tape
-SkipFiles-Command: %B/__mt -f %d fsf %n
+SkipFiles-Command: %E/__mt -f %d fsf %n
#
# If there is a command to set the cartridge directly, use it here
#Setcart-Command: %B/cart_ctl -F -m -C %n -D
@@ -81,7 +81,7 @@
#InitMedia-Command:
#
# Command, that is called, when a tape is full
-#TapeFull-Command: %B/cartagehandler %c %n %C
+#TapeFull-Command: %E/cartagehandler %c %n %C
#
# The command to erase the tape. This is necessary on some systems.
#Erasetape-Command: exit 0
--- server.conf.manual.orig Fri Aug 24 14:54:34 2001
+++ server.conf.manual Fri Aug 24 14:28:39 2001
@@ -63,10 +63,10 @@
# %m by the number, if the count starts with 0.
#
# Command to set the file # on tape
-SetFile-Command: sh -c "mt -f %d rewind && %B/__mt -f %d fsf %m"
+SetFile-Command: sh -c "mt -f %d rewind && %E/__mt -f %d fsf %m"
#
# Command to skip to the next %n-th file on tape
-SkipFiles-Command: %B/__mt -f %d fsf %n
+SkipFiles-Command: %E/__mt -f %d fsf %n
#
# If there is a command to set the cartridge directly, use it here
#Setcart-Command: %B/cart_ctl -F -m -C %n -D
@@ -81,7 +81,7 @@
#InitMedia-Command:
#
# Command, that is called, when a tape is full
-#TapeFull-Command: %B/cartagehandler %c %n %C
+#TapeFull-Command: %E/cartagehandler %c %n %C
#
# The command to erase the tape. This is necessary on some systems.
#Erasetape-Command: exit 0
--- serverconfig.in.orig Fri Aug 24 14:54:34 2001
+++ serverconfig.in Fri Aug 24 14:27:20 2001
@@ -425,7 +425,7 @@
helps__13=`TN_ "If the streaming device is not accessible (i.e. an open or a tape handling command fails) or another backup server process is still running, the server process re-tries his attempts regularly. If it fails longer than the time in minutes supplied here, an e-mail is sent to the configured user in charge (see: User To Inform). Supplying 0 means: never send mail."`
helps__14=`TN_ "If the streaming device is not accessible (i.e. an open or a tape handling command fails), the server process re-tries his attempts regularly. If it fails longer than the time in minutes supplied here, it exits silently leaving a warning in the log file. Supplying 0 means: try forever, never exit."`
helps__15=`TN_ "This is the interval in seconds, after that regularly the device is probed to be ready for reading. Thus after having ejected a cartridge it is automatically recognized, if a new cartridge has been inserted. For other media (e.g. exchangeable disks) this may not be suitable. Supply a 0 in these cases for no probing."`
-helps__16=`TN_ "If a media changer is available and it should be used, this is the file to configure it. It must contain specifications of the commands, that are driving the media changer. %L will be replaced with the full path of the lib-directory of the server, %B with the bin-directory and %V with the var-directory. See the manual pages of cart_ctl, how to setup the media changer operation."`
+helps__16=`TN_ "If a media changer is available and it should be used, this is the file to configure it. It must contain specifications of the commands, that are driving the media changer. %L will be replaced with the full path of the lib-directory of the server, %B with the bin-directory, %E with the libexec-directory and %V with the var-directory. See the manual pages of cart_ctl, how to setup the media changer operation."`
helps__17=`TN_ "This is the (shell-) command to run to position the tape to a certain file. Usually this is something like a combination of: mt -f <device> rewind and mt -f <device> fsf <number>. If the command you are supplying here starts to count with 1 for the first file on tape, you should insert %n for the <number>. If it starts with 0, replace <number> with %m. If you don't want to type the devicename again here, you may write %d instead. For more pattern replacements see Changer-Configuration-File (16)."`
helps__18=`TN_ "This is the (shell-) command to run to skip over to a file later on tape. Usually this is something like\nmt -f <device> fsf <number>\nInsert %n, where the number of files to skip over must be supplied in the command, in the example instead of <number>, and %d, where the device should appear (here: <device>). For more pattern replacements see Changer-Configuration-File (16)."`
helps__19=`TN_ "This is the (shell-) command to run to put a certain cartridge into the device. If the command you are supplying here starts to count with 1 for the first cartridge, you should insert %n in the place, where the cartridge number must appear. If it starts with 0, replace it with %m. If you don't want to type the devicename again here, you may write %d instead. If you don't have a command to perform this task, don't supply anything here. In this case you must set your cartridge handling system to sequential mode (automatically putting the next cartridge in, when the actual one is ejected). For more pattern replacements see Changer-Configuration-File (16)."`
--- xcc.in.orig Mon Jun 25 19:01:35 2001
+++ xcc.in Thu Sep 13 20:07:56 2001
@@ -196,7 +196,7 @@
set helps(11) [ TN_ "This flag specifies, whether the filename logging files should be processed by the configured program." ]
set helps(12) [ TN_ "These patterns or filenames specify files, that no processing is attempted on. Normally this is done for all files. This might be unefficient, e.g. compressing files, that are already compressed, so their compression can be suppressed with this parameter. The value of this parameter must be a list separated by whitespace. Double quotes may enclose list elements." ]
set helps(13) [ TN_ "This number determines how many log files of previous full backups are saved. These files may serve for the restore of older files than those present in the current backup. Of course there must be sufficient space to hold all the backups. It doesn't help to save all the saved filenames but not to have them available on tape." ]
-set helps(14) [ TN_ "The name of a file error messages or other notable events are written to. A dash - stands for no logging. The pattern %V will be replaced with the full path to the var-directory, %B with the bin directory, %L with the lib directory, %C with the configuration directory (usually == %L) and %I with the logging directory (usually == %V)" ]
+set helps(14) [ TN_ "The name of a file error messages or other notable events are written to. A dash - stands for no logging. The pattern %V will be replaced with the full path to the var-directory, %B with the bin directory, %E with the libexec directory, %L with the lib directory, %C with the configuration directory (usually == %L) and %I with the logging directory (usually == %V)" ]
set helps(15) [ TN_ "The directory, where varying files should be put in. These files must not be deleted. The information they contain is necessary for restore." ]
set helps(16) [ TN_ "The identifier for the client. Default: The official hostname. This entry is required, it several afbackup clients reside on one host. In this case the multi stream server must be able to distinguish the clients to distribute the pieces of backup data on tape correctly. Otherwise the data would be mixed up and be unusable by the reading client." ]
set helps(17) [ TN_ "To prevent client programs from being started several times a lock file is created and this is it's name. For pattern replacements see LoggingFile (14)." ]
--- xrs.in.orig Wed Jun 13 09:36:35 2001
+++ xrs.in Thu Aug 23 12:17:33 2001
@@ -17,7 +17,8 @@
# user settable section
set BACKUP_HOME_DEFAULT $env(BACKUP_HOME_DEFAULT)
-set BINDIR "@clientbindir@"
+set BINDIR "@bindir@"
+set LIBEXECDIR "@libexecdir@"
set poss_binsubs { bin sbin "" }
@@ -29,6 +30,7 @@
set BINDIR "$BACKUP_HOME/$binsub"
}
}
+ set LIBEXECDIR "$BACKUP_HOME/libexec/afbackup"
}
set found 0
set configfiles "$BACKUP_HOME_DEFAULT/lib/backup.conf /etc/buclient.conf /etc/afbuclient.conf /etc/afclient.conf /etc/afbackup/client.conf"
@@ -44,7 +46,7 @@
set cmdprefixlast [ expr [ string length $CMDPREFIX ] - 1 ]
set restoreprog "$BINDIR/afrestore"
-set packprog "$BINDIR/__packpats"
+set packprog "$LIBEXECDIR/__packpats"
source "@commonshlibdir@/aftcllib.tcl"
--- xsc.in.orig Fri Aug 24 14:54:34 2001
+++ xsc.in Fri Aug 24 14:27:54 2001
@@ -226,7 +226,7 @@
set helps(13) [ TN_ "If the streaming device is not accessible (i.e. an open or a tape handling command fails) or another backup server process is still running, the server process re-tries his attempts regularly. If it fails longer than the time in minutes supplied here, an e-mail is sent to the configured user in charge (see: User To Inform). Supplying 0 means: never send mail." ]
set helps(14) [ TN_ "If the streaming device is not accessible (i.e. an open or a tape handling command fails), the server process re-tries his attempts regularly. If it fails longer than the time in minutes supplied here, it exits silently leaving a warning in the log file. Supplying 0 means: try forever, never exit." ]
set helps(15) [ TN_ "This is the interval in seconds, after that regularly the device is probed to be ready for reading. Thus after having ejected a cartridge it is automatically recognized, if a new cartridge has been inserted. For other media (e.g. exchangeable disks) this may not be suitable. Supply a 0 in these cases for no probing." ]
-set helps(16) [ TN_ "If a media changer is available and it should be used, this is the file to configure it. It must contain specifications of the commands, that are driving the media changer. %L will be replaced with the full path of the lib-directory of the server, %B with the bin-directory and %V with the var-directory. See the manual pages of cart_ctl, how to setup the media changer operation." ]
+set helps(16) [ TN_ "If a media changer is available and it should be used, this is the file to configure it. It must contain specifications of the commands, that are driving the media changer. %L will be replaced with the full path of the lib-directory of the server, %B with the bin-directory, %E with the libexec-directory and %V with the var-directory. See the manual pages of cart_ctl, how to setup the media changer operation." ]
set helps(17) [ TN_ "This is the (shell-) command to run to position the tape to a certain file. Usually this is something like a combination of: mt -f <device> rewind and mt -f <device> fsf <number>. If the command you are supplying here starts to count with 1 for the first file on tape, you should insert %n for the <number>. If it starts with 0, replace <number> with %m. If you don't want to type the devicename again here, you may write %d instead. For more pattern replacements see Changer-Configuration-File (16)." ]
set helps(18) [ TN_ "This is the (shell-) command to run to skip over to a file later on tape. Usually this is something like\nmt -f <device> fsf <number>\nInsert %n, where the number of files to skip over must be supplied in the command, in the example instead of <number>, and %d, where the device should appear (here: <device>). For more pattern replacements see Changer-Configuration-File (16)." ]
set helps(19) [ TN_ "This is the (shell-) command to run to put a certain cartridge into the device. If the command you are supplying here starts to count with 1 for the first cartridge, you should insert %n in the place, where the cartridge number must appear. If it starts with 0, replace it with %m. If you don't want to type the devicename again here, you may write %d instead. If you don't have a command to perform this task, don't supply anything here. In this case you must set your cartridge handling system to sequential mode (automatically putting the next cartridge in, when the actual one is ejected). For more pattern replacements see Changer-Configuration-File (16)." ]
--- xss.in.orig Fri Aug 24 14:54:34 2001
+++ xss.in Fri Aug 24 14:28:35 2001
@@ -81,6 +81,7 @@
{ "%L" "libdir" "lib" "@serverlibdir@" }
{ "%I" "logdir" "var" "@serverlogdir@" }
{ "%B" "bindir" "bin" "@serverbindir@" }
+ { "%E" "libexecdir" "libexec" "@serverbindir@" }
{ "%C" "confdir" "lib" "@serverconfdir@" }
}

View File

@ -0,0 +1,31 @@
--- budefs.h.in.orig Sat May 26 13:02:04 2001
+++ budefs.h.in Mon Aug 27 15:38:41 2001
@@ -109,11 +109,13 @@
#define SERVERMODE_VARAPPEND 1
#define DEFBINDIR "@clientbindir@"
+#define DEFLIBEXECDIR "@libexecdir@"
#define DEFVARDIR "@clientvardir@"
#define DEFLIBDIR "@clientlibdir@"
#define DEFLOGDIR "@clientlogdir@"
-#define DEFCONFDIR "@clientlibdir@"
+#define DEFCONFDIR "@clientconfdir@"
#define DEFSERVBINDIR "@serverbindir@"
+#define DEFSERVLIBEXECDIR "@libexecdir@"
#define DEFSERVVARDIR "@servervardir@"
#define DEFSERVLIBDIR "@serverlibdir@"
#define DEFSERVCONFDIR "@serverconfdir@"
@@ -223,11 +225,13 @@
2048, 1024, 512, 32768, 65536, 10240, 8192, 131072
#define DEFAULT_CLIENT_CONFIGFILES \
+ "@clientconfdir@/client.conf", \
"/etc/buclient.conf", \
"/etc/afbuclient.conf", \
"/etc/afclient.conf", \
"/etc/afbackup/client.conf"
#define DEFAULT_SERVER_CONFIGFILES \
+ "@serverconfdir@/server.conf", \
"/etc/buserver.conf", \
"/etc/afbuserver.conf", \
"/etc/afserver.conf", \

View File

@ -0,0 +1,25 @@
sbin/afclient
@exec ln -sf %B/%f %B/afbackup
@unexec rm -f %B/afbackup
sbin/full_backup
@exec ln -sf %B/%f %B/afbackout
@exec ln -sf %B/%f %B/afrestore
@exec ln -sf %B/%f %B/afverify
@exec ln -sf %B/%f %B/copy_tape
@exec ln -sf %B/%f %B/incr_backup
@exec ln -sf %B/%f %B/update_indexes
@unexec rm -f %B/afbackout
@unexec rm -f %B/afrestore
@unexec rm -f %B/afverify
@unexec rm -f %B/copy_tape
@unexec rm -f %B/incr_backup
@unexec rm -f %B/update_indexes
sbin/afclientconfig
@exec ln -sf %B/%f %B/clientconfig
@unexec rm -f %B/clientconfig
sbin/autocptapes
libexec/afbackup/__packpats
libexec/afbackup/__piper
libexec/afbackup/__z
share/afbackup/lib/aftcllib.tcl
etc/afbackup/client.conf.sample

View File

@ -0,0 +1 @@
libexec/afbackup/__descrpt

View File

@ -0,0 +1,8 @@
@dirrm libexec/afbackup
@dirrm share/afbackup/lib
@dirrm share/afbackup/locale/it/LC_MESSAGES
@dirrm share/afbackup/locale/it
@dirrm share/afbackup/locale/de/LC_MESSAGES
@dirrm share/afbackup/locale/de
@dirrm share/afbackup/locale
@dirrm share/afbackup

View File

@ -0,0 +1,6 @@
sbin/xafclientconfig
@exec ln -sf %B/%f %B/xclientconfig
@unexec rm -f %B/xclientconfig
sbin/xafrestore
@exec ln -sf %B/%f %B/xrestore
@unexec rm -f %B/xrestore

View File

@ -0,0 +1,6 @@
sbin/xafserverconfig
@exec ln -sf %B/%f %B/xserverconfig
@unexec rm -f %B/xserverconfig
sbin/xafserverstatus
@exec ln -sf %B/%f %B/xserverstatus
@unexec rm -f %B/xserverstatus

View File

@ -0,0 +1,2 @@
share/afbackup/locale/de/LC_MESSAGES/afbackup.mo
share/afbackup/locale/it/LC_MESSAGES/afbackup.mo

View File

@ -0,0 +1,12 @@
@exec ln -sf %D/sbin/afrestore %D/libexec/afbackup/afrestore
@exec ln -sf %D/sbin/afverify %D/libexec/afbackup/afverify
@exec ln -sf %D/sbin/copy_tape %D/libexec/afbackup/copy_tape
@exec ln -sf %D/sbin/full_backup %D/libexec/afbackup/full_backup
@exec ln -sf %D/sbin/incr_backup %D/libexec/afbackup/incr_backup
@exec ln -sf %D/sbin/update_indexes %D/libexec/afbackup/update_indexes
@unexec rm -f %D/libexec/afbackup/update_indexes
@unexec rm -f %D/libexec/afbackup/afrestore
@unexec rm -f %D/libexec/afbackup/afverify
@unexec rm -f %D/libexec/afbackup/copy_tape
@unexec rm -f %D/libexec/afbackup/full_backup
@unexec rm -f %D/libexec/afbackup/incr_backup

View File

@ -0,0 +1,20 @@
libexec/afbackup/afserver
libexec/afbackup/afmserver
libexec/afbackup/__mt
libexec/afbackup/__inc_link
libexec/afbackup/__numset
libexec/afbackup/cartagehandler
sbin/cartready
@exec ln -sf %B/%f %B/changerready
@unexec rm -f %B/changerready
sbin/label_tape
@exec ln -sf %B/%f %B/cart_ctl
@unexec rm -f %B/cart_ctl
@exec ln -sf %B/%f %B/cartis
@unexec rm -f %B/cartis
sbin/afserverconfig
@exec ln -sf %B/%f %B/serverconfig
@unexec rm -f %B/serverconfig
share/afbackup/lib/aftcllib.tcl
etc/afbackup/server.conf.sample
etc/afbackup/changer.conf.sample

View File

@ -0,0 +1 @@
AF's backup system

8
misc/afbackup/pkg-descr Normal file
View File

@ -0,0 +1,8 @@
This is a client-server backup system offering several
workstations a centralized backup to special backup
servers.
WWW: http://www.afbackup.org/
- Vadim Belman
voland@catpipe.net

110
misc/afbackup/pkg-install Normal file
View File

@ -0,0 +1,110 @@
#!/bin/sh
#set -vx
PKG_BATCH=${BATCH:=NO}
PKG_PREFIX=${PKG_PREFIX:=/usr/local}
#
# create 'afbackup' user before installing
#
create() {
if [ ! -x /usr/sbin/pw ]; then
dialog --msgbox "Please add a user named \`afbackup' before installing this package." 6 60
exit 69
fi
if [ -x /sbin/nologin ]; then
shell=/sbin/nologin
else
shell=/nonexistent
fi
if ! pw show user afbackup -q >/dev/null; then
if ! dialog --clear --yesno "There is no user afbackup on your system.\n\nDo you want it to be created?" 7 60; then
dialog --msgbox "Please add a user named \`afbackup' before installing this package." 6 60
exit 69
fi
uid=100
while pw show user -u ${uid} -q >/dev/null; do
uid=`expr ${uid} + 1`
done
if ! pw add user afbackup -u ${uid} -g operator -d "/nonexistent" \
-c "AFBackup System Owner" -s "${shell}" \
; then
e=$?
dialog --msgbox "Failed to add user \`afbackup'. Please add it manually." 6 60
exit ${e}
fi
echo "==> Added user \`afbackup' (id ${uid})"
else
if ! pw mod user afbackup -g operator -d "/nonexistent" \
-c "AFBackup System Owner" -s "${shell}" \
; then
e=$?
dialog --msgbox "Failed to update user \`afbackup'." 6 60
exit ${e}
fi
echo "==> Updated user \`afbackup'."
fi
}
install_services() {
oldmask=`umask`
umask 077
egrep -v "^af.?backup" /etc/services >/tmp/services
echo "afbackup 2988/tcp" >>/tmp/services
echo "afmbackup 2989/tcp" >>/tmp/services
# XXX what if the original file had another mode?
install -m 0644 -o root -g wheel /tmp/services /etc/services
umask $oldmask
}
install_inetd_services() {
oldmask=`umask`
umask 077
egrep -v "^#?af.?backup" /etc/inetd.conf >/tmp/inetd.conf
echo "afbackup stream tcp nowait afbackup ${PKG_PREFIX}/libexec/afbackup/afserver ${PKG_PREFIX}/libexec/afbackup/afserver ${PKG_PREFIX}/etc/afbackup/server.conf" >>/tmp/inetd.conf
echo "afmbackup stream tcp nowait afbackup ${PKG_PREFIX}/libexec/afbackup/afmserver ${PKG_PREFIX}/libexec/afbackup/afmserver ${PKG_PREFIX}/etc/afbackup/server.conf" >>/tmp/inetd.conf
# XXX what if the original file had another mode?
install -m 0644 -o root -g wheel /tmp/inetd.conf /etc/inetd.conf
umask $oldmask
if [ -r /var/run/inetd.pid ]; then
kill -1 `cat /var/run/inetd.pid`
fi
}
check_service() {
if [ -z "`egrep '^afm?backup' /etc/services`" ] ; then
if dialog --clear --yesno "You don't have neither 'afbackup' nor 'afmbackup' entries\nin /etc/services.\n\nDo you want them to be created?\n\nNote that /etc/services will be forced to have root:wheel\nownership and mode 0644." 11 61; then
install_services
else
dialog --msgbox "Create the entries manually then. You will need them." 5 60
return
fi
fi
if [ -z "`egrep '^#?af.?backup' /etc/inetd.conf`" ] ; then
if dialog --clear --yesno "You don't have entries for afbackup/afmbackup server in\nyour /etc/inetd.conf file.\n\nDo you want them to be installed?" 8 60; then
install_inetd_services
else
dialog --msgbox "You shell create the entries manually then." 5 60
fi
fi
}
case $2 in
PRE-INSTALL)
create
;;
POST-INSTALL)
case $1 in
*-client*)
;;
*)
check_service
;;
esac
;;
esac

11
misc/afbackup/pkg-message Normal file
View File

@ -0,0 +1,11 @@
--------------------------------------------------------------
*** IMPORTANT! ***
An autogenerated DES key has been installed for you in
${PREFIX}/etc/afbackup/cryptkey. Remember to change it!
Also, ${PREFIX}/share/doc/afbackup contains the documentation
you ought to read before starting using the package.
--------------------------------------------------------------