author | Tero Marttila <terom@fixme.fi> |
Thu, 02 Apr 2009 23:59:31 +0300 | |
changeset 5 | 86b05c0ab5cd |
parent 4 | 8b633782f02d |
permissions | -rw-r--r-- |
0 | 1 |
""" |
2 |
Used to define IP-address/subnet stuff |
|
3 |
""" |
|
4 |
||
5 |
import IPy |
|
6 |
||
7 |
class IP (IPy.IP, object) : |
|
8 |
""" |
|
9 |
A literal IPv4 address |
|
10 |
""" |
|
11 |
||
12 |
def __init__ (self, address) : |
|
13 |
""" |
|
14 |
Parse the given literal IP address in "a.b.c.d" form |
|
15 |
""" |
|
16 |
||
17 |
super(IP, self).__init__(address) |
|
4 | 18 |
|
19 |
def is_v4 (self) : |
|
20 |
""" |
|
21 |
Returns True if the address is an IPv4 address |
|
22 |
""" |
|
23 |
||
24 |
return self.version() == 4 |
|
25 |
||
26 |
def is_v6 (self) : |
|
27 |
""" |
|
28 |
Returns True if the address is an IPv6 address |
|
29 |
""" |
|
30 |
||
31 |
return self.version() == 6 |
|
0 | 32 |
|
33 |
class Network (IPy.IP, object) : |
|
34 |
""" |
|
35 |
An IPv4 network (subnet) |
|
36 |
""" |
|
37 |
||
38 |
def __init__ (self, prefix) : |
|
39 |
""" |
|
40 |
Parse the given prefix in "a.b.c.d/l" form |
|
41 |
""" |
|
42 |
||
43 |
super(Network, self).__init__(prefix) |
|
44 |
||
1
2223ade4f259
continue the overengineering effort, we are now able to generate dhcpd.conf files
Tero Marttila <terom@fixme.fi>
parents:
0
diff
changeset
|
45 |
class MAC (object) : |
2223ade4f259
continue the overengineering effort, we are now able to generate dhcpd.conf files
Tero Marttila <terom@fixme.fi>
parents:
0
diff
changeset
|
46 |
""" |
2223ade4f259
continue the overengineering effort, we are now able to generate dhcpd.conf files
Tero Marttila <terom@fixme.fi>
parents:
0
diff
changeset
|
47 |
A mac address |
2223ade4f259
continue the overengineering effort, we are now able to generate dhcpd.conf files
Tero Marttila <terom@fixme.fi>
parents:
0
diff
changeset
|
48 |
""" |
2223ade4f259
continue the overengineering effort, we are now able to generate dhcpd.conf files
Tero Marttila <terom@fixme.fi>
parents:
0
diff
changeset
|
49 |
|
2223ade4f259
continue the overengineering effort, we are now able to generate dhcpd.conf files
Tero Marttila <terom@fixme.fi>
parents:
0
diff
changeset
|
50 |
def __init__ (self, mac) : |
2223ade4f259
continue the overengineering effort, we are now able to generate dhcpd.conf files
Tero Marttila <terom@fixme.fi>
parents:
0
diff
changeset
|
51 |
""" |
2223ade4f259
continue the overengineering effort, we are now able to generate dhcpd.conf files
Tero Marttila <terom@fixme.fi>
parents:
0
diff
changeset
|
52 |
Parse the given MAC address in "aa:bb:cc:dd:ee:ff" form |
2223ade4f259
continue the overengineering effort, we are now able to generate dhcpd.conf files
Tero Marttila <terom@fixme.fi>
parents:
0
diff
changeset
|
53 |
""" |
2223ade4f259
continue the overengineering effort, we are now able to generate dhcpd.conf files
Tero Marttila <terom@fixme.fi>
parents:
0
diff
changeset
|
54 |
|
2223ade4f259
continue the overengineering effort, we are now able to generate dhcpd.conf files
Tero Marttila <terom@fixme.fi>
parents:
0
diff
changeset
|
55 |
# XXX: validate |
2223ade4f259
continue the overengineering effort, we are now able to generate dhcpd.conf files
Tero Marttila <terom@fixme.fi>
parents:
0
diff
changeset
|
56 |
self.mac = mac |
2223ade4f259
continue the overengineering effort, we are now able to generate dhcpd.conf files
Tero Marttila <terom@fixme.fi>
parents:
0
diff
changeset
|
57 |
|
2223ade4f259
continue the overengineering effort, we are now able to generate dhcpd.conf files
Tero Marttila <terom@fixme.fi>
parents:
0
diff
changeset
|
58 |
def __str__ (self) : |
2223ade4f259
continue the overengineering effort, we are now able to generate dhcpd.conf files
Tero Marttila <terom@fixme.fi>
parents:
0
diff
changeset
|
59 |
return self.mac |
2223ade4f259
continue the overengineering effort, we are now able to generate dhcpd.conf files
Tero Marttila <terom@fixme.fi>
parents:
0
diff
changeset
|
60 |