more isdn4k-utils install changes

This commit is contained in:
he 1999-10-11 21:22:23 +00:00
parent 90e1c792d4
commit 34889f0d6e
6 changed files with 125 additions and 61 deletions

View File

@ -1,4 +1,4 @@
/* $Id: CHANGES,v 1.7 1999/10/06 18:16:21 he Exp $
/* $Id: CHANGES,v 1.8 1999/10/11 21:22:23 he Exp $
# Change log for eftp4Linux
#
# [new] means 'new feature added'
@ -18,6 +18,16 @@
#
$Log: CHANGES,v $
Revision 1.8 1999/10/11 21:22:23 he
more isdn4k-utils install changes
- [imp] config/autoconf changes. Partially changed autoconf parameter
names. Support `make install'. Improved integration in
isdn4k-utils menu config.
- [imp] Makefile: "install" target will try to create symlinks
/etc/isdn/eft{access,users} to /etc/ftp{access,users} such
that default access control will be the same as for ftp.
Revision 1.7 1999/10/06 18:16:21 he
removed some dead code and pipe proof command line reading (eftp)

View File

@ -5,10 +5,10 @@ Quick Install:
eftp4linux needs a 2.2.x kernel which supports some special features
and recent isdn4k-utils.
Provided that your distribution is deliverd with such a 2.2.x kernel
Provided that your distribution is delivered with such a 2.2.x kernel
pre-installed, you might be able to use the basic functionality of
the eftp4linux package without any other modifications to your system.
You can test this by runing the shell script by changing to the
the eftp4linux package without any further modifications to your system.
You can test this by running the shell script by changing to the
"scripts"-sub-directory and typing
sh check_system
@ -28,7 +28,7 @@ Kernel
eftp4linux needs a 2.2.x kernel with X.25 PLP support and
"X.25 on top of isdn" support.
As erly 2.2.x kernels contain outdated isdn code, it is recommended
As early 2.2.x kernels contain outdated isdn code, it is recommended
to use kernel 2.2.12 or newer.
When configuring the kernel for compilation, (i.e. by `make
@ -59,7 +59,7 @@ ISDN subsystem --->
Set all other options as usual and then compile your kernel, i.e.
make dep
make zImage modules
make [b]zImage modules
make modules_install
"make modules_install" is recommended after compilation.
@ -120,33 +120,62 @@ the x25-utils with the ax25-utils, you only need the x25-utils).
Make sure that the compiler/preprocessor finds the include/linux/x25.h
file. Either add some flags to the makefile or make /usr/src/linux a
symbolic link pointing to your pre2.2 kernel's include/linux directory.
symbolic link pointing to your 2.2 kernel's include/linux directory.
This eftp4linux package
=======================
Just untar the package and type 'make' in the top level makefile.
Just untar the package and type 'make config; make' in the top
level directory.
This should automatically run a configure script. If your new isdnctrl
is installed at an unsusual location, you might want to edit the
./configure script before. The locations searched for are
/usr/local/sbin:/usr/local/bin:/usr/sbin:/sbin:/usr/bin:/bin.
If you have multiple isdnctrl versions installed, make sure that the
It is now also possible (and probably the least troublesome method)
to compile eftp4linux as part of the isdn4k-utils package. Do a
Do a 'make config' in the isdn4k-utils top level directors. You need
to enable CONFIG_EXPERIMENTAL in order to make the eurofile submenu
visible. (Say 'y' to 'Prompt for development and/or incomplete code'
in the 'Code maturity level options' menu). People who install
eftp4linux for the first time can safely say 'y' to all eurofile
config options. After configuration, do a 'make';
(Execptions: people needing to be paranoid about security might
say 'n' to 'install eftp suid root'. People who already installed
a former version of eftp4linux and have installed modified versions
of eftp4linux config files might choose to disable overwriting
existing configuration files).
After that, do a 'make install'. If you have configured eftp4linux
by means of the isdn4k-utils config menu and said 'y' to all options,
eftp4linux should be ready for use now. You might skip the remaining
part of this chapter if you are not interested in details and only
come back here if problems are observed later.
If you compile eftp4linux stand-alone, and you want to use
non-standard default locations of certain files, you can edit
the configure script and change the values of the CONFIG_* variables
before.
The eftd.sh script currently locates certain utilites (e.g. isdnctrl)
by full path name. The full path name is figured out at configurataion
time. The locations searched for are
/usr/local/sbin:/usr/local/bin:/usr/sbin:/sbin:/usr/bin:/bin. If you have
installed utilities at an unsusual location, you might want to edit the
./configure script before.
If you have multiple utility versions installed, make sure that the
utility found first is the one just compiled as above (against the
(patched) 2.2pre kernel header files).
(patched) 2.2 kernel header files).
The directory where the isdn configuration files are located is
assumed to be /etc/isdn. If this is not true for your installation,
either create that directory or set the environment variable
I4LCONFDIR to an alternative directory prior to compilation.
CONFIG_I4LCONFDIR to an alternative directory prior to compilation.
As I could not test with all compiler/libc/distribution combinations,
maybe I missed something. If configuration should fail or some files
are not found during compilation, please tell me.
As of eftp4linux-0.0.7, command line editing in eftp by means of
the GNU readline library is enabled on default. For command
the GNU readline library is enabled by default. For command
line editing in eftp to work, you need a sufficiently recent
GNU readline library that supports the "alternative interface".
You also need the ncurses library. If the approriate libraries are
@ -160,19 +189,22 @@ process, do a 'make distclean' before recompiling.
Starting the the Eurofile applications
======================================
Starting the Eurofile applications
==================================
General preparation
===================
If you have omitted the "make modules_install" after your kernel
compilation, the default eft scripts (and probably the init scripts
If you needed to re-compile your kernel and have omitted the
"make modules_install" after your kernel compilation, the default
eft scripts (and probably the init scripts
of your linux distribution as well) won't be able to load the modules
corresponding to your (patched) kernel version. In that case, either
modify all scripts to load the proper modules by absolute pathname
or set the enviromnemnt variable MODPATH to the "modules" directory
of your developer kernel's source tree.
of your developer kernel's source tree. (But be aware: MODPATH is
only acknoledged by insmod. If you insert modules on your own by modprobe,
MODPATH has no effect).
Boot your linux 2.2.x kernel. The isdn subsystem should be
set up to a state where a HL driver capable of l2_prot x75i is
@ -184,16 +216,25 @@ insmod x25
or
modprobe x25
Copy the file eft.conf present in the examples directory to the
I4LCONFDIR (probably /etc/isdn) and edit it in order to configure
the MSNs to be used by your EUROFILE client and server.
People who have said 'y' to the the 'install a default eft.conf file'
menu entry are done now.
People who have choosen not to install the eft.conf file should have a
look at the the eft.conf as present in the examples directory,
compare it with a their already installed version in the
I4LCONFDIR (probably /etc/isdn) and decide whether their
own eft.conf file needs to be edited.
Starting the Eurofile server
============================
Start the daemon as root by the script eftd.sh as present in the
"scripts"-directory by typing
There is a schell script present in the scripts directory to start
the eurofile daemon.
Start the daemon as root using the script as present in the "scripts"-
directory (or in the sysv init directory if the script is installed)
by typing
eftd.sh start
@ -206,6 +247,14 @@ You can stop EUROFILE service again by
eftd.sh stop
The eftd.sh script locates the eftd binary from the
installation directory. If you have not done a 'make install' yet
and want to test eftd before, you can tell the script to load
eftd diretcly from the eftp4linux compilation tree by setting the
environment variable EFTD_SH_SRC to a non-empty value before executing
the script
Starting the Eurofile client
============================
@ -218,22 +267,23 @@ eftp -i ISDN_NO -u USER
where ISDN_NO specifies the isdn number of the remote server and USER
is the login name on the remote server.
root priviliges are needed for doing so. If this is undesireable,
there is also support for running eftp suid root now. Refer to the
eftp documentation in the doc directory for details before doing so.
root priviliges are needed for doing so. Non-root users can also use
eftp if it is installed suid root as there is special support for
running eftp suid root now. Please refer to the eftp documentation
in the doc directory for details about some security related issues.
It is also possible to test eftp and eftd locally with the isdnloop
driver module (no paying isdn connections involved, no root
permissions for eftp necessary). To do so, uncomment the
"EFTD_WITH_LOOP=y" in eftd.sh before you start it (or put such a
line in your /etc/isdn/eft.conf file). Then, simply type
permissions for eftp necessary). To do so, uncomment the line
"EFTD_WITH_LOOP=y" in /etc/isdn/eft.conf before you start the
eftd.sh script. Then, simply type
eftp -x 1 -u USER
where USER is your unix login name on your machine and enter your login
password when prompted. For this to work, you need the x25_route
programme from the x25_utils installed and you also must have compiled and
installed the isdnloop driver kernel module.
program from the x25_utils installed and you also must have compiled and
installed the isdnloop driver kernel module and the loopctrl utility.
There is also an old script "eftp.sh" (this needs to be started from the
@ -243,15 +293,13 @@ the client is executed)
eftp.sh ISDN_NUMBER [USER/PASSWD]
in order to start an EUROFILE client and connect to a remote eft server.
Note that typing the password on the command line is not safe if
your system is shared with other users who might spoof your password
with the ps command. It also leaves traces in your command history file.
You can also connect to your own server on top of the isdnloop driver
(no paying isdn connection involved) by
The old script supports connecting to your own server on top of the
isdnloop driver (no paying isdn connection involved) by
eftp.sh localhost [USER/PASSWD]

View File

@ -1,4 +1,4 @@
# $Id: Makefile,v 1.11 1999/10/08 00:31:04 he Exp $
# $Id: Makefile,v 1.12 1999/10/11 21:22:23 he Exp $
-include Rules.make
@ -7,7 +7,8 @@ SHELL = /bin/sh
CVS = cvs -z 4
SCRIPTS = scripts/eftd.sh scripts/eftp.sh
SCRIPTS = scripts/eftd.sh scripts/eftp.sh scripts/check_system
AUTO_CONFIGURED_FILES = Rules.make scripts/eftd.sh scripts/eftp.sh examples/eft.conf
#
#additions to the CHANGES file shall automatically increase the compiled-in
@ -16,7 +17,7 @@ SCRIPTS = scripts/eftd.sh scripts/eftp.sh
E4L_EXTRA_VERSION_DEP := $(shell pwd)/CHANGES
export E4L_EXTRA_VERSION_DEP
CONF_DEPS = ./configure scripts/eftd.sh scripts/eftp.sh src/config.h Rules.make
CONF_DEPS = ./configure $(AUTO_CONFIGURED_FILES)
#this target is required by the isdn4k-utils root makefile's default target
all: $(CONF_DEPS)
@ -25,14 +26,14 @@ all: $(CONF_DEPS)
really_all: $(CONF_DEPS)
make -C src all
config src/config.h Rules.make $(SCRIPTS): configure
config src/config.h $(AUTO_CONFIGURES_FILES): configure
./configure
chmod a+x scripts/eftd.sh scripts/eftp.sh
configure: configure.in
autoconf
permissions: scripts/eftd.sh scripts/eftp.sh
permissions: $(SCRIPTS)
chmod a+x $(SCRIPTS)
clean:
@ -40,7 +41,7 @@ clean:
make -C src clean
distclean: clean
rm -f config.* *~ '#'*'#' $(SCRIPTS)
rm -f config.* *~ '#'*'#' $(AUTO_CONFIGURED_FILES)
make -C src distclean
rm -f Rules.make eftp4linux*.tar.gz
rm -f `find . \( -name core -o -name '*.orig' -o -name '*.rej' -o \
@ -56,11 +57,13 @@ configureclean: distclean
install:
make -C src install
ifeq ($(CONFIG_EFT_INSTALL_EFTD_SH),y)
cd scripts; $(INSTALL_SCRIPT) eftd.sh $(SYSVINIT_RC_DIR)/
cd scripts && $(INSTALL_SCRIPT) eftd.sh $(SYSVINIT_RC_DIR)/
endif
ifeq ($(CONFIG_EFT_INSTALL_CONF),y)
cd examples; $(INSTALL_DATA) eft.conf $(I4LCONFDIR)/
cd examples && $(INSTALL_DATA) eft.conf $(I4LCONFDIR)/
endif
test -e $(I4LCONFDIR)/eftaccess || test -f /etc/ftpaccess && ln -s /etc/ftpaccess $(I4LCONFDIR)/eftaccess
test -e $(I4LCONFDIR)/eftusers || test -f /etc/ftpusers && ln -s /etc/ftpusers $(I4LCONFDIR)/eftusers
commit: distclean configure
$(CVS) commit .
@ -92,4 +95,3 @@ release: new_version commit
tar -czf ../eftp4linux-$(NEW_VERSION).tar.gz .
.PHONY: all config permissions clean distclean release configureclean commit update default

View File

@ -1,4 +1,4 @@
$Id: README,v 1.4 1999/08/28 16:34:53 he Exp $
$Id: README,v 1.5 1999/10/11 21:22:23 he Exp $
README file for eftp4linux
==========================
@ -8,10 +8,11 @@ EUROFILE Transfer Protocol as standardised by a set of ETSI norms
(in particular ETS 300-383 and ETS 300-075). It is freqently used
to transfer files over ISDN.
Currently, the only target OS is Linux > 2.2.x. However, the design
Currently, the only target OS is Linux >= 2.2.x. However, the design
should allow for porting it to other POSIX operating systems
that provide a select() system call and a socket interface to
the X.25/ISO-8208 network layer protocol.
the X.25/ISO-8208 network layer protocol. (Some minor non-POSIX
features are currently used as well for convenience).
DISCLAIMER
==========
@ -39,7 +40,7 @@ on top of this library:
line editing is supported by means of the GNU readline library.
- An EUROFILE server which can serve multiple connections
simulatneously and suupports navigation (i.e. changing directories).
simulatneously and supports navigation (i.e. changing directories).
User authentification is provided by a seperate
authentification library derived from wu-ftpd which allows for fine
grained access control based on user-id, password, and remote isdn
@ -111,7 +112,8 @@ In addition to the files contained in this distribution, you will need
therein is the x25_route utility. (x25-utils-2.1.20 is still the
most current release). Don't confuse the x25-utils with the ax25-utils.
The latter is for amateur radio networking and not related to
eftp4linux at all.
eftp4linux at all. (You can use eftp4linux without this packages,
but local testing without isdn connection won't be possible then)
- some of the recent isdn4k-utils, in particular isdnctrl (and
loopctrl, if you want to test locally by means of the isdnloop driver).
@ -131,7 +133,7 @@ How to build:
See the INSTALL file.
After having typed "make" in the top directory, there will
(hopefully -:) be two important user level programs inside src/:
(hopefully :-) be two important user level programs inside src/*/:
- eftp is a simple EUROFILE client that allows for transferring files
between a remote machine and your linux box by means of the EUROFILE
@ -140,7 +142,8 @@ After having typed "make" in the top directory, there will
- eftd is an EUROFILE server.
Some older programmes, which are of less importance now, will also build:
Some older programmes, which are of less importance now, will also
build if you type `make really_all':
- x25.echod listens on an x25 socket and echoes back every packet
received. Access to the x25 Q-bit is enabled to demonstrate this
@ -180,7 +183,7 @@ because the ~ftp directory usually contains no downloadable stuff).
The authentication library can even evaluate the peer's
isdn number for its decisions. For this to work reliably,
you need to use the cvs version of isdn4linux as of 1998-08-31 or
newer or a kernel >= 2.3.4.
newer or a kernel >= 2.2.12 or 2.3.4.
Other sources of information:
@ -305,4 +308,3 @@ EUROfile project and I'd like to mention them explicitly:
the University of California, Berkeley and its contributors.
- Henner

View File

@ -1,4 +1,4 @@
$Id: TODO,v 1.6 1999/10/06 18:16:21 he Exp $
$Id: TODO,v 1.7 1999/10/11 21:22:23 he Exp $
Important:
@ -14,14 +14,13 @@ Important:
Not showstoppers, but should be done before a possible stable release:
- 'make install', with reasonable default config files.
- more casefix testing with new mangeling method
- selectively and automatically (for file systems not supporting
symlinks) disallow symlink-based transfer name database
lookup
- certain disconnect scenarios result in error/warning
messages which are harmless, but might confuse novice users.
(in particular, release/wait for release seems to be buggy)
(in particular, release amd wait for release seems to be buggy)
- scan all source files for FIXME/XXX/#if 0 labels and
try cleaning this up.
- improve autoconf readline support (support non-default

View File

@ -13,6 +13,10 @@ case $kversion
;;
esac
if test `id --user` != 0; then
echo 'This scripts needs to be run by root in order to perform all checks'
exit 1
fi
#
# Test if the kernel supports X.25
# This only works if the /proc file system is mounted.
@ -61,4 +65,3 @@ else
echo "is not loaded or not set up correctly. Further checks aborted."
exit 1
fi