kettek/pages/utilities/epppd.ktx

37 lines
2.5 KiB
Plaintext

,,,,,,,,,,,,,,,,
EPPPD
````````````````
[[img:pix/utilities/shot_epppd.png]].class(thumbnail).href(pix/utilities/shot_epppd.png)
EPPPD is a fairly simple GPLv3'd AppleScript frontend to the pppd program. Given the background of the author (me!), 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!
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
,,,,,,,,,,,,
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.