kettek2/wiki/software/EPPPD.qwk

45 lines
2.6 KiB
Plaintext

# EPPPD - Excellent Point-to-Point Protocol Daemon
* Ye olde AppleScript frontend to `pppd`
## Download
* [EPPPD 1.0](EPPPD/EPPPD_1.0.zip)
* [EPPPD 1.0 source](EPPPD/EPPPD_1.0_xcode.zip)
## About
[![EPPPD.png](/software/EPPPD.png)](/software/EPPPD.png)
EPPPD is a fairly simple GPLv3'd AppleScript frontend to the pppd program. Common *nix methods are used to acquire the most-likely subnet, tty device, and DNS (aka, ls /dev/tty*, parsing those values, etc.). At the moment, it is fairly limited in its capabilities, but should be more than enough for the purpose of running a pppd server to a mobile/palm client, as was its original purpose. Additionally, the code is pretty nasty, but for the sake of FS/OSS I have made it available.
## Features
* Limited auto-detection of available tty devices!
* Baud rate drop-down menu!
* Target IP!
* DNS!
* Process checking, so you don't start two pppds!
* Enable IP Forwarding checkbox!
* All settings kept within the bundle's Info.plist - gogogo portability!
## Usage
* Options
* **Device:** This is the device that will be used by pppd to establish the connection. Looks for /dev/tty.* devices and sets the first item as the default device. If /dev/tty.Bluetooth-PDA-Sync is found, it will be preferred.
* **Baud rate:** List of possible baud rates.
* **Target IP:** The IP address that will be assigned to the PPP client. Uses ifconfig to acquire the first subnet that is not 127.0.0.1, then assigns it as the default address.
* **DNS:** Domain Name System address to send to the PPP client. Reads the first DNS nameserver found in /etc/resolv.conf.
* **IP Forwarding:** Enable IP forwarding from the PPP client. Without this enabled, the connection will be limited between the server and the client - no LAN or internet connectivity.
* **kill on exit:** Attempt to kill the pppd process when EPPPD quits.
* Buttons
* **Start/Stop:** Starts or Stops the pppd process.
* **View Log:** Opens /var/log/ppp.log in Console.app.
* **Clear Log:** Clears the log file /var/log/ppp.log.
* **Check:** Checks to see if the daemon is already running - if so changes the Start/Stop button and sets the PID of the process.
* **Save:** Saves the settings for Device, Baud rate, Target IP, DNS, and kill on exit to EPPPD's internal Info.plist file.
* **Clear:** Clears the settings for Device, Baud rate, Target IP, DNS, and kill on exit.
## Additional Notes
For clarity's sake, it ultimately executes the following:
/usr/sbin/pppd DEVICE BAUDRATE :TARGETIP noauth local ms-dns DNS passive proxyarp silent logfile /var/log/ppp.log