blueman
blueman copied to clipboard
See if NetworkManager can handle what ifconfig and ip do and add support
trafficstars
I think this should be possible but just do not have the time to look right now.
Below is what I used to test if this is at all possible. It is but it will require a large refactor.
import gi
import uuid
gi.require_version('NM', '1.0')
from gi.repository import NM, GLib
from blueman.bluez.NetworkServer import NetworkServer
def on_added(client, res, data):
client.add_connection_finish(res)
server = NetworkServer('/org/bluez/hci0')
loop = GLib.MainLoop()
nmclient = NM.Client.new()
uuid = str(uuid.uuid4())
conn = NM.SimpleConnection()
conn_sett = NM.SettingConnection(type='bridge', interface_name='pan1', id='pan1')
conn_sett_br = NM.SettingBridge(stp=False, multicast_snooping=False, forward_delay=5)
conn_sett_ipv4 = NM.SettingIP4Config(method='shared')
conn_sett_ipv4.add_address(NM.IPAddress.new(2, '10.116.139.1', 24))
conn.add_setting(conn_sett)
conn.add_setting(conn_sett_br)
conn.add_setting(conn_sett_ipv4)
nmclient.add_connection_async(conn, False, None, on_added, None)
server.register('nap', 'pan1')
loop.run()