diff -u --recursive --new-file v2.1.5/linux/CREDITS linux/CREDITS --- v2.1.5/linux/CREDITS Thu Oct 10 19:10:54 1996 +++ linux/CREDITS Tue Oct 29 15:33:37 1996 @@ -927,7 +927,7 @@ S: USA N: William (Bill) Metzenthen -E: billm@jacobi.maths.monash.edu.au +E: billm@suburbia.net D: Author of the FPU emulator. D: Minor kernel hacker for other lost causes (Hercules mono, etc). S: 22 Parker Street @@ -1117,6 +1117,12 @@ S: Rebmannsweg 34h S: 79539 Loerrach S: Germany + +N: Joerg Reuter +E: jreuter@lykos.oche.de +E: dl1bke@db0pra.ampr.org +D: Generic Z8530 driver, AX.25 DAMA slave implementation +D: Several AX.25 hacks N: William E. Roadcap E: roadcapw@cfw.com diff -u --recursive --new-file v2.1.5/linux/Documentation/Changes linux/Documentation/Changes --- v2.1.5/linux/Documentation/Changes Wed Sep 11 11:45:10 1996 +++ linux/Documentation/Changes Tue Oct 29 15:15:41 1996 @@ -103,49 +103,67 @@ this option in their lilo.config file. Comment it out and re-run lilo if you need ramdisks. +Module load errors +================== + + The 386 Linux kernel versions 2.1.0 and above have moved to address +0xc0000000. This means that syscalls that return an address in the +kernel area will return a value that is a negative 32 bit number. +Versions of libc prior to libc-5.4.8 will interpret the negative value +as an error. In particular, this prevents modules from loading. You +need at least libc-5.4.10 to load modules successfully again. + + The Linux C Library =================== - The latest stable Linux C Library release is 5.2.18. If you upgrade -to this from 5.0.9 or earlier, be sure to read the -`release.libc-5.2.18' file, since GNU make and a few other fairly -important utils can be broken by the upgrade. - - The current (beta) Linux C Library release is 5.3.12. In this -release there are some important changes that may cause troubles to -buggy programs (programs that call free() on a pointer not returned by -malloc() work with previous libc, but not with this release) so read the -`release.libc-5.3.12' file carefully! In the latest libc releases a -dirent bug, which erroneously defined d->reclen to d->namlen if USE_GNU -was defined, has been fixed. Unfortunately, some GNU packages depend -on this bug. GNU make 3.xx is one of them. To fix that you need to -patch and recompile those programs (a patch for make is included in the -file `release.libc-.5.3.9', and the address to obtain a precompiled -binary is at the end of this file). - - Also, the libc-5.3.x line has a known security hole relating to -rlogin. Libc-5.3.12 fixes this, so if you're going to run an -experimental libc, be sure to upgrade to 5.3.12. + Before upgrading your C library, be sure to carefully read the +`release.libc-x.y.z' file. (x.y.z is the version number eg. 5.4.7) + +- GNU make, perl, and a few other important utils can be broken by the + upgrade. A dirent bug, which erroneously defined d->reclen to + d->namlen if USE_GNU was defined, has been fixed. Unfortunately, + some GNU packages depend on this bug. GNU make 3.xx is one of them. + To fix that you need to patch and recompile those programs (a patch + for make is included in the file `release.libc-x.y.z', and the + address to obtain a precompiled binary is at the end of this file). + +- Upgrading libc can also break xterm support. If it does, you need + to recompile xterm. + +- There have been some important changes to libc that may cause + trouble with buggy programs. Programs that call free() on a pointer + not returned by malloc() work with older versions of libc, but not + with newer versions of libc. - If you're getting an error message that is something to the effect of + +There are good reasons to upgrade your libc though! + +- If you use modules, you'll need libc-5.4.10 or later with version + 2.1.x i386 kernels + +- The libc-5.3.x line before libc-5.3.12 have a known security hole + relating to rlogin. Another security fix was done in libc-5.4.7. + +- If you're getting an error message that is something like `fcntl_setlk() called by process 123 with broken flock() emulation' - then you need to upgrade to at least libc-5.2.18 as well. A proper -(in other words, BSD-style ;-) flock system call was added to 2.0.x, -and older libc's will now give this error. It doesn't *really* matter, -so you can just ignore it. If it really annoys you, upgrade libc (and -recompile any static binaries you might have that are linked against -the old libc). If you're feeling lazy, just comment out - - ` printk(KERN_WARNING -"fcntl_setlk() called by process %d with broken flock() - emulation\n", current->pid);' - - in linux/fs/locks.c and recompile. If you're still running a.out, -there's an unofficial libc-4.7.6 release out to which you can upgrade -to fix this problem. Libc is available from -ftp://sunsite.unc.edu/pub/Linux/GCC/. + then you need to upgrade to at least libc-5.2.18. A proper (in + other words, BSD-style ;-) flock system call was added to 2.0.x, and + older libc's will now give this error. It doesn't *really* matter, + so you can just ignore it. If it really annoys you, upgrade libc + (and recompile any static binaries you might have that are linked + against the old libc). If you're feeling lazy, just comment out + + `printk(KERN_WARNING + "fcntl_setlk() called by process %d with broken flock() emulation\n", + current->pid);' + + in linux/fs/locks.c and recompile. If you're still running a.out, + there's an unofficial libc-4.7.6 to which you can upgrade to fix + this problem. + GCC Signal 11 error =================== @@ -416,11 +434,9 @@ If make no longer works, you need to read the release notes for the libc you upgraded to. The latest libc and release notes can be found at ftp://tsx-11.mit.edu/pub/linux/packages/GCC. This is NOT an error due -to the kernel, though many people have mistakenly thought it is. When -you upgrade to libc-5.3.9, you have to patch make to get it to work. -All of this is documented in the release notes with libc. Upgrading -libc can also break xterm support. If it does, you need to recompile -xterm. +to the kernel, though many people have mistakenly thought it was. When +you upgrade to libc-5.3.9 or later, from previous versions, you have +to patch make to get it to work. Loop device =========== @@ -605,15 +621,15 @@ Linux C Library =============== -The stable 5.2.18 release: -ftp://sunsite.unc.edu/pub/Linux/GCC/libc-5.2.18.bin.tar.gz -Installation notes for 5.2.18: -ftp://sunsite.unc.edu/pub/Linux/GCC/release.libc-5.2.18 - -The latest 5.3.12 release: -ftp://sunsite.unc.edu/pub/Linux/GCC/libc-5.3.12.bin.tar.gz -Installation notes for 5.3.12: -ftp://sunsite.unc.edu/pub/Linux/GCC/release.libc-5.3.12 +The stable 5.4.7 release: +ftp://sunsite.unc.edu/pub/Linux/GCC/libc-5.4.7.bin.tar.gz +Installation notes for 5.4.7: +ftp://sunsite.unc.edu/pub/Linux/GCC/release.libc-5.4.7 + +The latest release: +ftp://sunsite.unc.edu/pub/Linux/GCC/private/tofu/libc-x.y.z.bin.tar.gz +Installation notes for x.y.z: +ftp://sunsite.unc.edu/pub/Linux/GCC/private/tofu/release.libc-x.y.z Patched make sources: ftp://sunsite.unc.edu/pub/Linux/devel/make/make-3.74.patched.tar.gz @@ -623,12 +639,16 @@ Linux C++ Library ================= +ftp://sunsite.unc.edu/pub/Linux/GCC/libg++-2.7.2.1.bin.tar.gz ftp://sunsite.unc.edu/pub/Linux/GCC/libg++-2.7.1.4.bin.tar.gz ftp://sunsite.unc.edu/pub/Linux/GCC/libg++-2.7.1.3.bin.tar.gz Installation notes: +ftp://sunsite.unc.edu/pub/Linux/GCC/release.libg++-2.7.2.1 ftp://sunsite.unc.edu/pub/Linux/GCC/release.libg++-2.7.1.4 ftp://sunsite.unc.edu/pub/Linux/GCC/release.libg++-2.7.1.3 -Use 2.7.13 with libc 5.2.18 and 2.7.14 with libc 5.3.12. +Use libg++-2.7.2.1 with libc-5.4.4 and above, + libg++-2.7.1.4 with libc-5.3.5 to libc-5.4.3, + libg++-2.7.1.3 with libc 5.2.14 to libc-5.3.4 Dynamic Linker ============== @@ -713,4 +733,3 @@ modified texinfo setup, so you don't need to bother generating a diff against the current version before you send the additional information to me. - diff -u --recursive --new-file v2.1.5/linux/Documentation/Configure.help linux/Documentation/Configure.help --- v2.1.5/linux/Documentation/Configure.help Wed Oct 9 08:55:16 1996 +++ linux/Documentation/Configure.help Tue Oct 29 15:33:37 1996 @@ -1864,11 +1864,11 @@ code which can be inserted in and removed from the running kernel whenever you want), say M here and read Documentation/modules.txt. -Z8530 SCC kiss emulation driver for AX.25 +Z8530 SCC driver for AX.25 CONFIG_SCC These cards are used to connect your Linux box to an amateur radio in order to communicate with other computers. If you want to use - this, read Documentation/networking/z8530drv.txt and the HAM-HOWTO, + this, read Documentation/networking/z8530drv.txt and the AX.25-HOWTO, available via ftp (user: anonymous) at sunsite.unc.edu:/pub/Linux/docs/HOWTO. If you want to compile this as a module ( = code which can be inserted in and removed from the diff -u --recursive --new-file v2.1.5/linux/Documentation/networking/z8530drv.txt linux/Documentation/networking/z8530drv.txt --- v2.1.5/linux/Documentation/networking/z8530drv.txt Fri Apr 12 09:49:29 1996 +++ linux/Documentation/networking/z8530drv.txt Tue Oct 29 15:33:37 1996 @@ -4,24 +4,22 @@ Internet: ========= -ftp.ucsd.edu:/hamradio/packet/tcpip/incoming/z8530drv-2.0.dl1bke.real.tar.gz +1. db0bm.automation.fh-aachen.de/incoming/dl1bke/z8530drv-utils-3.0.tar.gz -[ - if you can't find it there, try: - .../tcpip/linux/z8530drv-2.0.dl1bke.tar.gz - -] +2. ftp.ucsd.edu:/hamradio/packet/tcpip/incoming/z8530drv-utils-3.0.tar.gz + If you can't find it there, try .../tcpip/linux/z8530drv-utils-3.0.tar.gz and various mirrors (i.e. nic.switch.ch) ---------------------------------------------------------------------------- +Please note that the information in this document may be hopelessly outdated. +----------------------------------------------------------------------------- SCC.C - Linux driver for Z8530 based HDLC cards for AX.25 ******************************************************************** - (c) 1993,1995 by Joerg Reuter DL1BKE + (c) 1993,1996 by Joerg Reuter DL1BKE portions (c) 1993 Guido ten Dolle PE1NNZ @@ -37,7 +35,12 @@ 1. if compiled as module: loading the module 2. Setup of hardware, MODEM and KISS parameters with sccinit - 3. Attachment of each channel in the packet software + 3. Attach each channel to the Linux kernel AX.25 with "ifconfig" + +Unlike the versions below 2.4 this driver is a real network device +driver. If you want to run xNOS instead of our fine kernel AX.25 +use a 2.x version (available from above sites) or read the +AX.25-HOWTO on how to emulate a KISS TNC on network device drivers. 1.1 Loading the module @@ -54,15 +57,14 @@ You should include the insmod in one of the /etc/rc.d/rc.* files, and don't forget to insert a call of sccinit after that. It -will read your +will read your /etc/z8530drv.conf. - -1.2. /etc/z8530drv.rc -===================== +1.2. /etc/z8530drv.conf +======================= To setup all parameters you must run /sbin/sccinit from one -of your rc.*-files. This has to be done BEFORE the start of -NET or axattach. Sccinit reads the file /etc/z8530drv.rc +of your rc.*-files. This has to be done BEFORE you can +"ifconfig" an interface. Sccinit reads the file /etc/z8530drv.conf and sets the hardware, MODEM and KISS parameters. A sample file is delivered with this package. Change it to your needs. @@ -222,7 +224,7 @@ gencfg 2 0x150 4 2 0 1 0x168 9 4915200 -will print a skeleton z8530drv.rc for the OptoSCC to stdout. +will print a skeleton z8530drv.conf for the OptoSCC to stdout. gencfg 2 0x300 2 4 5 -4 0 7 4915200 0x10 @@ -236,11 +238,11 @@ The channel definition is divided into three sub sections for each channel: -An example for /dev/scc0: +An example for scc0: # DEVICE -device /dev/scc0 # the device for the following params +device scc0 # the device for the following params # MODEM / BUFFERS @@ -254,10 +256,6 @@ # nrzi = 1k2 MODEM, G3RUH 9k6 MODEM # nrz = DF9IC 9k6 MODEM # -rxbuffers 8 # number of rx buffers allocated - # (option, default is 4) -txbuffers 16 # number of tx buffers allocated - # (option, default is 16) bufsize 384 # size of buffers. Note that this must include # the AX.25 header, not only the data field! # (optional, defaults to 384) @@ -283,9 +281,10 @@ sections IS important. The MODEM parameters are set with the first recognized KISS parameter... -Please note that you can initialize the board only once after boot. -You can change all parameters but "mode" and "clock" later with the -Sccparam program or through KISS. Just to avoid security holes... +Please note that you can initialize the board only once after boot +(or insmod). You can change all parameters but "mode" and "clock" +later with the Sccparam program or through KISS. Just to avoid +security holes... (1) this divider is usually mounted on the SCC-PBC (PA0HZP) or not present at all (BayCom). It feeds back the output of the DPLL @@ -293,71 +292,56 @@ installed will normally result in keying the transceiver until maxkey expires --- of course without sending anything (useful). - 2. Attachment of a channel by your AX.25 software ================================================= -2.1 KA9Q NOS derivates -====================== +2.1 Kernel AX.25 +================ -When the linux has startup, the SCC driver has been initialized, -you can attach the channels in your packet software. This is done -by open the scc devices by using the attach asy command. -The SCC-drivers emulates the scc devices as serial asy ports, -this means e.g. that the baudrate can be set in the attach command. +To set up an AX.25 device you can simply type: + ifconfig scc0 44.128.1.1 hw ax25 dl0tha-7 -Example Wampes: - -############################################################################################# -# Wampes device attach -# NOTE: Interfacename and the device must be the same!! -# Usage: attach asy 0 0 slip|vjslip|ax25ui|ax25i|nrs|kissui