Skip to main content

Simple library for controlling PPP connections with pppd.

Project description

python-pppd

Simple library for controlling PPP connections with pppd.

Under the hood it uses the subprocess module to interact with pppd to create and disconnect PPP connections.

Installation

Make sure pppd is installed on your system, typically on Ubuntu/Debian:

$ apt-get install pppd

And on Fedora/CentOS/RedHat:

$ dnf install pppd

Then you can install the latest release from PyPi:

$ pip install python-pppd

Alternatively, clone and install the latest development version from GitHub:

$ git clone https://github.com/cour4g3/python-pppd
$ cd python-pppd
$ pip install -e .

Getting Started

You can connect to an existing configured PPP connection:

>>> from pppd import PPPConnection
>>> ppp = PPPConnection(call='work') # blocks until connected
>>> ppp.connected() # check if connected, raises error if connection error
True
>>> ppp.laddr # address of local host
'10.0.0.1'
>>> ppp.raddr # address of remote client
'10.0.0.2'

You can specify any positional or keyword arguments:

>>> PPPConnection('/dev/ttyS0', connect='/usr/bin/chat -v -f /etc/chatscripts/A1')

Which is equivalent to the following:

$ sudo pppd /dev/ttyS0 connect "/usr/bin/chat -v -f /etc/chatscripts/A1"

Normally you require sudo to use pppd, if you don't have it and have setup the pppd binary with setuid-root or are running as root you can use:

>>> PPPConnection(sudo=False)

You can also specify an alternate paths to pppd or sudo if the libary cannot find them:

>>> PPPConnection(sudo_path='/usr/local/bin/sudo', pppd_path='/usr/local/sbin/pppd')

License

Licensed under the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python_pppd-1.0.8.tar.gz (5.2 kB view hashes)

Uploaded Source

Built Distribution

python_pppd-1.0.8-py3-none-any.whl (4.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page