From 0a121a8ecd6de894c14d60daf9da2022ec47405c Mon Sep 17 00:00:00 2001 From: Guillaume Cottenceau Date: Mon, 11 Jun 2001 13:49:39 +0000 Subject: Initial revision --- mdk-stage1/rp-pppoe/doc/CHANGES | 177 ++++++++++++++++ mdk-stage1/rp-pppoe/doc/HOW-TO-CONNECT | 295 ++++++++++++++++++++++++++ mdk-stage1/rp-pppoe/doc/KERNEL-MODE-PPPOE | 39 ++++ mdk-stage1/rp-pppoe/doc/LICENSE | 339 ++++++++++++++++++++++++++++++ mdk-stage1/rp-pppoe/doc/PROBLEMS | 3 + 5 files changed, 853 insertions(+) create mode 100644 mdk-stage1/rp-pppoe/doc/CHANGES create mode 100644 mdk-stage1/rp-pppoe/doc/HOW-TO-CONNECT create mode 100644 mdk-stage1/rp-pppoe/doc/KERNEL-MODE-PPPOE create mode 100644 mdk-stage1/rp-pppoe/doc/LICENSE create mode 100644 mdk-stage1/rp-pppoe/doc/PROBLEMS (limited to 'mdk-stage1/rp-pppoe/doc') diff --git a/mdk-stage1/rp-pppoe/doc/CHANGES b/mdk-stage1/rp-pppoe/doc/CHANGES new file mode 100644 index 000000000..9afce027d --- /dev/null +++ b/mdk-stage1/rp-pppoe/doc/CHANGES @@ -0,0 +1,177 @@ +Changes from Version 2.8 to 3.0: + +- Many small improvements to server. Server now only makes one + discovery socket, systemwide, with addition of "-n" option to pppoe. + +- Fixes for compilation problems on BSD, Solaris and some Linux platforms. + +- Added "-p" option to pppoe-server to allow you to specify a pool of + IP addresses to assign to clients. + +- Added GUI system (tkpppoe). This work was funded by Iospan + Wireless, Inc. The GUI includes a Set-UID wrapper (pppoe-wrapper) + which allows ordinary users to control a link (if so authorized.) + I believe the wrapper script is secure, but please audit the + source code (gui/wrapper.c) if you have any concerns. + +- Changes to scripts and pppoe.conf. DNS setup is now dynamic (happens + each time adsl-connect runs.) + +- Made relay.c check packet lengths rigorously; made it throw out Ethernet + frame padding on session packets as well as discovery packets. + +Changes from Version 2.7 to 2.8: + +- Added init scripts for TurboLinux, courtesy of Yasuhiro Sumi. + +- Made relay.c check packet lengths rigorously; made it throw out Ethernet + frame padding on discovery packets. + +*** NOTE: 2.7 was not released publicly + +Changes from Version 2.6 to 2.7: + +- Completely restructured source file tree. + +- Much internal restructuring to eliminate a bunch of global variables. + +- adsl-connect now executes /etc/ppp/adsl-lost whenever connection is dropped + or cannot be established. + +- Split pppoe.c into pppoe.c and discovery.c. + +- Added relay agent (pppoe-relay). + +- Made adsl-connect script use the "-U" (host-unique) option to better support + multiple PPPoE links. + +- Added support for kernel-mode PPPoE (EXPERIMENTAL, UNSUPPORTED!) + +- Added "-o" option to PPPoE server; encoded server PID in pppoe-server + cookie. + +Changes from Version 2.5 to 2.6: + +- Code should now compile cleanly on Caldera and Slackware Linux + +- Fixed rp-pppoe.spec file to work on Mandrake and Red Hat. + +- Deleted some obsolete files + +- Fixed bug in Solaris/x86 port (thanks to Philippe Levan) + +- Made shell scripts nicer under Solaris (again, Philippe Levan) + +- Made adsl-status look under /var/run and /etc/ppp for PID files. Should + fix problems with NetBSD. + +- Added PPPD_EXTRA to pppoe.conf; made the PID file depend on the config + file name. This makes it easier to run multiple PPPoE sessions. + +Changes from Version 2.4 to 2.5: + +- Tested for zero-length TCP option-length field, and for reverse-packing + of type/code bitfields. Thanks to Robert Schlabbach for pointing out + these problems. + +- Set umask to 077 in adsl-setup.in to protect created files like + /etc/ppp/pap-secrets. + +Changes from Version 2.3 to 2.4: + +- Fixed spec file to automatically add .gz extension to man files as required + +- Tightened firewall rules. + +- Better check for /var/run in adsl-status; minor shell script fixes and + cleanups for NetBSD and Solaris. + +- Added FAQ to HOW-TO-CONNECT regarding running a script each time a + connection is made. + +Changes from Version 2.2 to 2.3: + +- Fixed the init script to create/remove /var/lock/subsys/adsl (patch + courtesy of Charley Carter.) + +- Added support (under Linux) for N_HDLC line discipline which should + greatly reduce CPU usage. My tests show it cuts CPU usage in half. + My 486 DX2/66 gets 800 kb/s at 22% CPU usage. + +- adsl-connect uses "setsid" (if available) so that adsl-stop doesn't kill + its caller. There is (IMO) a bug in pppd which kills all processes in + its process group if the "pty" option is used. The setsid program gets + around this bug, on Linux at least. + +- Port to Solaris, courtesy of David Holland. + +- Renamed spec file from "spec" to "rp-pppoe.spec" and made some cleanups. + NOTE: Red Hat, in their infinite wisdom, decided to make the new RPM + compress man pages automatically. You may have problems building RPM's + from source unless you get the latest rpm package and make sure it + compresses man pages. + +Changes from Version 2.1 to 2.2: + +- Added "-f" option to pppoe to allow use of any Ethernet frame type + for PPPoE. USE WITH CAUTION -- this is a workaround for broken DSL + providers, not something you should monkey with freely! + +- Added pppoe-sniff program to help expose non-standard PPPoE implementations. + +Changes from Version 2.0 to 2.1: + +- Fixed minor bugs in bounds-checking + +- Modified adsl-status to use output of "netstat -r -n" to determine whether + or not link is up. This should make it independent of locale, I hope! + +- Added "-k" and "-d" options to pppoe. + +Changes from Version 1.9 to 2.0: + +- Addition of pppoe-server + +- Massive internal code restructuring + +- Zealous bounds-checking everywhere. + +- adsl-setup now quotes user name and password in /etc/ppp/pap-secrets. + +- Ported to OpenBSD, FreeBSD and NetBSD, courtesy of Geoff Mottram + and Yannis Sismanis. + +- Rearranged adsl-* shell scripts, courtesy of Heiko Schlittermann. + +- Fixed bug in which Host-Uniq did not work if access concentrator sent + a cookie. + +- Addition of SuSE-specific "init" script, courtesy of Gary Cameron. + +Changes from Version 1.8 to 1.9: + +- Added some more documentation to HOW-TO-CONNECT + +- Demand-dialling option now works correctly + +- SIGHUP terminates pppoe after sending a PADT to the access concentrator + +- Minor cleanups to connection shell scripts + +Changes from Version 1.7 to 1.8: + +- Added demand-dialling option + +- Clarified HOW-TO-CONNECT + +- Added adsl-status script + +- Added "restart" and "status" options to Red Hat /etc/rc.d/init.d/adsl script + +- Made adsl-setup check for existence of pppd + +- Wildcarded external interface in firewall rules + +- Made pppoe send a PADT frame if connection is terminated + +$Id$ diff --git a/mdk-stage1/rp-pppoe/doc/HOW-TO-CONNECT b/mdk-stage1/rp-pppoe/doc/HOW-TO-CONNECT new file mode 100644 index 000000000..3e888af69 --- /dev/null +++ b/mdk-stage1/rp-pppoe/doc/HOW-TO-CONNECT @@ -0,0 +1,295 @@ +$Id$ + +This package lets you connect a Linux machine to Sympatico HSE or Magma's +high-speed service using a Nortel 1-meg modem. + +Follow these steps and you should have your high-speed service up and running. + +0. Install the rp-pppoe-software +-------------------------------- + +You should have already done this by the time you're reading this. If not, +go back and read README. + +1. Set up your Ethernet hardware +-------------------------------- + +First, make sure the Ethernet card you intend to use with the modem is +visible to the Linux kernel. Just how to do this is beyond the scope +of this document. However, if the card is the only Ethernet card in +the system, executing: + + ifconfig eth0 + +should display something like this: + + eth0 Link encap:Ethernet HWaddr 00:60:67:62:31:D4 + +plust some more lines. Your HWaddr will be different. As long as you see +the HWaddr line, your card should be working. + +DO NOT assign an IP address to the Ethernet card. DO NOT configure the +card to come up at boot time. + +2. Configure various files +-------------------------- + +Several files need editing. The easiest way to do this is to run +the following command as root: + + adsl-setup + +Answer the questions and you should be all set. If you want to know what +goes on behind the scenes, continue reading this document. If you don't +care and your connection works, stop reading. :-) + +3. Edit pap-secrets +------------------- + +Edit the "pap-secrets" file, inserting your proper user-ID and password. +Install the file (or copy the relevant lines) to /etc/ppp/pap-secrets. +Your ISP may use CHAP authentication. In this case, add the line to +/etc/ppp/chap-secrets. + +4. Edit /etc/ppp/pppoe.conf +----------------------------- + +The file /etc/ppp/pppoe.conf contains configuration information for the +ADSL connection. You need to edit the following items: + +- Change ETH=eth1 to the correct Ethernet device for your modem. +- Change USER=bxxxnxnx@sympatico.ca to your proper ADSL user-ID. + +Don't edit any of the other settings unless you're an expert. + +5. Set up DNS +------------- + +If you are using DNS servers supplied by your ISP, edit the file +/etc/resolv.conf to contain these lines: + + nameserver ip_addr_of_first_dns_server + nameserver ip_addr_of_second_dns_server + +For example: + + nameserver 204.101.251.1 + nameserver 204.101.251.2 + + +6. Firewall your machine +------------------------ + +MAKE SURE YOU FIREWALL YOUR MACHINE. A sample firewall script is given +in the shell script "firewall" To install the script: + +a) Copy it to /etc/rc.d/init.d/firewall +b) Type: chkconfig firewall on +c) Start the firewall: sh /etc/rc.d/init.d/firewall start + +(The above procedure works ONLY on Red Hat-like systems.) + +You may want to tweak the script somewhat. + +7. Bring up the connection at boot time +--------------------------------------- + +On a Red Hat system, the installation procedure should have installed +a script called /etc/rc.d/init.d/adsl. To bring up the connection +at boot time, just type this command as root: + + chkconfig --add adsl + +On non-Red-Hat systems, add this line to the end +of /etc/rc.d/rc.local: + + /usr/sbin/adsl-start + +8. Configure LAN Hosts +---------------------- + +If you have a LAN behind the firewall, you have to lower the TCP +maximum segment size from the normal 1460 to 1452 (or better, 1412.) +You have two options: Either set the MTU of all the interfaces on +other hosts on the LAN to 1452, or use the "-m 1412" option to pppoe. +The "-m" option for pppoe is far simpler and makes it easier to add +hosts to the LAN, but consumes some extra CPU time. + +If you want to manually configure the LAN hosts, here's how: + +In Linux, use: "ifconfig eth0 mtu 1452". For best results, put this +in an /etc/rc.d/rc.local script. + +For Windows, machines, see http://lan.cns.ksu.edu/OS/WIN95/slip95.htm. +Set the MaxMTU to 1452. + +9. Commands to control the ADSL link +------------------------------------ + +As root, bring up the link by typing: adsl-start +As root, bring down the link by typing: adsl-stop + +That's it! + +-- +David F. Skoll | Roaring Penguin Software Inc. +http://www.roaringpenguin.com | Linux and UNIX Specialists + +PROBLEMS! DAVE, IT DOESN'T WORK! +--------------------------------- + +Here are some problems PPPoE users have encountered. + +----------------------------------------------------------------------------- +A) Can't see the Ethernet interface + +Well, I can't really help you here. To use these instructions, you must +have Linux working to the point where it recognizes your Ethernet card. +If you type "ifconfig ethx" and you get back a HWAddr value, your Ethernet +card is probably OK. But I really can't help with hardware configuration +issues. + +----------------------------------------------------------------------------- +B) Connection seems to come up, but I can't browse the web or ping anything + +You probably don't have DNS set up. See step 6. + +----------------------------------------------------------------------------- +C) Can't compile PPPoE + +I have only tested compilation on 2.2-kernel machines. Make sure you have +"make", the C compiler and all development header files installed. + +----------------------------------------------------------------------------- +D) pppd complains about (i) "unknown option pty" or (ii) "pty option precludes + specifying device name" + +(i) Your pppd is too old. You need at least 2.3.7. +(ii) Your /etc/ppp/options file is not empty. Empty it! + +----------------------------------------------------------------------------- +E) pppoe dies with the log message "Message too long" + +You set the MTU of the Ethernet interface connected to the ADSL modem +to less than 1500. Don't do that. + +----------------------------------------------------------------------------- +F) Internal hosts can't see the Internet + +Do you have masquerading set up? I can't help you in great detail, but +see the IPCHAINS-HOWTO and the IP-Masquerade mini-HOWTO. + +----------------------------------------------------------------------------- +G) Authentication fails + +Make sure you have the right secret in /etc/ppp/pap-secrets. Your ISP +may be using CHAP; it won't hurt to copy the line to /etc/ppp/chap-secrets. + +Also, MAKE SURE that /etc/ppp/options is EMPTY. The "adsl-connect" script +supplies all required options on the command line; additional options +in /etc/ppp/options may mess things up. + +----------------------------------------------------------------------------- +H) VPN software does not work + +If you are using VPN software on a Windows or Linux machine with another +Linux machine running PPPoE as the gateway, you MUST NOT use the "-m" option +to pppoe. This alters IP packets, which will break any VPN which uses IPSec. +In /etc/ppp/pppoe.conf, set CLAMPMSS to "no". You'll also have to reduce +the MTU on the hosts behind the gateway to 1452. + +----------------------------------------------------------------------------- +I) I can browse some web sites just fine, but others stall forever. + +There is probably a buggy router or firewall between you and the Web server. +One possible workaround: In /etc/ppp/pppoe.conf, find the line which reads: + + CLAMPMSS=1412 + +Try lowering the 1412 until it works (go down in steps of 100 or so.) Each +time you lower the value, you have to restart your connection like this: + + adsl-stop; adsl-start + +This should work around buggy routers which do not support Path MTU discovery. + +----------------------------------------------------------------------------- +J) Whenever I connect using ADSL, my internal LAN no longer sees the gateway + +You are more than likely running a 2.0.X Linux kernel. To solve this +problem, give the Ethernet card connected to the DSL modem a fake IP +address. For example, if eth0 is your internal LAN card and eth1 goes to +the DSL modem, do something like this: + + ifconfig eth1 10.0.0.1 netmask 255.255.255.0 + +(You may have to choose a different IP address; experiment.) +----------------------------------------------------------------------------- +K) How can I run a script every time I connect and get a new IP address? + +Put the script in /etc/ppp/ip-up. See the pppd(8) man page. +----------------------------------------------------------------------------- +L) Nothing works! + +You may need to put your Ethernet card in half-duplex, 10Mb/s mode to +work with the DSL modem. You may have to run a DOS program to do this, +or pass special parameters to the Linux driver. + +Some providers object to attempts to set the MRU or MTU. Try removing +"mtu 1492 mru 1492" from PPP_STD_OPTIONS in the adsl-connect script. +This problem has been seen with an ISP in Hong Kong. + +Your DSL provider may be using non-standard PPPoE frames or require +something special in the Service-Name field. If you have two computers, +you can try sniffing out these values with the "pppoe-sniff" program. +Type "man pppoe-sniff" for details. If you don't have two computers, +you'll have to ask your DSL provider if it uses non-standard PPPoE frames +or special Service-Name fields. Good luck getting an answer... + +If pppoe-sniff indicates that nothing is amiss, make sure the Ethernet +card associated with the ADSL modem does NOT have a valid IP address. +(NOTE: For 2.0 kernels, you may have to give it a fake IP address +which is not on your internal subnet. Something like 192.168.42.42 +might work if you are not using 192.168.42.*) + +If you are using synchronous PPP on a slow machine, try switching to +asynchronous PPP. + +Make sure no entries in the routing table go through the Ethernet card +connected to the ADSL modem. You might want to add these lines in +adsl-connect: + + ifconfig ethx down + ifconfig ethx up mtu 1500 + +which should reset things to sane values. + +####################################################################### +# WHEN ALL ELSE FAILS: # +####################################################################### + +If you are completely unable to connect, run the adsl-start script in +debugging mode. If you are using bash as your shell (if you don't +know what your shell is, it's probably bash), type this: + + DEBUG=1 adsl-start + +In tcsh or csh, use: + + setenv DEBUG 1; adsl-start + +Then follow the instructions to mail the debugging file to me. PLEASE +DON'T DO THIS until you have exhausted all other avenues; rp-pppoe is +free software and it costs me time and money to help people with +problems. While I don't mind doing this, I do mind it if you don't +make an effort to fix the problem yourself first. + +WARNING: If you run adsl-start in debugging mode and you manage to +connect, your connection will be extremely slow and huge amounts of +data will quickly fill your /tmp directory. Do not use debugging mode +unless you really cannot get your connection to work. + +Be aware that debugging mode produces hex dumps which potentially reveal +your user name and password. If the debugging output includes packets +labeled "PPPOE Session", you may wish to remove these packets from the +dump before mailing it to me. diff --git a/mdk-stage1/rp-pppoe/doc/KERNEL-MODE-PPPOE b/mdk-stage1/rp-pppoe/doc/KERNEL-MODE-PPPOE new file mode 100644 index 000000000..454c4b870 --- /dev/null +++ b/mdk-stage1/rp-pppoe/doc/KERNEL-MODE-PPPOE @@ -0,0 +1,39 @@ +RP-PPPoE now supports kernel-mode PPPoE on Linux kernels 2.4.x. However, +the default "./go" build procedure does not make kernel-mode support. + +Here's what you need to do: + +1) Download Michal Ostrowski's patched version of pppd which supports +a PPPoE plugin. The latest version as of this writing is +at http://www.math.uwaterloo.ca/~mostrows/ in +http://www.math.uwaterloo.ca/~mostrows/ppp-2.4.0-pppoe4.tgz. It is +also mirrored at http://www.roaringpenguin.com/pppoe/ + +2) Unpack that version of pppd and build and install it. + +3) In the rp-pppoe directory, change to src/ and type: + + ./configure --enable-plugin=/path/to/ppp-tree + +Here, /path/to/ppp-tree is where you unpacked the pppd software. It +should be the directory named ppp-2.4.0.pppoe + +4) Type make; make install + +5) Edit /etc/ppp/pppoe.conf to include this line: + + LINUX_PLUGIN=/etc/ppp/plugins/rp-pppoe.so + +6) Make sure your kernel was built with support for PPP, PPPOX and that +all modules are locatable by modprobe. Make sure you have a /dev/ppp +device: + + mknod /dev/ppp c 108 0 + +After that, adsl-start should use kernel-mode PPPoE. + +This code is experimental and unsupported. Use at your own risk. + +-- +David F. Skoll + diff --git a/mdk-stage1/rp-pppoe/doc/LICENSE b/mdk-stage1/rp-pppoe/doc/LICENSE new file mode 100644 index 000000000..9ed341535 --- /dev/null +++ b/mdk-stage1/rp-pppoe/doc/LICENSE @@ -0,0 +1,339 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 675 Mass Ave, Cambridge, MA 02139, USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + Appendix: How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) 19yy + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) 19yy name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/mdk-stage1/rp-pppoe/doc/PROBLEMS b/mdk-stage1/rp-pppoe/doc/PROBLEMS new file mode 100644 index 000000000..f0b7d7d59 --- /dev/null +++ b/mdk-stage1/rp-pppoe/doc/PROBLEMS @@ -0,0 +1,3 @@ +Problems? + +See the last section of HOW-TO-CONNECT. -- cgit v1.2.1