#!/usr/bin/python

import dbus, flimflam, sys

if (len(sys.argv) < 3):
    print "Usage: %s <path> <key>" % (sys.argv[0])
    sys.exit(1)

(_, path, key) = sys.argv

flim = flimflam.FlimFlam(dbus.SystemBus())

ipconfig = flim.GetObjectInterface("IPConfig", path)
ipconfig.ClearProperty(key)
