summaryrefslogtreecommitdiff
path: root/module/ipattr.m
diff options
context:
space:
mode:
Diffstat (limited to 'module/ipattr.m')
-rw-r--r--module/ipattr.m20
1 files changed, 20 insertions, 0 deletions
diff --git a/module/ipattr.m b/module/ipattr.m
new file mode 100644
index 00000000..bad57f69
--- /dev/null
+++ b/module/ipattr.m
@@ -0,0 +1,20 @@
+IPattr: module
+{
+
+ PATH: con "/dis/lib/ipattr.dis";
+
+ Netattr: adt {
+ name: string;
+ pairs: list of ref Attrdb->Attr;
+ net: IP->IPaddr;
+ mask: IP->IPaddr;
+ };
+
+ init: fn(attrdb: Attrdb, ip: IP);
+
+ dbattr: fn(s: string): string;
+ findnetattr: fn(db: ref Attrdb->Db, attr: string, val: string, rattr: string): (string, string);
+ findnetattrs: fn(db: ref Attrdb->Db, attr: string, val: string, rattrs: list of string): (list of (IP->IPaddr, list of ref Netattr), string);
+ valueof: fn(l: list of ref Netattr, attr: string): list of string;
+ netvalueof: fn(l: list of ref Netattr, attr: string, ip: IP->IPaddr): list of string;
+};